/* CCF MOBILE B4.3.10 — ETAPA 1 · CORRECCIÓN RESUMEN */
@media(max-width:720px){
:root{--m-navy:#071b34;--m-blue:#1688f8;--m-green:#10b981;--m-red:#ef4055;--m-bg:#f4f7fb;--m-card:#fff;--m-text:#172033;--m-muted:#718096;--m-line:#e1e7ee}
html,body{margin:0!important;background:var(--m-bg)!important;color:var(--m-text)!important;overflow-x:hidden!important}body{padding-bottom:82px!important}
#ccf-mobile-b43{display:block!important;position:relative!important;z-index:2147480000!important;min-height:100vh!important;background:var(--m-bg)!important;font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif!important}
#app> :not(#ccf-mobile-b43){display:none!important}
.b434-header{height:64px;display:flex;align-items:center;gap:9px;padding:7px 12px;box-sizing:border-box;background:linear-gradient(135deg,#061a33,#0c3155);color:#fff;position:sticky;top:0;z-index:10;box-shadow:0 4px 14px rgba(7,27,52,.18)}
.b434-logo{width:40px!important;height:40px!important;min-height:40px!important;border:0!important;border-radius:11px!important;background:var(--m-blue)!important;color:#fff!important;font-weight:900!important}
.b434-header>div{min-width:0;display:flex;flex-direction:column}.b434-header strong{font-size:12px}.b434-header small{font-size:8px;color:#b9cadb;margin-top:3px}
.b434-bell,.b434-avatar{margin-left:auto!important;width:34px!important;height:34px!important;min-height:34px!important;border:0!important;background:transparent!important;color:#fff!important}.b434-avatar{margin-left:0!important;border-radius:50%!important;background:#fff!important;color:#17304d!important;font-weight:900!important}
main[data-content]{padding:10px 10px 92px;box-sizing:border-box;min-width:0}
.b434-period{display:flex;align-items:center;justify-content:space-between;background:#fff;border:1px solid var(--m-line);border-radius:14px;padding:10px 12px;margin-bottom:8px}.b434-period span{display:block;font-size:8px;color:var(--m-muted);font-weight:800}.b434-period strong{display:block;font-size:13px;margin-top:3px}
.b434-period button{width:34px!important;height:34px!important;border:0!important;border-radius:9px!important;background:#eef2f7!important}
.b434-kpis{display:grid;grid-template-columns:1fr 1fr;gap:8px}.b434-kpi{padding:12px;border-radius:15px;color:#fff}.b434-kpi span{display:block;font-size:8px}.b434-kpi strong{display:block;font-size:17px;margin-top:5px;overflow-wrap:anywhere}.b434-kpi.blue{background:#1688f8}.b434-kpi.green{background:#10b981}.b434-kpi.red{background:#ef4055}.b434-kpi.navy{background:#1557a5}
.b434-card{background:#fff;border:1px solid var(--m-line);border-radius:17px;margin:9px 0;padding:12px;box-shadow:0 2px 10px rgba(15,23,42,.045);min-width:0;box-sizing:border-box}.b434-card>header{display:flex;justify-content:space-between;gap:8px;margin-bottom:9px}.b434-card>header strong{font-size:13px}.b434-card>header small{font-size:8px;color:var(--m-muted);text-align:right}
.b434-real-chart{width:100%;min-height:185px;overflow:auto;border-radius:12px;background:#f8fbff}.b434-real-chart>#chart-flow{width:100%!important;min-height:175px}.b434-real-chart canvas,.b434-real-chart svg{max-width:100%!important}
.b434-section-title{font-size:13px;font-weight:800;margin:15px 3px 7px}.b434-quick{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.b434-quick button{min-height:76px!important;border:1px solid var(--m-line)!important;border-radius:14px!important;background:#fff!important;color:var(--m-blue)!important;padding:7px 4px!important}.b434-quick button:first-letter{font-size:22px}.b434-quick small{display:block;color:#334155;font-size:8px;font-weight:800;margin-top:6px}
.b434-grid2{display:grid;grid-template-columns:1fr 1fr;gap:8px}.b434-grid2 article,.b434-margin article,.b434-insights article{background:#f8fafc;border:1px solid #e6ebf0;border-radius:12px;padding:10px}.b434-grid2 span,.b434-margin span,.b434-insights span{display:block;color:var(--m-muted);font-size:8px}.b434-grid2 strong{display:block;font-size:14px;margin-top:4px;overflow-wrap:anywhere}
.b434-future{display:grid;grid-template-columns:1fr 1fr;gap:8px}.b434-future>article{background:#f8fafc;border:1px solid #e6ebf0;border-radius:12px;padding:9px}.b434-future header{display:flex;justify-content:space-between;margin-bottom:7px}.b434-future header b{font-size:10px}
.b434-margin{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.b434-margin strong{display:block;font-size:12px;margin-top:3px}.b434-progress{height:7px;background:#e8edf2;border-radius:99px;overflow:hidden;margin:9px 0}.b434-progress i{display:block;width:0;height:100%;background:var(--m-blue);border-radius:99px}
.b434-real-table{overflow:auto}.b434-real-table>#projection-table{min-width:430px;font-size:9px}.b434-decision{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:9px 0}.b434-decision article{background:#fff;border:1px solid var(--m-line);border-radius:16px;padding:11px;overflow:hidden}.b434-decision article>span{font-size:8px;color:var(--m-muted);font-weight:800}
.b434-insights{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-bottom:9px}.b434-insights strong{display:block;font-size:10px;margin-top:4px;overflow-wrap:anywhere}.b434-charts{display:grid;grid-template-columns:1fr 1fr;gap:8px}.b434-chart-card{background:#fff;border:1px solid var(--m-line);border-radius:13px;padding:8px;overflow:hidden;min-width:0}.b434-chart-card>strong{display:block;font-size:9px}.b434-chart-card>[id^="chart-"]{min-height:135px;width:100%!important;overflow:auto}.b434-chart-card canvas,.b434-chart-card svg{max-width:100%!important}
.b434-consolidated{display:block;margin:14px 0 110px}.b434-consolidated>header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.b434-consolidated>header strong{font-size:13px}.b434-consolidated>header small{font-size:8px;color:var(--m-muted)}.b434-consolidated .b234-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:10px}.b434-consolidated .b234-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:10px;border-radius:14px;overflow:hidden}.b434-consolidated .b234-card{margin:0;min-width:0}.b434-consolidated .b234-bars{min-width:0;overflow:hidden}
.b434-bottom{position:fixed!important;left:0!important;right:0!important;bottom:0!important;z-index:2147483640!important;display:grid!important;grid-template-columns:repeat(5,1fr)!important;background:#fff!important;border-top:1px solid var(--m-line)!important;padding:5px 5px calc(5px + env(safe-area-inset-bottom))!important;box-shadow:0 -8px 24px rgba(15,23,42,.12)!important}.b434-bottom button{height:55px!important;min-height:55px!important;border:0!important;border-radius:12px!important;background:transparent!important;color:#66758a!important;padding:3px!important}.b434-bottom button span{display:block;font-size:18px}.b434-bottom button small{font-size:8px;font-weight:800}.b434-bottom button.active{background:var(--m-navy)!important;color:#fff!important}
.b434-overlay{display:none!important;position:fixed!important;inset:0!important;z-index:2147483641!important}.b434-overlay.open{display:block!important}.b434-backdrop{position:absolute;inset:0;background:rgba(7,21,38,.62)}.b434-overlay>section{position:absolute;left:0;right:0;bottom:0;max-height:88vh;overflow:auto;background:#fff;border-radius:22px 22px 0 0;padding:15px 13px 25px;box-sizing:border-box}.b434-overlay header{display:flex;align-items:center;gap:9px;margin-bottom:11px}.b434-overlay header strong{font-size:17px}.b434-overlay header button{margin-left:auto;width:36px!important;height:36px!important;border:0!important;border-radius:50%!important;background:#eef2f7!important}.b434-module-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.b434-module{min-height:70px!important;display:flex!important;align-items:center!important;gap:8px;text-align:left!important;border:1px solid var(--m-line)!important;border-radius:14px!important;background:#f8fafc!important;padding:9px!important}.b434-module>b{width:35px;height:35px;border-radius:10px;background:#e8f3ff;color:#0879df;display:grid;place-items:center}.b434-module strong{display:block;font-size:10px}.b434-module small{display:block;font-size:8px;color:var(--m-muted);margin-top:3px}.b434-profile{padding:14px;background:#f8fafc;border-radius:12px;font-size:10px}.b434-danger{width:100%!important;min-height:42px!important;border:0!important;border-radius:10px!important;background:#fee2e2!important;color:#991b1b!important;margin-top:9px!important}.b434-notice{padding:22px!important}.b434-notice p{font-size:11px;line-height:1.45;color:#475569}.b434-notice button{width:100%!important;min-height:42px!important;border:0!important;border-radius:10px!important;background:var(--m-navy)!important;color:#fff!important}
.b434-lock{overflow:hidden!important}
}
@media(min-width:721px){#ccf-mobile-b43{display:none!important}}
@media(max-width:720px){
#ccf-mobile-b43 .b434-flow-legend{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap;font-size:8px;color:#64748b;white-space:nowrap}
#ccf-mobile-b43 .b434-flow-legend span{display:inline-flex;align-items:center;gap:4px}
#ccf-mobile-b43 .b434-flow-legend i{width:8px;height:8px;border-radius:50%;display:inline-block}
#ccf-mobile-b43 .b434-flow-legend i.income{background:#16a34a}.b434-flow-legend i.expense{background:#ef4444}
#ccf-mobile-b43 #chart-flow .chart-income{fill:#16a34a!important;stroke:#16a34a!important;opacity:.9!important}
#ccf-mobile-b43 #chart-flow .chart-expense{fill:#ef4444!important;stroke:#ef4444!important;opacity:.9!important}
#ccf-mobile-b43 #chart-candles .candle-up{fill:#16a34a!important;stroke:#16a34a!important;opacity:1!important}
#ccf-mobile-b43 #chart-candles .candle-down{fill:#ef4444!important;stroke:#ef4444!important;opacity:1!important}
#ccf-mobile-b43 #chart-candles .candle-wick{stroke:#475569!important;stroke-width:2!important;opacity:1!important}
#ccf-mobile-b43 #chart-candles{min-height:175px!important}#ccf-mobile-b43 #chart-candles svg{min-width:430px!important;width:100%!important;height:auto!important}
}
@media(max-width:720px){
#ccf-mobile-b43 [data-flow]{overflow-x:auto!important;overflow-y:hidden!important;-webkit-overflow-scrolling:touch;min-height:205px!important;padding:0!important}
#ccf-mobile-b43 [data-flow] #chart-flow{min-width:520px!important;width:100%!important;min-height:195px!important}
#ccf-mobile-b43 [data-flow] #chart-flow svg{min-width:520px!important;width:100%!important;height:auto!important;display:block!important}
#ccf-mobile-b43 #chart-flow .chart-income{fill:#16a34a!important;stroke:#15803d!important;opacity:.95!important}
#ccf-mobile-b43 #chart-flow .chart-expense{fill:#ef4444!important;stroke:#dc2626!important;opacity:.95!important}
}
@media(max-width:720px){
#ccf-mobile-b43 .b434-consolidated{background:#fff;border:1px solid #e1e7ee;border-radius:17px;margin:12px 0 110px;padding:12px;box-shadow:0 2px 10px rgba(15,23,42,.045);box-sizing:border-box;overflow:hidden}
#ccf-mobile-b43 .b434-consolidated>header{display:block!important;margin:0 0 10px!important}
#ccf-mobile-b43 .b434-consolidated>header strong{display:block;font-size:14px}
#ccf-mobile-b43 .b434-consolidated>header small{display:block;margin-top:3px;text-align:left!important;font-size:8px;line-height:1.35;color:#718096}
#ccf-mobile-b43 .b434-consolidated-body{min-width:0;overflow:hidden}
#ccf-mobile-b43 .b434-consolidated .b234-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;margin:0 0 9px!important}
#ccf-mobile-b43 .b434-consolidated .b234-grid>*{min-width:0!important}
#ccf-mobile-b43 .b434-consolidated .b234-summary{display:grid!important;grid-template-columns:1fr 1fr!important;gap:0!important;margin:0 0 9px!important;overflow:hidden;border-radius:13px}
#ccf-mobile-b43 .b434-consolidated .b234-summary>*{min-width:0!important}
#ccf-mobile-b43 .b434-consolidated .b234-card{margin:0!important;min-width:0!important;padding:11px!important}
#ccf-mobile-b43 .b434-consolidated .b234-card h3{font-size:13px!important}
#ccf-mobile-b43 .b434-consolidated .b234-card p{font-size:9px!important}
#ccf-mobile-b43 .b434-consolidated .b234-card svg,#ccf-mobile-b43 .b434-consolidated .b234-card canvas{max-width:100%!important;height:auto!important}
}
@media(max-width:720px){
#ccf-mobile-b43 #chart-flow{min-height:195px!important;height:195px!important;overflow:hidden!important}
#ccf-mobile-b43 #chart-flow svg{width:100%!important;height:195px!important;display:block!important}
#ccf-mobile-b43 #chart-flow .mobile-flow-income{fill:#16a34a!important;stroke:#15803d!important}
#ccf-mobile-b43 #chart-flow .mobile-flow-expense{fill:#ef4444!important;stroke:#dc2626!important}
#ccf-mobile-b43 #chart-flow .mobile-flow-income-wick{stroke:#15803d!important;stroke-width:2!important}
#ccf-mobile-b43 #chart-flow .mobile-flow-expense-wick{stroke:#dc2626!important;stroke-width:2!important}
}
@media(max-width:720px){
#ccf-mobile-b43 .b434-real-chart{overflow:hidden!important;height:205px!important;min-height:205px!important}
#ccf-mobile-b43 .b434-real-chart>#chart-flow{width:100%!important;height:195px!important;min-height:195px!important;overflow:hidden!important}
#ccf-mobile-b43 #chart-flow svg{display:block!important;width:100%!important;height:195px!important;max-width:100%!important}
#ccf-mobile-b43 #chart-flow .mobile-flow-income{fill:#16a34a!important;stroke:#15803d!important;stroke-width:1.5!important}
#ccf-mobile-b43 #chart-flow .mobile-flow-expense{fill:#ef4444!important;stroke:#dc2626!important;stroke-width:1.5!important}
#ccf-mobile-b43 #chart-flow .mobile-flow-income-wick{stroke:#15803d!important;stroke-width:2.5!important}
#ccf-mobile-b43 #chart-flow .mobile-flow-expense-wick{stroke:#dc2626!important;stroke-width:2.5!important}
#ccf-mobile-b43 .b434-final-info{display:block!important;width:100%!important;box-sizing:border-box!important;margin:0!important;padding:12px!important;border:1px solid #e4e7ec!important;border-radius:14px!important;background:#fff!important;overflow:hidden!important}
#ccf-mobile-b43 .b434-final-info .b234-title{display:block!important;margin-bottom:10px!important}
#ccf-mobile-b43 .b434-final-info .b234-final{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;min-width:0!important}
#ccf-mobile-b43 .b434-final-info .b234-bars{width:100%!important;min-width:0!important;overflow:hidden!important}
#ccf-mobile-b43 .b434-final-info .b234-bar-row{display:grid!important;grid-template-columns:1fr!important;gap:4px!important;margin-bottom:9px!important}
#ccf-mobile-b43 .b434-final-info .b234-result{display:block!important;width:100%!important;box-sizing:border-box!important;min-height:150px!important;padding:14px!important;border-radius:12px!important;overflow:visible!important}
#ccf-mobile-b43 .b434-final-info .b234-result strong{display:block!important;font-size:27px!important;line-height:1.1!important;margin:5px 0!important}
#ccf-mobile-b43 .b434-final-info .b234-result p{display:block!important;font-size:12px!important;line-height:1.4!important;margin:7px 0 0!important}
}

@media(max-width:720px){
  /* MENÚ PRINCIPAL — títulos y subtítulos legibles */
  #ccf-mobile-b43 .b434-module{
    color:#172033!important;
    background:#fff!important;
    border-color:#dfe5ec!important;
  }
  #ccf-mobile-b43 .b434-module span{
    min-width:0;
    display:block;
  }
  #ccf-mobile-b43 .b434-module strong{
    display:block!important;
    color:#172033!important;
    font-size:11px!important;
    line-height:1.25!important;
    font-weight:800!important;
    opacity:1!important;
  }
  #ccf-mobile-b43 .b434-module small{
    display:block!important;
    color:#64748b!important;
    font-size:8px!important;
    line-height:1.35!important;
    margin-top:3px!important;
    opacity:1!important;
  }
  #ccf-mobile-b43 .b434-module:active{
    transform:scale(.985);
  }

  /* Adaptación transitoria de los módulos desktop seleccionados */
  #ccf-mobile-b43 .b434-module-host{
    display:none;
    padding:10px;
    box-sizing:border-box;
    min-width:0;
  }
  #ccf-mobile-b43 .b434-module-host.open{
    display:block!important;
  }
  #ccf-mobile-b43 .b434-module-host > .tab{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
    margin:0!important;
  }
  #ccf-mobile-b43 .b434-module-host > .tab > *{
    max-width:100%!important;
    box-sizing:border-box;
  }
  #ccf-mobile-b43 .b434-module-host .grid2{
    grid-template-columns:1fr!important;
  }
  #ccf-mobile-b43 .b434-module-host input,
  #ccf-mobile-b43 .b434-module-host select,
  #ccf-mobile-b43 .b434-module-host textarea,
  #ccf-mobile-b43 .b434-module-host button{
    max-width:100%;
    box-sizing:border-box;
  }
  #ccf-mobile-b43 .b434-module-host .card{
    margin-left:0!important;
    margin-right:0!important;
  }
}

@media(max-width:720px){
  /* CAMBIO 3 — navegación de módulo: no mostrar el Resumen debajo */
  #ccf-mobile-b43 main[data-content].b434-view-hidden{
    display:none!important;
  }

  #ccf-mobile-b43 .b434-module-host{
    display:none!important;
    width:100%!important;
    min-height:calc(100vh - 64px)!important;
    padding:10px 10px 94px!important;
    margin:0!important;
    box-sizing:border-box!important;
    overflow-x:hidden!important;
    background:var(--m-bg)!important;
  }

  #ccf-mobile-b43 .b434-module-host.open{
    display:block!important;
  }

  #ccf-mobile-b43 .b434-module-host[data-active-module] > .tab{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    box-sizing:border-box!important;
  }

  /* El módulo escritorio adaptado ocupa la pantalla móvil, no una sección
     adicional al final del Resumen. */
  #ccf-mobile-b43 .b434-module-host > .tab > *{
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }

  #ccf-mobile-b43 .b434-module-host .card{
    margin:0 0 10px!important;
    border-radius:16px!important;
  }

  #ccf-mobile-b43 .b434-module-host .grid2{
    grid-template-columns:1fr!important;
  }

  #ccf-mobile-b43 .b434-module-host input,
  #ccf-mobile-b43 .b434-module-host select,
  #ccf-mobile-b43 .b434-module-host textarea,
  #ccf-mobile-b43 .b434-module-host button{
    max-width:100%!important;
    box-sizing:border-box!important;
  }

  #ccf-mobile-b43 .b434-module-host .tabs,
  #ccf-mobile-b43 .b434-module-host .topbar{
    display:none!important;
  }
}

