@import url(https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;700&family=IBM+Plex+Sans:wght@400;500;600&display=swap);body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.app-error-boundary{align-items:center;background:#f8fafc;color:#0f172a;display:flex;flex-direction:column;gap:12px;justify-content:center;min-height:100vh;padding:24px;text-align:center}.app-error-boundary h1{font-size:1.5rem;margin:0}.app-error-boundary__message{color:#475569;margin:0;max-width:36rem}.app-error-boundary__reload{background:#fff;border:1px solid #0f172a26;border-radius:8px;cursor:pointer;font:inherit;padding:8px 16px}.app-error-boundary__reload:hover{background:#f1f5f9}.comparison-priority{background:#0f7b6c0a;border:1px solid #0f7b6c38;border-radius:10px;margin-top:10px;padding:8px 10px}.comparison-priority-header{align-items:baseline;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;margin-bottom:6px}.comparison-priority-header h5{align-items:center;color:var(--ink);display:inline-flex;font-family:Space Grotesk,IBM Plex Sans,sans-serif;font-size:.86rem;font-weight:600;gap:6px;margin:0}.comparison-priority-empty,.comparison-priority-meta{color:var(--ink-soft);font-size:.76rem;line-height:1.35;margin:0}.comparison-priority-deliberate{background:#ffffffb8;border:1px solid #0f7b6c2e;border-radius:8px;margin:0 0 8px;padding:6px 8px}.comparison-priority-tabs{display:inline-flex;gap:4px;margin-bottom:6px}.comparison-priority-tab{background:#ffffffb3;border:1px solid #1d273824;border-radius:999px;color:var(--ink-soft);cursor:pointer;font-size:.72rem;font-weight:600;padding:2px 9px}.comparison-priority-tab.is-active{background:#0f7b6c1f;border-color:#0f7b6c59;color:#1a4d45}.comparison-priority-brief-cards{display:flex;flex-direction:column;gap:6px;list-style:none;margin:0;padding:0}.comparison-priority-brief-card{background:#ffffffe6;border:1px solid #1d27381f;border-radius:8px;padding:6px 8px}.comparison-priority-brief-card--support{background:#0f7b6c12;border-color:#0f7b6c52}.comparison-priority-brief-card--check{background:#d1a02214;border-color:#d1a02247}.comparison-priority-brief-card--challenge,.comparison-priority-brief-card--weaken{background:#c93e3e0f;border-color:#c93e3e38}.comparison-priority-brief-top{align-items:baseline;display:flex;font-size:.8rem;gap:8px;justify-content:space-between}.comparison-priority-brief-top span{color:var(--ink-soft);font-size:.68rem;font-weight:600}.comparison-priority-brief-body,.comparison-priority-brief-list{color:var(--ink);font-size:.78rem;line-height:1.4;margin:6px 0 0}.comparison-priority-brief-list{padding-left:1.1rem}.comparison-priority-brief-list li+li{margin-top:4px}.comparison-priority-deliberate-note{color:var(--ink-soft);font-size:.7rem;margin:6px 0 0}.comparison-priority-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-columns:repeat(var(--comparison-cols,2),minmax(0,1fr));margin-bottom:8px}.comparison-priority-card{background:#ffffffd1;border:1px solid var(--card-border);border-radius:8px;display:flex;flex-direction:column;gap:4px;min-width:0;padding:6px 8px}.comparison-priority-card--warning{border-color:#d17f2259}.comparison-priority-card--detection{border-color:#c93e3e47}.comparison-priority-card--normal{border-color:#0f7b6c38}.comparison-priority-card-top{align-items:center;display:flex;gap:6px;justify-content:space-between}.comparison-priority-district{color:var(--ink);font-size:.82rem;font-weight:700;line-height:1.2;margin:0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.comparison-priority-status{align-items:center;align-self:flex-start;border:1px solid #0000;border-radius:999px;display:inline-flex;font-size:.68rem;font-weight:600;gap:4px;padding:1px 6px}.comparison-priority-status--warning{background:#d17f2224;border-color:#d17f2252;color:#8a2f14}.comparison-priority-status--detection{background:#c93e3e1a;border-color:#c93e3e47;color:#7a2b2b}.comparison-priority-status--normal{background:#0f7b6c1a;border-color:#0f7b6c47;color:var(--accent-strong)}.comparison-priority-icons{display:inline-flex;gap:2px}.comparison-priority-icons .table-alert-icon{font-size:.75rem;line-height:1}.comparison-priority-cues{align-items:center;display:flex;flex-wrap:wrap;gap:4px}.comparison-priority-action,.comparison-priority-uncertainty{font-size:.7rem;font-weight:600}.comparison-priority-action{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--ink-soft);display:-webkit-box;line-height:1.25;overflow:hidden}.comparison-priority-uncertainty{align-self:flex-start;border:1px solid #0000;border-radius:999px;display:inline-flex;padding:1px 6px}.comparison-priority-uncertainty--low{background:#0f7b6c1f;border-color:#0f7b6c47;color:#0f5c52}.comparison-priority-uncertainty--moderate{background:#d1a02224;border-color:#d1a02252;color:#6a4a12}.comparison-priority-uncertainty--high{background:#c93e3e1a;border-color:#c93e3e47;color:#7a2b2b}.comparison-priority-rank{align-items:center;color:var(--ink-soft);display:inline-flex;flex-shrink:0;font-size:.68rem;font-weight:600;gap:4px;margin:0}.comparison-priority-rank-label{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.comparison-priority-rank .toolbar-select{font-size:.72rem;min-width:64px;padding:2px 4px}.comparison-priority-justify{color:var(--ink-soft);display:flex;flex-direction:column;font-size:.74rem;font-weight:600;gap:3px;margin-bottom:6px}.comparison-priority-justify textarea{background:#fff;border:1px solid var(--card-border);border-radius:8px;color:var(--ink);font:inherit;font-size:.78rem;font-weight:400;min-height:34px;padding:5px 8px;resize:vertical;width:100%}.comparison-priority-justify textarea:focus{border-color:var(--accent);outline:2px solid #0f7b6c47}.comparison-priority-actions{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:4px}.comparison-priority-actions .decision-panel-btn{-webkit-appearance:none;appearance:none;background:#fff;border:1px solid var(--card-border);border-radius:8px;color:var(--ink);cursor:pointer;font:inherit;font-size:.78rem;font-weight:600;padding:5px 10px}.comparison-priority-actions .decision-panel-btn--confirm{background:var(--accent);border-color:var(--accent);color:#fff}.comparison-priority-actions .decision-panel-btn--ghost{background:#0000;color:var(--ink-soft);font-weight:500}.comparison-priority-saved,.comparison-priority-toast{color:var(--ink-soft);font-size:.74rem;line-height:1.35;margin:4px 0 0}.comparison-priority-toast{color:var(--accent-strong)}.comparison-priority-saved-time{font-size:.7rem}@media (max-width:720px){.comparison-priority-grid{grid-template-columns:1fr}}:root{--bg-base:#eff3f8;--bg-accent:#d8e7f3;--ink:#1d2738;--ink-soft:#4c5a70;--card:#ffffffb8;--card-border:#506d9629;--shadow:0 18px 40px #1827421f;--accent:#0f7b6c;--accent-strong:#0d6156;--warn:#c93e3e;--detect:#d17f22;--dash-shell-padding:10px;--dash-panel-gap:12px;--dash-viewport-chrome:450px;--dash-chart-height:clamp(150px,calc((100vh - var(--dash-viewport-chrome))/2),320px);--dash-evidence-viewport-chrome:360px;--dash-evidence-chart-height:clamp(170px,calc((100vh - var(--dash-evidence-viewport-chrome))/2),380px);--dash-map-min-height:0;--dash-compare-min-height:345px}*{box-sizing:border-box}body{background:radial-gradient(circle at 12% 10%,#0f7b6c24,#0000 36%),radial-gradient(circle at 84% 12%,#4c84b824,#0000 40%),linear-gradient(150deg,#eff3f8,#d8e7f3);background:radial-gradient(circle at 12% 10%,#0f7b6c24,#0000 36%),radial-gradient(circle at 84% 12%,#4c84b824,#0000 40%),linear-gradient(150deg,var(--bg-base),var(--bg-accent));color:#1d2738;color:var(--ink);font-family:IBM Plex Sans,Segoe UI,sans-serif}.dashboard-shell{min-height:100vh;padding:10px;padding:var(--dash-shell-padding)}.study-condition-banner{background:#eff3f8e6;border:1px solid #506d9629;border:1px solid var(--card-border);border-radius:8px;color:#1d2738;color:var(--ink);font-size:.8rem;line-height:1.35;margin:8px 0 0;padding:6px 12px}.study-condition-banner--baseline{background:#d1a0221f;border-color:#d1a02266;color:#6a4a12}.study-condition-banner--edi{background:#0f7b6c1a;border-color:#0f7b6c59;color:#0f5c52}.dashboard-layout{margin-top:10px;margin-top:var(--dash-shell-padding);min-height:calc(100vh - 96px)}.main-content{min-width:0}.decision-layers{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid #506d9629;border:1px solid var(--card-border);border-radius:14px;box-shadow:0 18px 40px #1827421f;box-shadow:var(--shadow);height:-webkit-fit-content;height:fit-content;padding:16px}.decision-layers,.decision-layers-stack{background:#ffffffb8;background:var(--card)}.decision-layers-stack{align-items:stretch;border:1px solid #506d9629;border:1px solid var(--card-border);border-radius:12px;display:flex;flex-wrap:wrap;gap:8px 12px;margin:0 0 10px;padding:8px 12px}.decision-layers-stack>.decision-layers{align-self:center;-webkit-backdrop-filter:none;backdrop-filter:none;background:#0000;border:0;border-radius:0;box-shadow:none;flex:1 1 420px;margin:0;padding:0}.decision-layers-compact{align-items:center;border-radius:12px;box-shadow:none;display:flex;flex-wrap:wrap;gap:8px 14px;margin:0 0 10px;padding:8px 12px}.env-layers{margin-top:0}.env-layers-compact{align-items:center;border-radius:12px;box-shadow:none;display:flex;flex-wrap:wrap;gap:8px 12px;margin:0 0 10px;padding:8px 12px}.env-layers-date-range{align-items:center;display:flex;flex-direction:row;flex-wrap:nowrap;gap:8px;width:100%}.env-date-field{align-items:center;flex:0 0 auto;flex-direction:row;gap:4px;white-space:nowrap}.env-date-field-label{color:#4c5a70;color:var(--ink-soft,#64748b);font-size:.75rem;font-weight:500;white-space:nowrap}.env-layers-date-range .toolbar-input{font-size:.8rem;padding:4px 6px;width:126px}.env-layers-epiweek-badge{font-feature-settings:"tnum";color:#3b82f6;color:var(--accent-primary,#3b82f6);display:inline-block;font-size:.72rem;font-variant-numeric:tabular-nums;font-weight:600;line-height:1;white-space:nowrap}.env-layers-compact .env-layers-epiweek-badge{margin-left:2px}.epiweek-slicer{display:flex;flex:1 1 auto;flex-direction:column;gap:2px;min-width:140px;padding:0 2px}.epiweek-slicer-labels{display:flex;gap:4px;justify-content:space-between}.epiweek-slicer-label{display:flex;flex-direction:column;line-height:1.15}.epiweek-slicer-label--end{text-align:right}.epiweek-slicer-week{font-feature-settings:"tnum";color:#3b82f6;color:var(--accent-primary,#3b82f6);font-size:.75rem;font-variant-numeric:tabular-nums;font-weight:600}.epiweek-slicer-date{font-feature-settings:"tnum";color:#3341558c;font-size:.64rem;font-variant-numeric:tabular-nums}.epiweek-slicer-track-wrap{height:24px;position:relative}.epiweek-slicer-track-wrap:before{background:#64748b2e;content:"";left:0;right:0}.epiweek-slicer-track-fill,.epiweek-slicer-track-wrap:before{border-radius:2px;height:4px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.epiweek-slicer-track-fill{background:#3b82f6;background:var(--accent-primary,#3b82f6);z-index:1}.epiweek-slicer-thumb{-webkit-appearance:none;appearance:none;background:#0000;height:24px;left:0;margin:0;pointer-events:none;position:absolute;top:0;width:100%;z-index:2}.epiweek-slicer-thumb::-webkit-slider-thumb{-webkit-appearance:none;background:#3b82f6;background:var(--accent-primary,#3b82f6);border:2px solid #fff;border-radius:50%;box-shadow:0 1px 3px #0000002e;cursor:pointer;height:16px;pointer-events:all;width:16px}.epiweek-slicer-thumb::-moz-range-thumb{background:#3b82f6;background:var(--accent-primary,#3b82f6);border:2px solid #fff;border-radius:50%;box-shadow:0 1px 3px #0000002e;cursor:pointer;height:16px;pointer-events:all;width:16px}.epiweek-slicer-thumb--end{z-index:3}.env-layers-compact .env-layers-date-range .map-surface-control{align-items:center;flex-direction:row;gap:6px;margin-left:auto;white-space:nowrap}.env-layers-compact .env-layers-date-range .map-surface-layer-select{font-size:.82rem;min-width:180px;padding:5px 8px;width:180px}.env-layers-time-controls{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.env-layers-time-mode{gap:6px;white-space:nowrap}.env-layers-time-mode .toolbar-select{font-size:.82rem;min-width:0;padding:5px 8px;width:150px}.env-layers-week-label{gap:6px;white-space:nowrap}.env-layers-week-label span:last-child{color:#4c5a70;color:var(--ink-soft);font-weight:600}.env-layers-week-slider{width:120px}.env-layers-time-controls .toolbar-button{padding:6px 10px}.env-layers-average-note{color:#4c5a70;color:var(--ink-soft);font-size:.82rem;line-height:1.2}.env-fetch-sidebar{margin-top:14px}.env-fetch-sidebar .env-controls,.env-fetch-sidebar .toolbar-field{align-items:stretch;flex-direction:column}.env-fetch-sidebar .toolbar-field{width:100%}.env-fetch-sidebar .toolbar-input,.env-fetch-sidebar .toolbar-select{min-width:0;width:100%}.env-fetch-sidebar .toolbar-button{width:100%}.decision-layers h3{color:#1d2738;color:var(--ink);font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:1.1rem;margin:0 0 16px}.decision-layers-compact h3,.env-layers-compact h3{font-size:.92rem;margin:0;white-space:nowrap}.layer-item{align-items:center;border-radius:8px;display:flex;gap:12px;margin-bottom:12px;padding:8px;transition:background-color .2s ease}.decision-layers-compact .layer-item,.env-layers-compact .layer-item{margin-bottom:0;padding:3px 4px}.layer-item:hover{background:#ffffff1a}.layer-checkbox,.layer-radio{display:none}.layer-label{color:#4c5a70;color:var(--ink-soft);cursor:pointer;flex:1 1;font-size:.9rem;font-weight:500;gap:8px}.layer-icon,.layer-label{align-items:center;display:flex}.layer-icon{border-radius:4px;font-size:12px;font-weight:700;height:20px;justify-content:center;transition:all .2s ease;width:20px}.decision-layers-compact .layer-label,.env-layers-compact .layer-label{flex:0 0 auto;font-size:.86rem;gap:6px;white-space:nowrap}.decision-layers-compact .layer-icon,.env-layers-compact .layer-icon{font-size:11px;height:18px;width:18px}.layer-checkbox:checked+.layer-label .layer-icon,.layer-radio:checked+.layer-label .layer-icon{box-shadow:0 2px 8px #0003;transform:scale(1.1)}.alert-type-legend{display:flex;flex-direction:column;gap:2px;margin-bottom:4px}.alert-type-status-icons{align-items:center;display:inline-flex;gap:0}.alert-type-status-icons .table-alert-icon{font-size:12px;height:24px;width:24px}.alert-type-def{color:#4c5a70;color:var(--ink-soft,#64748b);font-size:.72rem;font-weight:400}.decision-layers-compact .alert-type-def{display:none}.layer-checkbox[id=early-warning]:checked+.layer-label{color:#dc2626}.layer-checkbox[id=early-warning]+.layer-label .layer-icon{background:linear-gradient(135deg,#dc2626,#ea580c);color:#fff}.layer-checkbox[id=early-detection]:checked+.layer-label{color:#ea580c}.layer-checkbox[id=early-detection]+.layer-label .layer-icon{background:linear-gradient(135deg,#ea580c,#f97316);color:#fff}.layer-radio[id=env-rainfall]:checked+.layer-label{color:#2563eb}.layer-radio[id=env-rainfall]+.layer-label .layer-icon{background:linear-gradient(135deg,#2563ebe6,#0ea5e9d9);color:#fff}.layer-radio[id=env-temperature]:checked+.layer-label{color:#b45309}.layer-radio[id=env-temperature]+.layer-label .layer-icon{background:linear-gradient(135deg,#d97706eb,#ef4444db);color:#fff}.layer-radio[id=env-ndvi]:checked+.layer-label{color:#15803d}.layer-radio[id=env-ndvi]+.layer-label .layer-icon{background:linear-gradient(135deg,#15803deb,#22c55ed1);color:#fff}.layer-checkbox:not(:checked)+.layer-label .layer-icon,.layer-radio:not(:checked)+.layer-label .layer-icon{background:#e5e7eb;color:#9ca3af}.top-toolbar{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffb8;background:var(--card);border:1px solid #506d9629;border:1px solid var(--card-border);border-radius:10px;box-shadow:0 18px 40px #1827421f;box-shadow:var(--shadow);display:flex;flex-wrap:nowrap;gap:4px;min-height:0;overflow:visible;padding:5px 10px;width:100%}.top-toolbar .brand-mark{font-size:.88rem;letter-spacing:.06em}.top-toolbar .toolbar-cluster{border-radius:8px;gap:4px;padding:2px 6px}.top-toolbar .toolbar-actions{gap:4px}.top-toolbar .toolbar-field{font-size:.8rem;gap:4px}.top-toolbar .toolbar-input,.top-toolbar .toolbar-select{border-radius:6px;font-size:.8rem;padding:3px 6px}.top-toolbar .toolbar-button{border-radius:6px;font-size:.8rem;padding:4px 8px}.top-toolbar .toolbar-project-name{font-size:.72rem;max-width:140px}.top-toolbar .help-tip-icon{font-size:8px;height:12px;width:12px}.toolbar-brand-block{display:flex;flex-direction:column;gap:1px;line-height:1.1}.toolbar-subtitle{color:#4c5a70;color:var(--ink-soft,#64748b);font-size:.67rem;font-weight:400;letter-spacing:.01em;white-space:nowrap}.brand-mark{flex:0 0 auto;font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:1.02rem;font-weight:700;letter-spacing:.08em;margin-right:2px;white-space:nowrap}.brand-version{font-size:.68rem;font-weight:500;letter-spacing:.04em;line-height:1;opacity:.55;vertical-align:super}.toolbar-cluster{align-items:center;background:rgba(15,23,42,.035);border:1px solid #0f172a12;border-radius:12px;display:flex;flex-wrap:wrap;gap:8px;padding:5px 10px}.toolbar-cluster--workspace{align-items:center;background:none;border:none;border-right:1px solid #0f172a1a;flex:0 0 auto;gap:6px;margin-right:2px;padding:0 8px 0 0}.toolbar-cluster--context{flex:1 1 auto;min-width:0}.toolbar-select--disease{max-width:170px;overflow:hidden;text-overflow:ellipsis}.toolbar-select--country{max-width:90px}.toolbar-select--region{max-width:120px}.toolbar-select--district{max-width:150px}.toolbar-cluster--output{border-left:1px solid #0f172a1a;flex:0 1 auto;margin-left:auto;padding-left:10px}.toolbar-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.toolbar-field{align-items:center;color:#4c5a70;color:var(--ink-soft);display:inline-flex;font-size:.92rem;font-weight:500;gap:8px}.toolbar-input,.toolbar-select{background:#ffffffe0;border:1px solid #c9d6e5;border-radius:10px;color:#1d2738;color:var(--ink);font-size:.92rem;padding:6px 9px}.toolbar-input:focus,.toolbar-select:focus{border-color:#0f7b6c;border-color:var(--accent);outline:2px solid #0f7b6c47}.toolbar-button{background:linear-gradient(135deg,#0f7b6c,#1a9d88);background:linear-gradient(135deg,var(--accent),#1a9d88);border:none;border-radius:10px;color:#fff;cursor:pointer;font-weight:600;padding:7px 12px;transition:transform .15s ease,box-shadow .15s ease}.toolbar-button:hover:enabled{box-shadow:0 10px 20px #0f7b6c40;transform:translateY(-1px)}.toolbar-button:disabled{cursor:default;opacity:.6}.toolbar-button.ghost{box-shadow:none;color:#4c5a70}.toolbar-button--upload{align-items:center;background:#0f7b6c1a;border-color:#0f7b6c40;color:#0a6b5e;display:inline-flex;gap:4px}.toolbar-button--upload:hover:enabled{background:#0f7b6c2e;border-color:#0f7b6c66;color:#084d45}.toolbar-icon{flex-shrink:0;height:15px;width:15px}.toolbar-button--help{align-items:center;background:#0f172a0f;border:1px solid #0f172a1f;border-radius:50%;color:#4c5a70;color:var(--ink-soft,#64748b);cursor:pointer;display:inline-flex;font-size:.78rem;font-weight:700;height:22px;justify-content:center;line-height:1;padding:0;width:22px}.toolbar-button--help:hover{background:#0f172a1a;color:#1d2738;color:var(--ink,#1e293b)}.toolbar-button.ghost:hover:enabled{background:#0f172a0a;box-shadow:none;transform:none}.toolbar-project-name{align-self:center;color:#0d6156;color:var(--accent-strong);font-size:.82rem;font-weight:600;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.help-tip{flex:0 0 auto;margin-left:4px;vertical-align:middle}.help-tip,.help-tip-icon{align-items:center;display:inline-flex;justify-content:center}.help-tip-icon{background:#0f7b6c1f;border-radius:50%;color:#0d6156;color:var(--accent-strong);cursor:help;font-family:Georgia,Times New Roman,serif;font-size:10px;font-style:italic;font-weight:700;height:15px;line-height:1;width:15px}.help-tip-portal{background:#1d2738;border-radius:8px;box-shadow:0 8px 24px #0f172a47;color:#fff;font-size:.78rem;font-weight:400;line-height:1.45;max-width:min(280px,calc(100vw - 24px));padding:8px 10px;pointer-events:none;position:fixed;text-align:left;transform:translate(-50%,calc(-100% - 4px));white-space:normal;width:-webkit-max-content;width:max-content;z-index:10000}.help-tip-portal-below{transform:translate(-50%,4px)}.help-tip:focus{outline:none}.help-tip:focus .help-tip-icon{outline:2px solid #0f7b6c59;outline-offset:1px}.forecast-card-label,.layer-heading-label,.panel-header-label,.side-panel-tab-label,.toolbar-action-wrap,.toolbar-field-label{align-items:center;display:inline-flex;gap:2px}.dashboard-content{grid-gap:12px;grid-gap:var(--dash-panel-gap);display:grid;gap:12px;gap:var(--dash-panel-gap);margin-top:12px;margin-top:var(--dash-panel-gap)}.dashboard-hero{padding:0 2px 4px}.dashboard-hero-row{align-items:center;display:flex;flex-wrap:wrap;gap:14px 18px;justify-content:flex-start}.dashboard-hero-row .dashboard-title{flex:0 1 auto;margin:0;min-width:0}.dashboard-hero-row .situation-strip{align-items:center;flex:0 0 auto;gap:10px 14px;justify-content:flex-start;margin-left:0;padding:0}.dashboard-hero .situation-stat{gap:0}.dashboard-hero .situation-stat-caption,.dashboard-hero .situation-stat-label{display:none}.dashboard-hero .situation-stat-ring{height:66px;width:66px}.dashboard-hero .situation-stat--pipeline .situation-stat-ring{height:72px;width:72px}.dashboard-hero .situation-stat-value--number{font-size:1.12rem}.dashboard-hero .situation-stat-value{font-size:.78rem}.situation-strip{align-items:flex-start;display:flex;flex-wrap:wrap;gap:10px 18px;padding:2px 2px 6px}.current-situation-layers{align-items:stretch;flex-direction:column;gap:6px;width:100%}.current-situation-header-row{align-items:center;display:flex;flex-wrap:wrap;gap:6px 12px;width:100%}.current-situation-header-row h3{flex:0 0 auto}.current-situation-fields{align-items:flex-start;display:flex;flex-wrap:wrap;gap:6px 14px;width:100%}.current-situation-visuals{grid-gap:8px;display:grid;gap:8px;grid-template-columns:minmax(120px,.9fr) minmax(180px,1.4fr) minmax(160px,1.2fr);width:100%}.situation-visual-card{background:#ffffffb8;border:1px solid #0f172a14;border-radius:8px;display:flex;flex-direction:column;gap:4px;min-width:0;padding:6px 8px}.situation-visual-label{color:#4c5a70;color:var(--ink-soft);font-size:.66rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.situation-visual-empty{color:#4c5a70;color:var(--ink-soft);font-size:.82rem}.situation-alert-visual__body,.situation-alert-visual__counts{align-items:center;display:flex;flex-wrap:wrap;gap:6px;min-height:28px}.situation-alert-visual__status{color:#1d2738;color:var(--ink);font-size:.78rem;font-weight:700}.situation-count-chip{align-items:center;background:#0f172a0a;border-radius:999px;display:inline-flex;font-size:.78rem;gap:4px;padding:2px 6px 2px 2px}.situation-count-chip strong{font-weight:700;min-width:1ch}.situation-count-chip--warning{color:#b45309}.situation-count-chip--detection{color:#c2410c}.situation-count-chip.is-zero{opacity:.45}.situation-level-pill{border-radius:999px;font-size:.68rem;font-weight:700;letter-spacing:.03em;padding:1px 6px;text-transform:uppercase}.situation-level--high{background:#dc26261f;color:#b91c1c}.situation-level--medium{background:#ea580c1f;color:#c2410c}.situation-level--low{background:#3b82f61f;color:#1d4ed8}.situation-level--none{background:#64748b1f;color:#475569}.situation-evidence-visual__body,.situation-forecast-visual__body{display:flex;flex-direction:column;gap:4px;min-width:0}.situation-forecast-bar-track,.situation-threshold-bar__track{background:#0f172a14;border-radius:999px;height:8px;overflow:hidden;position:relative}.situation-forecast-bar-fill,.situation-threshold-bar__fill{border-radius:999px;height:100%}.situation-forecast-bar-fill--forecast.situation-status--warning,.situation-threshold-bar__fill.situation-status--warning{background:linear-gradient(90deg,#fbbf24,#dc2626)}.situation-forecast-bar-fill--forecast.situation-status--detection,.situation-threshold-bar__fill.situation-status--detection{background:linear-gradient(90deg,#fdba74,#ea580c)}.situation-forecast-bar-fill--forecast.situation-status--normal,.situation-threshold-bar__fill.situation-status--normal{background:linear-gradient(90deg,#94a3b8,#64748b)}.situation-threshold-bar__marker{background:#0f172a;bottom:-1px;margin-left:-1px;opacity:.55;position:absolute;top:-1px;width:2px}.situation-forecast-bar-row,.situation-threshold-bar__labels{align-items:center;color:#4c5a70;color:var(--ink-soft);display:flex;font-size:.68rem;gap:6px;justify-content:space-between}.situation-threshold-bar__threshold-label{white-space:nowrap}.situation-forecast-bars{display:flex;flex-direction:column;gap:3px}.situation-forecast-bar-row{justify-content:flex-start}.situation-forecast-bar-row>span:first-child{flex:0 0 28px;font-weight:600}.situation-forecast-bar-track{flex:1 1 auto;min-width:48px}.situation-forecast-bar-row strong{color:#1d2738;color:var(--ink);flex:0 0 auto;font-size:.72rem;min-width:2.5em;text-align:right}.situation-forecast-bar-fill--observed{background:linear-gradient(90deg,#93c5fd,#3b82f6)}.situation-persistence{align-items:flex-start;display:flex;flex-direction:column;gap:3px}.situation-persistence-dots{align-items:center;display:flex;gap:3px}.situation-persistence-label{color:#4c5a70;color:var(--ink-soft);font-size:.64rem;line-height:1.2}.situation-persistence-dot{background:#0f172a1f;border-radius:50%;height:7px;width:7px}.situation-persistence-dot.is-active{background:#dc2626}.situation-alert-visual .situation-detection-window{margin-top:2px;width:100%}.situation-detection-window-dot{height:9px;width:9px}.situation-alert-visual .situation-persistence-dots{gap:5px}.situation-district-chip{align-self:flex-start;background:#0f172a0f;border-radius:999px;color:#4c5a70;color:var(--ink-soft);font-size:.68rem;font-weight:600;max-width:100%;overflow:hidden;padding:1px 6px;text-overflow:ellipsis;white-space:nowrap}@media (max-width:1100px){.current-situation-visuals{grid-template-columns:1fr 1fr}.situation-forecast-visual{grid-column:1/-1}}@media (max-width:720px){.current-situation-visuals{grid-template-columns:1fr}.situation-forecast-visual{grid-column:auto}}.current-situation-scope{flex:1 1 160px;line-height:1.35;min-width:0;white-space:normal}.current-situation-status--warning{color:#b45309}.current-situation-status--detection{color:#c2410c}.current-situation-status--normal{color:#1d2738;color:var(--ink)}.situation-stat{align-items:center;display:flex;flex-direction:column;gap:5px;min-width:0}.situation-stat-ring{flex-shrink:0;height:77px;position:relative;width:77px}.situation-stat--pipeline .situation-stat-ring{height:85px;width:85px}.situation-stat-core{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffb8;background:var(--card);border:2px solid #0f172a14;border-radius:50%;box-shadow:0 18px 40px #1827421f;box-shadow:var(--shadow);display:flex;height:100%;justify-content:center;padding:10px;position:relative;text-align:center;width:100%;z-index:1}.situation-stat-ring--ready .situation-stat-core{border-color:#0f7b6c59}.situation-stat-ring--loading .situation-stat-core,.situation-stat-ring--running .situation-stat-core{border-color:#2563eb59}.situation-stat-ring--error .situation-stat-core{border-color:#d977066b}.situation-stat--warnings .situation-stat-core{border-color:#9932cc47}.situation-stat--detections .situation-stat-core{border-color:#4682b452}.situation-stat--districts .situation-stat-core{border-color:#0f7b6c38}.situation-stat-progress{height:100%;inset:0;pointer-events:none;position:absolute;transform:rotate(-90deg);width:100%}.situation-stat-progress-fill,.situation-stat-progress-track{fill:none;stroke-width:4}.situation-stat-progress-track{stroke:#0f172a14}.situation-stat-progress-fill{stroke:#2563eb;stroke-linecap:round;transition:stroke-dashoffset .35s ease}.situation-stat-value{color:#1d2738;color:var(--ink);font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.84rem;font-weight:700;line-height:1.15}.situation-stat-value--number{font-size:1.28rem}.situation-stat-core.situation-pipeline-ready .situation-stat-value{color:#0d6156;color:var(--accent-strong)}.situation-stat-core.situation-pipeline-loading .situation-stat-value,.situation-stat-core.situation-pipeline-running .situation-stat-value{color:#2563eb}.situation-stat-core.situation-pipeline-error .situation-stat-value{color:#c93e3e;color:var(--warn)}.situation-stat-label{align-items:center;display:inline-flex;font-size:.64rem;font-weight:600;gap:2px;justify-content:center;letter-spacing:.03em;line-height:1.2;max-width:96px;text-transform:uppercase}.situation-stat-caption,.situation-stat-label{color:#4c5a70;color:var(--ink-soft);text-align:center}.situation-stat-caption{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;font-size:.62rem;font-weight:500;line-height:1.25;max-width:112px;overflow:hidden}.forecast-cards{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr))}.forecast-card p.situation-pipeline-ready{color:#0d6156;color:var(--accent-strong)}.forecast-card p.situation-pipeline-loading,.forecast-card p.situation-pipeline-running{color:#2563eb}.forecast-card p.situation-pipeline-error{color:#c93e3e;color:var(--warn)}.forecast-card-pipeline .situation-pipeline-detail{color:#4c5a70;color:var(--ink-soft);font-size:.72rem;font-weight:500;line-height:1.35;margin:4px 0 0}.situation-pipeline-progress{background:#0f172a14;border-radius:999px;height:5px;margin-top:8px;overflow:hidden}.situation-pipeline-progress-fill{background:linear-gradient(135deg,#0f7b6c,#1a9d88);background:linear-gradient(135deg,var(--accent),#1a9d88);border-radius:inherit;height:100%;transition:width .35s ease}.forecast-card{padding:12px}.forecast-card h4{color:#4c5a70;color:var(--ink-soft);font-size:.82rem;letter-spacing:.02em;margin:0;text-transform:uppercase}.forecast-card p{font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:1.34rem;font-weight:700;margin:6px 0 0}.regional-alert-summary{margin-bottom:14px;padding:14px 16px}.regional-alert-summary--embedded{align-items:stretch;background:#0000;border:0;border-left:1px solid #506d961f;border-radius:0;box-shadow:none;display:flex;flex:1 1 260px;flex-direction:column;gap:4px;margin:0;max-width:440px;min-width:240px;padding:0 0 0 12px}.regional-alert-inline-label{align-items:center;color:#4c5a70;color:var(--ink-soft);display:inline-flex;flex:0 0 auto;font-size:.78rem;font-weight:600;gap:4px;white-space:nowrap}.regional-alert-inline-legend{color:#4c5a70;color:var(--ink-soft);display:flex;font-size:.72rem;gap:10px}.regional-alert-inline-legend i{border-radius:2px;display:inline-block;height:8px;margin-right:4px;vertical-align:middle;width:8px}.regional-alert-inline-empty{color:#4c5a70;color:var(--ink-soft);flex:1 1 auto;font-size:.75rem;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.regional-alert-inline-chart{flex:1 1 auto;min-height:80px;min-width:0}.regional-alert-summary--compact{margin-bottom:12px}.regional-alert-summary--embedded.regional-alert-summary--compact:not(.regional-alert-summary--below-map){border-left:0;border-top:1px solid #506d961f;margin-bottom:0;max-width:none;padding-left:0;padding-top:8px;width:100%}.regional-alert-summary-header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px}.regional-alert-summary-header h3{font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:1rem;margin:0}.regional-alert-summary-subtitle{color:#4c5a70;color:var(--ink-soft);font-size:.84rem;margin:4px 0 0}.regional-alert-chart-wrap{width:100%}.regional-alert-legend{color:#4c5a70;color:var(--ink-soft);display:flex;font-size:.8rem;gap:16px;margin-top:8px}.regional-alert-legend i{border-radius:2px;display:inline-block;height:10px;margin-right:6px;vertical-align:middle;width:10px}.regional-alert-tooltip{background:#0f172af0;border-radius:10px;color:#fff;font-size:.8rem;line-height:1.45;padding:10px 12px}.regional-alert-tooltip strong{display:block;margin-bottom:4px}.regional-alert-empty{color:#4c5a70;color:var(--ink-soft);font-size:.86rem;margin:0}.dashboard-kicker{color:#4c5a70;color:var(--ink-soft);font-size:.72rem;letter-spacing:.12em;margin:0 0 4px;text-transform:uppercase}.dashboard-title{font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:clamp(1.25rem,2vw,1.85rem);letter-spacing:.01em;margin:4px 0 0}.glass-card{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffb8;background:var(--card);border:1px solid #506d9629;border:1px solid var(--card-border);border-radius:14px;box-shadow:0 18px 40px #1827421f;box-shadow:var(--shadow)}.env-controls{align-items:center;display:flex;flex-wrap:wrap;gap:10px;padding:14px}.panel-title{font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.92rem;margin:0 0 4px;width:100%}.dashboard-grid{grid-gap:12px;grid-gap:var(--dash-panel-gap);align-items:stretch;display:grid;gap:12px;gap:var(--dash-panel-gap);grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);min-height:0}.insights-panel,.map-panel{padding:10px}.side-panel{display:flex;flex-direction:column;min-height:0}.workflow-breadcrumb{align-items:center;border-bottom:1px solid #0f172a0f;color:#4c5a70;color:var(--ink-soft,#64748b);display:flex;font-size:.7rem;gap:4px;letter-spacing:.02em;margin-bottom:6px;padding:4px 2px 6px}.workflow-step{align-items:center;border-radius:10px;cursor:default;display:inline-flex;gap:3px;padding:2px 6px;transition:color .15s,background .15s}.workflow-step--active{background:#3b82f6;background:var(--accent-primary,#3b82f6);color:#fff;font-weight:600}.workflow-step-num{font-size:.62rem;opacity:.7}.workflow-step--active .workflow-step-num{opacity:1}.workflow-step-arrow{font-size:.8rem;line-height:1;opacity:.35}.side-panel-tabs{background:#eff3f8b8;border:1px solid #d8e1ec;border-radius:12px;display:flex;gap:6px;margin-bottom:10px;padding:3px}.side-panel-tab{background:#0000;border:0;border-radius:9px;color:#4c5a70;color:var(--ink-soft);cursor:pointer;flex:1 1;font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.8rem;font-weight:600;min-width:0;padding:6px;transition:background .15s ease,color .15s ease,box-shadow .15s ease}.side-panel-tab:hover{background:#ffffffb8;color:#1d2738;color:var(--ink)}.side-panel-tab.active{background:#fff;box-shadow:0 1px 4px #0f172a14;color:#0d6156;color:var(--accent-strong)}.side-panel-body{flex:1 1;overflow:hidden}.side-panel-body,.side-panel-body.charts-view{display:flex;flex-direction:column;min-height:0}.side-panel-body.charts-view{--dash-chart-height:var(--dash-evidence-chart-height);gap:2px;overflow:auto}.insights-panel--evidence{padding:8px}.insights-panel--evidence .panel-header{margin-bottom:4px}.insights-panel--evidence .panel-header h3{font-size:.86rem}.insights-panel--evidence .panel-header-meta{font-size:.72rem}.insights-panel--evidence .workflow-breadcrumb{display:none}.insights-panel--evidence .side-panel-tabs{gap:4px;margin-bottom:6px;padding:2px}.insights-panel--evidence .side-panel-tab{font-size:.74rem;padding:4px}.insights-panel--evidence .regional-alert-panel{gap:2px;padding:0 0 2px}.insights-panel--evidence .regional-alert-panel-header{gap:4px 8px}.insights-panel--evidence .regional-alert-panel-title{font-size:.78rem}.insights-panel--evidence .regional-alert-inline-legend{font-size:.66rem;gap:6px}.insights-panel--evidence .regional-alert-panel-empty{font-size:.74rem;padding:4px 0 2px}.insights-panel--evidence .forecast-panel{margin-top:2px}.insights-panel--evidence .forecast-panel-header{margin-bottom:2px}.insights-panel--evidence .forecast-panel-title{font-size:.74rem}.insights-panel--evidence .forecast-panel-title .seasonal-context-ring{height:28px;width:28px}.insights-panel--evidence .forecast-panel-horizon-control,.insights-panel--evidence .forecast-panel-value-mode-control{font-size:.68rem}.insights-panel--evidence .forecast-panel-horizon-control .toolbar-select,.insights-panel--evidence .forecast-panel-refresh-btn,.insights-panel--evidence .forecast-panel-value-mode-control .toolbar-select{font-size:.68rem;padding:2px 4px}.insights-panel--evidence .forecast-panel-horizon-control .situation-stat--compact .situation-stat-ring{height:24px;width:24px}.insights-panel--evidence .forecast-panel-loading-note{font-size:.72rem;margin:0 0 4px}.insights-panel--evidence .env-chart-panel{gap:2px}.insights-panel--evidence .env-chart-panel-header{gap:4px 8px;padding:0}.insights-panel--evidence .env-chart-panel-title{font-size:.78rem}.insights-panel--evidence .env-chart-dataset-control{font-size:.68rem;gap:4px}.insights-panel--evidence .env-chart-dataset-control .toolbar-field-label{font-size:.68rem}.insights-panel--evidence .env-chart-dataset-control .toolbar-select{font-size:.68rem;min-width:132px;padding:2px 5px}.insights-panel--evidence .chart-state{font-size:.74rem;padding:4px 0}.side-panel-body.about-view{overflow:auto;padding:2px 4px 8px}.about-panel{color:#1d2738;color:var(--ink);display:flex;flex-direction:column;font-size:.92rem;gap:18px;line-height:1.55}.about-panel-header h4{color:#0d6156;color:var(--accent-strong);font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:1.05rem;margin:0 0 6px}.about-panel-tagline{color:#4c5a70;color:var(--ink-soft);font-size:.88rem;margin:0}.about-section h5{color:#1d2738;color:var(--ink);font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.95rem;margin:0 0 8px}.about-section p{color:#4c5a70;color:var(--ink-soft);margin:0 0 10px}.about-section-footer{font-size:.86rem;font-style:italic;margin-top:4px}.about-definition{background:#eff3f8d9;border:1px solid #dde5ef;border-radius:10px;margin:0 0 12px;padding:10px 12px}.about-definition dt{color:#1d2738;color:var(--ink);font-weight:700;margin:0 0 4px}.about-definition dd{color:#4c5a70;color:var(--ink-soft);margin:0}.side-panel-body.charts-view .regional-alert-panel{flex:0 0 auto;width:100%}.side-panel-body.decision-view{min-height:0;overflow:auto;padding:2px 0 0}.side-panel-body.decision-view .decision-panel{height:100%;margin:0;min-height:0}.side-panel-body.charts-view .env-chart-panel,.side-panel-body.charts-view .forecast-panel{display:flex;flex:1 1;flex-direction:column;min-height:0;width:100%}.side-panel-body.charts-view #epidemia-report-env-chart,.side-panel-body.charts-view #epidemia-report-forecast-chart{display:flex;flex:1 1;flex-direction:column;min-height:0}.side-panel-body.charts-view #epidemia-report-env-chart .chart-panel-slot,.side-panel-body.charts-view #epidemia-report-forecast-chart .chart-panel-slot{flex:1 1;height:100%;min-height:0;width:100%}.regional-alert-panel{display:flex;flex-direction:column;gap:6px;padding:0 2px 4px}.regional-alert-panel-header{align-items:center;display:flex;flex-wrap:wrap;gap:8px 12px;justify-content:space-between}.regional-alert-panel-title{color:#1d2738;color:var(--ink);font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.95rem;font-weight:600;margin:0}.regional-alert-panel-empty{color:#4c5a70;color:var(--ink-soft);font-size:.82rem;margin:0;padding:8px 0 4px}.regional-alert-panel-chart{max-height:64px;min-height:48px}.env-chart-panel{display:flex;flex-direction:column;gap:4px;width:100%}.env-chart-panel-header{align-items:center;display:flex;flex-wrap:wrap;gap:8px 12px;justify-content:space-between;padding:0 2px}.env-chart-panel-title{color:#1d2738;color:var(--ink);font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.95rem;gap:6px;margin:0}.env-chart-dataset-control,.env-chart-panel-title{align-items:center;display:inline-flex;font-weight:600}.env-chart-dataset-control{color:#4c5a70;color:var(--ink-soft);font-size:.82rem;gap:8px}.env-chart-dataset-control .toolbar-select{font-size:.84rem;min-width:168px;padding:6px 9px}.env-chart-panel .time-series-wrap .panel-title{display:none}.chart-panel-slot{overflow:hidden;position:relative}.chart-panel-slot .js-plotly-plot,.chart-panel-slot .plot-container.plotly,.chart-panel-slot .svg-container{height:100%!important;max-height:none;min-height:0!important;width:100%!important}.chart-panel-slot .modebar{right:0!important;top:0!important}.side-panel-body.table-view{display:flex;flex-direction:column;gap:0;overflow:auto}.side-panel-body.table-view .alerts-table-embedded{border-bottom:none;display:flex;flex:0 0 auto;flex-direction:column;margin-top:0;padding:0}.side-panel-body.table-view .alerts-table-embedded .alerts-table-wrap{flex:0 0 auto;max-height:none;overflow-x:auto;overflow-y:visible}.table-view-comparison{background:#ffffff59;border-top:1px solid #0f172a14;flex:0 0 auto;padding:10px 12px 12px}.table-view-comparison-intro{margin-bottom:8px}.table-view-comparison-intro-header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between;margin-bottom:4px}.comparison-highlight-mode{color:#4c5a70;color:var(--ink-soft);display:flex;flex-direction:column;font-size:.72rem;gap:2px;white-space:nowrap}.comparison-highlight-mode .toolbar-select{font-size:.78rem;min-width:168px}.table-view-comparison-intro h4{font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.92rem;margin:0}.table-view-comparison-intro p{color:#4c5a70;color:var(--ink-soft);font-size:.78rem;line-height:1.4;margin:0}.table-view-comparison .comparison-chart-wrap{height:auto;min-height:0;overflow:hidden}.table-view-comparison .js-plotly-plot,.table-view-comparison .plot-container{height:auto!important;min-height:0!important}.comparison-chart-wrap{min-height:345px;min-height:var(--dash-compare-min-height)}.map-panel{min-height:0}.map-panel,.map-panel-controls{display:flex;flex-direction:column}.map-panel-controls{background:rgba(15,23,42,.025);border:1px solid #506d9629;border:1px solid var(--card-border);border-radius:12px;gap:5px;margin-bottom:6px;padding:6px 10px}.map-panel-controls .current-situation-layers,.map-panel-controls .decision-layers-compact,.map-panel-controls .env-layers-compact{border:0;border-radius:0;box-shadow:none;margin:0;padding:0}.map-panel-controls .current-situation-layers{border-bottom:1px solid #506d961a;padding-bottom:6px}.map-panel-controls .alert-layers-panel{border-bottom:0;padding-bottom:0}.map-panel-controls .env-layers-compact{border-top:1px solid #506d961a;padding-top:6px}.panel-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.panel-header h3{font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:1rem;margin:0}.panel-header span,.panel-header-meta{color:#4c5a70;color:var(--ink-soft);font-size:.82rem}.panel-header-meta{align-items:center;display:inline-flex;gap:4px}.side-panel-tab-label{pointer-events:none}.side-panel-tab .help-tip{pointer-events:auto}.map-layer-controls{display:flex;flex-wrap:nowrap;gap:8px 12px;justify-content:flex-end}.map-surface-control{align-items:center;color:#4c5a70;color:var(--ink-soft);display:inline-flex;font-size:.82rem;font-weight:600;gap:8px}.map-surface-control .toolbar-select{font-size:.84rem;min-width:150px;padding:6px 9px}.map-surface-control .toolbar-select:disabled{background:#f1f5f9;cursor:not-allowed;opacity:.55}.map-surface-layer-select{min-width:210px}.map-wrap{border:1px solid #d0d9e6;border-radius:12px;flex:1 1;min-height:0;min-height:var(--dash-map-min-height);overflow:hidden;position:relative}.leaflet-bottom.leaflet-right .map-choropleth-legend{margin:0 6px 6px 0}.map-choropleth-legend{background:#fffffff0;border-radius:6px;box-shadow:0 1px 4px #0f172a2e;color:#1e293b;font-size:10px;line-height:1.25;max-width:min(156px,38vw);padding:5px 7px;pointer-events:auto}.map-choropleth-legend__head{align-items:baseline;display:flex;flex-wrap:wrap;gap:2px 5px;margin-bottom:3px}.map-choropleth-legend__title{color:#0f172a;font-size:10px;font-weight:700}.map-choropleth-legend__unit{color:#64748b;font-size:9px;font-weight:500}.map-choropleth-legend__rows{grid-gap:1px 6px;display:grid;gap:1px 6px;grid-template-columns:repeat(2,minmax(0,1fr))}.map-choropleth-legend__row{align-items:center;display:flex;gap:4px;min-width:0}.map-choropleth-legend__swatch{border-radius:2px;display:inline-block;flex-shrink:0;height:9px;width:11px}.map-choropleth-legend__label{color:#334155;font-size:9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.map-choropleth-legend__divider{border-top:1px solid #e2e8f0;margin:4px 0}.map-choropleth-legend__pins{border-top:1px solid #e2e8f0;color:#475569;display:flex;flex-wrap:wrap;font-size:9px;gap:4px 8px;margin-top:4px;padding-top:3px}.map-choropleth-legend__pin{white-space:nowrap}@media (max-width:1100px){.map-choropleth-legend{max-width:min(132px,34vw);padding:4px 6px}.map-choropleth-legend__rows{grid-template-columns:1fr}}@media (max-width:720px){.map-choropleth-legend{font-size:9px;max-width:min(118px,42vw)}.map-choropleth-legend__title{font-size:9px}.map-choropleth-legend__label{font-size:8px}}.map-alert-time-badge{background:#0f172ad1;border-radius:999px;box-shadow:0 2px 8px #0f172a40;color:#f8fafc;font-size:.78rem;font-weight:600;left:50%;letter-spacing:.02em;padding:6px 12px;pointer-events:none;position:absolute;top:12px;transform:translateX(-50%);z-index:1000}.alert-layers-panel{width:100%}.alert-layers-row{align-items:center;display:flex;flex-wrap:nowrap;gap:8px 12px;overflow-x:auto;scrollbar-width:thin;width:100%}.alert-layers-row>*{flex:0 0 auto}.alert-layers-row h3{margin:0}.alert-layers-row .layer-item{margin-bottom:0}.alert-layers-time-controls{display:contents}.alert-inline-select--time-mode{max-width:168px}.alert-inline-field{align-items:center;color:#4c5a70;color:var(--ink-soft);display:inline-flex;font-size:.78rem;gap:6px;white-space:nowrap}.alert-inline-field strong{color:#1d2738;color:var(--ink);font-weight:600}.alert-inline-select{font-size:.78rem;max-width:118px;min-width:0;padding:4px 6px;width:auto}.alert-inline-counts{color:#4c5a70;color:var(--ink-soft);font-size:.75rem;white-space:nowrap}.alert-inline-slider{flex:0 0 72px;margin:0;width:72px}.alert-inline-play{font-size:.78rem;line-height:1.2;min-width:0;padding:4px 10px;width:auto}.alert-inline-note{color:#4c5a70;color:var(--ink-soft);font-size:.75rem;white-space:nowrap}.district-map{height:100%;min-height:0;min-height:var(--dash-map-min-height);width:100%}.leaflet-control-home-button{background:#fff;border:0;border-bottom:1px solid #ccc;color:#000;cursor:pointer;font:700 18px/30px Arial,sans-serif;height:30px;text-align:center;width:30px}.leaflet-control-home-button:hover{background:#f4f4f4}.district-map .leaflet-tile-container{line-height:0}.district-map .leaflet-tile-pane .leaflet-tile{border:none;box-shadow:none;margin:-.5px}.district-map .leaflet-tile-pane canvas,.district-map .leaflet-tile-pane img{border:0;display:block;outline:none;vertical-align:top}.leaflet-div-icon.custom-alert-marker{background:#0000!important;border:none!important}.alert-row{margin:4px 0 10px}.alert-detection,.alert-warning{border-radius:999px;display:inline-block;font-size:.84rem;font-weight:600;padding:5px 10px}.alert-warning{background:#c93e3e24;color:#c93e3e;color:var(--warn)}.alert-detection{background:#d17f2226;color:#d17f22;color:var(--detect)}.dashboard-load-banner{background:#3b82f61a;border:1px solid #3b82f640;border-radius:8px;color:#1d4ed8;font-size:.82rem;font-weight:600;margin:0 12px 8px;padding:8px 12px}.dashboard-load-banner--error{background:#dc262614;border-color:#dc262640;color:#b91c1c}.map-panel-skeleton{align-items:center;animation:situation-skeleton-shimmer 1.2s ease-in-out infinite;background:linear-gradient(90deg,#0f172a0a 25%,#0f172a14 50%,#0f172a0a 75%);background-size:200% 100%;border-radius:12px;color:#4c5a70;color:var(--ink-soft);display:flex;font-size:.85rem;font-weight:600;justify-content:center;min-height:420px}.current-situation-visuals--loading{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(3,minmax(0,1fr))}.situation-visual-skeleton{animation:situation-skeleton-shimmer 1.2s ease-in-out infinite;background:linear-gradient(90deg,#0f172a0f 25%,#0f172a1a 50%,#0f172a0f 75%);background-size:200% 100%;border-radius:8px;display:block;min-height:56px}@keyframes situation-skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.chart-state{color:#66778f;padding:14px}.chart-state-error{color:#c93e3e;color:var(--warn)}.leaflet-tooltip.alert-explainer-tooltip,.leaflet-tooltip.district-info-tooltip-wrap,.leaflet-tooltip.district-map-tooltip{background:#0000;border:0;box-shadow:none;opacity:1;padding:0}.leaflet-pane.leaflet-tooltip-pane{pointer-events:none;z-index:900!important}.district-info-tooltip{background:#fffffff5;border:1px solid #d8e1ec;border-radius:12px;box-shadow:0 8px 24px #0f172a29;color:#1d2738;color:var(--ink);max-width:260px;min-width:210px;padding:10px 12px;text-align:left}.district-info-tooltip-row{align-items:baseline;display:flex;font-size:.8rem;gap:12px;justify-content:space-between;padding:4px 0}.district-info-tooltip-row+.district-info-tooltip-row{border-top:1px solid #506d961a}.district-info-tooltip-row span{color:#4c5a70;color:var(--ink-soft);font-weight:600}.district-info-tooltip-row strong{font-size:.82rem;text-align:right}.alert-map-tooltip{background:#fffffff5;border:1px solid #d8e1ec;border-radius:12px;box-shadow:0 8px 24px #0f172a29;color:#1d2738;color:var(--ink);max-width:280px;min-width:220px;padding:10px 12px;text-align:left}.alert-map-tooltip-kicker{color:#4c5a70;color:var(--ink-soft);font-size:.68rem;font-weight:700;letter-spacing:.08em;margin-bottom:4px;text-transform:uppercase}.alert-map-tooltip strong{display:block;font-size:.92rem;margin-bottom:6px}.alert-map-tooltip-status{border-radius:999px;display:inline-flex;font-size:.72rem;font-weight:700;margin-bottom:6px;padding:3px 8px}.alert-map-tooltip-status-warning{background:#dc26261f;color:#b91c1c}.alert-map-tooltip-status-detection{background:#f59e0b29;color:#b45309}.alert-map-tooltip p{font-size:.82rem;line-height:1.4;margin:0 0 8px}.alert-map-tooltip-metrics{font-weight:600;margin-bottom:8px}.alert-map-tooltip ul,.alert-map-tooltip-metrics{color:#4c5a70;color:var(--ink-soft);font-size:.78rem}.alert-map-tooltip ul{line-height:1.35;margin:0;padding-left:16px}.alert-map-tooltip li+li{margin-top:3px}.time-series-wrap{background:#ffffff8a;border:1px solid #d5deea;border-radius:6px;overflow:hidden;padding:0}.time-series-wrap .panel-title{margin:0 0 8px}.forecast-panel{border-top:0;margin-top:6px;padding-top:0}.forecast-panel-header{margin-bottom:4px;min-width:0}.forecast-panel-toolbar{display:flex;gap:5px;width:100%}.forecast-panel-title,.forecast-panel-toolbar{align-items:center;flex-wrap:nowrap;min-width:0}.forecast-panel-title{color:#1d2738;color:var(--ink);display:inline-flex;flex:1 1 auto;font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.78rem;font-weight:600;gap:4px;margin:0}.forecast-panel-title-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.forecast-panel-title .table-alert-icon{border-width:1px;font-size:9px;height:18px;width:18px}.forecast-panel-header .help-tip{margin-left:2px}.forecast-panel-header .help-tip-icon{font-size:8px;height:13px;width:13px}.seasonal-context-ring-wrap{align-items:center;display:inline-flex;flex-shrink:0;gap:1px}.forecast-panel-title .seasonal-context-ring{height:34px;width:34px}.forecast-panel-title .seasonal-context-ring-center{font-size:6.5px}.forecast-panel-title .seasonal-context-ring-week{font-size:5.5px}.seasonal-context-ring{align-items:center;cursor:help;display:inline-flex;flex-shrink:0;height:48px;justify-content:center;width:48px}.seasonal-context-ring svg{height:100%;width:100%}.seasonal-context-ring-center{fill:#1d2738;fill:var(--ink);font-size:9px;font-weight:700}.seasonal-context-ring-week{fill:#4c5a70;fill:var(--ink-soft);font-size:7.5px;font-weight:600}.forecast-panel-horizon-control{align-items:center;color:#4c5a70;color:var(--ink-soft);display:inline-flex;flex:0 0 auto;flex-wrap:nowrap;font-size:.74rem;font-weight:600;gap:4px}.forecast-panel-horizon-control .situation-stat--compact{align-items:center;flex-direction:row;gap:2px}.forecast-panel-horizon-control .situation-stat--compact .situation-stat-ring{height:30px;width:30px}.forecast-panel-horizon-control .situation-stat--compact .situation-stat-core{border-width:1px;box-shadow:none;padding:3px}.forecast-panel-horizon-control .situation-stat--compact .situation-stat-value{font-size:.58rem;line-height:1.1}.forecast-panel-horizon-control .situation-stat--compact .situation-stat-value--number{font-size:.68rem}.forecast-panel-horizon-control .toolbar-select{font-size:.74rem;min-width:62px;padding:3px 5px}.forecast-panel-value-mode-control{align-items:center;color:#4c5a70;color:var(--ink-soft);display:inline-flex;flex:0 0 auto;flex-wrap:nowrap;font-size:.74rem;font-weight:600;gap:4px}.forecast-panel-value-mode-control .toolbar-select{font-size:.74rem;min-width:118px;padding:3px 5px}.forecast-panel-refresh-btn{flex:0 0 auto;font-size:.74rem;padding:4px 8px;white-space:nowrap}.forecast-panel-loading-note{color:#0d6156;color:var(--accent-strong);font-size:.78rem;font-weight:500;margin:0 0 8px}.forecast-panel-loading-note--muted{color:#4c5a70;color:var(--ink-soft);font-weight:400}.forecast-chart-wrap{background:#ffffff8a;border:1px solid #d5deea;border-radius:6px;overflow:hidden;padding:0}.alerts-table-panel{margin-top:14px;padding:12px}.alerts-table-embedded{margin-top:0;padding:0}.panel-subtitle{font-size:.84rem;margin:4px 0 0}.alerts-table-sort,.panel-subtitle{color:#4c5a70;color:var(--ink-soft)}.alerts-table-sort{align-items:center;display:flex;flex-wrap:wrap;font-size:.86rem;gap:8px;margin-bottom:10px}.table-sort-button{background:#ffffff9e;border:1px solid #c9d6e5;border-radius:999px;color:#4c5a70;color:var(--ink-soft);cursor:pointer;font-size:.82rem;font-weight:600;padding:5px 9px}.table-sort-button.active{background:#0f7b6c1a;border-color:#0f7b6c66;color:#0d6156;color:var(--accent-strong)}.alerts-table-wrap{background:#ffffff7a;border:1px solid #d8e1ec;border-radius:12px;overflow:auto}.alerts-table-pagination{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin-top:10px}.alerts-table-page-info,.alerts-table-page-number{color:#4c5a70;color:var(--ink-soft);font-size:.84rem}.alerts-table-page-controls{align-items:center;display:flex;gap:10px}.alerts-table-page-jump{align-items:center;display:inline-flex}.alerts-table-page-select{-webkit-appearance:none;appearance:none;background:#ffffffb8 url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%23495367' d='m3 4.5 3 3 3-3'/%3E%3C/svg%3E") no-repeat right 10px center;border:1px solid #c9d6e5;border-radius:999px;color:#1d2738;color:var(--ink);cursor:pointer;font-size:.82rem;font-weight:600;min-width:4.5rem;padding:5px 28px 5px 12px}.alerts-table-page-select:focus,.alerts-table-page-select:hover{border-color:#0f7b6c66;box-shadow:0 0 0 2px #0f7b6c1f;outline:none}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.table-page-button{background:#ffffffb8;border:1px solid #c9d6e5;border-radius:999px;color:#4c5a70;color:var(--ink-soft);cursor:pointer;font-size:.82rem;font-weight:600;padding:6px 12px}.table-page-button:hover:not(:disabled){border-color:#0f7b6c66;color:#0d6156;color:var(--accent-strong)}.table-page-button:disabled{cursor:not-allowed;opacity:.45}.alerts-table{border-collapse:collapse;font-size:.84rem;min-width:1120px;width:100%}.alerts-table td,.alerts-table th{border-bottom:1px solid #506d961f;padding:9px 10px;text-align:left;white-space:nowrap}.alerts-table th{background:#eff3f8eb;color:#4c5a70;color:var(--ink-soft);font-size:.76rem;letter-spacing:.03em;text-transform:uppercase}.alerts-table-sparkline-cell{padding-bottom:6px;padding-top:6px;width:92px}.case-sparkline{color:#0f7b6c;color:var(--accent);display:block}.case-sparkline--warning{color:#dc2626}.case-sparkline--detection{color:#d97706}.case-sparkline--normal{color:#64748b}.case-sparkline-empty{color:#4c5a70;color:var(--ink-soft);font-size:.82rem}.alerts-table tbody tr{cursor:pointer;transition:background .15s ease}.alerts-table tbody tr:hover{background:#0f7b6c12}.alerts-table tbody tr.selected{background:#f59e0b24}.alerts-table tbody tr.compare-selected-1{box-shadow:inset 3px 0 0 #1f5b9b}.alerts-table tbody tr.compare-selected-2{box-shadow:inset 3px 0 0 #e04848}.alerts-table tbody tr.compare-selected-3{box-shadow:inset 3px 0 0 #7356d8}.compare-slot-badge{align-items:center;border-radius:999px;color:#fff;display:inline-flex;font-size:.68rem;font-weight:700;height:18px;justify-content:center;letter-spacing:.02em;margin-right:6px;min-width:22px;padding:0 5px;vertical-align:middle}.compare-slot-badge-1{background:#1f5b9b}.compare-slot-badge-2{background:#e04848}.compare-slot-badge-3{background:#7356d8}.alerts-table tbody tr.top-priority-row{box-shadow:inset 3px 0 0 #0f7b6cbf}.alerts-table tbody tr.top-priority-row-1{background:#fee2e26b}.alerts-table tbody tr.top-priority-row-2{background:#fef3c76b}.alerts-table tbody tr.top-priority-row-3{background:#e0f2fe6b}.alerts-table tbody tr.top-priority-row.selected{background:#f59e0b2e}.top-priority-badge{align-items:center;background:#0f7b6c24;color:#0d6156;color:var(--accent-strong);display:inline-flex;font-size:.72rem;justify-content:center;margin-right:6px;min-width:28px;padding:2px 6px;vertical-align:middle}.table-status,.top-priority-badge{border-radius:999px;font-weight:700}.table-status{display:inline-block;font-size:.78rem;padding:4px 8px}.table-status-icons{gap:6px}.table-alert-icon,.table-status-icons{align-items:center;display:inline-flex}.table-alert-icon{border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px #0000004d;color:#fff;flex-shrink:0;font-size:12px;height:24px;justify-content:center;line-height:1;width:24px}.table-alert-icon--warning{background:#dc2626}.table-alert-icon--detection{background:#d97706}.table-status-warning{background:#c93e3e24;color:#c93e3e;color:var(--warn)}.table-status-detection{background:#d17f2226;color:#d17f22;color:var(--detect)}.table-status-normal{background:#4c5a701f;color:#4c5a70;color:var(--ink-soft)}.positive-magnitude{color:#c93e3e;color:var(--warn);font-weight:700}.fade-in-up{animation:fade-in-up .52s ease-out both}.delay-1{animation-delay:.1s}.delay-2{animation-delay:.18s}@keyframes fade-in-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width:1100px){.mobile-view-switcher{grid-gap:8px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffe0;border:1px solid #506d9629;border:1px solid var(--card-border);border-radius:14px;box-shadow:0 10px 24px #18274214;display:grid;gap:8px;grid-template-columns:repeat(4,minmax(0,1fr));margin:0 0 12px;padding:6px;position:-webkit-sticky;position:sticky;top:8px;z-index:30}.mobile-view-tab{background:#0000;border:1px solid #0000;border-radius:10px;color:#4c5a70;color:var(--ink-soft);cursor:pointer;font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.82rem;font-weight:600;padding:10px 8px}.mobile-view-tab.active{background:#0f7b6c1a;border-color:#0f7b6c3d;color:#1d2738;color:var(--ink)}.mobile-summary-view{margin-bottom:12px;padding:14px}.mobile-summary-header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px}.mobile-summary-header h3{font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:1rem;margin:0 0 4px}.mobile-summary-subtitle,.mobile-summary-updated{color:#4c5a70;color:var(--ink-soft);font-size:.74rem;line-height:1.35;margin:0}.mobile-summary-updated{max-width:42%;text-align:right}.mobile-summary-stats{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:12px}.mobile-summary-stat{background:#ffffff8c;border:1px solid #506d9629;border:1px solid var(--card-border);border-radius:12px;display:flex;flex-direction:column;gap:4px;padding:10px}.mobile-summary-stat span{color:#4c5a70;color:var(--ink-soft);font-size:.72rem}.mobile-summary-stat strong{font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:1.15rem}.mobile-summary-stat-warning strong{color:#c93e3e;color:var(--warn)}.mobile-summary-stat-detection strong{color:#d17f22;color:var(--detect)}.mobile-summary-alert-card,.mobile-summary-selected{background:#ffffffb8;border:1px solid #506d9629;border:1px solid var(--card-border);border-radius:14px;cursor:pointer;padding:12px;text-align:left;width:100%}.mobile-summary-selected{display:flex;flex-direction:column;gap:4px;margin-bottom:12px}.mobile-summary-alert-region,.mobile-summary-selected-label{color:#4c5a70;color:var(--ink-soft);font-size:.74rem}.mobile-summary-selected-meta{color:#4c5a70;color:var(--ink-soft);font-size:.76rem}.mobile-summary-list-header{align-items:center;display:flex;gap:8px;justify-content:space-between;margin-bottom:8px}.mobile-summary-list-header h4{font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.88rem;margin:0}.mobile-summary-list-header span{color:#4c5a70;color:var(--ink-soft);font-size:.74rem}.mobile-summary-alert-list{display:flex;flex-direction:column;gap:8px}.mobile-summary-alert-card{display:flex;flex-direction:column;gap:6px}.mobile-summary-alert-card.is-selected{border-color:#0f7b6c59;box-shadow:inset 0 0 0 1px #0f7b6c1f}.mobile-summary-alert-card-top{align-items:center;display:flex;gap:8px;justify-content:space-between}.mobile-summary-alert-rank{color:#0d6156;color:var(--accent-strong);font-size:.72rem;font-weight:700}.summary-alert-status{align-items:center;border-radius:999px;display:inline-flex;font-size:.68rem;font-weight:600;padding:2px 8px}.summary-alert-status-warning{background:#c93e3e1f;color:#8f2d2d}.summary-alert-status-normal{background:#4c5a701a;color:#4c5a70;color:var(--ink-soft)}.mobile-summary-alert-metrics{grid-gap:6px;color:#4c5a70;color:var(--ink-soft);display:grid;font-size:.72rem;gap:6px;grid-template-columns:repeat(3,minmax(0,1fr))}.mobile-summary-alert-metrics strong{color:#1d2738;color:var(--ink);display:block;font-size:.82rem}.mobile-summary-empty{color:#4c5a70;color:var(--ink-soft);font-size:.8rem;margin:0}.dashboard-shell--compact .dashboard-hero{margin-bottom:6px}.dashboard-shell--compact .dashboard-hero-row{align-items:center}.dashboard-shell--compact .dashboard-hero-row .situation-strip{justify-content:flex-start;margin-left:0}.dashboard-shell--compact .dashboard-title{font-size:clamp(1.15rem,4vw,1.45rem)}.dashboard-shell--compact{overflow-x:clip}.dashboard-shell--compact .dashboard-grid,.dashboard-shell--compact .insights-panel,.dashboard-shell--compact .main-content,.dashboard-shell--compact .map-panel,.dashboard-shell--compact .map-wrap{max-width:100%;min-width:0}.dashboard-shell--compact .map-panel{overflow:hidden}.dashboard-shell--compact .map-panel-controls{padding:8px 10px}.dashboard-shell--compact .decision-layers-compact,.dashboard-shell--compact .env-layers-compact{align-items:stretch}.dashboard-shell--compact .env-layers-compact .env-layers-date-range{align-items:stretch;flex-direction:column;width:100%}.dashboard-shell--compact .env-layers-compact .env-layers-date-range .toolbar-field{white-space:normal;width:100%}.dashboard-shell--compact .env-layers-compact .env-layers-date-range .toolbar-input{width:100%}.dashboard-shell--compact .epiweek-slicer{min-width:0}.dashboard-shell--compact .env-layers-compact .env-layers-date-range .map-surface-control{align-self:flex-end;margin-left:0;white-space:normal;width:100%}.dashboard-shell--compact .env-layers-compact .env-layers-date-range .map-surface-layer-select{min-width:0;width:100%}.dashboard-shell--compact .district-map,.dashboard-shell--compact .map-wrap{max-width:100%;width:100%}.situation-strip{gap:12px 16px;justify-content:flex-start}.forecast-cards,.mobile-summary-stats-four{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid{grid-template-columns:1fr}.district-map,.map-wrap{min-height:420px}.toolbar-cluster--output{margin-left:0}}@media (max-width:640px){.dashboard-hero-row{gap:10px 12px}.dashboard-hero-row .situation-strip{justify-content:flex-start;width:auto}.dashboard-hero .situation-stat-label{display:inline-flex}.dashboard-hero .situation-stat{gap:5px}.situation-strip{display:flex;flex-wrap:wrap;gap:10px 14px;justify-content:flex-start}.situation-stat-caption{max-width:92px}.forecast-cards,.mobile-summary-alert-metrics,.mobile-summary-stats{grid-template-columns:1fr}.mobile-summary-stats-four{grid-template-columns:repeat(2,minmax(0,1fr))}.mobile-summary-updated{max-width:none;text-align:left}.mobile-summary-header{flex-direction:column}.dashboard-shell{padding:10px}.top-toolbar{border-radius:10px;padding:8px}.toolbar-cluster{padding:6px 8px;width:100%}.toolbar-cluster--context{flex-basis:100%}.toolbar-field{justify-content:space-between;width:100%}.toolbar-button,.toolbar-input,.toolbar-select{width:56%}.district-map,.map-wrap{min-height:350px}}@media (min-width:1101px){.dashboard-shell:not(.dashboard-shell--compact){display:flex;flex-direction:column;height:100vh;max-height:100vh;min-height:0;overflow:hidden}.dashboard-shell:not(.dashboard-shell--compact) .dashboard-layout{display:flex;flex:1 1;flex-direction:column;margin-top:8px;min-height:0}.dashboard-shell:not(.dashboard-shell--compact) .main-content{display:flex;flex:1 1;flex-direction:column;min-height:0}.dashboard-shell:not(.dashboard-shell--compact) .dashboard-hero{flex-shrink:0;padding:0 2px}.dashboard-shell:not(.dashboard-shell--compact) .dashboard-kicker{margin-bottom:2px}.dashboard-shell:not(.dashboard-shell--compact) .dashboard-title{font-size:clamp(1.05rem,1.6vw,1.5rem);margin:0}.dashboard-shell:not(.dashboard-shell--compact) .dashboard-grid{flex:1 1;min-height:0}.dashboard-shell:not(.dashboard-shell--compact) .insights-panel,.dashboard-shell:not(.dashboard-shell--compact) .map-panel{height:100%;min-height:0;overflow:hidden}.dashboard-shell:not(.dashboard-shell--compact) .map-panel{display:flex;flex-direction:column}.dashboard-shell:not(.dashboard-shell--compact) .district-map,.dashboard-shell:not(.dashboard-shell--compact) .map-wrap{flex:1 1;min-height:0}.dashboard-shell:not(.dashboard-shell--compact) .insights-panel--evidence .panel-header{margin-bottom:3px}.dashboard-shell:not(.dashboard-shell--compact) .insights-panel--evidence .panel-header h3{font-size:.82rem}.dashboard-shell:not(.dashboard-shell--compact) .insights-panel--evidence .side-panel-tabs{margin-bottom:4px}.dashboard-shell:not(.dashboard-shell--compact) .panel-header{margin-bottom:6px}.dashboard-shell:not(.dashboard-shell--compact) .panel-header h3{font-size:.92rem}.dashboard-shell:not(.dashboard-shell--compact) .side-panel-tabs{margin-bottom:6px}.dashboard-shell:not(.dashboard-shell--compact) .side-panel{flex:1 1;min-height:0}.dashboard-shell:not(.dashboard-shell--compact) .side-panel-body.charts-view{flex:1 1;overflow:hidden}.dashboard-shell:not(.dashboard-shell--compact) .side-panel-body.about-view,.dashboard-shell:not(.dashboard-shell--compact) .side-panel-body.decision-view,.dashboard-shell:not(.dashboard-shell--compact) .side-panel-body.table-view{overflow:auto}.dashboard-shell:not(.dashboard-shell--compact) .forecast-panel-header{margin-bottom:4px}.dashboard-shell:not(.dashboard-shell--compact) .regional-alert-panel{flex-shrink:0}}.dashboard-tour{inset:0;pointer-events:none;position:fixed;z-index:10000}.dashboard-tour-backdrop{background:#101c2c47;inset:0;pointer-events:auto;position:fixed;z-index:10000}.dashboard-tour-spotlight{background:#0000;border:2px solid #0f7b6cf2;border-radius:12px;box-shadow:0 0 0 9999px #101c2c94;pointer-events:none;position:fixed;transition:top .22s ease,left .22s ease,width .22s ease,height .22s ease;z-index:10001}.dashboard-tour-tooltip{background:#fff;border:1px solid #506d9629;border:1px solid var(--card-border);border-radius:14px;box-shadow:0 16px 40px #18274238;color:#1d2738;color:var(--ink);padding:16px 16px 14px;pointer-events:auto;width:min(360px,calc(100vw - 32px))}.dashboard-tour-progress{color:#4c5a70;color:var(--ink-soft);font-size:11px;font-weight:600;letter-spacing:.04em;margin-bottom:6px;text-transform:uppercase}.dashboard-tour-title{color:#1d2738;color:var(--ink);font-family:Space Grotesk,IBM Plex Sans,sans-serif;font-size:1.15rem;font-weight:700;line-height:1.25;margin:0 0 8px}.dashboard-tour-body{color:#4c5a70;color:var(--ink-soft);font-size:.92rem;line-height:1.45;margin:0 0 14px}.dashboard-tour-actions{align-items:center;display:flex;gap:10px;justify-content:space-between}.dashboard-tour-actions-right{align-items:center;display:flex;gap:8px}.dashboard-tour-btn{-webkit-appearance:none;appearance:none;border:1px solid #0000;border-radius:999px;cursor:pointer;font-family:inherit;font-size:.88rem;font-weight:600;padding:7px 14px}.dashboard-tour-btn:disabled{cursor:not-allowed;opacity:.4}.dashboard-tour-btn.ghost{background:#0000;border-color:#506d9647;color:#4c5a70;color:var(--ink-soft)}.dashboard-tour-btn.ghost:hover:not(:disabled){border-color:#506d9680;color:#1d2738;color:var(--ink)}.dashboard-tour-btn.primary{background:#0f7b6c;background:var(--accent);color:#fff}.dashboard-tour-btn.primary:hover{background:#0d6156;background:var(--accent-strong)}.project-wizard-overlay{align-items:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0f172a7a;display:flex;inset:0;justify-content:center;padding:24px;position:fixed;z-index:2000}.project-wizard-card{background:#fffffff0;border:1px solid var(--card-border);border-radius:18px;box-shadow:var(--shadow);max-height:calc(100vh - 48px);overflow:auto;padding:24px 28px;width:min(760px,100%)}.project-wizard-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:18px}.project-wizard-kicker{color:var(--accent);font-size:.78rem;font-weight:600;letter-spacing:.08em;margin:0 0 6px;text-transform:uppercase}.project-wizard-header h2{font-family:Space Grotesk,Trebuchet MS,sans-serif;margin:0 0 8px}.project-wizard-subtitle{color:var(--ink-soft);line-height:1.45;margin:0}.project-wizard-skip{background:#0000;border:0;color:var(--ink-soft);cursor:pointer;font-size:.86rem;white-space:nowrap}.project-wizard-steps{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0 0 18px;padding:0}.project-wizard-step{align-items:center;background:#0f172a0f;border-radius:999px;color:var(--ink-soft);display:inline-flex;font-size:.78rem;font-weight:600;gap:8px;padding:6px 10px}.project-wizard-step span{align-items:center;background:#0f172a14;border-radius:50%;display:inline-flex;height:20px;justify-content:center;width:20px}.project-wizard-step.active{background:#0f7b6c1f;color:var(--accent-strong)}.project-wizard-step.done{background:#0f7b6c14;color:var(--accent)}.project-wizard-error{background:#c93e3e1a;border-radius:10px;color:#9f1f1f;font-size:.88rem;margin-bottom:14px;padding:10px 12px}.project-wizard-panel{grid-gap:16px;display:grid;gap:16px}.project-wizard-upload{grid-gap:12px;display:grid;gap:12px}.project-wizard-dropzone{grid-gap:6px;background:#0f7b6c0a;border:2px dashed #0f7b6c59;border-radius:14px;cursor:pointer;display:grid;gap:6px;justify-items:center;padding:28px 18px;text-align:center}.project-wizard-dropzone input{display:none}.project-wizard-dropzone-note{color:var(--ink-soft);font-size:.78rem}.project-wizard-upload-actions{display:flex;flex-wrap:wrap;gap:10px}.project-wizard-file-summary{background:#0f172a0d;border-radius:10px;display:flex;gap:12px;justify-content:space-between;padding:10px 12px}.project-wizard-checklist{grid-gap:8px;display:grid;gap:8px;list-style:none;margin:0;padding:0}.project-wizard-checklist li{grid-gap:10px;background:#0f172a0a;border-radius:10px;display:grid;gap:10px;grid-template-columns:28px 1fr;padding:10px 12px}.project-wizard-checklist li.ok span{color:var(--accent)}.project-wizard-checklist li.missing span{color:var(--warn)}.project-wizard-checklist strong{display:block;margin-bottom:2px}.project-wizard-checklist p{color:var(--ink-soft);font-size:.82rem;margin:0}.project-wizard-validation{border-radius:12px;padding:12px 14px}.project-wizard-validation.ok{background:#0f7b6c14}.project-wizard-validation.bad{background:#c93e3e14}.project-wizard-validation-grid{color:var(--ink-soft);display:flex;flex-wrap:wrap;font-size:.84rem;gap:10px 16px;margin-top:8px}.project-wizard-unmatched{color:var(--ink-soft);font-size:.82rem;margin:8px 0 0}.project-wizard-note code{font-size:.92em}.project-wizard-mapping-grid{grid-gap:10px;display:grid;gap:10px}.project-wizard-mapping-row{grid-gap:12px;align-items:center;background:#0f172a0a;border-radius:10px;display:grid;gap:12px;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);padding:10px 12px}.project-wizard-mapping-target{grid-gap:2px;display:grid;gap:2px}.project-wizard-mapping-target strong{font-size:.88rem}.project-wizard-mapping-target span{color:var(--ink-soft);font-size:.78rem;line-height:1.35}.project-wizard-mapping-errors{background:#c93e3e14;border-radius:10px;color:#9f1f1f;font-size:.84rem;padding:10px 12px}.project-wizard-mapping-errors p{margin:0}.project-wizard-mapping-errors p+p{margin-top:4px}.project-wizard-form-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.project-wizard-field{grid-gap:6px;color:var(--ink-soft);display:grid;font-size:.84rem;font-weight:600;gap:6px}.project-wizard-field .toolbar-input,.project-wizard-field .toolbar-select{width:100%}.project-wizard-field-hint{color:#64748b;color:var(--ink-muted,#64748b);font-size:.78rem;font-weight:400;line-height:1.4}.project-wizard-note{color:var(--ink-soft);font-size:.82rem;line-height:1.45;margin:0}.project-wizard-actions{display:flex;gap:10px;justify-content:flex-end}.toolbar-button.ghost{background:#0000;border:1px solid #0f172a1f;color:var(--ink-soft)}.project-wizard-run-panel{padding:24px 12px;text-align:center}.project-wizard-spinner{animation:project-wizard-spin .9s linear infinite;border:3px solid #0f7b6c2e;border-radius:50%;border-top:3px solid var(--accent);height:42px;margin:0 auto 14px;width:42px}@keyframes project-wizard-spin{to{transform:rotate(1turn)}}@media (max-width:720px){.project-wizard-form-grid,.project-wizard-mapping-row{grid-template-columns:1fr}.project-wizard-header{flex-direction:column}}
/*# sourceMappingURL=main.839ff117.css.map*/