@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800&display=swap";:root,[data-theme=dark]{--primary:#4f8ef7;--primary-dark:#3b7ae8;--primary-light:#7aabfa;--primary-glow:#4f8ef71f;--danger:#f87171;--danger-dark:#ef4444;--danger-bg:#f871711a;--warning:#fbbf24;--warning-bg:#fbbf241a;--success:#34d399;--success-bg:#34d3991a;--safe:#34d399;--bg:#0c0f14;--bg-card:#141820;--bg-elevated:#1c2230;--bg-glass:#141820e0;--border:#ffffff0f;--border-subtle:#ffffff08;--text:#f1f5f9;--text-secondary:#94a3b8;--text-muted:#64748b;--text-on-primary:#fff;--map-bg:#111620;--overlay-subtle:#ffffff0a;--shell-border:#ffffff0f;--root-bg:#080a0f;--phone-shadow:0 40px 100px #0000008c;--font-sans:"Plus Jakarta Sans", -apple-system, sans-serif;--font-display:"Plus Jakarta Sans", -apple-system, sans-serif;--radius-sm:10px;--radius-md:14px;--radius-lg:18px;--radius-xl:24px;--bottom-nav:88px;--page-pad:20px;--shadow-sm:0 1px 2px #0003;--shadow-md:0 4px 16px #00000040;--shadow-card:0 1px 3px #00000026;--shadow-glow:0 8px 24px #4f8ef733}[data-theme=light]{--primary-glow:#4f8ef714;--danger-bg:#f8717114;--warning-bg:#fbbf2414;--success-bg:#34d39914;--bg:#f8fafc;--bg-card:#fff;--bg-elevated:#f1f5f9;--bg-glass:#ffffffe6;--border:#0f172a0f;--border-subtle:#0f172a08;--text:#0f172a;--text-secondary:#475569;--text-muted:#94a3b8;--map-bg:#e8edf4;--overlay-subtle:#0f172a0a;--shell-border:#0f172a14;--root-bg:#e2e8f0;--phone-shadow:0 40px 100px #0f172a1f;--shadow-sm:0 1px 2px #0f172a0a;--shadow-md:0 4px 16px #0f172a0f;--shadow-card:0 1px 3px #0f172a0a;--shadow-glow:0 8px 24px #4f8ef71f}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;overflow:hidden}body{font-family:var(--font-sans);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;letter-spacing:-.01em;font-size:14px;line-height:1.5}#root{background:var(--root-bg);justify-content:center;align-items:center;height:100%;display:flex}.phone-shell{background:var(--bg);flex-direction:column;width:100%;max-width:480px;height:100dvh;display:flex;position:relative;overflow:hidden}@media (width>=481px){.phone-shell{border:1px solid var(--shell-border);height:min(844px,92dvh);box-shadow:var(--phone-shadow);border-radius:44px}}.status-bar{z-index:10;flex-shrink:0;justify-content:space-between;align-items:center;height:48px;padding:14px 28px 0;display:flex;position:relative}.status-time{color:var(--text);letter-spacing:-.02em;font-size:14px;font-weight:600}.status-icons{color:var(--text-secondary);align-items:center;gap:5px;display:flex}.screen{scrollbar-width:none;-ms-overflow-style:none;padding-bottom:var(--bottom-nav);flex:1;overflow:hidden auto}.screen::-webkit-scrollbar{display:none}.page{padding:8px var(--page-pad) 24px}.page-header{justify-content:space-between;align-items:flex-start;margin-bottom:24px;display:flex}.page-eyebrow{color:var(--text-muted);margin-bottom:4px;font-size:11px;font-weight:500}.page-title{color:var(--text);letter-spacing:-.03em;font-size:22px;font-weight:700;line-height:1.2}.page-subtitle{color:var(--text-muted);margin-top:2px;font-size:13px}.bottom-nav-wrap{z-index:30;pointer-events:none;align-items:center;gap:10px;display:flex;position:absolute;bottom:16px;left:16px;right:16px}.bottom-nav{background:var(--bg-glass);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border);height:60px;box-shadow:var(--shadow-md);pointer-events:auto;border-radius:20px;flex:1;justify-content:space-around;align-items:center;padding:0 6px;display:flex}.nav-item{cursor:pointer;color:var(--text-muted);background:0 0;border:none;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-width:52px;padding:8px 12px;transition:all .2s;display:flex}.nav-item:hover{color:var(--text-secondary)}.nav-item.active{color:var(--primary);background:var(--primary-glow)}.nav-item svg{width:20px;height:20px}.nav-label{letter-spacing:0;font-size:10px;font-weight:500}.nav-item.fab{background:var(--primary);color:#fff;width:48px;min-width:48px;height:48px;box-shadow:var(--shadow-glow);border-radius:16px;padding:0;transform:translateY(-2px)}.nav-item.fab:hover{color:#fff;background:var(--primary-dark)}.nav-badge{background:var(--danger);color:#fff;border:2px solid var(--bg-card);border-radius:50%;justify-content:center;align-items:center;width:14px;height:14px;font-size:8px;font-weight:700;display:flex;position:absolute;top:-2px;right:-4px}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:18px}.card-flat{background:var(--bg-card);border-radius:var(--radius-lg);padding:16px}.card-interactive{cursor:pointer;transition:transform .15s,box-shadow .15s}.card-interactive:active{transform:scale(.985)}.risk-badge{letter-spacing:.04em;text-transform:uppercase;border-radius:100px;align-items:center;gap:5px;padding:4px 10px;font-size:10px;font-weight:600;display:inline-flex}.risk-badge.critical{background:var(--danger-bg);color:var(--danger)}.risk-badge.high{background:var(--warning-bg);color:var(--warning)}.risk-badge.moderate{color:#fbbf24;background:#fbbf241a}.risk-badge.low,.risk-badge.info{background:var(--success-bg);color:var(--success)}.risk-badge.info{background:var(--primary-glow);color:var(--primary)}.risk-hero{border-radius:var(--radius-xl);cursor:pointer;margin-bottom:16px;padding:22px;transition:transform .15s;position:relative;overflow:hidden}.risk-hero:active{transform:scale(.99)}.risk-hero-label{color:var(--text-muted);margin-bottom:8px;font-size:11px;font-weight:500}.risk-hero-value{letter-spacing:-.04em;font-size:48px;font-weight:700;line-height:1}.risk-hero-unit{opacity:.6;font-size:18px;font-weight:500}.risk-stats{gap:8px;margin-top:18px;display:flex}.risk-stat{background:var(--overlay-subtle);border-radius:var(--radius-sm);text-align:center;flex:1;padding:12px 8px}.risk-stat-value{color:var(--text);letter-spacing:-.02em;font-size:14px;font-weight:600}.risk-stat-label{color:var(--text-muted);margin-top:2px;font-size:10px}.icon-btn{border-radius:var(--radius-md);background:var(--bg-card);border:1px solid var(--border);width:40px;height:40px;color:var(--text-secondary);cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;transition:all .15s;display:flex;position:relative}.icon-btn:hover{color:var(--text);background:var(--bg-elevated)}.icon-btn-badge{background:var(--danger);color:#fff;border:2px solid var(--bg);border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;font-size:9px;font-weight:700;display:flex;position:absolute;top:-3px;right:-3px}@keyframes pulse-ring{0%{opacity:1;transform:scale(.8)}to{opacity:0;transform:scale(2.4)}}@keyframes pulse-dot{0%,to{opacity:.4;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}@keyframes fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.animate-fade-in{animation:.35s forwards fade-in}.progress-bar{background:var(--overlay-subtle);border-radius:100px;height:4px;overflow:hidden}.progress-fill{border-radius:100px;height:100%;transition:width .8s cubic-bezier(.4,0,.2,1)}.section-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.section-title{color:var(--text);letter-spacing:-.02em;font-size:15px;font-weight:600}.section-link{color:var(--primary);cursor:pointer;background:0 0;border:none;padding:0;font-size:12px;font-weight:500}.btn-primary{background:var(--primary);color:#fff;border-radius:var(--radius-md);width:100%;font-family:var(--font-sans);cursor:pointer;letter-spacing:-.01em;border:none;padding:14px 20px;font-size:14px;font-weight:600;transition:all .15s}.btn-primary:hover:not(:disabled){background:var(--primary-dark)}.btn-primary:disabled{opacity:.4;cursor:not-allowed}.btn-danger{background:var(--danger);color:#fff;border-radius:var(--radius-md);width:100%;font-family:var(--font-sans);cursor:pointer;border:none;padding:14px 20px;font-size:14px;font-weight:600;transition:all .15s}.btn-ghost{color:var(--text-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);font-family:var(--font-sans);cursor:pointer;background:0 0;padding:8px 16px;font-size:13px;font-weight:500;transition:all .15s}.btn-ghost:hover{background:var(--bg-elevated);color:var(--text)}.btn-text{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;padding:4px 8px;font-size:13px;font-weight:500;transition:color .15s}.btn-text:hover{color:var(--text-secondary)}.scroll-row{scrollbar-width:none;gap:8px;padding-bottom:2px;display:flex;overflow-x:auto}.scroll-row::-webkit-scrollbar{display:none}.chip{background:var(--bg-elevated);color:var(--text-muted);white-space:nowrap;cursor:pointer;border:none;border-radius:100px;align-items:center;gap:4px;padding:6px 12px;font-size:12px;font-weight:500;transition:all .15s;display:inline-flex}.chip:hover{color:var(--text-secondary)}.chip.active{background:var(--primary);color:#fff}.chip-live{background:var(--success-bg);color:var(--success);border-radius:100px;padding:3px 8px;font-size:10px;font-weight:600}.list-item{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-card);align-items:center;gap:12px;padding:14px 16px;transition:transform .15s;display:flex}.list-item-interactive{cursor:pointer}.list-item-interactive:active{transform:scale(.99)}.list-item-accent{border-left:3px solid var(--accent,var(--primary))}.list-icon{border-radius:var(--radius-sm);background:var(--bg-elevated);flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:18px;display:flex}.action-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.action-btn{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;text-align:left;box-shadow:var(--shadow-card);flex-direction:column;align-items:flex-start;gap:10px;padding:16px;transition:all .15s;display:flex}.action-btn:hover{background:var(--bg-elevated)}.action-btn:active{transform:scale(.98)}.action-btn-icon{border-radius:var(--radius-sm);background:var(--primary-glow);width:36px;height:36px;color:var(--primary);justify-content:center;align-items:center;display:flex}.action-btn-label{color:var(--text);letter-spacing:-.01em;font-size:13px;font-weight:600}.sparkline{align-items:flex-end;gap:3px;height:48px;display:flex}.sparkline-bar{background:var(--primary-glow);border-radius:3px 3px 1px 1px;flex:1;transition:height .5s}.sparkline-bar.active{background:var(--primary)}.settings-list{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);overflow:hidden}.settings-row{align-items:center;gap:12px;padding:14px 16px;display:flex}.settings-row+.settings-row{border-top:1px solid var(--border-subtle)}.settings-icon{border-radius:var(--radius-sm);background:var(--bg-elevated);flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:14px;display:flex}.settings-label{color:var(--text);font-size:13px;font-weight:600}.settings-desc{color:var(--text-muted);margin-top:1px;font-size:11px}.toggle{background:var(--bg-elevated);cursor:pointer;border:none;border-radius:100px;flex-shrink:0;width:40px;height:22px;transition:background .2s;position:relative}.toggle.on{background:var(--primary)}.toggle-thumb{background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #00000026}.toggle.on .toggle-thumb{transform:translate(18px)}.theme-picker{gap:8px;display:flex}.theme-option{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;flex:1;padding:12px;font-size:12px;font-weight:600;transition:all .15s}.theme-option.active{background:var(--primary-glow);border-color:var(--primary);color:var(--primary)}.onboard-splash{background:var(--bg);flex-direction:column;flex:1;justify-content:center;align-items:center;padding:32px;display:flex}.onboard-logo{background:var(--primary-glow);border-radius:20px;justify-content:center;align-items:center;width:72px;height:72px;margin-bottom:20px;display:flex}.onboard-brand{letter-spacing:-.04em;color:var(--text);font-size:28px;font-weight:700}.onboard-tagline{color:var(--text-muted);margin-top:6px;font-size:12px;font-weight:500}.onboard-slide-icon{border-radius:28px;justify-content:center;align-items:center;width:120px;height:120px;margin-bottom:8px;font-size:48px;display:flex}.onboard-dots{justify-content:center;gap:6px;margin-bottom:28px;display:flex}.onboard-dot{background:var(--border);cursor:pointer;border-radius:100px;height:6px;transition:all .3s}.onboard-dot.active{width:20px}.onboard-dot:not(.active){width:6px}.screen-top{padding:8px var(--page-pad) 16px;align-items:center;gap:12px;display:flex}.back-btn{border-radius:var(--radius-sm);width:36px;height:36px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:all .15s;display:flex}.back-btn:hover{background:var(--bg-elevated);color:var(--text)}.profile-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);align-items:center;gap:14px;padding:20px;display:flex}.profile-avatar{background:var(--primary-glow);border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;font-size:22px;display:flex}.profile-name{letter-spacing:-.02em;color:var(--text);font-size:17px;font-weight:700}.profile-location{color:var(--text-muted);margin-top:2px;font-size:12px}.stats-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.stat-card{text-align:center;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-card);padding:16px 8px}.stat-value{color:var(--text);letter-spacing:-.03em;font-size:20px;font-weight:700}.stat-label{color:var(--text-muted);margin-top:2px;font-size:10px}.map-header{padding:10px var(--page-pad) 12px;background:var(--bg);flex-shrink:0}.map-search{background:var(--bg-elevated);border-radius:var(--radius-md);border:none;flex:1;align-items:center;gap:8px;padding:10px 14px;display:flex}.map-search span{color:var(--text-muted);font-size:13px}.layer-tabs{gap:6px;margin-top:10px;display:flex}.layer-tab{background:var(--bg-elevated);color:var(--text-muted);cursor:pointer;border:none;border-radius:100px;padding:6px 14px;font-size:12px;font-weight:500;transition:all .15s}.layer-tab.active{background:var(--text);color:var(--bg)}[data-theme=light] .layer-tab.active{background:var(--text);color:#fff}.gmaps-screen{background:#e8eaed;flex-direction:column;flex:1;display:flex;position:relative;overflow:hidden}.gmaps-leaflet{z-index:0;width:100%;height:100%;font-family:var(--font-sans);background:#e8eaed}.gmaps-top-bar{z-index:500;pointer-events:none;align-items:center;gap:10px;display:flex;position:absolute;top:12px;left:12px;right:12px}.gmaps-top-bar>*{pointer-events:auto}.gmaps-round-btn{color:#3c4043;cursor:pointer;background:#fff;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex;box-shadow:0 1px 4px #0000002e,0 2px 12px #00000014}.gmaps-search-pill{background:#fff;border-radius:24px;flex:1;align-items:center;gap:10px;height:48px;padding:0 16px;display:flex;box-shadow:0 1px 4px #0000002e,0 2px 12px #00000014}.gmaps-search-input{color:#202124;font-size:15px;font-weight:500;font-family:var(--font-sans);background:0 0;border:none;outline:none;flex:1}.gmaps-mode-chips{z-index:500;scrollbar-width:none;gap:8px;display:flex;position:absolute;top:72px;left:12px;right:12px;overflow-x:auto}.gmaps-mode-chips::-webkit-scrollbar{display:none}.gmaps-layer-chips{z-index:500;scrollbar-width:none;gap:8px;display:flex;position:absolute;top:116px;left:12px;right:12px;overflow-x:auto}.gmaps-layer-chips::-webkit-scrollbar{display:none}.gmaps-chip{color:#3c4043;white-space:nowrap;cursor:pointer;background:#fff;border:none;border-radius:20px;padding:8px 16px;font-size:13px;font-weight:500;transition:all .15s;box-shadow:0 1px 3px #0000001f}.gmaps-chip.active{color:#fff;background:#1a73e8;box-shadow:0 2px 6px #1a73e859}.gmaps-disaster-menu{z-index:500;position:absolute;top:72px;left:12px}.gmaps-disaster-menu-trigger{color:#3c4043;white-space:nowrap;cursor:pointer;background:#fff;border:none;border-radius:20px;align-items:center;gap:8px;padding:8px 14px;font-size:13px;font-weight:500;display:flex;box-shadow:0 1px 3px #0000001f}.gmaps-disaster-menu-panel{background:#fff;border-radius:12px;flex-direction:column;gap:2px;min-width:190px;max-height:60vh;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);left:0;overflow-y:auto;box-shadow:0 4px 16px #0003}.gmaps-disaster-menu-item{color:#3c4043;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;padding:9px 10px;font-size:13px;font-weight:500;display:flex}.gmaps-disaster-menu-item:hover{background:#f1f3f4}.gmaps-disaster-menu-item.active{color:#1a73e8;background:#e8f0fe}.gmaps-legend{z-index:500;background:#fff;border-radius:12px;padding:10px 14px;position:absolute;bottom:100px;left:12px;box-shadow:0 1px 4px #00000026}.gmaps-legend-row{color:#5f6368;align-items:center;gap:8px;margin-bottom:4px;font-size:11px;display:flex}.gmaps-legend-row:last-child{margin-bottom:0}.gmaps-legend-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.gmaps-fabs{z-index:500;flex-direction:column;gap:10px;display:flex;position:absolute;bottom:120px;right:12px}.gmaps-fab{color:#3c4043;cursor:pointer;background:#fff;border:none;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-size:22px;font-weight:400;line-height:1;display:flex;box-shadow:0 1px 4px #0000002e}.gmaps-fab-primary{color:#1a73e8}.gmaps-user-marker{background:0 0!important;border:none!important}.gmaps-user-dot{background:#4285f4;border:3px solid #fff;border-radius:50%;width:18px;height:18px;position:relative;box-shadow:0 2px 6px #0000004d}.gmaps-user-pulse{background:#4285f440;border-radius:50%;animation:2s infinite gmaps-pulse;position:absolute;inset:-8px}@keyframes gmaps-pulse{0%,to{opacity:.6;transform:translate(-50%,-50%)scale(1)}50%{opacity:.2;transform:translate(-50%,-50%)scale(1.5)}}.gmaps-safe-marker{background:0 0!important;border:none!important}.gmaps-safe-pin{background:#34a853;border:2px solid #fff;border-radius:50% 50% 50% 0;justify-content:center;align-items:center;width:32px;height:32px;display:flex;transform:rotate(-45deg);box-shadow:0 2px 8px #00000040}.gmaps-safe-pin svg{transform:rotate(45deg)}.gmaps-bottom-sheet{z-index:600;background:#fff;border-radius:20px 20px 0 0;padding:8px 20px 24px;position:absolute;bottom:0;left:0;right:0;box-shadow:0 -4px 24px #0000001f}.gmaps-sheet-handle{background:#dadce0;border-radius:2px;width:36px;height:4px;margin:4px auto 16px}.gmaps-sheet-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.gmaps-sheet-title{color:#202124;font-size:18px;font-weight:600;font-family:var(--font-display);margin:8px 0 4px}.gmaps-sheet-sub{color:#5f6368;margin:0;font-size:13px;line-height:1.4}.gmaps-sheet-close{color:#5f6368;cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:28px;line-height:1}.gmaps-sheet-action{width:100%;background:#1a73e8!important;border-radius:24px!important;padding:14px!important;font-size:15px!important}.gmaps-route-banner{z-index:600;background:#fff;border-radius:16px;align-items:center;gap:14px;padding:14px 16px;display:flex;position:absolute;bottom:16px;left:12px;right:12px;box-shadow:0 2px 12px #00000026}.gmaps-route-icon{background:#1a73e8;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.gmaps-route-info{flex:1;min-width:0}.weather-card{background:linear-gradient(135deg, var(--bg-card) 0%, var(--bg-elevated) 100%)}.weather-current{align-items:center;gap:16px;padding:16px 0;display:flex}.weather-icon-large{font-size:56px;line-height:1}.weather-info{flex:1}.weather-temp{color:var(--text);letter-spacing:-.02em;font-size:32px;font-weight:700;line-height:1}.weather-condition{color:var(--text-muted);margin-top:4px;font-size:14px}.weather-detail{color:var(--text-muted);margin-top:8px;font-size:11px}.weather-divider{background:var(--border);height:1px;margin:12px 0}.weather-hourly{scrollbar-width:none;gap:8px;padding:8px 0;display:flex;overflow-x:auto}.weather-hourly::-webkit-scrollbar{display:none}.weather-hour{background:var(--bg-elevated);border-radius:var(--radius-sm);flex-direction:column;flex-shrink:0;align-items:center;gap:6px;min-width:56px;padding:8px 10px;display:flex}.weather-time{color:var(--text-muted);font-size:10px;font-weight:600}.weather-icon{font-size:24px}.weather-temp-small{color:var(--text);font-size:12px;font-weight:600}.sos-button{color:#fff;cursor:pointer;pointer-events:auto;text-transform:uppercase;letter-spacing:.08em;-webkit-tap-highlight-color:transparent;touch-action:manipulation;background:linear-gradient(135deg,#ef4444 0%,#dc2626 50%,#b91c1c 100%);border:2.5px solid #fff3;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;font-size:10px;font-weight:800;line-height:1;transition:all .3s cubic-bezier(.4,0,.2,1);animation:2s ease-in-out infinite sos-pulse;display:flex;position:relative;box-shadow:0 4px 16px #ef444480,0 0 #ef444466}.sos-button:before{content:"";border:2px solid #ef444433;border-radius:50%;animation:2s ease-in-out infinite sos-ring;position:absolute;inset:-8px}.sos-button:after{content:"";border:2px solid #ef44441a;border-radius:50%;animation:2s ease-in-out .5s infinite sos-ring;position:absolute;inset:-16px}.sos-button:hover{background:linear-gradient(135deg,#dc2626 0%,#b91c1c 50%,#991b1b 100%);border-color:#fff6;transform:scale(1.12);box-shadow:0 6px 28px #ef444499,0 0 0 4px #ef444426}.sos-button:active{transform:scale(.92);box-shadow:0 2px 10px #ef444466}.sos-text{letter-spacing:.1em;text-shadow:0 1px 4px #0000004d;z-index:1;font-size:13px;font-weight:900;position:relative}@keyframes sos-pulse{0%,to{box-shadow:0 4px 20px #ef444480,0 0 #ef444466}50%{box-shadow:0 4px 28px #ef444499,0 0 0 8px #ef444400}}@keyframes sos-ring{0%{opacity:1;transform:scale(.8)}to{opacity:0;transform:scale(1.4)}}.modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:flex-end;animation:.2s fade-in;display:flex;position:fixed;inset:0}.modal-content{background:var(--bg-card);border-radius:28px 28px 0 0;flex-direction:column;width:100%;max-height:85vh;animation:.3s slide-up;display:flex;overflow-y:auto;box-shadow:0 -4px 20px #00000040}@media (width<=480px){.modal-overlay{align-items:center;padding:16px}.modal-content{border-radius:var(--radius-xl);width:100%;max-height:90dvh;margin-bottom:0;animation:.25s cubic-bezier(.34,1.56,.64,1) zoom-in}}@keyframes zoom-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.modal-header{border-bottom:1px solid var(--border);background:var(--bg-card);z-index:1;justify-content:space-between;align-items:center;padding:20px;display:flex;position:sticky;top:0}.modal-header h2{color:var(--text);margin:0;font-size:18px;font-weight:600}.modal-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:32px;transition:color .15s;display:flex}.modal-close:hover{color:var(--text)}.modal-center{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:60px 20px;display:flex}.modal-center h3{color:var(--text);margin:0;font-size:18px;font-weight:600}.modal-center p{color:var(--text-muted);margin:0;font-size:13px}.modal-center.success{color:var(--success)}.modal-center.success svg{color:var(--success);animation:.6s pulse-success}.modal-center.error,.modal-center.error svg{color:var(--danger)}.spinner{border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;width:40px;height:40px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse-success{0%{opacity:0;transform:scale(.8)}50%{transform:scale(1.1)}to{opacity:1;transform:scale(1)}}.sos-form{flex-direction:column;gap:16px;padding:20px;display:flex}.form-group{flex-direction:column;gap:8px;display:flex}.form-group label{color:var(--text);font-size:13px;font-weight:600}.form-group input,.form-group select,.form-group textarea{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text);font-family:var(--font-sans);padding:12px 14px;font-size:14px;transition:all .15s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow);background:var(--bg-card);outline:none}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-muted)}.form-group.checkbox{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);flex-direction:row;align-items:center;padding:12px 14px;transition:all .2s}.form-group.checkbox:has(input:checked){border-color:var(--primary);background:var(--primary-glow)}.form-group.checkbox label{cursor:pointer;align-items:center;gap:8px;width:100%;margin:0;font-weight:500;display:flex}.form-group.checkbox input[type=checkbox]{cursor:pointer;width:18px;height:18px;accent-color:var(--primary)}.urgency-selector{gap:8px;width:100%;display:flex}.urgency-option{border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-secondary);font-family:var(--font-sans);cursor:pointer;text-align:center;flex:1;padding:12px;font-size:13px;font-weight:600;transition:all .2s}.urgency-option:hover{background:var(--bg-card);color:var(--text)}.urgency-option.low.active{background:var(--success-bg);border-color:var(--success);color:var(--success)}.urgency-option.medium.active{background:var(--warning-bg);border-color:var(--warning);color:var(--warning)}.urgency-option.critical.active{background:var(--danger-bg);border-color:var(--danger);color:var(--danger);animation:1.5s infinite pulse-danger-border}@keyframes pulse-danger-border{0%,to{border-color:var(--danger)}50%{border-color:color-mix(in srgb, var(--danger) 30%, transparent)}}@media (height<=660px){.modal-content{max-height:95dvh}.sos-form{gap:12px;padding:16px}.form-group{gap:4px}.form-group input,.form-group select,.form-group textarea{padding:10px 12px;font-size:13px}.urgency-option{padding:10px;font-size:12px}.modal-header{padding:14px 16px}.modal-center{padding:30px 16px}}.form-hint{color:var(--text-muted);margin:-4px 0 0;font-size:12px}.form-error{background:var(--danger-bg);border:1px solid var(--danger);border-radius:var(--radius-md);color:var(--danger);padding:12px 14px;font-size:13px;font-weight:500}.sos-emergency-numbers{grid-template-columns:1fr 1fr;gap:8px;width:100%;margin-top:8px;display:grid}.sos-emergency-number{border-radius:var(--radius-md);background:var(--bg-elevated);border:1px solid var(--border);color:var(--text);flex-direction:column;align-items:center;gap:2px;padding:10px 8px;text-decoration:none;display:flex}.sos-emergency-number strong{font-size:12px;font-weight:600}.sos-emergency-number span{color:var(--danger);font-size:13px;font-weight:700}.form-actions{gap:12px;margin-top:8px;display:flex}.form-actions button{flex:1}.btn-secondary{background:var(--bg-elevated);color:var(--text-secondary);border:1px solid var(--border);border-radius:var(--radius-md);font-family:var(--font-sans);cursor:pointer;padding:14px 20px;font-size:14px;font-weight:600;transition:all .15s}.btn-secondary:hover{background:var(--bg-card);color:var(--text);border-color:var(--border)}.gmaps-leaflet canvas{outline:none}.gmaps-globe-error{z-index:500;color:#fff;text-align:center;background:#000000bf;border-radius:12px;max-width:80%;padding:14px 18px;font-size:13px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.gmaps-rainy-marker .gmaps-rainy-dot{background:linear-gradient(135deg,#60a5fa,#3b82f6);border-radius:50%;width:12px;height:12px;animation:2s ease-in-out infinite rain-pulse;box-shadow:0 0 8px #60a5fa99,0 2px 4px #0003}@keyframes rain-pulse{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}.gmaps-alert-marker{background:0 0!important;border:none!important}.gmaps-alert-pin{z-index:2;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 2px 6px #00000059}.gmaps-alert-pulse{opacity:.45;border-radius:50%;width:24px;height:24px;animation:1.6s ease-in-out infinite alert-pulse;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes alert-pulse{0%{opacity:.5;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-50%)scale(2.2)}}.gmaps-report-marker{background:0 0!important;border:none!important}.gmaps-report-pin{background:var(--bg-card,#fff);border:2px solid #f9ab00;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:12px;display:flex;box-shadow:0 2px 6px #0000004d}.gmaps-report-pin.verified{border-color:#34a853}.gmaps-live-badge{background:var(--bg-card,#ffffffeb);color:var(--text-secondary,#5f6368);z-index:400;pointer-events:none;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:10px;font-weight:600;display:flex;position:absolute;top:64px;left:50%;transform:translate(-50%);box-shadow:0 2px 8px #00000026}.gmaps-live-dot{background:#34a853;border-radius:50%;width:6px;height:6px;animation:2s ease-in-out infinite rain-pulse}.gmaps-route-label{color:#1a73e8;text-transform:uppercase;letter-spacing:.04em;margin:0 0 2px;font-size:11px;font-weight:600}.gmaps-route-dest{color:#202124;white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:16px;font-weight:600;overflow:hidden}.gmaps-route-meta{color:#5f6368;margin:4px 0 0;font-size:12px}.gmaps-route-stop{color:#3c4043;cursor:pointer;background:#f1f3f4;border:none;border-radius:20px;flex-shrink:0;padding:8px 14px;font-size:13px;font-weight:600}.gmaps-safe-list{z-index:550;background:#fff;border-radius:20px 20px 0 0;max-height:42%;padding:16px 16px 24px;position:absolute;bottom:0;left:0;right:0;overflow-y:auto;box-shadow:0 -4px 20px #0000001a}.gmaps-safe-list-title{color:#5f6368;text-transform:uppercase;letter-spacing:.04em;margin:0 0 12px;font-size:13px;font-weight:600}.gmaps-safe-list-item{cursor:pointer;text-align:left;background:#f8f9fa;border:none;border-radius:12px;align-items:center;gap:12px;width:100%;margin-bottom:8px;padding:12px;display:flex}.gmaps-safe-list-icon{flex-shrink:0;font-size:22px}.gmaps-safe-list-text{flex-direction:column;flex:1;gap:2px;display:flex}.gmaps-safe-list-text strong{color:#202124;font-size:14px}.gmaps-safe-list-text span{color:#5f6368;font-size:12px}.gmaps-safe-list-arrow{color:#9aa0a6;font-size:20px}.gmaps-route-arrow-marker{background:0 0!important;border:none!important}.gmaps-route-arrow{filter:drop-shadow(0 1px 2px #0000004d);opacity:.85;justify-content:center;align-items:center;width:18px;height:18px;display:flex}.gmaps-step-marker{background:0 0!important;border:none!important}.gmaps-step-dot{background:#4285f4;border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;display:flex;box-shadow:0 1px 4px #0000004d}.gmaps-attribution{z-index:400;color:#00000073;pointer-events:none;background:#ffffffb3;border-radius:4px;padding:2px 6px;font-size:9px;position:absolute;bottom:6px;left:8px}.gmaps-navigation-banner{z-index:600;background:#fff;border-radius:0 0 20px 20px;padding:0;position:absolute;top:0;left:0;right:0;overflow:hidden;box-shadow:0 4px 20px #00000026}.gmaps-nav-progress-bar{background:#e8eaed;width:100%;height:4px}.gmaps-nav-progress-fill{background:#1a73e8;border-radius:0 2px 2px 0;height:100%;transition:width .5s cubic-bezier(.4,0,.2,1)}.gmaps-nav-top-row{align-items:center;gap:12px;padding:12px 16px 8px;display:flex}.gmaps-nav-instruction-icon{background:#e8f0fe;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.gmaps-nav-instruction-text{flex:1;min-width:0}.gmaps-nav-step{color:#202124;white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:15px;font-weight:600;overflow:hidden}.gmaps-nav-step-dist{color:#5f6368;margin:2px 0 0;font-size:12px}.gmaps-nav-more-btn{cursor:pointer;color:#5f6368;background:#f1f3f4;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;transition:background .15s;display:flex}.gmaps-nav-more-btn:hover{background:#e8eaed}.gmaps-nav-bottom-row{border-top:1px solid #f1f3f4;gap:0;margin-top:4px;padding:8px 16px 14px;display:flex}.gmaps-nav-info-block{text-align:center;flex-direction:column;flex:1;gap:2px;display:flex}.gmaps-nav-info-value{color:#202124;font-size:16px;font-weight:700}.gmaps-nav-info-label{color:#5f6368;text-transform:uppercase;letter-spacing:.04em;font-size:10px;font-weight:500}.gmaps-deviation-warning{z-index:600;background:#ea4335;border-radius:12px;align-items:center;gap:12px;padding:12px 16px;display:flex;position:absolute;top:80px;left:16px;right:16px;box-shadow:0 4px 16px #ea43354d}.gmaps-deviation-icon{background:#fff3;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.gmaps-deviation-text{color:#fff;flex:1}.gmaps-deviation-text strong{margin-bottom:2px;font-size:13px;font-weight:600;display:block}.gmaps-deviation-text span{opacity:.85;font-size:11px;display:block}.gmaps-rerouting-indicator{z-index:600;color:#fff;background:#1a73e8;border-radius:12px;align-items:center;gap:12px;padding:14px 18px;font-size:13px;font-weight:500;display:flex;position:absolute;top:80px;left:16px;right:16px;box-shadow:0 4px 16px #1a73e84d}.gmaps-rerouting-spinner{border:2.5px solid #ffffff4d;border-top-color:#fff;border-radius:50%;flex-shrink:0;width:20px;height:20px;animation:.7s linear infinite gmaps-spin}@keyframes gmaps-spin{to{transform:rotate(360deg)}}.gmaps-user-marker-wrap{justify-content:center;align-items:center;width:32px;height:32px;display:flex;position:relative}.gmaps-user-dot{z-index:2;background:#4285f4;border:3px solid #fff;border-radius:50%;width:14px;height:14px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 2px 6px #0000004d}.gmaps-user-pulse{z-index:1;background:#4285f440;border-radius:50%;width:28px;height:28px;animation:2s ease-in-out infinite gmaps-pulse;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.gmaps-user-arrow{z-index:3;opacity:.8;position:absolute;top:-8px;left:50%;transform:translate(-50%)}.gmaps-user-marker.navigating .gmaps-user-dot.navigating-dot{background:#1a73e8;border-width:3px;width:16px;height:16px}.gmaps-user-marker.navigating .gmaps-user-pulse.navigating-pulse{background:#1a73e833;width:36px;height:36px;animation:1.5s ease-in-out infinite gmaps-pulse}.gmaps-user-marker.navigating .gmaps-user-arrow.navigating-arrow{opacity:1;top:-10px}.gmaps-dest-pin{justify-content:center;align-items:center;width:32px;height:32px;display:flex;position:relative}.gmaps-dest-pulse{background:#ea43354d;border-radius:50%;width:20px;height:20px;animation:2s ease-in-out infinite gmaps-dest-pulse;position:absolute;bottom:4px;left:50%;transform:translate(-50%)}@keyframes gmaps-dest-pulse{0%,to{opacity:.5;transform:translate(-50%)scale(1)}50%{opacity:.1;transform:translate(-50%)scale(1.8)}}.gmaps-fab-primary.active-location{color:#fff;background:#1a73e8;box-shadow:0 2px 8px #1a73e866}.gmaps-fab-toggle{color:#fff;box-shadow:0 2px 8px #0003}.gmaps-sheet-warning{color:#ea4335;align-items:center;gap:4px;margin-top:4px;font-size:11px;font-weight:500;display:flex}[data-theme=dark] .gmaps-navigation-banner{background:#292a2d;box-shadow:0 4px 20px #0006}[data-theme=dark] .gmaps-nav-step{color:#e8eaed}[data-theme=dark] .gmaps-nav-step-dist,[data-theme=dark] .gmaps-nav-info-label{color:#9aa0a6}[data-theme=dark] .gmaps-nav-info-value{color:#e8eaed}[data-theme=dark] .gmaps-nav-more-btn{color:#9aa0a6;background:#35363a}[data-theme=dark] .gmaps-nav-more-btn:hover{background:#3c4043}[data-theme=dark] .gmaps-nav-bottom-row{border-top-color:#35363a}[data-theme=dark] .gmaps-nav-instruction-icon{background:#1a3a5c}[data-theme=dark] .gmaps-nav-progress-bar{background:#35363a}[data-theme=dark] .gmaps-deviation-warning{background:#c5221f}[data-theme=dark] .gmaps-rerouting-indicator{background:#1a73e8}[data-theme=dark] .gmaps-sheet-warning{color:#f28b82}[data-theme=dark] .gmaps-round-btn,[data-theme=dark] .gmaps-search-pill,[data-theme=dark] .gmaps-chip,[data-theme=dark] .gmaps-fab,[data-theme=dark] .gmaps-legend,[data-theme=dark] .gmaps-bottom-sheet,[data-theme=dark] .gmaps-route-banner,[data-theme=dark] .gmaps-disaster-menu-trigger,[data-theme=dark] .gmaps-disaster-menu-panel,[data-theme=dark] .gmaps-disaster-menu-item,[data-theme=dark] .gmaps-safe-list{color:#e8eaed;background:#292a2d}[data-theme=dark] .gmaps-disaster-menu-item:hover{background:#3c4043}[data-theme=dark] .gmaps-disaster-menu-item.active{color:#8ab4f8;background:#3c4043}[data-theme=dark] .gmaps-search-input,[data-theme=dark] .gmaps-sheet-title,[data-theme=dark] .gmaps-route-dest,[data-theme=dark] .gmaps-safe-list-text strong{color:#e8eaed}[data-theme=dark] .gmaps-chip.active{color:#202124;background:#8ab4f8}[data-theme=dark] .gmaps-safe-list-item{background:#35363a}.alert-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);cursor:pointer;box-shadow:var(--shadow-card);margin-bottom:8px;transition:transform .15s;overflow:hidden}.alert-card:active{transform:scale(.995)}.form-textarea{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);width:100%;height:100px;color:var(--text);font-size:13px;font-family:var(--font-sans);resize:none;outline:none;padding:14px;line-height:1.6;transition:border-color .15s}.form-textarea:focus{border-color:var(--primary)}.form-textarea::placeholder{color:var(--text-muted)}.step-progress{gap:4px;margin-bottom:24px;display:flex}.step-bar{background:var(--border);border-radius:100px;flex:1;height:3px;transition:background .3s}.step-bar.done{background:var(--primary)}.disaster-sheet,.evac-panel{flex-direction:column;max-height:48vh;padding-bottom:16px;display:flex}.disaster-sheet-scroll{overscroll-behavior:contain;flex:1;min-height:0;padding-right:2px;overflow-y:auto}.gmaps-fabs.above-sheet{bottom:calc(48vh + 12px)}.disaster-sheet-actions{gap:8px;margin-bottom:10px;display:flex}.disaster-evac-btn{flex:1;background:#1e8e3e!important;padding:11px!important;font-size:14px!important}.disaster-save-btn{color:#3c4043;cursor:pointer;white-space:nowrap;background:0 0;border:1.5px solid #dadce0;border-radius:24px;padding:0 16px;font-size:14px;font-weight:600}.disaster-save-btn.saved{color:#b06000;background:#f9ab001f;border-color:#f9ab00}.disaster-facts{grid-template-columns:auto 1fr;gap:4px 12px;margin:0 0 8px;font-size:13px;display:grid}.disaster-facts dt{color:#5f6368}.disaster-facts dd{color:#202124;margin:0}.disaster-sheet-block{border-top:1px solid #ebedf0;padding:10px 0}.disaster-sheet-block h4{color:#202124;margin:0 0 4px;font-size:13px;font-weight:700}.disaster-source-link{color:#1a73e8;margin-top:4px;font-size:13px;text-decoration:none;display:inline-block}.disaster-vote-row{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.disaster-vote-btn{color:#3c4043;cursor:pointer;background:0 0;border:1.5px solid #dadce0;border-radius:18px;padding:7px 12px;font-size:12.5px;font-weight:600}.disaster-vote-btn.selected{color:#1a73e8;background:#1a73e81f;border-color:#1a73e8}.disaster-vote-btn:disabled{opacity:.6}.disaster-vote-count{background:#00000014;border-radius:10px;margin-left:6px;padding:1px 6px;font-size:11px}.disaster-sheet-error{color:#d93025;margin:6px 0;font-size:13px}.disaster-advice{color:#3c4043;margin:0;padding-left:18px;font-size:13px;line-height:1.45}.disaster-advice li+li{margin-top:4px}.evac-banner{border-radius:10px;margin:0 0 8px;padding:8px 10px;font-size:12.5px;line-height:1.4}.evac-banner.warn{color:#7a4f00;background:#f9ab0024}.evac-banner.danger{color:#b3261e;background:#ea43351f}.evac-list{flex-direction:column;gap:6px;display:flex}.evac-place-warning{font-weight:600;color:#b3261e!important}.gmaps-safe-list-item.in-hazard{opacity:.8}.evac-footnote{color:#5f6368;margin:10px 0 4px;font-size:11.5px;line-height:1.4}.evac-secondary-btn{color:#1a73e8;cursor:pointer;background:0 0;border:1.5px solid #dadce0;border-radius:22px;width:100%;margin:6px 0;padding:10px;font-size:14px;font-weight:600}.evac-options{gap:6px;margin-bottom:8px;display:flex;overflow-x:auto}.evac-option{text-align:left;color:#3c4043;cursor:pointer;background:0 0;border:1.5px solid #dadce0;border-radius:12px;flex-direction:column;flex:1;gap:2px;min-width:96px;padding:8px 10px;font-size:12px;display:flex}.evac-option strong{font-size:14px}.evac-option.active{background:#1a73e81a;border-color:#1a73e8}.evac-option em{font-size:11px;font-style:normal}.evac-option-flag{color:#b3261e}.evac-option-ok{color:#1e8e3e}.evac-summary{gap:20px;margin:4px 0 10px;display:flex}.evac-summary>div{flex-direction:column;display:flex}.evac-summary-value{color:#202124;font-size:20px;font-weight:700}.evac-summary-label{color:#5f6368;font-size:11.5px}.evac-steps{color:#3c4043;margin:4px 0 8px;padding-left:20px;font-size:13px}.evac-steps li{padding:4px 0}.evac-steps em{color:#5f6368;margin-left:8px;font-size:12px;font-style:normal}.gmaps-feed-status{z-index:500;color:#3c4043;background:#fffffff0;border-radius:14px;align-items:center;gap:8px;max-width:calc(100% - 24px);padding:5px 12px;font-size:12px;font-weight:500;display:flex;position:absolute;top:160px;left:12px;box-shadow:0 1px 3px #0000002e}.gmaps-feed-status.ok{color:#1e8e3e}.gmaps-feed-status.warn{color:#9a6700}.gmaps-feed-status.error{color:#d93025}.gmaps-feed-status button{color:#1a73e8;cursor:pointer;background:0 0;border:none;padding:0;font-size:12px;font-weight:700}.saved-zones-head{justify-content:space-between;align-items:center;display:flex}.saved-zone-row{align-items:center;gap:6px;display:flex}.saved-zone-row .gmaps-safe-list-item{flex:1}.saved-zone-remove{color:#d93025;cursor:pointer;background:0 0;border:none;font-size:12px;font-weight:600}[data-theme=dark] .disaster-facts dd,[data-theme=dark] .disaster-sheet-block h4,[data-theme=dark] .evac-summary-value{color:#e8eaed}[data-theme=dark] .disaster-facts dt,[data-theme=dark] .disaster-advice,[data-theme=dark] .disaster-save-btn,[data-theme=dark] .disaster-vote-btn,[data-theme=dark] .evac-option,[data-theme=dark] .evac-steps{color:#bdc1c6}[data-theme=dark] .disaster-sheet-block{border-top-color:#3c4043}[data-theme=dark] .gmaps-feed-status{color:#e8eaed;background:#292a2df0}[data-theme=dark] .evac-secondary-btn,[data-theme=dark] .disaster-source-link{color:#8ab4f8}[data-theme=dark] .gmaps-sheet-sub{color:#bdc1c6}[data-theme=dark] .evac-banner.warn{color:#fdd663;background:#f9ab0029}[data-theme=dark] .evac-banner.danger{color:#f6aea9;background:#ea433533}[data-theme=dark] .evac-place-warning,[data-theme=dark] .evac-option-flag{color:#f28b82!important}[data-theme=dark] .disaster-save-btn.saved{color:#fdd663}[data-theme=dark] .disaster-source-link,[data-theme=dark] .gmaps-feed-status button{color:#8ab4f8}.gmaps-status-stack{z-index:500;pointer-events:none;flex-direction:column;align-items:flex-start;gap:6px;display:flex;position:absolute;top:116px;left:12px;right:12px}.gmaps-status-stack>*{pointer-events:auto}.gmaps-feed-status{position:static}.local-actions{gap:8px;display:flex}.local-actions .gmaps-chip:disabled{opacity:.5}.gmaps-search-clear{color:#1a73e8;cursor:pointer;background:0 0;border:none;padding:0 2px;font-size:20px}.status-badge{letter-spacing:.02em;color:#1a73e8;vertical-align:middle;background:#1a73e81f;border-radius:10px;margin-left:6px;padding:3px 8px;font-size:10.5px;font-weight:700;display:inline-block}.status-badge.predicted{color:#5f6368;background:0 0;border:1.5px dashed #9aa0a6}.flood-timeline{gap:8px;display:flex}.flood-timeline-cell{color:#5f6368;flex-direction:column;flex:1;align-items:center;gap:4px;font-size:11.5px;display:flex}.flood-timeline-score{text-align:center;color:#fff;border-radius:10px;min-width:44px;padding:6px 0;font-size:14px;font-weight:700}.filter-panel{z-index:650;background:#fff;border-radius:16px;max-height:62vh;padding:12px 14px 14px;position:absolute;top:116px;left:12px;right:12px;overflow-y:auto;box-shadow:0 4px 24px #0003}.filter-panel-head{justify-content:space-between;align-items:center;display:flex}.filter-label{color:#5f6368;margin:10px 0 6px;font-size:12px;font-weight:700}.filter-row{flex-wrap:wrap;gap:6px;display:flex}.filter-chip{color:#3c4043;cursor:pointer;background:0 0;border:1.5px solid #dadce0;border-radius:16px;align-items:center;gap:6px;padding:6px 12px;font-size:12.5px;font-weight:600;display:inline-flex}.filter-chip.on{color:#1a73e8;background:#1a73e81f;border-color:#1a73e8}.map-legend{max-height:55vh;overflow-y:auto}.map-legend-toggle{color:#3c4043;cursor:pointer;background:0 0;border:none;padding:0 0 4px;font-size:11px;font-weight:700}.map-legend-head{text-transform:uppercase;color:#80868b;margin:8px 0 4px;font-size:10.5px;font-weight:700}.legend-pin{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;font-size:9px;font-weight:700;display:inline-flex}.legend-pin.solid{background:#5f6368;border:2px solid #fff;box-shadow:0 0 0 1px #5f6368}.legend-pin.dashed{background:#fff;border:2px dashed #5f6368}.legend-pin.cluster{background:#5f6368}.legend-emoji{text-align:center;width:16px}.evac-nav-btn{width:100%;margin:6px 0;background:#1a73e8!important;border-radius:22px!important;padding:11px!important}[data-theme=dark] .filter-panel{background:#292a2d}[data-theme=dark] .filter-chip,[data-theme=dark] .filter-label,[data-theme=dark] .map-legend-toggle{color:#bdc1c6}[data-theme=dark] .filter-chip.on{color:#8ab4f8;border-color:#8ab4f8}[data-theme=dark] .status-badge{color:#8ab4f8;background:#8ab4f829}[data-theme=dark] .status-badge.predicted{color:#bdc1c6;background:0 0}[data-theme=dark] .flood-timeline-cell{color:#bdc1c6}