@media(max-width:720px){
  /* ==========================================================
     CAMBIO 4 — ACCIONES RÁPIDAS
     ========================================================== */

  /* Formulario de gasto/ingreso: experiencia móvil real,
     reutilizando #movForm y sus handlers originales. */
  #ccf-mobile-b43 .b434-overlay[data-overlay="form"]>section{
    max-height:92vh!important;
    padding:0 0 calc(18px + env(safe-area-inset-bottom))!important;
    overflow:auto!important;
  }
  #ccf-mobile-b43 .b434-overlay[data-overlay="form"]>section>header{
    position:sticky!important;
    top:0!important;
    z-index:3!important;
    margin:0!important;
    padding:14px 16px!important;
    background:#fff!important;
    border-bottom:1px solid #e6ebf0!important;
  }
  #ccf-mobile-b43 .b434-overlay[data-overlay="form"] #movForm{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:12px!important;
    padding:16px!important;
    margin:0!important;
    background:#fff!important;
  }
  #ccf-mobile-b43 .b434-overlay[data-overlay="form"] #movForm label{
    display:flex!important;
    flex-direction:column!important;
    gap:6px!important;
    font-size:11px!important;
    font-weight:800!important;
    color:#334155!important;
  }
  #ccf-mobile-b43 .b434-overlay[data-overlay="form"] #movForm input,
  #ccf-mobile-b43 .b434-overlay[data-overlay="form"] #movForm select{
    width:100%!important;
    min-height:46px!important;
    box-sizing:border-box!important;
    border:1px solid #d9e1ea!important;
    border-radius:12px!important;
    background:#f8fafc!important;
    padding:10px 12px!important;
    font-size:15px!important;
    color:#172033!important;
  }
  #ccf-mobile-b43 .b434-overlay[data-overlay="form"] #movForm .form-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    margin-top:4px!important;
  }
  #ccf-mobile-b43 .b434-overlay[data-overlay="form"] #movForm button{
    width:100%!important;
    min-height:46px!important;
    border-radius:12px!important;
  }
  #ccf-mobile-b43 .b434-overlay[data-overlay="form"] #movMsg{
    margin:0 16px 8px!important;
  }

  /* DEUDAS — tarjetas, KPIs y formulario en una columna. */
  #ccf-mobile-b43 .b434-module-host #deudas{
    display:block!important;
  }
  #ccf-mobile-b43 .b434-module-host #deudas .section-title{
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:4px!important;
  }
  #ccf-mobile-b43 .b434-module-host #deudas .section-title h2{
    margin:2px 0!important;
    font-size:20px!important;
  }
  #ccf-mobile-b43 .b434-module-host #deudas .cards.two{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
    margin:10px 0!important;
  }
  #ccf-mobile-b43 .b434-module-host #deudas .metric{
    min-width:0!important;
    padding:12px!important;
    border-radius:14px!important;
    background:#f8fafc!important;
    border:1px solid #e3e8ef!important;
  }
  #ccf-mobile-b43 .b434-module-host #deudas .metric span{
    display:block!important;
    font-size:9px!important;
    color:#64748b!important;
  }
  #ccf-mobile-b43 .b434-module-host #deudas .metric strong{
    display:block!important;
    margin-top:5px!important;
    font-size:15px!important;
    overflow-wrap:anywhere!important;
  }
  #ccf-mobile-b43 .b434-module-host #deudas #deudaForm{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:11px!important;
  }
  #ccf-mobile-b43 .b434-module-host #deudas #deudaForm label{
    display:flex!important;
    flex-direction:column!important;
    gap:5px!important;
    font-size:11px!important;
    font-weight:800!important;
    color:#334155!important;
  }
  #ccf-mobile-b43 .b434-module-host #deudas #deudaForm input,
  #ccf-mobile-b43 .b434-module-host #deudas #deudaForm select{
    width:100%!important;
    min-height:44px!important;
    border:1px solid #d9e1ea!important;
    border-radius:11px!important;
    background:#f8fafc!important;
    padding:9px 11px!important;
    box-sizing:border-box!important;
    font-size:14px!important;
  }
  #ccf-mobile-b43 .b434-module-host #deudas #deudaForm .form-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
  #ccf-mobile-b43 .b434-module-host #deudas #deudaForm button{
    width:100%!important;
    min-height:44px!important;
    border-radius:11px!important;
  }
  #ccf-mobile-b43 .b434-module-host #deudas #deudasLista{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:9px!important;
  }
  #ccf-mobile-b43 .b434-module-host #deudas .debt-card{
    display:grid!important;
    gap:9px!important;
    padding:13px!important;
    border:1px solid #e1e7ee!important;
    border-radius:15px!important;
    background:#fff!important;
    box-shadow:0 2px 8px rgba(15,23,42,.04)!important;
  }
  #ccf-mobile-b43 .b434-module-host #deudas .debt-card-main h3{
    margin:5px 0 2px!important;
    font-size:15px!important;
  }
  #ccf-mobile-b43 .b434-module-host #deudas .debt-card-main p{
    margin:0!important;
    color:#64748b!important;
    font-size:10px!important;
  }
  #ccf-mobile-b43 .b434-module-host #deudas .debt-card-values{
    display:flex!important;
    align-items:flex-end!important;
    justify-content:space-between!important;
    gap:8px!important;
    padding:9px!important;
    border-radius:11px!important;
    background:#f8fafc!important;
  }
  #ccf-mobile-b43 .b434-module-host #deudas .debt-card-values strong{
    font-size:17px!important;
  }
  #ccf-mobile-b43 .b434-module-host #deudas .debt-card-meta{
    display:flex!important;
    flex-direction:column!important;
    gap:4px!important;
    color:#64748b!important;
    font-size:9px!important;
  }
  #ccf-mobile-b43 .b434-module-host #deudas .form-actions{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:7px!important;
  }
  #ccf-mobile-b43 .b434-module-host #deudas .form-actions button:last-child{
    grid-column:1/-1;
  }

  /* PLANIFICACIÓN — cuadros informativos y escenario. */
  #ccf-mobile-b43 .b434-module-host #planificacion{
    display:block!important;
  }
  #ccf-mobile-b43 .b434-module-host #planificacion .b23252-kpis{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
  }
  #ccf-mobile-b43 .b434-module-host #planificacion .b23252-kpi{
    min-width:0!important;
    padding:12px!important;
    border-radius:13px!important;
    background:#f8fafc!important;
    border:1px solid #e3e8ef!important;
  }
  #ccf-mobile-b43 .b434-module-host #planificacion .b23252-kpi span,
  #ccf-mobile-b43 .b434-module-host #planificacion .b23252-kpi small{
    display:block!important;
    font-size:9px!important;
    color:#64748b!important;
  }
  #ccf-mobile-b43 .b434-module-host #planificacion .b23252-kpi strong{
    display:block!important;
    margin-top:5px!important;
    font-size:15px!important;
    overflow-wrap:anywhere!important;
  }
  #ccf-mobile-b43 .b434-module-host #planificacion .b23252-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:9px!important;
  }
  #ccf-mobile-b43 .b434-module-host #planificacion .b23252-row{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:10px!important;
    padding:10px 0!important;
  }
  #ccf-mobile-b43 .b434-module-host #planificacion .b23252-row span{
    min-width:0!important;
    font-size:11px!important;
  }
  #ccf-mobile-b43 .b434-module-host #planificacion .b23252-row strong{
    flex:0 0 auto!important;
    font-size:12px!important;
    text-align:right!important;
  }
  #ccf-mobile-b43 .b434-module-host #planificacion .b23252-status{
    font-size:11px!important;
    line-height:1.5!important;
  }
}

