  :root {
    --bg:      #ffffff;
    --surface: #ffffff;
    --card:    #ffffff;
    --border:  #d1dae4;
    --accent:  #111111;
    --accent2: #0a0a0a;
    --yellow:  #4a4a4a;
    --warn:    #b8611d;
    --danger:  #b42318;
    --success: #0f7c66;
    --text:    #101418;
    --muted:   #445160;
    --light:   #eef2f6;
    --header:  #ffffff;
    --sky:     #b6b6b6;
    --gold:    #4a4a4a;
    --serif:   Georgia, "Times New Roman", Times, serif;
    --sans:    -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
    --shadow-soft:0 14px 32px rgba(0,0,0,.05);
  }
  *{box-sizing:border-box;margin:0;padding:0}
  html{scroll-behavior:smooth}
  body{background:var(--bg);color:var(--text);font-family:var(--sans);min-height:100vh;-webkit-font-smoothing:antialiased;overflow-x:hidden}
  body > :not(.hydrorisk-field-container){position:relative;z-index:1}
  body.tn-protected::selection{background:rgba(255,255,255,.14);color:inherit}
  .hydrorisk-field-container{
    position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;
    width:100vw;max-width:100vw;height:100vh;
    opacity:.66;mix-blend-mode:multiply;background:
      linear-gradient(180deg, rgba(8,122,99,.07) 0%, rgba(11,111,159,.035) 28%, transparent 72%),
      repeating-linear-gradient(90deg, rgba(8,122,99,.026) 0 1px, transparent 1px 82px),
      repeating-linear-gradient(0deg, rgba(11,111,159,.018) 0 1px, transparent 1px 76px);
    -webkit-mask-image:linear-gradient(180deg,#000 0%,#000 54%,transparent 100%);
    mask-image:linear-gradient(180deg,#000 0%,#000 54%,transparent 100%);
  }
  .hydrorisk-field-container canvas{width:100vw!important;height:100vh!important;display:block}
  .theme-toggle-hydrorisk{display:none !important}
  .tn-protection-watermark{
    position:fixed;
    inset:0;
    pointer-events:none;
    z-index:9999;
    opacity:.085;
    mix-blend-mode:soft-light;
    background-image:
      repeating-linear-gradient(
        -24deg,
        transparent 0 120px,
        rgba(255,255,255,.04) 120px 121px,
        transparent 121px 260px
      );
  }
  .tn-protection-watermark::before{
    content:attr(data-label);
    position:absolute;
    inset:0;
    display:grid;
    place-items:center;
    font-size:clamp(14px, 1.8vw, 28px);
    letter-spacing:.34em;
    text-transform:uppercase;
    color:rgba(255,255,255,.42);
    transform:rotate(-24deg) scale(1.18);
    white-space:pre;
  }
  .tn-protection-toast{
    position:fixed;
    left:50%;
    bottom:20px;
    transform:translateX(-50%) translateY(10px);
    padding:10px 14px;
    border-radius:999px;
    border:1px solid rgba(255,255,255,.12);
    background:rgba(8,12,18,.88);
    color:rgba(255,255,255,.84);
    font-size:11px;
    letter-spacing:.08em;
    text-transform:uppercase;
    backdrop-filter:blur(12px);
    box-shadow:0 16px 34px rgba(0,0,0,.28);
    opacity:0;
    pointer-events:none;
    transition:opacity .18s ease, transform .18s ease;
    z-index:10010;
  }
  .tn-protection-toast.is-visible{
    opacity:1;
    transform:translateX(-50%) translateY(0);
  }
  body.tn-protected [data-allow-select],
  body.tn-protected input,
  body.tn-protected textarea,
  body.tn-protected select,
  body.tn-protected [contenteditable="true"]{
    -webkit-user-select:text;
    user-select:text;
  }
  ::-webkit-scrollbar{width:6px}
  ::-webkit-scrollbar-track{background:var(--bg)}
  ::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}

  @keyframes fadeUp{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
  .fade-in{animation:fadeUp .45s ease both}

  /* ── LAYOUT ── */
  .container{max-width:1100px;margin:0 auto;padding:0 18px}

  /* ── HEADER ── */
  header{
    background:rgba(255,255,255,.96);
    border-bottom:1px solid rgba(220,220,220,.78);
    backdrop-filter:blur(12px);
    position:sticky;top:0;z-index:100;
  }
  .header-inner{
    display:flex;align-items:center;gap:12px;row-gap:10px;
    max-width:1180px;margin:0 auto;padding:10px 16px;
    flex-wrap:wrap;
  }
  .logo-mark{
    display:none;
  }
  .logo-mark svg{width:24px;height:24px}
  .logo-text{
    min-width:0;
  }
  .logo-text h1{font-size:18px;font-weight:800;color:var(--accent2);line-height:1.06;letter-spacing:-.012em}
  .logo-text p{display:none}
  .header-actions{
    display:flex;align-items:center;gap:10px;width:100%;
  }
  .theme-toggle-hydrorisk{
    width:52px;height:28px;border-radius:999px;border:2px solid rgba(17,17,17,.48);
    background:linear-gradient(180deg, rgba(255,252,247,1) 0%, rgba(241,233,220,1) 100%);position:relative;cursor:pointer;overflow:hidden;
    display:block;padding:0;transition:background .25s ease,border-color .25s ease;
    box-shadow:0 0 0 1px rgba(255,255,255,.7), 0 12px 28px rgba(0,0,0,.12), inset 0 1px 0 rgba(255,255,255,.82);
  }
  .theme-toggle-hydrorisk::after{
    content:"";position:absolute;top:2px;left:2px;z-index:2;
    width:20px;height:20px;border-radius:50%;
    background:linear-gradient(180deg, #171717 0%, #000000 100%);
    border:1px solid rgba(255,255,255,.14);
    box-shadow:0 6px 16px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.08);
    transition:background .35s ease,box-shadow .35s ease,border-color .35s ease,left .35s ease;
  }
  .theme-toggle-hydrorisk .toggle-handle{
    display:none;
  }
  .theme-toggle-hydrorisk:hover{
    border-color:rgba(17,17,17,.62);
    background:linear-gradient(180deg, rgba(255,255,252,1) 0%, rgba(248,241,229,1) 100%);
    box-shadow:0 0 0 1px rgba(17,17,17,.12), 0 14px 30px rgba(0,0,0,.14), inset 0 1px 0 rgba(255,255,255,.86);
  }
  .algo-link{
    margin-left:0;
    font-size:10px;
    color:var(--accent2);
    text-decoration:none;
    display:flex;
    align-items:center;
    justify-content:center;
    font-weight:700;
    letter-spacing:.1em;
    text-transform:uppercase;
    padding:7px 12px;
    border-radius:999px;
    border:1px solid rgba(17,17,17,.12);
    transition:all .2s;
    background:rgba(255,255,255,.78);
    width:100%;
    order:2;
    box-shadow:none;
  }
  .algo-link:hover{
    background:#ffffff;
    border-color:rgba(17,17,17,.2);
    transform:translateY(-1px);
    box-shadow:none;
  }
  .back-link{
    margin-left:0;font-size:12px;color:var(--muted);text-decoration:none;
    display:flex;align-items:center;gap:6px;font-weight:600;
    padding:8px 13px;border-radius:999px;border:1px solid var(--border);
    transition:all .2s;
    background:rgba(255,255,255,.74);
    width:100%;
    justify-content:center;
    order:3;
    box-shadow:none;
  }
  .back-link:hover{color:var(--accent2);border-color:rgba(0,0,0,.24);background:rgba(0,0,0,.035)}

  html[data-theme="dark"]{
    --bg:#050505;
    --surface:#101011;
    --card:#171719;
    --border:rgba(255,255,255,.12);
    --accent:#f2f1ec;
    --accent2:#ffffff;
    --yellow:#b79e71;
    --warn:#d97706;
    --danger:#ef4444;
    --success:#34d399;
    --text:#ece9e1;
    --muted:#d3ccbf;
    --light:#1d1d20;
    --header:#080808;
    --sky:#a8a29a;
    --gold:#c2a46a;
    --shadow-soft:0 18px 40px rgba(0,0,0,.38);
  }
  html[data-theme="dark"] body{
    background:
      radial-gradient(circle at top, rgba(255,255,255,.035), transparent 26%),
      radial-gradient(circle at 50% 0%, rgba(194,164,106,.05), transparent 28%),
      linear-gradient(180deg,#050505 0%,#0a0a0b 100%);
  }
  html[data-theme="dark"] .hydrorisk-field-container{
    opacity:.54;mix-blend-mode:screen;background:
      linear-gradient(180deg, rgba(16,105,92,.18) 0%, rgba(38,83,121,.10) 34%, transparent 78%),
      repeating-linear-gradient(90deg, rgba(255,255,255,.035) 0 1px, transparent 1px 82px),
      repeating-linear-gradient(0deg, rgba(255,255,255,.026) 0 1px, transparent 1px 76px);
  }
  html[data-theme="dark"] header{
    background:rgba(5,5,8,.34);
    border-bottom-color:rgba(255,255,255,.08);
    backdrop-filter:blur(18px);
  }
  html[data-theme="dark"] .back-link{
    background:rgba(255,255,255,.08);
    border-color:rgba(255,255,255,.16);
    color:#fff;
  }
  html[data-theme="dark"] .theme-toggle-hydrorisk{
    background:linear-gradient(180deg, rgba(56,50,42,1) 0%, rgba(18,18,18,1) 100%);
    border-color:rgba(247,245,239,.36);
    box-shadow:0 0 0 1px rgba(247,245,239,.12),0 12px 28px rgba(0,0,0,.46);
  }
  html[data-theme="dark"] .theme-toggle-hydrorisk::after{
    left:26px;
    background:linear-gradient(180deg, #fffdfa 0%, #f1e8da 100%);
    border-color:rgba(255,248,236,.58);
    box-shadow:0 0 0 1px rgba(255,248,236,.55),0 0 26px rgba(199,166,109,.34),0 8px 22px rgba(0,0,0,.48);
  }
  html[data-theme="dark"] .theme-toggle-hydrorisk:hover{
    border-color:rgba(247,245,239,.56);
    box-shadow:0 0 0 1px rgba(247,245,239,.18),0 14px 32px rgba(0,0,0,.5);
  }
  html[data-theme="dark"] .hero{
    background:
      radial-gradient(circle at 18% 22%, rgba(255,255,255,.035) 0%, transparent 28%),
      linear-gradient(180deg,rgba(5,5,8,.38) 0%,rgba(10,8,14,.28) 56%,rgba(5,5,5,.50) 100%);
  }
  html[data-theme="dark"] .hero::after{
    background:linear-gradient(180deg, rgba(10,10,10,0) 0%, rgba(10,10,10,.9) 100%);
  }
  html[data-theme="dark"] .hero-media-frame,
  html[data-theme="dark"] .hero-media-card,
  html[data-theme="dark"] .stats-inner,
  html[data-theme="dark"] .tools-launcher-steps,
  html[data-theme="dark"] .workflow-note,
  html[data-theme="dark"] .workflow-route,
  html[data-theme="dark"] .workflow-task,
  html[data-theme="dark"] .card,
  html[data-theme="dark"] .guide-morphometry-panel,
  html[data-theme="dark"] .guide-meta-chip,
  html[data-theme="dark"] .result-box,
  html[data-theme="dark"] .metric,
  html[data-theme="dark"] .dur-card,
  html[data-theme="dark"] .formula,
  html[data-theme="dark"] .basin-stat,
  html[data-theme="dark"] .atlas-diagnostic,
  html[data-theme="dark"] .map-overlay-context,
  html[data-theme="dark"] .map-overlay-chip,
  html[data-theme="dark"] .station-series-location-meta,
  html[data-theme="dark"] .station-series-chart-empty,
  html[data-theme="dark"] .workflow-note,
  html[data-theme="dark"] .history-chip,
  html[data-theme="dark"] .state-chip,
  html[data-theme="dark"] .atlas-diagnostic,
  html[data-theme="dark"] .formula-block,
  html[data-theme="dark"] .wb-month,
  html[data-theme="dark"] .leaflet-tooltip{
    background:rgba(21,21,23,.96);
    border-color:rgba(255,255,255,.12);
    color:var(--text);
    box-shadow:0 18px 42px rgba(0,0,0,.34);
  }
  html[data-theme="dark"] .tools-launcher{
    background:#0b0b0c;
    border-bottom-color:rgba(255,255,255,.08);
  }
  html[data-theme="dark"] .tools-launcher-intro{
    border-bottom-color:rgba(255,255,255,.10);
  }
  html[data-theme="dark"] .tool-launch-label{
    background:rgba(255,255,255,.1);
    border-color:rgba(255,255,255,.16);
    color:var(--text);
  }
  html[data-theme="dark"] .tools-launcher-steps{
    background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.03));
    border-color:rgba(255,255,255,.10);
  }
  html[data-theme="dark"] .tools-launcher-step-pill{
    background:rgba(255,255,255,.09);
    border-color:rgba(255,255,255,.15);
    color:var(--text);
    box-shadow:0 10px 24px rgba(0,0,0,.22);
  }
  html[data-theme="dark"] .tools-launcher-step-pill span{
    background:rgba(255,255,255,.12);
    border-color:rgba(255,255,255,.16);
    color:var(--text);
  }
  html[data-theme="dark"] .workflow-note{
    color:#c9c3b8;
  }
  html[data-theme="dark"] .workflow-route{
    border-top-color:rgba(255,255,255,.10);
    padding:18px 0 0;
  }
  html[data-theme="dark"] .workflow-route-kicker span{
    background:rgba(255,255,255,.1);
    border-color:rgba(255,255,255,.16);
    color:var(--text);
  }
  html[data-theme="dark"] .workflow-route-copy p,
  html[data-theme="dark"] .workflow-route-hint,
  html[data-theme="dark"] .workflow-task p{
    color:#c8c2b7;
  }
  html[data-theme="dark"] .workflow-task{
    border-top-color:rgba(255,255,255,.10);
  }
  html[data-theme="dark"] .workflow-task-actions button{
    background:rgba(255,255,255,.06);
    color:var(--text);
    border-color:rgba(255,255,255,.12);
  }
  html[data-theme="dark"] .workflow-task-actions button:hover{
    background:rgba(255,255,255,.12);
    border-color:rgba(255,255,255,.18);
  }
  html[data-theme="dark"] .hero-media-card .value,
  html[data-theme="dark"] .workflow-route-title,
  html[data-theme="dark"] .workflow-task h4,
  html[data-theme="dark"] .state-chip .value,
  html[data-theme="dark"] .history-chip .value,
  html[data-theme="dark"] .hero-wordmark{
    color:var(--accent2);
  }
  html[data-theme="dark"] .hero-wordmark{
    text-shadow:0 2px 18px rgba(0,0,0,.42);
  }
  html[data-theme="dark"] .hero-media-card .note,
  html[data-theme="dark"] .hero-media-card .label,
  html[data-theme="dark"] .workflow-note,
  html[data-theme="dark"] .workflow-route-copy p,
  html[data-theme="dark"] .workflow-route-hint,
  html[data-theme="dark"] .workflow-task p,
  html[data-theme="dark"] .state-chip .label,
  html[data-theme="dark"] .state-chip .sub,
  html[data-theme="dark"] .atlas-diagnostic p,
  html[data-theme="dark"] .formula-block .f-desc,
  html[data-theme="dark"] .history-chip .label,
  html[data-theme="dark"] .leaflet-tooltip{
    color:var(--muted);
  }
  html[data-theme="dark"] .btn-export,
  html[data-theme="dark"] .tab-btn.active{
    background:var(--accent2);
    color:#111111
  }
  html[data-theme="dark"] .btn-ghost.selected,
  html[data-theme="dark"] .btn-ghost:hover,
  html[data-theme="dark"] .period-btn.on{
    background:#f2f1ec !important;
    color:#111111 !important;
    border-color:#f2f1ec !important;
  }
  html[data-theme="dark"] .theme-toggle-hydrorisk:hover,
  html[data-theme="dark"] .back-link:hover,
  html[data-theme="dark"] .algo-link:hover{
    background:rgba(255,255,255,.14);
    border-color:rgba(255,255,255,.22);
    color:#ffffff;
  }
  html[data-theme="dark"] .theme-toggle-hydrorisk,
  html[data-theme="dark"] .back-link{
    background:rgba(255,255,255,.1);
    border-color:rgba(255,255,255,.2);
    color:var(--text);
    box-shadow:0 8px 24px rgba(0,0,0,.24);
  }
  html[data-theme="dark"] .algo-link{
    background:rgba(255,255,255,.1);
    border-color:rgba(255,255,255,.2);
    color:var(--text);
    box-shadow:0 8px 24px rgba(0,0,0,.24);
  }
  html[data-theme="dark"] .card,
  html[data-theme="dark"] .workflow-route,
  html[data-theme="dark"] .guide-morphometry-panel{
    background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.02));
    border:1px solid rgba(255,255,255,.10);
    box-shadow:0 18px 42px rgba(0,0,0,.26);
  }
  html[data-theme="dark"] .workflow-task{
    background:rgba(255,255,255,.02);
    border-color:rgba(255,255,255,.10);
    border-radius:16px;
    padding:16px 18px;
  }
  html[data-theme="dark"] .workflow-route{
    padding:20px;
  }
  html[data-theme="dark"] .workflow-task-actions button,
  html[data-theme="dark"] .btn,
  html[data-theme="dark"] .btn-ghost,
  html[data-theme="dark"] .period-btn{
    border-color:rgba(255,255,255,.14);
    box-shadow:none;
  }
  html[data-theme="dark"] .workflow-task-actions button{
    background:rgba(255,255,255,.05);
    color:var(--text);
  }
  html[data-theme="dark"] .workflow-task-actions button:hover{
    background:rgba(255,255,255,.10);
    border-color:rgba(255,255,255,.20);
  }
  html[data-theme="dark"] .btn{
    background:rgba(255,255,255,.92);
    color:#111111;
  }
  html[data-theme="dark"] .btn:hover{
    background:#ffffff;
  }
  html[data-theme="dark"] .btn-ghost{
    background:rgba(255,255,255,.04);
    color:var(--text);
  }
  html[data-theme="dark"] .btn-ghost.selected,
  html[data-theme="dark"] .btn-ghost:hover,
  html[data-theme="dark"] .period-btn.on{
    background:#f4efe5 !important;
    color:#111111 !important;
    border-color:#f4efe5 !important;
  }
  html[data-theme="dark"] .period-btn{
    background:rgba(255,255,255,.04);
    color:var(--text);
  }
  html[data-theme="dark"] .map-overlay-context,
  html[data-theme="dark"] .station-series-location-meta,
  html[data-theme="dark"] .station-series-chart-empty,
  html[data-theme="dark"] .guide-meta-chip,
  html[data-theme="dark"] .map-overlay-chip,
  html[data-theme="dark"] .history-chip,
  html[data-theme="dark"] .state-chip{
    background:rgba(255,255,255,.07);
    border-color:rgba(255,255,255,.14);
  }
  html[data-theme="dark"] .stations-map-empty{
    background:rgba(14,18,24,.72) !important;
    border-color:rgba(255,255,255,.12) !important;
  }
  html[data-theme="dark"] .stations-panel-chip,
  html[data-theme="dark"] .risk-panel-chip{
    border-bottom-color:rgba(255,255,255,.18) !important;
    color:#ddd4c7 !important;
  }
  html[data-theme="dark"] .station-series-location-meta .note,
  html[data-theme="dark"] .station-series-chart-empty,
  html[data-theme="dark"] .map-overlay-context-note,
  html[data-theme="dark"] .guide-meta-sub,
  html[data-theme="dark"] .workflow-route-copy p,
  html[data-theme="dark"] .workflow-route-hint,
  html[data-theme="dark"] .workflow-task p,
  html[data-theme="dark"] .state-chip .label,
  html[data-theme="dark"] .state-chip .sub,
  html[data-theme="dark"] .history-chip .label{
    color:#ddd6ca;
  }
  html[data-theme="dark"] #stations-overview-map,
  html[data-theme="dark"] #risk-overview-map,
  html[data-theme="dark"] #aquarisk-map,
  html[data-theme="dark"] #mghydro-map,
  html[data-theme="dark"] #scs-model-map,
  html[data-theme="dark"] .station-series-location-live-map{
    background:#173145;
  }
  html[data-theme="dark"] #stations-overview-map .leaflet-tile,
  html[data-theme="dark"] #risk-overview-map .leaflet-tile,
  html[data-theme="dark"] #aquarisk-map .leaflet-tile,
  html[data-theme="dark"] #mghydro-map .leaflet-tile,
  html[data-theme="dark"] #scs-model-map .leaflet-tile{
    opacity:1 !important;
    filter:none !important;
  }
  html[data-theme="dark"] .station-series-location-live-wrap .map-badge,
  html[data-theme="dark"] .station-series-location-live-wrap .map-caption{
    background:rgba(18,18,19,.95);
    border-color:rgba(255,255,255,.12);
    color:var(--text);
  }
  html[data-theme="dark"] .station-series-location-live-map .leaflet-control-scale-line,
  html[data-theme="dark"] .station-series-location-live-map .leaflet-control-zoom a{
    background:rgba(18,18,19,.95);
    border-color:rgba(255,255,255,.12);
    color:var(--text);
  }
  html[data-theme="dark"] .tn-figure{
    background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.015));
    border-color:rgba(255,255,255,.10);
  }
  html[data-theme="dark"] footer{
    background:transparent;
    border-top-color:transparent;
    box-shadow:none;
    backdrop-filter:none;
  }
  html[data-theme="dark"] .footer-bottom{
    border-top-color:transparent;
  }
  html[data-theme="dark"] .footer-cite{
    background:transparent;
    border-color:transparent;
    box-shadow:none;
    backdrop-filter:none;
  }
  html[data-theme="dark"] .footer-col a{
    color:var(--accent2);
  }
  html[data-theme="dark"] .footer-col a:hover{
    color:#ffffff;
  }
  html[data-theme="dark"] .tab-btn{
    color:var(--muted);
  }
  html[data-theme="dark"] .tab-btn:hover:not(.active){
    color:var(--accent2);
  }

  /* ── HERO ── */
  .hero{
    background:
      radial-gradient(circle at 18% 22%, rgba(0,0,0,.035) 0%, transparent 28%),
      radial-gradient(circle at 78% 18%, rgba(0,0,0,.045) 0%, transparent 30%),
      linear-gradient(180deg,rgba(255,255,255,.86) 0%,rgba(247,247,247,.72) 56%,rgba(251,251,251,.82) 100%);
    border-bottom:none;
    padding:34px 18px 8px;text-align:left;
    position:relative;overflow:hidden;
  }
  .hero::before{
    content:'';position:absolute;right:-8%;top:2%;
    width:min(42vw,520px);height:min(42vw,520px);
    background:radial-gradient(circle, rgba(0,0,0,.08) 0%, rgba(0,0,0,.02) 44%, transparent 74%);
    pointer-events:none;
  }
  .hero::after{
    content:'';position:absolute;left:0;right:0;bottom:0;height:140px;
    background:linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(248,248,248,.84) 100%);
    pointer-events:none;
  }
  .hero > *{
    position:relative;
    max-width:1180px;
    margin:0 auto;
  }
  .hero-inner{
    display:grid;
    grid-template-columns:minmax(0,1.02fr) minmax(360px,.98fr);
    gap:28px;
    align-items:center;
  }
  .hero-copy{
    display:grid;
    gap:16px;
    padding:18px 0 24px;
    max-width:640px;
  }
  .hero-kicker{
    display:inline-flex;
    align-items:center;
    gap:10px;
    width:max-content;
    max-width:100%;
    padding:7px 11px;
    border-radius:999px;
    border:1px solid rgba(17,17,17,.12);
    background:rgba(255,255,255,.9);
    color:#1a1a1a;
    font-size:11px;
    font-weight:800;
    letter-spacing:.14em;
    text-transform:uppercase;
    box-shadow:none;
  }
  .hero-tag{display:none}
  .hero-wordmark{
    font-size:clamp(52px,8.8vw,92px);
    font-weight:800;
    line-height:.92;
    color:#111111;
    letter-spacing:-.05em;
    margin-bottom:0;
  }
  .hero h2{font-size:clamp(34px,4.8vw,58px);font-weight:750;line-height:1.02;color:var(--accent2);margin:0;position:relative;letter-spacing:-.03em;max-width:13ch}
  .hero h2 span{color:var(--accent2)}
  .hero p{font-size:15px;color:var(--muted);line-height:1.82;max-width:58ch;margin:0;position:relative;font-weight:500}
  .hero-meta{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:2px;
  }
  .hero-meta-chip{
    display:inline-flex;
    align-items:center;
    padding:0 0 2px;
    border-radius:999px;
    background:transparent;
    border:none;
    color:#394656;
    font-size:11px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
    box-shadow:none;
  }
  .hero-media{
    margin:0;
    min-width:0;
    position:relative;
  }
  .hero-media-frame{
    position:relative;
    padding:12px;
    border-radius:22px;
    border:1px solid rgba(17,17,17,.12);
    background:linear-gradient(180deg, rgba(255,255,255,.95) 0%, rgba(243,243,243,.98) 100%);
    box-shadow:0 20px 44px rgba(0,0,0,.1);
  }
  .hero-media-frame::before{
    content:'';
    position:absolute;
    inset:12px;
    border-radius:20px;
    border:1px solid rgba(255,255,255,.72);
    pointer-events:none;
  }
  .hero-media-frame img{
    display:block;
    width:100%;
    height:auto;
    border-radius:18px;
    border:1px solid rgba(210,210,210,.92);
    box-shadow:0 12px 28px rgba(0,0,0,.09);
  }
  .hero-media-card{
    position:absolute;
    z-index:2;
    min-width:158px;
    max-width:240px;
    padding:10px 11px;
    border-radius:14px;
    border:1px solid rgba(17,17,17,.12);
    background:rgba(255,255,255,.96);
    box-shadow:0 14px 28px rgba(0,0,0,.1);
    backdrop-filter:blur(10px);
  }
  .hero-media-card.top{left:-18px;top:18px}
  .hero-media-card.bottom{right:-14px;bottom:18px}
  .hero-media-card .label{
    font-size:10px;
    color:#5a6675;
    text-transform:uppercase;
    letter-spacing:.12em;
    font-weight:800;
    margin-bottom:6px;
  }
  .hero-media-card .value{
    font-size:14px;
    line-height:1.25;
    color:#0f172a;
    font-weight:800;
    margin-bottom:4px;
  }
  .hero-media-card .note{
    font-size:11px;
    line-height:1.58;
    color:#566273;
  }

  /* ── STATS BAR ── */
  .stats-bar{background:transparent;padding:0 18px 18px;border-bottom:1px solid rgba(208,216,226,.84)}
  .stats-inner{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:0;
    max-width:1180px;
    margin:0 auto;
    padding:18px 20px;
    border:1px solid rgba(17,17,17,.12);
    border-radius:20px;
    background:rgba(255,255,255,.94);
    box-shadow:0 14px 30px rgba(0,0,0,.06);
  }
  .stat-item{
    padding:0 16px;
    text-align:left;
    border:none;
    border-radius:0;
    background:transparent;
    box-shadow:none;
    min-width:0;
    border-right:1px solid rgba(226,232,240,.84);
  }
  .stat-item:last-child{border-right:none}
  .stat-val{font-size:28px;font-weight:800;color:#0f172a;font-family:var(--sans);letter-spacing:-.03em;line-height:1.02}
  .stat-val small{font-size:12px;color:var(--muted);font-family:var(--sans)}
  .stat-label{font-size:10px;color:#5d6773;margin-top:7px;text-transform:uppercase;letter-spacing:.12em;font-weight:800;line-height:1.5}

  /* ── TABS ── */
  .tabs-bar{background:rgba(255,255,255,.96);padding:10px 18px 8px;position:sticky;top:58px;z-index:90;border-bottom:1px solid rgba(220,220,220,.65);backdrop-filter:blur(10px)}
  .tabs-shell{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center}
  .tabs-inner{display:flex;gap:10px;overflow-x:auto;padding:0 12px 2px 0;scrollbar-width:none;-webkit-overflow-scrolling:touch;mask-image:linear-gradient(90deg,#000 0%,#000 calc(100% - 28px),transparent 100%)}
  .tabs-inner::-webkit-scrollbar{display:none}
  .tab-btn{
    background:rgba(255,255,255,.72);border:1px solid rgba(17,17,17,.10);color:var(--accent2);
    font-family:var(--sans);font-weight:700;font-size:12.5px;
    padding:11px 14px;cursor:pointer;
    transition:all .2s;letter-spacing:.01em;white-space:nowrap;
    border-radius:999px;box-shadow:none;
  }
  .tab-btn:hover:not(.active){color:var(--accent2);border-color:rgba(0,0,0,.16);background:rgba(255,255,255,.92);transform:translateY(-1px)}
  .tab-btn.active{color:#fff;border-color:var(--accent);background:var(--accent);box-shadow:0 2px 8px rgba(0,0,0,.12)}
  .panel-inline-note,
  .panel-method-note{
    margin-top:12px;
    padding:12px 0 0;
    border-top:1px solid var(--border);
    background:transparent;
    border-left:none;
    border-radius:0;
  }
  .panel-inline-note p,
  .panel-method-note p{
    margin:0;
    font-size:12px;
    line-height:1.72;
    color:var(--muted);
  }
  .panel-inline-note strong,
  .panel-method-note strong{
    color:var(--accent2);
  }
  .panel-section-kicker{
    display:block;
    margin-bottom:6px;
    font-size:11px;
    font-weight:700;
    letter-spacing:.06em;
    text-transform:uppercase;
    color:var(--muted);
  }

  .tools-launcher{
    padding:16px 18px 8px;
    background:transparent;
    border-bottom:1px solid rgba(220,220,220,.5);
  }
  .tools-launcher-inner{
    max-width:1180px;
    margin:0 auto;
    display:grid;
    gap:20px;
  }
  .tools-launcher-intro{
    display:grid;
    grid-template-columns:1fr;
    gap:14px;
    padding:4px 0 14px;
    border-bottom:1px solid rgba(16,20,24,.08);
    align-items:start;
  }
  .tools-launcher-copy{
    display:grid;
    gap:10px;
    max-width:64ch;
  }
  .tool-launch-label{
    display:block;
    width:max-content;
    padding:0;
    border-radius:0;
    background:transparent;
    border:none;
    color:var(--accent);
    font-size:10px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
  }
  .tools-launcher-copy h3{
    margin:0;
    font-size:34px;
    line-height:1.02;
    letter-spacing:-.024em;
    color:var(--accent2);
  }
  .tools-launcher-copy p{
    margin:0;
    font-size:13px;
    line-height:1.8;
    color:var(--muted);
  }
  .tools-launcher-steps{
    display:flex;
    gap:16px;
    align-content:start;
    padding:0;
    border:none;
    background:transparent;
    box-shadow:none;
    flex-wrap:wrap;
  }
  .tools-launcher-step-pill{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:0;
    border-radius:0;
    background:transparent;
    border:none;
    font-size:12px;
    color:var(--accent2);
    font-weight:700;
    letter-spacing:.01em;
    box-shadow:none;
  }
  .tools-launcher-step-pill span{
    display:inline-grid;
    place-items:center;
    width:20px;height:20px;
    border-radius:999px;
    background:transparent;
    border:1px solid rgba(16,20,24,.12);
    font-size:10px;
    font-weight:800;
  }
  .workflow-routes{
    display:grid;
    gap:12px;
  }
  .workflow-route{
    display:grid;
    gap:10px;
    padding:14px 0 0;
    border-top:1px solid rgba(16,20,24,.08);
  }
  .workflow-route:first-child{border-top:none;padding-top:0}
  .workflow-route-top{
    display:grid;
    grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);
    gap:18px;
    align-items:start;
  }
  .workflow-route-kicker{
    display:inline-flex;
    align-items:center;
    gap:10px;
    margin-bottom:10px;
    font-size:10px;
    font-weight:800;
    letter-spacing:.16em;
    text-transform:uppercase;
    color:var(--accent2);
  }
  .workflow-route-kicker span{
    display:inline-grid;
    place-items:center;
    width:26px;height:26px;
    border-radius:999px;
    border:1px solid rgba(16,20,24,.1);
    background:#fbfbfb;
    font-size:11px;
    letter-spacing:.04em;
  }
  .workflow-route-title{
    margin:0;
    font-size:24px;
    line-height:1.08;
    letter-spacing:-.025em;
    color:var(--accent2);
    max-width:15ch;
  }
  .workflow-route-copy{
    display:grid;
    gap:10px;
    align-content:start;
  }
  .workflow-route-copy p{
    margin:0;
    font-size:12.5px;
    line-height:1.74;
    color:var(--muted);
    max-width:62ch;
  }
  .workflow-route-hint{
    font-size:11px;
    line-height:1.62;
    color:var(--muted);
    letter-spacing:.01em;
  }
  .workflow-route-actions{
    display:grid;
    gap:10px;
  }
  .workflow-task{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:14px 18px;
    align-items:end;
    padding:12px 0;
    border-top:1px solid rgba(17,17,17,.08);
  }
  .workflow-task:first-child{border-top:none;padding-top:0}
  .workflow-task-main{
    display:grid;
    gap:6px;
    align-content:start;
  }
  .workflow-task-label{
    font-size:10px;
    font-weight:800;
    letter-spacing:.14em;
    text-transform:uppercase;
    color:var(--muted);
  }
  .workflow-task h4{
    margin:0;
    font-size:18px;
    line-height:1.08;
    letter-spacing:-.018em;
    color:var(--accent2);
  }
  .workflow-task p{
    margin:0;
    font-size:12px;
    line-height:1.68;
    color:var(--muted);
    max-width:54ch;
  }
  .workflow-task-actions{
    display:flex;
    gap:8px;
    flex-wrap:wrap;
    justify-content:flex-end;
  }
  .workflow-task-actions button{
    min-height:32px;
    padding:0;
    border-radius:0;
    border:none;
    background:transparent;
    color:var(--accent2);
    font-weight:700;
    font-size:11px;
    letter-spacing:.04em;
    text-transform:none;
    cursor:pointer;
    transition:opacity .2s ease,color .2s ease;
  }
  .workflow-task-actions button:hover{
    transform:none;
    color:var(--accent);
    opacity:.8;
  }

  .product-hero{
    background:
      radial-gradient(circle at 14% 18%, rgba(26,72,132,.14) 0%, transparent 28%),
      linear-gradient(180deg, rgba(8,10,14,.30) 0%, rgba(8,9,12,.12) 56%, rgba(8,8,10,.04) 100%);
    padding:18px 18px 4px;
  }
  .product-hero::before,
  .product-hero::after{
    display:none;
  }
  .product-hero > *{
    max-width:1180px;
    margin:0 auto;
    position:relative;
  }
  .product-hero-inner{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:0;
    align-items:start;
  }
  .product-hero-copy{
    gap:10px;
    padding:2px 0 4px;
    max-width:760px;
  }
  .product-hero-kicker{
    display:inline-flex;
    width:max-content;
    font-size:10px;
    font-weight:800;
    letter-spacing:.14em;
    text-transform:uppercase;
    color:rgba(228,233,239,.66);
  }
  .product-hero .hero-wordmark{
    font-size:clamp(52px,7vw,80px);
    color:var(--accent2);
    text-shadow:0 10px 28px rgba(0,0,0,.28);
  }
  .product-hero h2{
    max-width:11.8ch;
    font-size:clamp(30px,3.7vw,44px);
    line-height:1.01;
    color:var(--accent2);
    letter-spacing:-.04em;
  }
  .product-hero p{
    max-width:50ch;
    font-size:13px;
    line-height:1.68;
    color:rgba(218,211,201,.9);
  }
  .product-hero-actions{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:4px;
  }
  .product-btn{
    min-height:42px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0 18px;
    border-radius:999px;
    border:1px solid rgba(15,23,42,.14);
    text-decoration:none;
    font-size:12px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
    transition:background-color .2s ease,border-color .2s ease,color .2s ease,transform .2s ease;
    cursor:pointer;
  }
  button.product-btn{
    font-family:var(--sans);
  }
  .product-btn:hover{
    transform:translateY(-1px);
  }
  .product-btn-primary{
    background:rgba(255,255,255,.92);
    border-color:rgba(255,255,255,.92);
    color:#111111;
  }
  .product-btn-primary:hover{
    background:#ffffff;
    border-color:#ffffff;
  }
  .product-btn-secondary{
    background:rgba(255,255,255,.04);
    color:var(--accent2);
    border-color:rgba(255,255,255,.14);
  }
  .product-btn-secondary:hover{
    background:rgba(255,255,255,.10);
    border-color:rgba(255,255,255,.22);
  }
  .product-hero-media{display:none}

  .product-index-bar{display:none}
  .product-index-inner{
    max-width:1180px;
    margin:0 auto;
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    padding:14px 16px;
    border:1px solid rgba(255,255,255,.08);
    border-radius:18px;
    background:rgba(255,255,255,.04);
  }
  .product-index-inner a{
    display:inline-flex;
    align-items:center;
    min-height:34px;
    padding:0 12px;
    border-radius:999px;
    background:transparent;
    color:rgba(228,233,239,.8);
    text-decoration:none;
    font-size:11px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
    transition:background-color .2s ease,color .2s ease;
  }
  .product-index-inner a:hover{
    background:rgba(255,255,255,.08);
    color:#ffffff;
  }

  .product-launcher{display:none}
  .product-launcher-inner{
    max-width:1180px;
    margin:0 auto;
    display:grid;
    gap:28px;
  }
  .product-section-head{
    display:grid;
    gap:10px;
    max-width:76ch;
  }
  .product-section-head h3{
    margin:0;
    font-size:clamp(28px,3.6vw,42px);
    line-height:1.06;
    letter-spacing:-.04em;
    color:var(--accent2);
  }
  .product-section-head p{
    margin:0;
    font-size:14px;
    line-height:1.78;
    color:rgba(214,206,196,.86);
  }
  .product-capabilities,
  .product-how,
  .product-interface,
  .product-use-cases,
  .product-trust,
  .product-final-cta{
    display:grid;
    gap:20px;
    padding:24px 0 0;
    border-top:1px solid rgba(255,255,255,.08);
  }
  .product-capabilities-grid,
  .product-use-cases-grid,
  .product-trust-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:14px;
  }
  .product-capability-card,
  .product-use-cases-grid article,
  .product-trust-grid article,
  .product-how-step{
    display:grid;
    gap:12px;
    padding:18px;
    border-radius:18px;
    border:1px solid rgba(255,255,255,.08);
    background:linear-gradient(180deg, rgba(255,255,255,.035), rgba(255,255,255,.018));
    box-shadow:none;
  }
  .product-capability-card{
    align-content:start;
    min-height:238px;
  }
  .product-capability-icon{
    width:44px;height:44px;
    display:grid;place-items:center;
    border-radius:14px;
    background:rgba(59,130,246,.09);
    color:#7ab2ff;
  }
  .product-capability-icon svg{
    width:22px;height:22px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.9;
    stroke-linecap:round;
    stroke-linejoin:round;
  }
  .product-capability-card h4,
  .product-how-step h4,
  .product-use-cases-grid h4,
  .product-trust-grid h4{
    margin:0;
    font-size:18px;
    line-height:1.12;
    letter-spacing:-.02em;
    color:var(--accent2);
  }
  .product-capability-card p,
  .product-how-step p,
  .product-use-cases-grid p,
  .product-trust-grid p,
  .product-final-cta p,
  .product-interface-card p{
    margin:0;
    font-size:13px;
    line-height:1.74;
    color:rgba(210,203,193,.84);
  }
  .product-capability-card button{
    margin-top:auto;
    min-height:32px;
    padding:0;
    border:none;
    background:transparent;
    color:#8cc2ff;
    font-size:11px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
    text-align:left;
    cursor:pointer;
  }
  .product-capability-card button:hover{
    color:#ffffff;
  }
  .product-how-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:14px;
  }
  .product-how-step span{
    font-size:11px;
    font-weight:800;
    letter-spacing:.16em;
    text-transform:uppercase;
    color:#8cc2ff;
  }
  .product-interface-shell{
    display:grid;
    grid-template-columns:minmax(0,1.16fr) minmax(280px,.84fr);
    gap:16px;
    padding:18px;
    border-radius:24px;
    border:1px solid rgba(255,255,255,.08);
    background:linear-gradient(180deg, rgba(255,255,255,.035), rgba(255,255,255,.015));
    box-shadow:none;
  }
  .product-interface-map{
    position:relative;
    overflow:hidden;
    min-height:380px;
    border-radius:20px;
    border:1px solid rgba(255,255,255,.08);
    background:linear-gradient(180deg, rgba(10,16,24,.96) 0%, rgba(8,12,18,.98) 100%);
  }
  .product-interface-toolbar{
    position:absolute;
    left:14px;
    right:14px;
    top:14px;
    display:flex;
    gap:8px;
    z-index:2;
  }
  .product-interface-toolbar span{
    min-height:28px;
    display:inline-flex;
    align-items:center;
    padding:0 10px;
    border-radius:999px;
    background:rgba(255,255,255,.88);
    border:1px solid rgba(255,255,255,.10);
    font-size:10px;
    font-weight:800;
    letter-spacing:.14em;
    text-transform:uppercase;
    color:#dce3ea;
    background:rgba(9,14,20,.72);
  }
  .product-interface-map-grid{
    position:absolute;
    inset:0;
    background-image:
      linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px),
      linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px);
    background-size:52px 52px;
    opacity:.45;
  }
  .product-interface-river{
    height:3px;
    background:#3b82f6;
    border-radius:999px;
  }
  .product-interface-river-a{left:12%;top:44%;width:52%;transform:rotate(9deg)}
  .product-interface-river-b{left:38%;top:66%;width:30%;transform:rotate(-16deg)}
  .product-interface-area{
    border:2px solid rgba(59,130,246,.42);
    background:rgba(59,130,246,.09);
    border-radius:30px;
  }
  .product-interface-area-a{left:18%;top:24%;width:32%;height:24%;transform:rotate(-7deg)}
  .product-interface-area-b{left:54%;top:46%;width:24%;height:20%;transform:rotate(11deg)}
  .product-interface-point{
    width:13px;height:13px;border-radius:999px;background:#dbeafe;border:3px solid #081019;box-shadow:0 0 0 4px rgba(59,130,246,.15);
  }
  .product-interface-point-a{left:42%;top:48%}
  .product-interface-point-b{left:64%;top:58%}
  .product-interface-legend{
    position:absolute;
    left:14px;
    bottom:14px;
    display:flex;
    flex-wrap:wrap;
    gap:8px 12px;
    z-index:2;
    padding:10px 12px;
    border-radius:14px;
    background:rgba(8,14,20,.78);
    border:1px solid rgba(255,255,255,.10);
  }
  .product-interface-legend span{
    display:inline-flex;
    align-items:center;
    gap:7px;
    font-size:10px;
    font-weight:700;
    letter-spacing:.08em;
    text-transform:uppercase;
    color:#e4ebf1;
  }
  .product-interface-legend i{
    display:block;
    width:10px;height:10px;border-radius:999px;background:#3b82f6;
  }
  .product-interface-legend span:nth-child(2) i{background:#93c5fd}
  .product-interface-legend span:nth-child(3) i{background:#dbeafe}
  .product-interface-side{
    display:grid;
    gap:12px;
  }
  .product-interface-mini-chart span{
    height:var(--h);
  }
  .product-final-cta{
    grid-template-columns:minmax(0,1fr) auto;
    align-items:end;
  }
  .product-final-cta-actions{
    display:flex;
    gap:12px;
    flex-wrap:wrap;
    justify-content:flex-end;
  }

  html[data-theme="dark"] .product-index-bar{
    background:linear-gradient(180deg, rgba(5,7,10,.42) 0%, rgba(5,7,10,.12) 100%);
  }

  /* ── MAIN ── */
  main{max-width:1180px;margin:0 auto;padding:22px 18px 88px}
  .tool-panel{display:none}
  .tool-panel.active{display:block;animation:fadeUp .3s ease both}

  /* ── CARD ── */
  .card{
    background:transparent;border:none;
    border-top:1px solid rgba(220,220,220,.78);
    border-radius:0;padding:28px 0 20px;margin-bottom:18px;
    box-shadow:none;
  }
  .card h3{font-size:26px;font-weight:800;color:var(--accent2);margin-bottom:12px;letter-spacing:-.012em;line-height:1.12}
  .card .subtitle{font-size:12.5px;color:var(--muted);margin-bottom:22px;line-height:1.85;max-width:76ch}
  .guide-morphometry-title,
  .meto-section h4,
  .tn-figure-title,
  .stations-overview-top h4,
  .stations-panel-name,
  .risk-overview-top h4,
  .risk-panel-name,
  .risk-section-heading h4,
  .rbc-name{
    color:var(--accent2);
    letter-spacing:-.012em;
    line-height:1.12;
  }

  /* ── FORM ELEMENTS ── */
  label{font-size:12px;color:var(--muted);letter-spacing:.04em;display:block;margin-bottom:6px;text-transform:uppercase;font-weight:500}
  input[type=number],input[type=range],select{
    background:var(--bg);border:1px solid var(--border);
    color:var(--text);font-family:var(--sans);font-size:14px;
    padding:11px 14px;border-radius:12px;width:100%;outline:none;
    transition:border-color .2s;
  }
  input[type=number]:focus,select:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(0,0,0,.06)}
  input[type=range]{padding:4px 0;accent-color:var(--accent);cursor:pointer}
  select option{background:var(--surface)}

  .form-grid{display:grid;grid-template-columns:1fr;gap:14px;margin-bottom:18px}
  .form-group{display:flex;flex-direction:column}
  .form-group.full{grid-column:1/-1}

  /* ── BUTTONS ── */
  .btn{
    background:var(--accent2);color:#fff;
    font-family:var(--sans);font-weight:700;font-size:13px;
    padding:12px 24px;border:none;border-radius:999px;cursor:pointer;
    letter-spacing:.02em;transition:background .2s,transform .1s;
  }
  .btn:hover{background:#222;transform:translateY(-1px)}
  .btn-ghost{
    background:var(--bg);color:var(--muted);
    border:1px solid var(--border);font-family:var(--sans);
    font-weight:600;font-size:12px;padding:10px 16px;border-radius:999px;
    cursor:pointer;transition:all .2s;
  }
  .btn-ghost.selected,.btn-ghost:hover{color:#111111;border-color:#111111;background:#f2f2f2}

  /* ── RESULT BOX ── */
  .result-box{
    background:transparent;border:none;border-top:1px solid var(--border);
    border-radius:0;padding:20px 0 0;margin-top:20px;animation:fadeUp .3s ease;
  }
  .result-row{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}
  .result-val{font-size:38px;font-weight:700;color:var(--accent2)}
  .result-val small{font-size:18px;color:var(--muted)}
  .result-label{font-size:12px;color:var(--muted);margin-bottom:4px;text-transform:uppercase;letter-spacing:.05em}

  /* ── RISK CHIP ── */
  .risk-chip{
    display:inline-block;padding:5px 14px;border-radius:20px;
    font-size:12px;font-weight:700;letter-spacing:.04em;border:1px solid;
  }

  /* ── METRIC CARDS ── */
  .metrics{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:18px;margin:20px 0}
  .metric{background:transparent;border:none;border-top:1px solid var(--border);border-radius:0;padding:14px 0 0}
  .metric-label{font-size:11px;color:var(--muted);margin-bottom:6px;text-transform:uppercase;letter-spacing:.04em}
  .metric-val{font-size:20px;font-weight:700;color:var(--accent2)}
  .metric-unit{font-size:11px;color:var(--muted);margin-top:2px}

  /* ── METHOD SELECTOR ── */
  .method-row{display:flex;gap:8px;margin-bottom:22px;flex-wrap:wrap}

  /* ── FORMULA BOX ── */
  .formula{
    background:transparent;border-radius:0;border-left:none;border-top:1px solid var(--border);
    padding:12px 0 0;font-size:13px;color:var(--muted);
    font-family:monospace;margin-bottom:4px;
  }
  .formula span{color:var(--accent2);font-weight:600}

  /* ── PERIOD TOGGLES ── */
  .period-toggles{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
  .period-btn{
    padding:5px 12px;border-radius:20px;cursor:pointer;font-size:11px;
    font-family:var(--sans);font-weight:700;border:1px solid;
    transition:all .2s;background:var(--bg);color:var(--muted);border-color:var(--border);
  }
  .period-btn.on{background:#f2f2f2;color:#111111;border-color:#111111}
  #panel-idf .period-toggles{
    gap:10px;
    margin-bottom:14px;
  }
  #panel-idf .period-btn{
    padding:6px 12px;
    border-radius:999px;
    font-size:11px;
    letter-spacing:.02em;
  }
  #panel-idf .dur-grid{
    gap:14px;
    margin-top:10px;
  }
  #panel-idf .dur-card{
    min-width:96px;
    padding-top:12px;
  }
  #panel-idf .tool-inline-actions,
  #panel-cuenca .tool-inline-actions,
  #panel-caudal .tool-inline-actions{
    gap:10px;
    align-items:flex-start;
  }
  #panel-idf .tool-inline-actions .btn-ghost,
  #panel-cuenca .tool-inline-actions .btn-ghost,
  #panel-caudal .tool-inline-actions .btn-ghost{
    padding:9px 14px;
  }
  #panel-cuenca .scs-spatial-panel{
    margin-top:20px;
    padding-top:18px;
    border-top:1px solid var(--border);
    background:transparent;
    border-radius:0;
  }
  #panel-cuenca .scs-spatial-note,
  #panel-caudal .result-box span[style*="font-size:11px"]{
    font-size:11px;
    line-height:1.72;
  }
  #panel-caudal .method-row{
    margin-bottom:18px;
  }
  #panel-caudal .result-box{
    margin-top:18px;
    padding-top:18px;
  }

  /* ── DURATION GRID ── */
  .dur-grid{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
  .dur-card{background:transparent;border:none;border-top:1px solid var(--border);border-radius:0;padding:10px 0 0;min-width:88px;text-align:center}
  .dur-card .per{font-size:11px;color:var(--muted);margin-bottom:4px;text-transform:uppercase}
  .dur-card .val{font-size:18px;font-weight:700;color:var(--accent2)}
  .dur-card .unit{font-size:10px;color:var(--muted)}
  .tool-inline-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:12px}
  .tool-sync-note{font-size:11px;color:var(--muted);line-height:1.6;flex:1 1 240px}
  .tool-sync-note.is-ok{color:var(--accent2)}
  .tool-sync-note.is-warn{color:var(--warn)}
  .guide-morphometry-panel{
    margin-top:18px;padding:16px 18px;border:1px solid var(--border);
    border-radius:12px;background:linear-gradient(180deg,#fff 0%,#f8fafc 100%);
  }
  .guide-morphometry-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap;margin-bottom:14px}
  .guide-morphometry-head p{margin:0}
  .guide-morphometry-kicker{font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
  .guide-morphometry-title{font-family:var(--sans);font-size:22px;font-weight:800;color:var(--accent2);letter-spacing:-.015em;line-height:1.12}
  .guide-morphometry-sub{font-size:12px;line-height:1.7;color:var(--muted);max-width:720px}
  .guide-morphometry-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}
  .guide-meta-chip{border:1px solid var(--border);border-radius:10px;padding:10px 12px;background:#fff}
  .guide-meta-label{font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);margin-bottom:5px}
  .guide-meta-value{font-size:18px;font-weight:700;color:var(--accent2)}
  .guide-meta-sub{font-size:11px;line-height:1.55;color:var(--muted);margin-top:4px}
  .guide-morphometry-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
  .guide-chart-card{border-top:1px solid var(--border);border-radius:0;padding:12px 0 0;background:transparent}
  .guide-chart-title{font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}
  .guide-chart-note{font-size:11px;line-height:1.7;color:var(--muted);margin-top:8px}
  .guide-morphometry-note{margin-top:12px;font-size:11px;line-height:1.8;color:#475569}

  /* ── CN TABLE ── */
  details summary{color:var(--accent2);font-size:13px;cursor:pointer;padding:8px 0;font-weight:600}
  .cn-table{background:var(--light);border-radius:8px;padding:12px;margin-top:8px;overflow-x:auto;border:1px solid var(--border)}
  .cn-table table{width:100%;border-collapse:collapse;font-size:12px}
  .cn-table th{color:var(--muted);padding:4px 8px;text-align:left;text-transform:uppercase;letter-spacing:.04em;font-size:11px}
  .cn-table td{padding:6px 8px;border-top:1px solid var(--border);color:var(--text)}
  .cn-table td:not(:first-child){color:var(--accent2);text-align:center;font-weight:600}
  .social-shell{display:grid;gap:18px}
  .social-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:start}
  .social-title h4{font-size:30px;line-height:1.08;margin-bottom:8px;color:var(--accent2);letter-spacing:-.02em}
  .social-title p{font-size:16px;line-height:1.65;color:var(--muted);max-width:760px}
  .social-kicker{font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:var(--muted);margin-bottom:8px}
  .social-status{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
  .social-chip,.social-action{border:1px solid var(--border);border-radius:999px;padding:8px 11px;font-size:12px;font-weight:800;color:var(--muted);background:rgba(255,255,255,.74);text-decoration:none;white-space:nowrap}
  .social-chip strong{color:var(--accent2)}
  .social-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
  .social-action{cursor:pointer}
  .social-action.primary{background:var(--accent2);border-color:var(--accent2);color:#fff}
  .social-action:hover,.social-action:focus{border-color:var(--accent2);outline:2px solid transparent}
  .social-metric-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
  .social-metric{border:1px solid var(--border);border-radius:10px;padding:14px;background:rgba(255,255,255,.92)}
  .social-metric .value{font-size:28px;line-height:1;font-weight:900;color:var(--accent2);margin-bottom:7px}
  .social-metric .label{font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);font-weight:800}
  .social-impact-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
  .social-impact{border:1px solid var(--border);border-radius:12px;padding:14px;background:rgba(255,255,255,.9);min-width:0}
  .social-impact .eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:900;margin-bottom:8px}
  .social-impact strong{display:block;font-size:18px;line-height:1.12;color:var(--accent2);margin-bottom:7px}
  .social-impact p{font-size:12px;line-height:1.55;color:var(--muted)}
  .social-ngo-advisor{display:grid;grid-template-columns:minmax(280px,.75fr) minmax(0,1.25fr);gap:14px;border:1px solid rgba(15,124,102,.28);border-radius:14px;padding:14px;background:linear-gradient(135deg,rgba(15,124,102,.1),rgba(255,255,255,.84))}
  .social-ngo-advisor h5{font-size:20px;color:var(--accent2);margin-bottom:7px;letter-spacing:-.01em}
  .social-ngo-advisor p{font-size:13px;line-height:1.65;color:var(--muted)}
  .social-advisor-controls{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}
  .social-advisor-controls select{width:100%;border:1px solid var(--border);border-radius:9px;background:rgba(255,255,255,.9);color:var(--text);padding:10px 11px;font:700 13px/1.2 var(--sans)}
  .social-advisor-output{display:grid;grid-template-columns:minmax(0,1fr) minmax(190px,.58fr);gap:12px;align-items:stretch}
  .social-intervention{border:1px solid rgba(15,124,102,.26);border-radius:12px;padding:14px;background:rgba(255,255,255,.84)}
  .social-intervention .tag{display:inline-flex;align-items:center;border-radius:999px;padding:6px 8px;background:rgba(15,124,102,.11);color:#0f7c66;font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:900;margin-bottom:10px}
  .social-intervention h6{font-size:18px;line-height:1.2;color:var(--accent2);margin-bottom:7px}
  .social-intervention p{font-size:13px;line-height:1.6;color:var(--muted)}
  .social-next-steps{display:grid;gap:7px;margin-top:11px}
  .social-next-steps li{list-style:none;position:relative;padding-left:18px;font-size:12px;line-height:1.45;color:var(--muted)}
  .social-next-steps li::before{content:"";position:absolute;left:0;top:.56em;width:7px;height:7px;border-radius:999px;background:#0f7c66}
  .social-source-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
  .social-source{border:1px solid var(--border);border-radius:10px;padding:10px;background:rgba(255,255,255,.74)}
  .social-source strong{display:block;font-size:12px;color:var(--text);margin-bottom:4px}
  .social-source span{display:block;font-size:11px;line-height:1.45;color:var(--muted)}
  .social-workbench{display:grid;grid-template-columns:minmax(260px,.88fr) minmax(320px,1.14fr) minmax(280px,.98fr);gap:14px;align-items:start}
  .social-panel{border:1px solid var(--border);border-radius:12px;padding:14px;background:rgba(255,255,255,.92);min-width:0}
  .social-panel h5{font-size:16px;color:var(--accent2);margin-bottom:6px}
  .social-panel p{font-size:13px;line-height:1.6;color:var(--muted)}
  .social-controls{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0}
  .social-controls input,.social-controls select{width:100%;border:1px solid var(--border);border-radius:9px;background:rgba(255,255,255,.88);color:var(--text);padding:10px 11px;font:600 13px/1.2 var(--sans)}
  .social-ranking-list{display:grid;gap:8px;max-height:520px;overflow:auto;padding-right:3px}
  .social-ranking-row{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid var(--border);border-radius:10px;padding:10px 11px;background:rgba(255,255,255,.86);text-align:left;color:var(--text);cursor:pointer}
  .social-ranking-row:hover,.social-ranking-row:focus{border-color:rgba(180,35,24,.42);outline:none}
  .social-ranking-row.is-active{background:rgba(180,35,24,.1);border-color:rgba(180,35,24,.55)}
  .social-ranking-row .rank{width:28px;height:28px;display:grid;place-items:center;border-radius:999px;background:rgba(180,35,24,.14);color:#b42318;font-size:12px;font-weight:900}
  .social-ranking-row strong{display:block;font-size:13px;color:var(--text)}
  .social-ranking-row span{display:block;font-size:11px;color:var(--muted);margin-top:2px}
  .social-ranking-row .ivh{font-size:18px;font-weight:900;color:#b42318;text-align:right}
  .social-ranking-meta{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:2px 0 10px;flex-wrap:wrap;font-size:11px;line-height:1.55;color:var(--muted)}
  .social-ranking-count{font-weight:900;color:var(--accent2)}
  .social-limit-inline{font-weight:700}
  .social-ranking-row .social-reason-list{display:flex;gap:5px;flex-wrap:wrap;margin-top:7px}
  .social-ranking-row .social-reason-chip{display:inline-flex;align-items:center;border:1px solid rgba(15,124,102,.2);border-radius:999px;padding:4px 7px;margin-top:0;background:rgba(15,124,102,.09);color:#0f7c66;font-size:10px;font-weight:900;line-height:1;white-space:nowrap}
  .social-mini-bar{height:5px;border-radius:999px;background:rgba(148,163,184,.25);margin-top:7px;overflow:hidden}
  .social-mini-bar i{display:block;height:100%;border-radius:999px;background:#b42318}
  .social-atlas{display:grid;gap:10px;margin-top:12px}
  .social-atlas-row{display:grid;grid-template-columns:minmax(90px,.68fr) minmax(0,1fr) auto;gap:9px;align-items:center;font-size:12px;color:var(--muted)}
  .social-atlas-bar{height:12px;border-radius:999px;background:rgba(148,163,184,.25);overflow:hidden}
  .social-atlas-bar i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#d97706,#b42318)}
  .social-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}
  .social-detail-name{font-size:22px;font-weight:900;color:var(--accent2);line-height:1.1}
  .social-detail-place{font-size:12px;color:var(--muted);margin-top:4px;font-weight:700}
  .social-level{display:inline-flex;align-items:center;border-radius:999px;padding:7px 9px;font-size:11px;font-weight:900;letter-spacing:.04em;text-transform:uppercase;border:1px solid rgba(180,35,24,.35);color:#b42318;background:rgba(180,35,24,.1)}
  .social-score{font-size:54px;line-height:1;font-weight:900;color:var(--accent2);letter-spacing:-.04em;margin-bottom:4px}
  .social-score-label{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:800;margin-bottom:12px}
  .social-driver-list{display:grid;gap:9px;margin-top:12px}
  .social-driver{display:grid;grid-template-columns:86px minmax(0,1fr) auto;gap:8px;align-items:center;font-size:12px;color:var(--muted)}
  .social-driver strong{color:var(--text)}
  .social-driver-bar{height:8px;border-radius:999px;background:rgba(148,163,184,.25);overflow:hidden}
  .social-driver-bar i{display:block;height:100%;border-radius:999px;background:var(--accent2)}
  .social-cpv-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px}
  .social-cpv-card{border:1px solid var(--border);border-radius:10px;padding:10px;background:rgba(255,255,255,.74);min-width:0}
  .social-cpv-card .label{font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);font-weight:900;margin-bottom:5px}
  .social-cpv-card strong{display:block;font-size:16px;line-height:1.1;color:var(--accent2)}
  .social-cpv-card span{display:block;font-size:11px;line-height:1.45;color:var(--muted);margin-top:4px}
  .social-case-limit{border:1px dashed rgba(180,35,24,.36);border-radius:10px;padding:10px 11px;margin:0 0 12px;background:rgba(180,35,24,.06);font-size:11px;line-height:1.55;color:#8a2a21;font-weight:800}
  .social-case-lede{border-left:3px solid rgba(15,124,102,.42);padding-left:11px;margin:0 0 12px}
  .social-case-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:12px 0}
  .social-case-card{border:1px solid var(--border);border-radius:10px;padding:11px;background:rgba(255,255,255,.78);min-width:0}
  .social-case-card .label{font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);font-weight:900;margin-bottom:6px}
  .social-case-card strong{display:block;font-size:15px;line-height:1.2;color:var(--accent2);margin-bottom:5px}
  .social-case-card p{font-size:11px;line-height:1.5;color:var(--muted);margin:0}
  .social-compare{border-top:1px solid var(--border);margin-top:14px;padding-top:12px}
  .social-compare table{width:100%;border-collapse:collapse;font-size:12px}
  .social-compare th,.social-compare td{padding:7px 5px;border-top:1px solid rgba(148,163,184,.2);text-align:left;color:var(--muted)}
  .social-compare td:last-child,.social-compare th:last-child{text-align:right;color:var(--text);font-weight:800}
  .social-quality{border:1px dashed rgba(180,35,24,.38);border-radius:12px;padding:14px;background:rgba(180,35,24,.06)}
  .social-quality ul{padding-left:18px;color:var(--muted);font-size:13px;line-height:1.7;margin-top:8px}
  .social-distribution{display:flex;align-items:end;gap:8px;height:120px;margin-top:14px}
  .social-bin{flex:1;display:grid;align-items:end;gap:6px;height:100%;font-size:10px;color:var(--muted);text-align:center}
  .social-bin i{display:block;border-radius:7px 7px 2px 2px;background:linear-gradient(180deg,#b42318,#d97706);min-height:4px}
  .social-empty{padding:18px;border:1px dashed var(--border);border-radius:12px;color:var(--muted);font-size:13px;line-height:1.6}
  @media (max-width:760px){
    .social-header,.social-workbench{grid-template-columns:1fr}
    .social-status{justify-content:flex-start}
    .social-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .social-impact-grid,.social-ngo-advisor,.social-advisor-output,.social-source-grid,.social-cpv-grid,.social-case-grid{grid-template-columns:1fr}
    .social-advisor-controls{grid-template-columns:1fr}
    .social-controls{grid-template-columns:1fr}
    .social-ranking-list{max-height:none}
    .social-score{font-size:44px}
  }

  /* ── MAP ── */
  #map-svg{width:100%;max-width:700px;display:block;cursor:default}
  .zone-group{cursor:pointer}
  .zone-rect{transition:all .2s}
  .map-tooltip{
    background:var(--surface);border:1px solid var(--border);border-radius:10px;
    padding:14px 18px;margin-top:14px;display:none;animation:fadeUp .2s ease;
    border-left:4px solid var(--gold);
  }
  .map-tooltip.show{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px}
  .tooltip-name{font-size:16px;font-weight:600;color:var(--accent2)}
  .tooltip-pop{font-size:13px;color:var(--muted);margin-top:4px}
  .map-legend{display:flex;gap:12px;flex-wrap:wrap;margin-top:14px}
  .legend-item{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted)}
  .legend-dot{width:12px;height:12px;border-radius:3px}
  .legend-river{width:24px;height:4px;border-radius:2px;background:#2563eb}

  /* ── CHART CONTAINER ── */
  .chart-wrap{position:relative;width:100%;margin:16px 0}

  /* ── LEAFLET MAP ── */
  #aquarisk-map{height:560px;border-radius:16px;z-index:1;border:none;box-shadow:none;background:#dfeaf3}
  .leaflet-container{font-family:var(--sans)}
  .river-popup{background:#fff;border:2px solid #2980b9;border-radius:12px;padding:10px 14px;font-family:var(--sans);min-width:180px}
  .river-popup strong{color:#1a5276;font-size:14px}
  .river-popup small{color:#6b7c5e;display:block;margin-top:3px;font-size:11px}
  .atlas-control-bar{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,420px);gap:12px;align-items:center;margin-bottom:12px}
  .atlas-region-wrap{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
  .region-switcher{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
  .region-btn{padding:10px 18px;border-radius:999px;border:1px solid var(--border);background:var(--bg);color:var(--muted);font-family:var(--sans);font-weight:700;font-size:12px;cursor:pointer;transition:all .2s}
  .region-btn.active{background:var(--accent);color:#fff;border-color:var(--accent)}
  .atlas-toolbar{display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:16px;align-items:start;margin-bottom:18px;background:transparent;border:none;border-top:1px solid var(--border);border-radius:0;padding:18px 0 0;box-shadow:none}
  .atlas-kicker{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--accent2);margin-bottom:6px}
  .atlas-copy p:last-child{font-size:12px;color:var(--muted);line-height:1.7}
  .atlas-actions{display:flex;flex-direction:column;gap:10px;align-items:flex-end}
  .atlas-levels{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
  .atlas-level-btn{padding:10px 15px;border-radius:999px;border:1px solid var(--border);background:var(--bg);color:var(--muted);font-family:var(--sans);font-weight:700;font-size:12px;cursor:pointer;transition:all .2s}
  .atlas-level-btn.active,.atlas-level-btn:hover{background:var(--accent2);color:#fff;border-color:var(--accent2)}
  .atlas-level-btn:disabled,.atlas-toggle-btn:disabled{opacity:.45;cursor:not-allowed}
  .atlas-guide-disclosure{margin:0 0 12px;border-top:1px solid var(--border);padding-top:10px}
  .atlas-guide-disclosure > summary{list-style:none;display:inline-flex;align-items:center;gap:10px;padding:0;color:var(--accent2);font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;cursor:pointer}
  .atlas-guide-disclosure > summary::-webkit-details-marker{display:none}
  .atlas-guide-disclosure[open] > summary{margin-bottom:12px}
  .atlas-level-guide{display:grid;grid-template-columns:minmax(220px,260px) minmax(0,1fr);gap:14px;align-items:start;padding:0}
  .atlas-level-guide-kicker{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--accent2);margin-bottom:8px}
  .atlas-level-guide h4{font-size:17px;line-height:1.18;color:var(--accent2);margin:0 0 8px}
  .atlas-level-guide p{font-size:12px;color:var(--muted);line-height:1.72;margin:0}
  .atlas-level-guide-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}
  .atlas-level-guide-item{padding:10px 0 8px;border-top:1px solid var(--border);background:transparent}
  .atlas-level-guide-item strong{display:block;font-size:13px;color:var(--accent2);margin-bottom:4px}
  .atlas-level-guide-item span{display:block;font-size:11px;color:var(--muted);line-height:1.55}
  .atlas-meta{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:-2px 0 12px}
  .atlas-status{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:20px;border:1px solid var(--border);background:var(--surface);font-size:11px;font-weight:700;color:var(--accent2)}
  .atlas-status.warn{color:var(--warn);border-color:rgba(192,57,43,.25);background:rgba(192,57,43,.08)}
  .atlas-note{font-size:11px;color:var(--muted)}
  .atlas-suggestions-panel{margin:0 0 12px;border-top:1px solid var(--border);padding-top:10px}
  .atlas-suggestions-panel[hidden]{display:none}
  .atlas-suggestions-panel > summary{list-style:none;display:inline-flex;align-items:center;gap:8px;padding:0;color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;cursor:pointer}
  .atlas-suggestions-panel > summary::-webkit-details-marker{display:none}
  .atlas-suggestions-panel[open] > summary{margin-bottom:10px;color:var(--accent2)}
  .map-overlay-context{display:none;margin:10px 0 12px;padding:10px 0 0;border-top:1px solid var(--border);border-radius:0;background:transparent}
  .map-overlay-context.show{display:block;animation:fadeUp .25s ease}
  .map-overlay-context-head{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:8px}
  .map-overlay-context-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--accent2)}
  .map-overlay-context-note{font-size:11px;color:var(--muted)}
  .map-overlay-context-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px}
  .map-overlay-chip{display:flex;align-items:center;gap:8px;padding:8px 0 0;border:none;border-top:1px solid var(--border);border-radius:0;background:transparent;font-size:11px;color:var(--text)}
  .map-overlay-chip strong{font-size:11px;color:var(--accent2)}
  .map-overlay-chip span{color:var(--muted)}
  .overlay-line-swatch{width:30px;height:0;border-top:3px solid;border-radius:3px;flex-shrink:0}
  .overlay-line-swatch.temp{border-top-color:#a65022;border-top-style:dashed}
  .overlay-line-swatch.precip{border-top-color:#2563eb;border-top-style:dashed}
  .overlay-line-swatch.rivers{border-top-color:#1d4ed8;border-top-width:4px}
  .overlay-raster-swatch{width:30px;height:12px;border-radius:4px;flex-shrink:0;border:1px solid rgba(0,0,0,.16)}
  .overlay-raster-swatch.relief{background:linear-gradient(135deg,rgba(248,250,252,.95) 0%,rgba(148,163,184,.78) 48%,rgba(51,65,85,.9) 100%)}
  .overlay-raster-swatch.slope{background:linear-gradient(90deg,rgba(248,250,252,.88) 0%,rgba(222,235,209,.95) 24%,rgba(244,208,140,.95) 54%,rgba(220,148,93,.96) 78%,rgba(133,41,51,.98) 100%)}
  .overlay-marker-swatch{display:inline-block;width:13px;height:13px;border-radius:999px;flex-shrink:0}
  .overlay-marker-swatch.tarija-stations{background:radial-gradient(circle at 35% 35%, #ffffff 0 24%, #0f766e 25% 64%, #2563eb 65% 100%);border:1px solid rgba(15,118,110,.34);box-shadow:0 0 0 2px rgba(15,118,110,.12)}
  .overlay-marker-swatch.spain-stations{background:radial-gradient(circle at 35% 35%, #ffffff 0 24%, #0b4f6c 25% 62%, #1c1c1c 63% 100%);border:1px solid rgba(11,79,108,.34);box-shadow:0 0 0 2px rgba(0,0,0,.08)}
  .overlay-marker-swatch.argentina-stations{background:radial-gradient(circle at 35% 35%, #ffffff 0 24%, #111111 25% 62%, #2563eb 63% 100%);border:1px solid rgba(0,0,0,.34);box-shadow:0 0 0 2px rgba(37,99,235,.10)}
  .overlay-polygon-swatch{display:inline-block;width:16px;height:12px;border-radius:4px;flex-shrink:0;border:1px solid rgba(0,0,0,.18)}
  .overlay-polygon-swatch.spain-groundwater{background:linear-gradient(135deg,rgba(125,211,252,.75) 0%,rgba(14,116,144,.38) 100%);border-color:rgba(14,116,144,.42);box-shadow:0 0 0 2px rgba(125,211,252,.16)}
  .river-search-box{display:flex;gap:6px;flex:1;min-width:220px;max-width:420px}
  .river-search-box input{flex:1;padding:10px 12px;border:1px solid var(--border);border-radius:12px;font-family:var(--sans);font-size:13px;background:var(--bg);color:var(--text);outline:none}
  .river-search-box input:focus{border-color:var(--accent)}
  .river-search-box button{padding:10px 14px;background:var(--accent);color:#fff;border:none;border-radius:999px;cursor:pointer;font-weight:700;font-size:12px;white-space:nowrap}
  .river-search-box button:hover{background:var(--accent2)}
  .map-info-panel{background:linear-gradient(180deg,rgba(255,255,255,.08) 0%,rgba(255,255,255,.03) 100%);border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:18px;margin-top:14px;display:none;border-left:4px solid var(--accent);box-shadow:none;backdrop-filter:blur(10px)}
  .map-info-panel.show{display:block;animation:fadeUp .3s ease}
  .map-info-top{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start}
  .map-context-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
  .context-link-btn{padding:0;border:none;background:none;color:var(--muted);font:inherit;font-size:12px;font-weight:600;cursor:pointer}
  .context-link-btn:hover{color:var(--accent2)}
  .basin-summary-strip{margin:14px 0 10px;padding-top:12px;border-top:1px solid var(--border)}
  .basin-summary-kicker{font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--accent2);margin:0 0 6px}
  .basin-summary-head h4{font-size:22px;color:var(--accent2);margin:0 0 4px}
  .basin-summary-copy{font-size:12px;color:var(--muted);line-height:1.7;margin:0 0 10px}
  .basin-stat-grid--summary{margin:0}
  .basin-details-disclosure{margin-top:14px;border-top:1px solid var(--border);padding-top:12px}
  .basin-details-disclosure > summary{list-style:none;display:inline-flex;align-items:center;gap:8px;padding:0;color:var(--accent2);font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;cursor:pointer}
  .basin-details-disclosure > summary::-webkit-details-marker{display:none}
  .basin-details-disclosure[open] > summary{margin-bottom:12px}
  .basin-details-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:18px}
  .atlas-inline-card{background:transparent;border:none}
  .atlas-inline-card h5{font-size:16px;color:var(--accent2);margin:0 0 10px}
  .atlas-inline-card .index-row{font-size:12px}
  .atlas-inline-card .atlas-diagnostic{margin-top:12px;background:transparent;border:0;border-top:1px solid var(--border);border-left:none;border-radius:0;padding:12px 0 0}
  .subbasin-inline{margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}
  .subbasin-inline p{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:8px}
  .climate-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px;margin:10px 0}
  .climate-card{background:transparent;border:none;border-top:1px solid var(--border);border-radius:0;padding:10px 0 0;text-align:center}
  .climate-card .cv{font-size:18px;font-weight:700;color:var(--accent2)}
  .climate-card .cl{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin-top:2px}
  .chart-note{margin-top:8px;font-size:11px;color:var(--muted);line-height:1.7}
  .history-panel{margin-top:18px;background:transparent;border:none;border-top:1px solid var(--border);border-radius:0;padding:16px 0 0;box-shadow:none}
  .history-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:start;margin-bottom:10px}
  .history-head h4{font-size:18px;color:var(--accent2);margin:4px 0}
  .history-head p{font-size:12px;color:var(--muted);line-height:1.7}
  .history-stats{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
  .history-chip{min-width:108px;padding:8px 10px;border-radius:8px;background:var(--surface);border:1px solid var(--border)}
  .history-chip .label{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}
  .history-chip .value{font-size:16px;font-weight:700;color:var(--accent2);margin-top:4px}
  .station-series-stats-panel{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}
  .station-series-stats-panel .history-chip{min-width:120px;flex:1 1 120px}
  .station-series-stats-panel .history-chip .value{font-size:13px;font-weight:700}
  .risk-indicator{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:700;border:1px solid}
  .state-panel{margin-top:18px;background:transparent;border:none;border-top:1px solid var(--border);border-radius:0;padding:16px 0 0;box-shadow:none}
  .state-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:start;margin-bottom:10px}
  .state-head h4{font-size:18px;color:var(--accent2);margin:4px 0}
  .state-head p{font-size:12px;color:var(--muted);line-height:1.7}
  .state-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px;margin-bottom:10px}
  .state-chip{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);border-radius:12px;padding:10px 12px}
  .state-chip .label{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}
  .state-chip .value{font-size:16px;font-weight:700;color:var(--accent2);margin-top:4px}
  .state-chip .sub{font-size:11px;color:var(--muted);margin-top:4px;line-height:1.5}
  .state-text{font-size:13px;color:var(--text);line-height:1.7}
  .state-note{font-size:11px;color:var(--muted);line-height:1.7;margin-top:8px}
  .loading-bar{height:3px;background:linear-gradient(90deg,var(--accent),var(--sky),var(--accent));background-size:200%;animation:loadSlide 1.2s linear infinite;border-radius:2px;margin:8px 0;display:none}
  @keyframes loadSlide{0%{background-position:0%}100%{background-position:200%}}
  .subbasin-tag{display:inline-block;background:rgba(255,255,255,.03);border:1px solid var(--border);border-radius:999px;padding:5px 10px;font-size:11px;color:var(--muted);cursor:pointer;margin:3px;transition:all .2s}
  .subbasin-tag:hover,.subbasin-tag.active{background:var(--accent);color:#fff;border-color:var(--accent)}
  .leaflet-tooltip{background:#fff;border:1px solid var(--border);border-radius:10px;padding:7px 10px;font-family:var(--sans);font-size:12px;color:var(--text);box-shadow:0 6px 18px rgba(0,0,0,.08)}
  @media(min-width:540px){
    .stats-inner{grid-template-columns:repeat(3,minmax(0,1fr))}
  }
  @media(min-width:640px){
    .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  }
  @media(min-width:720px){
    .stats-inner{grid-template-columns:repeat(4,minmax(0,1fr))}
    .tabs-bar{top:72px}
  }
  @media(min-width:900px){
    .header-inner{flex-wrap:nowrap;gap:16px;row-gap:0;padding:0 30px;height:68px}
    .header-actions{margin-left:auto;width:auto}
    .logo-text h1{font-size:23px;line-height:1}
    .logo-text p{font-size:11px;margin-top:4px;letter-spacing:.14em}
    .btn-export{min-height:34px;padding:8px 13px;font-size:10.5px}
    .algo-link{order:0;width:auto;padding:7px 11px;font-size:10px}
    .back-link{order:0;width:auto;margin-left:0;justify-content:flex-start;background:transparent;padding:7px 12px;border-radius:999px}
    .tabs-bar{padding:14px 28px 0;background:transparent;position:static;border-bottom:0;top:auto}
    .tools-launcher{padding:24px 28px 10px}
    .tabs-shell{gap:12px}
    .tabs-inner{gap:10px;padding:0 10px 2px 0;border-bottom:0;scrollbar-width:auto}
    .tab-btn{border:1px solid rgba(255,255,255,.12);border-bottom:1px solid rgba(255,255,255,.12);border-radius:999px;box-shadow:none;padding:10px 15px;font-size:12.5px;font-weight:700;background:rgba(255,255,255,.04);color:var(--muted)}
    .tab-btn.active{border-bottom-color:transparent;background:rgba(247,245,239,.94);color:#111111;font-weight:700}
    .tab-btn:hover:not(.active){border-bottom-color:rgba(255,255,255,.18);transform:translateY(-1px);color:var(--accent2)}
    .container{padding:0 28px}
    main{padding:28px 28px 88px}
    .card{padding:28px 0 22px;border-radius:0;margin-bottom:22px;box-shadow:none}
    .card h3{font-size:26px;margin-bottom:8px}
    .card .subtitle{font-size:13px;margin-bottom:24px}
    .form-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;margin-bottom:22px}
    .stats-bar{padding:18px 28px 0}
    .stats-inner{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
    .stat-item{padding:0;border-radius:0}
    .stat-val{font-size:24px}
    .hero{padding:58px 28px 44px}
    .hero h2{font-size:clamp(30px,4.8vw,52px);line-height:1.08;max-width:820px}
    .hero p{font-size:16px;max-width:720px}
  }
  @media(min-width:1280px){
    .container{padding:0 28px}
  }
  @media(max-width:420px){
    .stats-inner{grid-template-columns:1fr}
    .metrics{grid-template-columns:1fr}
  }
  /* ── BASIN DELINEATION ── */
  .basin-layout{display:grid;grid-template-columns:1fr 340px;gap:20px;align-items:start}
  @media(max-width:980px){
    .stations-layout,.basin-layout{grid-template-columns:1fr}
    .stations-panel{padding-top:14px}
  }
  @media(max-width:860px){
    .basin-layout{grid-template-columns:1fr}
    .atlas-toolbar,.atlas-control-bar,.map-info-top,.basin-details-grid{grid-template-columns:1fr}
    .atlas-actions{align-items:flex-start}
    .atlas-levels{justify-content:flex-start}
    .history-head{grid-template-columns:1fr}
    .history-stats{justify-content:flex-start}
    .state-head{grid-template-columns:1fr}
    .guide-morphometry-meta{grid-template-columns:1fr 1fr}
    .guide-morphometry-grid{grid-template-columns:1fr}
  }
  .outlet-marker{cursor:pointer;transition:all .2s}
  .outlet-marker:hover .outlet-ring{stroke-width:3;r:14}
  .outlet-marker.selected .outlet-ring{fill:var(--accent);fill-opacity:.25}
  .watershed-poly{transition:all .4s;pointer-events:none}
  .basin-stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0}
  .basin-stat{background:transparent;border:none;border-top:1px solid var(--border);border-radius:0;padding:12px 0 0}
  .basin-stat-label{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px}
  .basin-stat-val{font-size:18px;font-weight:700;color:var(--accent2)}
  .basin-stat-unit{font-size:11px;color:var(--muted)}
  .index-row{display:flex;justify-content:space-between;align-items:center;padding:7px 0;border-bottom:1px solid var(--border);font-size:13px}
  .index-row:last-child{border-bottom:none}
  .index-name{color:var(--muted)}
  .index-val{font-weight:600;color:var(--accent2)}
  .atlas-diagnostic{margin-top:14px;background:transparent;border:none;border-top:1px solid var(--border);border-left:none;border-radius:0;padding:12px 0 0}
  .atlas-diagnostic p{font-size:12px;color:var(--muted);line-height:1.7}
  .atlas-diagnostic strong{color:var(--accent2)}
  #risk-analysis{display:none;margin-top:10px;background:transparent;border:none;border-top:1px solid var(--border);border-radius:0;padding:12px 0 0}
  #risk-analysis p{font-size:12px;color:var(--muted);line-height:1.7}
  /* ── METODOLOGIA ── */
  .meto-section{margin-bottom:28px}
  .meto-section h4{font-family:var(--serif);font-size:24px;font-weight:700;color:var(--accent2);margin-bottom:14px;padding-bottom:10px;border-bottom:2px solid rgba(0,0,0,.12);letter-spacing:-.02em}
  .method-table{width:100%;border-collapse:collapse;font-size:13px;margin-bottom:16px}
  .method-table th{background:var(--accent2);color:#fff;padding:10px 12px;text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.07em;font-weight:700}
  .method-table td{padding:9px 12px;border-bottom:1px solid var(--border);vertical-align:top;line-height:1.55}
  .method-table tr:nth-child(even) td{background:var(--light)}
  .method-table td:first-child{font-weight:600;color:var(--accent2);white-space:nowrap}
  .wmo-badge{display:inline-block;background:var(--accent2);color:var(--sky);font-size:10px;font-weight:700;padding:2px 8px;border-radius:4px;letter-spacing:.04em;margin-right:4px;white-space:nowrap}
  .compliance-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;margin:12px 0}
  .compliance-card{background:transparent;border:none;border-top:1px solid var(--border);border-radius:0;padding:16px 0 0}
  .compliance-card.warn{border-left-color:var(--warn)}
  .compliance-card h5{font-size:13px;font-weight:700;color:var(--accent2);margin-bottom:6px}
  .compliance-card p{font-size:12px;color:var(--muted);line-height:1.6}
  .formula-block{background:var(--light);border:1px solid var(--border);border-radius:8px;padding:14px 16px;margin:10px 0;border-left:3px solid var(--gold)}
  .formula-block .f-name{font-size:12px;font-weight:700;color:var(--accent2);text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px}
  .formula-block .f-eq{font-family:monospace;font-size:14px;color:var(--text);margin-bottom:6px}
  .formula-block .f-desc{font-size:12px;color:var(--muted);line-height:1.55}
  .ref-list{list-style:none;padding:0}
  .ref-list li{padding:8px 0;border-bottom:1px solid var(--border);font-size:13px;color:var(--muted);line-height:1.55}
  .ref-list li:last-child{border-bottom:none}
  .ref-list li strong{color:var(--accent2)}
  /* ── WATER BALANCE ── */
  .wb-month-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin:16px 0}
  @media(max-width:640px){.wb-month-grid{grid-template-columns:repeat(3,1fr)}}
  .wb-month{background:var(--light);border:1px solid var(--border);border-radius:8px;padding:10px 8px;text-align:center}
  .wb-month-name{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px;font-weight:600}
  .wb-month input{background:var(--surface);border:1px solid var(--border);border-radius:10px;width:100%;padding:7px 4px;font-size:13px;font-family:var(--sans);text-align:center;color:var(--text);outline:none}
  .wb-month input:focus{border-color:var(--accent)}
  .wb-result-table{width:100%;border-collapse:collapse;font-size:13px;margin-top:16px}
  .wb-result-table th{background:var(--accent2);color:#fff;padding:8px 10px;text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.04em;font-weight:600}
  .wb-result-table td{padding:7px 10px;border-bottom:1px solid var(--border)}
  .wb-result-table tr:nth-child(even) td{background:var(--light)}
  .wb-result-table tr:last-child td{font-weight:700;background:var(--accent2);color:#fff}
  .wb-summary{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;margin:16px 0}
  .wb-sum-card{background:transparent;border:none;border-top:1px solid var(--border);border-radius:0;padding:14px 0 0;text-align:center}
  .wb-sum-card.accent{background:transparent;border-color:rgba(217,119,6,.72)}
  .wb-sum-card.accent .basin-stat-label,.wb-sum-card.accent .basin-stat-unit{color:rgba(255,214,160,.78)}
  .wb-sum-card.accent .basin-stat-val{color:#f59e0b}

  /* ── EXPORT BUTTON ── */
  .btn-export{
    display:inline-flex;align-items:center;gap:7px;
    background:var(--accent2);color:#fff;
    font-family:var(--sans);font-weight:700;font-size:11px;
    padding:9px 14px;border:none;border-radius:999px;cursor:pointer;
    letter-spacing:.02em;transition:all .2s;white-space:nowrap;
    width:auto;justify-content:center;order:2;margin:0;min-height:36px;
    box-shadow:none;
  }
  .btn-export:hover{background:var(--gold);transform:translateY(-1px)}
  .btn-export.active{box-shadow:0 0 0 4px rgba(17,17,17,.08)}
  .btn-export:disabled{
    background:#94a3b8;color:rgba(255,255,255,.92);cursor:not-allowed;
    transform:none;opacity:.72;box-shadow:none
  }
  .btn-export:disabled:hover{background:#94a3b8;transform:none}
  .btn-export svg{flex-shrink:0}
  .tabs-report-btn{justify-self:end}
  .report-actions-bar{display:none}
  .report-actions-inner{max-width:1180px;margin:0 auto;display:flex;justify-content:flex-end}
  .report-preview-overlay{
    position:fixed;inset:0;z-index:2500;background:rgba(0,0,0,.74);
    display:none;align-items:stretch;justify-content:center;padding:18px;
    backdrop-filter:blur(4px)
  }
  .report-preview-overlay.is-open{display:flex}
  .report-preview-shell{
    width:min(1180px,100%);display:flex;flex-direction:column;min-height:0;max-height:100%
  }
  .report-preview-toolbar{
    display:flex;align-items:center;justify-content:space-between;gap:16px;
    padding:14px 20px;background:#0f172a;color:#fff;border-radius:18px 18px 0 0;
    border-bottom:1px solid rgba(255,255,255,.12);flex-wrap:wrap
  }
  .report-preview-title{font-size:14px;font-weight:700;letter-spacing:.02em}
  .report-preview-subtitle{font-size:12px;color:rgba(255,255,255,.72);margin-top:4px}
  .report-preview-actions{display:flex;gap:10px;flex-wrap:wrap}
  .report-preview-actions button{
    border:1px solid rgba(255,255,255,.18);background:#fff;color:#0f172a;
    border-radius:999px;padding:9px 14px;font:600 12px var(--sans);cursor:pointer;
    display:inline-flex;align-items:center;justify-content:center;min-height:40px
  }
  .report-preview-actions button.secondary{background:transparent;color:#fff}
  .report-preview-body{
    min-height:0;overflow:auto;background:#edf3f7;padding:26px 18px 36px;
    border-radius:0 0 18px 18px
  }
  .report-preview-card{
    max-width:1180px;margin:0 auto;background:#fff;border-radius:22px;
    box-shadow:0 22px 52px rgba(0,0,0,.12);padding:34px 38px
  }
  .report-preview-note{font-size:12px;color:#64748b;margin:12px auto 0;max-width:1180px}
  .tn-figure-section{display:grid;gap:22px}
  .tn-figure{border:1px solid #d7e2eb;border-radius:18px;background:#ffffff;padding:16px;box-shadow:none}
  .tn-figure-header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:14px}
  .tn-figure-code{font-size:11px;color:#526174;text-transform:uppercase;letter-spacing:.08em;font-weight:700}
  .tn-figure-title{font-family:var(--sans);font-size:26px;font-weight:800;color:#0f172a;line-height:1.05;letter-spacing:-.03em}
  .tn-figure-subtitle{font-size:12px;color:#334155;line-height:1.72;margin-top:6px;max-width:780px}
  .tn-figure-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 11px;border-radius:999px;background:#f5f8fb;border:1px solid #d9e3ee;color:#243b53;font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}
  .tn-figure-frame{border:1px solid #d8e3ec;background:#f8fafc;padding:10px;border-radius:16px;box-shadow:none}
  .tn-figure-canvas{position:relative;background:#101820;border:1px solid #d7e2eb;min-height:420px;border-radius:14px;overflow:hidden;box-shadow:none}
  .tn-figure-canvas svg{display:block;width:100%;height:auto}
  .tn-figure-canvas img{display:block;width:100%;height:auto}
  .tn-figure-map-controls{position:absolute;left:14px;top:14px;display:grid;gap:8px}
  .tn-figure-north{width:54px;height:54px;border-radius:999px;border:1px solid #d9e3ee;background:rgba(255,255,255,.96);display:flex;align-items:center;justify-content:center;font:700 11px var(--sans);color:#1f3a5a;box-shadow:0 10px 24px rgba(0,0,0,.08)}
  .tn-figure-scale{padding:6px 10px;border:1px solid #d9e3ee;background:rgba(255,255,255,.96);font-size:10px;color:#526174;line-height:1.4}
  .tn-figure-grid{display:grid;grid-template-columns:minmax(0,1fr) 252px;gap:14px}
  .tn-figure-grid.is-premium{grid-template-columns:minmax(0,1.92fr) minmax(190px,.24fr)}
  .tn-figure-aside{display:grid;gap:10px}
  .tn-figure-box{border:1px solid #dbe4ee;background:#ffffff;padding:11px 13px;border-radius:12px;box-shadow:none}
  .tn-figure-box-label{font-size:10px;color:#526174;text-transform:uppercase;letter-spacing:.08em;font-weight:700;margin-bottom:6px}
  .tn-figure-box p,.tn-figure-box li{font-size:11px;color:#1e293b;line-height:1.65}
  .tn-figure-box ul{margin:0;padding-left:16px}
  .tn-legend-list{display:grid;gap:6px}
  .tn-legend-item{display:flex;align-items:center;gap:8px;font-size:11px;color:#1e293b;line-height:1.55}
  .tn-swatch{display:inline-block;flex:0 0 auto}
  .tn-swatch-fill{width:14px;height:14px;border:1px solid rgba(0,0,0,.14);background:#d6d8cf}
  .tn-swatch-fill-climate{width:14px;height:14px;border:1px solid rgba(0,0,0,.14);background:linear-gradient(135deg,#fef3c7 0%,#bbf7d0 100%)}
  .tn-swatch-line{width:24px;height:0;border-top:3px solid #2a7fcb}
  .tn-swatch-line-river{width:24px;height:0;border-top:4px solid #0f5fb8}
  .tn-swatch-line-river-secondary{width:24px;height:0;border-top:2px solid #7ea8da}
  .tn-swatch-dot{width:12px;height:12px;border-radius:999px;background:#f59e0b;border:1px solid rgba(0,0,0,.18)}
  .tn-swatch-dot-hydro{width:12px;height:12px;border-radius:999px;background:#0f766e;border:1px solid rgba(0,0,0,.18)}
  .tn-swatch-dot-meteo{width:12px;height:12px;border-radius:999px;background:#f59e0b;border:1px solid rgba(0,0,0,.18)}
  .tn-swatch-focus-box{width:14px;height:14px;border-radius:3px;border:2px solid #1c1c1c;background:rgba(0,0,0,.06)}
  .tn-swatch-dot-reference{width:12px;height:12px;border-radius:999px;background:#0f172a;border:2px solid #fff;box-shadow:0 0 0 1px rgba(0,0,0,.18)}
  .tn-figure-caption{margin-top:10px;border:1px solid #dbe4ee;background:#fff;padding:10px 12px;border-radius:12px}
  .tn-figure-caption-title{font-size:10px;color:#526174;text-transform:uppercase;letter-spacing:.08em;font-weight:700;margin-bottom:6px}
  .tn-figure-caption p{margin:0;font-size:11px;color:#334155;line-height:1.7}
  .tn-figure-note{font-size:10.5px;color:#475569;line-height:1.7;margin-top:8px}
  .tn-json-box{display:none}
  .tn-json-title{font-size:10px;color:#64748b;text-transform:uppercase;letter-spacing:.08em;font-weight:700;margin-bottom:8px}
  .tn-json-box pre{margin:0;white-space:pre-wrap;word-break:break-word;font:10px/1.55 ui-monospace,SFMono-Regular,Menlo,monospace;color:#334155;max-height:260px;overflow:auto}
  body.print-map-mode{background:#edf3f7}
  .print-map-shell{max-width:1180px;margin:0 auto;padding:22px 18px 36px}
  .print-map-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;background:#0f172a;color:#fff;padding:14px 18px;border-radius:16px 16px 0 0}
  .print-map-toolbar .title{font-size:14px;font-weight:700;letter-spacing:.02em}
  .print-map-toolbar .sub{font-size:12px;color:rgba(255,255,255,.72);margin-top:4px}
  .print-map-toolbar .actions{display:flex;gap:10px;flex-wrap:wrap}
  .print-map-toolbar button{border:1px solid rgba(255,255,255,.18);background:#fff;color:#0f172a;border-radius:999px;padding:9px 14px;font:600 12px var(--sans);cursor:pointer}
  .print-map-toolbar button.secondary{background:transparent;color:#fff}
  .print-map-card{background:#fff;border-radius:0 0 18px 18px;padding:28px 30px;box-shadow:0 22px 52px rgba(0,0,0,.12)}
  #print-report-preview{display:block!important}
  body.report-preview-open{overflow:hidden}

  /* ── DATA SOURCE CHIPS ── */
  .source-chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
  .source-chip{
    display:inline-flex;align-items:center;gap:4px;
    font-size:10.5px;color:var(--muted);
    border:none;
    padding:5px 0;border-radius:0;
    background:transparent;
  }
  .source-chip + .source-chip::before{content:'·';margin-right:4px;color:var(--border);font-weight:700}
  .source-chip span{color:var(--accent2);font-weight:600}

  /* ── FOOTER ── */
  footer{
    border-top:0;background:transparent;
    padding:40px 28px 28px;
  }
  .footer-inner{max-width:1180px;margin:0 auto}
  .footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:28px;margin-bottom:20px}
  @media(max-width:720px){.footer-grid{grid-template-columns:1fr}}
  .footer-col h4{font-size:16px;font-weight:800;color:var(--accent2);margin-bottom:10px;letter-spacing:-.02em}
  .footer-col p,.footer-col li{font-size:12px;color:var(--muted);line-height:1.8;list-style:none;padding:0}
  .footer-col a{color:var(--accent2);text-decoration:none}
  .footer-col a:hover{color:var(--accent)}
  .footer-bottom{border-top:0;padding-top:16px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}
  .footer-bottom p{font-size:11px;color:var(--muted)}
  .footer-cite{background:transparent;border:0;border-radius:0;padding:0;margin-top:18px}
  .footer-cite p{font-size:11px;color:var(--muted);line-height:1.7;font-style:italic}
  .footer-cite strong{color:var(--accent2);font-style:normal}

  .hydrorisk-wordmark-band{
    position:relative;
    overflow:hidden;
    padding:clamp(72px, 10vw, 150px) 28px clamp(46px, 7vw, 92px);
    background:transparent;
    color:#f8fbff;
  }
  .hydrorisk-wordmark-band::before{display:none}
  .hydrorisk-wordmark-inner{
    width:min(1180px, 100%);
    margin:0 auto;
  }
  .hydrorisk-wordmark-label{
    margin-bottom:clamp(18px, 2.5vw, 30px);
    color:rgba(209,220,238,.7);
    font-size:11px;
    font-weight:800;
    letter-spacing:.26em;
    text-transform:uppercase;
  }
  .hydrorisk-wordmark-display{
    display:block;
    max-width:100%;
    font-family:"Google Sans","Product Sans","Inter",var(--sans);
    font-size:clamp(7.8rem, 22vw, 20rem);
    font-weight:500;
    line-height:.9;
    letter-spacing:-.085em;
    white-space:nowrap;
    color:#f8fbff;
  }
  .hydrorisk-wordmark-note{
    max-width:40ch;
    margin-top:clamp(30px, 4vw, 54px);
    color:rgba(226,234,247,.72);
    font-size:clamp(14px, 1.25vw, 17px);
    line-height:1.55;
  }
  .hydrorisk-wordmark-band,
  .hydrorisk-wordmark-inner,
  footer,
  .footer-inner,
  .footer-grid,
  .footer-col,
  .footer-cite,
  .footer-bottom{
    box-shadow:none!important;
    backdrop-filter:none!important;
  }
  .hydrorisk-wordmark-band,
  footer,
  .footer-cite{
    background:transparent!important;
  }

  /* ── RISK BASIN CARD ── */
  .risk-basin-card{
    background:transparent;border:none;border-radius:0;
    padding:18px 0;border-top:1px solid var(--border);transition:none;
    cursor:pointer;
  }
  .risk-basin-card:hover{background:rgba(0,0,0,.012)}
  .risk-toolbar{display:grid;gap:14px;margin-bottom:18px}
  .risk-controls{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
  .risk-search-input,.risk-select{
    min-height:40px;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:rgba(255,255,255,.05);
    color:var(--accent2);font-family:var(--sans);font-size:13px;padding:0 14px;
  }
  .risk-search-input::placeholder{color:#b8b0a3}
  .risk-search-input{flex:1 1 280px;min-width:220px}
  .risk-select{min-width:210px;cursor:pointer}
  .risk-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}
  .risk-summary-card{background:transparent;border:none;border-top:1px solid var(--border);border-radius:0;padding:12px 0 0}
  .risk-summary-label{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
  .risk-summary-value{font-size:22px;font-weight:700;color:var(--accent2);margin-top:6px}
  .risk-summary-note{font-size:11px;color:var(--muted);margin-top:4px;line-height:1.5}
  .risk-brief{
    background:transparent;border:none;border-top:1px solid var(--border);
    border-radius:0;padding:12px 0 0;
  }
  .risk-brief p{font-size:12px;color:var(--muted);line-height:1.7}
  .risk-brief strong{color:var(--accent2)}
  .risk-empty{
    background:transparent;border:none;border-top:1px dashed var(--border);border-radius:0;padding:14px 0 0;
    font-size:12px;color:var(--muted);text-align:left;line-height:1.7
  }
  .risk-overview-card{
    background:transparent;
    border:none;border-radius:0;padding:8px 0 12px;margin-bottom:10px;
    box-shadow:none;
  }
  .stations-overview-card{
    background:transparent;
    border:none;border-radius:0;padding:20px 0 18px;margin-bottom:18px;
    box-shadow:none;
  }
  .stations-overview-top{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;flex-wrap:wrap;margin-bottom:14px}
  .stations-overview-eyebrow{font-size:10px;color:var(--accent);text-transform:uppercase;letter-spacing:.12em;font-weight:700;margin-bottom:8px}
  .stations-overview-top h4{font-family:var(--sans);font-size:30px;font-weight:800;color:var(--accent2);margin-bottom:10px;letter-spacing:-.018em;line-height:1.12}
  .stations-overview-top p{font-size:12px;color:var(--muted);line-height:1.65;max-width:760px}
  .stations-filter-row{display:grid;gap:10px;margin-bottom:10px}
  .stations-search-shell{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:10px;
    align-items:center;
    padding:10px 12px;
    border:1px solid rgba(255,255,255,.10);
    border-radius:16px;
    background:linear-gradient(180deg, rgba(255,255,255,.06) 0%, rgba(255,255,255,.025) 100%);
    backdrop-filter:blur(10px);
  }
  .stations-search-field{
    display:flex;
    align-items:center;
    gap:10px;
    min-width:0;
  }
  .stations-search-icon{
    width:34px;height:34px;border-radius:999px;
    display:inline-grid;place-items:center;
    background:rgba(255,255,255,.06);
    border:1px solid rgba(255,255,255,.12);
    color:var(--accent2);
    flex-shrink:0;
  }
  .stations-search-copy{
    display:grid;
    gap:2px;
    min-width:0;
  }
  .stations-search-copy .label{
    margin:0;
    font-size:10px;
    color:var(--muted);
    text-transform:uppercase;
    letter-spacing:.12em;
    font-weight:800;
  }
  .stations-search-copy .note{
    font-size:11px;
    color:var(--muted);
    line-height:1.55;
  }
  .stations-filter-row input,.stations-filter-row select{
    min-height:42px;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:rgba(255,255,255,.05);color:var(--accent2);
    font-family:var(--sans);font-size:13px;padding:0 14px;
  }
  .stations-search-shell input{
    min-height:44px;
    border:none;
    background:transparent;
    padding:0;
    font-size:14px;
    width:100%;
  }
  .stations-search-shell input:focus{box-shadow:none;border:none}
  .stations-search-shell .btn-ghost{
    min-height:42px;
    padding:0 16px;
    border-radius:999px;
    white-space:nowrap;
  }
  .stations-search-hint{
    font-size:11px;
    color:var(--muted);
    line-height:1.6;
    margin-top:-2px;
  }
  .stations-filter-row input{flex:1 1 260px;min-width:220px}
  .stations-filter-row select{min-width:210px;cursor:pointer}
  .stations-filter-row input::placeholder{color:#b8b0a3}
  .stations-secondary-filters{margin:-2px 0 14px}
  .stations-secondary-filters summary{
    list-style:none;display:inline-flex;align-items:center;gap:8px;min-height:34px;padding:0 12px;
    border-radius:999px;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.03);color:var(--muted);
    font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;
  }
  .stations-secondary-filters summary::-webkit-details-marker{display:none}
  .stations-secondary-filters[open] summary{color:var(--accent2);border-color:rgba(255,255,255,.16);background:rgba(255,255,255,.05)}
  .stations-secondary-grid{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:10px}
  .stations-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:14px}
  .stations-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.8fr);gap:16px;align-items:start}
  .stations-map-wrap{position:relative;background:transparent;border:none;border-top:1px solid var(--border);border-radius:0;padding:12px 0 0;box-shadow:none}
  #stations-overview-map{height:520px;border-radius:14px;border:none;overflow:hidden;background:#dfeaf3}
  .stations-map-empty{
    position:absolute;
    inset:22px 22px auto 22px;
    z-index:420;
    padding:14px 16px;
    border-radius:14px;
    border:1px solid rgba(255,255,255,.10);
    background:rgba(16,18,24,.74);
    backdrop-filter:blur(10px);
    box-shadow:none;
    display:grid;
    gap:8px;
  }
  .stations-map-empty[hidden]{display:none!important}
  .stations-map-empty .label{
    font-size:10px;
    color:#cdbfa7;
    text-transform:uppercase;
    letter-spacing:.12em;
    font-weight:800;
  }
  .stations-map-empty .value{
    font-size:17px;
    line-height:1.2;
    color:#f6f0e7;
    font-weight:800;
  }
  .stations-map-empty .note{
    font-size:12px;
    color:#d9d1c4;
    line-height:1.7;
    max-width:48ch;
  }
  .stations-legend{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
  .stations-legend .legend-item{color:#344a43;font-size:11px}
  .stations-note{
    margin-top:10px;background:transparent;border:none;border-top:1px solid var(--border);border-radius:0;
    padding:10px 0 0;font-size:11px;color:#344a43;line-height:1.65
  }
  .stations-panel{
    background:transparent;border:none;border-top:1px solid var(--border);border-radius:0;padding:18px 0 0;display:grid;gap:14px;
    box-shadow:none
  }
  .stations-panel-label{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;font-weight:700}
  .stations-panel-name{font-family:var(--sans);font-size:28px;font-weight:800;color:var(--accent2);line-height:1.14;letter-spacing:-.015em}
  .stations-panel-sub{font-size:12px;color:var(--muted);margin-top:6px;line-height:1.7;max-width:42ch}
  .stations-panel-chips{display:flex;gap:10px;flex-wrap:wrap}
  .stations-panel-chip{
    display:inline-flex;align-items:center;gap:6px;padding:0 0 6px;border:none;border-bottom:1px solid currentColor;border-radius:0;
    font-size:10.5px;font-weight:700;letter-spacing:.08em;background:transparent !important;color:var(--muted);text-transform:uppercase
  }
  .stations-panel-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .stations-panel-stat{background:transparent;border:none;border-top:1px solid var(--border);border-radius:0;padding:10px 0 0}
  .stations-panel-stat .label{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
  .stations-panel-stat .value{font-size:18px;font-weight:700;color:var(--accent2);margin-top:6px;line-height:1.25}
  .stations-panel-stat .note{font-size:11px;color:var(--muted);margin-top:4px;line-height:1.5}
  .stations-panel-text{
    background:transparent;border:none;border-top:1px solid var(--border);border-radius:0;padding:14px 0 0;font-size:12px;color:var(--muted);line-height:1.8
  }
  .stations-ranking{display:grid;gap:8px}
  .stations-ranking-row{
    display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;background:transparent;border:none;
    border-radius:0;padding:10px 0;border-top:1px solid var(--border)
  }
  .stations-ranking-badge{
    width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#d9d9d9;color:var(--accent2);font-size:11px;font-weight:700
  }
  .stations-ranking-main{font-size:12px;font-weight:700;color:var(--accent2)}
  .stations-ranking-sub{font-size:11px;color:var(--muted);margin-top:2px}
  .stations-ranking-value{font-size:11px;color:var(--muted);text-align:right;line-height:1.5}
  .stations-map-tooltip{background:#fff;border:1px solid var(--border);border-radius:8px;padding:8px 10px;box-shadow:0 6px 16px rgba(0,0,0,.12)}
  .stations-map-tooltip strong{display:block;font-size:12px;color:var(--accent2);margin-bottom:4px}
  .stations-map-tooltip span{display:block;font-size:11px;color:var(--muted);line-height:1.5}
  .stations-map-tooltip em{font-style:normal;color:#0f766e;font-weight:700}
  .station-series-card{padding-top:18px}
  .station-series-top{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;flex-wrap:wrap;margin-bottom:14px}
  .station-series-top h4{font-family:var(--sans);font-size:30px;font-weight:800;color:var(--accent2);margin-bottom:10px;letter-spacing:-.018em;line-height:1.12}
  .station-series-top p{font-size:12px;color:var(--muted);line-height:1.75;max-width:68ch}
  .station-series-toolbar{display:grid;gap:12px;margin-bottom:14px;border-top:1px solid var(--border);padding-top:14px}
  .station-series-country-switch{display:flex;gap:8px;flex-wrap:wrap}
  .station-series-search-row{
    display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;
    padding:12px 0 0;border-top:1px solid var(--border)
  }
  .station-series-search-row input{
    min-width:220px;min-height:46px;border:1px solid rgba(16,20,24,.12);border-radius:14px;
    background:linear-gradient(180deg, rgba(255,255,255,.94) 0%, rgba(248,251,255,.88) 100%);
    color:var(--accent2);font-family:var(--sans);font-size:13px;padding:0 16px;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.55)
  }
  .station-series-search-row input:focus{outline:none;border-color:rgba(17,17,17,.26)}
  .station-series-search-row input::placeholder{color:#8d857a}
  .station-series-search-row button{
    min-height:46px;padding:0 16px;border-radius:999px;border:1px solid var(--border);
    background:transparent;color:var(--accent2);font-family:var(--sans);font-size:12px;font-weight:700;
    letter-spacing:.02em;cursor:pointer
  }
  .station-series-search-row button:hover{border-color:rgba(17,17,17,.28);background:rgba(17,17,17,.03)}
  .station-series-layout{display:grid;grid-template-columns:minmax(320px,.72fr) minmax(0,1.28fr);gap:20px;align-items:start}
  .station-series-summary{gap:12px}
  .station-series-summary .stations-panel-chips{gap:10px}
  .station-series-summary .stations-panel-chip{
    padding:0 0 6px;border:none;border-bottom:1px solid var(--border);border-radius:0;
    background:transparent;color:var(--muted);font-size:10.5px;font-weight:700;letter-spacing:.08em;
    text-transform:uppercase
  }
  .station-series-actions{display:flex;gap:12px;flex-wrap:wrap}
  .station-series-actions a,.station-series-actions button{
    min-height:auto;padding:0;border-radius:0;border:none;background:transparent;color:var(--accent2);
    font-family:var(--sans);font-size:12px;font-weight:700;letter-spacing:.01em;display:inline-flex;align-items:center;justify-content:center;
    text-decoration:none;cursor:pointer
  }
  .station-series-actions a::after,.station-series-actions button::after{content:'→';margin-left:6px;font-size:11px}
  #station-series-load-btn.is-loading{opacity:.72;cursor:progress}
  .station-series-preview{display:grid;gap:14px;min-width:0}
  .station-series-preview.is-loading{opacity:.68}
  #station-series-diagnostics{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin-top:10px}
  .station-series-explainer{
    display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;
    background:transparent;border:none;border-top:1px solid var(--border);padding:14px 0 0
  }
  .station-series-explainer:empty{display:none!important}
  .station-series-explainer-card{
    background:transparent;border:none;border-top:1px solid var(--border);border-radius:0;padding:10px 0 0
  }
  .station-series-explainer-card .label{
    font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-weight:700;margin-bottom:6px
  }
  .station-series-explainer-card .value{
    font-size:13px;font-weight:800;color:var(--accent2);line-height:1.35;margin-bottom:6px
  }
  .station-series-explainer-card .note{
    font-size:11px;color:var(--muted);line-height:1.65
  }
  .station-series-preview-block{
    background:transparent;border:none;border-top:1px solid var(--border);border-radius:0;padding:14px 0 0;min-width:0;overflow:hidden;
    transition:opacity .22s ease,transform .22s ease
  }
  .station-series-location-panel{display:grid;gap:12px}
  .station-series-location-hero{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(280px,.82fr);gap:12px;align-items:start}
  .station-series-location-figure{border:1px solid rgba(255,255,255,.10);border-radius:14px;padding:14px;background:transparent;box-shadow:none}
  .station-series-location-maphead{display:grid;gap:4px;margin-bottom:12px}
  .station-series-location-maphead .label{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-weight:700}
  .station-series-location-maphead .value{font-size:16px;font-weight:800;color:var(--accent2);line-height:1.25}
  .station-series-location-maphead .note{font-size:11px;color:var(--muted);line-height:1.7}
  .station-series-location-live-wrap{position:relative;border:1px solid rgba(255,255,255,.10);border-radius:14px;overflow:hidden;background:transparent;box-shadow:none}
  .station-series-location-live-map{height:338px;min-height:338px;width:100%}
  .station-series-location-live-map .leaflet-top.leaflet-left{top:46px;left:10px}
  .station-series-location-live-wrap .map-badge{
    position:absolute;left:12px;top:12px;z-index:480;padding:7px 10px;border-radius:999px;
    background:rgba(255,255,255,.96);border:1px solid rgba(23,54,93,.14);font-size:10px;font-weight:800;
    color:#2a2a2a;letter-spacing:.05em;text-transform:uppercase;box-shadow:0 8px 20px rgba(0,0,0,.08)
  }
  .station-series-location-live-wrap .map-caption{
    position:absolute;right:12px;bottom:12px;z-index:480;max-width:min(52%,280px);padding:8px 10px;border-radius:12px;
    background:rgba(255,255,255,.96);border:1px solid rgba(23,54,93,.12);font-size:10.5px;line-height:1.55;color:#475569;
    box-shadow:0 8px 20px rgba(0,0,0,.08)
  }
  .station-series-location-live-map .leaflet-control-attribution{font-size:9px}
  .station-series-location-live-map .leaflet-control-zoom a{color:#2a2a2a}
  .station-series-location-live-map .leaflet-control-scale-line{
    border-color:rgba(23,54,93,.22);background:rgba(255,255,255,.95);color:#2a2a2a
  }
  .station-series-location-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}
  .station-series-location-meta{border-top:1px solid var(--border);border-radius:0;background:transparent;padding:12px 0 0}
  .station-series-location-meta .label{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-weight:700;margin-bottom:6px}
  .station-series-location-meta .value{font-size:14px;font-weight:800;color:var(--accent2);line-height:1.35}
  .station-series-location-meta .note{font-size:11px;color:var(--muted);line-height:1.7;margin-top:6px}
  .station-series-chart-empty{
    min-height:196px;display:flex;align-items:center;justify-content:center;text-align:left;
    font-size:12px;color:var(--muted);line-height:1.75;
    background:linear-gradient(180deg, rgba(255,255,255,.04) 0%, rgba(255,255,255,.02) 100%);
    border:1px solid rgba(255,255,255,.10);border-radius:14px;padding:18px 20px
  }
  .station-series-chart-meta{font-size:11px;color:var(--muted);line-height:1.7;margin-top:8px}

  html[data-theme="dark"] .tools-launcher-step-pill,
  html[data-theme="dark"] .tools-launcher-step-pill span,
  html[data-theme="dark"] .workflow-route,
  html[data-theme="dark"] .workflow-task,
  html[data-theme="dark"] .station-series-explainer-card,
  html[data-theme="dark"] .station-series-location-meta,
  html[data-theme="dark"] .station-series-location-figure,
  html[data-theme="dark"] .station-series-location-live-wrap,
  html[data-theme="dark"] .station-series-chart-empty{
    background:transparent;
    box-shadow:none;
  }
  html[data-theme="dark"] .workflow-route{
    border:none;
    border-top:1px solid rgba(255,255,255,.10);
    padding:14px 0 0;
  }
  html[data-theme="dark"] .workflow-task{
    border:none;
    border-top:1px solid rgba(255,255,255,.10);
    border-radius:0;
    padding:12px 0 0;
  }
  html[data-theme="dark"] .tools-launcher-step-pill span{
    border-color:rgba(255,255,255,.16);
  }
  html[data-theme="dark"] .station-series-location-meta,
  html[data-theme="dark"] .station-series-explainer-card{
    border:none;
    border-top:1px solid rgba(255,255,255,.12);
    border-radius:0;
    padding-top:10px;
  }
  html[data-theme="dark"] .station-series-location-figure{
    border-color:rgba(255,255,255,.1);
  }
  html[data-theme="dark"] .station-series-location-live-wrap{
    border-color:rgba(255,255,255,.12);
  }

  /* ── CSS seasonal bar chart ─────────────────────── */
  .ssb-chart-outer{background:transparent;border:1px solid rgba(255,255,255,.10);border-radius:12px;padding:14px 16px;overflow:hidden}
  .ssb-wrap{
    display:grid;grid-template-columns:repeat(12,minmax(0,1fr));align-items:end;gap:8px;
    height:180px;margin-left:52px;position:relative;min-width:0
  }
  .ssb-col{display:flex;flex-direction:column-reverse;align-items:center;min-width:0;position:relative;cursor:default}
  .ssb-bar{width:min(100%,42px);min-height:4px;border-radius:6px 6px 0 0;transition:filter .15s,transform .15s}
  .ssb-bar.is-empty{background:rgba(148,163,184,.30)!important;border:1px dashed rgba(148,163,184,.55);min-height:10px}
  .ssb-col:hover .ssb-bar{filter:brightness(.8)}
  .ssb-lbl{font-size:9px;color:#8ea0b8;margin-top:5px;text-align:center;white-space:nowrap;flex-shrink:0}
  .ssb-lbl.is-empty{color:#718197}
  .ssb-p10,.ssb-p90{position:absolute;left:6%;right:6%;border-top:1.5px dashed rgba(125,211,252,.42)}
  .ssb-tip{
    position:absolute;bottom:calc(100% + 6px);left:50%;transform:translateX(-50%);
    background:#1e293b;color:#fff;font-size:10px;line-height:1.5;border-radius:6px;
    padding:5px 9px;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .12s;
    z-index:20;box-shadow:0 2px 8px rgba(0,0,0,.22)
  }
  .ssb-col:hover .ssb-tip{opacity:1}
  .ssb-yaxis{
    position:absolute;left:-52px;top:0;bottom:28px;width:48px;
    display:flex;flex-direction:column;justify-content:space-between;
    align-items:flex-end;padding-right:6px
  }
  .ssb-ytick{font-size:9px;color:#94a3b8;line-height:1}
  .ssb-note{font-size:11px;color:#c7d2e2;line-height:1.75;margin-top:10px;padding-top:8px;border-top:1px solid rgba(255,255,255,.08)}

  /* ── Inline SVG hydrograph ──────────────────────── */
  .sshyd-outer{background:transparent;border:1px solid rgba(255,255,255,.10);border-radius:12px;padding:14px 16px;overflow:hidden}
  .sshyd-svg{display:block;width:100%;max-width:100%;height:auto;overflow:hidden}
  .sshyd-note{font-size:11px;color:#c7d2e2;line-height:1.75;margin-top:10px;padding-top:8px;border-top:1px solid rgba(255,255,255,.08)}
  #station-series-monthly-chart:not(.station-series-chart-empty),
  #station-series-annual-chart:not(.station-series-chart-empty){
    background:transparent;border:1px solid rgba(255,255,255,.10);border-radius:12px;padding:14px 16px;min-width:0;overflow:hidden
  }
  #station-series-stats-panel:not(:empty){
    display:flex;flex-wrap:wrap;gap:8px;padding:12px 0 4px;border-top:1px solid var(--border)
  }
  .station-series-table{
    width:100%;border-collapse:collapse;margin-top:10px;font-size:11px;color:var(--muted)
  }
  .station-series-table th,.station-series-table td{
    text-align:left;padding:8px 10px;border-top:1px solid var(--border)
  }
  .station-series-table th{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:#64748b}
  .station-series-source{
    font-size:11px;color:var(--muted);line-height:1.7;border-top:1px solid var(--border);padding-top:10px
  }
  .risk-overview-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap;margin-bottom:10px}
  .risk-overview-search{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:-2px 0 14px}
  .risk-overview-search input{min-width:240px;max-width:340px}
  .risk-overview-eyebrow{font-size:10px;color:var(--accent);text-transform:uppercase;letter-spacing:.08em;font-weight:700;margin-bottom:6px}
  .risk-overview-top h4{font-family:var(--sans);font-size:26px;font-weight:800;color:var(--accent2);margin-bottom:8px;letter-spacing:-.018em;line-height:1.1}
  .risk-overview-top p{font-size:11.5px;color:var(--muted);line-height:1.62;max-width:720px}
  .risk-mode-switch{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
  .risk-mode-btn{
    min-height:40px;padding:0 14px;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.05);color:#d7cfbf;
    font-family:var(--sans);font-size:12px;font-weight:700;letter-spacing:.05em;cursor:pointer;transition:all .2s
  }
  .risk-mode-btn.active,.risk-mode-btn:hover{border-color:#f7f5ef;color:#111827;background:#f1ede4}
  .risk-overview-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin-bottom:10px}
  .risk-service-ladder{
    display:grid;
    gap:12px;
    margin:14px 0 16px;
    padding:14px 0;
    border-top:1px solid rgba(15,23,42,.10);
    border-bottom:1px solid rgba(15,23,42,.10);
  }
  .risk-service-ladder-head{
    display:flex;
    justify-content:space-between;
    gap:14px;
    align-items:flex-end;
    flex-wrap:wrap;
  }
  .risk-service-ladder-kicker{
    font-size:10px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
    color:#0f766e;
  }
  .risk-service-ladder h5{
    margin:3px 0 0;
    font-family:var(--sans);
    font-size:18px;
    line-height:1.18;
    letter-spacing:-.012em;
    color:#13202f;
  }
  .risk-service-ladder p{
    margin:0;
    max-width:720px;
    color:#5b6b63;
    font-size:12px;
    line-height:1.58;
  }
  .risk-service-ladder-list{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:10px;
  }
  .risk-service-item{
    display:grid;
    gap:8px;
    align-content:start;
    min-width:0;
    padding:12px;
    border:1px solid rgba(15,23,42,.10);
    border-radius:10px;
    background:rgba(255,255,255,.58);
  }
  .risk-service-item-top{
    display:flex;
    justify-content:space-between;
    gap:8px;
    align-items:flex-start;
  }
  .risk-service-level{
    flex:0 0 auto;
    display:inline-grid;
    place-items:center;
    min-width:32px;
    height:24px;
    padding:0 7px;
    border-radius:999px;
    background:#0f766e;
    color:#fff;
    font-size:10px;
    font-weight:900;
    letter-spacing:.08em;
  }
  .risk-service-item strong{
    color:#13202f;
    font-size:13px;
    line-height:1.25;
  }
  .risk-service-item span:not(.risk-service-level){
    color:#5b6b63;
    font-size:11.5px;
    line-height:1.5;
  }
  .risk-service-action{
    width:fit-content;
    margin-top:2px;
    color:#0f766e;
    font-size:11px;
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase;
    text-decoration:none;
  }
  .risk-service-action:hover{text-decoration:underline}
  .risk-overview-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(300px,.8fr);gap:16px;align-items:start}
  .risk-overview-map-wrap{position:relative;background:transparent;border:1px solid rgba(255,255,255,.10);border-radius:12px;padding:12px;box-shadow:none}
  .risk-overview-layout-hub{grid-template-columns:1fr}
  .risk-overview-map-wrap-hub{
    min-height:620px;
    padding:12px;
    border-radius:18px;
    border:1px solid rgba(255,255,255,.12);
    background:
      radial-gradient(circle at top left, rgba(59,130,246,.08) 0%, rgba(59,130,246,0) 34%),
      linear-gradient(180deg, rgba(8,12,18,.64) 0%, rgba(8,12,18,.42) 100%);
    overflow:hidden;
  }
  .risk-map-coverage-state{
    position:absolute;
    left:58px;
    top:92px;
    z-index:605;
    width:min(520px,calc(100% - 82px));
    padding:18px;
    border:1px solid rgba(15,23,42,.14);
    border-radius:16px;
    background:rgba(248,250,252,.94);
    color:#102033;
    box-shadow:0 18px 44px rgba(15,23,42,.18);
    backdrop-filter:blur(14px);
    pointer-events:auto;
  }
  .risk-map-coverage-state.is-hidden{display:none}
  .risk-map-coverage-kicker{
    display:flex;
    gap:8px;
    align-items:center;
    flex-wrap:wrap;
    margin-bottom:10px;
    font-size:10px;
    font-weight:800;
    letter-spacing:.10em;
    text-transform:uppercase;
    color:#0f766e;
  }
  .risk-map-coverage-badge{
    display:inline-flex;
    align-items:center;
    min-height:24px;
    padding:0 9px;
    border-radius:999px;
    border:1px solid rgba(15,118,110,.26);
    background:rgba(15,118,110,.10);
    color:#0f766e;
    letter-spacing:.08em;
  }
  .risk-map-coverage-state h5{
    margin:0 0 8px;
    color:#0f172a;
    font-family:var(--sans);
    font-size:22px;
    line-height:1.12;
    letter-spacing:-.02em;
  }
  .risk-map-coverage-state p{
    margin:0;
    color:#475569;
    font-size:12px;
    line-height:1.65;
    max-width:58ch;
  }
  .risk-map-coverage-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
    margin-top:14px;
  }
  .risk-map-coverage-metric{
    border-top:1px solid rgba(15,23,42,.14);
    padding-top:9px;
  }
  .risk-map-coverage-metric .label{
    color:#64748b;
    font-size:9px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
  }
  .risk-map-coverage-metric .value{
    margin-top:5px;
    color:#0f172a;
    font-size:18px;
    font-weight:800;
    line-height:1.1;
  }
  .risk-map-coverage-metric .note{
    margin-top:4px;
    color:#64748b;
    font-size:10.5px;
    line-height:1.45;
  }
  .risk-map-coverage-next{
    margin-top:14px;
    padding-top:12px;
    border-top:1px solid rgba(15,23,42,.12);
    display:grid;
    gap:7px;
  }
  .risk-map-coverage-next div{
    display:flex;
    gap:8px;
    align-items:flex-start;
    color:#334155;
    font-size:11px;
    line-height:1.45;
  }
  .risk-map-coverage-next span{
    flex:0 0 auto;
    width:18px;
    height:18px;
    border-radius:999px;
    display:inline-grid;
    place-items:center;
    background:#0f766e;
    color:#fff;
    font-size:10px;
    font-weight:800;
  }
  .risk-map-search-shell{
    position:absolute;left:12px;right:12px;top:12px;z-index:610;display:grid;gap:8px;
    pointer-events:none;
  }
  .risk-map-search-row{
    display:flex;gap:8px;align-items:center;padding:10px 11px;border-radius:14px;
    border:1px solid rgba(15,23,42,.12);
    background:rgba(247,244,237,.94);
    box-shadow:0 12px 26px rgba(15,23,42,.10);
    backdrop-filter:blur(10px);
    pointer-events:auto;
  }
  .risk-map-search-row input{
    flex:1 1 auto;min-width:0;background:transparent;border:none;outline:none;color:#18212b;
    font-size:14px;font-family:var(--sans);
  }
  .risk-map-search-row input::placeholder{color:#6b7280}
  .risk-map-search-row input:disabled,
  .risk-map-search-row button:disabled{
    opacity:.58;
    cursor:not-allowed;
  }
  .risk-map-shell-btn{
    min-height:38px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0 12px;
    border-radius:999px;
    border:1px solid rgba(15,23,42,.12);
    background:#ffffff;
    color:#13202f;
    font-family:var(--sans);
    font-size:11px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
    cursor:pointer;
    transition:border-color .18s ease,background-color .18s ease,color .18s ease;
  }
  .risk-map-shell-btn:hover{
    border-color:rgba(37,99,235,.28);
    color:#0f172a;
  }
  .risk-map-search-shell .tool-sync-note{
    padding:0 4px;font-size:11px;color:#f2e9da;line-height:1.55;pointer-events:none;
    text-shadow:0 1px 6px rgba(0,0,0,.32);
  }
  .risk-map-drawer{
    position:absolute;top:86px;bottom:72px;z-index:600;overflow:auto;
    border:1px solid rgba(255,255,255,.13);
    background:linear-gradient(180deg, rgba(8,11,16,.84) 0%, rgba(10,14,20,.74) 100%);
    box-shadow:0 16px 34px rgba(0,0,0,.22);
    backdrop-filter:blur(10px);
  }
  .risk-map-drawer-right{
    right:12px;width:min(244px,23%);
    border-radius:16px;padding:14px 13px 13px;
    display:grid;gap:14px;align-content:start;
    transition:transform .22s ease,opacity .22s ease;
  }
  .risk-map-drawer-right:not(.is-open){
    opacity:0;
    pointer-events:none;
    transform:translateX(calc(100% + 18px));
  }
  .risk-map-drawer-right.is-open{
    opacity:1;
    pointer-events:auto;
    transform:translateX(0);
  }
  .risk-map-options-head{display:grid;gap:6px}
  .risk-map-options-title{
    font-family:var(--sans);font-size:17px;font-weight:800;letter-spacing:-.02em;color:#f5efe5;line-height:1.16;
  }
  .risk-map-options-note,
  .risk-map-options-foot{
    font-size:11px;line-height:1.58;color:#ddd4c7;
  }
  .risk-map-options-block{
    display:grid;gap:8px;padding-top:12px;border-top:1px solid rgba(255,255,255,.10);
  }
  .risk-map-options-label{
    font-size:10px;color:#cdbfa7;text-transform:uppercase;letter-spacing:.08em;font-weight:700;
  }
  .risk-map-basemap-switch{
    display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;
  }
  .risk-map-basemap-btn,
  .risk-map-option-toggle{
    appearance:none;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.03);color:#e7dfd2;
    font-family:var(--sans);cursor:pointer;transition:border-color .18s ease, background .18s ease, color .18s ease, opacity .18s ease;
  }
  .risk-map-basemap-btn{
    min-height:38px;border-radius:999px;font-size:12px;font-weight:700;letter-spacing:.04em;
  }
  .risk-map-basemap-btn.active{
    background:#f2eee6;border-color:#f2eee6;color:#111827;
  }
  .risk-map-toggle-list{display:grid;gap:8px}
  .risk-map-option-toggle{
    display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:46px;padding:0 12px;border-radius:12px;
    font-size:12px;font-weight:700;text-align:left;
  }
  .risk-map-option-toggle.active{
    border-color:rgba(96,165,250,.46);
    background:rgba(37,99,235,.15);
  }
  .risk-map-option-toggle:disabled{
    opacity:.4;cursor:not-allowed;
  }
  .risk-map-option-state{
    font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#cdbfa7;
  }
  .risk-overview-bottom{
    position:absolute;left:12px;right:12px;bottom:12px;z-index:590;display:grid;gap:8px;
    pointer-events:none;
  }
  .risk-overview-bottom .risk-overview-legend,
  .risk-overview-bottom .risk-overview-note{pointer-events:auto}
  .risk-overview-bottom .risk-overview-legend{
    padding:9px 11px;border:1px solid rgba(15,23,42,.12);border-radius:14px;
    background:rgba(247,244,237,.90);backdrop-filter:blur(10px);
  }
  .risk-overview-bottom .risk-overview-note{
    padding:9px 11px;border:1px solid rgba(15,23,42,.10);border-radius:14px;
    background:rgba(247,244,237,.82);backdrop-filter:blur(10px);
    margin-top:0;
  }
  #risk-overview-map{height:548px;border-radius:14px;border:none;overflow:hidden;background:#d7e5ef}
  #risk-overview-map .leaflet-top.leaflet-left{top:56px;left:10px}
  .risk-overview-legend{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
  .risk-overview-legend .legend-item{color:#344a43;font-size:11px}
  .risk-overview-note{
    margin-top:10px;background:transparent;border:none;border-top:1px solid var(--border);border-radius:0;
    padding:10px 0 0;font-size:11px;color:var(--muted);line-height:1.65
  }
  .risk-overview-placeholder{
    background:transparent;border:none;border-top:1px dashed var(--border);border-radius:0;padding:18px 0 0;font-size:13px;color:var(--muted);line-height:1.7
  }
  .risk-municipality-panel{
    background:transparent;border:none;border-top:none;border-radius:0;padding:0;display:grid;gap:14px;
    box-shadow:none
  }
  .risk-municipality-summary{
    display:grid;
    gap:12px;
    margin-top:16px;
    padding:16px 0 0;
    border-top:1px solid rgba(255,255,255,.10);
  }
  .risk-municipality-summary-main{
    display:grid;
    gap:14px;
  }
  .risk-panel-label{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-weight:700}
  .risk-panel-name{font-family:var(--sans);font-size:28px;font-weight:800;color:var(--accent2);line-height:1.08;letter-spacing:-.02em}
  .risk-panel-sub{font-size:12px;color:var(--muted);margin-top:6px;line-height:1.65;max-width:40ch}
  .risk-panel-chips{display:flex;gap:10px;flex-wrap:wrap}
  .risk-panel-chip{
    display:inline-flex;align-items:center;gap:6px;padding:0 0 6px;border:none;border-bottom:1px solid currentColor;border-radius:0;
    font-size:10.5px;font-weight:700;letter-spacing:.08em;background:transparent !important;color:var(--muted);text-transform:uppercase
  }
  .risk-panel-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .risk-panel-stat{background:transparent;border:1px solid var(--border);border-radius:12px;padding:10px 11px}
  .risk-panel-stat .label{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
  .risk-panel-stat .value{font-size:20px;font-weight:700;color:var(--accent2);margin-top:6px}
  .risk-panel-stat .note{font-size:11px;color:var(--muted);margin-top:4px;line-height:1.48}
  .risk-panel-text{
    background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:11px 12px;font-size:11.5px;color:#dbd2c6;line-height:1.7
  }
  .risk-evidence-pack{
    display:grid;
    gap:12px;
    padding:14px 0 0;
    border-top:1px solid var(--border);
  }
  .risk-evidence-pack[hidden]{display:none}
  .risk-evidence-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
    flex-wrap:wrap;
  }
  .risk-evidence-head strong{
    display:block;
    color:var(--accent2);
    font-size:16px;
    line-height:1.22;
  }
  .risk-evidence-head span,
  .risk-evidence-note{
    color:var(--muted);
    font-size:11px;
    line-height:1.6;
  }
  .risk-evidence-badge{
    display:inline-flex;
    align-items:center;
    padding:5px 8px;
    border:1px solid var(--border);
    border-radius:999px;
    color:#174d43;
    -webkit-text-fill-color:#174d43;
    background:rgba(15,124,102,.08);
    font-size:10px;
    font-weight:800;
    letter-spacing:.06em;
    text-transform:uppercase;
    white-space:nowrap;
  }
  .risk-evidence-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:0;
    border-top:1px solid var(--border);
    border-bottom:1px solid var(--border);
  }
  .risk-evidence-item{
    min-width:0;
    padding:10px 12px 10px 0;
    border-right:1px solid var(--border);
  }
  .risk-evidence-item + .risk-evidence-item{padding-left:12px}
  .risk-evidence-item:last-child{border-right:0}
  .risk-evidence-item small{
    display:block;
    color:var(--muted);
    font-size:10px;
    font-weight:800;
    letter-spacing:.06em;
    text-transform:uppercase;
  }
  .risk-evidence-item b{
    display:block;
    margin-top:5px;
    color:var(--accent);
    font-size:16px;
    line-height:1.2;
  }
  .risk-evidence-route{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:10px;
  }
  .risk-evidence-step{
    min-width:0;
    border-top:1px solid var(--border);
    padding-top:10px;
  }
  .risk-evidence-step span{
    display:block;
    color:var(--muted);
    font-family:var(--mono);
    font-size:10px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
  }
  .risk-evidence-step strong{
    display:block;
    margin-top:5px;
    color:var(--accent2);
    font-size:13px;
    line-height:1.22;
  }
  .risk-evidence-step p{
    margin-top:4px;
    color:var(--muted);
    font-size:11px;
    line-height:1.55;
  }
  .risk-evidence-actions{
    display:flex;
    gap:8px;
    flex-wrap:wrap;
  }
  .risk-evidence-actions button,
  .risk-evidence-actions a{
    border:1px solid var(--border);
    border-radius:999px;
    padding:8px 11px;
    background:transparent;
    color:var(--accent2);
    font-size:11px;
    font-weight:800;
    text-decoration:none;
    cursor:pointer;
  }
  .risk-evidence-actions .primary{
    background:var(--accent2);
    border-color:var(--accent2);
    color:#fff;
    -webkit-text-fill-color:#fff;
  }
  .risk-panel-ranking{display:grid;gap:8px}
  .risk-ranking-row{
    display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);
    border-radius:12px;padding:10px 11px
  }
  .risk-ranking-badge{
    width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(15,118,110,.12);color:var(--accent);font-size:11px;font-weight:700
  }
  .risk-ranking-main{font-size:12px;font-weight:700;color:var(--accent2)}
  .risk-ranking-sub{font-size:11px;color:var(--muted);margin-top:2px}
  .risk-ranking-value{font-size:11px;color:var(--muted);text-align:right;line-height:1.5}
  .risk-panel-ranking-disclosure{
    border-top:1px solid rgba(255,255,255,.10);
    padding-top:12px;
  }
  .risk-panel-ranking-disclosure > summary{
    list-style:none;
    display:inline-flex;
    align-items:center;
    gap:8px;
    cursor:pointer;
  }
  .risk-panel-ranking-disclosure > summary::-webkit-details-marker{display:none}
  .risk-panel-ranking-disclosure > summary::after{
    content:'+';
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:18px;
    height:18px;
    border-radius:999px;
    border:1px solid var(--border);
    color:var(--muted);
    font-size:12px;
    line-height:1;
  }
  .risk-panel-ranking-disclosure[open] > summary::after{
    content:'-';
  }
  .risk-panel-ranking-disclosure[open] .risk-panel-ranking{
    margin-top:12px;
  }
  .risk-map-tooltip{background:#fff;border:1px solid var(--border);border-radius:8px;padding:8px 10px;box-shadow:0 6px 16px rgba(0,0,0,.12)}
  .risk-map-tooltip strong{display:block;font-size:12px;color:var(--accent2);margin-bottom:4px}
  .risk-map-tooltip span{display:block;font-size:11px;color:var(--muted);line-height:1.5}
  .risk-map-tooltip em{font-style:normal;color:var(--accent);font-weight:700}
  .risk-section-heading{display:flex;justify-content:space-between;gap:12px;align-items:flex-end;flex-wrap:wrap;margin-top:8px;margin-bottom:10px}
  .risk-section-heading h4{font-family:var(--serif);font-size:24px;font-weight:700;color:var(--accent2);letter-spacing:-.02em}
  .risk-section-heading p{font-size:11px;color:var(--muted);max-width:700px;line-height:1.65}
  .rbc-header{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:12px}
  .rbc-name{font-family:var(--serif);font-size:19px;color:var(--accent2);font-weight:700;letter-spacing:-.02em}
  .rbc-country{font-size:11px;color:var(--muted);margin-top:2px}
  .rbc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:10px}
  .rbc-stat{background:transparent;border-top:1px solid var(--border);border-radius:0;padding:8px 0 0;text-align:center}
  .rbc-stat-val{font-size:16px;font-weight:700;color:var(--accent2)}
  .rbc-stat-label{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-top:2px}
  .rbc-hazard{font-size:11px;color:var(--muted);line-height:1.5;padding-top:8px;border-top:1px solid var(--border)}

  /* ── TC TABLE ── */
  .tc-best{background:var(--light)!important;font-weight:600}

  /* ── PRINT STYLES ── */
  #print-report,
  #print-report-preview,
  .report-preview-card #print-report-preview{
    --text:#0f172a;
    --muted:#475569;
    --accent:#2563eb;
    --accent2:#0f172a;
    --surface:#ffffff;
    --light:#f8fafc;
    --border:#d4dde8;
    --success:#047857;
    --warn:#b45309;
    background:#ffffff!important;
    color:#0f172a!important;
  }
  #print-report [style*="color:#6b7c5e"],
  #print-report-preview [style*="color:#6b7c5e"],
  .report-preview-card [style*="color:#6b7c5e"]{
    color:#526174!important;
  }
  #print-report [style*="border-bottom:1px solid #dce6d4"],
  #print-report-preview [style*="border-bottom:1px solid #dce6d4"],
  .report-preview-card [style*="border-bottom:1px solid #dce6d4"]{
    border-bottom-color:#d4dde8!important;
  }
  #print-report table,
  #print-report-preview table,
  .report-preview-card table{
    width:100%!important;
    border-collapse:collapse!important;
    color:#0f172a!important;
  }
  #print-report th,
  #print-report-preview th,
  .report-preview-card th{
    background:#eef3f8!important;
    color:#334155!important;
    border-bottom:1px solid #d4dde8!important;
  }
  #print-report td,
  #print-report-preview td,
  .report-preview-card td{
    color:#334155!important;
    border-bottom:1px solid #e2e8f0!important;
  }
  #print-report tr:nth-child(even) td,
  #print-report-preview tr:nth-child(even) td,
  .report-preview-card tr:nth-child(even) td{
    background:#f8fafc!important;
  }
  #print-report tbody tr:last-child td,
  #print-report-preview tbody tr:last-child td,
  .report-preview-card tbody tr:last-child td{
    background:#e8eef5!important;
    color:#0f172a!important;
    font-weight:700!important;
  }
  @media print{
    header,footer,.hydrorisk-wordmark-band,.tabs-bar,.stats-bar,.btn-export,.back-link,
    .region-switcher,.method-row,.period-toggles,.btn,.btn-ghost,
    main, #print-report + footer, #report-preview-overlay { display:none!important }
    body{background:#fff!important;color:#000!important;font-family:var(--sans)}
    #print-report{display:block!important}
    .pr-header{margin-bottom:20px}
    .tn-json-box{display:none!important}
    .tn-figure{break-inside:avoid-page}
  }
  .print-header{display:none}

  @media(max-width:920px){
    .stats-inner{grid-template-columns:repeat(3,minmax(0,1fr))}
    .risk-overview-layout{grid-template-columns:1fr}
    .risk-overview-map-wrap-hub{
      min-height:640px;
      padding:10px;
    }
    .risk-map-drawer{
      position:static;
      width:100%;
      max-width:none;
    }
    .risk-map-drawer-right:not(.is-open){
      display:none;
      transform:none;
      opacity:1;
    }
    .risk-map-drawer-right.is-open{
      display:grid;
    }
    .risk-map-search-shell,
    .risk-overview-bottom{
      position:static;
      left:auto;right:auto;top:auto;bottom:auto;
      margin-bottom:12px;
      pointer-events:auto;
    }
    .risk-map-coverage-state{
      position:static;
      width:100%;
      margin:0 0 12px;
      box-shadow:0 12px 28px rgba(15,23,42,.12);
    }
    .risk-map-search-shell{
      margin-bottom:14px;
    }
    .risk-overview-bottom{
      margin-top:12px;
      margin-bottom:0;
    }
    .stations-layout{grid-template-columns:1fr}
    .station-series-layout{grid-template-columns:1fr}
    .product-interface-shell{
      grid-template-columns:1fr;
    }
  }

  @media(max-width:760px){
    .container,main{padding-left:16px;padding-right:16px}
    .hero,.stats-bar,.tabs-bar,footer{padding-left:16px;padding-right:16px}
    .hydrorisk-wordmark-band{
      padding:48px 16px 34px;
    }
    .hydrorisk-wordmark-label{
      margin-bottom:18px;
      font-size:10px;
      letter-spacing:.2em;
    }
    .hydrorisk-wordmark-display{
      font-size:clamp(3.35rem, 17.5vw, 5rem);
      line-height:.92;
      letter-spacing:-.075em;
      white-space:normal;
      overflow-wrap:anywhere;
      word-break:break-word;
    }
    .hydrorisk-wordmark-note{
      max-width:30ch;
      margin-top:24px;
      font-size:13px;
    }
    .header-inner{
      height:auto;padding:10px 16px;flex-wrap:wrap;align-items:center
    }
    .logo-text{flex:1 1 100%}
    .logo-text h1{font-size:20px}
    .logo-text p{font-size:10px;letter-spacing:.12em}
    .tabs-shell{grid-template-columns:1fr;gap:8px}
    .tabs-report-btn{justify-self:start;width:100%}
    .btn-export{padding:9px 14px}
    .back-link{
      order:3;width:100%;margin-left:0;justify-content:center
    }
    .hero{padding:22px 16px 8px;text-align:left}
    .hero-inner{grid-template-columns:1fr;gap:22px}
    .hero-copy{padding:10px 0 0;max-width:none}
    .hero-kicker{font-size:10px;padding:7px 10px}
    .hero-wordmark{
      font-size:clamp(42px,14vw,72px);
      line-height:.9;
      margin-bottom:0;
      letter-spacing:-.04em;
      white-space:normal;
      overflow-wrap:anywhere;
    }
    .hero h2{
      font-size:clamp(22px,7.2vw,30px);
      line-height:1.08;
      max-width:11ch;
    }
    .hero p{
      font-size:14px;
      line-height:1.72;
      max-width:100%;
    }
    .hero-meta{gap:8px}
    .hero-meta-chip{font-size:10px;padding:8px 10px}
    .hero-media-card{max-width:210px}
    .tools-launcher{padding:16px 16px 6px}
    .tools-launcher-inner{gap:20px}
    .tools-launcher-intro{grid-template-columns:1fr}
    .tools-launcher-step-pill{justify-content:flex-start}
    .tools-launcher-copy h3{font-size:24px}
    .workflow-route-top{grid-template-columns:1fr}
    .workflow-route-title{font-size:25px;max-width:none}
    .workflow-task{grid-template-columns:1fr}
    .workflow-task-actions{justify-content:flex-start}
    .workflow-task h4{font-size:19px;max-width:none}
    .workflow-task p{max-width:48ch}
    main{
      padding-top:34px;
    }
    .card{
      margin-bottom:18px;
      padding:16px 0 14px;
      border-radius:0;
    }
    .stats-bar{padding:0 16px 10px;border-bottom:0;background:transparent}
    .stats-inner{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
    .stat-val{font-size:22px}
    .stat-item{padding:12px 0 10px;min-height:0;border-radius:0;margin-bottom:0;border-right:none;border-bottom:1px solid rgba(226,232,240,.16)}
    .stat-item:nth-child(2n){border-right:none}
    .stat-item:nth-last-child(-n+1){border-bottom:1px solid rgba(226,232,240,.16)}
    .stat-label{font-size:11px;letter-spacing:.05em}
    .tabs-bar{position:static;top:auto;padding:0 16px 8px;border-bottom:0;background:transparent;backdrop-filter:none}
    .tabs-inner{
      gap:6px;padding:0 4px 4px 0;scrollbar-width:none;-webkit-overflow-scrolling:touch;mask-image:none
    }
    .tabs-inner::-webkit-scrollbar{display:none}
    .tab-btn{padding:11px 13px 12px;font-size:12px}
    main{padding-top:34px;padding-bottom:56px}
    .card{padding:18px 0 16px;border-radius:0}
    .card h3{font-size:22px}
    .card .subtitle{font-size:12px;line-height:1.75}
    .form-grid{grid-template-columns:1fr}
    .method-row,.tool-inline-actions,.period-toggles{gap:10px}
    .region-switcher,.risk-overview-search,.stations-filter-row,.station-series-search-row{
      flex-direction:column;align-items:stretch
    }
    .region-btn,.river-search-box,.river-search-box input,.river-search-box button,
    .risk-overview-search input,.risk-overview-search button,
    .stations-filter-row input,.stations-filter-row select,.stations-filter-row button,
    .station-series-search-row input,.station-series-search-row button{
      width:100%;max-width:none;min-width:0
    }
    .atlas-meta,.map-overlay-context-head{flex-direction:column;align-items:flex-start}
    .atlas-level-guide{grid-template-columns:1fr;padding:0}
    .map-info-panel{padding:16px 14px}
    .climate-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .basin-stat-grid,.guide-morphometry-meta,.stations-panel-grid,.rbc-grid{grid-template-columns:1fr 1fr}
    .history-head,.state-head{grid-template-columns:1fr}
    .history-stats{justify-content:flex-start}
    .risk-mode-switch{width:100%}
    .risk-mode-btn{flex:1 1 0;justify-content:center;text-align:center}
    .risk-service-ladder-head{
      align-items:flex-start;
    }
    .risk-service-ladder-list{
      grid-template-columns:1fr;
    }
    .risk-service-item{
      padding:13px;
    }
    #aquarisk-map,#risk-overview-map,#stations-overview-map{height:360px}
    #risk-overview-map .leaflet-top.leaflet-left{top:52px}
    .risk-map-search-row{
      flex-direction:column;align-items:stretch;
    }
    .risk-map-search-row .btn-ghost{
      width:100%;
    }
    .risk-map-search-row .risk-map-shell-btn{
      width:100%;
    }
    .risk-map-coverage-grid{
      grid-template-columns:1fr;
    }
    .risk-map-drawer-right{
      padding:16px 14px 14px;
      border-radius:14px;
      bottom:auto;
    }
    .risk-map-basemap-switch{
      grid-template-columns:repeat(2,minmax(0,1fr));
    }
    #mghydro-map{height:380px}
    .mghydro-map-wrap{min-width:0}
    .report-preview-toolbar,
    .print-map-toolbar{
      padding:14px 16px;border-radius:14px 14px 0 0;align-items:stretch
    }
    .report-preview-actions,
    .print-map-toolbar .actions{
      display:grid;grid-template-columns:1fr;width:100%
    }
    .report-preview-actions button,
    .print-map-toolbar button{
      width:100%
    }
    .report-preview-body{padding:14px 10px 24px;border-radius:0 0 14px 14px}
    .report-preview-card,.print-map-card{padding:18px 14px;border-radius:12px}
    .report-preview-note{padding:0 2px}
    .tn-figure{padding:12px}
    .tn-figure-header{flex-direction:column;align-items:flex-start}
    .tn-figure-title{font-size:20px}
    .tn-figure-badge{align-self:flex-start}
    .tn-figure-frame{padding:10px}
    .station-series-top h4{font-size:26px}
    .station-series-actions{flex-direction:column}
    .tn-figure-canvas{min-height:300px}
    .tn-figure-map-controls{left:10px;top:10px;gap:6px}
    .tn-figure-north{width:44px;height:44px;font-size:10px}
    .tn-figure-scale{padding:5px 8px;font-size:9px}
    .tn-json-box pre{max-height:180px}
    .method-table,.wb-result-table{
      display:block;overflow-x:auto;white-space:nowrap
    }
    .cn-table{
      overflow-x:auto;
      -webkit-overflow-scrolling:touch;
    }
    .leaflet-control-layers-expanded{
      max-width:min(280px,calc(100vw - 36px))
    }
    .leaflet-control-layers-list label{font-size:11px;line-height:1.4}
    .product-hero{padding:14px 16px 6px}
    .product-hero-inner{
      grid-template-columns:minmax(0,1fr);
      gap:10px;
      align-items:start;
    }
    .product-hero-media{
      display:none;
    }
    .product-hero .hero-wordmark{
      font-size:clamp(42px,14vw,68px);
      white-space:normal;
      overflow-wrap:anywhere;
    }
    .product-hero h2{
      font-size:clamp(22px,6.8vw,32px);
      max-width:13ch;
    }
    .product-hero p{
      font-size:13px;
      line-height:1.68;
      max-width:100%;
    }
    .product-hero-actions{
      flex-direction:column;
      align-items:stretch;
    }
    .product-btn{
      width:100%;
    }
    #risk-overview-map{height:340px}
    .risk-map-search-row{
      padding:10px 11px;
      border-radius:12px;
    }
    .risk-map-drawer-right{
      padding:13px 12px 12px;
      border-radius:14px;
    }
    .product-capabilities-grid,
    .product-use-cases-grid,
    .product-trust-grid,
    .guide-morphometry-grid{
      grid-template-columns:1fr;
    }
    .station-series-location-live-map{height:240px;min-height:240px}
    .station-series-location-maphead .value{font-size:15px}
    .station-series-location-meta .value{font-size:13px}
  }

  @media(max-width:600px){
    .stat-item{padding:14px 16px}
    .header-inner{gap:10px}
    .header-actions{width:100%;gap:8px;justify-content:space-between}
    .algo-link,.header-actions .back-link{flex:1 1 calc(50% - 4px);width:auto;justify-content:center}
    .hero{padding:20px 16px 8px}
    .back-link span{display:none}
    .hero-media-card{
      position:static;
      max-width:none;
      margin-top:10px;
    }
    .hero-media-frame{padding:10px}
    .risk-panel-grid{grid-template-columns:1fr}
    .risk-municipality-summary{
      margin-top:14px;
      padding-top:14px;
    }
    .stations-panel-grid{grid-template-columns:1fr}
    .report-preview-overlay{padding:0}
    .report-preview-toolbar{border-radius:0;padding:14px 16px}
    .report-preview-body{padding:14px 10px 24px;border-radius:0}
    .report-preview-card{padding:18px 14px;border-radius:14px}
    .tn-figure-grid,.tn-figure-grid.is-premium,.tn-figure-footer{grid-template-columns:1fr}
    .tn-figure-canvas{min-height:260px}
    .station-series-location-hero{grid-template-columns:1fr}
    .station-series-location-live-map{height:224px;min-height:224px}
  }

  @media(max-width:520px){
    .hero-wordmark{font-size:40px}
    .hero h2{font-size:20px;max-width:12ch}
    .hero p{font-size:13px}
    .stats-bar{padding-top:0}
    .stats-inner,.risk-overview-summary,.stations-summary-grid,.metrics,.wb-summary,.state-grid,.basin-stat-grid,.guide-morphometry-meta,.stations-panel-grid,.rbc-grid{
      grid-template-columns:1fr
    }
    .stats-inner{display:grid;gap:0;padding:10px 12px}
    .stat-item{padding:12px;border-right:none;border-bottom:1px solid rgba(226,232,240,.84)}
    .stat-item:last-child{border-bottom:none}
    .stat-val{font-size:20px}
    .stat-label{font-size:10px}
    .guide-morphometry-title,.risk-panel-name,.stations-panel-name{font-size:24px}
    .history-chip{min-width:0;flex:1 1 100%}
    .risk-mode-switch{display:grid;grid-template-columns:1fr}
    #aquarisk-map,#risk-overview-map,#stations-overview-map,#mghydro-map{height:300px}
    .station-series-location-live-map{height:210px;min-height:210px}
    .ssb-chart-outer,
    .sshyd-outer,
    #station-series-monthly-chart:not(.station-series-chart-empty),
    #station-series-annual-chart:not(.station-series-chart-empty){padding:10px 8px}
    .ssb-wrap{margin-left:28px !important;gap:4px !important;height:154px !important}
    .ssb-yaxis{left:-28px !important;width:24px !important}
    .ssb-lbl{font-size:7.5px !important;letter-spacing:-.01em}
    #risk-overview-map .leaflet-top.leaflet-left{top:48px}
    .card{padding:14px 12px}
    .report-preview-toolbar,.print-map-toolbar{padding:12px 14px}
    .report-preview-card,.print-map-card{padding:16px 12px}
    .tn-figure-title{font-size:18px}
    .tn-figure-subtitle,.tn-figure-box p,.tn-figure-box li{font-size:10.5px}
    .product-hero{padding-top:12px}
    .product-hero .hero-wordmark{
      font-size:34px;
    }
    .product-hero h2{
      font-size:18px;
      max-width:13ch;
    }
    .product-hero p{
      font-size:12px;
    }
    .tabs-report-btn .btn-export{width:100%}
  }

  /* MGHydro Watershed Map */
  #mghydro-map{height:480px;border-radius:10px;overflow:hidden;position:relative;border:1px solid var(--border)}
  .mghydro-layout{display:flex;gap:20px;align-items:flex-start;flex-wrap:wrap}
  .mghydro-map-wrap{flex:1;min-width:300px;position:relative}
  #mghydro-instruction{
    position:absolute;bottom:16px;left:50%;transform:translateX(-50%);
    background:rgba(3,13,26,.85);color:#fff;padding:10px 20px;border-radius:8px;
    font-size:13px;text-align:center;z-index:1000;pointer-events:none;
    backdrop-filter:blur(4px);border:1px solid rgba(0,200,248,.3);
    white-space:nowrap;max-width:90%
  }
  #mghydro-spinner{
    display:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
    background:rgba(3,13,26,.92);color:#00c8f8;padding:16px 28px;border-radius:10px;
    font-size:14px;z-index:1001;backdrop-filter:blur(6px);gap:10px;align-items:center;
    border:1px solid rgba(0,200,248,.4)
  }
  .mghydro-panel{
    width:260px;background:var(--card);border:1px solid var(--border);
    border-radius:12px;padding:20px;flex-shrink:0
  }
  .mghydro-panel h4{font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:16px}
  .ws-stat{margin-bottom:14px;padding-bottom:14px;border-bottom:1px solid var(--border)}
  .ws-stat:last-of-type{border-bottom:none}
  .ws-stat-label{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}
  .ws-stat-val{font-size:22px;font-weight:700;color:var(--accent2);font-family:var(--serif)}
  .ws-stat-unit{font-size:11px;color:var(--muted)}
  #scs-model-map{height:260px;border-radius:10px;overflow:hidden;position:relative;border:1px solid var(--border);margin-top:12px}
  .scs-spatial-panel{display:none;margin-top:18px;animation:fadeUp .3s ease}
  .scs-spatial-panel.show{display:block}
  .scs-spatial-note{font-size:12px;color:var(--muted);line-height:1.65;margin-top:10px}
  @media(max-width:700px){
    .mghydro-layout{flex-direction:column}
    .mghydro-panel{width:100%}
    #mghydro-map{height:360px}
    #mghydro-instruction{white-space:normal;font-size:12px}
  }

  /* ── MONOCHROME REFINEMENTS ─────────────────────── */
  .hero-kicker,
  .hero-meta-chip,
  .tool-launch-label,
  .hero-media-card,
  .tools-launcher-step-pill,
  .tools-launcher-step-pill span,
  .station-series-explainer-card,
  .station-series-location-meta,
  .state-chip,
  .history-chip,
  .stations-panel-chip{
    background:#ffffff;
    border-color:rgba(0,0,0,.12);
    color:#171717;
  }
  .hero-kicker,
  .hero-meta-chip,
  .tool-launch-label{
    box-shadow:0 10px 24px rgba(0,0,0,.04);
  }
  .hero-media-frame,
  .tools-launcher-steps,
  .stats-inner,
  .stations-map-wrap,
  .risk-overview-map-wrap,
  .station-series-location-figure,
  .station-series-location-live-wrap,
  .ssb-chart-outer,
  .sshyd-outer,
  #station-series-monthly-chart:not(.station-series-chart-empty),
  #station-series-annual-chart:not(.station-series-chart-empty){
    background:linear-gradient(180deg,#ffffff 0%,#f5f5f5 100%);
    border-color:#d6d6d6;
    box-shadow:0 12px 28px rgba(0,0,0,.05);
  }
  .hero-media-card .value,
  .stat-val,
  .stations-panel-name,
  .risk-panel-name,
  .station-series-top h4,
  .workflow-route-title,
  .tools-launcher-copy h3,
  .tn-figure-title,
  .tn-figure-badge,
  .tn-figure-north,
  .atlas-kicker,
  .atlas-level-guide-kicker,
  .atlas-level-guide h4,
  .atlas-level-guide-item strong,
  .state-chip .value,
  .history-chip .value,
  .station-series-location-maphead .value,
  .station-series-location-meta .value{
    color:#111111;
  }
  .state-chip,
  .station-series-explainer-card,
  .station-series-chart-empty,
  .stations-note,
  .map-info-panel{
    border-color:#d9d9d9;
  }
  .loading-bar{
    background:linear-gradient(90deg,#111111,#8d8d8d,#111111);
  }
  .overlay-line-swatch.temp{border-top-color:#8c5a2b}
  .overlay-line-swatch.precip,
  .tn-swatch-line{border-top-color:#5b8fc8}
  .overlay-line-swatch.rivers,
  .tn-swatch-line-river{border-top-color:#2b6fb3}
  .tn-swatch-line-river-secondary{border-top-color:#8fb6de}
  .overlay-raster-swatch.relief,
  .overlay-raster-swatch.slope,
  .tn-swatch-fill-climate{
    background:linear-gradient(135deg,#f3f3f3 0%,#cfcfcf 52%,#8e8e8e 100%);
    border-color:rgba(0,0,0,.16);
  }
  .overlay-marker-swatch.tarija-stations{
    background:radial-gradient(circle at 35% 35%, #ffffff 0 24%, #0f766e 25% 64%, #4c8fd6 65% 100%);
    border:1px solid rgba(15,118,110,.34);
    box-shadow:0 0 0 2px rgba(15,118,110,.12);
  }
  .overlay-marker-swatch.spain-stations{
    background:radial-gradient(circle at 35% 35%, #ffffff 0 24%, #0b4f6c 25% 62%, #255f99 63% 100%);
    border:1px solid rgba(11,79,108,.34);
    box-shadow:0 0 0 2px rgba(37,95,153,.10);
  }
  .overlay-marker-swatch.argentina-stations{
    background:radial-gradient(circle at 35% 35%, #ffffff 0 24%, #111111 25% 62%, #3f7fbd 63% 100%);
    border:1px solid rgba(0,0,0,.30);
    box-shadow:0 0 0 2px rgba(63,127,189,.12);
  }
  .overlay-polygon-swatch.spain-groundwater{
    background:linear-gradient(135deg,rgba(245,245,245,.9) 0%,rgba(180,180,180,.75) 100%);
    border-color:rgba(0,0,0,.22);
    box-shadow:none;
  }
  .legend-river{
    background:#2b6fb3 !important;
    border-color:#2b6fb3 !important;
  }
  .risk-panel-chip,
  .stations-panel-chip{
    color:#111111 !important;
    border-color:#d0d0d0 !important;
    background:#ffffff !important;
  }
  .period-btn.on{
    color:#1c1c1c !important;
    border-color:#1c1c1c !important;
    background:#f1f1f1 !important;
  }
  .river-popup{
    border-color:#1c1c1c;
  }
  .river-popup strong{
    color:#111111;
  }
  .river-popup small{
    color:#666666;
  }
  .stations-map-tooltip em,
  .risk-map-tooltip em{
    color:#1c1c1c;
  }
  #aquarisk-map,
  #risk-overview-map,
  #stations-overview-map,
  #mghydro-map,
  #scs-model-map,
  .station-series-location-live-map{
    background:#efefef;
  }
  .station-series-location-live-wrap .map-badge,
  .station-series-location-live-wrap .map-caption,
  .station-series-location-live-map .leaflet-control-scale-line{
    background:rgba(255,255,255,.96);
    border-color:rgba(0,0,0,.12);
    color:#2a2a2a;
  }
  .station-series-location-live-map .leaflet-control-zoom a{
    color:#1a1a1a;
  }
  .report-preview-toolbar,
  .print-map-toolbar{
    background:#0b0b0b;
  }
  .report-preview-body,
  body.print-map-mode{
    background:#f1f1f1;
  }
  .tn-figure{
    border-color:#d7d7d7;
    background:linear-gradient(180deg,#ffffff 0%,#f6f6f6 100%);
  }
  .tn-figure-code,
  .tn-figure-subtitle,
  .tn-figure-note,
  .tn-json-title,
  .tn-json-box pre,
  .tn-figure-box-label,
  .tn-figure-box p,
  .tn-figure-box li,
  .tn-legend-item{
    color:#585858;
  }
  .tn-figure-badge,
  .tn-figure-frame,
  .tn-figure-canvas,
  .tn-figure-box{
    border-color:#d5d5d5;
    background:linear-gradient(180deg,#fcfcfc 0%,#f1f1f1 100%);
    color:#171717;
  }
  .tn-swatch-fill{
    background:#cfcfcf;
  }
  .tn-swatch-dot,
  .tn-swatch-dot-hydro,
  .tn-swatch-dot-meteo,
  .tn-swatch-dot-reference{
    background:#111111;
    border-color:rgba(0,0,0,.22);
    box-shadow:none;
  }
  #mghydro-instruction,
  #mghydro-spinner{
    background:rgba(10,10,10,.92);
    color:#ffffff;
    border-color:rgba(255,255,255,.16);
  }
  html[data-theme="dark"] .subtitle,
  html[data-theme="dark"] .card .subtitle,
  html[data-theme="dark"] .tn-figure-subtitle,
  html[data-theme="dark"] .report-preview-subtitle,
  html[data-theme="dark"] .workflow-note,
  html[data-theme="dark"] .workflow-route-copy p,
  html[data-theme="dark"] .workflow-route-hint,
  html[data-theme="dark"] .workflow-task p,
  html[data-theme="dark"] .footer-col p,
  html[data-theme="dark"] .footer-col li,
  html[data-theme="dark"] .footer-bottom p,
  html[data-theme="dark"] .footer-cite p,
  html[data-theme="dark"] .hero-media-card .note,
  html[data-theme="dark"] .hero-media-card .label,
  html[data-theme="dark"] .state-chip .label,
  html[data-theme="dark"] .state-chip .sub,
  html[data-theme="dark"] .history-chip .label,
  html[data-theme="dark"] .map-overlay-context-note,
  html[data-theme="dark"] .map-caption{
    color:#d9d4c8 !important;
  }
  html[data-theme="dark"] .workflow-route-title,
  html[data-theme="dark"] .tools-launcher-copy h3,
  html[data-theme="dark"] .station-series-top h4,
  html[data-theme="dark"] .stations-panel-name,
  html[data-theme="dark"] .risk-panel-name,
  html[data-theme="dark"] .hero-media-card .value,
  html[data-theme="dark"] .stat-val,
  html[data-theme="dark"] .station-series-location-maphead .value,
  html[data-theme="dark"] .station-series-location-meta .value{
    color:#f7f5ef !important;
    text-shadow:0 1px 0 rgba(0,0,0,.35);
  }
  html[data-theme="dark"] .tools-launcher-step-pill,
  html[data-theme="dark"] .tools-launcher-step-pill span,
  html[data-theme="dark"] .workflow-route-kicker span,
  html[data-theme="dark"] .hero-kicker,
  html[data-theme="dark"] .hero-meta-chip,
  html[data-theme="dark"] .tool-launch-label{
    color:#f7f5ef !important;
  }
  html[data-theme="dark"] .risk-mode-btn{
    background:rgba(255,255,255,.07);
    border-color:rgba(247,245,239,.18);
    color:#e7dfd2;
    box-shadow:0 10px 24px rgba(0,0,0,.18);
  }
  html[data-theme="dark"] .risk-mode-btn.active,
  html[data-theme="dark"] .risk-mode-btn:hover{
    background:#f7f5ef;
    border-color:#f7f5ef;
    color:#111111;
  }
  html[data-theme="dark"] #risk-municipality-search{
    background:rgba(255,255,255,.05);
    border-color:rgba(247,245,239,.18);
    color:#f7f5ef;
  }
  html[data-theme="dark"] #risk-municipality-search::placeholder{
    color:#b9b1a4;
  }
  html[data-theme="dark"] #risk-search-note,
  html[data-theme="dark"] .risk-overview-top p,
  html[data-theme="dark"] .risk-panel-sub,
  html[data-theme="dark"] .risk-panel-stat .note,
  html[data-theme="dark"] .risk-panel-text{
    color:#d7cfbf !important;
  }
  html[data-theme="dark"] .hero,
  html[data-theme="dark"] .stats-bar,
  html[data-theme="dark"] .tools-launcher,
  html[data-theme="dark"] .tabs-bar,
  html[data-theme="dark"] footer {
    background: transparent !important;
  }
  html[data-theme="dark"] .tabs-bar {
    background: linear-gradient(180deg, rgba(8,10,14,.72) 0%, rgba(8,10,14,.48) 100%) !important;
    border-bottom: 1px solid rgba(255,255,255,.08) !important;
    backdrop-filter: blur(14px);
  }
  html[data-theme="dark"] .card,
  html[data-theme="dark"] .stats-inner,
  html[data-theme="dark"] .tools-launcher-steps,
  html[data-theme="dark"] .workflow-route,
  html[data-theme="dark"] .workflow-task,
  html[data-theme="dark"] .risk-municipality-panel,
  html[data-theme="dark"] .risk-overview-shell {
    background: rgba(18,18,20,.58) !important;
    border-color: rgba(255,255,255,.12) !important;
    backdrop-filter: blur(12px);
  }
  html[data-theme="dark"] .tools-launcher-steps,
  html[data-theme="dark"] .workflow-route,
  html[data-theme="dark"] .workflow-task{
    background: transparent !important;
    border-left: none !important;
    border-right: none !important;
    border-bottom: none !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
  }
  html[data-theme="dark"] .workflow-route{
    padding-top: 12px;
    border-top: 1px solid rgba(255,255,255,.10) !important;
  }
  html[data-theme="dark"] .workflow-task{
    padding: 10px 0 0;
    border-top: 1px solid rgba(255,255,255,.09) !important;
  }
  html[data-theme="dark"] .workflow-task-actions button{
    background: transparent !important;
    border-color: rgba(255,255,255,.10) !important;
    box-shadow: none !important;
  }
  html[data-theme="dark"] .stations-map-wrap,
  html[data-theme="dark"] .risk-overview-map-wrap,
  html[data-theme="dark"] .station-series-location-figure,
  html[data-theme="dark"] .station-series-location-live-wrap,
  html[data-theme="dark"] .ssb-chart-outer,
  html[data-theme="dark"] .sshyd-outer,
  html[data-theme="dark"] .stations-note,
  html[data-theme="dark"] .station-series-chart-empty,
  html[data-theme="dark"] .station-series-location-meta,
  html[data-theme="dark"] .station-series-explainer-card,
  html[data-theme="dark"] .stations-panel-chip,
  html[data-theme="dark"] .risk-panel-chip,
  html[data-theme="dark"] .stations-panel,
  html[data-theme="dark"] .station-series-summary,
  html[data-theme="dark"] .station-series-preview-block{
    background: transparent !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
  }
  html[data-theme="dark"] .station-series-summary .stations-panel-chip{
    color:#d9d1c4 !important;
    border-bottom-color:rgba(255,255,255,.12) !important;
    background:transparent !important;
  }
  html[data-theme="dark"] .stations-map-wrap,
  html[data-theme="dark"] .risk-overview-map-wrap,
  html[data-theme="dark"] .station-series-location-figure,
  html[data-theme="dark"] .station-series-location-live-wrap{
    border-color: rgba(255,255,255,.10) !important;
  }
  html[data-theme="dark"] .stations-note,
  html[data-theme="dark"] .station-series-chart-empty{
    border-color: rgba(255,255,255,.12) !important;
    border-left-color: var(--gold) !important;
  }
  html[data-theme="dark"] .stations-filter-row input,
  html[data-theme="dark"] .stations-filter-row select,
  html[data-theme="dark"] .station-series-search-row input,
  html[data-theme="dark"] .risk-search-input,
  html[data-theme="dark"] .risk-select{
    background: rgba(255,255,255,.05) !important;
    color: var(--text) !important;
    border: 1px solid rgba(255,255,255,.12) !important;
    box-shadow: none !important;
    backdrop-filter: blur(10px);
  }
  html[data-theme="dark"] .stations-filter-row input::placeholder,
  html[data-theme="dark"] .station-series-search-row input::placeholder,
  html[data-theme="dark"] .risk-search-input::placeholder{
    color: #b8b0a3;
  }
  html[data-theme="dark"] .stations-filter-row button,
  html[data-theme="dark"] .station-series-search-row button,
  html[data-theme="dark"] .risk-overview-search .btn-ghost,
  html[data-theme="dark"] .tool-inline-actions .btn-ghost{
    background: transparent !important;
    border-color: rgba(255,255,255,.12) !important;
    color: var(--text) !important;
    box-shadow: none !important;
  }
  html[data-theme="dark"] #panel-metodologia [style*="background:#fff"],
  html[data-theme="dark"] #panel-metodologia [style*="background: #fff"],
  html[data-theme="dark"] #panel-metodologia [style*="background:var(--light)"],
  html[data-theme="dark"] #panel-metodologia [style*="background: var(--light)"],
  html[data-theme="dark"] #panel-metodologia [style*="background:var(--accent2)"],
  html[data-theme="dark"] #panel-metodologia [style*="background: var(--accent2)"]{
    background: linear-gradient(180deg, rgba(255,255,255,.07) 0%, rgba(255,255,255,.03) 100%) !important;
    border-color: rgba(255,255,255,.12) !important;
    color: var(--text) !important;
    box-shadow: none !important;
  }
  html[data-theme="dark"] #panel-metodologia [style*="background:#1c1c1c"],
  html[data-theme="dark"] #panel-metodologia [style*="background: #1c1c1c"]{
    background: rgba(255,255,255,.08) !important;
    border: 1px solid rgba(255,255,255,.14) !important;
    color: #f6f0e7 !important;
  }
  html[data-theme="dark"] #panel-metodologia #service-level-grid > div,
  html[data-theme="dark"] #panel-metodologia #coverage-matrix-grid > div,
  html[data-theme="dark"] #panel-metodologia #coverage-current-context,
  html[data-theme="dark"] #panel-metodologia #coverage-current-context > div > div:last-child,
  html[data-theme="dark"] #panel-metodologia #country-module-grid > div,
  html[data-theme="dark"] #panel-metodologia #calibration-summary-overview > div,
  html[data-theme="dark"] #panel-metodologia #calibration-country-grid > div,
  html[data-theme="dark"] #panel-metodologia #spain-premium-summary,
  html[data-theme="dark"] #panel-metodologia #spain-premium-checklist > div,
  html[data-theme="dark"] #panel-metodologia #spain-premium-sources > div{
    background: linear-gradient(180deg, rgba(255,255,255,.065) 0%, rgba(255,255,255,.025) 100%) !important;
    border: 1px solid rgba(255,255,255,.12) !important;
    box-shadow: none !important;
  }
  html[data-theme="dark"] #panel-metodologia h3,
  html[data-theme="dark"] #panel-metodologia h4,
  html[data-theme="dark"] #panel-metodologia h5,
  html[data-theme="dark"] #panel-metodologia strong,
  html[data-theme="dark"] #panel-metodologia .index-val,
  html[data-theme="dark"] #panel-metodologia .f-name,
  html[data-theme="dark"] #panel-metodologia .f-eq,
  html[data-theme="dark"] #panel-metodologia .wmo-badge{
    color: #f4efe6 !important;
  }
  html[data-theme="dark"] #panel-metodologia p,
  html[data-theme="dark"] #panel-metodologia li,
  html[data-theme="dark"] #panel-metodologia td,
  html[data-theme="dark"] #panel-metodologia .subtitle,
  html[data-theme="dark"] #panel-metodologia .index-name,
  html[data-theme="dark"] #panel-metodologia .f-desc,
  html[data-theme="dark"] #panel-metodologia .ref-list li,
  html[data-theme="dark"] #panel-metodologia [style*="color:#334155"],
  html[data-theme="dark"] #panel-metodologia [style*="color: #334155"],
  html[data-theme="dark"] #panel-metodologia [style*="color:#475569"],
  html[data-theme="dark"] #panel-metodologia [style*="color: #475569"],
  html[data-theme="dark"] #panel-metodologia [style*="color:#64748b"],
  html[data-theme="dark"] #panel-metodologia [style*="color: #64748b"],
  html[data-theme="dark"] #panel-metodologia [style*="color:var(--muted)"],
  html[data-theme="dark"] #panel-metodologia [style*="color: var(--muted)"]{
    color: #d6cec2 !important;
  }
  html[data-theme="dark"] #panel-metodologia [style*="color:#0f172a"],
  html[data-theme="dark"] #panel-metodologia [style*="color: #0f172a"],
  html[data-theme="dark"] #panel-metodologia [style*="color:#1c1c1c"],
  html[data-theme="dark"] #panel-metodologia [style*="color: #1c1c1c"]{
    color: #f4efe6 !important;
  }
  html[data-theme="dark"] #panel-metodologia [style*="color:rgba(255,255,255,.6)"],
  html[data-theme="dark"] #panel-metodologia [style*="color: rgba(255,255,255,.6)"],
  html[data-theme="dark"] #panel-metodologia [style*="color:rgba(255,255,255,.55)"],
  html[data-theme="dark"] #panel-metodologia [style*="color: rgba(255,255,255,.55)"]{
    color: #d7cfbf !important;
  }
  html[data-theme="dark"] #panel-metodologia .method-table th{
    background: rgba(255,255,255,.08) !important;
    color: #f4efe6 !important;
    border-bottom: 1px solid rgba(255,255,255,.12);
  }
  html[data-theme="dark"] #panel-metodologia .method-table td,
  html[data-theme="dark"] #panel-metodologia .wb-result-table td,
  html[data-theme="dark"] #panel-metodologia .wb-result-table th{
    border-color: rgba(255,255,255,.10) !important;
  }
  html[data-theme="dark"] #panel-metodologia .method-table tr:nth-child(even) td,
  html[data-theme="dark"] #panel-metodologia .wb-result-table tr:nth-child(even) td{
    background: rgba(255,255,255,.025) !important;
  }
  html[data-theme="dark"] #panel-metodologia .wb-result-table tr:last-child td{
    background: rgba(255,255,255,.10) !important;
    color: #f4efe6 !important;
  }
  html[data-theme="dark"] #panel-metodologia a[href=\"/data-sources/\"]{
    background: rgba(255,255,255,.94) !important;
    color: #111111 !important;
    border: none !important;
  }
  html[data-theme="dark"] #panel-metodologia a[style*="color:#1c1c1c"],
  html[data-theme="dark"] #panel-metodologia a[style*="color: #1c1c1c"]{
    color: #f4efe6 !important;
  }
  html[data-theme="dark"] .risk-section-heading p,
  html[data-theme="dark"] .stations-panel-sub,
  html[data-theme="dark"] .stations-panel-text,
  html[data-theme="dark"] .tool-sync-note,
  html[data-theme="dark"] .station-series-explainer,
  html[data-theme="dark"] .chart-note,
  html[data-theme="dark"] .history-head p,
  html[data-theme="dark"] .state-text,
  html[data-theme="dark"] .state-note,
  html[data-theme="dark"] .atlas-note,
  html[data-theme="dark"] .atlas-level-guide p,
  html[data-theme="dark"] .atlas-level-guide-item span,
  html[data-theme="dark"] .river-search-box input::placeholder,
  html[data-theme="dark"] .legend-item,
  html[data-theme="dark"] .tn-legend-item,
  html[data-theme="dark"] .tn-figure-subtitle,
  html[data-theme="dark"] .guide-chart-note,
  html[data-theme="dark"] .guide-morphometry-note,
  html[data-theme="dark"] .station-series-chart-meta,
  html[data-theme="dark"] .map-caption{
    color: #d6cec2 !important;
  }
  html[data-theme="dark"] .risk-section-heading h4,
  html[data-theme="dark"] .stations-panel-name,
  html[data-theme="dark"] .station-series-top h4,
  html[data-theme="dark"] .atlas-level-guide h4,
  html[data-theme="dark"] .map-overlay-context-title,
  html[data-theme="dark"] .guide-chart-title,
  html[data-theme="dark"] .guide-morphometry-title,
  html[data-theme="dark"] .basin-summary-head h4{
    color: #f6f0e7 !important;
  }
  html[data-theme="dark"] .tab-btn{
    background: rgba(255,255,255,.04) !important;
    border-color: rgba(255,255,255,.12) !important;
    color: rgba(221,212,197,.82) !important;
    border-radius: 999px !important;
  }
  html[data-theme="dark"] .tab-btn:hover:not(.active){
    background: rgba(255,255,255,.08) !important;
    border-color: rgba(255,255,255,.18) !important;
    color: #f4efe6 !important;
    transform: translateY(-1px) !important;
  }
  html[data-theme="dark"] .tab-btn.active{
    background: #f7f3ea !important;
    color: #111111 !important;
    border-color: #f7f3ea !important;
    border-bottom-color: #f7f3ea !important;
    box-shadow: none !important;
  }
  html[data-theme="dark"] .station-series-search-row input,
  html[data-theme="dark"] .river-search-box input,
  html[data-theme="dark"] #panel-metodologia input,
  html[data-theme="dark"] #panel-metodologia select{
    background: rgba(255,255,255,.05) !important;
    color: #f6f0e7 !important;
    border-color: rgba(255,255,255,.12) !important;
  }
  html[data-theme="dark"] .station-series-search-row input::placeholder,
  html[data-theme="dark"] #panel-metodologia input::placeholder{
    color: #bdb29f !important;
  }
  html[data-theme="dark"] .stations-panel-stat .label,
  html[data-theme="dark"] .stations-panel-label,
  html[data-theme="dark"] .stations-overview-eyebrow,
  html[data-theme="dark"] .tool-launch-label,
  html[data-theme="dark"] .workflow-task-label,
  html[data-theme="dark"] .atlas-kicker,
  html[data-theme="dark"] .basin-summary-kicker{
    color: #c9bea9 !important;
  }
  html[data-theme="dark"] .stations-panel-stat .note,
  html[data-theme="dark"] .stations-ranking-item,
  html[data-theme="dark"] .stations-ranking-item span,
  html[data-theme="dark"] .map-overlay-chip span,
  html[data-theme="dark"] .guide-chart-note,
  html[data-theme="dark"] .guide-morphometry-note{
    color: #d1c7b8 !important;
  }
  html[data-theme="dark"] .stations-ranking-sub,
  html[data-theme="dark"] .stations-ranking-value,
  html[data-theme="dark"] .risk-ranking-sub,
  html[data-theme="dark"] .risk-ranking-value,
  html[data-theme="dark"] .rbc-country,
  html[data-theme="dark"] .rbc-hazard,
  html[data-theme="dark"] .rbc-stat-label,
  html[data-theme="dark"] .station-series-chart-meta,
  html[data-theme="dark"] .station-series-source,
  html[data-theme="dark"] .ssb-note,
  html[data-theme="dark"] .sshyd-note,
  html[data-theme="dark"] .ssb-lbl,
  html[data-theme="dark"] .ssb-ytick{
    color:#d8d0c3 !important;
  }
  html[data-theme="dark"] .ssb-lbl.is-empty,
  html[data-theme="dark"] .ssb-ytick.is-empty{
    color:#b6ac9d !important;
  }
  html[data-theme="dark"] .ssb-p10,
  html[data-theme="dark"] .ssb-p90{
    border-top-color:rgba(233,225,210,.26) !important;
  }
  html[data-theme="dark"] .station-series-table,
  html[data-theme="dark"] .method-table,
  html[data-theme="dark"] .wb-result-table,
  html[data-theme="dark"] .cn-table{
    color:#e8e0d4 !important;
  }
  html[data-theme="dark"] .social-metric,
  html[data-theme="dark"] .social-impact,
  html[data-theme="dark"] .social-ngo-advisor,
  html[data-theme="dark"] .social-intervention,
  html[data-theme="dark"] .social-source,
  html[data-theme="dark"] .social-cpv-card,
  html[data-theme="dark"] .social-case-card,
  html[data-theme="dark"] .social-ranking-row,
  html[data-theme="dark"] .social-panel,
  html[data-theme="dark"] .social-chip,
  html[data-theme="dark"] .social-action,
  html[data-theme="dark"] .social-controls input,
  html[data-theme="dark"] .social-controls select{
    background:rgba(255,255,255,.06);
    border-color:rgba(255,255,255,.12);
    color:var(--text);
  }
  html[data-theme="dark"] .social-ngo-advisor{
    background:linear-gradient(135deg,rgba(15,124,102,.16),rgba(255,255,255,.045));
    border-color:rgba(52,211,153,.22);
  }
  html[data-theme="dark"] .social-intervention{
    background:rgba(255,255,255,.055);
    border-color:rgba(52,211,153,.2);
  }
  html[data-theme="dark"] .social-advisor-controls select{
    background:rgba(255,255,255,.06);
    border-color:rgba(255,255,255,.12);
    color:var(--text);
  }
  html[data-theme="dark"] .social-action.primary{
    background:#f8fafc;
    border-color:#f8fafc;
    color:#121212;
  }
  html[data-theme="dark"] .social-quality{
    background:rgba(180,35,24,.12);
    border-color:rgba(248,113,113,.34);
  }
  html[data-theme="dark"] .social-case-limit{
    background:rgba(180,35,24,.14);
    border-color:rgba(248,113,113,.34);
    color:#f6b3aa;
  }
  html[data-theme="dark"] .social-ranking-row .social-reason-chip{
    background:rgba(52,211,153,.1);
    border-color:rgba(52,211,153,.22);
    color:#7dd3bc;
  }
  html[data-theme="dark"] .social-ranking-row span,
  html[data-theme="dark"] .social-impact p,
  html[data-theme="dark"] .social-ngo-advisor p,
  html[data-theme="dark"] .social-intervention p,
  html[data-theme="dark"] .social-next-steps li,
  html[data-theme="dark"] .social-source span,
  html[data-theme="dark"] .social-panel p,
  html[data-theme="dark"] .social-case-card p,
  html[data-theme="dark"] .social-quality ul,
  html[data-theme="dark"] .social-empty,
  html[data-theme="dark"] .social-title p,
  html[data-theme="dark"] .social-chip,
  html[data-theme="dark"] .social-action{
    color:var(--muted);
  }
  html[data-theme="dark"] .station-series-table th,
  html[data-theme="dark"] .method-table th,
  html[data-theme="dark"] .wb-result-table th,
  html[data-theme="dark"] .cn-table th{
    color:#f4efe6 !important;
    background:rgba(255,255,255,.08) !important;
    border-color:rgba(255,255,255,.12) !important;
  }
  html[data-theme="dark"] .station-series-table td,
  html[data-theme="dark"] .method-table td,
  html[data-theme="dark"] .wb-result-table td,
  html[data-theme="dark"] .cn-table td{
    color:#ddd4c7 !important;
    border-color:rgba(255,255,255,.10) !important;
    background:transparent !important;
  }
  html[data-theme="dark"] .method-table tr:nth-child(even) td,
  html[data-theme="dark"] .wb-result-table tr:nth-child(even) td,
  html[data-theme="dark"] .cn-table tr:nth-child(even) td{
    background:rgba(255,255,255,.025) !important;
  }
  html[data-theme="dark"] .cn-table,
  html[data-theme="dark"] #panel-idf .cn-table,
  html[data-theme="dark"] #panel-idf .method-table,
  html[data-theme="dark"] #panel-idf .wb-result-table,
  html[data-theme="dark"] #panel-series .station-series-preview-block,
  html[data-theme="dark"] #panel-series .station-series-chart-empty{
    border-color:rgba(255,255,255,.12) !important;
  }
  html[data-theme="dark"] .wb-result-table tr:last-child td{
    background:rgba(255,255,255,.10) !important;
    color:#f5f0e8 !important;
  }
  html[data-theme="dark"] .tc-best{
    background:rgba(255,255,255,.06) !important;
    color:#f3ede3 !important;
  }
  html[data-theme="dark"] .stations-map-tooltip,
  html[data-theme="dark"] .risk-map-tooltip{
    background:rgba(14,16,20,.96) !important;
    border-color:rgba(255,255,255,.14) !important;
    box-shadow:0 16px 34px rgba(0,0,0,.32) !important;
  }
  html[data-theme="dark"] .stations-map-tooltip strong,
  html[data-theme="dark"] .risk-map-tooltip strong{
    color:#f5efe5 !important;
  }
  html[data-theme="dark"] .stations-map-tooltip span,
  html[data-theme="dark"] .risk-map-tooltip span{
    color:#d7cfbf !important;
  }
  html[data-theme="dark"] .stations-map-tooltip em{
    color:#d8c287 !important;
  }
  html[data-theme="dark"] .risk-map-tooltip em{
    color:#d9b97f !important;
  }
  html[data-theme="dark"] .leaflet-tooltip{
    background: rgba(14,16,20,.96) !important;
    border-color: rgba(255,255,255,.12) !important;
    color: #efe7da !important;
    box-shadow: 0 14px 30px rgba(0,0,0,.28) !important;
  }
  html[data-theme="dark"] .panel-inline-note,
  html[data-theme="dark"] .panel-method-note{
    border-top-color: rgba(255,255,255,.10) !important;
  }
  html[data-theme="dark"] .panel-inline-note p,
  html[data-theme="dark"] .panel-method-note p,
  html[data-theme="dark"] .panel-section-kicker{
    color:#d7cfbf !important;
  }
  html[data-theme="dark"] #panel-idf .period-btn{
    background: transparent !important;
    border-color: rgba(255,255,255,.12) !important;
    color:#d7cfbf !important;
  }
  html[data-theme="dark"] #panel-idf .period-btn.on{
    background: rgba(255,255,255,.08) !important;
    border-color: rgba(247,245,239,.22) !important;
    color:#f5efe5 !important;
  }
  html[data-theme="dark"] #panel-idf .dur-card,
  html[data-theme="dark"] #panel-cuenca details,
  html[data-theme="dark"] #panel-caudal details{
    border-top-color: rgba(255,255,255,.10) !important;
  }
  html[data-theme="dark"] .leaflet-control-layers-expanded,
  html[data-theme="dark"] .leaflet-bar,
  html[data-theme="dark"] .leaflet-bar a,
  html[data-theme="dark"] .leaflet-control-attribution,
  html[data-theme="dark"] .leaflet-control-scale-line{
    background:rgba(248,243,236,.92) !important;
    color:#1f2937 !important;
    border-color:rgba(15,23,42,.12) !important;
    box-shadow:0 8px 18px rgba(15,23,42,.10) !important;
  }
  html[data-theme="dark"] .leaflet-bar a:hover{
    background:rgba(255,255,255,.72) !important;
    color:#111827 !important;
  }
  html[data-theme="dark"] .leaflet-control-layers-list label,
  html[data-theme="dark"] .leaflet-control-attribution a{
    color:#334155 !important;
  }
  html[data-theme="dark"] .leaflet-popup-content-wrapper,
  html[data-theme="dark"] .leaflet-popup-tip{
    background:rgba(250,247,241,.96) !important;
    color:#243041 !important;
    box-shadow:0 14px 34px rgba(15,23,42,.14) !important;
  }
  html[data-theme="dark"] #panel-series .history-chip,
  html[data-theme="dark"] #panel-mapa .history-chip,
  html[data-theme="dark"] #panel-series .state-chip,
  html[data-theme="dark"] #panel-mapa .state-chip{
    background:rgba(255,255,255,.055) !important;
    border-color:rgba(255,255,255,.12) !important;
    color:#f4efe6 !important;
  }
  html[data-theme="dark"] #panel-series .history-chip .label,
  html[data-theme="dark"] #panel-mapa .history-chip .label,
  html[data-theme="dark"] #panel-series .state-chip .label,
  html[data-theme="dark"] #panel-mapa .state-chip .label{
    color:#cdbfa7 !important;
  }
  html[data-theme="dark"] #panel-series .history-chip .value,
  html[data-theme="dark"] #panel-mapa .history-chip .value,
  html[data-theme="dark"] #panel-series .state-chip .value,
  html[data-theme="dark"] #panel-mapa .state-chip .value{
    color:#f6f0e7 !important;
  }
  html[data-theme="dark"] #panel-mapa .card,
  html[data-theme="dark"] #panel-mapa .risk-overview-card{
    background: transparent !important;
    border-left: none !important;
    border-right: none !important;
    border-bottom: none !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
  }
  html[data-theme="dark"] #panel-mapa .risk-map-search-row{
    background:rgba(12,17,25,.88) !important;
    border-color:rgba(255,255,255,.10) !important;
    box-shadow:0 18px 34px rgba(0,0,0,.22) !important;
  }
  html[data-theme="dark"] #panel-mapa #risk-municipality-search{
    color:#f3ecdf !important;
  }
  html[data-theme="dark"] #panel-mapa #risk-municipality-search::placeholder{
    color:#a9b4c3 !important;
  }
  html[data-theme="dark"] #panel-mapa .risk-map-search-row .btn-ghost,
  html[data-theme="dark"] #panel-mapa .risk-map-shell-btn{
    background:rgba(255,255,255,.06) !important;
    border-color:rgba(255,255,255,.12) !important;
    color:#f3ecdf !important;
  }
  html[data-theme="dark"] #panel-mapa .risk-map-search-shell .tool-sync-note{
    color:#e7dece !important;
    text-shadow:0 1px 4px rgba(0,0,0,.42) !important;
  }

  /* Reportes PDF: conservar contraste documental claro aunque la app use tema oscuro. */
  #print-report .tn-figure,
  #print-report-preview .tn-figure{
    background:#ffffff !important;
    border-color:#d7e2eb !important;
    color:#0f172a !important;
  }
  #print-report .tn-figure-frame,
  #print-report-preview .tn-figure-frame,
  #print-report .tn-figure-box,
  #print-report-preview .tn-figure-box,
  #print-report .tn-figure-caption,
  #print-report-preview .tn-figure-caption{
    background:#ffffff !important;
    border-color:#d8e3ec !important;
    color:#0f172a !important;
  }
  #print-report .tn-figure-canvas,
  #print-report-preview .tn-figure-canvas{
    background:#101820 !important;
    border-color:#d7e2eb !important;
  }
  #print-report .tn-figure-code,
  #print-report-preview .tn-figure-code,
  #print-report .tn-figure-box-label,
  #print-report-preview .tn-figure-box-label,
  #print-report .tn-figure-caption-title,
  #print-report-preview .tn-figure-caption-title{
    color:#526174 !important;
  }
  #print-report .tn-figure-title,
  #print-report-preview .tn-figure-title{
    color:#0f172a !important;
  }
  #print-report .tn-figure-subtitle,
  #print-report-preview .tn-figure-subtitle,
  #print-report .tn-figure-caption p,
  #print-report-preview .tn-figure-caption p,
  #print-report .tn-figure-note,
  #print-report-preview .tn-figure-note,
  #print-report .tn-figure-box p,
  #print-report-preview .tn-figure-box p,
  #print-report .tn-figure-box li,
  #print-report-preview .tn-figure-box li,
  #print-report .tn-legend-item,
  #print-report-preview .tn-legend-item{
    color:#334155 !important;
  }
  html[data-theme="dark"] #panel-mapa .risk-municipality-panel,
  html[data-theme="dark"] #panel-mapa .risk-map-options{
    background:linear-gradient(180deg, rgba(8,11,16,.94) 0%, rgba(10,14,20,.90) 100%) !important;
    border:1px solid rgba(255,255,255,.14) !important;
    box-shadow:0 20px 40px rgba(0,0,0,.28) !important;
    backdrop-filter:blur(10px) !important;
  }
  html[data-theme="dark"] #panel-mapa .risk-panel-label,
  html[data-theme="dark"] #panel-mapa .risk-map-options-label{
    color:#ccbfa7 !important;
  }
  html[data-theme="dark"] #panel-mapa .risk-panel-name,
  html[data-theme="dark"] #panel-mapa .risk-map-options-title{
    color:#f7f1e8 !important;
  }
  html[data-theme="dark"] #panel-mapa .risk-panel-sub,
  html[data-theme="dark"] #panel-mapa .risk-panel-text,
  html[data-theme="dark"] #panel-mapa .risk-panel-stat .note,
  html[data-theme="dark"] #panel-mapa .risk-map-options-note,
  html[data-theme="dark"] #panel-mapa .risk-map-options-foot{
    color:#dfd6c8 !important;
  }
  html[data-theme="dark"] #panel-mapa .risk-panel-stat{
    background:rgba(255,255,255,.05) !important;
    border:1px solid rgba(255,255,255,.10) !important;
  }
  html[data-theme="dark"] #panel-mapa .risk-panel-stat .label,
  html[data-theme="dark"] #panel-mapa .risk-map-option-state{
    color:#ccbfa7 !important;
  }
  html[data-theme="dark"] #panel-mapa .risk-panel-stat .value{
    color:#f7f1e8 !important;
  }
  html[data-theme="dark"] #panel-mapa .risk-panel-chip{
    color:#d9cebd !important;
    border-bottom-color:rgba(255,255,255,.18) !important;
  }
  html[data-theme="dark"] #panel-mapa .risk-ranking-row{
    background:rgba(255,255,255,.05) !important;
    border:1px solid rgba(255,255,255,.10) !important;
  }
  html[data-theme="dark"] #panel-mapa .risk-ranking-badge{
    background:rgba(255,255,255,.12) !important;
    color:#f7f1e8 !important;
  }
  html[data-theme="dark"] #panel-mapa .risk-ranking-main{
    color:#f6efe6 !important;
  }
  html[data-theme="dark"] #panel-mapa .risk-ranking-sub,
  html[data-theme="dark"] #panel-mapa .risk-ranking-value{
    color:#d9d0c3 !important;
  }
  html[data-theme="dark"] #panel-mapa .risk-map-basemap-btn,
  html[data-theme="dark"] #panel-mapa .risk-map-option-toggle{
    background:rgba(255,255,255,.04) !important;
    border-color:rgba(255,255,255,.12) !important;
    color:#efe6d8 !important;
  }
  html[data-theme="dark"] #panel-mapa .risk-map-basemap-btn.active{
    background:#f2eee6 !important;
    border-color:#f2eee6 !important;
    color:#111827 !important;
  }
  html[data-theme="dark"] #panel-mapa .risk-map-option-toggle.active{
    background:rgba(37,99,235,.16) !important;
    border-color:rgba(96,165,250,.42) !important;
    color:#f7f1e8 !important;
  }
  html[data-theme="dark"] #panel-mapa .risk-overview-bottom .risk-overview-legend,
  html[data-theme="dark"] #panel-mapa .risk-overview-bottom .risk-overview-note{
    background:rgba(10,14,20,.90) !important;
    border:1px solid rgba(255,255,255,.12) !important;
    box-shadow:0 14px 28px rgba(0,0,0,.22) !important;
  }
  html[data-theme="dark"] #panel-mapa #risk-overview-map{
    background:#09121d !important;
  }
  html[data-theme="dark"] #panel-mapa #risk-overview-map.risk-overview-map--hybrid .leaflet-tile{
    filter:brightness(.44) saturate(.56) contrast(1.06) !important;
    opacity:1 !important;
  }
  html[data-theme="dark"] #panel-mapa #risk-overview-shell.is-hybrid .risk-map-search-shell .tool-sync-note{
    color:#dbe4f2 !important;
    text-shadow:0 2px 10px rgba(0,0,0,.55) !important;
  }
  html[data-theme="dark"] #panel-mapa #risk-overview-shell.is-hybrid .risk-overview-bottom .risk-overview-legend,
  html[data-theme="dark"] #panel-mapa #risk-overview-shell.is-hybrid .risk-overview-bottom .risk-overview-note{
    background:rgba(7,11,18,.92) !important;
    border-color:rgba(255,255,255,.10) !important;
    box-shadow:0 16px 34px rgba(0,0,0,.26) !important;
  }
  html[data-theme="dark"] #panel-mapa #risk-overview-shell.is-hybrid .leaflet-bar,
  html[data-theme="dark"] #panel-mapa #risk-overview-shell.is-hybrid .leaflet-bar a,
  html[data-theme="dark"] #panel-mapa #risk-overview-shell.is-hybrid .leaflet-control-attribution,
  html[data-theme="dark"] #panel-mapa #risk-overview-shell.is-hybrid .leaflet-control-scale-line{
    background:rgba(7,11,18,.90) !important;
    color:#e6ddcf !important;
    border-color:rgba(255,255,255,.10) !important;
    box-shadow:0 10px 22px rgba(0,0,0,.24) !important;
  }
  html[data-theme="dark"] #panel-mapa #risk-overview-shell.is-hybrid .leaflet-bar a:hover{
    background:rgba(255,255,255,.10) !important;
    color:#ffffff !important;
  }
  html[data-theme="dark"] #panel-mapa #risk-overview-shell.is-hybrid .leaflet-control-attribution a{
    color:#dbe4f2 !important;
  }
  html[data-theme="dark"] #panel-mapa #risk-overview-shell.is-hybrid .leaflet-popup-content-wrapper,
  html[data-theme="dark"] #panel-mapa #risk-overview-shell.is-hybrid .leaflet-popup-tip,
  html[data-theme="dark"] #panel-mapa #risk-overview-shell.is-hybrid .risk-map-tooltip{
    background:rgba(7,11,18,.94) !important;
    color:#edf3fb !important;
    border:1px solid rgba(255,255,255,.10) !important;
    box-shadow:0 16px 34px rgba(0,0,0,.28) !important;
  }
  html[data-theme="dark"] #panel-mapa #risk-overview-shell.is-hybrid .risk-map-tooltip strong{
    color:#f8fafc !important;
  }
  html[data-theme="dark"] #panel-mapa #risk-overview-shell.is-hybrid .risk-map-tooltip span{
    color:#d4deec !important;
  }
  html[data-theme="dark"] #panel-mapa .risk-overview-legend .legend-item,
  html[data-theme="dark"] #panel-mapa .risk-overview-note{
    color:#e6ddcf !important;
  }
  html[data-theme="dark"] #panel-mapa .risk-overview-placeholder{
    color:#d7cfbf !important;
  }
  html[data-theme="dark"] #panel-mapa .history-chip,
  html[data-theme="dark"] #panel-mapa .state-chip{
    background: transparent !important;
    border: none !important;
    border-top: 1px solid rgba(255,255,255,.10) !important;
    border-radius: 0 !important;
    padding: 10px 0 0 !important;
    box-shadow: none !important;
  }
  html[data-theme="dark"] #panel-mapa .risk-overview-summary{
    gap: 16px !important;
  }
  html[data-theme="dark"] #panel-cuencas .atlas-diagnostic,
  html[data-theme="dark"] #panel-cuencas .map-overlay-chip,
  html[data-theme="dark"] #panel-cuencas #risk-analysis{
    background:transparent !important;
    border:none !important;
    border-top:1px solid rgba(255,255,255,.12) !important;
    box-shadow:none !important;
  }
  html[data-theme="dark"] #panel-series .station-series-top p,
  html[data-theme="dark"] #panel-series .station-series-location-maphead .note,
  html[data-theme="dark"] #panel-series .station-series-location-meta .note,
  html[data-theme="dark"] #panel-series .station-series-chart-meta,
  html[data-theme="dark"] #panel-series .stations-panel-sub,
  html[data-theme="dark"] #panel-series .stations-panel-stat .note,
  html[data-theme="dark"] #panel-series .tool-sync-note{
    color:#e6dece !important;
  }
  html[data-theme="dark"] #panel-series .station-series-location-maphead .value,
  html[data-theme="dark"] #panel-series .stations-panel-name,
  html[data-theme="dark"] #panel-series .stations-panel-stat .value{
    color:#fff9ef !important;
    text-shadow:none !important;
  }
  html[data-theme="dark"] #panel-series .stations-panel-stat,
  html[data-theme="dark"] #panel-series .station-series-location-meta,
  html[data-theme="dark"] #panel-series .station-series-explainer-card{
    border-top-color:rgba(255,255,255,.20) !important;
  }
  html[data-theme="dark"] #panel-series #station-series-search,
  html[data-theme="dark"] #panel-series .station-series-search-row input{
    background:linear-gradient(180deg, rgba(255,255,255,.10) 0%, rgba(255,255,255,.06) 100%) !important;
    border-color:rgba(255,255,255,.22) !important;
    color:#fff9ef !important;
  }
  html[data-theme="dark"] #panel-series #station-series-search::placeholder,
  html[data-theme="dark"] #panel-series .station-series-search-row input::placeholder{
    color:#c9bea8 !important;
  }
  html[data-theme="dark"] #panel-series .station-series-search-row button{
    border-color:rgba(255,255,255,.18) !important;
    color:#fff9ef !important;
    background:rgba(255,255,255,.03) !important;
  }
  html[data-theme="dark"] #panel-series .station-series-location-live-wrap,
  html[data-theme="dark"] #panel-series .station-series-location-figure,
  html[data-theme="dark"] #panel-series .ssb-chart-outer,
  html[data-theme="dark"] #panel-series .sshyd-outer{
    border-color:rgba(255,255,255,.22) !important;
    background:rgba(255,255,255,.03) !important;
  }
  html[data-theme="dark"] #panel-series .station-series-chart-empty{
    border-color:rgba(255,255,255,.16) !important;
    background:linear-gradient(180deg, rgba(255,255,255,.05) 0%, rgba(255,255,255,.025) 100%) !important;
    color:#e8decd !important;
  }
  html[data-theme="dark"] #panel-series .station-series-location-live-map,
  html[data-theme="dark"] #panel-series #station-series-location-live-map,
  html[data-theme="dark"] #panel-series #station-series-location-map,
  html[data-theme="dark"] #panel-series #station-series-monthly-chart,
  html[data-theme="dark"] #panel-series #station-series-annual-chart{
    background:#1c2c3f !important;
  }
  html[data-theme="dark"] #panel-series .leaflet-container img{
    opacity:1 !important;
    filter:none !important;
  }
  html[data-theme="dark"] #panel-series .leaflet-control-zoom a,
  html[data-theme="dark"] #panel-series .leaflet-control-attribution,
  html[data-theme="dark"] #panel-series .leaflet-control-scale-line{
    background:rgba(14,16,20,.95) !important;
    color:#f0e7d8 !important;
    border-color:rgba(255,255,255,.20) !important;
  }
  html[data-theme="dark"] #panel-series .station-series-preview-block{
    border-top:1px solid rgba(255,255,255,.18) !important;
  }
  html[data-theme="dark"] #panel-series .station-series-chart-empty{
    color:#efe6d7 !important;
    border-color:rgba(255,255,255,.20) !important;
    background:linear-gradient(180deg, rgba(255,255,255,.05) 0%, rgba(255,255,255,.02) 100%) !important;
  }
  html[data-theme="dark"] #panel-series .tool-sync-note{
    color:#e7dcc9 !important;
  }
  html[data-theme="dark"] #panel-series .tool-sync-note.is-warn{
    color:#e3cda1 !important;
  }
  html[data-theme="dark"] #panel-series .tool-sync-note.is-ok{
    color:#b9e5c2 !important;
  }
  html[data-theme="dark"] #panel-series .station-series-location-live-wrap .map-caption{
    background:rgba(12,14,18,.90) !important;
    border-color:rgba(255,255,255,.22) !important;
    color:#e8decc !important;
  }
  html[data-theme="dark"] #panel-series .station-series-location-live-wrap .map-badge{
    background:rgba(12,14,18,.92) !important;
    border-color:rgba(255,255,255,.24) !important;
    color:#f5ecde !important;
  }
  html[data-theme="dark"] #panel-series .station-series-location-live-map .leaflet-tile{
    opacity:1 !important;
    filter:brightness(.48) saturate(.62) contrast(1.08) !important;
  }
  html[data-theme="dark"] #panel-series .station-series-location-live-map--hybrid .leaflet-bar,
  html[data-theme="dark"] #panel-series .station-series-location-live-map--hybrid .leaflet-bar a,
  html[data-theme="dark"] #panel-series .station-series-location-live-map--hybrid .leaflet-control-attribution,
  html[data-theme="dark"] #panel-series .station-series-location-live-map--hybrid .leaflet-control-scale-line{
    background:rgba(7,11,18,.90) !important;
    color:#e6ddcf !important;
    border-color:rgba(255,255,255,.10) !important;
    box-shadow:0 10px 22px rgba(0,0,0,.24) !important;
  }
  html[data-theme="dark"] #panel-series .station-series-location-live-map--hybrid .leaflet-bar a:hover{
    background:rgba(255,255,255,.10) !important;
    color:#ffffff !important;
  }
  html[data-theme="dark"] #panel-series .station-series-location-live-map--hybrid .leaflet-control-attribution a{
    color:#dbe4f2 !important;
  }
  html[data-theme="dark"] #panel-series .station-series-card{
    position:relative;
    padding:14px 0 8px;
  }
  html[data-theme="dark"] #panel-series .station-series-card::before{
    content:"";
    position:absolute;
    inset:-10px -18px auto;
    height:220px;
    pointer-events:none;
    background:
      radial-gradient(circle at 12% 12%, rgba(56,189,248,.09) 0%, rgba(56,189,248,0) 34%),
      radial-gradient(circle at 82% 0%, rgba(148,163,184,.08) 0%, rgba(148,163,184,0) 30%);
    opacity:.95;
  }
  html[data-theme="dark"] #panel-series .station-series-top,
  html[data-theme="dark"] #panel-series .station-series-toolbar,
  html[data-theme="dark"] #panel-series .station-series-layout{
    position:relative;
    z-index:1;
  }
  html[data-theme="dark"] #panel-series .station-series-top{
    margin-bottom:18px;
  }
  html[data-theme="dark"] #panel-series .station-series-top h4{
    font-size:32px;
    line-height:1.04;
    letter-spacing:-.03em;
    max-width:12ch;
    margin-bottom:12px;
  }
  html[data-theme="dark"] #panel-series .station-series-top p{
    max-width:74ch;
    font-size:12.5px;
    line-height:1.78;
    color:rgba(221,212,199,.82);
  }
  html[data-theme="dark"] #panel-series .station-series-toolbar{
    gap:14px;
    margin-bottom:18px;
    padding-top:16px;
    border-top:1px solid rgba(255,255,255,.10);
  }
  html[data-theme="dark"] #panel-series .station-series-country-switch{
    gap:10px;
  }
  html[data-theme="dark"] #panel-series .station-series-country-switch .btn-ghost{
    min-height:38px;
    padding:0 14px;
    border-radius:999px;
    border:1px solid rgba(255,255,255,.12);
    background:rgba(255,255,255,.035);
    color:#d8cfbf;
    letter-spacing:.06em;
    text-transform:uppercase;
    font-size:11px;
    font-weight:800;
  }
  html[data-theme="dark"] #panel-series .station-series-country-switch .btn-ghost.selected,
  html[data-theme="dark"] #panel-series .station-series-country-switch .btn-ghost:hover{
    background:rgba(244,236,222,.92);
    color:#111827;
    border-color:rgba(244,236,222,.92);
  }
  html[data-theme="dark"] #panel-series .station-series-search-row{
    grid-template-columns:minmax(0,1fr) auto;
    gap:12px;
    padding:14px 0 0;
    border-top:1px solid rgba(255,255,255,.08);
  }
  html[data-theme="dark"] #panel-series #station-series-search,
  html[data-theme="dark"] #panel-series .station-series-search-row input{
    min-height:48px;
    border-radius:16px;
    border:1px solid rgba(255,255,255,.12);
    background:linear-gradient(180deg, rgba(255,255,255,.06) 0%, rgba(255,255,255,.028) 100%);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
    padding:0 16px;
  }
  html[data-theme="dark"] #panel-series .station-series-search-row button{
    min-height:48px;
    padding:0 18px;
    border-radius:999px;
    border:1px solid rgba(255,255,255,.12);
    background:rgba(255,255,255,.04);
    color:#f3ece1;
    font-size:11px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
  }
  html[data-theme="dark"] #panel-series .station-series-search-row button:hover{
    border-color:rgba(255,255,255,.22);
    background:rgba(255,255,255,.08);
  }
  html[data-theme="dark"] #panel-series .tool-sync-note{
    font-size:11px;
    line-height:1.72;
    color:rgba(205,191,167,.78) !important;
  }
  html[data-theme="dark"] #panel-series .station-series-layout{
    grid-template-columns:minmax(320px,.78fr) minmax(0,1.22fr);
    gap:22px;
    align-items:start;
  }
  html[data-theme="dark"] #panel-series .station-series-summary{
    position:sticky;
    top:92px;
    padding:18px 18px 0;
    border-top:none;
    border-radius:18px;
    background:linear-gradient(180deg, rgba(10,14,20,.68) 0%, rgba(10,14,20,.42) 100%);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
  }
  html[data-theme="dark"] #panel-series .station-series-summary .stations-panel-grid{
    gap:12px;
  }
  html[data-theme="dark"] #panel-series .station-series-summary .stations-panel-stat{
    padding-top:12px;
    border-top:1px solid rgba(255,255,255,.08);
  }
  html[data-theme="dark"] #panel-series .station-series-summary .stations-panel-text{
    padding-top:14px;
    border-top:1px solid rgba(255,255,255,.08);
    color:rgba(221,212,199,.76);
  }
  html[data-theme="dark"] #panel-series .station-series-preview{
    gap:16px;
  }
  html[data-theme="dark"] #panel-series .station-series-preview-block{
    padding:16px 16px 0;
    border-top:none;
    border-radius:18px;
    background:linear-gradient(180deg, rgba(9,13,19,.62) 0%, rgba(9,13,19,.34) 100%);
  }
  html[data-theme="dark"] #panel-series #station-series-diagnostics-wrap{
    padding-bottom:16px;
  }
  html[data-theme="dark"] #panel-series #station-series-stats-panel:not(:empty){
    padding:0 0 4px;
    border-top:none;
  }
  html[data-theme="dark"] #panel-series .station-series-stats-panel .history-chip{
    background:linear-gradient(180deg, rgba(255,255,255,.055) 0%, rgba(255,255,255,.028) 100%);
    border:1px solid rgba(255,255,255,.10);
    border-radius:14px;
    padding:10px 12px;
  }
  html[data-theme="dark"] #panel-series .station-series-location-figure,
  html[data-theme="dark"] #panel-series .station-series-location-live-wrap{
    border-color:rgba(255,255,255,.08);
    border-radius:16px;
  }
  html[data-theme="dark"] #panel-series .station-series-chart-empty{
    min-height:214px;
    border-color:rgba(255,255,255,.08);
    border-radius:16px;
    background:
      linear-gradient(180deg, rgba(255,255,255,.028) 0%, rgba(255,255,255,.012) 100%),
      radial-gradient(circle at top left, rgba(56,189,248,.04) 0%, rgba(56,189,248,0) 40%);
    color:rgba(221,212,199,.70);
  }
  html[data-theme="dark"] #panel-series #station-series-monthly-chart:not(.station-series-chart-empty),
  html[data-theme="dark"] #panel-series #station-series-annual-chart:not(.station-series-chart-empty){
    border-color:rgba(255,255,255,.08);
    border-radius:16px;
    background:linear-gradient(180deg, rgba(255,255,255,.028) 0%, rgba(255,255,255,.01) 100%);
  }
  html[data-theme="dark"] #panel-series .station-series-explainer{
    gap:12px;
    padding-top:0;
    border-top:none;
  }
  html[data-theme="dark"] #panel-series .station-series-explainer-card{
    padding:14px 14px 0;
    border-top:none;
    border-radius:16px;
    background:linear-gradient(180deg, rgba(255,255,255,.03) 0%, rgba(255,255,255,.015) 100%);
  }
  html[data-theme="dark"] #panel-series .station-series-location-maphead .label,
  html[data-theme="dark"] #panel-series .stations-panel-label{
    color:#cdbfa7;
    letter-spacing:.12em;
  }
  html[data-theme="dark"] #panel-series .station-series-location-maphead .value,
  html[data-theme="dark"] #panel-series .stations-panel-name{
    color:#f5efe5;
  }
  html[data-theme="dark"] #panel-series .station-series-location-maphead .note,
  html[data-theme="dark"] #panel-series .station-series-location-meta .note,
  html[data-theme="dark"] #panel-series .station-series-chart-meta,
  html[data-theme="dark"] #panel-series .station-series-explainer-card .note{
    color:rgba(221,212,199,.72);
  }
  @media(max-width:980px){
    html[data-theme="dark"] #panel-series .station-series-layout{
      grid-template-columns:1fr;
      gap:18px;
    }
    html[data-theme="dark"] #panel-series .station-series-summary{
      position:relative;
      top:auto;
    }
  }

  /* ── HYDRORISK CLEAN SHELL 2026-05-01 ───────────────────── */
  header,
  html[data-theme="dark"] header{
    background:transparent !important;
    border-bottom:0 !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
  }
  .header-inner{
    justify-content:flex-end;
  }
  header .logo-text{
    display:none !important;
  }
  header .header-actions{
    margin-left:auto;
    justify-content:flex-end;
  }
  .product-hero,
  html[data-theme="dark"] .product-hero{
    padding:clamp(52px,8vh,92px) 18px clamp(42px,7vh,78px) !important;
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
  }
  .product-hero-copy{
    max-width:min(1080px,100%) !important;
    gap:clamp(14px,1.6vw,22px) !important;
  }
  .product-hero-kicker{
    display:none !important;
  }
  .product-hero .hero-wordmark{
    font-size:clamp(104px,14.5vw,186px) !important;
    line-height:.78 !important;
    letter-spacing:-.078em !important;
    font-weight:760 !important;
    color:#f7fbff !important;
    text-shadow:none !important;
    margin-top:clamp(-10px,-1vh,-4px) !important;
  }
  .product-hero h2{
    max-width:17ch !important;
    font-size:clamp(40px,5.4vw,76px) !important;
    line-height:1.01 !important;
    letter-spacing:-.064em !important;
    font-weight:760 !important;
    color:#f7fbff !important;
  }
  .product-hero p{
    max-width:58ch !important;
    font-size:clamp(13px,1.15vw,16px) !important;
    line-height:1.78 !important;
    color:rgba(228,232,238,.74) !important;
  }
  .tabs-bar,
  html[data-theme="dark"] .tabs-bar{
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
  }
  .tabs-shell{
    border:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
  }
  .tabs-inner{
    border:0 !important;
  }
  html[data-theme="dark"] .tab-btn{
    background:transparent !important;
    border-color:rgba(255,255,255,.14) !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
  }
  html[data-theme="dark"] .tab-btn:hover:not(.active){
    background:rgba(255,255,255,.045) !important;
    border-color:rgba(255,255,255,.22) !important;
  }
  html[data-theme="dark"] .tab-btn.active{
    background:#f7f5ef !important;
    border-color:#f7f5ef !important;
    color:#111827 !important;
  }
  html[data-theme="dark"] main,
  html[data-theme="dark"] .tool-panel,
  html[data-theme="dark"] .tool-panel.active,
  html[data-theme="dark"] .card,
  html[data-theme="dark"] .risk-overview-card,
  html[data-theme="dark"] .stations-overview-card,
  html[data-theme="dark"] .tools-launcher,
  html[data-theme="dark"] .tools-launcher-inner,
  html[data-theme="dark"] .tools-launcher-steps,
  html[data-theme="dark"] .workflow-route,
  html[data-theme="dark"] .workflow-task,
  html[data-theme="dark"] .product-capability-card,
  html[data-theme="dark"] .product-how-step,
  html[data-theme="dark"] .product-interface-shell,
  html[data-theme="dark"] .product-use-cases-grid article,
  html[data-theme="dark"] .product-trust-grid article,
  html[data-theme="dark"] .product-final-cta,
  html[data-theme="dark"] .station-series-summary,
  html[data-theme="dark"] .station-series-preview-block,
  html[data-theme="dark"] .station-series-explainer-card,
  html[data-theme="dark"] .station-series-location-meta,
  html[data-theme="dark"] .stations-panel,
  html[data-theme="dark"] .stations-panel-chip,
  html[data-theme="dark"] .risk-panel-chip,
  html[data-theme="dark"] .risk-municipality-summary,
  html[data-theme="dark"] .risk-municipality-summary-main,
  html[data-theme="dark"] .risk-panel-stat,
  html[data-theme="dark"] .risk-panel-text,
  html[data-theme="dark"] .risk-ranking-row,
  html[data-theme="dark"] .risk-ranking-badge,
  html[data-theme="dark"] .risk-panel-ranking-disclosure,
  html[data-theme="dark"] .history-chip,
  html[data-theme="dark"] .state-chip,
  html[data-theme="dark"] .guide-morphometry-panel,
  html[data-theme="dark"] .guide-meta-chip,
  html[data-theme="dark"] .atlas-diagnostic,
  html[data-theme="dark"] .result-box,
  html[data-theme="dark"] .formula,
  html[data-theme="dark"] .formula-block,
  html[data-theme="dark"] .basin-stat,
  html[data-theme="dark"] .dur-card,
  html[data-theme="dark"] .metric,
  html[data-theme="dark"] .wb-month,
  html[data-theme="dark"] .rbc-stat,
  html[data-theme="dark"] .mghydro-panel,
  html[data-theme="dark"] .scs-spatial-panel{
    background:transparent !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
  }
  html[data-theme="dark"] .card{
    border-top:0 !important;
    border-left:0 !important;
    border-right:0 !important;
    border-bottom:0 !important;
  }
  html[data-theme="dark"] .risk-panel-stat,
  html[data-theme="dark"] .risk-ranking-row{
    border:0 !important;
    border-top:1px solid rgba(255,255,255,.08) !important;
    border-radius:0 !important;
    padding-left:0 !important;
    padding-right:0 !important;
  }
  html[data-theme="dark"] .risk-panel-text{
    border:0 !important;
    border-top:1px solid rgba(255,255,255,.08) !important;
    border-radius:0 !important;
    padding-left:0 !important;
    padding-right:0 !important;
  }
  html[data-theme="dark"] .risk-ranking-badge{
    border:1px solid rgba(255,255,255,.12) !important;
  }
  html[data-theme="dark"] #panel-mapa .risk-municipality-summary,
  html[data-theme="dark"] #panel-mapa .risk-municipality-summary-main,
  html[data-theme="dark"] #panel-mapa .risk-panel-stat,
  html[data-theme="dark"] #panel-mapa .risk-panel-text,
  html[data-theme="dark"] #panel-mapa .risk-ranking-row,
  html[data-theme="dark"] #panel-mapa .risk-ranking-badge,
  html[data-theme="dark"] #panel-mapa .risk-panel-ranking-disclosure{
    background:transparent !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
  }
  html[data-theme="dark"] #panel-mapa .risk-panel-stat,
  html[data-theme="dark"] #panel-mapa .risk-ranking-row{
    border:0 !important;
    border-top:1px solid rgba(255,255,255,.08) !important;
    border-radius:0 !important;
    padding-left:0 !important;
    padding-right:0 !important;
  }
  html[data-theme="dark"] #panel-mapa .risk-panel-text{
    border:0 !important;
    border-top:1px solid rgba(255,255,255,.08) !important;
    border-radius:0 !important;
    padding-left:0 !important;
    padding-right:0 !important;
  }
  html[data-theme="dark"] .tool-panel .card{
    padding-top:clamp(34px,4vw,54px) !important;
    margin-bottom:clamp(24px,4vw,48px) !important;
  }
  html[data-theme="dark"] .risk-overview-summary,
  html[data-theme="dark"] .metrics,
  html[data-theme="dark"] .state-grid,
  html[data-theme="dark"] .basin-stat-grid,
  html[data-theme="dark"] .guide-morphometry-meta,
  html[data-theme="dark"] .stations-panel-grid,
  html[data-theme="dark"] .rbc-grid{
    background:transparent !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
  }
  html[data-theme="dark"] .risk-overview-map-wrap,
  html[data-theme="dark"] .risk-overview-map-wrap-hub,
  html[data-theme="dark"] .stations-map-wrap,
  html[data-theme="dark"] .station-series-location-figure,
  html[data-theme="dark"] .station-series-location-live-wrap,
  html[data-theme="dark"] .ssb-chart-outer,
  html[data-theme="dark"] .sshyd-outer,
  html[data-theme="dark"] #station-series-monthly-chart:not(.station-series-chart-empty),
  html[data-theme="dark"] #station-series-annual-chart:not(.station-series-chart-empty),
  html[data-theme="dark"] #mghydro-map,
  html[data-theme="dark"] #scs-model-map{
    background:transparent !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
    border-color:rgba(255,255,255,.08) !important;
  }
  html[data-theme="dark"] .tool-panel [style*="box-shadow"]{
    box-shadow:none !important;
  }
  html[data-theme="dark"] .tool-panel [style*="backdrop-filter"]{
    backdrop-filter:none !important;
  }
  @media(max-width:700px){
    .product-hero{
      padding:36px 16px 30px !important;
    }
    .product-hero .hero-wordmark{
      font-size:clamp(74px,26vw,122px) !important;
      letter-spacing:-.072em !important;
    }
    .product-hero h2{
      font-size:clamp(27px,9vw,42px) !important;
      max-width:14.5ch !important;
      letter-spacing:-.055em !important;
    }
    .tabs-bar{
      padding-left:16px !important;
      padding-right:16px !important;
    }
  }

  /* ── SERIES CLEAN TRANSPARENCY 2026-05-01 ───────────────── */
  html[data-theme="dark"] #panel-series .station-series-toolbar{
    border-top:none !important;
    padding-top:0 !important;
  }
  html[data-theme="dark"] #panel-series .station-series-search-row{
    border-top:none !important;
    padding-top:0 !important;
  }
  html[data-theme="dark"] #panel-series .station-series-preview-block,
  html[data-theme="dark"] #panel-series .station-series-summary,
  html[data-theme="dark"] #panel-series .station-series-explainer,
  html[data-theme="dark"] #panel-series #station-series-stats-panel:not(:empty){
    border-top:none !important;
    border-left:none !important;
    border-right:none !important;
    border-bottom:none !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
    padding-left:0 !important;
    padding-right:0 !important;
  }
  html[data-theme="dark"] #panel-series #station-series-location-wrap .stations-panel-label,
  html[data-theme="dark"] #panel-series #station-series-monthly-heading,
  html[data-theme="dark"] #panel-series #station-series-annual-heading{
    color:#d8d0c2 !important;
  }
  html[data-theme="dark"] #panel-series .station-series-location-figure,
  html[data-theme="dark"] #panel-series .station-series-location-live-wrap,
  html[data-theme="dark"] #panel-series .station-series-location-meta,
  html[data-theme="dark"] #panel-series .station-series-chart-empty,
  html[data-theme="dark"] #panel-series #station-series-monthly-chart:not(.station-series-chart-empty),
  html[data-theme="dark"] #panel-series #station-series-annual-chart:not(.station-series-chart-empty),
  html[data-theme="dark"] #panel-series .ssb-chart-outer,
  html[data-theme="dark"] #panel-series .sshyd-outer{
    background:transparent !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
    border-color:rgba(255,255,255,.10) !important;
  }
  html[data-theme="dark"] #panel-series .station-series-location-live-map,
  html[data-theme="dark"] #panel-series #station-series-location-live-map,
  html[data-theme="dark"] #panel-series #station-series-location-map,
  html[data-theme="dark"] #panel-series #station-series-monthly-chart,
  html[data-theme="dark"] #panel-series #station-series-annual-chart{
    background:transparent !important;
  }
  html[data-theme="dark"] #panel-series .station-series-location-live-wrap .map-badge,
  html[data-theme="dark"] #panel-series .station-series-location-live-wrap .map-caption{
    background:rgba(10,12,16,.72) !important;
    border-color:rgba(255,255,255,.14) !important;
    color:#e7dece !important;
    box-shadow:none !important;
  }
  html[data-theme="dark"] #panel-series .station-series-location-live-map .leaflet-tile{
    filter:brightness(.82) saturate(.88) contrast(1.02) !important;
    opacity:1 !important;
  }
  html[data-theme="dark"] #panel-series .ssb-lbl,
  html[data-theme="dark"] #panel-series .ssb-ytick{
    color:#b6bfcf !important;
  }
  html[data-theme="dark"] #panel-series .ssb-note,
  html[data-theme="dark"] #panel-series .sshyd-note,
  html[data-theme="dark"] #panel-series .station-series-chart-meta{
    color:#cfd7e4 !important;
    border-top:none !important;
    padding-top:8px !important;
  }
  html[data-theme="dark"] #panel-series .station-series-layout{
    grid-template-columns:1fr !important;
    gap:20px !important;
    align-items:start !important;
  }
  html[data-theme="dark"] #panel-series .station-series-summary{
    width:100% !important;
    max-width:none !important;
  }
  html[data-theme="dark"] #panel-series .station-series-preview{
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    gap:18px !important;
  }
  html[data-theme="dark"] #panel-series #station-series-location-wrap .stations-panel-label,
  html[data-theme="dark"] #panel-series #station-series-monthly-heading,
  html[data-theme="dark"] #panel-series #station-series-annual-heading{
    text-align:center !important;
    width:100% !important;
    margin-bottom:10px !important;
  }
  html[data-theme="dark"] #panel-series #station-series-location-map,
  html[data-theme="dark"] #panel-series #station-series-monthly-chart,
  html[data-theme="dark"] #panel-series #station-series-annual-chart{
    width:calc(100% - 16px) !important;
    margin:0 auto !important;
  }
  html[data-theme="dark"] #panel-series .station-series-location-panel{
    width:calc(100% - 16px) !important;
    margin:0 auto !important;
  }
  html[data-theme="dark"] #panel-series .station-series-location-live-map{
    height:500px !important;
    min-height:500px !important;
  }
  html[data-theme="dark"] #panel-series .station-series-chart-empty{
    min-height:260px !important;
  }
  html[data-theme="dark"] #panel-series .station-series-card::before{
    content:none !important;
    display:none !important;
    background:none !important;
  }
  html[data-theme="dark"] #panel-series .station-series-card,
  html[data-theme="dark"] #panel-series .station-series-summary{
    background:transparent !important;
    border:none !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
  }
  html[data-theme="dark"] #panel-series .station-series-summary{
    position:relative !important;
    top:auto !important;
    padding:0 !important;
  }
  html[data-theme="dark"] #panel-series .station-series-preview-block{
    padding:0 8px !important;
    margin:0 !important;
  }
  html[data-theme="dark"] #panel-series .station-series-location-figure,
  html[data-theme="dark"] #panel-series .station-series-location-live-wrap,
  html[data-theme="dark"] #panel-series .station-series-location-meta,
  html[data-theme="dark"] #panel-series .station-series-chart-empty,
  html[data-theme="dark"] #panel-series .ssb-chart-outer,
  html[data-theme="dark"] #panel-series .sshyd-outer,
  html[data-theme="dark"] #panel-series #station-series-monthly-chart,
  html[data-theme="dark"] #panel-series #station-series-annual-chart{
    border:none !important;
    border-radius:0 !important;
  }
  @media(max-width:980px){
    html[data-theme="dark"] #panel-series .station-series-layout{
      grid-template-columns:1fr !important;
      gap:18px !important;
    }
    html[data-theme="dark"] #panel-series .station-series-location-live-map{
      height:360px !important;
      min-height:360px !important;
    }
    html[data-theme="dark"] #panel-series .station-series-chart-empty{
      min-height:220px !important;
    }
    html[data-theme="dark"] #panel-series .station-series-preview-block{
      padding:0 6px !important;
    }
    html[data-theme="dark"] #panel-series #station-series-location-map,
    html[data-theme="dark"] #panel-series #station-series-monthly-chart,
    html[data-theme="dark"] #panel-series #station-series-annual-chart,
    html[data-theme="dark"] #panel-series .station-series-location-panel{
      width:calc(100% - 12px) !important;
    }
  }

/* Audit hardening · 2026-05-03 */
html,
body{
  max-width:100%;
  overflow-x:hidden;
}

button[data-context-action][disabled]{
  opacity:.58 !important;
  cursor:not-allowed !important;
  pointer-events:none !important;
  border-color:rgba(255,255,255,.08) !important;
  color:rgba(226,232,240,.42) !important;
  background:rgba(255,255,255,.03) !important;
  text-decoration:line-through transparent !important;
  box-shadow:none !important;
}

@media (max-width:700px){
  html,
  body{
    width:100%;
    max-width:100%;
    overflow-x:hidden;
  }

  main,
  .container,
  .card,
  .tool-panel,
  .product-hero,
  .product-launcher,
  .product-launcher-inner,
  .product-capabilities,
  .product-how,
  .product-interface,
  .product-use-cases,
  .product-trust,
  .product-final-cta{
    min-width:0 !important;
    max-width:100% !important;
  }

  .product-hero .hero-wordmark{
    max-width:100% !important;
    font-size:clamp(64px, 18vw, 74px) !important;
    line-height:.84 !important;
    letter-spacing:-.052em !important;
    white-space:normal !important;
    overflow-wrap:anywhere !important;
    word-break:break-word !important;
  }

  .product-hero h2{
    max-width:17ch !important;
    font-size:clamp(26px, 7.4vw, 36px) !important;
    line-height:1.04 !important;
    letter-spacing:-.038em !important;
  }

  .tabs-shell,
  .tabs-inner{
    min-width:0 !important;
    max-width:100% !important;
  }

  .tabs-inner{
    width:100% !important;
    box-sizing:border-box !important;
    overflow-x:auto !important;
    padding-right:24px !important;
    -webkit-overflow-scrolling:touch;
  }

  .product-index-inner{
    width:100% !important;
    max-width:100% !important;
    box-sizing:border-box !important;
    overflow-x:auto !important;
    flex-wrap:nowrap !important;
    padding-right:24px !important;
    -webkit-overflow-scrolling:touch;
  }

  .tabs-report-btn,
  .tool-panel,
  .card,
  .series-observatory,
  .station-series-preview-block{
    max-width:100% !important;
  }

  .tabs-shell{
    grid-template-columns:1fr !important;
    gap:10px !important;
  }

  .tabs-inner{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:8px !important;
    overflow:visible !important;
    padding:0 !important;
    mask-image:none !important;
  }

  .tab-btn{
    width:100% !important;
    text-align:center !important;
    white-space:normal !important;
    min-height:46px !important;
  }

  .tabs-report-btn{
    display:none !important;
  }

  .card details,
  .tool-panel details{
    max-width:100%;
    overflow:hidden;
  }

  html,
  body{
    max-width:100%;
    overflow-x:hidden;
  }

  .card details > div[style*="overflow-x:auto"],
  .risk-stats-table-wrap,
  .table-wrap{
    display:block;
    width:100%;
    min-width:0;
    max-width:100%;
    overflow-x:auto !important;
    overflow-y:hidden;
    -webkit-overflow-scrolling:touch;
    contain:layout paint inline-size;
    clip-path:inset(0);
  }

  .method-table,
  .wb-result-table,
  .cn-table table,
  #risk-stats-head,
  #risk-stats-body{
    max-width:100%;
  }

  .method-table{
    min-width:720px;
  }

  .risk-stats-table-wrap .method-table{
    min-width:0 !important;
    width:100% !important;
    table-layout:auto;
    font-size:11px !important;
  }

  .risk-stats-table-wrap .method-table th,
  .risk-stats-table-wrap .method-table td{
    padding:8px 7px !important;
    white-space:normal !important;
    overflow-wrap:anywhere;
  }

  .risk-stats-table-wrap .method-table td:first-child{
    white-space:normal !important;
  }

  #risk-basin-grid{
    grid-template-columns:1fr !important;
    gap:12px !important;
  }

  #risk-basin-grid > *{
    min-width:0 !important;
    max-width:100% !important;
  }

  .station-series-table{
    display:block;
    width:100%;
    max-width:100%;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
  }

  .hydrorisk-wordmark-band,
  .hydrorisk-wordmark-inner,
  .hero-inner,
  .hero-copy,
  .product-hero-copy,
  .stations-layout,
  .station-series-layout,
  .risk-overview-layout,
  .risk-overview-bottom,
  .station-series-location-hero,
  .station-series-location-live-wrap,
  .station-series-preview,
  .map-overlay-context-list,
  .atlas-level-guide-list,
  .mghydro-map-wrap{
    min-width:0 !important;
    max-width:100% !important;
  }

  #basin-svg{
    min-width:0 !important;
    width:100% !important;
    height:auto !important;
  }

  .station-series-preview-block{
    padding:0 !important;
    min-width:0 !important;
    overflow:hidden !important;
  }

  #station-series-location-map,
  #station-series-monthly-chart,
  #station-series-annual-chart{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin:0 auto !important;
  }

  .ssb-chart-outer,
  .sshyd-outer{
    padding:12px 10px !important;
  }

  .ssb-wrap{
    gap:5px !important;
    margin-left:34px !important;
    height:162px !important;
  }

  .ssb-yaxis{
    left:-34px !important;
    width:30px !important;
    padding-right:4px !important;
  }

  .ssb-lbl,
  .ssb-ytick{
    font-size:8px !important;
  }

  .ssb-note,
  .sshyd-note,
  .station-series-chart-meta{
    font-size:10px !important;
    line-height:1.58 !important;
  }

  [style*="min-width:220px"],
  [style*="min-width:240px"],
  [style*="min-width:260px"],
  [style*="min-width:300px"],
  [style*="min-width:320px"]{
    min-width:0 !important;
  }

  .risk-summary-label,
  .risk-panel-label,
  .risk-panel-stat .label,
  .stations-panel-label,
  .stations-panel-stat .label,
  .stations-search-copy .label,
  .station-series-location-maphead .label,
  .station-series-location-meta .label{
    font-size:11.5px !important;
    letter-spacing:.07em !important;
  }

  .tool-sync-note,
  .risk-panel-stat .note,
  .stations-panel-stat .note{
    font-size:12px !important;
    line-height:1.55 !important;
  }
}

/* HydroRisk ONG moderna - shell visual only, maps untouched */
:root{
  --bg:#f5fbf8;
  --surface:#ffffff;
  --card:#ffffff;
  --border:rgba(18,33,29,.13);
  --accent:#12211d;
  --accent2:#087a63;
  --text:#12211d;
  --muted:#5b7068;
  --light:#eef8f4;
  --header:rgba(255,255,255,.86);
  --shadow-soft:0 18px 60px rgba(24,52,46,.10);
}
body{
  background:
    linear-gradient(180deg,#fbfefd 0%,#f5fbf8 46%,#ffffff 100%) !important;
  color:var(--text) !important;
}
.hydrorisk-field-container{
  opacity:.58 !important;
  mix-blend-mode:normal !important;
  background:
    linear-gradient(180deg, rgba(8,122,99,.072) 0%, rgba(11,111,159,.036) 30%, transparent 76%),
    repeating-linear-gradient(90deg, rgba(8,122,99,.024) 0 1px, transparent 1px 82px),
    repeating-linear-gradient(0deg, rgba(11,111,159,.016) 0 1px, transparent 1px 76px) !important;
}
header{
  background:rgba(255,255,255,.86) !important;
  border-bottom:1px solid rgba(18,33,29,.1) !important;
  box-shadow:none !important;
}
.header-inner{
  max-width:1220px !important;
  min-height:58px !important;
  padding:10px 18px !important;
}
.header-actions{
  justify-content:flex-end !important;
}
.algo-link{
  display:inline-flex !important;
  width:auto !important;
  order:0 !important;
  color:var(--accent) !important;
  background:#ffffff !important;
  border:1px solid rgba(18,33,29,.16) !important;
  border-radius:8px !important;
  padding:9px 13px !important;
  letter-spacing:.06em !important;
}
.back-link{
  color:#ffffff !important;
  background:var(--accent) !important;
  border-color:var(--accent) !important;
  border-radius:8px !important;
  padding:9px 13px !important;
}
.hero{
  background:transparent !important;
  padding:clamp(60px,8vw,112px) 18px clamp(42px,6vw,74px) !important;
  border-bottom:0 !important;
}
.hero::before{
  display:none !important;
}
.hero::after{
  left:max(18px,calc((100vw - 1180px)/2)) !important;
  right:max(18px,calc((100vw - 1180px)/2)) !important;
  height:1px !important;
  background:linear-gradient(90deg,transparent,rgba(18,33,29,.16),transparent) !important;
}
.hero-inner{
  max-width:1180px !important;
  grid-template-columns:minmax(0,1fr) !important;
}
.hero-wordmark{
  max-width:10ch !important;
  color:var(--accent) !important;
  font-size:clamp(4rem,10vw,9rem) !important;
  line-height:.84 !important;
  letter-spacing:-.075em !important;
}
.hero h2{
  max-width:15ch !important;
  color:var(--accent) !important;
  font-size:clamp(2rem,4.3vw,4.7rem) !important;
  line-height:.96 !important;
  letter-spacing:-.055em !important;
}
.hero p,
.subtitle,
.product-section-head p,
.product-capability-card p,
.product-how-step p,
.product-use-cases p,
.product-trust p,
.product-final-cta p{
  color:var(--muted) !important;
  line-height:1.66 !important;
}
.tools-launcher,
.product-launcher{
  background:transparent !important;
  border-bottom:0 !important;
}
.product-trust,
.product-capabilities,
.product-how,
.product-interface,
.product-use-cases,
.product-final-cta{
  padding:clamp(28px,4vw,48px) 0 !important;
  border-top:1px solid rgba(18,33,29,.1) !important;
}
.product-section-head h3,
.product-final-cta h3,
.tools-launcher-copy h3{
  color:var(--accent) !important;
  font-size:clamp(2rem,4.4vw,4.6rem) !important;
  line-height:.96 !important;
  letter-spacing:-.055em !important;
}
.tool-launch-label,
.hero-kicker,
.panel-section-kicker{
  color:var(--accent2) !important;
  letter-spacing:.12em !important;
}
.product-trust-grid article,
.product-capability-card,
.product-how-step,
.product-use-cases-grid article,
.product-interface-card,
.product-final-cta,
.card,
.metric,
.dur-card,
.social-panel,
.social-ngo-advisor,
.social-quality,
.social-impact,
.social-metric{
  color:var(--text) !important;
  background:rgba(255,255,255,.9) !important;
  border:1px solid var(--border) !important;
  border-radius:8px !important;
  box-shadow:none !important;
  backdrop-filter:blur(10px) !important;
}
.card{
  padding:clamp(18px,2.4vw,28px) !important;
}
.card h3,
.product-capability-card h4,
.product-how-step h4,
.product-use-cases-grid h4,
.product-trust-grid h4,
.social-panel h5,
.social-title h4{
  color:var(--accent) !important;
}
.tabs-bar{
  top:58px !important;
  background:rgba(255,255,255,.88) !important;
  border-bottom:1px solid rgba(18,33,29,.11) !important;
  backdrop-filter:blur(18px) !important;
}
.tab-btn{
  color:rgba(18,33,29,.7) !important;
  background:#ffffff !important;
  border:1px solid rgba(18,33,29,.12) !important;
  border-radius:8px !important;
}
.tab-btn.active,
.tab-btn:hover:not(.active){
  color:#ffffff !important;
  background:var(--accent) !important;
  border-color:var(--accent) !important;
}
.btn,
.product-btn-primary,
.btn-export{
  color:#ffffff !important;
  background:var(--accent) !important;
  border-color:var(--accent) !important;
  border-radius:8px !important;
}
.btn-ghost,
.period-btn,
.product-btn-secondary,
.social-action{
  color:var(--accent) !important;
  background:#ffffff !important;
  border:1px solid rgba(18,33,29,.14) !important;
  border-radius:8px !important;
}
.btn-ghost.selected,
.btn-ghost:hover,
.period-btn.on,
.product-btn-secondary:hover,
.social-action.primary{
  color:#ffffff !important;
  background:var(--accent2) !important;
  border-color:var(--accent2) !important;
}
.btn-ghost:disabled,
.btn-ghost:disabled:hover{
  color:#6b7280 !important;
  background:#f2f4f4 !important;
  border-color:rgba(18,33,29,.10) !important;
  opacity:.62;
  cursor:not-allowed;
}
input,
select,
textarea{
  color:var(--text) !important;
  background:#ffffff !important;
  border-color:rgba(18,33,29,.16) !important;
  border-radius:8px !important;
}
table th{
  color:var(--accent) !important;
  background:#eef8f4 !important;
}
table td{
  color:var(--muted) !important;
  background:#ffffff !important;
}
footer{
  color:var(--muted) !important;
  background:#ffffff !important;
  border-top:1px solid rgba(18,33,29,.1) !important;
}
footer a{
  color:var(--accent) !important;
}
footer strong,
footer [style*="color:rgba(255,255,255"],
footer [style*="color: rgba(255,255,255"],
footer [style*="color:#fff"],
footer [style*="color: #fff"],
footer [style*="color:#ffffff"],
footer [style*="color: #ffffff"]{
  color:var(--accent) !important;
}
@media(max-width:767px){
  .hero-wordmark{
    font-size:clamp(3rem,16vw,5.4rem) !important;
  }
  .hero h2,
  .product-section-head h3,
  .product-final-cta h3{
    font-size:clamp(2rem,11vw,3.4rem) !important;
  }
}

/* HydroRisk clear-shell stabilization b4 */
html,
html[data-theme="dark"]{
  color-scheme:light !important;
}

main{
  position:relative !important;
  z-index:1 !important;
}

header,
.tabs-bar{
  position:relative !important;
  z-index:1200 !important;
  pointer-events:auto !important;
}

.tabs-bar{
  position:sticky !important;
  top:58px !important;
  overflow-x:auto !important;
}

.tab-btn,
.risk-map-shell-btn,
.btn,
.btn-ghost,
.algo-link,
.back-link{
  pointer-events:auto !important;
}

.risk-map-drawer-right{
  z-index:1100 !important;
}

#risk-map-options.risk-map-drawer-right.is-open{
  display:grid !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  transform:translateX(0) !important;
  right:12px !important;
}

#risk-map-options.risk-map-drawer-right:not(.is-open){
  display:none !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  transform:translateX(0) !important;
}

button[data-context-action][disabled]{
  color:rgba(18,33,29,.42) !important;
  background:rgba(18,33,29,.04) !important;
  border-color:rgba(18,33,29,.12) !important;
}

.tab-btn:focus-visible,
.risk-map-shell-btn:focus-visible,
.btn:focus-visible,
.btn-ghost:focus-visible,
.algo-link:focus-visible,
.back-link:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible{
  outline:3px solid rgba(8,122,99,.72) !important;
  outline-offset:3px !important;
  box-shadow:0 0 0 6px rgba(8,122,99,.16) !important;
}

@media(max-width:760px){
  .header-actions{
    flex-wrap:wrap !important;
    justify-content:stretch !important;
  }

  .algo-link,
  .header-actions .back-link{
    width:100% !important;
    flex:1 1 100% !important;
    justify-content:center !important;
  }

  .product-final-cta{
    grid-template-columns:1fr !important;
  }

  .product-final-cta-actions{
    justify-content:stretch !important;
  }

  .product-final-cta-actions .product-btn{
    width:100% !important;
  }
}

#panel-mapa .risk-map-search-shell .tool-sync-note,
html[data-theme="dark"] #panel-mapa #risk-search-note,
html[data-theme="dark"] #panel-mapa #risk-overview-shell.is-hybrid .risk-map-search-shell .tool-sync-note{
  width:fit-content !important;
  max-width:min(100%, 760px) !important;
  padding:8px 11px !important;
  border:1px solid rgba(15,23,42,.12) !important;
  border-radius:12px !important;
  background:rgba(255,255,255,.88) !important;
  color:#13202f !important;
  box-shadow:0 10px 24px rgba(15,23,42,.14) !important;
  text-shadow:none !important;
  backdrop-filter:blur(8px);
}

@media(max-width:760px){
  #panel-mapa .risk-map-search-shell .tool-sync-note,
  html[data-theme="dark"] #panel-mapa #risk-search-note,
  html[data-theme="dark"] #panel-mapa #risk-overview-shell.is-hybrid .risk-map-search-shell .tool-sync-note{
    width:auto !important;
    max-width:100% !important;
    font-size:12px !important;
    line-height:1.45 !important;
  }
}

/* HydroRisk Atlas de la Tierra pass · 20260703 */
html{
  background:#FAF6EE !important;
}

body{
  background:transparent !important;
  color:#071D1A !important;
  font-family:var(--sans) !important;
}

#bg{
  position:fixed;
  inset:0;
  width:100%;
  height:100%;
  z-index:-1;
  pointer-events:none;
  display:block;
}

.hydrorisk-field-container{
  display:none !important;
}

body > :not(#bg):not(.hydrorisk-field-container):not(.tabs-bar){
  position:relative;
  z-index:1;
}

header,
.tabs-bar{
  background:rgba(252,248,240,.42) !important;
  border-color:rgba(229,220,200,.68) !important;
  box-shadow:none !important;
  backdrop-filter:blur(6px) saturate(1.05) !important;
  -webkit-backdrop-filter:blur(6px) saturate(1.05) !important;
}

.hero,
.tools-launcher,
.product-launcher,
main,
footer{
  background:transparent !important;
}

.hero-wordmark,
.hero h2,
.product-section-head h3,
.product-final-cta h3,
.tools-launcher-copy h3,
.card h2,
.card h3,
.card h4,
.risk-panel-name,
.stations-panel-name,
.social-title h4,
.meto-section h3,
.compliance-card h4{
  color:#071D1A !important;
}

.hero p,
.subtitle,
.product-section-head p,
.product-capability-card p,
.product-how-step p,
.product-use-cases p,
.product-trust p,
.product-final-cta p,
.card p,
.card li,
.risk-panel-sub,
.risk-panel-text,
.stations-panel-sub,
.stations-panel-text,
.stations-panel-stat .note,
.risk-panel-stat .note,
.tool-sync-note,
.meto-section p,
.meto-section li,
.social-panel p,
.social-panel li,
table td{
  color:#3F4E47 !important;
}

.tool-launch-label,
.hero-kicker,
.panel-section-kicker,
.risk-panel-label,
.stations-panel-label,
.stations-panel-stat .label,
.risk-panel-stat .label,
.cl,
.stat-label{
  color:#6E5A17 !important;
}

.product-trust-grid article,
.product-capability-card,
.product-how-step,
.product-use-cases-grid article,
.product-interface-card,
.product-final-cta,
.card,
.metric,
.dur-card,
.social-panel,
.social-ngo-advisor,
.social-quality,
.social-impact,
.social-metric,
.risk-summary-card,
.risk-overview-card,
.stations-overview-card,
.risk-panel-stat,
.stations-panel-stat,
.climate-card,
.panel-inline-note,
.panel-method-note,
.compliance-card,
.atlas-inline-card,
.guide-chart-card,
.history-panel,
.state-panel,
.map-info-panel,
.stations-panel,
.station-series-summary,
.station-series-explainer-card,
.station-series-location-panel,
.station-series-stats-panel{
  background:transparent !important;
  border:0 !important;
  border-top:1px solid rgba(201,162,39,.34) !important;
  border-radius:0 !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  color:#071D1A !important;
}

.risk-map-search-shell,
.stations-search-shell,
.station-series-toolbar,
.risk-toolbar,
.product-interface-toolbar,
.atlas-toolbar,
.report-preview-toolbar{
  background:rgba(252,248,240,.42) !important;
  border:1px solid rgba(229,220,200,.72) !important;
  box-shadow:none !important;
  backdrop-filter:blur(6px) saturate(1.05) !important;
  -webkit-backdrop-filter:blur(6px) saturate(1.05) !important;
}

.tab-btn,
.btn-ghost,
.period-btn,
.product-btn-secondary,
.social-action,
.algo-link,
.risk-map-shell-btn{
  color:#071D1A !important;
  background:rgba(252,248,240,.42) !important;
  border:1px solid rgba(133,114,71,.30) !important;
  box-shadow:none !important;
}

.tab-btn.active,
.tab-btn:hover:not(.active),
.btn,
.product-btn-primary,
.btn-export,
.btn-ghost.selected,
.period-btn.on,
.social-action.primary,
.back-link{
  color:#FFFFFF !important;
  background:#2E7091 !important;
  border-color:#2E7091 !important;
  box-shadow:none !important;
}

input,
select,
textarea{
  background:rgba(252,248,240,.54) !important;
  border:1px solid rgba(133,114,71,.34) !important;
  color:#071D1A !important;
  box-shadow:none !important;
}

table th{
  background:rgba(252,248,240,.46) !important;
  color:#071D1A !important;
}

table td{
  background:transparent !important;
}

.leaflet-container,
#risk-map,
#stations-map,
#station-series-location-map,
#mghydro-map,
#hydro-map{
  background:#D9E0D2 !important;
}

.tab-btn:focus-visible,
.risk-map-shell-btn:focus-visible,
.btn:focus-visible,
.btn-ghost:focus-visible,
.algo-link:focus-visible,
.back-link:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible{
  outline:2px solid #2E7091 !important;
  outline-offset:3px !important;
  box-shadow:0 0 0 5px rgba(46,112,145,.18) !important;
}

/* HydroRisk Atlas tool refinement b5 · 20260703 */
.hero{
  padding:clamp(42px, 5.8vw, 76px) 18px clamp(26px, 4vw, 46px) !important;
}

.hero-inner{
  max-width:1220px !important;
}

.hero-wordmark{
  font-size:clamp(3.2rem, 7.4vw, 7.4rem) !important;
  line-height:.9 !important;
  letter-spacing:0 !important;
}

.hero h2{
  max-width:18ch !important;
  font-size:clamp(1.85rem, 3.1vw, 3.55rem) !important;
  line-height:1.02 !important;
  letter-spacing:0 !important;
}

.hero p{
  max-width:760px !important;
  font-size:clamp(1rem, 1.12vw, 1.16rem) !important;
}

.product-index-bar{
  background:rgba(252,248,240,.46) !important;
  border-block:1px solid rgba(201,162,39,.28) !important;
  box-shadow:none !important;
  backdrop-filter:blur(6px) saturate(1.05) !important;
  -webkit-backdrop-filter:blur(6px) saturate(1.05) !important;
}

.product-index-inner{
  justify-content:flex-start !important;
  gap:0 !important;
}

.product-index-inner a{
  padding:13px 18px !important;
  border-right:1px solid rgba(201,162,39,.22) !important;
  color:#3F4E47 !important;
  border-radius:0 !important;
}

.product-index-inner a:hover{
  color:#071D1A !important;
  background:rgba(201,162,39,.10) !important;
}

.product-section-head{
  display:grid !important;
  grid-template-columns:minmax(180px,.34fr) minmax(0,1fr) !important;
  column-gap:clamp(22px,4vw,58px) !important;
  padding-top:18px !important;
  border-top:1px solid rgba(201,162,39,.34) !important;
}

.product-section-head .tool-launch-label{
  grid-column:1 !important;
  margin:0 !important;
}

.product-section-head h3,
.tools-launcher-copy h3,
.product-final-cta h3{
  grid-column:2 !important;
  max-width:14ch !important;
  font-size:clamp(1.9rem,3.4vw,3.65rem) !important;
  line-height:1 !important;
}

.product-section-head p{
  grid-column:2 !important;
  max-width:720px !important;
}

.product-capability-card,
.product-how-step,
.product-use-cases-grid article,
.product-trust-grid article,
.product-interface-card{
  padding:22px 0 0 !important;
  background:transparent !important;
  border:0 !important;
  border-top:1px solid rgba(201,162,39,.34) !important;
  border-radius:0 !important;
}

.tabs-shell{
  padding-top:18px !important;
  border-top:1px solid rgba(201,162,39,.32) !important;
}

.tabs-bar{
  top:58px !important;
  padding:8px 18px !important;
  gap:8px !important;
}

.tab-btn{
  min-height:38px !important;
  padding:8px 12px !important;
  font-size:12px !important;
  border-radius:999px !important;
}

main{
  padding-top:clamp(18px,2vw,28px) !important;
}

.tool-panel > .card,
.card.station-series-card{
  padding:clamp(16px,2vw,24px) !important;
  background:rgba(252,248,240,.28) !important;
  border:1px solid rgba(201,162,39,.24) !important;
  border-radius:0 !important;
}

.risk-overview-card,
.stations-overview-card,
.risk-summary-card,
.stations-panel,
.station-series-summary,
.panel-inline-note,
.panel-method-note,
.social-panel,
.compliance-card{
  background:rgba(252,248,240,.24) !important;
  border:1px solid rgba(201,162,39,.22) !important;
  border-radius:0 !important;
}

.risk-map-search-shell,
.stations-search-shell,
.station-series-toolbar,
.risk-toolbar,
.atlas-toolbar{
  background:rgba(252,248,240,.58) !important;
}

#risk-overview-map,
#stations-overview-map,
#station-series-location-map,
#mghydro-map,
#hydro-map{
  border:1px solid rgba(15,23,42,.18) !important;
  box-shadow:0 16px 42px rgba(15,23,42,.10) !important;
}

.risk-panel-name,
.stations-panel-name{
  font-size:clamp(1.45rem,2.2vw,2.35rem) !important;
}

@media(max-width:760px){
  .product-section-head{
    grid-template-columns:1fr !important;
  }

  .product-section-head .tool-launch-label,
  .product-section-head h3,
  .product-section-head p{
    grid-column:1 !important;
  }

  .hero-wordmark{
    font-size:clamp(2.8rem,15vw,4.9rem) !important;
  }

  .hero h2{
    font-size:clamp(1.7rem,9vw,2.7rem) !important;
  }
}

/* HydroRisk professional tool correction b6 · 20260703
   Rule: map/tool surfaces are readable; the atlas shader becomes background texture only. */
#bg{
  opacity:.16 !important;
  filter:saturate(.72) contrast(.9) brightness(1.06) !important;
}

body{
  background:rgba(250,246,238,.82) !important;
}

header{
  background:rgba(250,246,238,.78) !important;
  border-bottom:1px solid rgba(133,114,71,.24) !important;
  backdrop-filter:blur(8px) saturate(1.02) !important;
  -webkit-backdrop-filter:blur(8px) saturate(1.02) !important;
}

.hero{
  padding:34px 18px 26px !important;
  border-bottom:1px solid rgba(133,114,71,.20) !important;
}

.hero-wordmark{
  font-size:clamp(2.5rem, 5vw, 4.8rem) !important;
  line-height:.95 !important;
}

.hero h2{
  max-width:24ch !important;
  font-size:clamp(1.55rem, 2.35vw, 2.65rem) !important;
  line-height:1.05 !important;
}

.hero p{
  max-width:820px !important;
  color:#35443D !important;
}

.product-index-bar{
  background:rgba(250,246,238,.72) !important;
  border-block:1px solid rgba(133,114,71,.24) !important;
}

.product-index-inner a{
  color:#35443D !important;
}

.tools-launcher,
.product-launcher{
  background:transparent !important;
}

.product-trust,
.product-capabilities,
.product-how,
.product-interface,
.product-use-cases,
.product-final-cta{
  padding-block:clamp(22px,3.2vw,42px) !important;
}

.product-section-head{
  display:block !important;
  border-top:1px solid rgba(156,124,38,.30) !important;
}

.product-section-head h3,
.tools-launcher-copy h3,
.product-final-cta h3{
  max-width:20ch !important;
  font-size:clamp(1.65rem,2.6vw,2.95rem) !important;
  line-height:1.05 !important;
}

.product-section-head p{
  max-width:820px !important;
  color:#35443D !important;
}

.product-capability-card,
.product-how-step,
.product-use-cases-grid article,
.product-trust-grid article,
.product-interface-card{
  background:transparent !important;
  border:0 !important;
  border-top:1px solid rgba(156,124,38,.28) !important;
  padding:18px 0 0 !important;
}

.tabs-bar{
  background:rgba(250,246,238,.86) !important;
  border-bottom:1px solid rgba(133,114,71,.26) !important;
}

.tab-btn{
  background:rgba(250,246,238,.58) !important;
  border-color:rgba(133,114,71,.28) !important;
  color:#24342F !important;
}

.tab-btn.active,
.tab-btn:hover:not(.active){
  background:#24342F !important;
  border-color:#24342F !important;
  color:#fff !important;
}

.tool-panel > .card,
.card.station-series-card{
  background:rgba(250,246,238,.68) !important;
  border:1px solid rgba(133,114,71,.30) !important;
  border-radius:0 !important;
  backdrop-filter:blur(5px) saturate(1.02) !important;
  -webkit-backdrop-filter:blur(5px) saturate(1.02) !important;
}

.risk-overview-card,
.stations-overview-card,
.risk-summary-card,
.stations-panel,
.station-series-summary,
.panel-inline-note,
.panel-method-note,
.social-panel,
.compliance-card,
.climate-card,
.risk-panel-stat,
.stations-panel-stat,
.atlas-inline-card,
.guide-chart-card,
.history-panel,
.state-panel,
.map-info-panel,
.station-series-explainer-card,
.station-series-location-panel,
.station-series-stats-panel{
  background:rgba(250,246,238,.66) !important;
  border:1px solid rgba(133,114,71,.26) !important;
  border-radius:0 !important;
  box-shadow:none !important;
  backdrop-filter:blur(4px) saturate(1.02) !important;
  -webkit-backdrop-filter:blur(4px) saturate(1.02) !important;
}

.risk-map-search-shell,
.stations-search-shell,
.station-series-toolbar,
.risk-toolbar,
.atlas-toolbar,
.product-interface-toolbar{
  background:rgba(250,246,238,.78) !important;
  border:1px solid rgba(133,114,71,.30) !important;
  border-radius:0 !important;
}

#risk-overview-map,
#stations-overview-map,
#station-series-location-map,
#mghydro-map,
#hydro-map{
  background:#D8DED1 !important;
  border:1px solid rgba(26,43,38,.32) !important;
  box-shadow:none !important;
}

.risk-panel-name,
.stations-panel-name,
.card h2,
.card h3,
.meto-section h3{
  color:#071D1A !important;
}

.risk-panel-sub,
.risk-panel-text,
.stations-panel-sub,
.stations-panel-text,
.stations-panel-stat .note,
.risk-panel-stat .note,
.tool-sync-note,
.card p,
.card li,
.meto-section p,
.meto-section li{
  color:#35443D !important;
}

.btn,
.product-btn-primary,
.btn-export,
.back-link{
  background:#24342F !important;
  border-color:#24342F !important;
  color:#fff !important;
}

.btn-ghost,
.period-btn,
.product-btn-secondary,
.social-action,
.algo-link,
.risk-map-shell-btn{
  background:rgba(250,246,238,.72) !important;
  border-color:rgba(133,114,71,.32) !important;
  color:#24342F !important;
}

input,
select,
textarea{
  background:rgba(250,246,238,.82) !important;
  border-color:rgba(133,114,71,.34) !important;
}

table th{
  background:rgba(229,220,200,.58) !important;
}

table td{
  background:rgba(250,246,238,.38) !important;
}

@media(max-width:760px){
  .hero{
    padding-top:26px !important;
  }

  .product-index-inner{
    overflow-x:auto !important;
    flex-wrap:nowrap !important;
  }
}

/* HydroRisk Atlas contrast standard b8 · 20260705
   Rule: technical UI reads first; shader stays as quiet terrain texture. */
:root{
  --hr-paper: #FAF6EE;
  --hr-ink: #071D1A;
  --hr-ink-display: #061714;
  --hr-copy: #2E3D37;
  --hr-muted: #526159;
  --hr-gold: #C9A227;
  --hr-terra: #B0653A;
  --hr-water: #0E6BA8;
  --hr-border: rgba(133,114,71,.34);
  --hr-rule: rgba(156,124,38,.34);
  --hr-glass: rgba(250,246,238,.76);
  --hr-glass-strong: rgba(250,246,238,.84);
}

#bg{
  opacity:.13 !important;
  filter:saturate(.72) contrast(.86) brightness(1.08) !important;
}

body{
  background:rgba(250,246,238,.9) !important;
  color:var(--hr-ink) !important;
}

header{
  background:rgba(250,246,238,.82) !important;
  border-bottom:1px solid rgba(133,114,71,.26) !important;
  box-shadow:none !important;
}

.hero{
  background:transparent !important;
  border-bottom:1px solid rgba(156,124,38,.24) !important;
}

.hero-wordmark,
.hero h2,
.product-section-head h3,
.tools-launcher-copy h3,
.product-final-cta h3,
.card h2,
.card h3,
.meto-section h3,
.risk-panel-name,
.stations-panel-name{
  color:var(--hr-ink-display) !important;
  letter-spacing:0 !important;
  text-wrap:balance;
}

.hero p,
.product-section-head p,
.card p,
.card li,
.meto-section p,
.meto-section li,
.risk-panel-sub,
.risk-panel-text,
.stations-panel-sub,
.stations-panel-text,
.tool-sync-note,
.panel-method-note,
.panel-inline-note{
  color:var(--hr-copy) !important;
}

.tool-launch-label,
.result-label,
.metric-label,
.guide-chart-title,
.guide-morphometry-kicker,
label,
.risk-panel-stat .note,
.stations-panel-stat .note,
.station-series-meta,
.station-series-kicker{
  color:#766223 !important;
}

.product-index-bar,
.tabs-bar{
  background:rgba(250,246,238,.84) !important;
  border-color:rgba(133,114,71,.28) !important;
  box-shadow:none !important;
}

.product-index-inner a{
  color:var(--hr-copy) !important;
}

.product-index-inner a:hover,
.product-index-inner a:focus-visible{
  color:var(--hr-water) !important;
}

.product-capability-card,
.product-how-step,
.product-use-cases-grid article,
.product-trust-grid article,
.product-interface-card,
.tool-panel > .card,
.card.station-series-card,
.risk-overview-card,
.stations-overview-card,
.risk-summary-card,
.stations-panel,
.station-series-summary,
.social-panel,
.compliance-card,
.climate-card,
.risk-panel-stat,
.stations-panel-stat,
.atlas-inline-card,
.guide-chart-card,
.history-panel,
.state-panel,
.map-info-panel,
.station-series-explainer-card,
.station-series-location-panel,
.station-series-stats-panel{
  background:var(--hr-glass) !important;
  border:1px solid var(--hr-border) !important;
  border-radius:12px !important;
  box-shadow:none !important;
  backdrop-filter:blur(6px) saturate(1.02) !important;
  -webkit-backdrop-filter:blur(6px) saturate(1.02) !important;
}

.product-trust,
.product-capabilities,
.product-how,
.product-interface,
.product-use-cases,
.product-final-cta{
  background:transparent !important;
}

.product-section-head{
  border-top:1px solid var(--hr-rule) !important;
  padding-top:clamp(14px,1.8vw,22px) !important;
}

.risk-map-search-shell,
.stations-search-shell,
.station-series-toolbar,
.risk-toolbar,
.atlas-toolbar,
.product-interface-toolbar,
input,
select,
textarea{
  background:var(--hr-glass-strong) !important;
  border:1px solid var(--hr-border) !important;
  border-radius:12px !important;
  color:var(--hr-ink) !important;
  box-shadow:none !important;
}

.tab-btn,
.period-btn,
.btn-ghost,
.product-btn-secondary,
.social-action,
.algo-link,
.back-link,
.risk-map-shell-btn{
  background:rgba(250,246,238,.68) !important;
  border-color:var(--hr-border) !important;
  color:var(--hr-ink) !important;
  box-shadow:none !important;
}

.tab-btn.active,
.tab-btn:hover:not(.active),
.btn,
.product-btn-primary,
.btn-export{
  background:var(--hr-ink) !important;
  border-color:var(--hr-ink) !important;
  color:#fff !important;
  box-shadow:none !important;
}

.product-capability-card button,
.product-use-cases-grid a,
a[href^="#"]:not(.tab-btn){
  color:var(--hr-water) !important;
}

#risk-overview-map,
#stations-overview-map,
#station-series-location-map,
#mghydro-map,
#hydro-map,
.leaflet-container{
  background:#D7DED3 !important;
  border:1px solid rgba(26,43,38,.36) !important;
  box-shadow:none !important;
}

table{
  color:var(--hr-ink) !important;
}

table th{
  background:rgba(229,220,200,.68) !important;
  color:var(--hr-ink-display) !important;
}

table td{
  background:rgba(250,246,238,.44) !important;
  color:var(--hr-copy) !important;
  border-color:rgba(133,114,71,.18) !important;
}

.product-interface-map,
.product-interface-side,
.product-interface-shell{
  background:transparent !important;
  box-shadow:none !important;
}

.product-interface-river,
.product-interface-point{
  filter:saturate(.82) contrast(.92) !important;
}

.level-high,
.risk-high,
.danger,
[class*="risk-high"]{
  color:#7F2D22 !important;
}

@media(max-width:760px){
  .hero-wordmark{
    font-size:clamp(2.1rem,12vw,3.35rem) !important;
  }

  .hero h2{
    font-size:clamp(1.38rem,6vw,2.05rem) !important;
  }

  .product-capability-card,
  .product-how-step,
  .tool-panel > .card,
  .card.station-series-card{
    border-radius:12px !important;
  }
}

/* HydroRisk product layout correction b9 · 20260705
   Fix: the product hero must not push the actual tool below the fold. */
header{
  min-height:0 !important;
}

.header-inner{
  max-width:1680px !important;
  min-height:64px !important;
  height:64px !important;
  padding-inline:clamp(18px,4vw,72px) !important;
}

.header-actions{
  gap:12px !important;
}

.algo-link,
.back-link{
  min-height:38px !important;
  padding:8px 16px !important;
  border-radius:10px !important;
  font-size:12px !important;
  letter-spacing:.06em !important;
}

.back-link{
  background:rgba(250,246,238,.68) !important;
  color:var(--hr-ink) !important;
}

.product-hero.hero{
  position:relative !important;
  padding:clamp(30px,4.2vw,58px) clamp(18px,4vw,72px) clamp(28px,3.6vw,48px) !important;
  min-height:0 !important;
  overflow:hidden !important;
}

.product-hero > *,
.product-hero-inner{
  max-width:1680px !important;
}

.product-hero-copy{
  position:relative !important;
  z-index:1 !important;
  max-width:980px !important;
  padding:0 !important;
  gap:14px !important;
}

.product-hero .hero-wordmark{
  position:absolute !important;
  z-index:-1 !important;
  left:-6px !important;
  top:clamp(-26px,-1.5vw,-12px) !important;
  margin:0 !important;
  font-size:clamp(5.2rem,10.5vw,11rem) !important;
  line-height:.82 !important;
  color:rgba(7,29,26,.075) !important;
  text-shadow:none !important;
  letter-spacing:-.055em !important;
  pointer-events:none !important;
  user-select:none !important;
}

.product-hero h2{
  max-width:720px !important;
  margin-top:clamp(46px,7vw,86px) !important;
  font-size:clamp(2rem,3.25vw,3.65rem) !important;
  line-height:1.02 !important;
  letter-spacing:-.02em !important;
}

.product-hero p{
  max-width:920px !important;
  font-size:clamp(1rem,1.1vw,1.18rem) !important;
  line-height:1.58 !important;
}

.tabs-bar{
  position:sticky !important;
  top:0 !important;
  z-index:80 !important;
  padding:10px clamp(18px,4vw,72px) !important;
  border-top:1px solid rgba(156,124,38,.26) !important;
}

.tabs-shell{
  max-width:1680px !important;
  margin:0 auto !important;
  gap:16px !important;
}

.tabs-inner{
  gap:10px !important;
  padding:0 !important;
}

.tab-btn{
  min-height:42px !important;
  padding:10px 18px !important;
  border-radius:999px !important;
  font-size:14px !important;
}

main,
.hydrorisk-workspace-panels{
  max-width:1560px !important;
  padding:28px clamp(18px,4vw,72px) 76px !important;
}

.tool-panel > .card,
.card.station-series-card{
  padding:clamp(22px,2.8vw,34px) !important;
  border-radius:14px !important;
  background:rgba(250,246,238,.70) !important;
}

.card h3,
.risk-overview-top h4{
  font-size:clamp(1.65rem,2.4vw,2.55rem) !important;
  line-height:1.08 !important;
  max-width:920px !important;
}

.card .subtitle,
.risk-overview-top p{
  max-width:860px !important;
  font-size:clamp(.98rem,1vw,1.08rem) !important;
  line-height:1.62 !important;
}

.risk-overview-top{
  gap:18px !important;
  margin-bottom:22px !important;
}

.risk-overview-search{
  margin-top:0 !important;
}

.risk-overview-layout{
  gap:18px !important;
}

#risk-overview-map{
  min-height:500px !important;
}

@media(max-width:760px){
  .header-inner{
    height:auto !important;
    min-height:60px !important;
    padding:10px 16px !important;
  }

  .header-actions{
    width:100% !important;
    justify-content:flex-start !important;
    overflow-x:auto !important;
  }

  .product-hero.hero{
    padding:24px 16px 28px !important;
  }

  .product-hero .hero-wordmark{
    font-size:clamp(4rem,21vw,5.8rem) !important;
    top:-8px !important;
  }

  .product-hero h2{
    margin-top:44px !important;
    font-size:clamp(1.8rem,9.5vw,2.8rem) !important;
  }

  .tabs-bar{
    padding:10px 16px !important;
  }

  .tabs-shell{
    display:block !important;
  }

  .tabs-inner{
    overflow-x:auto !important;
    flex-wrap:nowrap !important;
    padding-bottom:4px !important;
  }

  main{
    padding:18px 16px 64px !important;
  }

  .tool-panel > .card,
  .card.station-series-card{
    padding:18px !important;
  }
}

/* HydroRisk Atlas restore b10 · 20260705
   Fix: restore animated Atlas background and remove landing-page wordmark treatment. */
html{
  background:#FAF6EE !important;
}

body{
  background:transparent !important;
}

#bg{
  position:fixed !important;
  inset:0 !important;
  width:100vw !important;
  height:100vh !important;
  z-index:0 !important;
  opacity:.52 !important;
  filter:saturate(.92) contrast(.96) brightness(1.02) !important;
  pointer-events:none !important;
  display:block !important;
}

.hydrorisk-field-container{
  display:none !important;
}

body > :not(#bg):not(.hydrorisk-field-container):not(.tabs-bar){
  position:relative !important;
  z-index:2 !important;
}

header{
  background:rgba(250,246,238,.58) !important;
  backdrop-filter:blur(7px) saturate(1.04) !important;
  -webkit-backdrop-filter:blur(7px) saturate(1.04) !important;
}

.header-inner{
  height:58px !important;
  min-height:58px !important;
}

.product-hero.hero{
  padding:26px clamp(18px,4vw,72px) 28px !important;
  background:transparent !important;
}

.product-hero-copy{
  max-width:1120px !important;
  gap:10px !important;
}

.product-hero .hero-wordmark{
  position:static !important;
  z-index:auto !important;
  margin:0 0 4px !important;
  font-family:var(--sans) !important;
  font-size:13px !important;
  line-height:1 !important;
  font-weight:900 !important;
  letter-spacing:.18em !important;
  text-transform:uppercase !important;
  color:#7D651B !important;
  text-shadow:none !important;
  pointer-events:auto !important;
  user-select:auto !important;
}

.product-hero h2{
  margin-top:0 !important;
  max-width:980px !important;
  font-size:clamp(2.05rem,3.2vw,3.45rem) !important;
  line-height:1.04 !important;
}

.product-hero p{
  max-width:1040px !important;
  font-size:clamp(.98rem,1.05vw,1.12rem) !important;
  line-height:1.54 !important;
}

.tabs-bar{
  background:rgba(250,246,238,.66) !important;
  backdrop-filter:blur(7px) saturate(1.04) !important;
  -webkit-backdrop-filter:blur(7px) saturate(1.04) !important;
  padding-block:8px !important;
}

.tab-btn{
  min-height:39px !important;
  padding:8px 16px !important;
}

main{
  padding-top:18px !important;
}

.tool-panel > .card,
.card.station-series-card{
  background:rgba(250,246,238,.58) !important;
  border-color:rgba(133,114,71,.30) !important;
  backdrop-filter:blur(5px) saturate(1.02) !important;
  -webkit-backdrop-filter:blur(5px) saturate(1.02) !important;
}

.risk-overview-card,
.stations-overview-card,
.risk-summary-card,
.stations-panel,
.station-series-summary,
.risk-panel-stat,
.stations-panel-stat,
.atlas-inline-card,
.guide-chart-card,
.history-panel,
.state-panel,
.map-info-panel,
.station-series-explainer-card,
.station-series-location-panel,
.station-series-stats-panel{
  background:rgba(250,246,238,.62) !important;
}

.risk-map-search-shell,
.stations-search-shell,
.station-series-toolbar,
.risk-toolbar,
.atlas-toolbar,
.product-interface-toolbar,
input,
select,
textarea{
  background:rgba(250,246,238,.74) !important;
}

#risk-overview-map,
#stations-overview-map,
#station-series-location-map,
#mghydro-map,
#hydro-map,
.leaflet-container{
  background:rgba(216,222,211,.86) !important;
}

@media(max-width:760px){
  .product-hero.hero{
    padding:22px 16px 24px !important;
  }

  .product-hero .hero-wordmark{
    font-size:12px !important;
  }

  .product-hero h2{
    font-size:clamp(1.8rem,8.8vw,2.65rem) !important;
  }

  .header-inner{
    height:auto !important;
    min-height:56px !important;
  }
}

/* HydroRisk visual reset b11 · 20260705
   Final rule: live Atlas first, strong product wordmark, lightweight technical UI. */
html{
  background:#FAF6EE !important;
}

body{
  background:transparent !important;
  color:#071D1A !important;
}

#bg{
  position:fixed !important;
  inset:0 !important;
  width:100vw !important;
  height:100vh !important;
  z-index:0 !important;
  display:block !important;
  opacity:.78 !important;
  filter:saturate(1.04) contrast(1.02) brightness(1.01) !important;
  pointer-events:none !important;
}

.hydrorisk-field-container{
  display:none !important;
}

body > :not(#bg):not(.hydrorisk-field-container):not(.tabs-bar){
  position:relative !important;
  z-index:2 !important;
}

header{
  background:rgba(250,246,238,.34) !important;
  border-bottom:1px solid rgba(133,114,71,.24) !important;
  box-shadow:none !important;
  backdrop-filter:blur(5px) saturate(1.03) !important;
  -webkit-backdrop-filter:blur(5px) saturate(1.03) !important;
}

.header-inner{
  max-width:1680px !important;
  height:56px !important;
  min-height:56px !important;
  padding-inline:clamp(18px,4vw,72px) !important;
}

.algo-link,
.back-link{
  min-height:36px !important;
  padding:8px 15px !important;
  border-radius:10px !important;
  background:rgba(250,246,238,.46) !important;
  border-color:rgba(133,114,71,.28) !important;
  color:#071D1A !important;
  box-shadow:none !important;
}

.product-hero.hero{
  position:relative !important;
  min-height:0 !important;
  padding:clamp(30px,4.4vw,58px) clamp(18px,4vw,72px) clamp(30px,4vw,52px) !important;
  background:transparent !important;
  border-bottom:1px solid rgba(156,124,38,.22) !important;
  overflow:hidden !important;
}

.product-hero::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:0 !important;
  display:block !important;
  pointer-events:none !important;
  background:
    linear-gradient(90deg, rgba(250,246,238,.24) 0%, rgba(250,246,238,.08) 55%, rgba(250,246,238,0) 100%),
    linear-gradient(180deg, rgba(250,246,238,.18) 0%, rgba(250,246,238,0) 78%) !important;
}

.product-hero > *,
.product-hero-inner{
  position:relative !important;
  z-index:1 !important;
  max-width:1680px !important;
}

.product-hero-copy{
  display:grid !important;
  grid-template-columns:minmax(360px,.54fr) minmax(520px,.86fr) !important;
  grid-template-rows:auto auto !important;
  column-gap:clamp(28px,4.2vw,76px) !important;
  row-gap:12px !important;
  align-items:end !important;
  max-width:1520px !important;
  padding:0 !important;
}

.product-hero .hero-wordmark{
  position:relative !important;
  grid-column:1 !important;
  grid-row:1 / span 2 !important;
  align-self:end !important;
  z-index:1 !important;
  margin:0 !important;
  font-family:var(--serif) !important;
  font-size:clamp(5.8rem,10.4vw,11.6rem) !important;
  font-weight:800 !important;
  line-height:.78 !important;
  letter-spacing:-.06em !important;
  text-transform:none !important;
  color:rgba(7,29,26,.72) !important;
  text-shadow:none !important;
  pointer-events:auto !important;
  user-select:auto !important;
}

.product-hero h2{
  grid-column:2 !important;
  grid-row:1 !important;
  align-self:end !important;
  margin:0 !important;
  max-width:800px !important;
  font-size:clamp(2.05rem,3.15vw,3.45rem) !important;
  line-height:1.03 !important;
  letter-spacing:-.018em !important;
  color:#071D1A !important;
}

.product-hero p{
  grid-column:2 !important;
  grid-row:2 !important;
  max-width:920px !important;
  margin:0 !important;
  font-size:clamp(.98rem,1.05vw,1.12rem) !important;
  line-height:1.55 !important;
  color:#2E3D37 !important;
}

.product-index-bar{
  background:transparent !important;
  border:0 !important;
  padding:0 clamp(18px,4vw,72px) 10px !important;
}

.product-index-inner{
  max-width:1680px !important;
  margin:0 auto !important;
  padding:10px 0 !important;
  border-top:1px solid rgba(156,124,38,.22) !important;
  border-bottom:1px solid rgba(156,124,38,.18) !important;
}

.product-index-inner a{
  color:#2E3D37 !important;
  background:transparent !important;
}

.tabs-bar{
  position:sticky !important;
  top:0 !important;
  z-index:90 !important;
  padding:8px clamp(18px,4vw,72px) !important;
  background:rgba(250,246,238,.28) !important;
  border-top:1px solid rgba(156,124,38,.20) !important;
  border-bottom:1px solid rgba(156,124,38,.18) !important;
  backdrop-filter:blur(5px) saturate(1.03) !important;
  -webkit-backdrop-filter:blur(5px) saturate(1.03) !important;
}

.tabs-shell{
  max-width:1680px !important;
  margin:0 auto !important;
}

.tabs-inner{
  gap:9px !important;
  padding:0 !important;
}

.tab-btn{
  min-height:38px !important;
  padding:8px 16px !important;
  border-radius:999px !important;
  background:rgba(250,246,238,.40) !important;
  border-color:rgba(133,114,71,.28) !important;
  color:#071D1A !important;
  box-shadow:none !important;
}

.tab-btn.active,
.tab-btn:hover:not(.active){
  background:#071D1A !important;
  border-color:#071D1A !important;
  color:#FFFFFF !important;
}

main{
  max-width:1560px !important;
  padding:18px clamp(18px,4vw,72px) 76px !important;
  background:transparent !important;
}

.tool-panel > .card,
.card.station-series-card{
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  padding:clamp(16px,2.2vw,26px) 0 !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

.card h3,
.risk-overview-top h4{
  max-width:940px !important;
  font-size:clamp(1.7rem,2.5vw,2.8rem) !important;
  line-height:1.06 !important;
  color:#071D1A !important;
}

.card .subtitle,
.risk-overview-top p{
  max-width:900px !important;
  color:#2E3D37 !important;
  font-size:clamp(.98rem,1vw,1.08rem) !important;
  line-height:1.62 !important;
}

.risk-overview-top{
  margin-bottom:18px !important;
}

.risk-map-search-shell,
.stations-search-shell,
.station-series-toolbar,
.risk-toolbar,
.atlas-toolbar,
.product-interface-toolbar,
input,
select,
textarea{
  background:rgba(250,246,238,.66) !important;
  border:1px solid rgba(133,114,71,.30) !important;
  border-radius:12px !important;
  box-shadow:none !important;
  backdrop-filter:blur(5px) saturate(1.02) !important;
  -webkit-backdrop-filter:blur(5px) saturate(1.02) !important;
}

.risk-overview-card,
.stations-overview-card,
.risk-summary-card,
.stations-panel,
.station-series-summary,
.social-panel,
.compliance-card,
.climate-card,
.risk-panel-stat,
.stations-panel-stat,
.atlas-inline-card,
.guide-chart-card,
.history-panel,
.state-panel,
.map-info-panel,
.station-series-explainer-card,
.station-series-location-panel,
.station-series-stats-panel{
  background:rgba(250,246,238,.50) !important;
  border:1px solid rgba(133,114,71,.24) !important;
  border-radius:12px !important;
  box-shadow:none !important;
  backdrop-filter:blur(4px) saturate(1.02) !important;
  -webkit-backdrop-filter:blur(4px) saturate(1.02) !important;
}

.risk-overview-map-wrap,
.stations-map-wrap,
.station-series-map-wrap{
  background:rgba(250,246,238,.38) !important;
  border:1px solid rgba(133,114,71,.24) !important;
  border-radius:14px !important;
  box-shadow:none !important;
}

#risk-overview-map,
#stations-overview-map,
#station-series-location-map,
#mghydro-map,
#hydro-map,
.leaflet-container{
  background:rgba(216,222,211,.72) !important;
  border:1px solid rgba(26,43,38,.32) !important;
  box-shadow:none !important;
}

.btn,
.product-btn-primary,
.btn-export{
  background:#071D1A !important;
  border-color:#071D1A !important;
  color:#FFFFFF !important;
  box-shadow:none !important;
}

.btn-ghost,
.period-btn,
.product-btn-secondary,
.social-action,
.risk-map-shell-btn{
  background:rgba(250,246,238,.48) !important;
  border-color:rgba(133,114,71,.30) !important;
  color:#071D1A !important;
  box-shadow:none !important;
}

table th{
  background:rgba(229,220,200,.54) !important;
  color:#071D1A !important;
}

table td{
  background:rgba(250,246,238,.32) !important;
  color:#2E3D37 !important;
}

@media(max-width:980px){
  .product-hero-copy{
    grid-template-columns:1fr !important;
  }

  .product-hero .hero-wordmark,
  .product-hero h2,
  .product-hero p{
    grid-column:1 !important;
    grid-row:auto !important;
  }

  .product-hero .hero-wordmark{
    font-size:clamp(4.4rem,16vw,7rem) !important;
  }
}

@media(max-width:760px){
  .header-inner{
    height:auto !important;
    min-height:56px !important;
    padding:10px 16px !important;
  }

  .header-actions{
    width:100% !important;
    overflow-x:auto !important;
  }

  .product-hero.hero{
    padding:22px 16px 24px !important;
  }

  .product-hero .hero-wordmark{
    font-size:clamp(3.7rem,18vw,5.4rem) !important;
  }

  .product-hero h2{
    font-size:clamp(1.7rem,8.8vw,2.55rem) !important;
  }

  .tabs-bar{
    padding:8px 16px !important;
  }

  .tabs-inner{
    overflow-x:auto !important;
    flex-wrap:nowrap !important;
    padding-bottom:3px !important;
  }

  main{
    padding:14px 16px 64px !important;
  }
}

/* HydroRisk transparent reset b12 · 20260705
   User directive: eliminate visual boxes; keep the Atlas field visible and use rules, not panels. */
#bg{
  opacity:.94 !important;
  filter:saturate(1.08) contrast(1.04) brightness(1) !important;
}

header,
.product-hero.hero,
.product-hero::before,
.product-index-bar,
.product-index-inner,
.tabs-bar,
main,
footer{
  background:transparent !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

header{
  border-bottom:1px solid rgba(156,124,38,.22) !important;
}

.header-inner{
  max-width:1760px !important;
}

.algo-link,
.back-link,
.btn,
.btn-ghost,
.btn-export,
.period-btn,
.region-btn,
.tab-btn,
.product-btn-primary,
.product-btn-secondary,
.social-action,
.risk-map-shell-btn{
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  color:#071D1A !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

.algo-link,
.back-link{
  min-height:34px !important;
  padding:6px 0 !important;
  border-bottom:1px solid rgba(7,29,26,.46) !important;
}

.product-hero.hero{
  min-height:0 !important;
  padding:clamp(28px,4vw,54px) clamp(20px,4vw,76px) clamp(30px,4vw,52px) !important;
  border-bottom:1px solid rgba(156,124,38,.22) !important;
  overflow:hidden !important;
}

.product-hero-copy{
  display:block !important;
  max-width:1560px !important;
}

.product-hero .hero-wordmark{
  position:relative !important;
  display:block !important;
  margin:0 0 clamp(10px,1.4vw,18px) !important;
  font-family:var(--serif) !important;
  font-size:clamp(6.2rem,13.3vw,14.2rem) !important;
  font-weight:800 !important;
  line-height:.72 !important;
  letter-spacing:-.065em !important;
  text-transform:none !important;
  color:rgba(7,29,26,.58) !important;
  text-shadow:none !important;
}

.product-hero h2{
  display:block !important;
  max-width:980px !important;
  margin:0 !important;
  font-size:clamp(2rem,3.05vw,3.35rem) !important;
  line-height:1.02 !important;
  letter-spacing:-.018em !important;
  color:#071D1A !important;
}

.product-hero p{
  display:block !important;
  max-width:1080px !important;
  margin:clamp(12px,1.4vw,18px) 0 0 !important;
  font-size:clamp(.98rem,1.05vw,1.12rem) !important;
  line-height:1.55 !important;
  color:#2E3D37 !important;
}

.product-index-inner{
  border:0 !important;
  border-bottom:1px solid rgba(156,124,38,.24) !important;
}

.tabs-bar{
  position:sticky !important;
  top:0 !important;
  z-index:90 !important;
  padding:0 clamp(20px,4vw,76px) !important;
  border-top:0 !important;
  border-bottom:1px solid rgba(156,124,38,.22) !important;
}

.tabs-shell{
  max-width:1760px !important;
  margin:0 auto !important;
}

.tabs-inner{
  gap:clamp(16px,2vw,30px) !important;
  padding:14px 0 12px !important;
  align-items:center !important;
}

.tab-btn{
  min-height:auto !important;
  padding:0 0 7px !important;
  border-bottom:2px solid transparent !important;
  font-size:clamp(.78rem,.9vw,.92rem) !important;
  line-height:1.1 !important;
  color:#253832 !important;
}

.tab-btn.active,
.tab-btn:hover:not(.active){
  background:transparent !important;
  border-color:transparent !important;
  border-bottom-color:#071D1A !important;
  color:#071D1A !important;
}

main{
  max-width:1760px !important;
  padding:clamp(26px,3vw,48px) clamp(20px,4vw,76px) 84px !important;
}

.tool-panel > .card,
.card,
.card.station-series-card,
.risk-overview-card,
.stations-overview-card,
.risk-summary-card,
.stations-panel,
.station-series-summary,
.social-panel,
.compliance-card,
.climate-card,
.risk-panel-stat,
.stations-panel-stat,
.atlas-inline-card,
.guide-chart-card,
.history-panel,
.state-panel,
.map-info-panel,
.station-series-explainer-card,
.station-series-location-panel,
.station-series-stats-panel,
.station-series-card,
.product-interface-card,
.panel-inline-note,
.panel-method-note,
.social-ngo-advisor,
.social-quality,
.social-impact,
.social-metric{
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

.tool-panel > .card,
.card.station-series-card{
  padding:0 !important;
}

.risk-overview-card,
.stations-overview-card,
.risk-summary-card,
.station-series-summary,
.social-panel,
.climate-card,
.compliance-card,
.history-panel,
.state-panel{
  border-top:1px solid rgba(156,124,38,.24) !important;
  padding-top:clamp(16px,2vw,28px) !important;
}

.risk-overview-top{
  margin-bottom:clamp(20px,2.4vw,34px) !important;
}

.card h3,
.risk-overview-top h4{
  max-width:1040px !important;
  font-size:clamp(1.9rem,2.8vw,3.15rem) !important;
}

.card .subtitle,
.risk-overview-top p{
  max-width:1120px !important;
}

.risk-map-search-shell,
.stations-search-shell,
.station-series-toolbar,
.risk-toolbar,
.atlas-toolbar,
.product-interface-toolbar,
.report-preview-toolbar{
  background:transparent !important;
  border:0 !important;
  border-top:1px solid rgba(156,124,38,.24) !important;
  border-bottom:1px solid rgba(156,124,38,.18) !important;
  border-radius:0 !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

input,
select,
textarea,
.river-search-box,
.river-search-box input{
  background:rgba(250,246,238,.16) !important;
  border:0 !important;
  border-bottom:1px solid rgba(7,29,26,.38) !important;
  border-radius:0 !important;
  box-shadow:none !important;
  color:#071D1A !important;
}

.btn-ghost,
.period-btn,
.region-btn{
  padding:7px 0 !important;
  border-bottom:1px solid rgba(7,29,26,.34) !important;
}

.btn-ghost.selected,
.period-btn.on,
.region-btn.active,
.social-action.primary{
  background:transparent !important;
  border-color:transparent !important;
  border-bottom-color:#2E7091 !important;
  color:#0B4F65 !important;
}

.btn,
.btn-export,
.product-btn-primary{
  padding:8px 0 !important;
  border-bottom:1px solid #071D1A !important;
}

.risk-overview-map-wrap,
.stations-map-wrap,
.station-series-map-wrap{
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}

#risk-overview-map,
#stations-overview-map,
#station-series-location-map,
#mghydro-map,
#hydro-map,
.leaflet-container{
  border:1px solid rgba(26,43,38,.34) !important;
  border-radius:10px !important;
  box-shadow:none !important;
}

table,
table th,
table td{
  background:transparent !important;
  box-shadow:none !important;
}

table th{
  border-bottom:1px solid rgba(7,29,26,.28) !important;
}

table td{
  color:#2E3D37 !important;
}

@media(max-width:980px){
  .product-hero .hero-wordmark{
    font-size:clamp(4.7rem,17vw,8rem) !important;
  }
}

@media(max-width:760px){
  .product-hero.hero{
    padding:24px 16px 28px !important;
  }

  .product-hero .hero-wordmark{
    font-size:clamp(3.8rem,19vw,5.8rem) !important;
    letter-spacing:-.055em !important;
  }

  .product-hero h2{
    font-size:clamp(1.65rem,8.2vw,2.5rem) !important;
  }

  .tabs-bar{
    padding:0 16px !important;
  }

  .tabs-inner{
    gap:18px !important;
    overflow-x:auto !important;
    flex-wrap:nowrap !important;
    padding:12px 0 10px !important;
  }

  main{
    padding:22px 16px 64px !important;
  }
}

/* HydroRisk technical shell b21 · 20260716
   Public demonstrator: compact task navigation, map-first reading and explicit scope. */
html,
body{
  overflow-x:clip !important;
}

#bg{
  opacity:.94 !important;
  filter:saturate(1.04) contrast(1.03) brightness(1.01) !important;
}

.hydrorisk-shell-header{
  min-height:64px !important;
  background:rgba(250,246,238,.42) !important;
  border-bottom:1px solid rgba(133,114,71,.24) !important;
  backdrop-filter:blur(8px) saturate(1.02) !important;
  -webkit-backdrop-filter:blur(8px) saturate(1.02) !important;
}

.hydrorisk-shell-header .header-inner{
  width:100% !important;
  max-width:1760px !important;
  min-height:64px !important;
  height:64px !important;
  margin:0 auto !important;
  padding:0 clamp(16px,4vw,72px) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  flex-wrap:nowrap !important;
  gap:24px !important;
}

.hydrorisk-shell-brand{
  min-width:0;
  display:grid;
  grid-template-columns:auto auto;
  align-items:baseline;
  gap:10px;
  color:#071D1A !important;
  text-decoration:none !important;
  white-space:nowrap;
}

.hydrorisk-shell-brand span{
  font-family:var(--sans) !important;
  font-size:.69rem !important;
  font-weight:700 !important;
  line-height:1 !important;
  text-transform:uppercase;
  letter-spacing:0 !important;
  color:#52605A !important;
}

.hydrorisk-shell-brand strong{
  font-family:var(--serif) !important;
  font-size:1.55rem !important;
  font-weight:700 !important;
  line-height:1 !important;
  letter-spacing:0 !important;
}

.hydrorisk-shell-header .header-actions{
  width:auto !important;
  margin:0 0 0 auto !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  flex-wrap:nowrap !important;
  gap:24px !important;
  overflow:visible !important;
}

.hydrorisk-shell-header .algo-link,
.hydrorisk-shell-header .back-link{
  min-height:36px !important;
  padding:8px 0 7px !important;
  display:inline-flex !important;
  align-items:center !important;
  gap:7px !important;
  border:0 !important;
  border-bottom:1px solid transparent !important;
  color:#21332D !important;
  font-size:.76rem !important;
  font-weight:700 !important;
  line-height:1 !important;
  letter-spacing:0 !important;
  text-transform:uppercase !important;
  white-space:nowrap !important;
  text-decoration:none !important;
}

.hydrorisk-shell-header .algo-link:hover,
.hydrorisk-shell-header .back-link:hover{
  border-bottom-color:#9C7C26 !important;
  color:#071D1A !important;
}

.nav-label-short{
  display:none;
}

.product-hero.hero{
  min-height:0 !important;
  padding:clamp(26px,3vw,44px) clamp(16px,4vw,72px) clamp(28px,3vw,46px) !important;
  background:transparent !important;
  border-bottom:0 !important;
  overflow:visible !important;
}

.product-hero-inner{
  max-width:1760px !important;
  margin:0 auto !important;
}

.product-hero-copy{
  max-width:none !important;
  padding:0 !important;
  display:grid !important;
  grid-template-columns:minmax(560px,.95fr) minmax(0,1.05fr) !important;
  grid-template-rows:auto !important;
  align-items:end !important;
  column-gap:clamp(34px,4vw,64px) !important;
  row-gap:0 !important;
}

.product-hero .hero-wordmark{
  position:static !important;
  grid-column:1 !important;
  grid-row:1 !important;
  align-self:end !important;
  margin:0 !important;
  font-family:var(--serif) !important;
  font-size:clamp(5.8rem,7.8vw,7.1rem) !important;
  font-weight:700 !important;
  line-height:.82 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
  color:rgba(7,29,26,.78) !important;
  white-space:nowrap !important;
  text-shadow:none !important;
}

.hero-intro{
  grid-column:2;
  grid-row:1;
  align-self:end;
  max-width:780px;
}

.hydrorisk-status{
  margin:0 0 14px;
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:7px 17px;
  color:#4A5B54;
  font-family:var(--mono) !important;
  font-size:.69rem !important;
  font-variant-numeric:tabular-nums;
  line-height:1.25;
  letter-spacing:0 !important;
  text-transform:uppercase;
}

.hydrorisk-status span{
  position:relative;
}

.hydrorisk-status span + span::before{
  content:"";
  position:absolute;
  top:.42em;
  left:-10px;
  width:3px;
  height:3px;
  border-radius:50%;
  background:#9C7C26;
}

.product-hero h2{
  margin:0 !important;
  max-width:720px !important;
  font-family:var(--serif) !important;
  font-size:clamp(2rem,3vw,3.35rem) !important;
  font-weight:700 !important;
  line-height:1.02 !important;
  letter-spacing:0 !important;
  color:#071D1A !important;
}

.product-hero p{
  margin:14px 0 0 !important;
  max-width:700px !important;
  color:#31433C !important;
  font-size:clamp(.94rem,1vw,1.05rem) !important;
  line-height:1.55 !important;
}

.product-index-bar,
.product-launcher{
  display:none !important;
}

.tabs-bar{
  position:sticky !important;
  top:0 !important;
  z-index:900 !important;
  padding:0 clamp(16px,4vw,72px) !important;
  background:rgba(250,246,238,.72) !important;
  border-top:1px solid rgba(156,124,38,.24) !important;
  border-bottom:1px solid rgba(133,114,71,.28) !important;
  backdrop-filter:blur(9px) saturate(1.02) !important;
  -webkit-backdrop-filter:blur(9px) saturate(1.02) !important;
  overflow:visible !important;
}

.tabs-shell{
  width:100% !important;
  max-width:1760px !important;
  margin:0 auto !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:22px !important;
}

.tabs-inner{
  min-width:0 !important;
  padding:10px 0 9px !important;
  display:flex !important;
  align-items:stretch !important;
  flex-wrap:nowrap !important;
  gap:0 !important;
  overflow-x:auto !important;
  overscroll-behavior-inline:contain;
  scrollbar-width:thin;
}

.tool-tab-group{
  flex:0 0 auto;
  min-width:max-content;
  padding:0 20px;
  display:grid;
  align-content:start;
  gap:5px;
  border-left:1px solid rgba(133,114,71,.22);
}

.tool-tab-group:first-child{
  padding-left:0;
  border-left:0;
}

.tool-tab-group-label{
  color:#6A716C;
  font-family:var(--sans) !important;
  font-size:.61rem !important;
  font-weight:700 !important;
  line-height:1 !important;
  letter-spacing:0 !important;
  text-transform:uppercase;
  white-space:nowrap;
}

.tool-tab-actions{
  display:flex;
  align-items:center;
  gap:15px;
}

.tab-btn{
  min-height:26px !important;
  padding:3px 0 5px !important;
  border:0 !important;
  border-bottom:2px solid transparent !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:#32433D !important;
  font-size:.78rem !important;
  font-weight:700 !important;
  line-height:1.1 !important;
  letter-spacing:0 !important;
  white-space:nowrap !important;
}

.tab-btn:hover:not(.active){
  border-bottom-color:rgba(156,124,38,.48) !important;
  color:#071D1A !important;
}

.tab-btn.active{
  border-bottom-color:#9C7C26 !important;
  color:#071D1A !important;
}

.tabs-report-btn{
  align-self:center !important;
  margin:0 !important;
}

.tabs-report-btn:disabled{
  display:none !important;
}

main{
  width:100% !important;
  max-width:1760px !important;
  margin:0 auto !important;
  padding:clamp(20px,2.5vw,34px) clamp(16px,4vw,72px) 84px !important;
  background:transparent !important;
}

.tool-panel > .card,
.card.station-series-card{
  padding:0 !important;
}

#panel-mapa > .card > h3{
  margin:0 0 8px !important;
  font-size:clamp(2rem,2.7vw,3rem) !important;
  line-height:1.03 !important;
  letter-spacing:0 !important;
}

#panel-mapa > .card > .subtitle{
  margin:0 0 14px !important;
  max-width:1000px !important;
  font-size:.98rem !important;
  line-height:1.52 !important;
}

#panel-mapa > .card > .risk-toolbar,
#panel-mapa > .card > .risk-section-heading,
#panel-mapa > .card > #risk-basin-grid,
#panel-mapa > .card > #risk-basin-grid + details{
  display:none !important;
}

#panel-mapa > .card > .stations-overview-card{
  margin-top:clamp(32px,4vw,58px) !important;
  padding-top:clamp(20px,2.5vw,34px) !important;
  border-top:1px solid rgba(156,124,38,.28) !important;
}

.risk-overview-card{
  margin-top:16px !important;
  padding-top:18px !important;
  border-top:1px solid rgba(156,124,38,.28) !important;
}

.risk-overview-top{
  margin:0 0 16px !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:end !important;
  gap:24px !important;
}

.risk-overview-top h4{
  margin:5px 0 7px !important;
  max-width:900px !important;
  font-size:clamp(1.55rem,2.2vw,2.35rem) !important;
  line-height:1.06 !important;
  letter-spacing:0 !important;
}

.risk-overview-top p{
  margin:0 !important;
  max-width:980px !important;
  font-size:.91rem !important;
  line-height:1.5 !important;
}

.risk-overview-eyebrow,
.stations-overview-eyebrow,
.risk-panel-label,
.stations-panel-label{
  color:#5B675F !important;
  letter-spacing:0 !important;
}

.risk-mode-switch{
  align-self:end !important;
  display:flex !important;
  flex-wrap:wrap !important;
  justify-content:flex-end !important;
  gap:13px !important;
}

.risk-mode-btn{
  padding:5px 0 6px !important;
  border:0 !important;
  border-bottom:2px solid transparent !important;
  border-radius:0 !important;
  background:transparent !important;
  color:#4A5B54 !important;
  box-shadow:none !important;
  letter-spacing:0 !important;
}

.risk-mode-btn:hover,
.risk-mode-btn.active{
  border-bottom-color:#9C7C26 !important;
  background:transparent !important;
  color:#071D1A !important;
}

.btn-ghost.selected,
.period-btn.on,
.region-btn.active,
.social-action.primary{
  background:transparent !important;
  border-color:transparent !important;
  border-bottom-color:#9C7C26 !important;
  color:#071D1A !important;
}

.risk-map-search-shell,
.stations-search-shell,
.station-series-toolbar,
.risk-toolbar,
.report-preview-toolbar{
  background:rgba(250,246,238,.72) !important;
  border:1px solid rgba(133,114,71,.28) !important;
  border-radius:10px !important;
  backdrop-filter:blur(7px) saturate(1.02) !important;
  -webkit-backdrop-filter:blur(7px) saturate(1.02) !important;
}

.risk-map-search-shell{
  padding:10px !important;
}

.risk-overview-map-wrap,
.stations-map-wrap,
.station-series-map-wrap{
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  overflow:hidden !important;
}

#risk-overview-map,
#stations-overview-map,
#station-series-location-map,
#mghydro-map,
#hydro-map,
.leaflet-container{
  border:0 !important;
  border-radius:0 !important;
}

.stations-panel,
.result-box,
.report-preview-shell{
  background:rgba(250,246,238,.72) !important;
  border:1px solid rgba(133,114,71,.28) !important;
  border-radius:10px !important;
  box-shadow:none !important;
  backdrop-filter:blur(7px) saturate(1.02) !important;
  -webkit-backdrop-filter:blur(7px) saturate(1.02) !important;
}

.risk-municipality-summary,
.station-series-summary{
  padding:18px 0 0 !important;
  background:transparent !important;
  border:0 !important;
  border-top:1px solid rgba(156,124,38,.28) !important;
  border-radius:0 !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

.risk-overview-summary{
  margin-top:18px !important;
  padding-top:16px !important;
  border-top:1px solid rgba(156,124,38,.24) !important;
}

.risk-overview-summary > *,
.risk-panel-stat,
.stations-panel-stat{
  background:transparent !important;
  border:0 !important;
  border-top:1px solid rgba(133,114,71,.26) !important;
  border-radius:0 !important;
  box-shadow:none !important;
}

.risk-service-ladder{
  margin:18px 0 0 !important;
  padding:14px 0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:24px !important;
  border-top:1px solid rgba(156,124,38,.22) !important;
  border-bottom:1px solid rgba(156,124,38,.22) !important;
  background:transparent !important;
}

.risk-service-bridge-copy{
  min-width:0;
  display:grid;
  grid-template-columns:auto auto minmax(200px,1fr);
  align-items:baseline;
  gap:8px 16px;
}

.risk-service-ladder-kicker{
  color:#6A6250 !important;
  font-size:.65rem !important;
  font-weight:700 !important;
  letter-spacing:0 !important;
  text-transform:uppercase;
  white-space:nowrap;
}

.risk-service-bridge-copy strong{
  color:#071D1A;
  font-family:var(--serif);
  font-size:1rem;
  white-space:nowrap;
}

.risk-service-bridge-copy > span:last-child{
  color:#4A5B54;
  font-size:.82rem;
  line-height:1.4;
}

.risk-service-action,
main a:not(.leaflet-control a){
  color:#174D43 !important;
}

.risk-service-action{
  flex:0 0 auto;
  padding:6px 0;
  border-bottom:1px solid #174D43;
  font-size:.76rem;
  font-weight:700;
  text-decoration:none;
  white-space:nowrap;
}

.calculation-status{
  text-align:right;
}

.calculation-status p{
  margin:0 0 6px;
  color:#69736E;
  font-size:.67rem;
  font-weight:700;
  line-height:1;
  letter-spacing:0;
  text-transform:uppercase;
}

.calculation-status span{
  display:inline-block;
  padding:5px 0;
  border-bottom:1px solid #9C7C26;
  color:#071D1A;
  font-size:.78rem;
  font-weight:700;
}

button:focus-visible,
a:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
[tabindex]:focus-visible{
  outline:2px solid #9C7C26 !important;
  outline-offset:3px !important;
}

@media(max-width:1100px){
  .product-hero-copy{
    grid-template-columns:minmax(430px,.9fr) minmax(0,1.1fr) !important;
    gap:36px !important;
  }

  .product-hero .hero-wordmark{
    font-size:4.8rem !important;
  }

  .tool-tab-group{
    padding-right:17px;
    padding-left:17px;
  }
}

@media(max-width:1200px){
  .tabs-report-btn{
    width:34px !important;
    min-width:34px !important;
    height:34px !important;
    padding:0 !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    justify-self:end !important;
    border-bottom:1px solid #071D1A !important;
    font-size:0 !important;
  }

  .tabs-report-btn:disabled{
    display:none !important;
  }
}

@media(max-width:980px){
  .product-hero-copy{
    display:block !important;
  }

  .product-hero .hero-wordmark{
    margin-bottom:20px !important;
  }

  .hero-intro{
    display:block !important;
  }
}

@media(max-width:760px){
  .hydrorisk-shell-header,
  .hydrorisk-shell-header .header-inner{
    min-height:60px !important;
    height:60px !important;
  }

  .hydrorisk-shell-header .header-inner{
    padding:0 16px !important;
    gap:12px !important;
  }

  .hydrorisk-shell-brand{
    grid-template-columns:1fr;
    gap:2px;
  }

  .hydrorisk-shell-brand span{
    font-size:.57rem !important;
  }

  .hydrorisk-shell-brand strong{
    font-size:1.23rem !important;
  }

  .hydrorisk-shell-header .header-actions{
    gap:14px !important;
  }

  .hydrorisk-shell-header .algo-link,
  .hydrorisk-shell-header .back-link{
    min-height:32px !important;
    font-size:.68rem !important;
  }

  .hydrorisk-shell-header .back-link span{
    display:inline !important;
  }

  .nav-label-full{
    display:none;
  }

  .nav-label-short{
    display:inline;
  }

  .product-hero.hero{
    padding:23px 16px 25px !important;
  }

  .product-hero-copy{
    display:block !important;
  }

  .product-hero .hero-wordmark{
    margin:0 0 17px !important;
    font-size:clamp(3.7rem,17vw,4.4rem) !important;
    line-height:.82 !important;
  }

  .hydrorisk-status{
    margin-bottom:9px;
    gap:5px 15px;
    font-size:.59rem !important;
  }

  .product-hero h2{
    font-size:clamp(1.65rem,7.5vw,2.05rem) !important;
    line-height:1.03 !important;
  }

  .product-hero p{
    margin-top:10px !important;
    font-size:.88rem !important;
    line-height:1.48 !important;
  }

  .tabs-bar{
    padding:0 16px !important;
  }

  .tabs-shell{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto !important;
    align-items:center !important;
    gap:8px !important;
  }

  .tabs-inner{
    padding:8px 0 7px !important;
  }

  .tool-tab-group{
    min-height:48px;
    padding:0 14px;
    gap:4px;
  }

  .tool-tab-group-label{
    font-size:.55rem !important;
  }

  .tool-tab-actions{
    gap:13px;
  }

  .tab-btn{
    min-height:24px !important;
    font-size:.73rem !important;
  }

  .risk-map-search-row{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto auto !important;
    align-items:center !important;
    gap:8px !important;
  }

  .station-series-search-row{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto !important;
    align-items:center !important;
    gap:8px !important;
  }

  .tabs-report-btn{
    width:34px !important;
    min-width:34px !important;
    height:34px !important;
    padding:0 !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    justify-self:end !important;
    border-bottom:1px solid #071D1A !important;
    font-size:0 !important;
  }

  .tabs-report-btn:disabled{
    display:none !important;
  }

  main{
    padding:18px 16px 60px !important;
  }

  #panel-mapa > .card > h3{
    font-size:1.8rem !important;
  }

  #panel-mapa > .card > .subtitle{
    font-size:.88rem !important;
    line-height:1.48 !important;
  }

  .risk-overview-top{
    grid-template-columns:1fr !important;
    align-items:start !important;
    gap:13px !important;
  }

  .risk-overview-top h4{
    font-size:1.5rem !important;
  }

  .risk-overview-top p{
    font-size:.84rem !important;
  }

  .risk-mode-switch{
    justify-content:flex-start !important;
    gap:12px !important;
    overflow-x:auto;
  }

  .risk-mode-btn{
    font-size:.72rem !important;
    white-space:nowrap;
  }

  .risk-service-ladder{
    align-items:flex-start !important;
    flex-direction:column !important;
    gap:12px !important;
  }

  .risk-service-bridge-copy{
    grid-template-columns:1fr;
    gap:5px;
  }

  .risk-service-bridge-copy strong,
  .risk-service-ladder-kicker{
    white-space:normal;
  }

  .calculation-status{
    text-align:left;
  }

  .risk-evidence-route{
    grid-template-columns:1fr;
    gap:8px;
  }

  .social-map-guide{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:420px){
  .product-hero .hero-wordmark{
    font-size:3.55rem !important;
  }

  .risk-map-search-row,
  .station-series-search-row{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:8px !important;
  }

  .risk-map-search-row input,
  .station-series-search-row input{
    width:100% !important;
    min-width:0 !important;
    grid-column:1 / -1 !important;
  }

  .risk-map-search-row button,
  .station-series-search-row button{
    width:100% !important;
    min-width:0 !important;
  }

  .social-map-guide{
    grid-template-columns:1fr;
  }
}

@media(max-width:350px){
  .product-hero .hero-wordmark{
    font-size:3.25rem !important;
  }

  .hydrorisk-status{
    display:grid;
    gap:3px;
  }

  .hydrorisk-status span + span::before{
    display:none;
  }

  .hydrorisk-shell-header .back-link span{
    display:none !important;
  }

  .hydrorisk-shell-header .back-link{
    width:28px;
    justify-content:center;
  }
}

/* HydroRisk connected consumer maps b22 · 20260720
   Map-led territorial and social exploration with one shared municipal selection. */
.consumer-map-stage{
  position:relative;
  isolation:isolate;
  min-width:0;
  overflow:hidden;
  background:rgba(250,246,238,.18);
}

.risk-consumer-map-stage{
  border-radius:0;
}

.consumer-map-selection.risk-map-selection{
  bottom:118px;
}

.consumer-map-reset{
  position:absolute;
  top:12px;
  right:12px;
  z-index:520;
  width:38px;
  height:38px;
  padding:0;
  display:grid;
  place-items:center;
  border:1px solid rgba(133,114,71,.36);
  border-radius:8px;
  background:rgba(250,246,238,.88);
  color:#071D1A;
  box-shadow:0 2px 10px rgba(7,29,26,.08);
  backdrop-filter:blur(7px);
  -webkit-backdrop-filter:blur(7px);
  cursor:pointer;
}

.consumer-map-reset:hover{
  background:#FAF6EE;
  border-color:#9C7C26;
}

.consumer-map-selection{
  position:absolute;
  left:16px;
  bottom:16px;
  z-index:510;
  width:min(420px,calc(100% - 82px));
  padding:14px;
  border:1px solid rgba(133,114,71,.34);
  border-radius:8px;
  background:rgba(250,246,238,.92);
  color:#071D1A;
  box-shadow:0 5px 20px rgba(7,29,26,.12);
  backdrop-filter:blur(9px) saturate(1.02);
  -webkit-backdrop-filter:blur(9px) saturate(1.02);
  pointer-events:none;
}

.consumer-map-selection > *{
  min-width:0;
}

.consumer-map-selection-empty{
  color:#4A5B54;
  font-size:.8rem;
  line-height:1.5;
}

.consumer-map-selection-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:start;
  gap:14px;
}

.consumer-map-selection-head > div{
  min-width:0;
}

.consumer-map-selection-head strong{
  display:block;
  overflow-wrap:anywhere;
  font-family:var(--serif);
  font-size:1.28rem;
  line-height:1.08;
  letter-spacing:0;
}

.consumer-map-selection-head span:not(.consumer-map-eyebrow){
  display:block;
  margin-top:3px;
  color:#52605A;
  font-size:.72rem;
  line-height:1.35;
}

.consumer-map-selection-head > b{
  max-width:130px;
  color:#071D1A;
  font-family:var(--mono);
  font-size:.82rem;
  font-variant-numeric:tabular-nums;
  line-height:1.2;
  text-align:right;
}

.consumer-map-eyebrow{
  display:block;
  margin-bottom:5px;
  color:#6A6250;
  font-size:.58rem;
  font-weight:800;
  line-height:1;
  letter-spacing:0;
  text-transform:uppercase;
}

.consumer-map-selection-grid{
  margin-top:11px;
  padding-top:10px;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:9px;
  border-top:1px solid rgba(156,124,38,.2);
}

.consumer-map-selection-grid span{
  min-width:0;
}

.consumer-map-selection-grid small{
  display:block;
  color:#6A716C;
  font-size:.57rem;
  font-weight:700;
  line-height:1.2;
  text-transform:uppercase;
}

.consumer-map-selection-grid strong{
  display:block;
  margin-top:3px;
  overflow-wrap:anywhere;
  color:#21332D;
  font-family:var(--mono);
  font-size:.73rem;
  font-variant-numeric:tabular-nums;
  line-height:1.25;
}

.consumer-map-selection-actions{
  margin-top:11px;
  display:flex;
  flex-wrap:wrap;
  gap:13px;
  pointer-events:auto;
}

.consumer-map-selection-actions button{
  min-height:30px;
  padding:4px 0 5px;
  border:0;
  border-bottom:1px solid #174D43;
  border-radius:0;
  background:transparent;
  color:#174D43;
  font-size:.7rem;
  font-weight:800;
  line-height:1.2;
  cursor:pointer;
}

.consumer-map-selection-actions button:hover{
  border-bottom-color:#9C7C26;
  color:#071D1A;
}

.social-map-experience{
  padding-top:18px;
  border-top:1px solid rgba(156,124,38,.28);
  scroll-margin-top:110px;
}

#panel-social .social-header{
  display:block;
  max-width:900px;
  margin-bottom:20px;
}

#panel-social .social-header .social-actions,
#panel-social .social-status{
  display:none !important;
}

.tn-protection-watermark{
  overflow:hidden;
}

.social-map-head{
  display:grid;
  grid-template-columns:minmax(340px,.8fr) minmax(560px,1.2fr);
  align-items:end;
  gap:28px;
}

.social-map-head h5{
  margin:5px 0 7px;
  max-width:720px;
  color:#071D1A;
  font-family:var(--serif);
  font-size:clamp(1.65rem,2.3vw,2.45rem);
  line-height:1.06;
  letter-spacing:0;
}

.social-map-head p{
  max-width:760px;
  color:#43534D;
  font-size:.88rem;
  line-height:1.5;
}

.social-map-mode-switch{
  display:flex;
  align-items:flex-end;
  justify-content:flex-end;
  gap:13px;
  overflow-x:auto;
  overscroll-behavior-inline:contain;
  scrollbar-width:thin;
}

.social-map-mode{
  flex:0 0 auto;
  min-height:32px;
  padding:5px 0 7px;
  border:0;
  border-bottom:2px solid transparent;
  border-radius:0;
  background:transparent;
  color:#4A5B54;
  font-size:.73rem;
  font-weight:800;
  line-height:1.1;
  white-space:nowrap;
  cursor:pointer;
}

.social-map-mode:hover,
.social-map-mode.active{
  border-bottom-color:#9C7C26;
  color:#071D1A;
}

.social-map-guide{
  margin-top:14px;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}

.social-map-guide article{
  min-width:0;
  border-top:1px solid rgba(156,124,38,.28);
  padding-top:10px;
}

.social-map-guide strong{
  display:block;
  color:#071D1A;
  font-size:.84rem;
  line-height:1.2;
}

.social-map-guide p{
  margin-top:4px;
  color:#52605A;
  font-size:.72rem;
  line-height:1.5;
}

.social-map-toolbar{
  margin-top:16px;
  padding:10px;
  display:grid;
  grid-template-columns:minmax(200px,1.35fr) repeat(3,minmax(150px,.8fr)) auto auto;
  align-items:center;
  gap:8px;
  border:1px solid rgba(133,114,71,.3);
  border-radius:10px 10px 0 0;
  background:rgba(250,246,238,.76);
  backdrop-filter:blur(7px);
  -webkit-backdrop-filter:blur(7px);
}

.social-map-toolbar input,
.social-map-toolbar select{
  width:100%;
  min-width:0;
  min-height:42px;
  padding:9px 10px;
  border:1px solid rgba(133,114,71,.32);
  border-radius:7px;
  background:rgba(250,246,238,.72);
  color:#21332D;
  font:600 .77rem/1.2 var(--sans);
}

.social-map-toolbar-action{
  min-height:42px;
  padding:8px 10px;
  border:1px solid rgba(133,114,71,.34);
  border-radius:7px;
  background:transparent;
  color:#174D43;
  font-size:.72rem;
  font-weight:800;
  white-space:nowrap;
  cursor:pointer;
}

.social-map-toolbar-action:hover{
  border-color:#9C7C26;
  color:#071D1A;
}

.social-consumer-map-stage{
  border:0;
  border-radius:0;
}

#social-map{
  width:100%;
  height:680px;
  background:#DCE5D9;
}

#risk-overview-map{
  height:680px !important;
}

#social-map .leaflet-tile,
#risk-overview-map .leaflet-tile{
  filter:saturate(.78) contrast(.96) brightness(1.04);
}

#social-map .leaflet-control-zoom,
#social-map .leaflet-control-attribution,
#social-map .leaflet-control-scale-line,
#risk-overview-map .leaflet-control-zoom,
#risk-overview-map .leaflet-control-attribution{
  border-color:rgba(133,114,71,.34) !important;
  background:rgba(250,246,238,.88) !important;
  color:#21332D !important;
  box-shadow:none !important;
}

#social-map .leaflet-control-zoom a,
#risk-overview-map .leaflet-control-zoom a{
  background:rgba(250,246,238,.92) !important;
  color:#071D1A !important;
}

.social-map-bottom{
  padding:10px 2px 0;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(280px,.58fr);
  align-items:start;
  gap:18px;
}

.social-map-bottom p{
  margin:0;
  color:#52605A;
  font-size:.69rem;
  line-height:1.5;
  text-align:right;
}

.social-map-legend{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:7px 13px;
  color:#43534D;
  font-size:.67rem;
  line-height:1.3;
}

.social-map-legend > strong{
  color:#071D1A;
  font-size:.7rem;
}

.social-map-legend-item{
  display:inline-flex;
  align-items:center;
  gap:5px;
}

.social-map-legend-item i{
  width:11px;
  height:11px;
  border:1px solid rgba(7,29,26,.16);
  border-radius:2px;
}

.social-map-legend-source{
  padding-left:12px;
  border-left:1px solid rgba(156,124,38,.3);
  color:#6A6250;
}

.social-workbench.social-workbench-map-led{
  grid-template-columns:minmax(300px,.74fr) minmax(0,1.26fr);
  gap:16px;
}

.social-workbench-map-led > .social-panel,
.social-portfolio-panel{
  background:transparent !important;
  border:0 !important;
  border-top:1px solid rgba(133,114,71,.3) !important;
  border-radius:0 !important;
  box-shadow:none !important;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
}

.social-metric,
.social-impact{
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
}

.social-ngo-advisor{
  background:rgba(250,246,238,.76) !important;
  border:1px solid rgba(133,114,71,.3) !important;
  border-radius:8px !important;
  box-shadow:none !important;
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
}

.social-ranking-list{
  max-height:720px;
}

.social-ranking-row,
.social-intervention,
.social-cpv-card,
.social-case-card,
.social-source{
  background:transparent !important;
  border:0 !important;
  border-top:1px solid rgba(133,114,71,.24) !important;
  border-radius:0 !important;
}

.social-atlas-bar i,
.social-bin i{
  background:#A85F3D !important;
}

.social-portfolio-panel{
  display:grid;
  grid-template-columns:minmax(240px,.35fr) minmax(0,1fr);
  align-items:start;
  gap:24px;
}

.social-portfolio-grid{
  display:grid;
  grid-template-columns:minmax(320px,1fr) minmax(280px,.68fr);
  align-items:start;
  gap:24px;
}

@media(max-width:1180px){
  .social-map-head{
    grid-template-columns:1fr;
    gap:13px;
  }

  .social-map-mode-switch{
    justify-content:flex-start;
  }

  .social-map-toolbar{
    grid-template-columns:minmax(220px,1.3fr) repeat(2,minmax(150px,.8fr)) auto auto;
  }

  .social-map-toolbar #social-sort{
    grid-column:2 / 4;
  }
}

@media(max-width:900px){
  .social-map-toolbar{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .social-map-toolbar #social-search{
    grid-column:1 / -1;
  }

  .social-map-toolbar #social-sort{
    grid-column:auto;
  }

  .social-map-fit-action{
    grid-column:1 / -1;
  }

  .social-workbench.social-workbench-map-led,
  .social-portfolio-panel,
  .social-portfolio-grid{
    grid-template-columns:1fr;
  }

  #social-map{
    height:560px;
  }

  #risk-overview-map{
    height:560px !important;
  }

  .social-map-bottom{
    grid-template-columns:1fr;
    gap:8px;
  }

  .social-map-bottom p{
    text-align:left;
  }
}

@media(max-width:760px){
  .social-map-experience{
    padding-top:14px;
  }

  .social-map-head h5{
    font-size:1.55rem;
  }

  .social-map-head p{
    font-size:.82rem;
  }

  .social-map-mode-switch{
    margin-right:-16px;
    padding-right:16px;
  }

  .social-map-toolbar{
    padding:8px;
  }

  #social-map,
  #risk-overview-map{
    height:500px !important;
  }

  .consumer-map-selection{
    position:relative;
    left:auto;
    bottom:auto;
    width:auto;
    max-width:none;
    margin:0;
    border-right:0;
    border-bottom:0;
    border-left:0;
    border-radius:0;
    background:rgba(250,246,238,.76);
    box-shadow:none;
  }

  .consumer-map-selection.risk-map-selection{
    bottom:auto;
  }

  .consumer-map-selection-head > b{
    max-width:105px;
  }

  .consumer-map-selection-actions button{
    min-height:34px;
  }

  .social-workbench-map-led > .social-panel{
    padding:12px !important;
  }

  .social-ranking-list{
    max-height:none;
  }
}

@media(max-width:420px){
  .social-map-toolbar{
    grid-template-columns:1fr 1fr;
  }

  .social-map-toolbar #social-search{
    grid-column:1 / -1;
  }

  .social-map-toolbar #social-sort{
    grid-column:1;
  }

  .social-map-fit-action{
    display:none;
  }

  .social-map-toolbar input,
  .social-map-toolbar select,
  .social-map-toolbar-action{
    min-height:44px;
    font-size:.72rem;
  }

  #social-map,
  #risk-overview-map{
    height:460px !important;
  }

  #risk-overview-map{
    min-height:460px !important;
  }

  .consumer-map-reset{
    top:10px;
    right:10px;
    width:40px;
    height:40px;
  }

  .consumer-map-selection{
    padding:12px;
  }

  .consumer-map-selection-head strong{
    font-size:1.12rem;
  }

  .consumer-map-selection-head > b{
    font-size:.74rem;
  }

  .consumer-map-selection-grid{
    gap:7px;
  }

  .consumer-map-selection-grid small{
    font-size:.52rem;
  }

  .consumer-map-selection-grid strong{
    font-size:.65rem;
  }
}

/* HydroRisk semantic surfaces b24 · 20260721
   Screen only: editorial transparency, one functional surface per task and
   high-opacity overlays for cartography. Print/report rules remain untouched. */
@media screen{
  :root{
    --tn-editorial:transparent;
    --tn-functional:rgba(250,246,238,.76);
    --tn-overlay:rgba(250,246,238,.92);
    --tn-rule:rgba(133,114,71,.30);
    --tn-ink:#102620;
    --tn-muted:#52605A;
    --tn-water:#2F6F63;
    --tn-terra:#A85F3D;
    --tn-gold:#C9A227;
  }

  /* Territorio: toolbar funcional, mapa dominante y sintesis editorial. */
  #panel-mapa .risk-map-search-shell .tool-sync-note{
    display:none;
  }

  #panel-mapa .risk-overview-map-wrap,
  #panel-mapa .stations-map-wrap{
    overflow:visible !important;
  }

  #panel-mapa .risk-map-search-shell{
    margin-bottom:0;
    border-radius:8px 8px 0 0 !important;
  }

  #panel-mapa .risk-consumer-map-stage,
  #panel-mapa #risk-overview-map,
  #panel-mapa .stations-map-wrap,
  #panel-mapa #stations-overview-map{
    border-radius:0 !important;
  }

  #panel-mapa .risk-overview-bottom .risk-overview-legend,
  #panel-mapa .risk-overview-bottom .risk-overview-note,
  #panel-mapa .risk-map-drawer,
  #panel-social .consumer-map-reset,
  #panel-mapa .consumer-map-reset{
    background:var(--tn-overlay);
    border-color:var(--tn-rule);
    border-radius:8px;
    color:var(--tn-ink);
    box-shadow:none;
    backdrop-filter:blur(6px);
    -webkit-backdrop-filter:blur(6px);
  }

  #panel-mapa .risk-map-drawer{
    border:1px solid var(--tn-rule);
  }

  #panel-mapa .risk-map-options-title,
  #panel-mapa .risk-map-options-note,
  #panel-mapa .risk-map-options-foot,
  #panel-mapa .risk-map-options-label,
  #panel-mapa .risk-map-option-state{
    color:var(--tn-ink);
  }

  #panel-mapa .risk-map-options-note,
  #panel-mapa .risk-map-options-foot{
    color:var(--tn-muted);
  }

  #panel-mapa .risk-map-options-block{
    border-top-color:var(--tn-rule);
  }

  #panel-mapa .risk-map-basemap-btn,
  #panel-mapa .risk-map-option-toggle{
    border-color:var(--tn-rule);
    background:transparent;
    color:var(--tn-ink);
  }

  #panel-mapa .risk-map-basemap-btn.active,
  #panel-mapa .risk-map-option-toggle.active{
    border-color:var(--tn-water);
    background:rgba(47,111,99,.10);
    color:var(--tn-ink);
  }

  #panel-mapa .risk-municipality-summary{
    margin-top:24px;
  }

  #panel-mapa .risk-panel-grid,
  #panel-mapa .risk-overview-summary{
    gap:18px;
  }

  #panel-mapa .risk-panel-text{
    padding:12px 0 0;
    border:0;
    border-top:1px solid var(--tn-rule);
    border-radius:0;
    background:transparent;
    color:var(--tn-muted);
  }

  /* Series: selector unico, rail de cifras y evidencia ordenada por lectura. */
  #panel-series .station-series-top{
    margin-bottom:18px;
  }

  #panel-series .station-series-toolbar{
    padding:12px !important;
    border-radius:8px !important;
    background:var(--tn-functional) !important;
  }

  #panel-series .station-series-layout{
    grid-template-columns:minmax(270px,.32fr) minmax(0,1fr);
    gap:32px;
  }

  #panel-series .station-series-summary{
    position:sticky;
    top:100px;
    align-self:start;
    padding-top:16px !important;
  }

  #panel-series .station-series-summary .stations-panel-grid{
    display:block;
  }

  #panel-series .station-series-summary .stations-panel-stat{
    padding:12px 0;
    border-top:1px solid var(--tn-rule) !important;
  }

  #panel-series .station-series-preview{
    display:flex;
    flex-direction:column;
    gap:26px;
  }

  #station-series-stats-panel{order:0}
  #panel-series .station-series-location-block{order:1}
  #panel-series .station-series-monthly-block{order:2}
  #panel-series .station-series-annual-block{order:3}
  #panel-series .station-series-diagnostics-block{order:4}
  #panel-series .station-series-explainer{order:5}

  #panel-series .station-series-stats-panel{
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:0;
    margin:0;
    padding:10px 0;
    border-top:1px solid var(--tn-rule) !important;
    border-bottom:1px solid var(--tn-rule) !important;
  }

  #panel-series .history-chip{
    min-width:0;
    padding:5px 14px;
    border:0;
    border-right:1px solid var(--tn-rule);
    border-radius:0;
    background:transparent;
  }

  #panel-series .history-chip:last-child{
    border-right:0;
  }

  #panel-series .history-chip .label,
  #panel-series .station-series-explainer-card .label{
    color:var(--tn-muted);
  }

  #panel-series .history-chip .value,
  #panel-series .station-series-explainer-card .value{
    color:var(--tn-ink) !important;
  }

  #panel-series .station-series-preview-block{
    overflow:visible !important;
    padding:18px 0 0 !important;
    border-top:1px solid var(--tn-rule);
  }

  #panel-series .station-series-location-panel,
  #panel-series .station-series-location-figure,
  #panel-series .station-series-location-live-wrap,
  #panel-series .ssb-chart-outer,
  #panel-series .sshyd-outer,
  #panel-series #station-series-monthly-chart:not(.station-series-chart-empty),
  #panel-series #station-series-annual-chart:not(.station-series-chart-empty){
    background:transparent;
    border:0;
    border-radius:0;
    box-shadow:none;
  }

  #panel-series .station-series-location-figure{
    padding:0;
  }

  #panel-series .station-series-location-live-wrap{
    border-top:1px solid var(--tn-rule);
  }

  #panel-series #station-series-diagnostics{
    display:block;
    margin-top:8px;
  }

  #panel-series #station-series-diagnostics > *,
  #panel-series .station-series-explainer-card{
    display:grid;
    grid-template-columns:minmax(150px,.28fr) minmax(180px,.32fr) minmax(0,1fr);
    gap:18px;
    padding:13px 0;
    border-top:1px solid var(--tn-rule) !important;
    border-radius:0 !important;
    background:transparent !important;
  }

  #panel-series .station-series-explainer{
    display:block;
    padding-top:0;
    border-top:0;
  }

  #panel-series .station-series-chart-empty{
    border:1px solid var(--tn-rule);
    border-radius:8px;
    background:var(--tn-functional);
    color:var(--tn-muted);
  }

  #panel-series .station-series-location-meta,
  #panel-series .stations-panel-chip{
    border:1px solid var(--tn-rule) !important;
    border-radius:6px !important;
    background:var(--tn-overlay) !important;
    box-shadow:none !important;
    backdrop-filter:blur(6px);
    -webkit-backdrop-filter:blur(6px);
  }

  #panel-series .station-series-location-meta{
    padding:12px !important;
  }

  #panel-mapa .leaflet-control-zoom a,
  #panel-mapa .leaflet-control-layers,
  #panel-series .leaflet-control-zoom a,
  #panel-cuencas .leaflet-control-zoom a,
  #panel-cuencas .leaflet-control-layers,
  #panel-social .leaflet-control-zoom a{
    background:var(--tn-overlay) !important;
    border-color:var(--tn-rule) !important;
    color:var(--tn-ink) !important;
    box-shadow:none !important;
    backdrop-filter:blur(6px);
    -webkit-backdrop-filter:blur(6px);
  }

  /* Atlas: introduccion editorial y selector jerarquico compacto. */
  #panel-cuencas .atlas-toolbar{
    margin:18px 0 10px;
    padding:14px 0;
    border:0 !important;
    border-top:1px solid var(--tn-rule) !important;
    border-bottom:1px solid var(--tn-rule) !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
  }

  #panel-cuencas .atlas-actions{
    flex-direction:row;
    align-items:center;
    gap:12px;
  }

  #panel-cuencas .atlas-levels{
    gap:0;
    padding:3px;
    border:1px solid var(--tn-rule);
    border-radius:8px;
    background:var(--tn-functional);
  }

  #panel-cuencas .atlas-level-btn{
    min-width:44px;
    padding:8px 10px;
    border:0;
    border-right:1px solid var(--tn-rule);
    border-radius:0;
    background:transparent;
    color:var(--tn-muted);
  }

  #panel-cuencas .atlas-level-btn:last-child{border-right:0}

  #panel-cuencas .atlas-level-btn.active,
  #panel-cuencas .atlas-level-btn:hover{
    background:rgba(47,111,99,.12);
    color:var(--tn-ink);
  }

  #panel-cuencas .atlas-meta{
    margin:0 0 12px;
    padding:0;
  }

  #panel-cuencas .atlas-status{
    padding:0 10px 0 0;
    border:0;
    border-right:1px solid var(--tn-rule);
    border-radius:0;
    background:transparent;
    color:var(--tn-ink);
  }

  /* SCS y Caudal: disclosures sin fondo celeste ni panel anidado. */
  .technical-section-head{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:12px;
    flex-wrap:wrap;
  }

  .technical-kicker,
  .method-eyebrow{
    display:block;
    margin:0 0 5px;
    color:var(--tn-muted);
    font-size:.68rem;
    font-weight:700;
    line-height:1.25;
    text-transform:uppercase;
  }

  .technical-heading{
    margin:0 0 5px;
    color:var(--tn-ink);
    font-size:1.35rem;
    line-height:1.15;
  }

  .technical-copy{
    margin:0 0 12px;
    color:var(--tn-muted);
    font-size:.78rem;
    line-height:1.65;
  }

  .technical-disclosure{
    margin:18px 0 0;
    border:0;
    border-top:1px solid var(--tn-rule);
    border-radius:0;
    background:transparent;
  }

  .technical-disclosure > summary{
    list-style:none;
    position:relative;
    padding:13px 28px 13px 0;
    color:var(--tn-ink);
    font-size:.8rem;
    font-weight:700;
    line-height:1.35;
  }

  .technical-disclosure > summary::-webkit-details-marker{display:none}

  .technical-disclosure > summary::after{
    content:"+";
    position:absolute;
    top:12px;
    right:2px;
    color:var(--tn-ink);
    font-family:var(--mono);
    font-size:1rem;
  }

  .technical-disclosure[open] > summary::after{content:"−"}

  .technical-disclosure-body{
    padding:2px 0 18px;
  }

  .technical-disclosure-action{
    margin-bottom:12px;
  }

  .technical-disclosure-after-result{
    margin-top:22px;
  }

  .technical-table-scroll{
    width:100%;
    max-width:100%;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
  }

  /* Metodo: documento tecnico, no banda promocional ni mosaico de cards. */
  #panel-metodologia .card + .card{
    margin-top:34px;
    padding-top:26px !important;
    border-top:1px solid var(--tn-rule) !important;
  }

  #panel-metodologia .method-promise{
    margin:20px 0 0;
    padding:18px 0;
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(220px,.34fr);
    gap:28px;
    align-items:start;
    border-top:1px solid var(--tn-rule);
    border-bottom:1px solid var(--tn-rule);
  }

  #panel-metodologia .method-promise h4{
    margin:0;
    color:var(--tn-ink);
    font-family:var(--serif);
    font-size:1.42rem;
    line-height:1.15;
  }

  #panel-metodologia .method-promise p,
  #panel-metodologia .method-country-row p,
  #panel-metodologia .method-data-row p,
  #panel-metodologia .method-context p,
  #panel-metodologia .method-source-item p,
  #panel-metodologia .method-check-row p{
    margin:7px 0 0;
    color:var(--tn-muted);
    font-size:.78rem;
    line-height:1.65;
  }

  #panel-metodologia .method-promise-status{
    padding:12px;
    border:1px solid var(--tn-rule);
    border-radius:8px;
    background:var(--tn-functional);
  }

  #panel-metodologia .method-promise-status span,
  #panel-metodologia .method-promise-status small{
    display:block;
    color:var(--tn-muted);
    font-size:.68rem;
    line-height:1.45;
  }

  #panel-metodologia .method-promise-status strong{
    display:block;
    margin:5px 0 3px;
    color:var(--tn-ink);
    font-size:.9rem;
  }

  #panel-metodologia .method-service-matrix{
    margin-top:24px;
    border-top:1px solid var(--tn-rule);
    border-bottom:1px solid var(--tn-rule);
  }

  #panel-metodologia .method-service-header,
  #panel-metodologia .method-service-row{
    display:grid;
    grid-template-columns:minmax(62px,.22fr) minmax(190px,1fr) minmax(190px,1fr) minmax(190px,1fr);
    gap:18px;
    align-items:start;
  }

  #panel-metodologia .method-service-header{
    padding:9px 0;
    color:var(--tn-muted);
    font-size:.64rem;
    font-weight:700;
    line-height:1.2;
    text-transform:uppercase;
  }

  #panel-metodologia .method-service-row{
    padding:14px 0;
    border-top:1px solid var(--tn-rule);
    color:var(--tn-muted);
    font-size:.75rem;
    line-height:1.55;
  }

  #panel-metodologia .method-service-row > strong{
    color:var(--tn-ink);
    font-family:var(--mono);
    font-size:.78rem;
  }

  #panel-metodologia .method-service-row b{
    display:block;
    margin-bottom:3px;
    color:var(--tn-ink);
  }

  #panel-metodologia .method-data-section{
    margin-top:30px;
    padding-top:22px;
    border-top:1px solid var(--tn-rule);
  }

  #panel-metodologia .method-section-head{
    margin:0 0 12px;
  }

  #panel-metodologia .method-section-head h4,
  #panel-metodologia .risk-section-heading.method-section-head h4{
    margin:0;
    color:var(--tn-ink);
    font-family:var(--serif);
    font-size:1.45rem;
    line-height:1.15;
  }

  #panel-metodologia .method-country-list,
  #panel-metodologia .method-row-list,
  #panel-metodologia .method-checklist,
  #panel-metodologia .method-source-list{
    display:block;
    margin-top:8px;
  }

  #panel-metodologia .method-country-row,
  #panel-metodologia .method-data-row,
  #panel-metodologia .method-check-row,
  #panel-metodologia .method-source-item{
    padding:14px 0;
    border-top:1px solid var(--tn-rule);
    background:transparent;
  }

  #panel-metodologia .method-country-row > .method-row-head,
  #panel-metodologia .method-data-row > .method-row-head,
  #panel-metodologia .method-row-head{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:18px;
  }

  #panel-metodologia .method-country-row strong,
  #panel-metodologia .method-data-row .method-row-head strong,
  #panel-metodologia .method-context strong,
  #panel-metodologia .method-source-item strong{
    display:block;
    margin-top:4px;
    color:var(--tn-ink);
    font-size:1rem;
    line-height:1.3;
  }

  #panel-metodologia .method-row-columns{
    margin-top:10px;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:20px;
  }

  #panel-metodologia .method-row-columns p{
    margin:0;
  }

  #panel-metodologia .method-row-columns b{
    display:block;
    margin-bottom:3px;
    color:var(--tn-ink);
  }

  #panel-metodologia .method-status-badge{
    display:inline-flex;
    align-items:center;
    gap:7px;
    flex:0 0 auto;
    color:var(--tn-ink);
    font-size:.68rem;
    font-weight:700;
    line-height:1.2;
  }

  #panel-metodologia .method-status-badge i{
    width:9px;
    height:9px;
    border:1px solid rgba(16,38,32,.2);
    border-radius:2px;
    background:#8A918D;
  }

  #panel-metodologia .method-status-badge.is-active i{background:#27AE60}
  #panel-metodologia .method-status-badge.is-progress i{background:#E67E22}
  #panel-metodologia .method-status-badge.is-planned i{background:#C9A227}
  #panel-metodologia .method-status-badge.is-blocked i{background:#C0392B}

  #panel-metodologia .method-footnote,
  #panel-metodologia .method-row-note{
    display:block;
    margin:10px 0 0;
    color:var(--tn-muted);
    font-size:.72rem;
    line-height:1.65;
  }

  #panel-metodologia .method-source-row{
    margin-top:18px;
    padding:14px 0;
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:24px;
    border-top:1px solid var(--tn-rule);
    border-bottom:1px solid var(--tn-rule);
  }

  #panel-metodologia .method-source-row p{
    max-width:900px;
    margin:5px 0 0;
    color:var(--tn-muted);
    font-size:.8rem;
    line-height:1.6;
  }

  #panel-metodologia .method-source-row a,
  #panel-metodologia .method-source-item a{
    flex:0 0 auto;
    padding:5px 0;
    border-bottom:1px solid var(--tn-water);
    color:var(--tn-water) !important;
    font-size:.75rem;
    font-weight:700;
    text-decoration:none;
  }

  #panel-metodologia .method-context{
    padding:16px;
    border:1px solid var(--tn-rule);
    border-radius:8px;
    background:var(--tn-functional);
    backdrop-filter:blur(6px);
    -webkit-backdrop-filter:blur(6px);
  }

  #panel-metodologia .method-context-grid{
    display:grid;
    grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr);
    gap:24px;
  }

  #panel-metodologia .method-trace{
    padding-left:20px;
    border-left:1px solid var(--tn-rule);
  }

  #panel-metodologia .method-trace dl{
    margin:10px 0;
  }

  #panel-metodologia .method-trace dl > div{
    padding:5px 0;
    display:grid;
    grid-template-columns:minmax(110px,.45fr) minmax(0,1fr);
    gap:10px;
    border-top:1px solid var(--tn-rule);
    font-size:.7rem;
    line-height:1.45;
  }

  #panel-metodologia .method-trace dt{color:var(--tn-muted)}
  #panel-metodologia .method-trace dd{margin:0;color:var(--tn-ink)}
  #panel-metodologia .method-trace small{color:var(--tn-muted);line-height:1.55}

  #panel-metodologia .method-metric-rail{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    margin:12px 0 20px;
    padding:10px 0;
    border-top:1px solid var(--tn-rule);
    border-bottom:1px solid var(--tn-rule);
  }

  #panel-metodologia .method-metric{
    padding:5px 16px;
    border-right:1px solid var(--tn-rule);
  }

  #panel-metodologia .method-metric:last-child{border-right:0}
  #panel-metodologia .method-metric span,
  #panel-metodologia .method-metric small{display:block;color:var(--tn-muted);font-size:.68rem;line-height:1.45}
  #panel-metodologia .method-metric strong{display:block;margin:5px 0;color:var(--tn-ink);font-family:var(--mono);font-size:1.3rem}

  #panel-metodologia .method-definition-list{
    margin:12px 0 0;
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    border-top:1px solid var(--tn-rule);
  }

  #panel-metodologia .method-definition-list > div{
    padding:10px 12px 0 0;
    border-right:1px solid var(--tn-rule);
  }

  #panel-metodologia .method-definition-list > div + div{padding-left:12px}
  #panel-metodologia .method-definition-list > div:last-child{border-right:0}
  #panel-metodologia .method-definition-list dt{color:var(--tn-muted);font-size:.65rem;text-transform:uppercase}
  #panel-metodologia .method-definition-list dd{margin:5px 0 0;color:var(--tn-ink);font-family:var(--mono);font-size:1rem}
  #panel-metodologia .method-definition-list small{display:block;margin-top:4px;color:var(--tn-muted);font-family:var(--sans);font-size:.67rem;line-height:1.45}

  #panel-metodologia .method-check-row .method-row-head > strong{
    color:var(--tn-ink);
    font-size:.84rem;
  }

  #panel-metodologia .method-source-item{
    display:grid;
    grid-template-columns:minmax(180px,.36fr) minmax(260px,1fr) minmax(150px,.32fr) auto;
    gap:18px;
    align-items:start;
  }

  #panel-metodologia .method-source-item small{
    color:var(--tn-muted);
    font-size:.7rem;
    line-height:1.5;
  }

  #panel-metodologia .method-formula-list{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:0 28px;
  }

  #panel-metodologia .formula-block{
    margin:0;
    padding:14px 0;
    border:0;
    border-top:1px solid var(--tn-rule);
    border-radius:0;
    background:transparent;
  }

  #panel-metodologia .wmo-badge{
    background:rgba(47,111,99,.12);
    color:var(--tn-ink);
    border-radius:3px;
  }

  #panel-metodologia .wmo-badge.limit{
    background:rgba(192,57,43,.14);
    color:var(--tn-ink);
  }

  /* Social: mapa + toolbar; el resto son rails, filas o una unica superficie operativa. */
  #panel-social .social-map-toolbar{
    border-radius:8px 8px 0 0;
    background:var(--tn-functional);
  }

  #panel-social .social-metric-grid{
    gap:0;
    padding:10px 0;
    border-top:1px solid var(--tn-rule);
    border-bottom:1px solid var(--tn-rule);
  }

  #panel-social .social-metric{
    padding:5px 16px;
    border-right:1px solid var(--tn-rule) !important;
  }

  #panel-social .social-metric:last-child{border-right:0 !important}

  #panel-social .social-impact-grid{
    gap:0 22px;
  }

  #panel-social .social-impact{
    padding:14px 0 0;
    border-top:1px solid var(--tn-rule) !important;
  }

  #panel-social .social-workbench-map-led > .social-panel{
    padding:18px 0 !important;
  }

  #panel-social .social-workbench-map-led > .social-panel + .social-panel{
    padding-left:22px !important;
    border-left:1px solid var(--tn-rule) !important;
  }

  #panel-social .social-ranking-list{
    gap:0;
  }

  #panel-social .social-ranking-row{
    padding:11px 4px;
  }

  #panel-social .social-ranking-row.is-active{
    background:rgba(201,162,39,.12) !important;
    border-color:var(--tn-rule) !important;
  }

  #panel-social .social-ranking-row .rank,
  #panel-social .social-ranking-row .social-reason-chip,
  #panel-social .social-intervention .tag{
    background:rgba(201,162,39,.12);
    color:var(--tn-ink);
    border-color:rgba(133,114,71,.28);
  }

  #panel-social .social-ranking-row .ivh{
    color:var(--tn-ink);
  }

  #panel-social .social-mini-bar i{
    background:var(--tn-terra);
  }

  #panel-social .social-advisor-output,
  #panel-social .social-cpv-grid,
  #panel-social .social-case-grid,
  #panel-social .social-source-grid{
    gap:0 18px;
  }

  #panel-social .social-quality{
    padding:18px 0 0;
    border:0 !important;
    border-top:1px solid var(--tn-rule) !important;
    border-radius:0 !important;
    background:transparent !important;
  }

  #panel-social .social-portfolio-panel{
    padding-top:18px;
  }
}

@media screen and (max-width:1100px){
  #panel-series .station-series-stats-panel{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  #panel-series .history-chip:nth-child(3){border-right:0}
  #panel-series .history-chip:nth-child(n+4){border-top:1px solid var(--tn-rule)}

  #panel-metodologia .method-service-header,
  #panel-metodologia .method-service-row{
    grid-template-columns:minmax(62px,.2fr) repeat(3,minmax(160px,1fr));
  }

  #panel-metodologia .method-source-item{
    grid-template-columns:minmax(180px,.4fr) minmax(0,1fr) auto;
  }

  #panel-metodologia .method-source-item small{
    grid-column:2;
  }
}

@media screen and (max-width:900px){
  #panel-series .station-series-layout{
    grid-template-columns:1fr;
  }

  #panel-series .station-series-summary{
    position:static;
  }

  #panel-metodologia .method-service-matrix{
    overflow-x:auto;
  }

  #panel-metodologia .method-service-header,
  #panel-metodologia .method-service-row{
    min-width:780px;
  }

  #panel-metodologia .method-context-grid{
    grid-template-columns:1fr;
  }

  #panel-metodologia .method-trace{
    padding:14px 0 0;
    border-top:1px solid var(--tn-rule);
    border-left:0;
  }

  #panel-metodologia .method-definition-list{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  #panel-metodologia .method-definition-list > div:nth-child(2){border-right:0}
  #panel-metodologia .method-definition-list > div:nth-child(n+3){margin-top:10px;border-top:1px solid var(--tn-rule)}

  #panel-social .social-workbench-map-led > .social-panel + .social-panel{
    padding-left:0 !important;
    border-left:0 !important;
  }
}

@media screen and (max-width:760px){
  #panel-series .station-series-stats-panel{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  #panel-series .history-chip:nth-child(3){border-right:1px solid var(--tn-rule)}
  #panel-series .history-chip:nth-child(even){border-right:0}
  #panel-series .history-chip:nth-child(n+3){border-top:1px solid var(--tn-rule)}

  #panel-series #station-series-diagnostics > *,
  #panel-series .station-series-explainer-card{
    grid-template-columns:1fr;
    gap:5px;
  }

  #panel-cuencas .atlas-toolbar,
  #panel-cuencas .atlas-actions{
    align-items:flex-start;
  }

  #panel-cuencas .atlas-actions{
    flex-direction:column;
  }

  #panel-metodologia .method-promise{
    grid-template-columns:1fr;
  }

  #panel-metodologia .method-service-matrix{
    overflow:visible;
  }

  #panel-metodologia .method-service-header{
    display:none;
  }

  #panel-metodologia .method-service-row{
    min-width:0;
    grid-template-columns:44px minmax(0,1fr);
    gap:8px 14px;
  }

  #panel-metodologia .method-service-row > strong{
    grid-row:1 / span 3;
  }

  #panel-metodologia .method-service-row > span{
    grid-column:2;
  }

  #panel-metodologia .method-service-row > span::before{
    display:block;
    margin-bottom:2px;
    color:var(--tn-muted);
    font-size:.58rem;
    font-weight:700;
    line-height:1.2;
    text-transform:uppercase;
  }

  #panel-metodologia .method-service-row > span:nth-of-type(1)::before{content:"Capacidad"}
  #panel-metodologia .method-service-row > span:nth-of-type(2)::before{content:"Evidencia requerida"}
  #panel-metodologia .method-service-row > span:nth-of-type(3)::before{content:"Límite"}

  #panel-metodologia .method-source-row{
    align-items:flex-start;
    flex-direction:column;
  }

  #panel-metodologia .method-metric-rail,
  #panel-metodologia .method-formula-list{
    grid-template-columns:1fr 1fr;
  }

  #panel-metodologia .method-metric:nth-child(even){border-right:0}
  #panel-metodologia .method-metric:nth-child(n+3){border-top:1px solid var(--tn-rule)}

  #panel-metodologia .method-row-columns,
  #panel-metodologia .method-source-item{
    grid-template-columns:1fr;
    gap:7px;
  }

  #panel-metodologia .method-source-item small{
    grid-column:auto;
  }

  #panel-social .social-metric-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  #panel-social .social-metric:nth-child(even){border-right:0 !important}
  #panel-social .social-metric:nth-child(n+3){border-top:1px solid var(--tn-rule) !important}

  #panel-social .social-impact-grid{
    grid-template-columns:1fr 1fr;
  }
}

@media screen and (max-width:420px){
  #panel-metodologia .method-metric-rail,
  #panel-metodologia .method-formula-list,
  #panel-metodologia .method-definition-list,
  #panel-social .social-impact-grid{
    grid-template-columns:1fr;
  }

  #panel-metodologia .method-metric,
  #panel-metodologia .method-definition-list > div,
  #panel-metodologia .method-definition-list > div:nth-child(2){
    padding:10px 0;
    border-right:0;
    border-top:1px solid var(--tn-rule);
  }

  #panel-social .social-ngo-advisor{
    padding:12px;
  }
}

/* HydroRisk station detail b25 · ficha abierta, sin tarjeta anidada. */
@media screen{
  #panel-mapa .stations-panel{
    display:grid;
    gap:14px;
    margin:0;
    padding:18px 0 0 24px !important;
    border:0 !important;
    border-left:1px solid var(--tn-rule) !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
  }

  #panel-mapa .stations-panel-name{
    font-family:var(--serif) !important;
    font-size:clamp(1.75rem,2.8vw,2.55rem) !important;
    font-weight:700 !important;
    letter-spacing:0 !important;
    color:var(--tn-ink) !important;
  }

  #panel-mapa .stations-panel-stat,
  #panel-mapa .stations-panel-text,
  #panel-mapa .stations-ranking-row{
    background:transparent !important;
    border:0 !important;
    border-top:1px solid var(--tn-rule) !important;
    border-radius:0 !important;
    box-shadow:none !important;
  }

  #panel-mapa .stations-panel-stat{
    padding:12px 0 0 !important;
  }

  #panel-mapa .stations-panel-stat .value,
  #panel-mapa .stations-ranking-main{
    color:var(--tn-ink) !important;
  }

  #panel-mapa .stations-panel-grid{
    gap:0 18px;
  }

  #panel-mapa .stations-ranking{
    gap:0;
  }

  #panel-mapa .stations-ranking-row{
    padding:11px 0 !important;
  }

  #panel-mapa .stations-ranking-badge{
    width:24px;
    height:auto;
    min-height:24px;
    border-radius:0;
    background:transparent !important;
    color:var(--tn-gold) !important;
    font-family:var(--mono);
    font-size:.72rem;
  }

  #panel-mapa .stations-ranking-row:hover,
  #panel-mapa .stations-ranking-row:focus-visible{
    background:rgba(201,162,39,.08) !important;
    outline:none;
  }

  #panel-mapa .stations-panel-chip{
    color:var(--tn-muted) !important;
  }

  #panel-series .station-series-location-meta,
  #panel-metodologia .method-context,
  #panel-social .social-ngo-advisor,
  .technical-disclosure .cn-table{
    background:transparent !important;
    border:0 !important;
    border-top:1px solid var(--tn-rule) !important;
    border-bottom:1px solid var(--tn-rule) !important;
    border-radius:0 !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
  }

  #panel-series .station-series-location-meta{
    padding:12px 0 !important;
  }

  #panel-metodologia .method-context{
    padding:16px 0 !important;
  }

  #panel-social .social-ngo-advisor{
    padding-left:0 !important;
    padding-right:0 !important;
  }

  .technical-disclosure .cn-table{
    margin-top:8px;
    padding:10px 0 !important;
  }

  .technical-disclosure .cn-table th,
  .technical-disclosure .cn-table td{
    background:transparent !important;
    border-color:var(--tn-rule) !important;
  }
}

@media screen and (max-width:900px){
  #panel-mapa .stations-panel{
    padding:18px 0 0 !important;
    border-left:0 !important;
    border-top:1px solid var(--tn-rule) !important;
  }
}

/* Task-first entry. The former product tour remains in the document as a
   reversible reference, but it no longer blocks access to the working tool. */
.product-index-bar,
.tools-launcher.product-launcher{
  display:none !important;
}

.hydrorisk-task-entry{
  width:100%;
  padding:34px 28px 30px;
  border-top:1px solid var(--tn-rule);
  border-bottom:1px solid var(--tn-rule);
  background:rgba(250,246,238,.16);
}

.hydrorisk-task-inner{
  width:min(1720px,100%);
  margin:0 auto;
}

.hydrorisk-task-head{
  display:grid;
  grid-template-columns:minmax(220px,.7fr) minmax(420px,1.3fr);
  gap:28px;
  align-items:end;
  margin-bottom:24px;
}

.hydrorisk-task-kicker{
  color:var(--tn-gold);
  font-family:var(--mono);
  font-size:.72rem;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.hydrorisk-task-head h2{
  margin:6px 0 0;
  color:var(--tn-ink);
  font-family:var(--serif);
  font-size:clamp(2rem,3vw,3.25rem);
  line-height:1;
  letter-spacing:0;
}

.hydrorisk-task-head p{
  max-width:66ch;
  margin:0;
  color:var(--tn-muted);
  font-size:.98rem;
  line-height:1.65;
}

.hydrorisk-task-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  border-top:1px solid var(--tn-rule);
  border-bottom:1px solid var(--tn-rule);
}

.hydrorisk-task-card{
  min-height:190px;
  padding:22px 28px 24px 0;
  border:0;
  border-right:1px solid var(--tn-rule);
  background:transparent;
  color:var(--tn-ink);
  text-align:left;
  cursor:pointer;
}

.hydrorisk-task-card + .hydrorisk-task-card{
  padding-left:28px;
}

.hydrorisk-task-card:last-child{
  border-right:0;
}

.hydrorisk-task-number{
  display:block;
  margin-bottom:24px;
  color:var(--tn-gold);
  font-family:var(--mono);
  font-size:.72rem;
  font-weight:700;
}

.hydrorisk-task-card strong{
  display:block;
  margin-bottom:9px;
  font-family:var(--serif);
  font-size:1.65rem;
  line-height:1.05;
}

.hydrorisk-task-card span:not(.hydrorisk-task-number){
  display:block;
  max-width:34ch;
  color:var(--tn-muted);
  font-size:.88rem;
  line-height:1.55;
}

.hydrorisk-task-card:hover,
.hydrorisk-task-card:focus-visible{
  background:rgba(201,162,39,.07);
  outline:2px solid transparent;
}

.hydrorisk-advanced-entry{
  display:flex;
  align-items:center;
  gap:14px 20px;
  flex-wrap:wrap;
  margin-top:18px;
}

.hydrorisk-advanced-entry > span{
  color:var(--tn-muted);
  font-family:var(--mono);
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.hydrorisk-advanced-entry button{
  padding:5px 0;
  border:0;
  border-bottom:1px solid var(--tn-rule);
  background:transparent;
  color:var(--tn-ink);
  font:700 .78rem var(--sans);
  cursor:pointer;
}

.hydrorisk-advanced-entry button:hover,
.hydrorisk-advanced-entry button:focus-visible{
  border-bottom-color:var(--tn-gold);
  outline:none;
}

@media screen and (max-width:900px){
  .hydrorisk-task-entry{padding:28px 18px 24px}
  .hydrorisk-task-head{grid-template-columns:1fr;gap:12px}
  .hydrorisk-task-grid{grid-template-columns:1fr}
  .hydrorisk-task-card,
  .hydrorisk-task-card + .hydrorisk-task-card{
    min-height:auto;
    padding:18px 0 20px;
    border-right:0;
    border-bottom:1px solid var(--tn-rule);
  }
  .hydrorisk-task-card:last-child{border-bottom:0}
  .hydrorisk-task-number{margin-bottom:10px}
  .hydrorisk-task-card strong{font-size:1.45rem}
  .hydrorisk-advanced-entry{align-items:flex-start}
}

/* HydroRisk engineering tools: shared hierarchy for IDF, SCS and discharge. */
#panel-idf,
#panel-cuenca,
#panel-caudal{
  scroll-margin-top:112px;
  padding-top:clamp(24px,3vw,42px);
}

#panel-idf > .card,
#panel-cuenca > .card,
#panel-caudal > .card{
  margin:0 !important;
  padding:0 0 clamp(34px,4vw,54px) !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

#panel-idf > .card + .card{
  padding-top:clamp(30px,4vw,52px) !important;
  border-top:1px solid rgba(156,124,38,.32) !important;
}

#panel-idf > .card > h3,
#panel-cuenca > .card > h3,
#panel-caudal > .card > h3{
  max-width:1040px;
  margin:0 0 10px !important;
  font-family:var(--serif) !important;
  font-size:clamp(2rem,3vw,3.15rem) !important;
  font-weight:700 !important;
  line-height:1.03 !important;
  letter-spacing:0 !important;
  color:#071D1A !important;
  text-wrap:balance;
}

#panel-idf > .card > .subtitle,
#panel-cuenca > .card > .subtitle,
#panel-caudal > .card > .subtitle{
  max-width:980px !important;
  margin:0 0 clamp(24px,3vw,36px) !important;
  color:#31433C !important;
  font-size:clamp(.94rem,1vw,1.04rem) !important;
  line-height:1.6 !important;
}

#panel-idf .form-grid,
#panel-cuenca .form-grid,
#panel-caudal .form-grid{
  gap:16px clamp(18px,2.5vw,32px) !important;
  margin-bottom:18px !important;
}

#panel-idf .form-group label,
#panel-cuenca .form-group label,
#panel-caudal .form-group label{
  margin-bottom:7px !important;
  color:#3B4943 !important;
  font-family:var(--sans) !important;
  font-size:.69rem !important;
  font-weight:750 !important;
  line-height:1.3 !important;
  letter-spacing:0 !important;
  text-transform:uppercase;
}

#panel-idf .form-group input,
#panel-idf .form-group select,
#panel-cuenca .form-group input,
#panel-cuenca .form-group select,
#panel-caudal .form-group input,
#panel-caudal .form-group select{
  min-height:46px !important;
  border:1px solid rgba(133,114,71,.42) !important;
  border-radius:7px !important;
  background:rgba(250,246,238,.55) !important;
  color:#071D1A !important;
  box-shadow:none !important;
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
}

#panel-idf .form-group input:focus,
#panel-idf .form-group select:focus,
#panel-cuenca .form-group input:focus,
#panel-cuenca .form-group select:focus,
#panel-caudal .form-group input:focus,
#panel-caudal .form-group select:focus{
  border-color:#6E5A20 !important;
  outline:2px solid rgba(156,124,38,.22) !important;
  outline-offset:2px;
}

#panel-idf .chart-wrap,
#panel-cuenca .chart-wrap{
  padding:14px 12px 8px !important;
  border:1px solid rgba(133,114,71,.30) !important;
  border-radius:8px !important;
  background:rgba(250,246,238,.46) !important;
  box-shadow:none !important;
  backdrop-filter:blur(5px);
  -webkit-backdrop-filter:blur(5px);
}

#panel-idf .tool-sync-note,
#panel-cuenca .tool-sync-note,
#panel-caudal .tool-sync-note{
  color:#4A5B54 !important;
  font-size:.76rem !important;
  line-height:1.58 !important;
}

#panel-idf #idf-method-note,
#panel-caudal #caudal-method-note{
  max-width:980px;
  margin:4px 0 24px !important;
  padding:12px 0 !important;
  border-top:1px solid rgba(133,114,71,.24);
  border-bottom:1px solid rgba(133,114,71,.24);
}

#panel-cuenca #scs-dem-trace,
#panel-cuenca #scs-outlet-trace{
  max-width:1080px;
  margin-top:7px !important;
}

#panel-idf .panel-inline-note,
#panel-idf .panel-method-note,
#panel-cuenca .panel-method-note,
#panel-caudal .formula{
  margin-top:20px !important;
  padding:15px 0 !important;
  border-top:1px solid rgba(133,114,71,.28) !important;
  border-bottom:1px solid rgba(133,114,71,.28) !important;
  border-left:0 !important;
  border-right:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

#panel-idf .period-toggles,
#panel-caudal .method-row,
#panel-idf .tool-inline-actions,
#panel-cuenca .tool-inline-actions,
#panel-caudal .tool-inline-actions{
  gap:8px 10px !important;
}

#panel-idf .technical-disclosure,
#panel-cuenca .technical-disclosure,
#panel-caudal .technical-disclosure{
  margin-top:22px !important;
  border:0 !important;
  border-top:1px solid rgba(133,114,71,.30) !important;
  border-bottom:1px solid rgba(133,114,71,.30) !important;
  border-radius:0 !important;
  background:rgba(250,246,238,.22) !important;
  box-shadow:none !important;
}

#panel-idf .technical-disclosure summary,
#panel-cuenca .technical-disclosure summary,
#panel-caudal .technical-disclosure summary{
  min-height:48px;
  color:#142E29 !important;
}

#panel-caudal .result-box,
#panel-cuenca .metrics > *,
#panel-idf .dur-grid > *{
  border-color:rgba(133,114,71,.34) !important;
  background:rgba(250,246,238,.58) !important;
  box-shadow:none !important;
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
}

@media screen and (max-width:700px){
  #panel-idf,
  #panel-cuenca,
  #panel-caudal{
    scroll-margin-top:82px;
    padding-top:26px;
  }

  #panel-idf > .card > h3,
  #panel-cuenca > .card > h3,
  #panel-caudal > .card > h3{
    font-size:clamp(1.85rem,9vw,2.35rem) !important;
    text-wrap:pretty;
  }

  #panel-idf .chart-wrap,
  #panel-cuenca .chart-wrap{
    padding:10px 6px 6px !important;
  }

  #panel-idf .tool-inline-actions,
  #panel-cuenca .tool-inline-actions,
  #panel-caudal .tool-inline-actions{
    align-items:stretch !important;
  }

  #panel-idf .tool-inline-actions .btn-ghost,
  #panel-cuenca .tool-inline-actions .btn-ghost,
  #panel-caudal .tool-inline-actions .btn-ghost{
    width:100%;
    justify-content:center;
  }
}
