/* Ajustes solicitados en septiembre de 2026. Esta capa reúne únicamente
   cambios de composición e interacción para mantener estable la base visual. */

/* Navegación lateral persistente: el contenido se desplaza dentro del escenario. */
.aso-fenomeno-nino .report-stage{
  height:calc(100vh - var(--aso-shell-height) - 48px);
  max-height:calc(100vh - var(--aso-shell-height) - 48px);
  min-height:0;
  align-items:stretch;
  overflow:hidden;
}
.aso-fenomeno-nino .report-stage .report-nav{
  position:sticky;
  top:0;
  height:100%;
  overflow:auto;
  align-self:start;
}
.aso-fenomeno-nino .report-stage:not(.showing-page) .report-content{
  height:100%;
  overflow:auto;
  overscroll-behavior:contain;
}
.aso-fenomeno-nino .report-stage:not(.showing-page) .report-art{height:100%}
.aso-fenomeno-nino .report-stage.showing-page .page-area{
  height:100%;
  max-height:100%;
  overflow:auto;
  overscroll-behavior:contain;
}
@media(min-width:701px){
  .aso-fenomeno-nino .report-nav .logo-lockup{display:grid;grid-template-columns:1fr;place-items:center;min-height:64px;padding:7px 9px}
  .aso-fenomeno-nino .report-nav .logo-lockup img{display:block;width:100%;max-width:155px;height:auto;max-height:48px;margin:auto;object-fit:contain;object-position:center}
}