@media(max-width:720px){
  /* ==========================================================
     ETAPA 2 — MOVIMIENTOS
     ========================================================== */
  #ccf-mobile-b43 .b434-module-host #movimientos{
    display:block!important;
    width:100%!important;
  }
  #ccf-mobile-b43 .b434-module-host #movimientos .b434-movements-tools{
    margin:0 0 10px!important;
    padding:14px!important;
    border-radius:17px!important;
    background:#fff!important;
    border:1px solid #e1e7ee!important;
    box-shadow:0 2px 10px rgba(15,23,42,.045)!important;
  }
  #ccf-mobile-b43 .b434-mov-head h2{
    margin:3px 0!important;
    font-size:22px!important;
    color:#172033!important;
  }
  #ccf-mobile-b43 .b434-mov-head p{
    margin:0!important;
    color:#64748b!important;
    font-size:10px!important;
    line-height:1.4!important;
  }
  #ccf-mobile-b43 .b434-eyebrow{
    color:#1688f8!important;
    font-size:8px!important;
    font-weight:900!important;
    letter-spacing:.08em!important;
  }
  #ccf-mobile-b43 .b434-mov-kpis{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
    margin-top:11px!important;
  }
  #ccf-mobile-b43 .b434-mov-kpis article{
    min-width:0!important;
    padding:10px!important;
    border-radius:12px!important;
    background:#f8fafc!important;
    border:1px solid #e4e9ef!important;
  }
  #ccf-mobile-b43 .b434-mov-kpis span{
    display:block!important;
    color:#64748b!important;
    font-size:8px!important;
  }
  #ccf-mobile-b43 .b434-mov-kpis strong{
    display:block!important;
    color:#172033!important;
    font-size:15px!important;
    margin-top:4px!important;
    overflow-wrap:anywhere!important;
  }
  #ccf-mobile-b43 .b434-mov-actions{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
    margin-top:10px!important;
  }
  #ccf-mobile-b43 .b434-mov-actions button{
    min-height:44px!important;
    border:0!important;
    border-radius:12px!important;
    background:#071b34!important;
    color:#fff!important;
    font-size:11px!important;
    font-weight:800!important;
  }
  #ccf-mobile-b43 .b434-mov-actions button:first-child{
    background:#0f9f68!important;
  }
  #ccf-mobile-b43 .b434-mov-filter{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:7px!important;
    margin-top:10px!important;
  }
  #ccf-mobile-b43 .b434-mov-filter input{
    grid-column:1/-1!important;
    width:100%!important;
    min-height:42px!important;
    box-sizing:border-box!important;
    border:1px solid #d9e1ea!important;
    border-radius:11px!important;
    background:#f8fafc!important;
    padding:9px 11px!important;
    font-size:13px!important;
    color:#172033!important;
  }
  #ccf-mobile-b43 .b434-mov-filter select{
    width:100%!important;
    min-height:40px!important;
    box-sizing:border-box!important;
    border:1px solid #d9e1ea!important;
    border-radius:11px!important;
    background:#f8fafc!important;
    padding:8px 9px!important;
    font-size:11px!important;
    color:#334155!important;
  }
  #ccf-mobile-b43 .b434-module-host #movimientos> .card{
    border-radius:17px!important;
    margin:10px 0!important;
    padding:13px!important;
  }
  #ccf-mobile-b43 .b434-module-host #movimientos> .card:first-of-type{
    display:block!important;
  }
  #ccf-mobile-b43 .b434-module-host #movimientos> .card:first-of-type>h2{
    font-size:15px!important;
    margin:0 0 10px!important;
  }
  #ccf-mobile-b43 .b434-module-host #movimientos #movForm{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
  }
  #ccf-mobile-b43 .b434-module-host #movimientos #movForm label{
    display:flex!important;
    flex-direction:column!important;
    gap:5px!important;
    font-size:10px!important;
    font-weight:800!important;
    color:#334155!important;
  }
  #ccf-mobile-b43 .b434-module-host #movimientos #movForm input,
  #ccf-mobile-b43 .b434-module-host #movimientos #movForm select{
    width:100%!important;
    min-height:44px!important;
    box-sizing:border-box!important;
    border:1px solid #d9e1ea!important;
    border-radius:11px!important;
    background:#f8fafc!important;
    padding:9px 11px!important;
    font-size:14px!important;
  }
  #ccf-mobile-b43 .b434-module-host #movimientos #movForm .form-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:7px!important;
  }
  #ccf-mobile-b43 .b434-module-host #movimientos #movForm button{
    width:100%!important;
    min-height:44px!important;
    border-radius:11px!important;
  }
  #ccf-mobile-b43 .b434-module-host #movimientos .muted{
    font-size:9px!important;
    line-height:1.45!important;
  }
  #ccf-mobile-b43 .b434-module-host #movimientos #movimientosLista{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
  #ccf-mobile-b43 .b434-module-host #movimientos #movimientosLista .row{
    display:flex!important;
    align-items:flex-start!important;
    justify-content:space-between!important;
    gap:9px!important;
    padding:12px!important;
    border:1px solid #e1e7ee!important;
    border-radius:14px!important;
    background:#fff!important;
    box-shadow:0 2px 8px rgba(15,23,42,.035)!important;
  }
  #ccf-mobile-b43 .b434-module-host #movimientos #movimientosLista .row-main{
    min-width:0!important;
    flex:1 1 auto!important;
  }
  #ccf-mobile-b43 .b434-module-host #movimientos #movimientosLista .row-main b{
    display:block!important;
    color:#172033!important;
    font-size:11px!important;
    line-height:1.3!important;
  }
  #ccf-mobile-b43 .b434-module-host #movimientos #movimientosLista .row-main div{
    margin-top:3px!important;
    color:#64748b!important;
    font-size:9px!important;
    line-height:1.35!important;
    overflow-wrap:anywhere!important;
  }
  #ccf-mobile-b43 .b434-module-host #movimientos #movimientosLista .row-main small{
    display:block!important;
    margin-top:5px!important;
    color:#94a3b8!important;
    font-size:8px!important;
  }
  #ccf-mobile-b43 .b434-module-host #movimientos #movimientosLista .row-right{
    flex:0 0 auto!important;
    min-width:88px!important;
    text-align:right!important;
  }
  #ccf-mobile-b43 .b434-module-host #movimientos #movimientosLista .row-right>strong{
    display:block!important;
    font-size:12px!important;
    white-space:nowrap!important;
  }
  #ccf-mobile-b43 .b434-module-host #movimientos #movimientosLista .actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:4px!important;
    margin-top:6px!important;
  }
  #ccf-mobile-b43 .b434-module-host #movimientos #movimientosLista .actions button{
    min-height:30px!important;
    padding:5px 8px!important;
    border-radius:8px!important;
    font-size:8px!important;
  }
  #ccf-mobile-b43 .b434-module-host #movimientos #movimientosLista .actions .danger{
    background:#fee2e2!important;
    color:#991b1b!important;
  }
}

