:root{color-scheme:light;--navy: #0b1f33;--river: #075985;--sky: #38bdf8;--sky-ink: #075985;--mist: #e8f4fa;--paper: #f4f7fa;--surface: #ffffff;--ink: #172b3a;--muted: #506273;--line: #d5e0e8;--line-strong: #a9bbc8;--normal-ink: #166534;--monitor-ink: #854d0e;--warning-ink: #9a3412;--critical-ink: #991b1b;--surface-raised: #ffffff;--depth: 0 8px 28px rgb(11 31 51 / 8%);--focus: #0284c7;--radius-control: .625rem;--radius-panel: .875rem;--ease: cubic-bezier(.2, .8, .2, 1);--ease-motion: cubic-bezier(.16, 1, .3, 1);--motion-fast: .12s;--motion-state: .17s;--motion-overlay: .22s;--control-height: 46px;--touch-target: 44px;--measure-readable: 72ch}html.dark{color-scheme:dark;--paper: #0b121b;--surface: #141f2b;--surface-raised: #1a2937;--ink: #e8eef4;--muted: #b4c0cc;--line: #2b3d4d;--line-strong: #486174;--normal-ink: #86efac;--monitor-ink: #fcd34d;--warning-ink: #fdba74;--critical-ink: #fca5a5;--depth: 0 10px 30px rgb(0 0 0 / 22%);--focus: #7dd3fc}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--paper)}body.bsafe-app{min-width:320px;background:var(--paper);color:var(--ink);font-family:Aptos,Segoe UI,Trebuchet MS,sans-serif;font-size:1rem;line-height:1.55}.network-status,.pwa-update{position:relative;z-index:39;padding:.7rem max(1rem,env(safe-area-inset-left)) .7rem max(1rem,env(safe-area-inset-right));text-align:center;font-size:.88rem}.network-status{color:#fff7ed;background:#7c2d12}.pwa-update{display:flex;align-items:center;justify-content:center;gap:.75rem;color:#e0f2fe;background:#164e63}.pwa-update button{min-height:40px;padding:.35rem .7rem;color:#fff;background:#075985;border:1px solid #7dd3fc;border-radius:var(--radius-control);font-weight:700}.pwa-install{display:grid;grid-template-columns:minmax(12rem,.7fr) 1.3fr;gap:1rem;align-items:start;padding:1.1rem;background:var(--paper);border-radius:var(--radius-control)}.pwa-install h2{margin:.15rem 0 0;font-size:1.1rem}.pwa-install p{margin:0 0 .75rem;color:var(--muted);font-size:.86rem}.pwa-install details{grid-column:1/-1;padding-top:.75rem;border-top:1px solid var(--line)}.pwa-install summary{min-height:44px;font-weight:800;cursor:pointer}.pwa-install details p{margin:.5rem 0 0}.offline-reference-warning{padding:.8rem 1rem;color:var(--monitor-ink);background:#fff7ed;border:1px solid #fdba74;border-radius:var(--radius-control);font-weight:700}html.dark .offline-reference-warning{color:#fed7aa;background:#3b2414;border-color:#9a5b2d}@media(display-mode:standalone){.site-header{padding-top:env(safe-area-inset-top)}}button,input,select,textarea{font:inherit}.bsafe-app :is(button,a,summary,[role=button]){transition:color var(--motion-fast) var(--ease-motion),background-color var(--motion-fast) var(--ease-motion),border-color var(--motion-fast) var(--ease-motion),box-shadow var(--motion-fast) var(--ease-motion),transform var(--motion-fast) var(--ease-motion)}.bsafe-app :is(button,a,summary,[role=button]):active:not(:disabled){transform:translateY(1px)}button{color:inherit;cursor:pointer}button:disabled{color:var(--muted);cursor:not-allowed;opacity:1}.button--primary:disabled{color:#475569;background:#cbd5e1;border-color:#94a3b8;box-shadow:none}html.dark .button--primary:disabled{color:#cbd5e1;background:#2b3d4d;border-color:#526577}a{color:var(--sky-ink);text-underline-offset:.18em}html.dark a{color:#7dd3fc}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[role=button]:focus-visible{outline:3px solid var(--focus)!important;outline-offset:3px}::selection{color:#fff;background:#075985}html.dark ::selection{color:#0b1f33;background:#7dd3fc}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--paper)}::-webkit-scrollbar-thumb{background:#7890a1;border:2px solid var(--paper);border-radius:1rem}html.dark ::-webkit-scrollbar-thumb{background:#516a7d}[hidden]{display:none!important}.site-header{position:sticky;z-index:40;top:0;color:#f5faff;background:var(--navy);border-bottom:1px solid #264358;box-shadow:0 5px 18px #05192a26}.site-header__inner{display:flex;align-items:center;gap:clamp(1rem,2vw,2rem);width:min(100% - 2rem,1440px);min-height:76px;margin-inline:auto}.brand-lockup{display:flex;align-items:center;gap:.75rem;flex:0 0 auto;padding:.35rem 0;color:inherit;text-align:left;background:transparent;border:0}.brand-lockup__mark{display:grid;place-items:center;width:2.6rem;height:2.6rem;color:#dff6ff;background:#075985;border:1px solid #3985a8;border-radius:.75rem}.brand-lockup__mark svg{width:1.4rem;height:1.4rem}.brand-lockup__wordmark{display:grid;gap:.04rem}.brand-lockup__wordmark strong{font-size:1.17rem;line-height:1.15;letter-spacing:.015em}.brand-lockup__wordmark span{color:#c6d9e5;font-size:.72rem;line-height:1.2}.desktop-nav{display:none;align-items:center;gap:.2rem;min-width:0;margin-inline:auto}.nav-btn,.nav-more>summary{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;min-height:44px;padding:.55rem .7rem;color:#d7e5ee;font-size:.82rem;font-weight:650;white-space:nowrap;background:transparent;border:0;border-radius:var(--radius-control);list-style:none}.nav-btn:hover,.nav-more>summary:hover{color:#fff;background:#163851}.nav-btn.is-active,.nav-btn[aria-current=page]{color:#fff;background:#164866;box-shadow:inset 0 -2px #7dd3fc}.nav-more{position:relative}.nav-more>summary::-webkit-details-marker,.mobile-more>summary::-webkit-details-marker{display:none}.nav-more>summary svg{width:.9rem;height:.9rem}.nav-more__menu,.mobile-more__menu{position:absolute;z-index:60;top:calc(100% + .4rem);right:0;display:grid;min-width:13rem;padding:.4rem;background:var(--surface);border:1px solid var(--line);border-radius:.75rem;box-shadow:var(--depth)}.nav-more[open]>.nav-more__menu{animation:menu-enter var(--motion-state) var(--ease-motion) both;transform-origin:top right}.mobile-more[open]>.mobile-more__menu{animation:menu-enter var(--motion-state) var(--ease-motion) both;transform-origin:bottom right}@keyframes menu-enter{0%{opacity:.75;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.nav-more__menu button,.mobile-more__menu button{min-height:44px;padding:.6rem .75rem;color:var(--ink);text-align:left;background:transparent;border:0;border-radius:.45rem}.nav-more__menu button:hover,.mobile-more__menu button:hover{background:var(--mist)}.header-actions{display:flex;align-items:center;gap:.4rem;flex:0 0 auto;margin-left:auto}.location-trigger,.theme-toggle,.hotline-action{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-height:44px;padding:.55rem .75rem;color:#ecf7fd;font-size:.8rem;font-weight:700;background:#173d57;border:1px solid #315a73;border-radius:var(--radius-control)}.location-trigger svg,.theme-toggle svg,.hotline-action svg{width:1.05rem;height:1.05rem;flex:0 0 auto}.location-trigger{max-width:12rem}.location-trigger span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.theme-toggle{width:44px;padding:.6rem;color:#bfeaff}.hotline-action{color:#fff;background:#075985;border-color:#5790ad}.hotline-action:hover{background:#064b6d}.mobile-nav{display:flex;position:fixed;z-index:45;inset:auto 0 0;justify-content:space-around;align-items:stretch;min-height:calc(64px + env(safe-area-inset-bottom));padding:.25rem max(.4rem,env(safe-area-inset-right)) calc(.25rem + env(safe-area-inset-bottom)) max(.4rem,env(safe-area-inset-left));background:var(--navy);border-top:1px solid #31506a;box-shadow:0 -6px 24px #05192a24}.mobile-nav>button,.mobile-more>summary{display:grid;place-content:center;justify-items:center;gap:.12rem;flex:1 1 0;min-width:0;min-height:48px;padding:.25rem .1rem;color:#cfdeea;font-size:.75rem;font-weight:650;line-height:1.2;text-align:center;background:transparent;border:0;border-radius:.45rem;list-style:none}.mobile-nav>button svg,.mobile-more>summary svg{width:1.05rem;height:1.05rem}.mobile-nav>button[aria-current=page]{color:#fff;background:#164866;box-shadow:inset 0 -2px #7dd3fc}.mobile-more{position:relative;display:flex;flex:1 1 0}.mobile-more__menu{position:fixed;top:auto;right:.5rem;bottom:calc(70px + env(safe-area-inset-bottom));min-width:min(18rem,calc(100vw - 1rem));max-height:min(70vh,32rem);overflow-y:auto}.site-main{width:min(100% - 2rem,1320px);padding:clamp(1.25rem,3vw,2.5rem) 0 5.5rem}.prototype-notice{display:flex;align-items:flex-start;gap:.8rem;margin-bottom:1.5rem;padding:.85rem 1rem;color:#573b0c;background:#fff5db;border:1px solid #e7ce8b;border-radius:.75rem;font-size:.88rem}.prototype-notice svg{flex:0 0 auto;width:1.15rem;height:1.15rem;margin-top:.12rem}.prototype-notice p{max-width:78ch;margin:0}html.dark .prototype-notice{color:#f5dfaa;background:#332a17;border-color:#68542a}.weather-dashboard{display:grid;grid-template-columns:minmax(0,1fr);gap:1.5rem;min-width:0}.weather-dashboard>:is(header,#weather-status,#weather-content){min-width:0}.weather-dashboard__header{display:flex;align-items:end;justify-content:space-between;gap:1.25rem;min-width:0;padding-bottom:1.1rem;border-bottom:1px solid var(--line)}.weather-dashboard__header>div:first-child{min-width:0}.weather-dashboard__header h2{margin:0;color:var(--ink);font-size:clamp(1.65rem,3vw,2.35rem);line-height:1.12;font-weight:800;letter-spacing:-.025em}.weather-dashboard__header h2>span:first-child{color:var(--sky-ink);font-weight:450}.weather-dashboard__header p{max-width:68ch;margin:.55rem 0 0;color:var(--muted)}.weather-dashboard__controls{display:flex;flex-wrap:wrap;align-items:end;gap:.55rem;min-width:0}.weather-dashboard__controls label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.weather-dashboard__controls select{min-height:44px;min-width:9.5rem;padding:.55rem 2rem .55rem .7rem;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-control)}.weather-refresh,.weather-map-link{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-width:0;max-width:100%;min-height:44px;padding:.55rem .8rem;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-control);font-weight:700;text-decoration:none;cursor:pointer}.weather-refresh svg,.weather-map-link svg{width:1rem;height:1rem}.weather-refresh:focus-visible,.weather-map-link:focus-visible,.weather-dashboard select:focus-visible,.weather-days button:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.weather-refresh:disabled{opacity:.65;cursor:progress}.weather-status{margin:0;padding:.8rem 0;color:var(--muted);border-bottom:1px solid var(--line);font-size:.92rem}.weather-status[data-state=loading]{color:var(--ink)}.weather-status[data-state=stale]{color:var(--monitor-ink)}.weather-status[data-state=error],.weather-status[data-state=unavailable]{color:var(--warning-ink)}.weather-current{display:grid;grid-template-columns:minmax(15rem,.8fr) minmax(0,1.2fr);color:#f5faff;background:var(--navy);border-radius:var(--radius-panel);box-shadow:var(--depth);overflow:hidden}.weather-now{display:flex;flex-direction:column;justify-content:center;min-height:15rem;padding:clamp(1.25rem,4vw,2.4rem)}.weather-now h3{margin:0 0 .7rem;color:#bfeaff;font-size:.9rem;font-weight:700}.weather-now__condition{display:flex;align-items:center;gap:.55rem;color:#fff;font-size:1.08rem;font-weight:700}.weather-now__condition svg{width:1.4rem;height:1.4rem;color:#7dd3fc}.weather-now__temperature{display:flex;align-items:start;gap:.15rem;margin:.2rem 0;font-size:clamp(3.7rem,8vw,6rem);line-height:1;font-weight:800;letter-spacing:-.055em;font-variant-numeric:tabular-nums}.weather-now__temperature>span:last-child{margin-top:.75rem;color:#bfeaff;font-size:1.5rem;letter-spacing:0}.weather-now__valid,.weather-now__point{margin:.4rem 0 0;color:#d0e2ee;font-size:.88rem}.weather-current__details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:center;margin:0;padding:1rem clamp(1rem,3vw,2rem);border-left:1px solid #365267}.weather-current__details>div{min-width:0;padding:.9rem .6rem;border-bottom:1px solid #365267}.weather-current__details dt{color:#bfeaff;font-size:.84rem}.weather-current__details dd{margin:.3rem 0 0;color:#fff;font-size:1.18rem;font-weight:720;font-variant-numeric:tabular-nums}.weather-current__details small{display:block;margin-top:.2rem;color:#d0e2ee;font-size:.77rem}.weather-section{min-width:0;padding-top:1.35rem;border-top:1px solid var(--line)}.weather-section__heading{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:.85rem;margin-bottom:.85rem}.weather-section__heading h3{margin:0;color:var(--ink);font-size:1.22rem;font-weight:780}.weather-section__heading p{margin:.25rem 0 0;color:var(--muted);font-size:.88rem}.weather-days{display:flex;overflow-x:auto;overscroll-behavior-x:contain;border-block:1px solid var(--line);scrollbar-color:var(--line-strong) transparent}.weather-day{display:grid;align-content:start;justify-items:start;gap:.35rem;flex:1 0 8rem;min-height:8rem;padding:.85rem .75rem;color:var(--ink);background:transparent;border:0;border-right:1px solid var(--line);border-bottom:3px solid transparent;text-align:left;cursor:pointer}.weather-day:last-child{border-right:0}.weather-day[aria-pressed=true]{border-bottom-color:var(--sky-blue);background:color-mix(in srgb,var(--sky-blue) 8%,var(--surface))}.weather-day svg{width:1.25rem;height:1.25rem;color:var(--sky-ink)}.weather-day strong{font-size:.9rem}.weather-day span{color:var(--muted);font-size:.82rem}.weather-hourly{display:grid;grid-auto-columns:minmax(8.5rem,1fr);grid-auto-flow:column;overflow-x:auto;overscroll-behavior-x:contain;border-block:1px solid var(--line);scrollbar-color:var(--line-strong) transparent}.weather-hour-item{display:grid;align-content:start;justify-items:start;gap:.34rem;min-height:9rem;padding:.85rem .8rem;color:var(--ink);border-right:1px solid var(--line)}.weather-hour-item:last-child{border-right:0}.weather-hour-item time,.weather-hour-item>span{color:var(--muted);font-size:.81rem}.weather-hour-item>svg{width:1.2rem;height:1.2rem;color:var(--sky-ink)}.weather-hour-item strong{font-size:1.1rem;font-variant-numeric:tabular-nums}.weather-hour-empty,.weather-chart-empty{margin:0;padding:.75rem 0;color:var(--muted)}.weather-charts{display:grid;grid-template-columns:minmax(0,1fr);gap:1.5rem;min-width:0}.weather-chart-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;border-block:1px solid var(--line);scrollbar-color:var(--line-strong) transparent}.weather-chart{display:block;width:100%;min-width:660px;height:auto;color:var(--muted)}.weather-chart__grid{stroke:var(--line);stroke-width:1}.weather-chart__axis{fill:var(--muted);font:12px system-ui,sans-serif}.weather-chart__series{fill:none;stroke:var(--sky-ink);stroke-width:3;vector-effect:non-scaling-stroke}.weather-chart__bar{fill:color-mix(in srgb,var(--sky-blue) 68%,var(--surface));stroke:var(--sky-ink);stroke-width:1;cursor:pointer}.weather-chart__point{fill:var(--surface);stroke:var(--sky-ink);stroke-width:2.5;cursor:pointer}.weather-chart__point[aria-pressed=true],.weather-chart__bar[aria-pressed=true]{fill:var(--sky-blue);stroke:var(--navy);stroke-width:3}.weather-chart__point:focus,.weather-chart__bar:focus{outline:none;filter:drop-shadow(0 0 3px var(--sky-blue))}.weather-chart-selection,.weather-inline-status{margin:.75rem 0 0;color:var(--muted);font-size:.9rem}.weather-data-table{margin-top:1rem;color:var(--ink)}.weather-data-table summary{width:fit-content;min-height:44px;padding:.65rem 0;color:var(--sky-ink);text-decoration:underline;text-underline-offset:.15em;cursor:pointer}.weather-table-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}.weather-table-scroll table{width:100%;min-width:620px;border-collapse:collapse;text-align:left}.weather-table-scroll caption{padding:.65rem 0;color:var(--muted);text-align:left}.weather-table-scroll th,.weather-table-scroll td{padding:.75rem .8rem;border-bottom:1px solid var(--line);vertical-align:top}.weather-table-scroll th{color:var(--muted);font-size:.83rem;font-weight:700}.weather-table-scroll td{color:var(--ink);font-size:.88rem}.weather-table-scroll tbody tr[data-selected=true]{box-shadow:inset 3px 0 var(--sky-blue)}.weather-table-scroll button{min-height:44px;padding:.4rem 0;color:var(--sky-ink);background:none;border:0;text-decoration:underline;text-underline-offset:.15em;text-align:left;cursor:pointer}.weather-source-note{display:grid;gap:.4rem;padding-top:1rem;color:var(--muted);border-top:1px solid var(--line);font-size:.86rem}.weather-source-note p{margin:0}.weather-source-note a{color:var(--sky-ink);text-decoration:underline;text-underline-offset:.15em}.pagasa-advisory-list{display:grid;gap:.8rem}.pagasa-advisory{display:grid;gap:.55rem;min-width:0;padding:1rem;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-panel)}.pagasa-advisory__heading{display:flex;align-items:flex-start;justify-content:space-between;gap:.8rem}.pagasa-advisory__heading h4{margin:0;font-size:1.05rem;line-height:1.35}.pagasa-advisory p,.pagasa-advisory small{margin:0;overflow-wrap:anywhere;color:var(--muted);line-height:1.55}.pagasa-advisory__meta{color:var(--ink)!important;font-size:.9rem;font-weight:700}.pagasa-advisory__status{flex:0 0 auto;padding:.22rem .5rem;color:var(--ink);background:var(--mist);border-radius:var(--radius-control);font-size:.75rem;font-weight:750;text-transform:capitalize}.pagasa-advisory__status--current{color:#8f1712;background:#fee4e2}.pagasa-advisory__status--upcoming{color:#7a4100;background:#fff0c2}.pagasa-advisory a{width:fit-content;color:var(--sky-ink);font-weight:750;text-decoration:underline;text-underline-offset:.15em}.pagasa-advisory__unavailable{padding:.75rem;color:#7b1d16!important;background:#fff0ed;border-radius:var(--radius-control);font-weight:700}html.dark .pagasa-advisory__unavailable{color:#ffd0c9!important;background:#48221f}.pagasa-advisory__empty{color:var(--muted)}.pagasa-advisory-history{margin-top:.75rem}.pagasa-advisory-history summary{min-height:44px;display:flex;align-items:center;cursor:pointer;color:var(--sky-ink);font-weight:700}@media(max-width:560px){.pagasa-advisory{padding:.85rem}.pagasa-advisory__heading{flex-direction:column}.pagasa-advisory__status{white-space:normal}}.page-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin:0 0 1.25rem}.page-heading h1{max-width:18ch;margin:0;color:var(--ink);font-size:clamp(1.8rem,4vw,3rem);font-weight:800;line-height:1.08;letter-spacing:-.025em}.page-heading p{max-width:70ch;margin:.55rem 0 0;color:var(--muted);font-size:.98rem}.page-heading .button{flex:0 0 auto}.tab-content{display:none;min-width:0}.tab-content.active{display:block}.overview-grid{display:grid;grid-template-columns:1fr;gap:1rem}.status-workarea,.map-entry,.municipality-workarea,.unavailable-workarea,.updates-workarea{min-width:0;border-radius:var(--radius-panel)}.status-workarea{display:flex;flex-direction:column;justify-content:center;min-height:18rem;padding:clamp(1.25rem,2.5vw,2rem);color:#f5faff;background:var(--navy);box-shadow:var(--depth)}.workarea-heading{display:flex;align-items:start;justify-content:space-between;gap:.6rem}.field-label{display:block;margin:0 0 .25rem;color:#b6d4e4;font-size:.76rem;font-weight:750;letter-spacing:.045em;text-transform:uppercase}.status-workarea h2,.map-entry h2{margin:0;color:inherit;font-size:clamp(1.35rem,2.4vw,1.8rem);line-height:1.2;font-weight:760}.icon-text-button{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;min-height:44px;padding:.55rem .7rem;color:#e5f7ff;background:#163b54;border:1px solid #41627a;border-radius:.55rem;font-size:.78rem;font-weight:700}.icon-text-button svg{width:1rem;height:1rem}.sample-state{display:flex;align-items:start;gap:.8rem;margin-top:1.5rem;padding:.9rem 0;border-top:1px solid #365267;border-bottom:1px solid #365267}.sample-state__marker{width:.7rem;height:.7rem;margin-top:.35rem;background:#f3c75e;border:2px solid #ffe7a3;border-radius:50%;flex:0 0 auto}.sample-state div{display:grid;gap:.15rem}.sample-state strong{color:#d5e9f4;font-size:.75rem;text-transform:uppercase;letter-spacing:.035em}.sample-state span:last-child{color:#fff;font-size:1.3rem;font-weight:720}.status-explainer{max-width:54ch;margin:.8rem 0 0;color:#d0e0eb;font-size:.9rem}.status-actions{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:1.15rem}.map-entry{position:relative;display:flex;align-items:end;min-height:18rem;overflow:hidden;padding:clamp(1.25rem,2.5vw,2rem);color:#effaff;background:#0c3853;isolation:isolate}.map-entry__content{max-width:30rem;padding:1.15rem;background:#0c3853;border:1px solid rgb(132 201 226 / 40%);border-radius:.8rem}.map-entry__content p{max-width:42ch;margin:.5rem 0 1rem;color:#d5e8f1;font-size:.88rem}.button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:46px;padding:.65rem .95rem;color:var(--ink);font-size:.9rem;font-weight:700;line-height:1.2;text-decoration:none;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-control);transition:background-color .13s var(--ease),border-color .13s var(--ease),transform .13s var(--ease)}.button svg{width:1.05rem;height:1.05rem;flex:0 0 auto}.button:hover{transform:translateY(-1px)}.button--primary{color:#fff;background:#075985;border-color:#075985}.button--primary:hover{color:#fff;background:#064b6d}.button--outline{color:var(--sky-ink);background:var(--surface);border-color:var(--line-strong)}html.dark .button--outline{color:#a9e5ff}.button--quiet{color:var(--muted);background:transparent;border-color:transparent}.button--light{color:#12384e;background:#f0f8fc;border-color:#c4dce9}.section-heading-row{display:flex;align-items:end;justify-content:space-between;gap:.8rem}.section-heading-row h2,.municipality-workarea h2,.updates-workarea h2,.unavailable-workarea h2{margin:0;color:var(--ink);font-size:1.2rem;line-height:1.25;font-weight:760}.section-heading-row p{margin:.25rem 0 0;color:var(--muted);font-size:.85rem}.quick-actions{margin-top:2rem}.action-list{display:grid;grid-template-columns:1fr;margin-top:.85rem;border-top:1px solid var(--line)}.action-list button{display:grid;grid-template-columns:2rem 1fr 1.2rem;align-items:center;gap:.75rem;width:100%;min-height:72px;padding:.7rem .6rem;text-align:left;color:var(--ink);background:transparent;border:0;border-bottom:1px solid var(--line)}.action-list button>svg:first-child{color:var(--river);width:1.35rem;height:1.35rem}.action-list button>svg:last-child{color:var(--muted);width:1rem;height:1rem}.action-list button span{display:grid;gap:.1rem}.action-list button strong{font-size:.95rem}.action-list button small{color:var(--muted);font-size:.79rem}.action-list button:hover{background:color-mix(in srgb,var(--mist) 62%,transparent)}.overview-lower-grid{display:grid;grid-template-columns:1fr;gap:1.5rem;margin-top:2.5rem}.municipality-workarea,.updates-workarea{padding:1.2rem;background:var(--surface);border:1px solid var(--line);box-shadow:0 2px 8px #0b1f330a}.municipality-list{display:grid;grid-template-columns:1fr;margin-top:.75rem;border-top:1px solid var(--line)}.municipality-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.25rem .65rem;min-height:58px;padding:.7rem .4rem;text-align:left;background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0}.municipality-row:hover,.municipality-row.is-selected{background:color-mix(in srgb,var(--mist) 72%,transparent)}.municipality-row{transition:background-color var(--motion-fast) var(--ease-motion),color var(--motion-fast) var(--ease-motion)}.municipality-row__name{font-weight:740}.municipality-row [data-muni-summary]{color:var(--muted);font-size:.82rem}.municipality-row [data-muni-depth]{color:var(--muted);font-size:.82rem;font-variant-numeric:tabular-nums}.municipality-row__name{grid-column:1;grid-row:1}.municipality-row [data-muni-summary]{grid-column:1;grid-row:2}.municipality-row [data-muni-depth]{grid-column:1;grid-row:3}.municipality-row [data-muni-level]{grid-column:2;grid-row:1 / span 3;justify-self:end;max-width:100%;padding:.2rem .42rem;color:var(--monitor-ink);background:#fff2cc;border-radius:.35rem;font-size:.72rem;font-weight:750;white-space:normal;text-align:center}html.dark .municipality-row [data-muni-level]{background:#3e3217}.overview-side-stack{display:grid;align-content:start;gap:1rem}.unavailable-workarea{display:grid;grid-template-columns:2rem 1fr auto;align-items:center;gap:.65rem;padding:1rem 1.1rem;background:var(--mist);border:1px solid #c7dfe9}html.dark .unavailable-workarea{background:#172b37;border-color:#365566}.unavailable-workarea>svg{color:var(--sky-ink);width:1.3rem;height:1.3rem}html.dark .unavailable-workarea>svg{color:#7dd3fc}.unavailable-workarea h2{font-size:1rem}.unavailable-workarea p{margin:.15rem 0 0;color:var(--muted);font-size:.82rem}.status-chip{display:inline-flex;align-items:center;width:max-content;min-height:28px;padding:.2rem .55rem;color:var(--muted);background:color-mix(in srgb,var(--paper) 80%,var(--surface));border:1px solid var(--line);border-radius:999px;font-size:.7rem;font-weight:700}.status-chip--demo{color:#704a0d;background:#fff4d6;border-color:#e8d8a7}html.dark .status-chip--demo{color:#f7dfaa;background:#382d17;border-color:#66522b}.text-link{min-height:44px;padding:.5rem;color:var(--sky-ink);background:transparent;border:0;font-weight:700}html.dark .text-link{color:#7dd3fc}.empty-state{display:flex;align-items:center;gap:.55rem;margin:1rem 0 .2rem;padding:.75rem 0;color:var(--muted);border-top:1px solid var(--line);font-size:.9rem}.location-result{display:flex;align-items:center;gap:.75rem;padding:.85rem 1rem;color:var(--ink);background:var(--mist);border:1px solid #b6d9e8;border-radius:.75rem}.location-result.hidden{display:none}.location-result>svg{color:var(--sky-ink)}.location-result div{display:grid}.location-result div strong{font-size:.79rem}.location-result div span{color:var(--muted);font-size:.76rem}.location-result h2{margin:0 auto 0 0;color:var(--ink);font-size:1rem}.location-result button{flex:0 0 auto}.bsafe-app main section>[class*=bg-white],.bsafe-app main section>[class*=bg-slate-50]{background-color:var(--surface)!important;border-color:var(--line)!important;border-radius:var(--radius-panel)!important;box-shadow:0 2px 8px #0b1f330a}.bsafe-app main section [class*=bg-white],.bsafe-app main section [class*=bg-slate-50]{border-color:var(--line)!important}html.dark .bsafe-app main [class*="dark:bg-slate-900"],html.dark .bsafe-app main [class*="dark:bg-slate-800"],html.dark .bsafe-app main [class*="dark:bg-slate-700"]{background-color:var(--surface)!important}html.dark .bsafe-app main [class*="dark:bg-slate-950"]{background-color:var(--paper)!important}.bsafe-app main [class*=text-slate-900],.bsafe-app main [class*=text-slate-800]{color:var(--ink)!important}.bsafe-app main [class*=text-slate-600],.bsafe-app main [class*=text-slate-500],.bsafe-app main [class*=text-slate-400]{color:var(--muted)!important}html.dark .bsafe-app main [class*="dark:text-slate-100"],html.dark .bsafe-app main [class*="dark:text-slate-200"]{color:var(--ink)!important}html.dark .bsafe-app main [class*="dark:text-slate-300"],html.dark .bsafe-app main [class*="dark:text-slate-400"]{color:var(--muted)!important}.bsafe-app main [class*="text-[9px]"],.bsafe-app main [class*="text-[10px]"],.bsafe-app main [class*="text-[11px]"]{font-size:.75rem!important;line-height:1.4!important}.bsafe-app main input:not([type=checkbox]):not([type=radio]),.bsafe-app main select,.bsafe-app main textarea{min-height:46px;padding:.65rem .75rem;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-control)}.bsafe-app main input[type=checkbox],.bsafe-app main input[type=radio]{width:24px;height:24px;min-height:24px;padding:0;accent-color:#075985}.bsafe-app main label:has(input[type=checkbox]){display:flex;align-items:center;gap:.65rem;min-height:48px;margin:0;padding:.5rem}.bsafe-app main textarea{min-height:7rem}.bsafe-app main label{display:inline-block;margin-bottom:.25rem;color:var(--ink);font-size:.9rem;font-weight:650}.bsafe-app main table{width:100%;border-collapse:collapse}.bsafe-app main th,.bsafe-app main td{padding:.7rem .65rem;border-bottom:1px solid var(--line);text-align:left;font-variant-numeric:tabular-nums}.bsafe-app main th{color:var(--muted);font-size:.78rem}.bsafe-app main td{font-size:.88rem}.bsafe-app main [class*=overflow-x-auto]{max-width:100%}.bsafe-app main button[class*=bg-brand-],.bsafe-app main button[class*=bg-red-],.bsafe-app main a[class*=bg-brand-],.bsafe-app main a[class*=bg-red-]{min-height:44px;border-radius:var(--radius-control);box-shadow:none}.bsafe-app main button[class*=bg-brand-]{color:#fff;background-color:var(--river)!important}.bsafe-app main a[href^="tel:"]{min-height:48px;color:#fff;background:#075985!important;border-radius:var(--radius-control)!important;text-decoration:none}.dark .bsafe-app main .text-brand-600,.dark .bsafe-app main [class*="dark:text-sky-400"]{color:#7dd3fc!important}.bsafe-app main .bg-red-600,.bsafe-app main .bg-red-700{background-color:#075985!important}.bsafe-app main .bg-red-600,.bsafe-app main .bg-red-700{animation:none!important}.bsafe-app main [class*=text-red-]{color:#704a0d!important}.bsafe-app main [class*=bg-red-50],.bsafe-app main [class*=bg-red-100]{color:#704a0d!important;background-color:#fff4d6!important;border-color:#e8d8a7!important}html.dark .bsafe-app main [class*="dark:bg-red-950"]{color:#f7dfaa!important;background-color:#382d17!important;border-color:#66522b!important}html.dark .bsafe-app main [class*="dark:text-red-"]{color:#f7dfaa!important}.bsafe-app main .animate-pulse,.bsafe-app main .animate-ping,.bsafe-app main .animated-wave{animation:none!important}.bsafe-app main .bg-red-500{background-color:#075985!important}.map-pan-hint{display:none;margin:.4rem .5rem .2rem;color:#d0e0eb;font-size:.78rem}.municipality-name{padding:.7rem .45rem;color:var(--ink);background:var(--paper);border-bottom:1px solid var(--line);font-size:.9rem;font-weight:700}.map-region{cursor:pointer}.map-region path{transition:stroke .15s var(--ease-motion),stroke-width .15s var(--ease-motion),filter .15s var(--ease-motion)}.map-region:hover path{filter:brightness(1.08)}.map-region.active path{stroke:#f8fdff;stroke-width:4px;filter:drop-shadow(0 2px 4px rgb(11 31 51 / 38%))}.map-region.user-located path{stroke:#7dd3fc!important;stroke-width:4px!important;animation:none!important}.map-selection-toolbar{display:flex;align-items:end;flex-wrap:wrap;gap:.75rem;padding:.25rem .25rem .85rem}.map-selection-toolbar label{display:grid;gap:.25rem;color:var(--ink);font-size:.82rem;font-weight:700}.map-selection-toolbar select{min-width:10rem;min-height:44px;padding:.5rem .7rem;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-control)}.map-theme-controls{display:inline-flex;gap:.35rem;margin-left:auto}.map-theme-controls button{min-height:44px;padding:.5rem .75rem;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-control);font-size:.82rem;font-weight:700}.map-theme-controls button[aria-pressed=true]{color:#fff;background:var(--river);border-color:var(--river)}.geographic-map-frame{position:relative;min-width:0;min-height:360px;overflow:hidden;background:#eaf1f4;border:1px solid var(--line-strong);border-radius:.9rem}.geographic-map{width:100%;height:420px;min-height:340px;background:#eaf1f4}html.dark .geographic-map-frame,html.dark .geographic-map{background:#0b1722}.geographic-map:focus-visible{outline:3px solid var(--focus);outline-offset:-3px}.geographic-map-controls{position:absolute;z-index:4;top:.75rem;left:.75rem;display:grid;gap:.4rem}.geographic-map-controls button{display:grid;place-items:center;width:44px;height:44px;color:#172b3a;background:#fff;border:1px solid #9fb3c1;border-radius:.65rem;box-shadow:0 2px 8px #0b1f332e;font-size:1.3rem;font-weight:700}.geographic-map-controls button svg{width:1.1rem;height:1.1rem}.geographic-map-controls button:focus-visible{outline:3px solid #0284c7;outline-offset:2px}.map-status{position:absolute;z-index:3;top:50%;left:50%;width:min(28rem,calc(100% - 6rem));transform:translate(-50%,-50%);padding:.8rem 1rem;color:#172b3a;background:#fff;border:1px solid #9fb3c1;border-radius:.75rem;box-shadow:0 4px 18px #0b1f3329;font-size:.9rem;text-align:center}.map-status[data-state=error]{color:#7f1d1d;border-color:#b91c1c}html.dark .map-status{color:#e8eef4;background:#141f2b;border-color:#486174}html.dark .map-status[data-state=error]{color:#fecaca;border-color:#f87171}.map-source-note{margin:.55rem .2rem 0;color:var(--muted);font-size:.78rem}.map-source-note a{font-weight:700}.map-data-tools{display:grid;gap:.9rem;min-width:0;padding:1rem;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-panel)}.map-tools-heading{display:flex;align-items:start;justify-content:space-between;gap:.75rem}.map-tools-heading h3{margin:0;color:var(--ink);font-size:1.08rem;font-weight:760}.map-tools-heading p,.map-data-note{margin:.2rem 0 0;color:var(--muted);font-size:.82rem;line-height:1.45}.flood-monitoring-note,.flood-monitoring-summary,.flood-monitoring-results{padding:1.1rem 1.25rem;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:.875rem}.heading-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem}.flood-monitoring-note{background:var(--mist);line-height:1.55}html.dark .flood-monitoring-note{background:#172b37}.flood-monitoring-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:end;gap:.8rem;padding:1rem 0;border-block:1px solid var(--line)}.flood-monitoring-controls label{display:grid;gap:.35rem;color:var(--muted);font-size:.82rem;font-weight:650}.flood-monitoring-controls select,.flood-monitoring-controls input{width:100%;min-height:46px;padding:.6rem .75rem;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:.625rem;font:inherit}.flood-monitoring-controls :is(select,input):focus-visible{outline:3px solid var(--focus);outline-offset:2px}.flood-monitoring-summary h2,.flood-monitoring-results h2{margin:0;color:var(--ink);font-size:1.1rem;font-weight:750}.flood-monitoring-summary p{margin:.5rem 0 0;line-height:1.55}.flood-monitoring-meta{color:var(--muted);font-size:.82rem;line-height:1.5}.flood-monitoring-results>.section-heading-row{margin-bottom:.4rem}.flood-observation-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 0;border-top:1px solid var(--line)}.flood-observation-row__main{min-width:0}.flood-observation-row h3{margin:0;font-size:1rem;font-weight:740}.flood-observation-row p{margin:.25rem 0 0;line-height:1.45}.flood-observation-row .button{flex:0 0 auto}.flood-history-list{margin:.5rem 0 0;padding:0;list-style:none}.flood-history-list li{display:grid;gap:.25rem;padding:.85rem 0;border-top:1px solid var(--line)}.flood-history-list time{color:var(--muted);font-size:.82rem}.flood-monitoring-pagination{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding-top:.85rem;border-top:1px solid var(--line)}.flood-monitoring-pagination .button{min-width:6.5rem}html.dark .flood-monitoring-note,html.dark .flood-monitoring-summary,html.dark .flood-monitoring-results{color:var(--dark-copy)}html.dark .flood-monitoring-controls :is(select,input){color:var(--dark-copy);background:var(--dark-surface);border-color:#496173}.road-monitoring-note,.road-monitoring-summary,.road-monitoring-results,.road-record-detail{padding:1.1rem 1.25rem;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:.875rem}.road-monitoring-note{background:var(--mist);line-height:1.55}.road-monitoring-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:.8rem;padding:1rem 0;border-block:1px solid var(--line)}.road-monitoring-controls label{display:grid;gap:.35rem;color:var(--muted);font-size:.82rem;font-weight:650}.road-monitoring-controls select,.road-monitoring-controls input{width:100%;min-height:46px;padding:.6rem .75rem;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:.625rem;font:inherit}.road-monitoring-controls :is(select,input):focus-visible{outline:3px solid var(--focus);outline-offset:2px}.road-monitoring-controls>button{min-height:46px}.road-monitoring-summary h2,.road-monitoring-results h2,.road-record-detail h3{margin:0;color:var(--ink);font-size:1.1rem;font-weight:750}.road-monitoring-summary p{margin:.5rem 0 0;line-height:1.55}.road-monitoring-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(17rem,.42fr);gap:1rem;align-items:start}.road-record-detail{position:sticky;top:5.5rem}.road-record-detail [data-road-detail-content]{display:grid;gap:.65rem;margin-top:.65rem}.road-record-detail p{margin:0;line-height:1.5}.road-observation-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 0;border-top:1px solid var(--line)}.road-observation-row__main{min-width:0}.road-observation-row__title{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem}.road-observation-row h3{margin:0;font-size:1rem;font-weight:740}.road-observation-row p{margin:.25rem 0 0;line-height:1.45}.road-observation-row__actions{display:flex;flex:0 0 auto;flex-wrap:wrap;gap:.45rem}.road-condition-badge{display:inline-flex;align-items:center;min-height:1.75rem;padding:.25rem .55rem;border:1px solid currentColor;border-radius:999px;font-size:.72rem;font-weight:750}.road-condition-badge--passable{color:#11663b;background:#e9f8ef}.road-condition-badge--flooded{color:#98400b;background:#fff1e7}.road-condition-badge--restricted{color:#7a5000;background:#fff7d6}.road-condition-badge--closed{color:#991b1b;background:#feecec}.road-condition-badge--observation{color:#185985;background:#e7f4fb}.road-condition-badge--unknown{color:#475569;background:#eef2f6}html.dark .road-monitoring-note,html.dark .road-monitoring-summary,html.dark .road-monitoring-results,html.dark .road-record-detail{color:var(--dark-copy)}html.dark .road-monitoring-note{background:#172b37}html.dark .road-monitoring-controls :is(select,input){color:var(--dark-copy);background:var(--dark-surface);border-color:#496173}html.dark .road-condition-badge--passable{color:#8ce2af;background:#113426}html.dark .road-condition-badge--flooded{color:#fdba8c;background:#412414}html.dark .road-condition-badge--restricted{color:#f8d56b;background:#3a3014}html.dark .road-condition-badge--closed{color:#fca5a5;background:#421b1b}html.dark .road-condition-badge--observation{color:#8bd1f3;background:#123447}html.dark .road-condition-badge--unknown{color:#cbd5e1;background:#273443}.history-monitoring-note,.history-summary,.history-chart-section,.history-comparison,.history-records,.history-record-detail{padding:1.1rem 1.25rem;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-panel)}.history-monitoring-note{background:var(--mist);line-height:1.55}.history-monitoring-state{margin:0;padding:.8rem 1rem;color:var(--muted);border-block:1px solid var(--line)}.history-monitoring-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:end;gap:.8rem;padding:1rem 0;border-block:1px solid var(--line)}.history-monitoring-controls label,.history-series-control{display:grid;gap:.35rem;color:var(--muted);font-size:.82rem;font-weight:650}.history-monitoring-controls :is(select,input),.history-series-control select{width:100%;min-height:46px;padding:.6rem .75rem;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-control);font:inherit}.history-monitoring-controls :is(select,input):focus-visible,.history-series-control select:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.history-custom-dates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;grid-column:1 / -2}.history-summary h2,.history-chart-section h2,.history-comparison h2,.history-records h2,.history-record-detail h3{margin:0;color:var(--ink);font-size:1.1rem;font-weight:750}.history-stat-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin:.75rem 0 0;border-block:1px solid var(--line)}.history-stat-grid>div{min-width:0;padding:.85rem;border-right:1px solid var(--line)}.history-stat-grid>div:last-child{border-right:0}.history-stat-grid dt{color:var(--muted);font-size:.78rem;line-height:1.35}.history-stat-grid dd{margin:.25rem 0 0;color:var(--ink);font-size:1.1rem;font-weight:780;line-height:1.3}.history-series-control{max-width:36rem;margin:.75rem 0}.history-chart-scroll,.history-table-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}.history-chart-scroll{border-block:1px solid var(--line)}.history-chart{display:block;width:100%;min-width:660px;height:auto}.history-chart__grid{stroke:var(--line);stroke-width:1}.history-chart__axis{fill:var(--muted);font:12px system-ui,sans-serif}.history-chart__series{fill:none;stroke:var(--sky-ink);stroke-width:3;vector-effect:non-scaling-stroke}.history-chart__point{fill:var(--surface);stroke:var(--sky-ink);stroke-width:3;cursor:pointer}.history-chart__point:focus{outline:none;filter:drop-shadow(0 0 3px var(--sky))}.history-data-table{margin-top:.75rem}.history-data-table summary{min-height:44px;padding:.55rem 0;color:var(--sky-ink);font-weight:700;cursor:pointer}.history-table-scroll table{width:100%;min-width:700px;border-collapse:collapse;font-size:.86rem}.history-table-scroll :is(th,td){padding:.7rem .65rem;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.history-table-scroll th{color:var(--muted);font-weight:700}.history-results-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(18rem,.4fr);align-items:start;gap:1rem}.history-record-detail{position:sticky;top:5.5rem}.history-record-detail [data-history-detail-content]{display:grid;gap:.65rem;margin-top:.65rem}.history-record-detail p{margin:0;line-height:1.5}.history-observation-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 0;border-top:1px solid var(--line)}.history-observation-row__main{min-width:0}.history-observation-row__title{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem}.history-observation-row h3{margin:0;font-size:1rem;font-weight:740}.history-observation-row p{margin:.25rem 0 0;line-height:1.45}.history-observation-row__actions{display:flex;flex:0 0 auto;flex-wrap:wrap;gap:.45rem}.history-status{display:inline-flex;align-items:center;min-height:1.75rem;padding:.25rem .55rem;border:1px solid currentColor;border-radius:999px;font-size:.72rem;font-weight:750}.history-status--current{color:#166534;background:#e9f8ef}.history-status--expired{color:#475569;background:#eef2f6}.history-status--resolved{color:#185985;background:#e7f4fb}html.dark .history-monitoring-note,html.dark .history-summary,html.dark .history-chart-section,html.dark .history-comparison,html.dark .history-records,html.dark .history-record-detail{color:var(--dark-copy)}html.dark .history-monitoring-note{background:#172b37}html.dark .history-monitoring-controls :is(select,input),html.dark .history-series-control select{color:var(--dark-copy);background:var(--dark-surface);border-color:#496173}html.dark .history-status--current{color:#8ce2af;background:#113426}html.dark .history-status--expired{color:#cbd5e1;background:#273443}html.dark .history-status--resolved{color:#8bd1f3;background:#123447}@media(max-width:760px){.flood-monitoring-controls{grid-template-columns:1fr 1fr}.flood-monitoring-controls label:nth-child(3){grid-column:1 / -1}.flood-monitoring-controls>button{width:100%}.road-monitoring-controls{grid-template-columns:1fr 1fr}.road-monitoring-controls>button{width:100%}.road-monitoring-layout{grid-template-columns:1fr}.road-record-detail{position:static;order:-1}.history-monitoring-controls{grid-template-columns:1fr 1fr}.history-monitoring-controls>button{width:100%}.history-custom-dates{grid-column:1 / -1}.history-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.history-stat-grid>div{border-bottom:1px solid var(--line)}.history-results-layout{grid-template-columns:1fr}.history-record-detail{position:static;order:-1}}@media(max-width:520px){.flood-monitoring-note,.flood-monitoring-summary,.flood-monitoring-results{padding:.9rem}.heading-actions{width:100%}.heading-actions .button{flex:1 1 auto}.flood-monitoring-controls{grid-template-columns:1fr}.flood-monitoring-controls label:nth-child(3){grid-column:auto}.flood-observation-row{align-items:stretch;flex-direction:column}.flood-observation-row .button{align-self:flex-start}.road-monitoring-note,.road-monitoring-summary,.road-monitoring-results,.road-record-detail{padding:.9rem}.road-monitoring-controls{grid-template-columns:1fr}.road-observation-row{align-items:stretch;flex-direction:column}.road-observation-row__actions{width:100%}.road-observation-row__actions .button{flex:1 1 auto}.history-monitoring-note,.history-summary,.history-chart-section,.history-comparison,.history-records,.history-record-detail{padding:.9rem}.history-monitoring-controls,.history-custom-dates,.history-stat-grid{grid-template-columns:1fr}.history-stat-grid>div{border-right:0}.history-observation-row{align-items:stretch;flex-direction:column}.history-observation-row__actions{width:100%}.history-observation-row__actions .button{flex:1 1 auto}}.map-layer-controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));gap:.35rem .85rem;margin:0;padding:.75rem;border:1px solid var(--line);border-radius:var(--radius-control)}.map-layer-controls legend{padding:0 .35rem;color:var(--ink);font-size:.84rem;font-weight:750}.map-layer-controls label{display:grid!important;grid-template-columns:1.5rem 1fr;align-items:center;column-gap:.55rem!important;min-height:44px!important;margin:0!important;padding:.4rem!important;border-radius:.45rem}.map-layer-controls label:has(input:disabled){opacity:1}.map-layer-controls input{grid-row:1 / span 2}.map-layer-controls span{color:var(--ink);font-size:.84rem}.map-layer-controls small{grid-column:2;color:var(--muted);font-size:.7rem;font-weight:450}.map-marker-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:.45rem .75rem}.map-marker-filters label{margin:0!important}.map-marker-filters label[for=map-marker-search]{grid-column:1 / -1}.map-marker-filters select,.map-marker-filters input{width:100%;min-width:0;min-height:44px}#map-marker-search-label,#map-marker-search{grid-column:1 / -1}.map-marker-results{display:grid;gap:.4rem;max-height:18rem;overflow:auto;margin:0;padding:0;list-style:none}.map-marker-result{display:grid;width:100%;min-height:48px;gap:.2rem;padding:.6rem .7rem;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:.55rem;text-align:left}.map-marker-result:hover{border-color:var(--river)}.map-marker-result[aria-pressed=true]{border-color:#0284c7;background:#e7f6fc}html.dark .map-marker-result[aria-pressed=true]{border-color:#38bdf8;background:#102f40}.map-marker-result:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.map-marker-result strong{font-size:.88rem}.map-marker-result span{color:var(--muted);font-size:.76rem}.map-marker-details{position:relative;padding:.85rem;color:var(--ink);background:var(--paper);border:1px solid var(--line-strong);border-radius:.7rem}.map-marker-details[hidden]{display:none}.map-marker-details h4{margin:.2rem 0 .55rem;font-size:1rem}.map-marker-details p{margin:.35rem 0;color:var(--muted);font-size:.82rem;overflow-wrap:anywhere}.map-marker-details .marker-detail__category{color:var(--sky-ink);font-weight:750}.map-overlay-demo-notice{margin:0;padding:.75rem .85rem;color:#713b08;background:#fff4d8;border:1px solid #d6a43c;border-radius:var(--radius-control);font-size:.86rem;font-weight:700;line-height:1.45}html.dark .map-overlay-demo-notice{color:#ffe3a3;background:#372b17;border-color:#9a7025}.map-overlay-opacity-controls{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.3rem .8rem;margin:0;padding:.75rem;border:1px solid var(--line);border-radius:var(--radius-control)}.elevation-context-info{display:grid;gap:.4rem;padding:.9rem 1rem;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--paper)}.elevation-context-info h4{margin:0;color:var(--ink);font-size:.95rem;font-weight:750}.elevation-context-info p{margin:0;line-height:1.5}.elevation-key{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;color:var(--muted);font-size:.76rem}.elevation-key__ramp{display:inline-block;width:min(11rem,100%);height:.8rem;border:1px solid var(--line-strong);border-radius:.2rem;background:linear-gradient(90deg,#e8dabc,#bea379,#6f5e4e)}.elevation-context-info [data-state=error]{color:brown;font-weight:700}html.dark .elevation-context-info [data-state=error]{color:#fca5a5}.map-overlay-opacity-controls legend{padding:0 .35rem;color:var(--ink);font-size:.84rem;font-weight:750}.map-overlay-opacity-controls label{min-height:34px;margin:0;align-content:center;color:var(--ink);font-size:.82rem;font-weight:650}.map-overlay-opacity-controls output{color:var(--muted);font-variant-numeric:tabular-nums}.map-overlay-opacity-controls input[type=range]{grid-column:1 / -1;width:100%;min-height:32px;accent-color:var(--river)}.map-overlay-legend{padding:.65rem .2rem 0;color:var(--ink)}.map-overlay-legend summary{display:flex;align-items:center;min-height:44px;padding:.45rem .6rem;color:var(--ink);border:1px solid var(--line);border-radius:var(--radius-control);cursor:pointer;font-size:.86rem;font-weight:750}.map-overlay-legend summary:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.map-overlay-legend[open] summary{margin-bottom:.65rem}.map-overlay-legend h4,.map-overlay-results-heading{margin:.2rem 0 .5rem;color:var(--ink);font-size:.9rem;font-weight:750}.map-overlay-legend ul{display:flex;flex-wrap:wrap;gap:.45rem .9rem;margin:0;padding:0;list-style:none}.map-overlay-legend li{display:inline-flex;align-items:center;gap:.4rem;min-height:32px;color:var(--muted);font-size:.78rem}.legend-swatch{width:.8rem;height:.8rem;flex:0 0 auto;border:1px solid rgb(0 0 0 / 22%);border-radius:3px}.legend-swatch--low{background:#16834b}.legend-swatch--monitor{background:#b77906}.legend-swatch--warning{background:#d45b12}.legend-swatch--critical{background:#c43131}.legend-swatch--info{background:#2875b7}.legend-swatch--unknown{background:#64748b}.legend-swatch--depth{border-radius:50%;background:#2875b7}.legend-swatch--osm-road{width:1.15rem;height:0;border:0;border-top:4px solid #fffdf8;outline:1px solid #a9bbc8;border-radius:0}html.dark .legend-swatch--osm-road{border-top-color:#71899a;outline-color:#405767}.legend-swatch--osm-boundary{width:1.15rem;height:0;border:0;border-top:2px dashed #8ba6b6;border-radius:0;background:transparent}.legend-swatch--place-selected{border:2px solid #075985;border-radius:50%;background:#fff;outline:2px solid #38bdf8;outline-offset:1px}.legend-swatch--susceptibility{width:1.15rem;height:0;border:0;border-top:3px solid #2875b7;border-radius:0;background:transparent}.legend-swatch--historical{width:1.15rem;height:0;border:0;border-top:3px dashed #64748b;border-radius:0;background:transparent}.legend-swatch--estimated{width:1.15rem;height:0;border:0;border-top:3px dotted #7c3aed;border-radius:0;background:transparent}.legend-swatch--marker-flood{border:1px solid #fff;background:#b45309;clip-path:polygon(50% 0,100% 100%,0 100%)}.legend-swatch--marker-evacuation{border:1px solid #fff;background:#047857}.legend-swatch--marker-road{border:1px solid #fff;background:#b91c1c;transform:rotate(45deg) scale(.78)}.legend-swatch--marker-facility{border:1px solid #fff;border-radius:50%;background:#075985}.legend-swatch--marker-community{border:2px solid #6d28d9;border-radius:50%;background:#fff}.legend-swatch--selected-halo{border:2px solid #38bdf8;border-radius:50%;background:#dff6ff;box-shadow:0 0 0 2px #38bdf83d}.map-overlay-legend__roads .legend-swatch{width:1.15rem;height:0;border:0;border-top:3px solid transparent;border-radius:0;background:transparent}.map-overlay-legend__roads li:nth-child(1) .legend-swatch{border-color:#16834b}.map-overlay-legend__roads li:nth-child(2) .legend-swatch{border-color:#d45b12}.map-overlay-legend__roads li:nth-child(3) .legend-swatch{border-color:#b77906;border-top-style:dashed}.map-overlay-legend__roads li:nth-child(4) .legend-swatch{border-color:#c43131}.map-overlay-legend__roads li:nth-child(5) .legend-swatch{border-color:#2875b7;border-top-style:dotted}.map-overlay-legend__roads li:nth-child(6) .legend-swatch{border-color:#64748b;border-top-style:dashed}.map-overlay-legend>p{margin:.5rem 0 0;color:var(--muted);font-size:.78rem;line-height:1.45}.map-overlay__category{color:var(--sky-ink)!important;font-weight:750}html.dark .map-overlay__category{color:#7dd3fc!important}.marker-directions{display:inline-flex;align-items:center;min-height:44px;margin-top:.55rem;padding:.5rem .75rem;color:#fff!important;background:var(--river);border-radius:var(--radius-control);font-weight:700;text-decoration:none}html.dark .map-marker-details .marker-detail__category{color:#7dd3fc}.geographic-map-frame:fullscreen{width:100vw;height:100vh;padding:0;background:var(--paper);border:0;border-radius:0}.geographic-map-frame:fullscreen .geographic-map{height:100%}.geographic-map .maplibregl-ctrl-attrib{max-width:min(70vw,36rem);color:#172b3a;background:#fffffff0;font-size:11px}html.dark .geographic-map .maplibregl-ctrl-attrib{color:#e8eef4;background:#141f2bf0}.geographic-map .maplibregl-ctrl-attrib a{color:#075985}html.dark .geographic-map .maplibregl-ctrl-attrib a{color:#7dd3fc}#panel-status-badge{display:inline-flex;align-items:center;min-height:30px;padding:.25rem .6rem;color:var(--monitor-ink)!important;background:#fff2cc!important;border:1px solid #e7d49b;border-radius:999px}html.dark #panel-status-badge{color:#f7dfaa!important;background:#382d17!important;border-color:#66522b}.muni-card{min-width:0}.muni-card.is-selected{box-shadow:inset 3px 0 var(--sky-ink)}.map-mode-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.55rem .85rem;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-control);font-size:.86rem;font-weight:700}.map-mode-button.is-active,.map-mode-button[aria-pressed=true]{color:#fff;background:var(--river);border-color:var(--river)}.map-location-trigger{min-width:44px}#tab-evacuation .shelter-filter-btn{min-width:44px;min-height:44px}#tab-evacuation .shelter-card a,#tab-ngos a[class*=bg-]{min-height:44px}.geographic-map-host{min-width:0;background:#eaf1f4;border-color:#a9bbc8}html.dark .geographic-map-host{background:#162a3a;border-color:#3d5668}.map-status{display:grid;justify-items:center;gap:.65rem}.map-status[hidden]{display:none}.map-status button{min-height:44px;padding:.55rem .9rem;color:#fff;background:#075985;border:1px solid #075985;border-radius:.65rem;font-weight:700}html.dark .map-status button{color:#0b1f33;background:#7dd3fc;border-color:#7dd3fc}.map-status button[hidden]{display:none}.geographic-map .maplibregl-ctrl button{min-width:36px;min-height:36px}.geographic-map .maplibregl-canvas:focus-visible{outline:3px solid #0284c7;outline-offset:-3px}@media(max-width:520px){.map-status{width:min(22rem,calc(100% - 5rem));left:calc(50% + 1.1rem)}}.location-dialog{position:fixed;z-index:80;inset:0;display:grid;place-items:center;padding:1rem;background:#04121fc2}.location-dialog:not([hidden]){animation:overlay-enter var(--motion-overlay) var(--ease-motion) both}.location-dialog:not([hidden]) .location-dialog__panel{animation:panel-enter var(--motion-overlay) var(--ease-motion) both}@keyframes overlay-enter{0%{opacity:0}to{opacity:1}}@keyframes panel-enter{0%{opacity:.9;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.location-dialog__panel{display:grid;gap:1.1rem;width:min(100%,29rem);padding:clamp(1.3rem,4vw,2rem);color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:1rem;box-shadow:0 20px 60px #00000047}.location-dialog__panel h2{margin:0;color:var(--ink)}.location-dialog__panel p{margin:0;color:var(--muted)}.location-dialog__icon{display:grid;place-items:center;width:2.8rem;height:2.8rem;color:var(--sky-ink);background:var(--mist);border-radius:.75rem}.toast{position:fixed;z-index:90;right:1rem;bottom:calc(1rem + env(safe-area-inset-bottom));display:flex;align-items:center;gap:.7rem;max-width:min(28rem,calc(100vw - 2rem));padding:.85rem 1rem;color:#fff;background:#102a3d;border:1px solid #44647a;border-radius:.75rem;box-shadow:var(--depth);font-size:.9rem;transition:opacity .16s var(--ease),transform .16s var(--ease)}.toast svg{color:#91dcff}.toast.is-loading svg:first-of-type{animation:toast-spin .9s linear infinite}@keyframes toast-spin{to{transform:rotate(360deg)}}#toast.hide{opacity:0;transform:translateY(.45rem);pointer-events:none}#toast.show{opacity:1;transform:translateY(0)}.report-entry{animation:report-arrive .17s var(--ease-motion) both}@keyframes report-arrive{0%{opacity:.82;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}html.theme-transition{transition:background-color var(--motion-overlay) var(--ease-motion)}html.theme-transition .bsafe-app,html.theme-transition .bsafe-app main [class*=bg-],html.theme-transition .bsafe-app main [class*=text-],html.theme-transition .prototype-notice,html.theme-transition footer{transition:background-color var(--motion-overlay) var(--ease-motion),color var(--motion-overlay) var(--ease-motion),border-color var(--motion-overlay) var(--ease-motion),box-shadow var(--motion-overlay) var(--ease-motion)}.site-main section h2{scroll-margin-top:6rem}.site-main section h2,.site-main section h3,.site-main section h4{line-height:1.25}.site-main section>div{min-width:0}footer{margin-top:auto;padding-bottom:5rem!important;color:#d0dee8!important;background:#0b1f33!important;border-color:#29465c!important}footer p{max-width:76ch}footer button{min-height:var(--touch-target);color:#cfdeea;background:transparent;border:0}.admin-app{min-height:100vh;color:var(--ink);background:var(--paper)}body.admin-mode,html.admin-route-loading body.bsafe-app{min-width:0}html.admin-route-loading #public-app{display:none!important}.admin-frame{display:grid;grid-template-columns:minmax(0,32rem) minmax(16rem,1fr);min-height:100vh;background:var(--paper)}.admin-frame--simple{grid-template-columns:1fr;place-items:center;padding:1.25rem}.admin-panel{display:flex;flex-direction:column;justify-content:center;width:min(100%,32rem);min-height:100vh;margin-inline:auto;padding:clamp(1.5rem,6vw,4.5rem);background:var(--surface)}.admin-frame--simple .admin-panel{min-height:0;padding:clamp(1.5rem,6vw,3.5rem);border:1px solid var(--line);border-radius:var(--radius-panel);box-shadow:var(--depth)}.admin-brand{display:inline-flex;align-items:center;gap:.75rem;width:fit-content;margin-bottom:2.5rem;color:var(--ink);text-decoration:none}.admin-brand>span:last-child{display:grid;line-height:1.25}.admin-brand strong{font-size:1.1rem;letter-spacing:.02em}.admin-brand small{margin-top:.18rem;color:var(--muted);font-size:.76rem}.admin-brand-mark{display:grid;width:2.8rem;height:2.8rem;place-items:center;color:#fff;background:var(--navy);border-radius:.75rem}.admin-brand-mark svg{width:1.45rem;height:1.45rem}.admin-panel h1,.admin-dashboard h1{margin:0;color:var(--ink);font-size:1.8rem;font-weight:780;line-height:1.2}.admin-intro{max-width:48ch;margin:.7rem 0 1.6rem;color:var(--muted);line-height:1.55}.admin-panel form{display:grid;gap:.65rem}.admin-panel form label{margin-top:.35rem;color:var(--ink);font-size:.92rem;font-weight:700}.admin-panel input{width:100%;min-height:48px;padding:.65rem .8rem;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-control)}.admin-panel input:disabled{opacity:.65}.admin-password-field{display:grid;grid-template-columns:1fr auto;align-items:center}.admin-password-field input{grid-area:1 / 1;padding-right:4.4rem}.admin-reveal{z-index:1;grid-area:1 / 1;justify-self:end;min-width:52px;min-height:44px;margin-right:.15rem;padding:.35rem .6rem;color:var(--sky-ink);background:transparent;border:0;border-radius:.4rem;font-weight:700}.admin-primary,.admin-secondary{display:inline-flex;min-height:48px;align-items:center;justify-content:center;gap:.5rem;padding:.7rem 1rem;border:1px solid transparent;border-radius:var(--radius-control);font-weight:750;text-decoration:none}.admin-primary{margin-top:.75rem;color:#fff;background:var(--river)}.admin-primary:hover:not(:disabled){background:#064a70}.admin-secondary{color:var(--ink);background:var(--surface);border-color:var(--line-strong)}.admin-primary:disabled,.admin-secondary:disabled{opacity:.58;cursor:not-allowed}.admin-forgot{align-self:flex-end;min-height:44px;padding-top:.9rem;font-weight:700}.admin-footnote{margin:1.2rem 0;padding-top:1rem;color:var(--muted);border-top:1px solid var(--line);font-size:.84rem}.admin-session-note{margin:.25rem 0 0;color:var(--muted);font-size:.8rem}.admin-back{width:fit-content;min-height:44px;padding-top:.45rem;font-weight:700}.admin-feedback{margin:.6rem 0 1rem;padding:.8rem .9rem;color:#7f1d1d;background:#fff1f0;border:1px solid #f0c8c4;border-radius:var(--radius-control);font-size:.9rem}.admin-feedback--warning{color:#713f12;background:#fff8e7;border-color:#ead8aa}.admin-feedback--success{color:#14532d;background:#effaf2;border-color:#b6ddbf}html.dark .admin-feedback{color:#fecaca;background:#351e22;border-color:#704047}html.dark .admin-feedback--warning{color:#fde68a;background:#342a16;border-color:#69532c}html.dark .admin-feedback--success{color:#bbf7d0;background:#172d22;border-color:#365d42}.admin-help{margin:-.15rem 0 .25rem;color:var(--muted);font-size:.82rem}.admin-context{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:100vh;overflow:hidden;padding:clamp(2rem,6vw,5rem);color:#e8f4fa;background:var(--navy)}.admin-context p{z-index:1;max-width:15ch;margin:0 0 .6rem;font-size:clamp(1.5rem,3vw,2.3rem);font-weight:750;line-height:1.18}.admin-context small{z-index:1;color:#c2d7e5}.admin-context-art{position:absolute;inset:12% 8% 26%;opacity:.62}.admin-context-art span{position:absolute;display:block;border:1px solid #38bdf8;border-radius:48% 52% 62% 38%;transform:rotate(-25deg)}.admin-context-art span:nth-child(1){inset:4% 8% 18% 24%}.admin-context-art span:nth-child(2){inset:20% 25% 2% 5%;border-color:#b0eaff;transform:rotate(24deg)}.admin-context-art span:nth-child(3){inset:32% 3% 12% 35%;border-color:#8bd8f7;transform:rotate(9deg)}.admin-actions,.admin-header-actions,.admin-roles{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}.admin-actions{margin-top:1.25rem}.admin-role{padding:.38rem .65rem;color:var(--sky-ink);background:var(--mist);border-radius:999px;font-size:.8rem;font-weight:750;text-transform:capitalize}html.dark .admin-role{color:#b9e9fc;background:#193546}.admin-shell{min-height:100vh;background:var(--paper)}.admin-header{display:flex;min-height:76px;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem clamp(1rem,4vw,3rem);background:var(--surface);border-bottom:1px solid var(--line)}.admin-header .admin-brand{margin:0}.admin-header-actions{color:var(--muted);font-size:.88rem}.admin-dashboard{width:min(100% - 2rem,60rem);margin:0 auto;padding:clamp(2rem,7vw,5rem) 0}.admin-identity,.admin-stage-note{margin-top:2rem;padding:1.25rem 0;border-top:1px solid var(--line)}.admin-identity h2,.admin-stage-note h2{margin:0 0 .5rem;font-size:1.08rem}.admin-identity p,.admin-stage-note p{color:var(--muted)}.admin-roles{margin-top:.75rem}.admin-spinner{width:1rem;height:1rem;border:2px solid rgb(255 255 255 / 45%);border-top-color:#fff;border-radius:50%;animation:toast-spin .8s linear infinite}html.dark .admin-primary{color:#082f49;background:#7dd3fc}html.dark .admin-primary:hover:not(:disabled){background:#bae6fd}html.dark .admin-reveal{color:#7dd3fc}@media(max-width:760px){.admin-frame{grid-template-columns:1fr}.admin-panel{min-height:100svh}.admin-context{display:none}}@media(max-width:420px){.admin-header{align-items:flex-start;flex-direction:column;padding-block:1rem}.admin-header-actions{width:100%;justify-content:space-between}.admin-dashboard{width:calc(100% - 2rem)}}@media(prefers-reduced-motion:reduce){.admin-spinner{animation:none}}.admin-shell--dashboard{min-height:100vh;background:var(--paper)}.admin-app h1[tabindex="-1"]:focus,.admin-app h2[tabindex="-1"]:focus{outline:3px solid var(--focus);outline-offset:5px;border-radius:.2rem}.admin-app h1[tabindex="-1"]{width:fit-content;max-width:100%}.admin-topbar{position:sticky;z-index:10;top:0;display:flex;min-height:72px;align-items:center;justify-content:space-between;gap:1rem;padding:.65rem clamp(1rem,3vw,2.25rem);background:var(--surface);border-bottom:1px solid var(--line)}.admin-topbar .admin-brand{margin:0}.admin-topbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:.6rem}.admin-user-label{max-width:15ch;overflow:hidden;color:var(--ink);font-size:.88rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.admin-topbar-actions .admin-secondary{min-height:var(--touch-target);padding:.55rem .8rem;font-size:.86rem}.admin-icon-button,.admin-menu-toggle{display:inline-flex;min-width:44px;min-height:44px;align-items:center;justify-content:center;gap:.45rem;padding:.55rem;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-control)}.admin-icon-button svg,.admin-menu-toggle svg{width:1.15rem;height:1.15rem}.admin-menu-toggle{display:none}.admin-workspace{display:grid;min-height:calc(100vh - 72px);grid-template-columns:250px minmax(0,1fr)}.admin-sidebar{position:sticky;top:72px;display:flex;height:calc(100vh - 72px);flex-direction:column;overflow-y:auto;padding:1.35rem .8rem 1rem;background:var(--surface);border-right:1px solid var(--line)}.admin-sidebar nav{display:grid;gap:.2rem}.admin-sidebar-label{margin:1rem .75rem .4rem;color:var(--muted);font-size:.68rem;font-weight:800;letter-spacing:.09em}.admin-sidebar-label:first-child{margin-top:.2rem}.admin-nav-link{display:flex;min-height:44px;align-items:center;gap:.7rem;padding:.55rem .72rem;color:var(--ink);border-radius:.55rem;font-size:.88rem;font-weight:650;line-height:1.25;text-decoration:none}.admin-nav-link svg{width:1.1rem;height:1.1rem;flex:0 0 auto;color:var(--muted)}.admin-nav-link:hover{background:var(--paper)}.admin-nav-link[aria-current=page]{color:var(--sky-ink);background:var(--mist)}.admin-nav-link[aria-current=page] svg{color:var(--sky-ink)}html.dark .admin-nav-link[aria-current=page]{color:#b9e9fc;background:#193546}html.dark .admin-nav-link[aria-current=page] svg{color:#b9e9fc}.admin-nav-link--upcoming{min-height:48px;color:var(--muted);cursor:default}.admin-nav-link--upcoming span{display:grid;gap:.1rem}.admin-nav-link--upcoming small{font-size:.68rem;font-weight:550}.admin-sidebar-footer{display:flex;align-items:center;gap:.55rem;margin-top:auto;padding:1rem .75rem .25rem;color:var(--muted);border-top:1px solid var(--line);font-size:.8rem}.admin-service-dot{width:.55rem;height:.55rem;background:#16a34a;border-radius:50%}.admin-dashboard{width:min(100%,1180px);margin-inline:auto;padding:clamp(1.5rem,3.4vw,3.4rem) clamp(1rem,3.2vw,3rem) 3rem}.admin-page-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem}.admin-dashboard h1{font-size:clamp(1.65rem,2.5vw,2.25rem);letter-spacing:-.025em}.admin-page-heading p{margin:.35rem 0 0;color:var(--muted)}.admin-refresh{flex:0 0 auto;min-height:44px}.admin-refresh svg{width:1rem;height:1rem}.admin-dashboard>section>.admin-roles{margin-top:1.25rem}.admin-dashboard .admin-role{border:1px solid var(--line);border-radius:.45rem;text-transform:capitalize}.admin-section{margin-top:1.5rem;padding:clamp(1rem,2vw,1.5rem);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-panel);scroll-margin-top:88px}.admin-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.admin-dashboard .admin-section h2{margin:0;color:var(--ink);font-size:1.05rem;font-weight:760}.admin-section-copy{max-width:68ch;margin:.35rem 0 0;color:var(--muted);font-size:.88rem}.admin-data-note{margin:1rem 0 .8rem;color:var(--muted);font-size:.84rem}.admin-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem;margin-top:.9rem}.admin-metric{display:flex;min-height:96px;align-items:center;gap:.8rem;padding:.9rem;background:var(--paper);border:1px solid var(--line);border-radius:12px}.admin-metric-icon{display:grid;width:2.4rem;height:2.4rem;flex:0 0 auto;place-items:center;color:var(--sky-ink);background:var(--mist);border-radius:.7rem}html.dark .admin-metric-icon{color:#b9e9fc;background:#193546}.admin-metric-icon svg{width:1.2rem;height:1.2rem}.admin-metric>div{display:grid;gap:.15rem;min-width:0}.admin-metric strong{color:var(--ink);font-size:1.45rem;font-variant-numeric:tabular-nums;line-height:1.1}.admin-metric>div>span{color:var(--muted);font-size:.78rem;line-height:1.3}.admin-record-list,.admin-activity-list{display:grid;margin:1rem 0 0;padding:0;list-style:none}.admin-record-list li{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 0;border-top:1px solid var(--line)}.admin-record-list li>div:first-child,.admin-record-meta{display:grid;gap:.18rem;min-width:0}.admin-record-list strong{color:var(--ink);font-size:.92rem}.admin-record-list li span,.admin-record-list li small,.admin-record-list time{color:var(--muted);font-size:.78rem}.admin-record-meta{justify-items:end;text-align:right}.admin-record-status{color:var(--normal-ink)!important;font-weight:750}.admin-activity-list li{display:grid;grid-template-columns:2.2rem minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.85rem 0;border-top:1px solid var(--line)}.admin-activity-mark{display:grid;width:2rem;height:2rem;place-items:center;color:var(--sky-ink);background:var(--mist);border-radius:50%}html.dark .admin-activity-mark{color:#b9e9fc;background:#193546}.admin-activity-mark svg{width:1rem;height:1rem}.admin-activity-description{display:grid;color:var(--ink);font-size:.88rem;font-weight:650}.admin-activity-description small{color:var(--muted);font-size:.76rem;font-weight:450}.admin-activity-list time{color:var(--muted);font-size:.78rem;font-variant-numeric:tabular-nums}.admin-empty{margin:1rem 0 0;padding:1rem;color:var(--muted);background:var(--paper);border-radius:.6rem;font-size:.88rem}.admin-report-count{display:flex;align-items:center;gap:.8rem;margin:.9rem 0 0}.admin-report-count strong{color:var(--ink);font-size:1.8rem;font-variant-numeric:tabular-nums}.admin-report-count span{max-width:40ch;color:var(--muted);font-size:.84rem}.admin-account-section{display:flex;align-items:center;justify-content:space-between;gap:1rem}.admin-account-section p{margin:.3rem 0 0;color:var(--muted)}.admin-dashboard-footer{display:flex;justify-content:space-between;gap:1rem;padding:1.5rem .25rem;color:var(--muted);font-size:.8rem}.admin-dashboard-footer a{font-weight:700}.admin-data-state{display:flex;min-height:54px;align-items:center;gap:.7rem;margin:.8rem 0 0;color:var(--muted);font-size:.88rem}.admin-data-state .admin-spinner{border-color:var(--line-strong);border-top-color:var(--river)}.admin-dashboard .admin-feedback{margin-top:1rem}.admin-shell--dashboard :is(button,a,[tabindex]):focus-visible{outline-color:var(--focus)!important}@media(max-width:1100px){.admin-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.admin-topbar{min-height:64px;padding-inline:.85rem}.admin-topbar .admin-brand-mark{width:2.45rem;height:2.45rem}.admin-topbar .admin-brand small{display:none}.admin-topbar-actions{gap:.4rem}.admin-user-label{max-width:10ch;font-size:.8rem}.admin-topbar-actions .admin-secondary{min-width:44px;min-height:44px;padding:.45rem .6rem;font-size:.78rem}.admin-menu-toggle{display:inline-flex;min-height:44px;padding-inline:.6rem;font-size:.82rem;font-weight:700}.admin-workspace{display:block;min-height:calc(100vh - 64px)}.admin-sidebar{position:static;display:none;height:auto;max-height:65vh;overflow-y:auto;padding:.8rem;border-right:0;border-bottom:1px solid var(--line)}.admin-workspace--nav-open .admin-sidebar{display:flex}.admin-sidebar nav{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-sidebar-label{grid-column:1 / -1}.admin-sidebar-footer{margin-top:.75rem}.admin-dashboard{padding:1.4rem .9rem 2rem}.admin-section{margin-top:1rem;padding:1rem}}@media(max-width:480px){.admin-topbar{gap:.5rem}.admin-topbar .admin-brand{gap:.45rem}.admin-topbar .admin-brand strong{font-size:.95rem}.admin-topbar-actions{flex-wrap:wrap}.admin-topbar-actions .admin-secondary[data-admin-action=public]{display:none}.admin-user-label{max-width:8ch}.admin-menu-toggle{min-width:44px}.admin-menu-toggle span{display:none}.admin-page-heading{align-items:flex-start}.admin-page-heading h1{max-width:17ch;overflow-wrap:anywhere}.admin-refresh{padding-inline:.65rem;font-size:.82rem}.admin-metrics{grid-template-columns:1fr 1fr;gap:.55rem}.admin-metric{min-height:82px;gap:.55rem;padding:.7rem}.admin-metric-icon{width:2rem;height:2rem}.admin-metric strong{font-size:1.25rem}.admin-metric>div>span{font-size:.72rem}.admin-record-list li{align-items:flex-start;flex-direction:column}.admin-record-meta{justify-items:start;text-align:left}.admin-activity-list li{grid-template-columns:2rem minmax(0,1fr)}.admin-activity-list time{grid-column:2}.admin-account-section{align-items:flex-start;flex-direction:column}.admin-dashboard-footer{flex-direction:column}}@media(max-width:360px){.admin-user-label{display:none}}@media(prefers-reduced-motion:reduce){.admin-shell--dashboard *,.admin-shell--dashboard *:before,.admin-shell--dashboard *:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.ops-toolbar{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));align-items:end;gap:.7rem;margin-bottom:1rem}.ops-toolbar label,.ops-form-panel label{display:grid;gap:.3rem;color:var(--ink);font-size:.78rem;font-weight:700}.ops-toolbar :is(input,select),.ops-form-panel :is(input,select,textarea){width:100%;min-height:var(--control-height);padding:.6rem .75rem;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-control);font:inherit}.ops-record-list{display:grid;gap:.65rem}.ops-record{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.8rem;padding:.9rem;background:var(--surface);border:1px solid var(--line);border-radius:12px}.ops-record-main{min-width:0}.ops-record h2{margin:0 0 .25rem;color:var(--ink);font-size:1rem}.ops-record p{margin:.25rem 0;color:var(--muted);font-size:.85rem}.ops-record small{display:block;margin-top:.3rem;color:var(--muted)}.ops-record details{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.5rem;font-size:.78rem}.ops-record details code{display:block;max-width:100%;overflow-wrap:anywhere;color:var(--muted)}.ops-record-actions{display:flex;flex-wrap:wrap;justify-content:end;align-content:start;gap:.4rem;max-width:265px}.ops-record-actions button{min-height:var(--touch-target)}.ops-pager{display:flex;align-items:center;justify-content:center;gap:.8rem;margin-top:.8rem;color:var(--muted);font-size:.85rem}.ops-form-panel{margin:.7rem 0;padding:1rem;background:color-mix(in srgb,var(--mist) 32%,var(--surface));border:1px solid var(--line);border-radius:12px}.ops-form-panel h2{margin-top:0;color:var(--ink);font-size:1.1rem}.ops-form-panel form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.ops-form-panel textarea{min-height:76px;resize:vertical}.ops-form-panel label:has([name=geometry]),.ops-form-panel>p,.ops-form-panel .admin-help,.ops-form-panel .admin-actions{grid-column:1 / -1}.ops-form-panel .admin-actions{display:flex;gap:.5rem}.admin-dashboard>.admin-data-note{margin:-.6rem 0 1rem}html.dark .ops-toolbar :is(input,select),html.dark .ops-form-panel :is(input,select,textarea){color:var(--dark-copy);background:var(--dark-ground);border-color:#526577}html.dark .ops-form-panel{background:var(--dark-surface);border-color:#344655}@media(max-width:760px){.ops-record{grid-template-columns:1fr}.ops-record-actions{max-width:none;justify-content:start}.ops-form-panel form{grid-template-columns:1fr}.ops-form-panel label:has([name=geometry]),.ops-form-panel>p,.ops-form-panel .admin-help,.ops-form-panel .admin-actions{grid-column:auto}}.community-review-list{display:grid;gap:.7rem}.community-review-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;padding:1rem;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.community-review-heading{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem}.community-review-heading h2{margin:0}.community-review-row p{margin:.3rem 0;color:var(--muted);font-size:.88rem}.community-review-row small{color:var(--muted)}.community-status{display:inline-flex;align-items:center;min-height:28px;padding:.25rem .55rem;border-radius:999px;color:var(--muted);background:var(--paper);border:1px solid var(--line);font-size:.75rem;font-weight:750}.community-status--under_review{color:#075985;background:#e0f2fe;border-color:#7dd3fc}.community-status--approved{color:#166534;background:#dcfce7;border-color:#86efac}.community-status--rejected{color:#991b1b;background:#fee2e2;border-color:#fca5a5}.community-detail-grid{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(320px,1.2fr);gap:1.25rem;margin-top:1rem}.community-detail-grid dl{display:grid;grid-template-columns:minmax(110px,.45fr) minmax(0,1fr);align-content:start;gap:.45rem .8rem;margin:0}.community-detail-grid dt{color:var(--muted);font-size:.78rem;font-weight:750}.community-detail-grid dd{margin:0;color:var(--ink);overflow-wrap:anywhere}.community-detail-grid h3,.community-admin section>h3{margin:1rem 0 .55rem;color:var(--ink);font-size:.95rem}.community-review-map{min-height:280px;margin-top:.7rem;border:1px solid var(--line);border-radius:12px;overflow:hidden}.community-location-form{display:grid;gap:.7rem;margin-top:.8rem}.community-location-form>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem}.community-location-form label{display:grid;gap:.3rem;color:var(--ink);font-size:.78rem;font-weight:700}.community-location-form :is(input,textarea){width:100%;min-height:var(--control-height);padding:.6rem .75rem;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-control);font:inherit}.community-location-form textarea{min-height:72px;resize:vertical}.community-attachment{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.8rem;padding:.85rem 0;border-top:1px solid var(--line)}.community-attachment small{display:block;margin-top:.25rem;color:var(--muted)}.community-photo-preview{grid-column:1 / -1}.community-photo-preview img{display:block;width:min(100%,720px);max-height:520px;object-fit:contain;background:var(--paper);border:1px solid var(--line);border-radius:12px}.community-history{display:grid;gap:.55rem;padding-left:1.2rem}.community-history li{padding-left:.25rem;color:var(--ink)}.community-history time{display:block;color:var(--muted);font-size:.78rem}.community-history p{margin:.2rem 0 0;color:var(--muted)}.community-assignment-form{display:flex;flex-wrap:wrap;align-items:end;gap:.6rem;margin-top:.7rem}.community-assignment-form label{display:grid;gap:.3rem;min-width:min(100%,260px);color:var(--ink);font-size:.78rem;font-weight:700}.community-assignment-form select{min-height:var(--control-height);padding:.6rem .75rem;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-control);font:inherit}.admin-danger{min-height:var(--touch-target);padding:.55rem .75rem;color:#991b1b;background:#fff;border:1px solid #dc2626;border-radius:var(--radius-control);font:inherit;font-weight:750}html.dark .community-status--under_review{color:#bae6fd;background:#0c354b;border-color:#075985}html.dark .community-status--approved{color:#bbf7d0;background:#173c26;border-color:#166534}html.dark .community-status--rejected{color:#fecaca;background:#421d23;border-color:#991b1b}html.dark .community-location-form :is(input,textarea){color:var(--dark-copy);background:var(--dark-ground);border-color:#526577}html.dark .community-assignment-form select{color:var(--dark-copy);background:var(--dark-ground);border-color:#526577}html.dark .admin-danger{color:#fecaca;background:#351e22;border-color:#b91c1c}@media(max-width:820px){.community-detail-grid,.community-review-row,.community-attachment{grid-template-columns:1fr}.community-review-row>button{justify-self:start}}@media(max-width:560px){.community-location-form>div{grid-template-columns:1fr}.community-review-map{min-height:240px}}.map-editor-shell{min-height:100vh}.map-editor-page{width:min(100%,1920px);margin:0 auto;padding:1.1rem clamp(.75rem,2vw,1.6rem) 1.5rem}.map-editor-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.9rem}.map-editor-heading h1{margin:0;color:var(--ink);font-size:clamp(1.45rem,2.3vw,2rem)}.map-editor-heading p{margin:.35rem 0 0;color:var(--muted);font-size:.9rem}.map-editor-save-state{color:var(--muted);font-size:.8rem;font-weight:700}.map-editor-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding:.65rem;background:var(--surface);border:1px solid var(--line);border-radius:12px}.map-editor-toolbar>div{display:flex;flex-wrap:wrap;gap:.4rem}.map-editor-toolbar button,.map-editor-feature,.map-editor-properties button{min-height:var(--touch-target)}.map-editor-toolbar button.is-active{color:#fff;background:var(--river);border-color:var(--river)}html.dark .map-editor-toolbar button.is-active{color:#082f49;background:#7dd3fc;border-color:#7dd3fc}.map-editor-status{min-height:2.7rem;margin:.45rem 0;padding:.65rem .8rem;color:var(--muted);font-size:.85rem}.map-editor-status.error{color:var(--critical-ink);background:color-mix(in srgb,var(--critical-ink) 9%,var(--surface));border-radius:8px}.map-editor-status.success{color:var(--normal-ink)}.map-editor-layout{display:grid;min-height:min(72vh,860px);grid-template-columns:minmax(220px,275px) minmax(260px,1fr) minmax(270px,330px);overflow:hidden;background:var(--surface);border:1px solid var(--line);border-radius:14px}.map-editor-sidebar,.map-editor-properties{min-width:0;max-height:min(72vh,860px);overflow:auto;padding:.9rem;background:var(--surface)}.map-editor-sidebar{border-right:1px solid var(--line)}.map-editor-properties{border-left:1px solid var(--line)}.map-editor-sidebar label,.map-editor-properties label{display:block;margin:.65rem 0 .28rem;color:var(--ink);font-size:.78rem;font-weight:700}.map-editor-sidebar input,.map-editor-sidebar select,.map-editor-properties input,.map-editor-properties textarea,.map-editor-properties select{width:100%;min-height:var(--control-height);padding:.6rem .75rem;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-control);font:inherit}.map-editor-properties textarea{resize:vertical}.map-editor-sidebar h2,.map-editor-properties h2{margin:1rem 0 .45rem;color:var(--ink);font-size:1rem}.map-editor-feature{display:grid;width:100%;justify-items:start;gap:.2rem;margin:.3rem 0;padding:.6rem;color:var(--ink);background:transparent;border:1px solid var(--line);border-radius:8px;text-align:left}.map-editor-feature span,.map-editor-panel-head p{color:var(--muted);font-size:.73rem}.map-editor-feature.is-selected{background:var(--mist);border-color:var(--river)}html.dark .map-editor-feature.is-selected{background:#193546}.map-editor-sidebar details{margin-top:1rem;padding:.65rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.map-editor-sidebar details label{display:flex;align-items:center;gap:.45rem}.map-editor-sidebar details input{width:1.15rem;min-height:1.15rem}.map-editor-sidebar ol{padding-left:1.1rem;color:var(--muted);font-size:.78rem}.map-editor-map-wrap{position:relative;min-width:0;min-height:500px}#admin-editor-map{position:absolute;inset:0;min-height:500px}.map-editor-mode{position:absolute;top:.75rem;left:.75rem;padding:.45rem .65rem;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:0 3px 12px #0b1f3326;font-size:.76rem;font-weight:750;pointer-events:none}.map-editor-panel-head{display:flex;align-items:start;justify-content:space-between;gap:.5rem}.map-editor-panel-head h2{margin-top:.1rem}.map-editor-panel-head p{margin:0;text-transform:capitalize}.map-editor-actions{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:1rem}.map-editor-actions .admin-primary,.map-editor-actions .admin-secondary{padding:.55rem .7rem}.map-editor-vertices{margin-top:.8rem;color:var(--ink);font-size:.8rem}.map-editor-vertices ol{padding-left:1.2rem}.map-editor-vertices li{margin:.35rem 0}.map-editor-vertex{width:24px;height:24px;padding:0;background:#facc15;border:2px solid #0b1f33;border-radius:50%;cursor:grab}.map-editor-shell :is(button,input,select,textarea,a,summary):focus-visible{outline:3px solid var(--focus)!important;outline-offset:2px}html.dark .map-editor-shell{background:var(--dark-ground)}html.dark .map-editor-toolbar,html.dark .map-editor-layout,html.dark .map-editor-sidebar,html.dark .map-editor-properties{color:var(--dark-copy);background:var(--dark-surface);border-color:#344655}html.dark .map-editor-feature{color:var(--dark-copy)}html.dark .map-editor-properties :is(input,textarea,select),html.dark .map-editor-sidebar :is(input,select){color:var(--dark-copy);background:var(--dark-ground);border-color:#526577}@media(max-width:1120px){.map-editor-layout{grid-template-columns:minmax(200px,240px) minmax(260px,1fr)}.map-editor-properties{grid-column:1 / -1;max-height:none;border-top:1px solid var(--line);border-left:0}.map-editor-map-wrap{min-height:56vh}}@media(max-width:680px){.map-editor-page{padding:.75rem .55rem 1rem}.map-editor-heading{align-items:flex-start;flex-direction:column}.map-editor-toolbar{align-items:stretch;flex-direction:column}.map-editor-toolbar>div:first-child{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.map-editor-toolbar button{padding-inline:.4rem;font-size:.78rem}.map-editor-layout{display:flex;flex-direction:column;overflow:visible}.map-editor-sidebar,.map-editor-properties{max-height:none;border:0}.map-editor-map-wrap{order:-1;min-height:52svh}#admin-editor-map{min-height:52svh}.map-editor-sidebar,.map-editor-properties{border-top:1px solid var(--line)}}.content-toolbar{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));align-items:end;gap:.7rem;margin-bottom:1rem}.content-toolbar label,.content-form label{display:grid;gap:.32rem;color:var(--ink);font-size:.78rem;font-weight:700}.content-toolbar :is(input,select),.content-form :is(input,select,textarea){width:100%;min-height:44px;padding:.6rem .68rem;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:8px;font:inherit}.content-form{margin:.7rem 0 1rem;padding:1rem;background:color-mix(in srgb,var(--mist) 32%,var(--surface));border:1px solid var(--line);border-radius:12px}.content-form h2{margin:.1rem 0 .8rem;color:var(--ink);font-size:1.08rem}.content-form form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.72rem}.content-form textarea{min-height:90px;resize:vertical}.content-wide,.content-form .admin-help,.content-area-targets{grid-column:1/-1}.content-form small,.content-area-targets small{color:var(--muted);font-size:.75rem;font-weight:400}.content-area-targets{min-width:0;margin:0;padding:.7rem .8rem;border:1px solid var(--line);border-radius:8px}.content-area-targets legend{padding-inline:.25rem;color:var(--ink);font-size:.8rem;font-weight:750}.content-area-targets>div{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:.3rem .8rem;max-height:210px;overflow:auto}.content-area-targets .content-check{display:flex;align-items:center;gap:.5rem;min-height:40px;font-weight:500}.content-area-targets input[type=checkbox]{width:20px;height:20px;flex:0 0 20px;accent-color:var(--river)}.content-form .admin-actions{display:flex;align-items:center;gap:.5rem}.content-preview{width:min(92vw,640px);max-height:85vh;overflow:auto;padding:1.2rem;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:14px}.content-preview::backdrop{background:#0714208c}.content-preview h2{margin-top:0}.content-preview p{white-space:pre-wrap;line-height:1.6}.admin-content-workspace :is(button,a,input,select,textarea):focus-visible{outline:3px solid var(--focus);outline-offset:2px}.public-live-content{color:var(--ink)}.public-live-content h3{margin:.2rem 0 .45rem;font-weight:750}.public-live-heading{display:flex;align-items:center;justify-content:space-between;gap:.7rem}.public-live-heading button{min-height:44px;padding:.45rem .7rem;color:var(--river);background:transparent;border:1px solid var(--line-strong);border-radius:8px;font:inherit;font-size:.8rem;font-weight:700}.public-live-content>div>p,.public-live-content>p{color:var(--muted);font-size:.9rem}.public-content-row{display:grid;gap:.3rem;padding:.8rem 0;border-bottom:1px solid var(--line);color:var(--ink);overflow-wrap:anywhere}.public-content-row:last-child{border-bottom:0}.public-content-row h3{margin:0;font-size:1rem}.public-content-row p,.public-content-row small{margin:0;color:var(--muted);font-size:.86rem;line-height:1.5;white-space:pre-wrap}.public-content-row a{width:fit-content;min-height:40px;display:inline-flex;align-items:center;color:var(--river);font-weight:700;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.emergency-updates-shell,.safety-guide,.local-emergency{display:grid;gap:1.5rem;padding:clamp(1rem,3vw,2rem);color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-panel);box-shadow:var(--shadow-soft)}.local-emergency__heading{display:flex;justify-content:space-between;align-items:flex-start;gap:1.5rem}.local-emergency__heading h1{margin:.2rem 0 .45rem;font-size:clamp(1.55rem,4vw,2.35rem);line-height:1.12}.local-emergency__heading p{max-width:72ch;margin:0;color:var(--muted)}.local-emergency__selector{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 2fr;gap:.8rem 1rem;align-items:end;padding:1rem;background:var(--paper);border-radius:var(--radius-control)}.local-emergency__selector label{display:grid;gap:.35rem;font-size:.8rem;font-weight:750}.local-emergency__selector select{width:100%;min-height:46px;padding:.65rem .7rem;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-control)}.local-emergency__selector p{margin:0 0 .65rem;color:var(--muted);font-size:.82rem;line-height:1.45}.local-emergency__status{display:flex;justify-content:space-between;gap:1rem;padding:.8rem 0;border-block:1px solid var(--line)}.local-emergency__status span{color:var(--muted);text-align:right}.local-emergency__status [data-state=error]{color:var(--critical)}.local-emergency__priority{display:grid;grid-template-columns:1fr 1fr;column-gap:2rem}.local-emergency__priority>section{min-width:0;padding:1.4rem 0;border-bottom:1px solid var(--line)}.local-emergency__section-heading{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.8rem}.local-emergency__section-heading h2,.local-emergency__support h2{margin:0;font-size:1.15rem}.local-emergency__qualification,.local-emergency__empty{margin:.2rem 0 .9rem;color:var(--muted);font-size:.86rem;line-height:1.5}.local-emergency__rows article{display:grid;gap:.35rem;padding:.9rem 0;border-top:1px solid var(--line);overflow-wrap:anywhere}.local-emergency__rows article:first-child{border-top:0}.local-emergency__rows :is(h3,p,small){margin:0}.local-emergency__rows h3{font-size:1rem}.local-emergency__rows p,.local-emergency__rows small{color:var(--muted);font-size:.84rem;line-height:1.5}.local-emergency__rows a,.local-emergency__support a{width:fit-content;min-height:40px;display:inline-flex;align-items:center;color:var(--river);font-weight:750;text-decoration:underline;text-underline-offset:3px}.local-emergency__support{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius-control);overflow:hidden}.local-emergency__support>section{display:grid;align-content:start;gap:.75rem;padding:1.25rem;background:var(--paper)}.local-emergency__support p,.local-emergency__support small{margin:0;color:var(--muted);line-height:1.5}.local-emergency :is(button,a,select):focus-visible{outline:3px solid var(--focus);outline-offset:2px}.alert-subscriptions{display:grid;gap:1.5rem;padding:clamp(1rem,3vw,2rem);color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-panel);box-shadow:var(--shadow-soft)}.alert-subscriptions__heading{display:flex;justify-content:space-between;align-items:flex-start;gap:1.5rem}.alert-subscriptions__heading h1{margin:.2rem 0 .45rem;font-size:clamp(1.55rem,4vw,2.35rem);line-height:1.12}.alert-subscriptions__heading p{max-width:72ch;margin:0;color:var(--muted)}.alert-subscriptions__stage{flex:0 0 auto;padding:.4rem .65rem;color:var(--river);background:var(--mist);border-radius:999px;font-size:.78rem;font-weight:800}.alert-subscriptions__truth{padding:1rem;color:#573b0c;background:#fff5db;border:1px solid #e7ce8b;border-radius:var(--radius-control)}.alert-subscriptions__truth p{margin:.25rem 0 0}.alert-subscriptions__form{display:grid;grid-template-columns:1fr 1fr;gap:0 2rem}.alert-subscriptions__form fieldset{min-width:0;padding:1.25rem 0;border:0;border-bottom:1px solid var(--line)}.alert-subscriptions__form legend{margin-bottom:.65rem;font-size:1.05rem;font-weight:800}.alert-subscriptions__form fieldset>p{margin:.45rem 0;color:var(--muted);font-size:.84rem}.alert-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.alert-choice-grid label,.alert-consent{display:flex;align-items:flex-start;gap:.6rem;min-height:44px;padding:.65rem;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-control);font-size:.88rem}.alert-choice-grid input,.alert-consent input{flex:0 0 auto;width:1.2rem;height:1.2rem;margin-top:.1rem;accent-color:var(--river)}.alert-select-label{display:block;margin-bottom:.35rem;font-size:.82rem;font-weight:750}#alert-barangays{width:100%;min-height:9rem;padding:.5rem;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-control)}.alert-subscriptions__form fieldset:nth-child(4){grid-column:1/-1}.alert-subscriptions__actions{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:.75rem;padding-top:1.25rem}.alert-subscriptions__browser,.alert-subscriptions__manage{display:grid;grid-template-columns:minmax(12rem,.7fr) 1fr 1fr;gap:1rem;align-items:start;padding:1.1rem;background:var(--paper);border-radius:var(--radius-control)}.alert-subscriptions__browser h2{margin:.15rem 0 0;font-size:1.1rem}.alert-subscriptions__browser p,.alert-subscriptions__manage p{margin:0;color:var(--muted);font-size:.86rem}.alert-subscriptions__state{padding:.85rem 1rem;border:1px solid var(--line);border-radius:var(--radius-control)}.alert-subscriptions__state[data-state=success]{color:var(--normal-ink);background:#ecfdf5;border-color:#86efac}.alert-subscriptions__state[data-state=error]{color:var(--critical);background:#fef2f2;border-color:#fca5a5}.alert-subscriptions__manage{grid-template-columns:1fr auto;align-items:center}.alert-subscriptions__privacy{padding:.9rem 0;border-block:1px solid var(--line)}.alert-subscriptions__privacy summary{min-height:44px;font-weight:800;cursor:pointer}.alert-subscriptions__privacy p{max-width:80ch;margin:.5rem 0 0;color:var(--muted)}.alert-subscriptions :is(button,input,select,summary):focus-visible{outline:3px solid var(--focus);outline-offset:2px}.emergency-updates-heading,.emergency-directory__heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1.25rem}.emergency-updates-heading h2,.safety-guide__heading h2{margin:.2rem 0 .4rem;font-size:clamp(1.45rem,4vw,2.15rem);line-height:1.12}.emergency-updates-heading p,.safety-guide__heading p,.emergency-directory__heading p{max-width:70ch;margin:0;color:var(--muted);line-height:1.55}.emergency-updates-caution{margin:0;padding:.9rem 1rem;color:var(--ink);background:#fff7df;border-radius:var(--radius-control);line-height:1.5}.emergency-directory{display:grid;gap:1rem;padding-top:1.25rem;border-top:1px solid var(--line)}.emergency-directory__heading h3{margin:0 0 .3rem;font-size:1.2rem}.emergency-directory__heading strong{flex:0 0 auto;color:var(--ink);font-size:.88rem}.emergency-directory__controls{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;padding:1rem;background:var(--paper);border-radius:var(--radius-control)}.emergency-directory__controls label{display:grid;gap:.35rem;color:var(--ink);font-size:.8rem;font-weight:750}.emergency-directory__controls :is(input,select){width:100%;min-height:46px;padding:.65rem .7rem;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-control);font:inherit}.emergency-directory__search{grid-column:span 2}.emergency-directory__controls button{justify-self:start;align-self:end;min-height:44px}.emergency-directory__state{margin:0;color:var(--muted);font-size:.86rem}.emergency-update{gap:.55rem;padding:1.1rem 0}.emergency-update__heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.emergency-update__heading h4{margin:0;font-size:1.05rem}.emergency-update__badge{flex:0 0 auto;padding:.3rem .55rem;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:999px;font-size:.72rem;font-weight:800;text-transform:capitalize}.emergency-update__coverage{color:var(--ink)!important;font-weight:700}.safety-guide__heading{max-width:76ch}.safety-guide__phases{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-block:1px solid var(--line)}.safety-guide__phases section{padding:1.25rem}.safety-guide__phases section+section{border-left:1px solid var(--line)}.safety-guide__phases h3{margin:0 0 .7rem;font-size:1.05rem}.safety-guide__phases ul{display:grid;gap:.65rem;margin:0;padding-left:1.1rem;color:var(--muted);line-height:1.5}.safety-guide__topics{display:grid;gap:.5rem}.safety-guide__topics details{padding:.8rem 0;border-bottom:1px solid var(--line)}.safety-guide__topics summary{min-height:40px;color:var(--ink);font-weight:800;cursor:pointer}.safety-guide__topics p{max-width:76ch;margin:.45rem 0 0;color:var(--muted);line-height:1.6}.safety-guide__sources{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem 1rem;padding:1rem;background:var(--paper);border-radius:var(--radius-control)}.safety-guide__sources strong,.safety-guide__sources small{flex-basis:100%}.safety-guide__sources a{color:var(--river);font-weight:700;text-decoration:underline;text-underline-offset:3px}.safety-guide__sources small{color:var(--muted)}.emergency-updates-shell :is(button,a,input,select):focus-visible,.safety-guide :is(a,summary,input):focus-visible{outline:3px solid var(--focus);outline-offset:2px}.hotline-directory{display:grid;gap:1.5rem}.hotline-directory__intro{display:flex;align-items:flex-start;justify-content:space-between;gap:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--line)}.hotline-directory__intro h3,.hotline-directory__group h4{margin:0 0 .35rem;color:var(--ink);font-weight:760}.hotline-directory__intro p,.hotline-directory__state p{max-width:70ch;margin:0;color:var(--muted);line-height:1.55}.hotline-directory__intro>a{flex:0 0 auto;min-height:44px;display:inline-flex;align-items:center;color:var(--river);font-weight:700;text-decoration:underline;text-underline-offset:3px}.hotline-directory__controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;align-items:end;padding:1rem;background:var(--paper);border-radius:var(--radius-panel)}.hotline-directory__controls label{display:grid;gap:.35rem;color:var(--ink);font-size:.82rem;font-weight:700}.hotline-directory__controls :is(input,select){width:100%;min-height:46px;padding:.65rem .75rem;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-control);font:inherit;font-weight:500}.hotline-directory__controls :is(input,select):focus-visible,.hotline-directory :is(button,a):focus-visible{outline:3px solid var(--focus);outline-offset:2px}.hotline-directory__search{grid-column:1/-1}.hotline-directory__controls>button{justify-self:start;min-height:44px}.hotline-directory__state{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.hotline-directory__state strong{color:var(--ink);font-size:.88rem;white-space:nowrap}.hotline-directory__group{display:grid;gap:.35rem}.hotline-directory__list{border-top:1px solid var(--line)}.hotline-directory__list>p{margin:.85rem 0;color:var(--muted)}.hotline-directory-row{display:grid;gap:.65rem;padding:1.15rem 0;border-bottom:1px solid var(--line);color:var(--ink)}.hotline-directory-row__heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.hotline-directory-row__heading h4{margin:0;font-size:1.08rem}.hotline-category{flex:0 0 auto;padding:.25rem .55rem;color:#075985;background:#e0f2fe;border-radius:999px;font-size:.75rem;font-weight:750}.hotline-directory-row p,.hotline-directory-row small{margin:0;color:var(--muted);line-height:1.5}.hotline-directory-row__area{color:var(--ink)!important;font-weight:700}.hotline-directory-row__instructions{max-width:72ch}.hotline-number-list{display:grid;gap:.5rem}.hotline-number{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem;background:var(--paper);border-radius:var(--radius-control)}.hotline-number strong{color:var(--ink);font-size:1.18rem;font-variant-numeric:tabular-nums;letter-spacing:.01em}.hotline-number__actions{display:flex;gap:.45rem}.hotline-number__actions :is(a,button){min-height:44px;display:inline-flex;align-items:center;justify-content:center;padding:.55rem .85rem;border-radius:var(--radius-control);font:inherit;font-weight:750}.hotline-number__actions a{color:#fff;background:var(--river);text-decoration:none}.hotline-number__actions button{color:var(--river);background:var(--surface);border:1px solid var(--line-strong)}.hotline-directory-row>a{width:fit-content;min-height:40px;display:inline-flex;align-items:center;color:var(--river);font-weight:700;text-decoration:underline;text-underline-offset:3px}.content-check--standalone{align-self:end;min-height:46px;padding:.55rem .2rem}html.dark .content-toolbar :is(input,select),html.dark .content-form :is(input,select,textarea){color:var(--dark-copy);background:var(--dark-ground);border-color:#526577}html.dark .content-form{color:var(--dark-copy);background:var(--dark-surface);border-color:#344655}html.dark .content-area-targets{border-color:#526577}html.dark .content-area-targets legend,html.dark .content-form label,html.dark .content-form h2,html.dark .content-preview{color:var(--dark-copy)}html.dark .content-preview{background:var(--dark-surface);border-color:#344655}html.dark .public-live-content,html.dark .public-content-row{color:var(--dark-copy)}html.dark .emergency-updates-shell,html.dark .safety-guide,html.dark .local-emergency,html.dark .alert-subscriptions{color:var(--dark-copy);background:var(--dark-surface);border-color:#526577}html.dark .alert-subscriptions__stage{color:#bae6fd;background:#15384c}html.dark .alert-subscriptions__truth{color:#f5dfaa;background:#332a17;border-color:#68542a}html.dark .alert-choice-grid label,html.dark .alert-consent,html.dark .alert-subscriptions__browser,html.dark .alert-subscriptions__manage{background:var(--dark-ground);border-color:#526577}html.dark #alert-barangays{color:var(--dark-copy);background:var(--dark-surface);border-color:#526577}html.dark .alert-subscriptions :is(.alert-subscriptions__heading p,.alert-subscriptions__form fieldset>p,.alert-subscriptions__browser p,.alert-subscriptions__manage p,.alert-subscriptions__privacy p){color:var(--dark-muted)}html.dark .alert-subscriptions__state[data-state=success]{color:#bbf7d0;background:#123324;border-color:#28734d}html.dark .alert-subscriptions__state[data-state=error]{color:#fecaca;background:#3b171b;border-color:#8b3942}html.dark .pwa-install{background:var(--dark-ground);border-color:#526577}html.dark .pwa-install p{color:var(--dark-muted)}html.dark .local-emergency__selector,html.dark .local-emergency__support>section{background:var(--dark-ground)}html.dark .local-emergency__selector select{color:var(--dark-copy);background:var(--dark-surface);border-color:#526577}html.dark .local-emergency :is(.local-emergency__heading p,.local-emergency__selector p,.local-emergency__status span,.local-emergency__qualification,.local-emergency__empty,.local-emergency__rows p,.local-emergency__rows small,.local-emergency__support p,.local-emergency__support small){color:var(--dark-muted)}html.dark .local-emergency__rows a{color:#7dd3fc}html.dark .emergency-updates-heading p,html.dark .safety-guide__heading p,html.dark .emergency-directory__heading p,html.dark .emergency-directory__state,html.dark .safety-guide__phases ul,html.dark .safety-guide__topics p,html.dark .safety-guide__sources small{color:var(--dark-muted)}html.dark .emergency-updates-caution{color:var(--dark-copy);background:#392f18}html.dark .emergency-directory__controls,html.dark .emergency-update__badge,html.dark .safety-guide__sources{background:var(--dark-ground)}html.dark .emergency-directory__controls label,html.dark .emergency-directory__heading strong,html.dark .emergency-update__coverage,html.dark .safety-guide__topics summary{color:var(--dark-copy)!important}html.dark .emergency-directory__controls :is(input,select){color:var(--dark-copy);background:var(--dark-surface);border-color:#526577}html.dark .safety-guide__sources a{color:#7dd3fc}html.dark .public-live-heading button{color:#7dd3fc;border-color:#526577}html.dark .public-content-row a{color:#7dd3fc}html.dark .hotline-directory__intro h3,html.dark .hotline-directory__group h4,html.dark .hotline-directory__state strong,html.dark .hotline-directory__controls label,html.dark .hotline-directory-row,html.dark .hotline-directory-row__area,html.dark .hotline-number strong{color:var(--dark-copy)!important}html.dark .hotline-directory__intro p,html.dark .hotline-directory__state p,html.dark .hotline-directory-row p,html.dark .hotline-directory-row small,html.dark .hotline-directory__list>p{color:var(--dark-muted)}html.dark .hotline-directory__controls,html.dark .hotline-number{background:var(--dark-ground)}html.dark .hotline-directory__controls :is(input,select),html.dark .hotline-number__actions button{color:var(--dark-copy);background:var(--dark-surface);border-color:#526577}html.dark .hotline-category{color:#bae6fd;background:#0c4a6e}html.dark .hotline-number__actions button,html.dark .hotline-directory-row>a,html.dark .hotline-directory__intro>a{color:#7dd3fc}@media(max-width:760px){.content-form form{grid-template-columns:1fr}.content-wide,.content-form .admin-help,.content-area-targets{grid-column:auto}.content-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.content-toolbar label:first-child{grid-column:1/-1}.content-toolbar>button{min-height:44px}.hotline-directory__intro,.hotline-directory__state,.hotline-directory-row__heading{align-items:stretch;flex-direction:column}.hotline-directory__intro>a{align-self:flex-start}.hotline-directory__controls{grid-template-columns:1fr;padding:.85rem}.hotline-directory__search{grid-column:auto}.hotline-directory__state strong{white-space:normal}.emergency-updates-heading,.emergency-directory__heading,.emergency-update__heading{flex-direction:column;align-items:stretch}.emergency-directory__controls{grid-template-columns:1fr 1fr;padding:.85rem}.emergency-directory__search{grid-column:1/-1}.safety-guide__phases{grid-template-columns:1fr}.safety-guide__phases section+section{border-left:0;border-top:1px solid var(--line)}}@media(max-width:420px){.content-toolbar{grid-template-columns:1fr}.content-toolbar label:first-child{grid-column:auto}.content-area-targets>div{grid-template-columns:1fr}.hotline-number{align-items:stretch;flex-direction:column}.hotline-number__actions{display:grid;grid-template-columns:1fr 1fr}.emergency-directory__controls{grid-template-columns:1fr}.emergency-directory__search{grid-column:auto}}@media(max-width:800px){.local-emergency__heading,.local-emergency__status{flex-direction:column}.local-emergency__status span{text-align:left}.local-emergency__selector,.local-emergency__priority,.local-emergency__support{grid-template-columns:1fr}.local-emergency__section-heading{align-items:flex-start}}@media(max-width:800px){.alert-subscriptions__heading{flex-direction:column}.alert-subscriptions__form,.alert-subscriptions__browser,.alert-subscriptions__manage{grid-template-columns:1fr}.alert-subscriptions__form fieldset:nth-child(4),.alert-subscriptions__actions{grid-column:auto}}@media(max-width:800px){.pwa-install{grid-template-columns:1fr}.pwa-install details{grid-column:auto}}@media(max-width:420px){.local-emergency__section-heading{flex-direction:column}.local-emergency__section-heading .button{width:100%}}@media(max-width:420px){.alert-choice-grid{grid-template-columns:1fr}.alert-subscriptions__actions .button,.alert-subscriptions__manage .button{width:100%}}@media(prefers-reduced-motion:reduce){.content-form,.content-preview{scroll-behavior:auto;transition:none;animation:none}}@media(min-width:640px){.overview-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}.action-list,.municipality-list{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:1.5rem}.location-result{flex-wrap:wrap}}@media(max-width:760px){.weather-dashboard__header{align-items:stretch;flex-direction:column}.weather-dashboard__controls{display:grid;width:100%;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}.weather-dashboard__controls select,.weather-dashboard__controls button{width:100%;min-width:0}.weather-dashboard__controls .weather-map-link{grid-column:1 / -1}.weather-current{grid-template-columns:1fr}.weather-now{min-height:13rem}.weather-current__details{border-top:1px solid #365267;border-left:0}.weather-charts{gap:1rem}}@media(min-width:1100px){.desktop-nav{display:flex}.mobile-nav{display:none}.site-main{padding-bottom:3rem}.overview-lower-grid{grid-template-columns:minmax(0,1.15fr) minmax(19rem,.85fr)}footer{padding-bottom:2rem!important}}@media(max-width:1099px){body.bsafe-app{padding-bottom:calc(64px + env(safe-area-inset-bottom))}.site-header__inner{min-height:66px}.brand-lockup__wordmark span{display:none}.location-trigger{width:44px;padding:.55rem}.location-trigger span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.hotline-action{width:46px;padding:.55rem}.hotline-action span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.overview-lower-grid{gap:1rem}}@media(max-width:520px){.weather-dashboard__controls{grid-template-columns:minmax(0,1fr)}.weather-dashboard__controls select,.weather-dashboard__controls .weather-refresh,.weather-dashboard__controls .weather-map-link{grid-column:1 / -1}.site-header__inner{width:calc(100% - 1rem);gap:.4rem}.brand-lockup{gap:.45rem}.brand-lockup__mark{width:2.25rem;height:2.25rem}.brand-lockup__wordmark strong{font-size:1.02rem}.header-actions{gap:.25rem}.site-main{width:calc(100% - 1.25rem);padding-top:1rem}.weather-dashboard{gap:1.1rem}.weather-current__details{grid-template-columns:1fr 1fr;padding-inline:.6rem}.weather-current__details>div{padding:.8rem .45rem}.weather-now__temperature{font-size:4.2rem}.weather-day{flex-basis:7.6rem}.weather-hour-item{grid-auto-columns:8.5rem}.weather-table-scroll th,.weather-table-scroll td{padding:.65rem .6rem}.page-heading{align-items:start;flex-direction:column}.overview-heading>.button{width:100%}.status-workarea,.map-entry{min-height:16rem}.workarea-heading{flex-wrap:wrap}.icon-text-button{padding-inline:.55rem}.section-heading-row{align-items:start;flex-direction:column}.location-result{display:grid;grid-template-columns:1.5rem 1fr}.location-result h2{grid-column:2}.location-result button{grid-column:1 / -1}.prototype-notice{font-size:.82rem}.unavailable-workarea{grid-template-columns:1.5rem 1fr}.unavailable-workarea .status-chip{grid-column:2}.map-selection-toolbar{align-items:stretch;flex-direction:column}.map-selection-toolbar select{width:100%}.map-theme-controls{width:100%;margin-left:0}.map-theme-controls button{flex:1}.map-data-tools{padding:.75rem}.map-tools-heading{align-items:start}.map-layer-controls,.map-marker-filters{grid-template-columns:1fr}.map-marker-filters label,.map-marker-filters select,.map-marker-filters input{grid-column:1}.geographic-map-frame{min-height:420px}.geographic-map{height:420px;min-height:420px;touch-action:pan-x pan-y}.geographic-map-controls{top:.5rem;left:.5rem}.toast{right:.5rem;bottom:calc(72px + env(safe-area-inset-bottom))}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.bsafe-app :is(button,a,summary,[role=button]):active:not(:disabled){transform:none!important}.button:hover{transform:none!important}.nav-more[open]>.nav-more__menu,.mobile-more[open]>.mobile-more__menu{animation:menu-fade 80ms linear both}.location-dialog:not([hidden]) .location-dialog__panel{animation:menu-fade 80ms linear both}.report-entry{animation:menu-fade 80ms linear both}.toast.is-loading svg:first-of-type{animation:none}@keyframes menu-fade{0%{opacity:.85}to{opacity:1}}}.rainfall-dashboard{display:grid;gap:1.25rem;color:var(--ink)}.rainfall-heading{display:flex;align-items:end;justify-content:space-between;gap:1.5rem;padding:1.4rem 1.5rem;background:var(--navy);color:#e8eef4;border-radius:var(--radius-panel)}.rainfall-heading h1{margin:0 0 .35rem;font-size:clamp(1.65rem,3vw,2.35rem);line-height:1.13}.rainfall-heading p{max-width:72ch;margin:0;color:#cfdee9}.rainfall-heading .button{flex:none;color:#fff;border-color:#a9d7ef}.rainfall-heading .button:hover{background:#124b68}.rainfall-toolbar{display:flex;align-items:end;flex-wrap:wrap;gap:.7rem}.rainfall-toolbar label{align-self:center;font-weight:700}.rainfall-toolbar select,.rainfall-date-controls input{min-height:46px;min-width:12rem;padding:.55rem .75rem;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-control)}.rainfall-toolbar .button,.rainfall-date-controls .button,.rainfall-section>.button{min-height:46px}.rainfall-status{margin:0;padding:.85rem 1rem;color:var(--ink);background:var(--mist);border-radius:var(--radius-control)}html.dark .rainfall-status{background:#1a3446}.rainfall-section{min-width:0;padding:1.2rem 1.35rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-panel)}.rainfall-section-heading{margin-bottom:1rem}.rainfall-section-heading h2{margin:0;font-size:1.22rem}.rainfall-section-heading p{max-width:72ch;margin:.25rem 0 0;color:var(--muted)}.rainfall-accumulations{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 1.2rem}.rainfall-accumulation{display:grid;align-content:start;gap:.2rem;min-width:0;padding:.85rem 0;border-top:1px solid var(--line)}.rainfall-accumulation__period{color:var(--muted);font-size:.85rem;font-weight:700}.rainfall-accumulation__value{font-size:1.4rem;line-height:1.2;font-variant-numeric:tabular-nums}.rainfall-accumulation small,.rainfall-footnote{color:var(--muted);line-height:1.5;overflow-wrap:anywhere}.rainfall-footnote{margin:.75rem 0 0}.rainfall-chart-scroll,.rainfall-table-scroll{max-width:100%;overflow-x:auto}.rainfall-chart-scroll{padding:.4rem 0}.rainfall-chart-scroll svg{display:block;width:100%;height:190px}.rainfall-chart-axis{stroke:var(--line-strong)}.rainfall-chart-bar{fill:var(--river)}html.dark .rainfall-chart-bar{fill:#38bdf8}.rainfall-chart-label,.rainfall-chart-gap{fill:var(--muted);font-size:11px}.rainfall-section details{margin-top:.65rem}.rainfall-section summary{width:fit-content;min-height:44px;padding:.55rem 0;color:var(--river);font-weight:700;cursor:pointer}html.dark .rainfall-section summary{color:#7dd3fc}.rainfall-section table{width:100%;min-width:36rem;border-collapse:collapse;text-align:left;font-variant-numeric:tabular-nums}.rainfall-section :is(th,td){padding:.7rem .75rem;border-bottom:1px solid var(--line)}.rainfall-section thead{color:var(--muted)}.rainfall-date-controls{display:flex;align-items:end;flex-wrap:wrap;gap:.75rem}.rainfall-date-controls label{display:grid;gap:.25rem;color:var(--muted);font-size:.85rem;font-weight:700}.rainfall-source{padding:1rem 1.25rem;background:var(--mist);border-radius:var(--radius-panel)}html.dark .rainfall-source{background:#172b37}.rainfall-source p{max-width:78ch;margin:.35rem 0}.rainfall-source a{color:var(--river);text-decoration:underline;text-underline-offset:3px}html.dark .rainfall-source a{color:#7dd3fc}.rainfall-dashboard :is(select,input,button,summary,a):focus-visible{outline:3px solid var(--focus);outline-offset:2px}.pattern-timeline{display:grid;gap:.45rem;max-height:29rem;overflow:auto;padding:.4rem}.pattern-day{display:grid;grid-template-columns:6.8rem minmax(4rem,1fr) 7rem 5rem;align-items:center;gap:.65rem;font-size:.86rem;font-variant-numeric:tabular-nums}.pattern-day__track{height:.8rem;background:var(--mist);border-radius:999px;overflow:hidden}.pattern-day__track>span{display:block;height:100%;background:var(--river);border-radius:inherit}.pattern-day strong{color:var(--river)}#tab-flood-patterns .history-monitoring-controls{align-items:end}#tab-flood-patterns .history-monitoring-controls :is(input,select){min-width:0}#tab-flood-patterns :is(button,input,select):focus-visible{outline:3px solid var(--focus);outline-offset:2px}#tab-flood-impact .history-monitoring-controls{align-items:end}.impact-record{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1.25rem 0;border-bottom:1px solid var(--line)}.impact-record>div{min-width:0;flex:1;overflow-wrap:anywhere}.impact-record p{max-width:75ch}.impact-interpretation{padding:1.25rem 0;border-block:1px solid var(--line)}.impact-category-guide{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem 2rem;margin:1rem 0}.impact-category-guide dt,.impact-availability dt,.impact-quality dt{font-weight:700}.impact-category-guide dd{color:var(--muted);margin:.25rem 0 0;max-width:65ch}.impact-category{display:inline-block;margin-bottom:.5rem;padding:.25rem .6rem;border:1px solid var(--line-strong);border-radius:.4rem;font-size:.875rem;font-weight:700}.impact-category[data-category=confirmed]{color:var(--river);background:var(--mist)}html.dark .impact-category[data-category=confirmed]{color:#bae6fd;background:#12334b}.impact-availability>div{display:grid;grid-template-columns:minmax(12rem,1fr) 2fr;gap:1rem;padding:.8rem 0;border-bottom:1px solid var(--line)}.impact-availability dd{margin:0}.impact-availability dd span{display:block;color:var(--muted);margin-top:.2rem}.impact-explanation{margin-top:.75rem}.impact-explanation summary,.impact-method summary{cursor:pointer;font-weight:700;padding:.65rem 0;min-height:44px}.impact-quality{margin:.5rem 0}.impact-quality>div{margin-bottom:.6rem}.impact-quality dd{margin:.15rem 0 0;color:var(--muted);max-width:70ch}.impact-method{margin-top:1rem}.map-overlay__interpretation{margin-block:.8rem;padding-block:.8rem;border-block:1px solid var(--line)}.impact-record h3{margin:0 0 .35rem}.impact-record p{margin:.3rem 0}.impact-record>.button{flex:none}@media(max-width:640px){.impact-record{flex-direction:column}.impact-record>.button{width:100%}.impact-category-guide,.impact-availability>div{grid-template-columns:1fr}.impact-availability>div{gap:.25rem}}@media(max-width:620px){.pattern-day{grid-template-columns:5.8rem minmax(3rem,1fr) 5rem;gap:.35rem;font-size:.76rem}.pattern-day strong{grid-column:2 / 4}}@media(max-width:760px){.rainfall-heading{align-items:start;flex-direction:column}.rainfall-accumulations{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.rainfall-heading,.rainfall-section{padding:1rem}.rainfall-toolbar,.rainfall-date-controls{display:grid;grid-template-columns:1fr}.rainfall-toolbar select,.rainfall-date-controls input,.rainfall-date-controls .button,.rainfall-heading .button{width:100%;min-width:0}.rainfall-accumulations{grid-template-columns:1fr}}.community-report-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(17rem,.34fr);gap:1.5rem;align-items:start}.community-report-intro{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) minmax(18rem,.48fr);gap:2rem;padding:1.5rem;color:#eaf5fb;background:var(--navy);border-radius:var(--radius-panel)}.community-report-intro h1{margin:0 0 .45rem;color:#fff;font-size:clamp(1.65rem,3vw,2.35rem);line-height:1.12;letter-spacing:-.025em}.community-report-intro p{max-width:72ch;margin:0;color:#d4e4ee;line-height:1.6}.community-report-emergency{display:grid;grid-template-columns:1.5rem 1fr;gap:.7rem;align-content:start;padding:1rem;background:#153d54;border-radius:var(--radius-control)}.community-report-emergency svg{width:1.35rem;height:1.35rem;color:#facc15}.community-report-emergency p{font-size:.9rem}.community-report-form{min-width:0;padding:1.4rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-panel)}.community-report-form fieldset{min-width:0;margin:0;padding:0;border:0}.community-report-form legend{margin-bottom:1rem;color:var(--ink);font-size:1.18rem;font-weight:800}.community-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.community-field{display:grid;align-content:start;gap:.35rem;min-width:0}.community-field--wide{grid-column:1/-1}.community-field label,.community-acknowledgments label{color:var(--ink);font-size:.9rem;font-weight:700}.community-field .optional{margin-left:.3rem;color:var(--muted);font-size:.78rem;font-weight:500}.community-field :is(input,select,textarea){width:100%;min-height:46px;padding:.7rem .8rem;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-control)}.community-field textarea{min-height:8rem;resize:vertical;line-height:1.55}.community-field :is(input,select,textarea)[aria-invalid=true]{border-color:#b42318;box-shadow:0 0 0 2px #b4231824}.community-field :is(input,select,textarea):disabled{color:var(--muted);background:var(--mist);cursor:not-allowed}.community-report-form :is(input,select,textarea,button):focus-visible{outline:3px solid var(--focus);outline-offset:2px}.field-help,.community-error{margin:0;font-size:.8rem;line-height:1.45}.field-help{color:var(--muted)}.community-error{min-height:1.1em;color:#b42318;font-weight:650}html.dark .community-error{color:#fda4af}.report-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.community-acknowledgments{margin-top:1.5rem!important;padding-top:1.25rem!important;border-top:1px solid var(--line)!important}.community-acknowledgments>p{max-width:75ch;margin:0 0 1rem;color:var(--muted);line-height:1.6}.community-acknowledgments label{display:grid;grid-template-columns:1.15rem 1fr;gap:.65rem;align-items:start;margin-top:.7rem;font-weight:600;line-height:1.5}.community-acknowledgments input{width:1.1rem;height:1.1rem;margin-top:.15rem;accent-color:var(--river)}.community-report-status{margin:1.2rem 0 .8rem;padding:.85rem 1rem;color:var(--ink);background:var(--mist);border-radius:var(--radius-control);line-height:1.5}.community-report-status[data-kind=error]{color:#8a1c13;background:#fff1ef}.community-report-status[data-kind=success]{color:#11613a;background:#e9f8ef}html.dark .community-report-status[data-kind=error]{color:#fecaca;background:#451a1a}html.dark .community-report-status[data-kind=success]{color:#bbf7d0;background:#153c2a}.community-submit{width:100%;min-height:48px;justify-content:center}.community-submit[aria-busy=true] svg{animation:spin 1s linear infinite}.community-report-process{padding:1.3rem;color:var(--ink);background:var(--mist);border-radius:var(--radius-panel)}html.dark .community-report-process{background:#172b37}.community-report-process h2{margin:0 0 1rem;font-size:1.15rem}.community-report-process ol{display:grid;gap:0;margin:0;padding:0;list-style:none;counter-reset:report-step}.community-report-process li{display:grid;grid-template-columns:2rem 1fr;gap:.75rem;padding:.85rem 0;border-top:1px solid var(--line);counter-increment:report-step}.community-report-process li:before{content:counter(report-step);display:grid;place-items:center;width:1.75rem;height:1.75rem;color:#fff;background:var(--river);border-radius:50%;font-size:.78rem;font-weight:800}.community-report-process li strong,.community-report-process li span{grid-column:2}.community-report-process li span{color:var(--muted);font-size:.86rem;line-height:1.45}.community-report-process>p{margin:1rem 0 0;color:var(--muted);font-size:.84rem;line-height:1.5}.community-location-tools{margin:.25rem 0;padding:1rem 0;border-block:1px solid var(--line)}.community-location-actions{display:flex;flex-wrap:wrap;gap:.6rem}.community-location-actions .button{min-height:46px}.community-coordinate-status{margin:.15rem 0 0;padding:.75rem .85rem;color:var(--muted);background:var(--mist);border-radius:var(--radius-control);line-height:1.5}.community-coordinate-status[data-kind=success]{color:#11613a;background:#e9f8ef}.community-coordinate-status[data-kind=error]{color:#8a1c13;background:#fff1ef}html.dark .community-coordinate-status[data-kind=success]{color:#bbf7d0;background:#153c2a}html.dark .community-coordinate-status[data-kind=error]{color:#fecaca;background:#451a1a}.community-location-map-panel{overflow:hidden;background:var(--mist);border-radius:var(--radius-panel)}.community-location-map{width:100%;height:clamp(18rem,42vw,25rem);min-height:18rem}.community-location-map-panel>p{margin:0;padding:.75rem 1rem;color:var(--muted);font-size:.82rem}.community-photo-field>input[type=file]{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.community-photo-picker{display:flex;align-items:center;justify-content:center;gap:.55rem;min-height:48px;padding:.75rem 1rem;color:var(--river)!important;background:var(--mist);border:1px dashed var(--line-strong);border-radius:var(--radius-control);cursor:pointer}.community-photo-picker:hover{background:var(--sky-wash)}.community-photo-picker svg{width:1.2rem;height:1.2rem}.community-photo-field:has(input[type=file]:focus-visible) .community-photo-picker{outline:3px solid var(--focus);outline-offset:2px}.community-photo-count{margin:0;color:var(--muted);font-size:.82rem;font-variant-numeric:tabular-nums}.community-photo-previews{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.community-photo-preview{display:grid;gap:.45rem;min-width:0;margin:0;padding-bottom:.75rem;border-bottom:1px solid var(--line)}.community-photo-preview img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius-control)}.community-photo-preview figcaption{overflow:hidden;color:var(--muted);font-size:.78rem;text-overflow:ellipsis;white-space:nowrap}.community-photo-preview .button{min-height:42px}.community-upload-progress{width:100%;height:.55rem;margin-bottom:.8rem;accent-color:var(--river)}@media(max-width:820px){.community-report-layout{grid-template-columns:1fr}.community-report-intro{grid-template-columns:1fr;gap:1rem}}@media(max-width:560px){.community-report-intro,.community-report-form,.community-report-process{padding:1rem}.community-form-grid{grid-template-columns:1fr}.community-field--wide{grid-column:auto}.community-location-actions{display:grid;grid-template-columns:1fr}.community-photo-previews{grid-template-columns:repeat(2,minmax(0,1fr))}}