/* Las tarjetas de datos básicos recuperan la lectura total + proporción + detalle. */
.module-lead .lead-accent{font-weight:800}
.module-lead .lead-blue{color:#3154bd}
.module-lead .lead-gold{color:#9a6800}
.basic-icon-sprite{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}
.basic-heading,.basic-split-label{display:flex!important;align-items:center;gap:6px;line-height:1.2}
.basic-icon{width:15px;height:15px;flex:0 0 15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;opacity:.78}
.basic-heading .basic-icon{width:17px;height:17px;flex-basis:17px}
.basic-row{
  --donut-accent:#3154bd;
  --urban-share:50%;
  --basic-bg:#e5f2fd;
  --basic-border:#d2e6f7;
  --basic-accent:#2d72b5;
  --basic-muted:#5685b1;
  --basic-number:#13263d;
  --basic-watermark:#bddbf2;
  --basic-detail-bg:#e4eef9;
  --basic-detail-ink:#315f93;
  grid-template-columns:minmax(175px,1fr) 112px minmax(150px,.85fr)!important;
  align-items:center;
  gap:17px!important;
  min-height:150px;
  padding:16px 8px 20px!important;
  border:0!important;
  border-bottom:2px solid #a8b8eb!important;
  border-radius:0!important;
  background:#fff!important;
  box-shadow:none!important;
}
.basic-row.purple{--donut-accent:#87359a;--basic-bg:#f0edff;--basic-border:#e2dcfb;--basic-accent:#6f50c4;--basic-muted:#806aca;--basic-number:#201a3d;--basic-watermark:#d8d0f6;--basic-detail-bg:#eee8fa;--basic-detail-ink:#714497;border-bottom-color:#a799e3!important}
.basic-row.gold{--donut-accent:#806400;--basic-bg:#fff1d8;--basic-border:#f4dfb8;--basic-accent:#c77a08;--basic-muted:#bd7e26;--basic-number:#4e3308;--basic-watermark:#efd7a9;--basic-detail-bg:#f8edd2;--basic-detail-ink:#85620e;border-bottom-color:#e1c26d!important}
.basic-total{position:relative;display:flex;min-width:0;min-height:118px;box-sizing:border-box;flex-direction:column;justify-content:center;padding:16px;border:1px solid var(--basic-border);border-radius:12px;background:var(--basic-bg);overflow:hidden}
.basic-total>*:not(.basic-watermark){position:relative;z-index:1}
.basic-total .basic-heading{color:var(--basic-accent)!important}
.basic-total strong{color:var(--basic-number)}
.basic-total .basic-scope{color:var(--basic-muted)!important}
.basic-watermark{position:absolute!important;z-index:0!important;right:10px;bottom:9px;width:46px!important;height:46px!important;fill:none!important;stroke:var(--basic-watermark)!important;stroke-width:1.55!important;opacity:.78!important;pointer-events:none}
.basic-donut{
  position:relative;
  display:grid;
  place-items:center;
  width:104px;
  aspect-ratio:1;
  margin:auto;
  border-radius:50%;
  background:conic-gradient(var(--donut-accent) 0 var(--urban-share),color-mix(in srgb,var(--donut-accent) 20%,#fff) var(--urban-share) 100%);
  box-shadow:inset 0 0 0 1px rgba(13,48,82,.08);
}
.basic-donut::after{
  content:"";
  position:absolute;
  width:64%;
  aspect-ratio:1;
  border-radius:50%;
  background:#fff;
  box-shadow:0 2px 8px rgba(20,52,78,.08);
}
.basic-donut>span{position:relative;z-index:1;text-align:center;color:var(--donut-accent)}
.basic-donut b,.basic-donut small{display:block}
.basic-donut b{font-size:17px;line-height:1;font-variant-numeric:tabular-nums}
.basic-donut small{margin-top:4px;font-size:9px!important;text-transform:uppercase;letter-spacing:.04em}
.basic-row .split-values b{padding:11px 12px;background:var(--basic-detail-bg)!important;color:var(--basic-detail-ink)!important;border:1px solid color-mix(in srgb,var(--basic-detail-ink) 12%,transparent)}
.basic-row .split-values em{font-size:16px}

/* Mapas con base cartográfica y límites administrativos. */
.map-illustration,.city-map-placeholder.mini-risk-map{
  position:relative;
  display:block;
  min-height:440px;
  padding:0;
  overflow:hidden;
  background:#eef3f7!important;
}
.map-illustration{height:490px;min-height:490px}
.capital-map-canvas{width:100%;height:100%;min-height:100%;background:#eef3f7}
.capital-map-back{
  position:absolute;
  top:12px;
  right:12px;
  z-index:500;
  padding:9px 12px;
  border:1px solid #cbd8e6;
  border-radius:8px;
  background:rgba(255,255,255,.95);
  color:#17407f;
  font:800 11px Archivo,sans-serif;
  box-shadow:0 6px 18px rgba(17,48,80,.14);
  cursor:pointer;
}
.capital-map-tooltip{font:700 11px/1.25 Inter,Arial,sans-serif;color:#17324d}
.leaflet-container{font-family:Inter,Arial,sans-serif}

/* Leyenda de escala. Todo mapa que codifique un dato con color publica aquí qué
   significa ese color; el punto neutro de la escala de temperatura tiene poco
   contraste por definición, y son estas etiquetas las que lo hacen legible. */
.map-scale{display:grid;gap:6px;margin-top:10px}
.map-scale-title{font:800 10px/1.2 Archivo,sans-serif;letter-spacing:.04em;text-transform:uppercase;color:#66757c}
.map-scale-bar{height:9px;border-radius:99px;border:1px solid rgba(23,64,127,.12)}
.map-scale-ticks{display:flex;justify-content:space-between;gap:8px;font:700 10px/1.2 Inter,Arial,sans-serif;color:#4a5c63}
.map-scale-ticks span:nth-child(2){text-align:center}
.map-scale-ticks span:last-child{text-align:right}
.map-scale-keys{display:flex;flex-wrap:wrap;gap:5px 12px;font:700 10px/1.2 Inter,Arial,sans-serif;color:#4a5c63}
.map-scale-keys span{display:inline-flex;align-items:center;gap:5px}
.map-scale-keys i{width:11px;height:11px;border-radius:3px;border:1px solid rgba(23,64,127,.16)}

/* Evitar movimientos decorativos en fichas de lectura. */
.tracking-card:hover,.visual-panel:hover,.territory-card:hover,.panel:hover{transform:none!important}
.tracking-card::after{display:none!important}
.precipitation-view .tracking-card{transition:none!important}
/* "sun" también nombra el sol decorativo de la portada. Neutralizar aquí sus
   reglas de posición y movimiento mantiene iguales las cuatro tarjetas. */
.tracking-card.sun{position:relative!important;inset:auto!important;width:auto!important;aspect-ratio:auto!important;border-radius:12px!important;opacity:1!important;animation:none!important;transform:none!important}
.precipitation-view>.tracking-cards{grid-template-columns:repeat(4,minmax(0,1fr))!important;grid-auto-columns:minmax(0,1fr);align-items:stretch}
.precipitation-view>.tracking-cards>.tracking-card{width:100%!important;height:100%;min-width:0}

/* Temperatura: jerarquía clara y termómetro dinámico. */
.temperature-layout{grid-template-columns:minmax(0,1fr) 300px!important;align-items:start}
.temperature-main{min-width:0}
.temperature-layout .weather-kpis{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:14px}
.temperature-layout .weather-kpis article{min-width:0}
.temperature-layout .weather-kpis strong{font-size:clamp(22px,2.15vw,30px);overflow-wrap:anywhere}
.temperature-map-panel{margin-top:14px}
.temperature-map-panel .city-map-placeholder{height:440px;min-height:440px}
.thermometer-card{
  --temperature-color:#18a654;
  padding:16px 18px;
  border:1px solid #dce5e8;
  border-radius:14px;
  background:#fff;
  box-shadow:0 8px 22px rgba(14,40,77,.08);
}
.thermometer-card[data-level="baja"]{--temperature-color:#2f79e8}
.thermometer-card[data-level="alta"]{--temperature-color:#ef3439}
.thermometer-copy{text-align:center}
.thermometer-copy span,.thermometer-card>small{display:block;color:#62747c;font-size:10px;font-weight:700}
.thermometer-copy strong{display:block;margin:5px 0;color:var(--temperature-color);font-size:29px;letter-spacing:-.045em}
.thermometer-copy b{display:inline-block;padding:4px 11px;border-radius:99px;background:color-mix(in srgb,var(--temperature-color) 16%,#fff);color:var(--temperature-color);font-size:11px}
.thermometer-visual{display:grid;grid-template-columns:35px 34px 58px;gap:8px;height:185px;margin:14px auto 12px;max-width:151px}
.thermometer-scale,.thermometer-track,.thermometer-labels{position:relative;height:100%}
.thermometer-scale span{position:absolute;right:0;color:#75858c;font-size:9px;font-weight:700;line-height:1;transform:translateY(50%)}
.thermometer-track{border:4px solid #eef2f4;border-radius:18px;background:linear-gradient(to top,#2f6fde 0 31.25%,#19a552 31.25% 68.75%,#e1453f 68.75% 100%);box-shadow:0 4px 12px rgba(24,54,85,.12),inset 0 0 0 1px rgba(255,255,255,.45)}
.thermometer-track::before,.thermometer-track::after{content:"";position:absolute;left:-4px;right:-4px;height:2px;background:rgba(255,255,255,.85)}
.thermometer-track::before{bottom:31.25%}.thermometer-track::after{bottom:68.75%}
.thermometer-track i{position:absolute;z-index:2;left:-7px;right:-7px;bottom:var(--temperature-position);height:3px;border-radius:3px;background:#182d3b;box-shadow:0 1px 3px rgba(0,0,0,.25);transform:translateY(50%);transition:bottom .35s ease}
.thermometer-track i::after{content:"";position:absolute;right:-3px;top:50%;width:7px;height:7px;border:2px solid #fff;border-radius:50%;background:#182d3b;transform:translateY(-50%)}
.thermometer-labels span{position:absolute;left:0;color:#52666f;font-size:10px;font-weight:800;transform:translateY(50%)}
.thermometer-labels .label-high{bottom:84%;color:#d83d38}.thermometer-labels .label-normal{bottom:50%;color:#138946}.thermometer-labels .label-low{bottom:15%;color:#2b64c8}
.thermometer-ranges{display:flex;justify-content:center;gap:7px;flex-wrap:wrap;margin-bottom:10px}
.thermometer-ranges span{display:flex;align-items:center;gap:4px;color:#64767e;font-size:8px;font-weight:800}
.thermometer-ranges i{width:7px;height:7px;border-radius:50%}.high-dot{background:#e1453f}.normal-dot{background:#19a552}.low-dot{background:#2f6fde}

/* Precipitación: mapa y ranking comparten el espacio para que las barras sean legibles. */
.precip-layout{grid-template-columns:minmax(480px,.95fr) minmax(520px,1.05fr)!important;gap:22px!important;align-items:start}
.precipitation-map-panel .city-map-placeholder{height:500px;min-height:500px}
.precipitation-ranking{display:flex;min-height:500px;box-sizing:border-box;flex-direction:column;padding:22px}
.precipitation-ranking h3{display:block!important;line-height:1.25}
.precipitation-ranking h3::before{display:inline-block;margin-right:8px}
.precipitation-ranking h3 small{display:block;margin:4px 0 0 16px;color:#58717c;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.rain-legend{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;margin:0 0 15px;color:#61747d;font-size:9px;font-weight:800}
.rain-legend i{height:8px;border-radius:99px;background:linear-gradient(90deg,#dbeafe,#76b7e5,#0b4f99)}
.precipitation-ranking .rank-list{flex:1;align-content:space-between;gap:9px}
.precipitation-ranking .rank-row{grid-template-columns:minmax(135px,175px) minmax(240px,1fr) 70px;gap:12px;min-height:31px;font-size:13px}
.precipitation-ranking .rank-row i{height:28px}
.precipitation-ranking .rank-row>b{font-size:12px}
.precipitation-ranking .rank-row i b{background:var(--rain-color,#1f6fb2)!important}

/* Alertas: velocímetro semicircular y ficha lateral como en el referente. */
.gauge-panel{text-align:left}
.gauge-reference-layout{display:grid;grid-template-columns:minmax(300px,.92fr) minmax(250px,1.08fr);gap:26px;align-items:center;min-height:215px}
.gauge-visual{display:grid;place-items:center;min-width:0;padding:24px 22px 2px;box-sizing:border-box}
.gauge-panel .risk-gauge{
  position:relative!important;
  display:block!important;
  width:min(100%,360px)!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  aspect-ratio:2/1!important;
  flex:none!important;
  margin:0 auto!important;
  overflow:visible!important;
  border-radius:50% 50% 0 0/100% 100% 0 0!important;
  clip-path:none!important;
  background:conic-gradient(from 270deg at 50% 100%,#f7cf00 0 59deg,#fff 59deg 61deg,#ff6b00 61deg 119deg,#fff 119deg 121deg,#eb3037 121deg 180deg,transparent 180deg 360deg)!important;
}
.gauge-panel .risk-gauge::after{content:"";position:absolute;z-index:2;left:50%;bottom:0;width:56%;height:56%;border-radius:50% 50% 0 0/100% 100% 0 0;background:#fff;transform:translateX(-50%)}
.gauge-panel .risk-needle{position:absolute;z-index:3;left:calc(50% - 2px);bottom:6%;width:4px;height:72%;border-radius:4px;background:#233744;transform:rotate(-90deg);transform-origin:50% calc(100% - 2px);transition:transform .45s ease}
.gauge-panel .risk-pivot{position:absolute;z-index:4;left:50%;bottom:0;width:20px;height:20px;border:6px solid #233744;border-radius:50%;background:#fff;transform:translateX(-50%)}
.gauge-panel .risk-gauge b{position:absolute!important;z-index:5!important;left:50%;bottom:28px;margin:0!important;min-width:0!important;min-height:0!important;padding:0!important;background:transparent!important;box-shadow:none!important;color:#9d3e00!important;font-size:28px!important;line-height:1!important;transform:translateX(-50%)}
.gauge-panel .risk-gauge>span{position:absolute;z-index:5;color:#7b8990;font-size:11px;font-weight:800}.gauge-zero{left:-17px;bottom:0}.gauge-one{left:22%;top:-17px}.gauge-two{right:22%;top:-17px}.gauge-three{right:-17px;bottom:0}
.gauge-details{display:grid;align-content:center;min-width:0}
.gauge-details h3{margin:0 0 7px!important;font-size:19px!important}
.gauge-details>p{margin:0 0 10px;color:#7b8990;font-size:12px;font-weight:700}
.risk-level{display:block;width:100%;box-sizing:border-box;margin:0 0 10px;padding:7px 13px;border-radius:99px;background:#edf1f2;color:#41545b;font-size:12px;text-align:left}
.risk-level[data-level="baja"]{background:#fff4b8;color:#6d5700}.risk-level[data-level="moderada"]{background:#ffe0bf;color:#9b4a00}.risk-level[data-level="alta"]{background:#ffd3d3;color:#9b2227}
.gauge-legend{display:grid;gap:7px}.gauge-legend span,.gauge-legend .none,.gauge-legend .low,.gauge-legend .moderate,.gauge-legend .high{position:relative!important;display:block!important;width:auto!important;margin:0!important;padding:0 0 0 17px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:#66777f!important;font-size:10px!important;font-weight:700!important;text-align:left!important}.gauge-legend span::before{content:"";position:absolute;left:0;top:50%;width:10px;height:10px;border-radius:1px;background:#d8dcda;transform:translateY(-50%)}.gauge-legend .low::before{background:#f7cf00}.gauge-legend .moderate::before{background:#ff6b00}.gauge-legend .high::before{background:#eb3037}
.hydro-alert-bars>div{grid-template-columns:90px 1fr!important;align-items:start!important}
.hydro-alert-bars section{display:grid;gap:7px;min-width:0}
.hydro-alert-bars section>i{display:block}
.hydro-alert-bars small{color:#63757d;font-size:10px;line-height:1.45;font-weight:600}
.tracking-intro .hydro-copy-level{font-weight:900}
.tracking-intro .hydro-copy-high{color:#d7443e}
.tracking-intro .hydro-copy-medium{color:#e67827}
.tracking-intro .hydro-copy-low{color:#b48d00}
.tracking-copy .tracking-key{font-weight:900}
.tracking-copy .key-navy,.tracking-copy .key-red,.tracking-copy .key-orange,.tracking-copy .key-gold,.tracking-copy .key-green,.tracking-copy .key-blue,.tracking-copy .key-teal,.tracking-copy .key-purple{color:#355485}
.tracking-copy .key-risk-dark,.tracking-copy .key-risk-mid{color:#74555b}
.alerts-copy .tracking-key,.reservoirs-copy .tracking-key{color:#173eaa}
.hydro-status-kpis .tracking-card>span::before{display:inline-grid;width:17px;height:17px;margin-right:5px;place-items:center;border:2px solid currentColor;border-radius:50%;font-size:10px;line-height:1;vertical-align:-2px}
.hydro-status-kpis .tracking-card.red>span::before{content:"!"}
.hydro-status-kpis .tracking-card.mint>span::before{content:"✓"}
.hydro-status-kpis .tracking-card small{display:inline-flex!important;align-self:flex-start;width:max-content;margin-top:2px;padding:5px 9px;border-radius:99px;font-weight:800!important}
.hydro-status-kpis .tracking-card.red small{background:#f6c7c7;color:#872828}
.hydro-status-kpis .tracking-card.mint small{background:#bdebd8;color:#087052}
.hydro-status-kpis .tracking-card{position:relative;isolation:isolate;overflow:hidden!important}
.hydro-status-kpis .tracking-card>*{position:relative;z-index:1}
.hydro-status-kpis .tracking-card::before{content:"";position:absolute;right:10px;bottom:10px;z-index:0;width:72px;height:72px;background-position:center;background-repeat:no-repeat;background-size:contain;opacity:.11;pointer-events:none}
.hydro-status-kpis .tracking-card.red::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%23922c2c' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M32 5C25 16 14 28 14 39a18 18 0 0 0 36 0C50 28 39 16 32 5Z'/%3E%3C/svg%3E")}
.hydro-status-kpis .tracking-card.mint::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%23087d5b' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='32' cy='32' r='25'/%3E%3Cpath d='m19 32 9 9 18-20'/%3E%3C/svg%3E")}
.fire-cut-hint{display:block;margin-top:2px;color:#64757d;font-size:9px;font-weight:700;line-height:1.35}

/* Las dos columnas de alertas terminan en la misma línea. La izquierda
   reparte el alto disponible entre sus dos paneles, sin dejar un hueco abajo. */
@media(min-width:981px){
  .hydro-layout{align-items:stretch}
  .hydro-layout>div{height:100%;gap:18px;align-content:stretch}
  .hydro-layout>div:first-child{grid-template-rows:repeat(2,minmax(0,1fr))}
  .hydro-layout>div:last-child{grid-template-rows:auto minmax(0,1fr)}
  .hydro-layout>div>.visual-panel{height:100%;margin:0;box-sizing:border-box}
  .hydro-layout>div:first-child>.visual-panel{display:flex;flex-direction:column}
  .hydro-layout>div:first-child>.visual-panel>.hydro-kpis{flex:1;min-height:0}
  .hydro-layout>div:first-child>.visual-panel>.hydro-kpis>.tracking-cards{height:100%}
  .hydro-layout>div:first-child .tracking-card{display:flex;flex-direction:column;justify-content:center;height:100%;box-sizing:border-box}
}

/* Riesgo climático: mapas grandes y distribuciones secundarias. */
.risk-layout{grid-template-columns:1fr 1fr!important;align-items:start}
.risk-summary{grid-template-columns:1fr!important;align-content:start}
.risk-map-panel .city-map-placeholder{height:470px;min-height:470px}
.risk-map-panel>p{margin:10px 0 0;color:#63757d;font-size:10px}
.risk-variable-note{padding:16px 18px;border:1px solid #e0e5e8;border-left:4px solid #9a7b80;border-radius:12px;background:#fbfcfd;box-shadow:0 6px 14px rgba(27,47,54,.06);color:#384a50;font-size:12px;line-height:1.55}
.risk-variable-note p{margin:0}
.risk-variable-note strong{color:#5e4750;font-weight:900}
.risk-variable-note-vulnerability{border-left-color:#b29a9e;background:#fbfcfd}
.risk-variable-note-vulnerability strong{color:#68565a}
.risk-variable-note-risk{background:#fbfcfd}
.risk-distribution{display:grid;grid-template-columns:minmax(0,1fr) 170px;column-gap:18px;align-items:center}
.risk-distribution h3{grid-column:1/-1}
.risk-distribution .risk-donut{margin:0}

/* Embalses: comparación a la izquierda; KPI y tendencia a la derecha. */
.reservoir-range-control{grid-template-columns:1fr!important}
.reservoir-date-range{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:0}
.reservoir-date-range label{min-width:0}
.embalses-layout{grid-template-columns:minmax(390px,.88fr) minmax(500px,1.12fr)!important;gap:18px!important;align-items:stretch}
.embalse-right{display:grid;grid-template-rows:auto minmax(0,1fr);gap:18px;min-width:0}
.embalse-summary{min-width:0}
.reservoir-comparison{display:flex;grid-column:auto;min-width:0;min-height:0;height:100%;box-sizing:border-box;flex-direction:column;overflow:hidden}
.reservoir-comparison h3{flex:0 0 auto}
.reservoir-bars{grid-template-columns:1fr;gap:10px!important;min-height:0;max-height:none!important;flex:1;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior:contain;padding-right:8px;scrollbar-gutter:stable}
.reservoir-bars div{grid-template-columns:minmax(155px,205px) 1fr!important;min-width:0;text-align:left!important}
.reservoir-bars span{overflow-wrap:anywhere}
.reservoir-bars b{min-width:42px}
.embalse-metrics>.tracking-cards{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.embalse-metrics .tracking-card{min-height:118px!important}
.sin-trend-panel{display:grid;grid-template-rows:auto auto minmax(230px,1fr);min-width:0;height:100%;box-sizing:border-box}
.chart-explainer{margin:-4px 0 10px;color:#63757d;font-size:10px;line-height:1.4}
.area-graph{height:100%!important;min-width:0;min-height:230px;margin-top:0!important;overflow:hidden;border:1px solid #e3e9ed!important;border-radius:10px!important;background:#fff!important}
.area-graph svg{display:block;width:100%;height:100%;min-height:0}
.reservoir-empty-state{display:grid;height:100%;min-height:230px;margin:0;place-items:center;padding:18px;box-sizing:border-box;color:#63757d;font-size:12px;font-weight:700;text-align:center}
.sin-grid line{stroke:#e2e8ec;stroke-width:1}.sin-axis text{fill:#60737d;font-size:10px;font-weight:700}.sin-line{fill:none;stroke:#1685ec;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.sin-last-point{fill:#c1121f;stroke:#fff;stroke-width:3}.sin-last-label{fill:#173c70;font-size:11px;font-weight:800}

/* Consolidado: la tabla ocupa toda la ficha derecha y conserva aire alrededor
   del contenido y de ambas barras de desplazamiento. */
@media(min-width:1001px){
  .aso-fenomeno-nino .dashboard{max-width:1560px;padding-right:16px;padding-left:16px}
  .aso-fenomeno-nino .page-area{padding-right:22px;padding-left:22px}
  .alerts-rebuild{grid-template-columns:minmax(285px,.61fr) minmax(0,1.39fr);gap:12px;align-items:stretch}
  .alerts-table-wrap{display:flex;flex-direction:column;align-self:stretch;contain:size;min-height:0;padding:12px 10px 12px 12px;box-sizing:border-box}
  .alerts-table-scroll{flex:1 1 0;height:auto!important;min-height:0;max-height:none!important;padding:0 4px 8px 0;box-sizing:border-box;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-gutter:stable}
}
.full-legend{padding-right:11px;padding-left:11px}
.full-legend .legend-columns{gap:7px}
.full-legend .legend-columns h4{font-size:8px;line-height:1.15}
.full-legend .tag{min-width:0;padding-right:2px;padding-left:2px;font-size:8px;line-height:1.1;white-space:normal;overflow-wrap:anywhere}
.alerts-table-scroll{overflow-x:hidden}
.alerts-table{width:100%;min-width:0!important;table-layout:fixed}
.alerts-table th,.alerts-table td{padding:8px 4px;overflow-wrap:anywhere}
.alerts-table thead th{font-size:9px;line-height:1.15;text-align:center}
.alerts-table thead th:first-child,.alerts-table tbody th{text-align:left}
.alerts-table tbody th{font-size:10px;line-height:1.2}
.alerts-table td{text-align:center}
.alerts-table th:nth-child(1),.alerts-table td:nth-child(1){width:20%}
.alerts-table th:nth-child(2),.alerts-table td:nth-child(2){width:18%}
.alerts-table th:nth-child(3),.alerts-table td:nth-child(3){width:24%}
.alerts-table th:nth-child(4),.alerts-table td:nth-child(4){width:19%}
.alerts-table th:nth-child(5),.alerts-table td:nth-child(5){width:19%}
.alerts-table .tag,.alerts-table .normal{width:100%;min-width:0;padding:4px 2px;font-size:8px;line-height:1.1;white-space:normal}
.alerts-table th:last-child,.alerts-table td:last-child{padding-right:6px}

@media(max-width:1180px){
  .precipitation-view>.tracking-cards{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .temperature-layout{grid-template-columns:1fr!important}
  .temperature-layout .tracking-side{grid-template-columns:1fr 1fr 1fr}
  .precip-layout,.risk-layout,.embalses-layout{grid-template-columns:1fr!important}
  .gauge-reference-layout{grid-template-columns:1fr;gap:18px}
  .reservoir-comparison{height:min(560px,70vh)}
}
@media(max-width:800px){
  .temperature-layout .weather-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .temperature-layout .tracking-side{grid-template-columns:1fr}
  .risk-distribution{grid-template-columns:1fr}
  .risk-distribution h3{grid-column:auto}
  .reservoir-bars{grid-template-columns:1fr}
}
@media(max-width:700px){
  .aso-fenomeno-nino .report-stage{height:auto;max-height:none;min-height:0;overflow:visible}
  .aso-fenomeno-nino .report-stage .report-nav{position:relative;height:auto;overflow:visible}
  .aso-fenomeno-nino .report-stage:not(.showing-page) .report-content{height:auto;overflow:visible}
  .aso-fenomeno-nino .report-stage:not(.showing-page) .report-art{height:auto}
  .aso-fenomeno-nino .report-stage.showing-page .page-area{height:auto;max-height:none;overflow:visible}
  .map-illustration,.city-map-placeholder.mini-risk-map,.capital-map-canvas{height:360px;min-height:360px}
  .precipitation-map-panel .city-map-placeholder,.risk-map-panel .city-map-placeholder{height:390px;min-height:390px}
}
@media(max-width:600px){
  .precipitation-view>.tracking-cards{grid-template-columns:1fr!important}
  .basic-row{grid-template-columns:1fr 102px!important}
  .basic-row .split-values{grid-column:1/-1}
  .temperature-layout .weather-kpis,.embalse-metrics>.tracking-cards{grid-template-columns:1fr!important}
  .gauge-panel .risk-gauge{width:min(100%,320px)!important;height:auto!important}.gauge-panel .risk-needle{height:72%}
}
@media(max-width:420px){.reservoir-date-range{grid-template-columns:1fr}}