@media(max-width:720px){
  /* ETAPA 2 FIX — shell móvil fuera del DOM que el módulo desktop reconstruye */
  #ccf-mobile-b43 .b434-module-host > .b434-movements-shell{
    display:block!important;
    width:100%!important;
    margin:0 0 10px!important;
    padding:14px!important;
    box-sizing:border-box!important;
    border:1px solid #e1e7ee!important;
    border-radius:17px!important;
    background:#fff!important;
    box-shadow:0 2px 10px rgba(15,23,42,.045)!important;
  }
  #ccf-mobile-b43 .b434-movements-shell .b434-mov-head h2{
    margin:3px 0!important;
    color:#172033!important;
    font-size:22px!important;
  }
  #ccf-mobile-b43 .b434-movements-shell .b434-mov-head p{
    margin:0!important;
    color:#64748b!important;
    font-size:10px!important;
    line-height:1.4!important;
  }
  #ccf-mobile-b43 .b434-movements-shell .b434-mov-kpis{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
    margin-top:11px!important;
  }
  #ccf-mobile-b43 .b434-movements-shell .b434-mov-kpis article{
    padding:10px!important;
    border-radius:12px!important;
    background:#f8fafc!important;
    border:1px solid #e4e9ef!important;
  }
  #ccf-mobile-b43 .b434-movements-shell .b434-mov-kpis span{
    display:block!important;
    color:#64748b!important;
    font-size:8px!important;
  }
  #ccf-mobile-b43 .b434-movements-shell .b434-mov-kpis strong{
    display:block!important;
    margin-top:4px!important;
    color:#172033!important;
    font-size:15px!important;
    overflow-wrap:anywhere!important;
  }
  #ccf-mobile-b43 .b434-movements-shell .b434-mov-actions{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
    margin-top:10px!important;
  }
  #ccf-mobile-b43 .b434-movements-shell .b434-mov-actions button{
    min-height:44px!important;
    border:0!important;
    border-radius:12px!important;
    background:#071b34!important;
    color:#fff!important;
    font-size:11px!important;
    font-weight:800!important;
  }
  #ccf-mobile-b43 .b434-movements-shell .b434-mov-actions button:first-child{
    background:#0f9f68!important;
  }
  #ccf-mobile-b43 .b434-movements-shell .b434-mov-filter{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:7px!important;
    margin-top:10px!important;
  }
  #ccf-mobile-b43 .b434-movements-shell .b434-mov-filter input{
    grid-column:1/-1!important;
    min-height:42px!important;
    width:100%!important;
    box-sizing:border-box!important;
    border:1px solid #d9e1ea!important;
    border-radius:11px!important;
    background:#f8fafc!important;
    padding:9px 11px!important;
    font-size:13px!important;
    color:#172033!important;
  }
  #ccf-mobile-b43 .b434-movements-shell .b434-mov-filter select{
    min-height:40px!important;
    width:100%!important;
    box-sizing:border-box!important;
    border:1px solid #d9e1ea!important;
    border-radius:11px!important;
    background:#f8fafc!important;
    padding:8px 9px!important;
    font-size:11px!important;
    color:#334155!important;
  }
}

/* CCF MOBILE B4.3 — MOVIMIENTOS · ACCIONES INLINE — DISEÑO FINAL */
@media (max-width:720px){
  #ccf-mobile-b43 .b434-module-host #movimientos #movimientosLista .row{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:10px!important;
  }
  #ccf-mobile-b43 .b434-module-host #movimientos #movimientosLista .row-main{
    min-width:0!important;
    flex:1 1 auto!important;
  }
  #ccf-mobile-b43 .b434-module-host #movimientos #movimientosLista .row-right{
    flex:0 0 auto!important;
    min-width:0!important;
    width:auto!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-end!important;
    justify-content:center!important;
    gap:7px!important;
    text-align:right!important;
  }
  #ccf-mobile-b43 .b434-module-host #movimientos #movimientosLista .row-right>strong{
    display:block!important;
    width:100%!important;
    text-align:right!important;
    white-space:nowrap!important;
  }
  #ccf-mobile-b43 .b434-module-host #movimientos #movimientosLista .actions{
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:8px!important;
    width:auto!important;
    margin:0!important;
  }
  #ccf-mobile-b43 .b434-module-host #movimientos #movimientosLista .actions button{
    width:auto!important;
    min-width:58px!important;
    min-height:34px!important;
    padding:7px 10px!important;
    margin:0!important;
    border-radius:9px!important;
    font-size:9px!important;
    line-height:1!important;
    white-space:nowrap!important;
  }
  #ccf-mobile-b43 .b434-module-host #movimientos #movimientosLista .actions .danger{
    background:#dc2626!important;
    color:#fff!important;
  }
}


/* CCF MOBILE B4.3 — PRESUPUESTO · ADAPTACIÓN MÓVIL FINAL */
@media(max-width:720px){
  #ccf-mobile-b43 .b434-module-host #presupuesto{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-shell{
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    box-sizing:border-box!important;
  }

  /* Encabezado y período */
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-hero{
    display:flex!important;
    flex-direction:column!important;
    gap:11px!important;
    padding:13px!important;
    margin:0 0 10px!important;
    border-radius:16px!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-hero h2{
    margin:2px 0 0!important;
    font-size:20px!important;
    line-height:1.15!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-hero .muted{
    display:block!important;
    margin-top:4px!important;
    font-size:9px!important;
    line-height:1.4!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-period{
    display:grid!important;
    grid-template-columns:36px minmax(0,1fr) 36px!important;
    align-items:end!important;
    gap:7px!important;
    width:100%!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-period label{
    min-width:0!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-period label span{
    display:block!important;
    margin-bottom:4px!important;
    font-size:8px!important;
    font-weight:800!important;
    color:#718096!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto #b233Month{
    width:100%!important;
    min-height:42px!important;
    padding:8px 10px!important;
    border-radius:11px!important;
    font-size:13px!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto #b233Prev,
  #ccf-mobile-b43 .b434-module-host #presupuesto #b233Next{
    width:36px!important;
    min-height:42px!important;
    padding:0!important;
    border-radius:11px!important;
  }

  /* Estado */
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-status-card{
    display:flex!important;
    flex-direction:column!important;
    gap:10px!important;
    padding:12px!important;
    margin:0 0 10px!important;
    border-radius:16px!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto #b233BudgetStatus{
    display:block!important;
    margin-top:3px!important;
    font-size:16px!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto #b233BudgetName{
    display:block!important;
    margin-top:3px!important;
    font-size:9px!important;
    line-height:1.4!important;
    color:#718096!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-status-card>.b233-actions{
    display:grid!important;
    grid-template-columns:1.4fr 1fr 1fr!important;
    gap:7px!important;
    width:100%!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-status-card>.b233-actions button{
    min-height:40px!important;
    padding:8px 7px!important;
    border-radius:10px!important;
    font-size:10px!important;
    white-space:nowrap!important;
  }

  /* KPIs: 2 columnas */
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-kpis{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
    margin:0 0 10px!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-kpis .metric{
    min-width:0!important;
    padding:11px!important;
    margin:0!important;
    border-radius:14px!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-kpis .metric span{
    display:block!important;
    font-size:8px!important;
    line-height:1.25!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-kpis .metric strong{
    display:block!important;
    margin-top:4px!important;
    font-size:15px!important;
    line-height:1.15!important;
    overflow-wrap:anywhere!important;
  }

  /* Tarjetas y títulos */
  #ccf-mobile-b43 .b434-module-host #presupuesto .card{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
    margin:0 0 10px!important;
    padding:12px!important;
    border-radius:16px!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .section-title{
    display:flex!important;
    align-items:flex-start!important;
    justify-content:space-between!important;
    gap:8px!important;
    margin-bottom:10px!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .section-title h2{
    margin:0!important;
    font-size:14px!important;
    line-height:1.25!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .section-title .muted{
    display:block!important;
    margin-top:3px!important;
    font-size:8px!important;
    line-height:1.35!important;
  }

  /* Formulario de línea */
  #ccf-mobile-b43 .b434-module-host #presupuesto #b233LineForm{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    width:100%!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto #b233LineForm label{
    display:flex!important;
    flex-direction:column!important;
    gap:5px!important;
    width:100%!important;
    font-size:10px!important;
    font-weight:800!important;
    color:#334155!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto #b233LineForm input,
  #ccf-mobile-b43 .b434-module-host #presupuesto #b233LineForm select{
    width:100%!important;
    min-height:44px!important;
    box-sizing:border-box!important;
    border-radius:11px!important;
    padding:9px 10px!important;
    font-size:14px!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto #b233LineForm .form-actions{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:7px!important;
    margin-top:1px!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto #b233LineForm .form-actions button:only-child{
    grid-column:1/-1!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto #b233LineForm button{
    width:100%!important;
    min-height:44px!important;
    border-radius:11px!important;
    font-size:11px!important;
  }

  /* Lectura financiera */
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-reading{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:7px!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-reading-row{
    display:flex!important;
    flex-direction:column!important;
    gap:3px!important;
    padding:9px!important;
    border:1px solid #e6ebf0!important;
    border-radius:11px!important;
    background:#f8fafc!important;
    font-size:9px!important;
    line-height:1.4!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-reading-row b{
    font-size:9px!important;
  }

  /* Detalle por categoría: tabla convertida a tarjetas */
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-table-wrap{
    width:100%!important;
    overflow:visible!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-table{
    display:block!important;
    width:100%!important;
    border:0!important;
    border-collapse:separate!important;
    border-spacing:0!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-table thead{
    display:none!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-table tbody{
    display:block!important;
    width:100%!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-table tbody tr{
    position:relative!important;
    display:block!important;
    width:100%!important;
    min-height:116px!important;
    box-sizing:border-box!important;
    margin:0 0 8px!important;
    padding:10px 92px 10px 10px!important;
    border:1px solid #e1e7ee!important;
    border-radius:13px!important;
    background:#fff!important;
    box-shadow:0 2px 8px rgba(15,23,42,.035)!important;
    overflow:hidden!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-table tbody td{
    display:block!important;
    width:auto!important;
    padding:0!important;
    border:0!important;
    text-align:left!important;
    white-space:normal!important;
    font-size:10px!important;
    line-height:1.35!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-table tbody td:nth-child(1){
    margin-bottom:3px!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-table tbody td:nth-child(2){
    margin-bottom:8px!important;
    font-size:12px!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-table tbody td:nth-child(2) small{
    display:block!important;
    margin-top:2px!important;
    color:#718096!important;
    font-size:8px!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-table tbody td:nth-child(3),
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-table tbody td:nth-child(4),
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-table tbody td:nth-child(5),
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-table tbody td:nth-child(6),
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-table tbody td:nth-child(7){
    display:inline-block!important;
    width:auto!important;
    margin-right:9px!important;
    margin-bottom:3px!important;
    color:#475569!important;
    font-size:9px!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-table tbody td:nth-child(3)::before{content:'Plan ';font-weight:800;color:#94a3b8!important}
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-table tbody td:nth-child(4)::before{content:'Ejecutado ';font-weight:800;color:#94a3b8!important}
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-table tbody td:nth-child(5)::before{content:'Desv. ';font-weight:800;color:#94a3b8!important}
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-table tbody td:nth-child(6)::before{content:'Ejec. ';font-weight:800;color:#94a3b8!important}
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-table tbody td:nth-child(7)::before{content:'Prioridad ';font-weight:800;color:#94a3b8!important}
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-table tbody td:nth-child(8){
    position:absolute!important;
    top:50%!important;
    right:9px!important;
    transform:translateY(-50%)!important;
    width:74px!important;
    margin:0!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-table tbody td:nth-child(8) .b233-actions{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:center!important;
    gap:6px!important;
    width:74px!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-table tbody td:nth-child(8) button{
    width:74px!important;
    min-width:0!important;
    min-height:31px!important;
    padding:6px 5px!important;
    margin:0!important;
    border-radius:8px!important;
    font-size:9px!important;
    line-height:1!important;
    white-space:nowrap!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-table tbody td:nth-child(8) .danger{
    background:#dc2626!important;
    color:#fff!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-badge{
    display:inline-flex!important;
    align-items:center!important;
    min-height:20px!important;
    padding:3px 7px!important;
    border-radius:999px!important;
    font-size:8px!important;
    font-weight:900!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-badge.ingreso{
    background:#dcfce7!important;
    color:#166534!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-badge.egreso{
    background:#fee2e2!important;
    color:#991b1b!important;
  }

  /* Detalle comprometido y proyección */
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:0!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-detail-total,
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-detail-row{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:9px!important;
    padding:9px 0!important;
    border-bottom:1px solid #edf1f5!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-detail-total:last-child,
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-detail-row:last-child{
    border-bottom:0!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-detail-row>div{
    min-width:0!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-detail-row b{
    display:block!important;
    font-size:10px!important;
    overflow-wrap:anywhere!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-detail-row small{
    display:block!important;
    margin-top:2px!important;
    color:#718096!important;
    font-size:8px!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-detail-row>strong,
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-detail-total>strong{
    flex:0 0 auto!important;
    font-size:11px!important;
    white-space:nowrap!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-detail-total{
    padding-top:0!important;
    margin-bottom:2px!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-detail-total span{
    font-size:9px!important;
    font-weight:800!important;
    color:#64748b!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto #b233TraceToggle{
    width:100%!important;
    min-height:38px!important;
    border-radius:10px!important;
    font-size:10px!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-trace{
    margin-top:9px!important;
    padding:9px!important;
    border-radius:11px!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-trace-head{
    gap:7px!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-trace-row{
    gap:6px!important;
    padding:7px 0!important;
    font-size:8px!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-trace-row small{
    font-size:7px!important;
  }

  /* Integridad */
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-integrity{
    margin-bottom:0!important;
    padding:11px!important;
    background:#f8fafc!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-integrity p{
    margin:5px 0 0!important;
    font-size:8px!important;
    line-height:1.45!important;
    color:#64748b!important;
  }

  /* Mensajes */
  #ccf-mobile-b43 .b434-module-host #presupuesto #b233Msg{
    margin:0 0 10px!important;
    padding:9px!important;
    border-radius:10px!important;
    font-size:9px!important;
    line-height:1.4!important;
  }
}

/* CCF MOBILE B4.3 — PRESUPUESTO · REFINAMIENTO UX MÓVIL 2 */
@media(max-width:720px){
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-hero{
    gap:8px!important;
    padding:11px!important;
    margin-bottom:8px!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-hero h2{
    font-size:19px!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-status-card{
    gap:8px!important;
    padding:11px!important;
    margin-bottom:8px!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-status-card>.b233-actions{
    gap:6px!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-status-card>.b233-actions button{
    min-height:38px!important;
    padding:7px 5px!important;
    font-size:9px!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-kpis{
    gap:7px!important;
    margin-bottom:8px!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-kpis .metric{
    padding:10px!important;
    border-radius:13px!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-kpis .metric strong{
    font-size:14px!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .card{
    margin-bottom:8px!important;
    padding:11px!important;
    border-radius:15px!important;
  }

  /* Detalle por categoría: tarjeta compacta con métricas en dos filas y acciones horizontales */
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-table tbody tr{
    min-height:0!important;
    padding:10px!important;
    margin-bottom:7px!important;
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    column-gap:10px!important;
    row-gap:5px!important;
    overflow:visible!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-table tbody td:nth-child(1){
    grid-column:1/-1!important;
    margin:0!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-table tbody td:nth-child(2){
    grid-column:1/-1!important;
    margin:0 0 2px!important;
    font-size:12px!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-table tbody td:nth-child(3),
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-table tbody td:nth-child(4),
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-table tbody td:nth-child(5),
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-table tbody td:nth-child(6),
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-table tbody td:nth-child(7){
    display:block!important;
    width:auto!important;
    margin:0!important;
    padding:6px 7px!important;
    border:1px solid #edf1f5!important;
    border-radius:8px!important;
    background:#f8fafc!important;
    font-size:9px!important;
    line-height:1.25!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-table tbody td:nth-child(3){grid-column:1!important}
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-table tbody td:nth-child(4){grid-column:2!important}
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-table tbody td:nth-child(5){grid-column:1!important}
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-table tbody td:nth-child(6){grid-column:2!important}
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-table tbody td:nth-child(7){grid-column:1/-1!important}
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-table tbody td:nth-child(3)::before,
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-table tbody td:nth-child(4)::before,
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-table tbody td:nth-child(5)::before,
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-table tbody td:nth-child(6)::before,
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-table tbody td:nth-child(7)::before{
    display:block!important;
    margin-bottom:2px!important;
    font-size:7px!important;
    line-height:1!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-table tbody td:nth-child(8){
    position:static!important;
    grid-column:1/-1!important;
    transform:none!important;
    width:100%!important;
    margin:2px 0 0!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-table tbody td:nth-child(8) .b233-actions{
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:7px!important;
    width:100%!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-table tbody td:nth-child(8) button{
    width:auto!important;
    min-width:68px!important;
    min-height:32px!important;
    padding:7px 10px!important;
    border-radius:8px!important;
    font-size:9px!important;
  }

  /* Trazabilidad: jerarquía y salto de línea correctos */
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-trace-head{
    display:flex!important;
    align-items:flex-start!important;
    justify-content:space-between!important;
    gap:8px!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-trace-head>div{
    min-width:0!important;
    flex:1 1 auto!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-trace-head>div>b{
    display:block!important;
    font-size:14px!important;
    line-height:1.2!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-trace-head>div>small{
    display:block!important;
    margin-top:4px!important;
    font-size:8px!important;
    line-height:1.35!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-trace-head>.b233-badge{
    flex:0 0 auto!important;
    white-space:nowrap!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-trace-grid{
    gap:8px!important;
    margin-top:8px!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-trace-box{
    padding:9px!important;
    border-radius:10px!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-trace-box h4{
    margin-bottom:5px!important;
    font-size:11px!important;
  }

  /* Reducir densidad vertical en comprometido/proyección */
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-detail-row{
    padding:7px 0!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-detail-row b{
    font-size:9px!important;
  }
  #ccf-mobile-b43 .b434-module-host #presupuesto .b233-detail-row small{
    font-size:7px!important;
  }
}


/* CCF MOBILE B4.3 — PROYECCIÓN · ADAPTACIÓN MÓVIL V1 */
@media(max-width:720px){
  /* Proyección financiera: lectura ejecutiva primero */
  #ccf-mobile-b43 .b434-module-host [data-projection]{
    width:100%!important;
    min-width:0!important;
  }
  #ccf-mobile-b43 .b434-module-host [data-projection] table,
  #ccf-mobile-b43 .b434-module-host #projection-table{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    table-layout:fixed!important;
    border-collapse:separate!important;
    border-spacing:0!important;
    font-size:9px!important;
  }
  #ccf-mobile-b43 .b434-module-host [data-projection] th,
  #ccf-mobile-b43 .b434-module-host [data-projection] td{
    padding:7px 5px!important;
    vertical-align:middle!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
  }
  #ccf-mobile-b43 .b434-module-host [data-projection] thead th{
    font-size:8px!important;
    line-height:1.2!important;
    color:#64748b!important;
    font-weight:800!important;
    background:#f8fafc!important;
    border-bottom:1px solid #e7ebf0!important;
  }
  #ccf-mobile-b43 .b434-module-host [data-projection] tbody tr{
    background:#fff!important;
  }
  #ccf-mobile-b43 .b434-module-host [data-projection] tbody td{
    border-bottom:1px solid #edf1f5!important;
  }
  #ccf-mobile-b43 .b434-module-host [data-projection] tbody tr:last-child td{
    border-bottom:0!important;
  }
  #ccf-mobile-b43 .b434-module-host [data-projection] td strong,
  #ccf-mobile-b43 .b434-module-host [data-projection] td b{
    font-size:9px!important;
  }

  /* Próxima necesidad + acciones: lectura vertical y táctil */
  #ccf-mobile-b43 .b434-module-host .b434-decision{
    grid-template-columns:1fr!important;
    gap:8px!important;
    margin:8px 0!important;
  }
  #ccf-mobile-b43 .b434-module-host .b434-decision article{
    min-width:0!important;
    padding:12px!important;
    border-radius:14px!important;
  }
  #ccf-mobile-b43 .b434-module-host .b434-decision article>span{
    display:block!important;
    margin-bottom:5px!important;
    font-size:8px!important;
    letter-spacing:.2px!important;
  }
  #ccf-mobile-b43 .b434-module-host .b434-decision article [data-next],
  #ccf-mobile-b43 .b434-module-host .b434-decision article [data-priority]{
    min-width:0!important;
    overflow-wrap:anywhere!important;
  }

  /* Análisis ejecutivo: una lectura por tarjeta, sin dos columnas estrechas */
  #ccf-mobile-b43 .b434-module-host .b434-insights{
    grid-template-columns:1fr 1fr!important;
    gap:7px!important;
    margin-bottom:8px!important;
  }
  #ccf-mobile-b43 .b434-module-host .b434-insights article{
    min-width:0!important;
    padding:9px!important;
    border:1px solid var(--m-line)!important;
    border-radius:12px!important;
    background:#f8fafc!important;
  }
  #ccf-mobile-b43 .b434-module-host .b434-insights article span{
    display:block!important;
    font-size:8px!important;
    color:var(--m-muted)!important;
    font-weight:800!important;
  }
  #ccf-mobile-b43 .b434-module-host .b434-insights article strong{
    display:block!important;
    margin-top:4px!important;
    font-size:9px!important;
    line-height:1.35!important;
  }

  /* Gráficos: una columna para preservar legibilidad y evitar compresión */
  #ccf-mobile-b43 .b434-module-host .b434-charts{
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
  #ccf-mobile-b43 .b434-module-host .b434-chart-card{
    width:100%!important;
    min-width:0!important;
    padding:9px!important;
    border-radius:13px!important;
  }
  #ccf-mobile-b43 .b434-module-host .b434-chart-card>strong{
    font-size:9px!important;
    margin-bottom:5px!important;
  }
  #ccf-mobile-b43 .b434-module-host .b434-chart-card>[id^="chart-"]{
    min-height:170px!important;
    width:100%!important;
    max-width:100%!important;
    overflow:hidden!important;
  }
  #ccf-mobile-b43 .b434-module-host .b434-chart-card canvas,
  #ccf-mobile-b43 .b434-module-host .b434-chart-card svg{
    max-width:100%!important;
  }

  /* Compromisos futuros: separar claramente ingresos y egresos */
  #ccf-mobile-b43 .b434-module-host .b434-future{
    grid-template-columns:1fr!important;
    gap:7px!important;
  }
  #ccf-mobile-b43 .b434-module-host .b434-future>article{
    padding:9px!important;
    border-radius:12px!important;
  }
  #ccf-mobile-b43 .b434-module-host .b434-future header{
    margin-bottom:4px!important;
  }
  #ccf-mobile-b43 .b434-module-host .b434-future header b{
    font-size:9px!important;
  }

  /* Control diario: tres indicadores legibles sin forzar una tabla */
  #ccf-mobile-b43 .b434-module-host .b434-margin{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:6px!important;
  }
  #ccf-mobile-b43 .b434-module-host .b434-margin article{
    min-width:0!important;
    padding:8px!important;
    border-radius:11px!important;
    background:#f8fafc!important;
  }
  #ccf-mobile-b43 .b434-module-host .b434-margin article span{
    display:block!important;
    font-size:7px!important;
    line-height:1.2!important;
  }
  #ccf-mobile-b43 .b434-module-host .b434-margin article strong{
    font-size:10px!important;
    overflow-wrap:anywhere!important;
  }
}

/* CCF MOBILE B4.3 — PROYECCIÓN DE LIQUIDEZ · MÓDULO MÓVIL V1 */
@media(max-width:720px){
  /* Contenedor principal de la proyección */
  #ccf-mobile-b43 .b434-module-host .b434-card:has(>#projection-table),
  #ccf-mobile-b43 .b434-card:has(.b434-real-table>#projection-table){
    border-radius:18px!important;
    padding:13px!important;
    margin:10px 0!important;
    background:#fff!important;
    border:1px solid #dfe6ee!important;
    box-shadow:0 3px 12px rgba(15,23,42,.055)!important;
  }
  #ccf-mobile-b43 .b434-card:has(.b434-real-table>#projection-table)>header{
    align-items:flex-start!important;
    margin-bottom:10px!important;
    padding-bottom:9px!important;
    border-bottom:1px solid #edf1f5!important;
  }
  #ccf-mobile-b43 .b434-card:has(.b434-real-table>#projection-table)>header strong{
    font-size:15px!important;
    line-height:1.2!important;
  }
  #ccf-mobile-b43 .b434-card:has(.b434-real-table>#projection-table)>header small{
    padding:4px 7px!important;
    border-radius:999px!important;
    background:#eef5ff!important;
    color:#2563eb!important;
    font-size:8px!important;
    font-weight:800!important;
  }

  /* Tabla: legible y sin deformar el resto de la pantalla */
  #ccf-mobile-b43 .b434-real-table:has(>#projection-table){
    width:100%!important;
    min-width:0!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    border-radius:11px!important;
  }
  #ccf-mobile-b43 .b434-real-table>#projection-table{
    min-width:0!important;
    width:100%!important;
    max-width:100%!important;
    font-size:9px!important;
    line-height:1.3!important;
    box-sizing:border-box!important;
  }
  #ccf-mobile-b43 .b434-real-table>#projection-table table{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    table-layout:fixed!important;
    border-collapse:separate!important;
    border-spacing:0!important;
  }
  #ccf-mobile-b43 .b434-real-table>#projection-table th,
  #ccf-mobile-b43 .b434-real-table>#projection-table td{
    padding:8px 5px!important;
    vertical-align:middle!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
  }
  #ccf-mobile-b43 .b434-real-table>#projection-table thead th{
    background:#f7f9fc!important;
    color:#64748b!important;
    font-size:8px!important;
    font-weight:800!important;
    border-bottom:1px solid #e6ebf0!important;
  }
  #ccf-mobile-b43 .b434-real-table>#projection-table tbody td{
    border-bottom:1px solid #edf1f5!important;
  }
  #ccf-mobile-b43 .b434-real-table>#projection-table tbody tr:last-child td{
    border-bottom:0!important;
  }

  /* Próxima necesidad + acciones prioritarias */
  #ccf-mobile-b43 .b434-decision{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    margin:8px 0!important;
  }
  #ccf-mobile-b43 .b434-decision article{
    min-width:0!important;
    padding:12px!important;
    border-radius:15px!important;
    background:#fff!important;
    border:1px solid #dfe6ee!important;
    box-shadow:0 2px 8px rgba(15,23,42,.035)!important;
  }
  #ccf-mobile-b43 .b434-decision article>span{
    display:block!important;
    margin-bottom:5px!important;
    font-size:8px!important;
    letter-spacing:.25px!important;
    color:#64748b!important;
    font-weight:900!important;
  }
  #ccf-mobile-b43 .b434-decision article [data-next],
  #ccf-mobile-b43 .b434-decision article [data-priority]{
    min-width:0!important;
    font-size:11px!important;
    line-height:1.45!important;
    overflow-wrap:anywhere!important;
  }

  /* Análisis ejecutivo asociado a la proyección */
  #ccf-mobile-b43 .b434-card:has(.b434-charts[data-exec]){
    padding:13px!important;
    border-radius:18px!important;
  }
  #ccf-mobile-b43 .b434-card:has(.b434-charts[data-exec])>header{
    align-items:flex-start!important;
    margin-bottom:9px!important;
  }
  #ccf-mobile-b43 .b434-card:has(.b434-charts[data-exec]) .b434-insights{
    grid-template-columns:1fr 1fr!important;
    gap:7px!important;
  }
  #ccf-mobile-b43 .b434-card:has(.b434-charts[data-exec]) .b434-charts{
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
  #ccf-mobile-b43 .b434-card:has(.b434-charts[data-exec]) .b434-chart-card{
    min-width:0!important;
    width:100%!important;
    padding:9px!important;
    border-radius:13px!important;
    box-sizing:border-box!important;
  }
  #ccf-mobile-b43 .b434-card:has(.b434-charts[data-exec]) .b434-chart-card>[id^="chart-"]{
    width:100%!important;
    max-width:100%!important;
    min-height:165px!important;
    overflow:hidden!important;
  }
}

/* ==========================================================
   CCF MOBILE B4.3 — PLANIFICACIÓN · ESCENARIO 30 DÍAS V1
   Adaptación exclusivamente visual/responsive.
   No modifica JS, lógica financiera, Supabase ni navegación.
   ========================================================== */
@media(max-width:720px){
  #ccf-mobile-b43 .b434-module-host #planificacion{
    width:100%!important;
    min-width:0!important;
    overflow:visible!important;
  }

  #ccf-mobile-b43 .b434-module-host #planificacion h2,
  #ccf-mobile-b43 .b434-module-host #planificacion h3,
  #ccf-mobile-b43 .b434-module-host #planificacion h4,
  #ccf-mobile-b43 .b434-module-host #planificacion p{
    max-width:100%!important;
    overflow-wrap:anywhere!important;
  }

  /* KPIs: saldo proyectado, días cubiertos y riesgo. */
  #ccf-mobile-b43 .b434-module-host #planificacion .b23252-kpis{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    gap:8px!important;
    margin:8px 0 10px!important;
  }
  #ccf-mobile-b43 .b434-module-host #planificacion .b23252-kpi{
    min-height:78px!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    box-sizing:border-box!important;
    box-shadow:0 2px 9px rgba(15,23,42,.035)!important;
  }
  #ccf-mobile-b43 .b434-module-host #planificacion .b23252-kpi:last-child{
    grid-column:1/-1!important;
  }
  #ccf-mobile-b43 .b434-module-host #planificacion .b23252-kpi strong{
    line-height:1.15!important;
  }

  /* Escenario de 30 días: una columna, sin compresión horizontal. */
  #ccf-mobile-b43 .b434-module-host #planificacion .b23252-grid{
    width:100%!important;
    min-width:0!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:8px!important;
  }
  #ccf-mobile-b43 .b434-module-host #planificacion .b23252-row{
    min-width:0!important;
    box-sizing:border-box!important;
    border-bottom:1px solid #edf1f5!important;
  }
  #ccf-mobile-b43 .b434-module-host #planificacion .b23252-row:last-child{
    border-bottom:0!important;
  }
  #ccf-mobile-b43 .b434-module-host #planificacion .b23252-row span{
    flex:1 1 auto!important;
    overflow-wrap:anywhere!important;
  }
  #ccf-mobile-b43 .b434-module-host #planificacion .b23252-row strong{
    max-width:52%!important;
    overflow-wrap:anywhere!important;
  }

  /* Estado / lectura del escenario. */
  #ccf-mobile-b43 .b434-module-host #planificacion .b23252-status{
    box-sizing:border-box!important;
    width:100%!important;
    padding:11px 12px!important;
    border-radius:12px!important;
    background:#f8fafc!important;
    border:1px solid #e3e8ef!important;
    overflow-wrap:anywhere!important;
  }

  /* Gráfico de liquidez si el motor lo inserta en Planificación. */
  #ccf-mobile-b43 .b434-module-host #planificacion canvas,
  #ccf-mobile-b43 .b434-module-host #planificacion svg{
    max-width:100%!important;
  }
  #ccf-mobile-b43 .b434-module-host #planificacion [class*="chart"],
  #ccf-mobile-b43 .b434-module-host #planificacion [id*="chart"]{
    max-width:100%!important;
    min-width:0!important;
    overflow:hidden!important;
  }

  /* Formularios/controles: nada debe desbordar el viewport. */
  #ccf-mobile-b43 .b434-module-host #planificacion input,
  #ccf-mobile-b43 .b434-module-host #planificacion select,
  #ccf-mobile-b43 .b434-module-host #planificacion textarea,
  #ccf-mobile-b43 .b434-module-host #planificacion button{
    max-width:100%!important;
    box-sizing:border-box!important;
  }
  #ccf-mobile-b43 .b434-module-host #planificacion .form-actions{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:7px!important;
  }
  #ccf-mobile-b43 .b434-module-host #planificacion .form-actions button:last-child{
    grid-column:1/-1;
  }
}

@media(max-width:390px){
  #ccf-mobile-b43 .b434-module-host #planificacion .b23252-kpis{
    grid-template-columns:1fr!important;
  }
  #ccf-mobile-b43 .b434-module-host #planificacion .b23252-kpi:last-child{
    grid-column:auto!important;
  }
  #ccf-mobile-b43 .b434-module-host #planificacion .b23252-row{
    align-items:flex-start!important;
    flex-direction:column!important;
    gap:4px!important;
  }
  #ccf-mobile-b43 .b434-module-host #planificacion .b23252-row strong{
    max-width:100%!important;
    text-align:left!important;
  }
}

/* CCF MOBILE B4.3 — DEUDAS · ACCIONES Y DETALLE — V1 */
@media(max-width:720px){
  #ccf-mobile-b43 .b434-module-host #deudas .debt-card{
    min-width:0!important;
    overflow:hidden!important;
  }
  #ccf-mobile-b43 .b434-module-host #deudas .debt-card-values{
    align-items:center!important;
    min-width:0!important;
  }
  #ccf-mobile-b43 .b434-module-host #deudas .debt-card-values > *{
    min-width:0!important;
  }
  #ccf-mobile-b43 .b434-module-host #deudas .debt-card-values strong{
    overflow-wrap:anywhere!important;
  }
  #ccf-mobile-b43 .b434-module-host #deudas .debt-card .form-actions,
  #ccf-mobile-b43 .b434-module-host #deudas .debt-card-actions,
  #ccf-mobile-b43 .b434-module-host #deudas .debt-actions{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;
    width:100%!important;
    min-width:0!important;
    margin-top:2px!important;
  }
  #ccf-mobile-b43 .b434-module-host #deudas .debt-card .form-actions button,
  #ccf-mobile-b43 .b434-module-host #deudas .debt-card-actions button,
  #ccf-mobile-b43 .b434-module-host #deudas .debt-actions button{
    width:100%!important;
    min-width:0!important;
    min-height:38px!important;
    padding:8px 7px!important;
    border-radius:9px!important;
    font-size:9px!important;
    line-height:1.15!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
  }
  #ccf-mobile-b43 .b434-module-host #deudas .debt-card .form-actions button:last-child{
    grid-column:auto!important;
  }
  #ccf-mobile-b43 .b434-module-host #deudas .debt-card small,
  #ccf-mobile-b43 .b434-module-host #deudas .debt-card-meta{
    overflow-wrap:anywhere!important;
  }
}

@media(max-width:390px){
  #ccf-mobile-b43 .b434-module-host #deudas .debt-card .form-actions,
  #ccf-mobile-b43 .b434-module-host #deudas .debt-card-actions,
  #ccf-mobile-b43 .b434-module-host #deudas .debt-actions{
    grid-template-columns:1fr!important;
  }
  #ccf-mobile-b43 .b434-module-host #deudas .debt-card .form-actions button,
  #ccf-mobile-b43 .b434-module-host #deudas .debt-card-actions button,
  #ccf-mobile-b43 .b434-module-host #deudas .debt-actions button{
    min-height:40px!important;
  }
}

/* CCF MOBILE B4.3 — CUENTAS · ADAPTACIÓN MÓVIL V1 */
@media(max-width:720px){
  #ccf-mobile-b43 .b434-module-host #cuentas{
    display:block!important;
    min-width:0!important;
    overflow:hidden!important;
  }
  #ccf-mobile-b43 .b434-module-host #cuentas .section-title{
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:4px!important;
    margin-bottom:9px!important;
  }
  #ccf-mobile-b43 .b434-module-host #cuentas .section-title h2{
    margin:2px 0!important;
    font-size:20px!important;
  }
  #ccf-mobile-b43 .b434-module-host #cuentas .cards.two{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
    margin:10px 0!important;
  }
  #ccf-mobile-b43 .b434-module-host #cuentas .metric{
    min-width:0!important;
    padding:12px!important;
    border-radius:14px!important;
    background:#f8fafc!important;
    border:1px solid #e3e8ef!important;
  }
  #ccf-mobile-b43 .b434-module-host #cuentas .metric span,
  #ccf-mobile-b43 .b434-module-host #cuentas .metric small{
    display:block!important;
    font-size:9px!important;
    color:#64748b!important;
  }
  #ccf-mobile-b43 .b434-module-host #cuentas .metric strong{
    display:block!important;
    margin-top:5px!important;
    font-size:16px!important;
    line-height:1.2!important;
    overflow-wrap:anywhere!important;
  }
  #ccf-mobile-b43 .b434-module-host #cuentas .tabs,
  #ccf-mobile-b43 .b434-module-host #cuentas .filters{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:6px!important;
    margin:9px 0!important;
  }
  #ccf-mobile-b43 .b434-module-host #cuentas .tabs button,
  #ccf-mobile-b43 .b434-module-host #cuentas .filters button{
    min-width:0!important;
    min-height:38px!important;
    padding:7px 5px!important;
    border-radius:9px!important;
    font-size:9px!important;
    white-space:normal!important;
  }
  #ccf-mobile-b43 .b434-module-host #cuentas .grid2{
    grid-template-columns:1fr!important;
    gap:9px!important;
  }
  #ccf-mobile-b43 .b434-module-host #cuentas form{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
  }
  #ccf-mobile-b43 .b434-module-host #cuentas form label{
    display:flex!important;
    flex-direction:column!important;
    gap:5px!important;
    min-width:0!important;
    font-size:11px!important;
    font-weight:800!important;
    color:#334155!important;
  }
  #ccf-mobile-b43 .b434-module-host #cuentas form input,
  #ccf-mobile-b43 .b434-module-host #cuentas form select,
  #ccf-mobile-b43 .b434-module-host #cuentas form textarea{
    width:100%!important;
    min-height:44px!important;
    box-sizing:border-box!important;
    border:1px solid #d9e1ea!important;
    border-radius:11px!important;
    background:#f8fafc!important;
    padding:9px 11px!important;
    font-size:14px!important;
  }
  #ccf-mobile-b43 .b434-module-host #cuentas form textarea{
    min-height:78px!important;
    resize:vertical!important;
  }
  #ccf-mobile-b43 .b434-module-host #cuentas .form-actions{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:7px!important;
    margin-top:2px!important;
  }
  #ccf-mobile-b43 .b434-module-host #cuentas .form-actions button{
    width:100%!important;
    min-width:0!important;
    min-height:42px!important;
    padding:8px!important;
    border-radius:10px!important;
    font-size:10px!important;
  }
  #ccf-mobile-b43 .b434-module-host #cuentas table{
    width:100%!important;
    min-width:0!important;
    table-layout:fixed!important;
    border-collapse:separate!important;
    border-spacing:0!important;
    font-size:9px!important;
  }
  #ccf-mobile-b43 .b434-module-host #cuentas th,
  #ccf-mobile-b43 .b434-module-host #cuentas td{
    padding:7px 5px!important;
    vertical-align:middle!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
  }
  #ccf-mobile-b43 .b434-module-host #cuentas thead th{
    font-size:8px!important;
    line-height:1.2!important;
    color:#64748b!important;
    font-weight:800!important;
    background:#f8fafc!important;
    border-bottom:1px solid #e7ebf0!important;
  }
  #ccf-mobile-b43 .b434-module-host #cuentas tbody td{
    border-bottom:1px solid #edf1f5!important;
  }
  #ccf-mobile-b43 .b434-module-host #cuentas .account-card,
  #ccf-mobile-b43 .b434-module-host #cuentas .cuenta-card,
  #ccf-mobile-b43 .b434-module-host #cuentas .account-item,
  #ccf-mobile-b43 .b434-module-host #cuentas .cuenta-item{
    min-width:0!important;
    display:grid!important;
    gap:8px!important;
    padding:12px!important;
    margin-bottom:8px!important;
    border:1px solid #e1e7ee!important;
    border-radius:14px!important;
    background:#fff!important;
    box-shadow:0 2px 8px rgba(15,23,42,.04)!important;
    overflow:hidden!important;
  }
  #ccf-mobile-b43 .b434-module-host #cuentas .account-card h3,
  #ccf-mobile-b43 .b434-module-host #cuentas .cuenta-card h3,
  #ccf-mobile-b43 .b434-module-host #cuentas .account-item h3,
  #ccf-mobile-b43 .b434-module-host #cuentas .cuenta-item h3{
    margin:0!important;
    font-size:14px!important;
    overflow-wrap:anywhere!important;
  }
  #ccf-mobile-b43 .b434-module-host #cuentas .account-card p,
  #ccf-mobile-b43 .b434-module-host #cuentas .cuenta-card p,
  #ccf-mobile-b43 .b434-module-host #cuentas .account-item p,
  #ccf-mobile-b43 .b434-module-host #cuentas .cuenta-item p{
    margin:0!important;
    color:#64748b!important;
    font-size:9px!important;
    overflow-wrap:anywhere!important;
  }
  #ccf-mobile-b43 .b434-module-host #cuentas .account-card strong,
  #ccf-mobile-b43 .b434-module-host #cuentas .cuenta-card strong,
  #ccf-mobile-b43 .b434-module-host #cuentas .account-item strong,
  #ccf-mobile-b43 .b434-module-host #cuentas .cuenta-item strong{
    font-size:16px!important;
    overflow-wrap:anywhere!important;
  }
  #ccf-mobile-b43 .b434-module-host #cuentas .account-card .form-actions,
  #ccf-mobile-b43 .b434-module-host #cuentas .cuenta-card .form-actions,
  #ccf-mobile-b43 .b434-module-host #cuentas .account-actions,
  #ccf-mobile-b43 .b434-module-host #cuentas .cuenta-actions{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;
    width:100%!important;
    margin-top:2px!important;
  }
  #ccf-mobile-b43 .b434-module-host #cuentas .account-card button,
  #ccf-mobile-b43 .b434-module-host #cuentas .cuenta-card button,
  #ccf-mobile-b43 .b434-module-host #cuentas .account-actions button,
  #ccf-mobile-b43 .b434-module-host #cuentas .cuenta-actions button{
    width:100%!important;
    min-width:0!important;
    min-height:36px!important;
    padding:7px!important;
    border-radius:9px!important;
    font-size:9px!important;
    line-height:1.15!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
  }
}
@media(max-width:390px){
  #ccf-mobile-b43 .b434-module-host #cuentas .tabs,
  #ccf-mobile-b43 .b434-module-host #cuentas .filters{
    grid-template-columns:1fr 1fr!important;
  }
  #ccf-mobile-b43 .b434-module-host #cuentas .form-actions,
  #ccf-mobile-b43 .b434-module-host #cuentas .account-card .form-actions,
  #ccf-mobile-b43 .b434-module-host #cuentas .cuenta-card .form-actions,
  #ccf-mobile-b43 .b434-module-host #cuentas .account-actions,
  #ccf-mobile-b43 .b434-module-host #cuentas .cuenta-actions{
    grid-template-columns:1fr!important;
  }
}

/* CCF MOBILE B4.3 — PAGOS FUTUROS · ADAPTACIÓN MÓVIL V1 */
@media(max-width:720px){
  #ccf-mobile-b43 .b434-module-host #futuros{
    display:block!important;
    min-width:0!important;
  }
  #ccf-mobile-b43 .b434-module-host #futuros .card{
    width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
    margin:0 0 10px!important;
    padding:12px!important;
    border-radius:16px!important;
  }
  #ccf-mobile-b43 .b434-module-host #futuros #futureFormTitle,
  #ccf-mobile-b43 .b434-module-host #futuros .card>h2{
    margin:2px 0 10px!important;
    font-size:18px!important;
    line-height:1.25!important;
    overflow-wrap:anywhere!important;
  }
  #ccf-mobile-b43 .b434-module-host #futuros #futureForm{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    min-width:0!important;
  }
  #ccf-mobile-b43 .b434-module-host #futuros #futureForm label{
    display:flex!important;
    flex-direction:column!important;
    gap:5px!important;
    min-width:0!important;
    font-size:11px!important;
    font-weight:800!important;
    color:#334155!important;
  }
  #ccf-mobile-b43 .b434-module-host #futuros #futureForm label.full{
    grid-column:1/-1!important;
  }
  #ccf-mobile-b43 .b434-module-host #futuros #futureForm input,
  #ccf-mobile-b43 .b434-module-host #futuros #futureForm select{
    width:100%!important;
    min-width:0!important;
    min-height:44px!important;
    box-sizing:border-box!important;
    border:1px solid #d9e1ea!important;
    border-radius:11px!important;
    background:#f8fafc!important;
    padding:9px 11px!important;
    font-size:14px!important;
    color:#172033!important;
  }
  #ccf-mobile-b43 .b434-module-host #futuros #futureForm .form-actions{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
    width:100%!important;
    margin-top:2px!important;
  }
  #ccf-mobile-b43 .b434-module-host #futuros #futureForm .form-actions button{
    width:100%!important;
    min-width:0!important;
    min-height:44px!important;
    padding:9px 8px!important;
    border-radius:10px!important;
    font-size:10px!important;
    line-height:1.15!important;
    white-space:normal!important;
  }
  #ccf-mobile-b43 .b434-module-host #futuros #futureMsg{
    min-height:18px!important;
    margin:8px 2px 0!important;
    font-size:10px!important;
    line-height:1.4!important;
    overflow-wrap:anywhere!important;
  }
  #ccf-mobile-b43 .b434-module-host #futuros #futurosLista{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    min-width:0!important;
  }
  #ccf-mobile-b43 .b434-module-host #futuros #futurosLista>*{
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
  }
  #ccf-mobile-b43 .b434-module-host #futuros #futurosLista .row,
  #ccf-mobile-b43 .b434-module-host #futuros #futurosLista .future-card,
  #ccf-mobile-b43 .b434-module-host #futuros #futurosLista .future-item,
  #ccf-mobile-b43 .b434-module-host #futuros #futurosLista .compromiso-card,
  #ccf-mobile-b43 .b434-module-host #futuros #futurosLista .compromiso-item{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:7px!important;
    padding:12px!important;
    border:1px solid #e1e7ee!important;
    border-radius:14px!important;
    background:#fff!important;
    box-shadow:0 2px 8px rgba(15,23,42,.04)!important;
  }
  #ccf-mobile-b43 .b434-module-host #futuros #futurosLista .row-main,
  #ccf-mobile-b43 .b434-module-host #futuros #futurosLista .future-main,
  #ccf-mobile-b43 .b434-module-host #futuros #futurosLista .compromiso-main{
    min-width:0!important;
  }
  #ccf-mobile-b43 .b434-module-host #futuros #futurosLista strong,
  #ccf-mobile-b43 .b434-module-host #futuros #futurosLista b{
    overflow-wrap:anywhere!important;
  }
  #ccf-mobile-b43 .b434-module-host #futuros #futurosLista small,
  #ccf-mobile-b43 .b434-module-host #futuros #futurosLista p,
  #ccf-mobile-b43 .b434-module-host #futuros #futurosLista span{
    overflow-wrap:anywhere!important;
  }
  #ccf-mobile-b43 .b434-module-host #futuros #futurosLista .actions,
  #ccf-mobile-b43 .b434-module-host #futuros #futurosLista .form-actions,
  #ccf-mobile-b43 .b434-module-host #futuros #futurosLista .future-actions,
  #ccf-mobile-b43 .b434-module-host #futuros #futurosLista .compromiso-actions{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;
    width:100%!important;
    min-width:0!important;
    margin-top:2px!important;
  }
  #ccf-mobile-b43 .b434-module-host #futuros #futurosLista button{
    width:100%!important;
    min-width:0!important;
    min-height:36px!important;
    padding:7px!important;
    border-radius:9px!important;
    font-size:9px!important;
    line-height:1.15!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
  }
}
@media(max-width:390px){
  #ccf-mobile-b43 .b434-module-host #futuros #futureForm .form-actions,
  #ccf-mobile-b43 .b434-module-host #futuros #futurosLista .actions,
  #ccf-mobile-b43 .b434-module-host #futuros #futurosLista .form-actions,
  #ccf-mobile-b43 .b434-module-host #futuros #futurosLista .future-actions,
  #ccf-mobile-b43 .b434-module-host #futuros #futurosLista .compromiso-actions{
    grid-template-columns:1fr!important;
  }
  #ccf-mobile-b43 .b434-module-host #futuros #futureForm .form-actions button,
  #ccf-mobile-b43 .b434-module-host #futuros #futurosLista button{
    min-height:40px!important;
  }
  

}

/* ================================================================
   CCF MOBILE B4.3.10 — CALENDARIO · BOOTSTRAP 5.3.6 AISLADO
   370px = referencia de ancho del widget, NO breakpoint.
   La capa se aplica únicamente cuando #calendario está dentro de la shell móvil.
   ================================================================ */
#ccf-mobile-b43 .b434-module-host #calendario{
  width:100%!important;max-width:100%!important;min-width:0!important;
  box-sizing:border-box!important;overflow:visible!important;
}
#ccf-mobile-b43 .b434-module-host #calendario .b232261-card,
#ccf-mobile-b43 .b434-module-host #calendario .b232261-scroll{
  width:100%!important;max-width:100%!important;min-width:0!important;
  box-sizing:border-box!important;
}
#ccf-mobile-b43 .b434-module-host #calendario .b232261-scroll{
  overflow-x:hidden!important;overflow-y:visible!important;
}

/* Bootstrap 5.3.6 — row/col aislados al calendario. */
#ccf-mobile-b43 .b434-module-host #calendario .b434-bs-calendar-row{
  --bs-gutter-x:0;--bs-gutter-y:0;
  display:flex!important;flex-wrap:wrap!important;
  width:100%!important;max-width:100%!important;min-width:0!important;
  margin:0!important;box-sizing:border-box!important;
  grid-template-columns:none!important;
}
#ccf-mobile-b43 .b434-module-host #calendario .b434-bs-calendar-col{
  flex:0 0 14.2857142857%!important;
  width:14.2857142857%!important;
  max-width:14.2857142857%!important;
  min-width:0!important;box-sizing:border-box!important;
  padding-left:0!important;padding-right:0!important;margin-top:0!important;
  overflow:hidden!important;
}
#ccf-mobile-b43 .b434-module-host #calendario .b232261-grid.b232261-week{
  display:flex!important;flex-wrap:wrap!important;
  width:100%!important;max-width:100%!important;min-width:0!important;
  margin:0!important;box-sizing:border-box!important;
  grid-template-columns:none!important;
}
#ccf-mobile-b43 .b434-module-host #calendario .b232261-grid.b232261-week>*{
  flex:0 0 14.2857142857%!important;
  width:14.2857142857%!important;
  max-width:14.2857142857%!important;
  min-width:0!important;box-sizing:border-box!important;
  overflow:hidden!important;
}
#ccf-mobile-b43 .b434-module-host #calendario .b232261-day{
  width:100%!important;max-width:100%!important;min-width:0!important;
  min-height:78px!important;height:78px!important;
  padding:4px 2px!important;box-sizing:border-box!important;overflow:hidden!important;
}
#ccf-mobile-b43 .b434-module-host #calendario .b232261-day-top{
  display:block!important;text-align:center!important;font-size:11px!important;line-height:1.1!important;
}
#ccf-mobile-b43 .b434-module-host #calendario .b232261-day-top strong{font-size:11px!important}
#ccf-mobile-b43 .b434-module-host #calendario .b232261-day-top small{display:block!important;margin-top:2px!important;font-size:6px!important}
#ccf-mobile-b43 .b434-module-host #calendario .b232261-event,
#ccf-mobile-b43 .b434-module-host #calendario .b232261-mini,
#ccf-mobile-b43 .b434-module-host #calendario .b232261-more{
  max-width:100%!important;min-width:0!important;overflow:hidden!important;
  text-overflow:ellipsis!important;white-space:nowrap!important;font-size:7px!important;
}
#ccf-mobile-b43 .b434-module-host #calendario .b232261-detail{
  grid-template-columns:1fr!important;gap:8px!important;margin-top:9px!important;
}

/* Bootstrap 5.3.6 subset necesaria para row/col, completamente scoped. */
#ccf-mobile-b43 .b434-module-host #calendario .row{
  --bs-gutter-x:1.5rem;--bs-gutter-y:0;display:flex;flex-wrap:wrap;
  margin-top:calc(-1 * var(--bs-gutter-y));margin-right:calc(-.5 * var(--bs-gutter-x));margin-left:calc(-.5 * var(--bs-gutter-x));
}
#ccf-mobile-b43 .b434-module-host #calendario .row>*{
  flex-shrink:0;width:100%;max-width:100%;padding-right:calc(var(--bs-gutter-x)*.5);padding-left:calc(var(--bs-gutter-x)*.5);margin-top:var(--bs-gutter-y);
}
#ccf-mobile-b43 .b434-module-host #calendario .col{flex:1 0 0}
#ccf-mobile-b43 .b434-module-host #calendario .g-0{--bs-gutter-x:0;--bs-gutter-y:0}



/* ================================================================
   B4.3.10 FINAL — CALENDARIO MÓVIL / BOOTSTRAP AISLADO
   Referencia de diseño: 370px.
   No usa 370px como min-width ni como breakpoint.
   ================================================================ */
#ccf-mobile-b43 .b434-module-host #calendario,
#ccf-mobile-b43 .b434-module-host #calendario .b232261-card,
#ccf-mobile-b43 .b434-module-host #calendario .b232261-scroll,
#ccf-mobile-b43 .b434-module-host #calendario .b232261-grid{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}

#ccf-mobile-b43 .b434-module-host #calendario{
  overflow:hidden!important;
}

#ccf-mobile-b43 .b434-module-host #calendario .b232261-scroll{
  display:block!important;
  overflow-x:hidden!important;
  overflow-y:visible!important;
}

#ccf-mobile-b43 .b434-module-host #calendario .b232261-grid.b232261-week,
#ccf-mobile-b43 .b434-module-host #calendario .b232261-grid{
  display:grid!important;
  grid-template-columns:repeat(7,minmax(0,1fr))!important;
  grid-template-rows:auto!important;
  grid-auto-flow:row!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  gap:0!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}

#ccf-mobile-b43 .b434-module-host #calendario .b232261-grid.b232261-week > *,
#ccf-mobile-b43 .b434-module-host #calendario .b232261-grid > *{
  width:auto!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding-left:0!important;
  padding-right:0!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}

#ccf-mobile-b43 .b434-module-host #calendario .b232261-day{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  min-height:78px!important;
  height:78px!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}


/* B4.3.10 — host da nueva vista Bootstrap.
   Bootstrap vive dentro del Shadow DOM: no altera otros módulos. */
#ccf-mobile-b43 .b434-module-host #calendario #ccf-bs-calendar-view{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  box-sizing:border-box!important;
}

/* B4.3.10 — CALENDARIO BOOTSTRAP VISTA NUEVA V2: fallback de layout */

/* B4.3.10 TEST — nueva vista Bootstrap arriba del calendario original */
#ccf-mobile-b43 .b434-module-host #calendario #ccf-bs-calendar-view{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0 0 14px 0!important;
  padding:0!important;
  box-sizing:border-box!important;
  visibility:visible!important;
  opacity:1!important;
  position:relative!important;
  z-index:20!important;
}
