:root{font-synthesis:none;text-rendering:optimizeLegibility;-webkit-text-size-adjust:100%;text-size-adjust:100%}body{margin:0;min-height:100vh;min-height:100dvh}:root{--font-sans: "Inter", "Manrope", "Segoe UI", sans-serif;--font-display: "Inter", "Manrope", sans-serif;--text: #eef1f8;--text-muted: rgba(238, 241, 248, .88);--text-dim: rgba(238, 241, 248, .78);--content-max-width: 1460px;--content-gutter: 2.4rem;--radius: 18px;--card-radius: 16px;--radius-control: 14px;--radius-md: 12px;--radius-sm: 10px;--radius-xs: 6px;--radius-pill: 999px;--card-padding: 24px;--border: 1px solid rgba(211, 224, 246, .2);--card-border: 1px solid rgba(206, 222, 248, .3);--shadow: 0 18px 44px rgba(3, 8, 25, .28);--card-shadow: 0 22px 54px rgba(2, 8, 24, .34), 0 4px 14px rgba(7, 20, 46, .2), inset 0 1px 0 rgba(229, 240, 255, .1);--card-shadow-hover: 0 24px 58px rgba(3, 9, 24, .38), 0 10px 26px rgba(80, 119, 150, .1), inset 0 1px 0 rgba(243, 248, 255, .12);--card-backdrop-blur: 10px;--shadow-bevel: inset 0 1px 0 rgba(229, 240, 255, .08);--shadow-bevel-strong: inset 0 1px 0 rgba(229, 240, 255, .14);--shadow-raise-sm: 0 6px 16px rgba(3, 9, 24, .2);--shadow-raise: 0 10px 22px rgba(3, 9, 24, .26);--shadow-raise-lg: 0 18px 44px rgba(3, 9, 24, .32);--subcard-border: 1px solid rgba(196, 213, 241, .15);--subcard-shadow: inset 0 1px 0 rgba(235, 243, 255, .06);--accent: #6fb7f2;--accent-strong: #4a9fe0;--accent-warm: #f3b765;--accent-green: #7fd99a;--accent-rose: #f1a0a8;--atmo-lavender: rgba(168, 154, 214, .12);--atmo-sky: rgba(111, 172, 214, .14);--atmo-haze: rgba(215, 226, 241, .08);--glacier: #6fb7f2;--glacier-mid: #9cc9f2;--glacier-light: #bcdcfa;--glacier-muted: #aecdf2;--amber: #f3b765;--amber-soft: #f5cd92;--green-good: #7fd99a;--green-good-light: #a9e2bd;--bg-tile: rgba(255, 255, 255, .16);--bg-tile-border: rgba(255, 255, 255, .22);--bg-large-card: rgba(255, 255, 255, .11);--bg-well: rgba(0, 0, 0, .3);--bg-panel-outer: rgba(255, 255, 255, .04);--hero-unit-size: 28px;--fs-micro: 9px;--fs-caption: 10px;--fs-label: 11px;--fs-label-lg: 12px;--fs-body: 13px;--fs-body-lg: 14px;--fs-subtitle: 16px;--fs-heading: 18px;--fs-heading-lg: 20px;--fs-display-xs: 24px;--fs-display-sm: 26px;--fs-display: 30px;--fs-display-lg: 34px;--section-title-size: clamp(18px, 1.2vw, 20px);--control-height-sm: 36px;--control-height-md: 44px;--control-height-lg: 48px;--header-control-height: var(--control-height-lg);--pill-padding: 4px 10px;--pill-padding-sm: 2px 8px;--card-enter-duration: .52s;--card-enter-stagger: 70ms;--motion-instant: 80ms;--motion-fast: .16s;--motion-medium: .24s;--motion-slow: .42s;--motion-loop: 1.6s;--motion-background-fade: 1.1s;--motion-subtle: var(--motion-fast);--motion-subtle-slow: var(--motion-fast);--motion-reveal: var(--motion-slow);--section-title-lg-size: var(--section-title-size);--motion-spinner: .8s;--motion-weather-float: 7s;--motion-weather-float-sun: 6s;--motion-weather-pulse: 3.5s;--motion-weather-cloud: 9s;--ease-standard: cubic-bezier(.2, .7, .2, 1);--ease-emphasis: cubic-bezier(.22, 1, .36, 1);--press-scale: .985;--press-scale-firm: .975;--focus-ring: 0 0 0 4px rgba(111, 183, 242, .4);--focus-outline: rgba(111, 183, 242, .8);--hover-border-color: rgba(111, 183, 242, .44);--surface-1: rgba(10, 18, 36, .52);--surface-2: rgba(11, 20, 38, .62);--surface-3: rgba(8, 17, 36, .74);--surface-strong: rgba(6, 13, 28, .88);--border-base: 196, 213, 241;--border-default: 1px solid rgba(196, 213, 241, .18);--border-soft: 1px solid rgba(196, 213, 241, .12);--border-strong: 1px solid rgba(220, 232, 255, .34);--subcard-padding: 10px 12px;--subcard-padding-lg: 12px 14px;--active-pill-bg: linear-gradient(145deg, #f9fcff, #d9eaff);--active-pill-color: #021127;--active-pill-shadow: 0 6px 14px rgba(4, 12, 28, .26), inset 0 1px 0 rgba(255, 255, 255, .52);--lift-1: -1px;--lift-2: -2px;--track-tight: .04em;--track-default: .08em;--track-loose: .12em;--severity-critical-fg: #fecaca;--severity-critical-border: rgba(225, 70, 70, .52);--severity-critical-bg: rgba(127, 29, 29, .38);--severity-high-fg: #fed7aa;--severity-high-border: rgba(234, 88, 12, .48);--severity-high-bg: rgba(120, 53, 18, .36);--severity-warn-fg: #fde68a;--severity-warn-border: rgba(217, 119, 6, .46);--severity-warn-bg: rgba(113, 82, 17, .36);--severity-ok-fg: #bbf7d0;--severity-ok-border: rgba(34, 197, 94, .4);--severity-ok-bg: rgba(5, 46, 22, .34);--severity-info-fg: #dbeafe;--severity-info-border: rgba(147, 197, 253, .42);--severity-info-bg: rgba(30, 64, 175, .22)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:rgba(183,208,255,.35) transparent}html::-webkit-scrollbar{width:10px}html::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#6fb7f2b3,#9cc9f2b3);border-radius:var(--radius-pill)}html::-webkit-scrollbar-track{background:transparent}::selection{background:#6fb7f24d}body{min-height:100vh;color:var(--text);font-family:var(--font-sans);background:radial-gradient(1100px 700px at 14% -10%,rgba(61,77,138,.7) 0%,rgba(26,37,80,.46) 34%,transparent 70%),radial-gradient(900px 600px at 86% -14%,rgba(64,86,118,.62) 0%,rgba(20,32,58,.44) 35%,transparent 68%),linear-gradient(180deg,#0a1020,#070c18 58%,#050812);-webkit-font-smoothing:antialiased;overscroll-behavior-y:contain;overflow-x:hidden}button{border:none;background:none;color:inherit;font:inherit;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}button:focus-visible,input:focus-visible,a:focus-visible,[role=button]:focus-visible{outline:2px solid #f8fafc;outline-offset:2px;box-shadow:var(--focus-ring)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;z-index:100;top:12px;left:12px;display:inline-block;padding:10px 14px;border-radius:var(--radius-sm);text-decoration:none;font-size:var(--fs-body-lg);color:#030712;background:#f8fafc;transform:translateY(-150%);transition:transform var(--motion-fast) var(--ease-standard)}.skip-link:focus-visible{transform:translateY(0)}.glass{backdrop-filter:blur(var(--card-backdrop-blur));-webkit-backdrop-filter:blur(var(--card-backdrop-blur))}#main-content:focus-visible{outline:none;box-shadow:inset 4px 0 #f8fafceb}.app{position:relative;min-height:100vh;min-height:100dvh;overflow:hidden;isolation:isolate}.app:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-2;background:inherit;filter:saturate(.98) brightness(.94);transform:scale(1.015);transition:background var(--motion-background-fade) var(--ease-standard)}.app:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background:radial-gradient(circle at 14% 16%,rgba(188,166,255,.12),transparent 42%),radial-gradient(circle at 84% 12%,rgba(123,199,255,.12),transparent 44%),radial-gradient(circle at 74% 82%,rgba(243,183,101,.07),transparent 42%),linear-gradient(180deg,#deecff0a,#111a320a 42%,#050a173d);opacity:.84}.app-inner{position:relative;z-index:1;width:min(var(--content-max-width),calc(100% - var(--content-gutter)));margin:0 auto;padding:30px 0 44px}.app-inner:before{content:"";position:absolute;top:-28px;right:-18px;bottom:-16px;left:-18px;z-index:-1;border-radius:calc(var(--radius) + 14px);pointer-events:none;background:radial-gradient(ellipse at 50% 2%,rgba(188,214,255,.16),rgba(123,156,224,.08) 38%,transparent 72%),linear-gradient(180deg,#abc6ff0f,#abc6ff00);filter:blur(2px)}@keyframes card-slide-up{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes refreshing-chip-pulse{0%,to{box-shadow:0 0 0 1px #6ee7ff3d,0 6px 12px #060c1c3d}50%{box-shadow:0 0 0 1px #6ee7ff6b,0 8px 14px #060c1c4d}}@keyframes hero-landing{0%{opacity:0;transform:translateY(18px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes label-reveal{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes header-settle{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes controls-reveal{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@keyframes settings-reveal{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.current-location-btn:focus-visible,.unit-btn:focus-visible,.toggle-pill-btn:focus-visible,.settings-toggle:focus-visible,.mobile-settings-toggle:focus-visible,.header-secondary-action:focus-visible,.error-retry:focus-visible,.app-status-retry:focus-visible{border-color:#6fb7f2a8;box-shadow:0 0 0 3px #6fb7f233,var(--shadow-raise-sm),var(--shadow-bevel-strong)}.forecast-subtitle,.chart-subtitle,.storm-subtitle,.rain-history-heading,.storm-module-header{color:var(--text-dim);font-size:var(--fs-label-lg);letter-spacing:var(--track-loose);text-transform:uppercase;font-weight:700;margin:0}.storm-level{font-family:var(--font-display);letter-spacing:0}.eyebrow-pill{display:inline-flex;align-items:center;padding:5px 10px;border-radius:var(--radius-pill);border:var(--border-default);background:var(--surface-1);color:#e0ecffe6;font-size:10px;font-weight:700;letter-spacing:var(--track-loose);text-transform:uppercase}.severity-badge{display:inline-flex;align-items:center;width:fit-content;min-height:22px;padding:var(--pill-padding);border-radius:var(--radius-pill);border:1px solid var(--severity-info-border);background:var(--severity-info-bg);color:var(--severity-info-fg);font-size:var(--fs-caption);font-weight:700;letter-spacing:var(--track-default);text-transform:uppercase}.severity-badge--critical,.severity-badge--high{border-color:var(--severity-critical-border);background:var(--severity-critical-bg);color:var(--severity-critical-fg)}.severity-badge--moderate{border-color:var(--severity-high-border);background:var(--severity-high-bg);color:var(--severity-high-fg)}.severity-badge--low{border-color:var(--severity-warn-border);background:var(--severity-warn-bg);color:var(--severity-warn-fg)}.severity-badge--minimal{border-color:var(--severity-ok-border);background:var(--severity-ok-bg);color:var(--severity-ok-fg)}.severity-badge--partial,.severity-badge--missing{border-color:var(--severity-info-border);background:var(--severity-info-bg);color:var(--severity-info-fg)}.card-empty{display:grid;justify-items:start;gap:6px;padding:var(--subcard-padding-lg);border-radius:var(--radius-md);border:1px dashed rgba(var(--border-base),.3);background:var(--surface-1)}.card-empty__icon{display:inline-flex;align-items:center;justify-content:center;margin-bottom:2px;color:var(--text-dim);opacity:.9}.card-empty__title{margin:0;color:#ecf4ff;font-size:var(--fs-subtitle);font-weight:700}.card-empty__copy{margin:0;color:var(--text-muted);font-size:var(--fs-body);line-height:1.5}@media(max-width:1200px){:root{--content-gutter: 2rem}.app-inner{padding:24px 0 38px}}@media(max-width:860px){.app-inner{padding:20px 0 30px}}@media(max-width:760px){:root{--content-gutter: 1.2rem}.app-inner{width:min(var(--content-max-width),calc(100% - var(--content-gutter)));padding-top:18px}.city-search{order:-1;width:100%;flex-basis:100%}}@media(max-width:640px){:root{--content-gutter: 1rem}.app-inner{padding-top:14px;padding-bottom:24px}}@media(max-width:560px){:root{--card-backdrop-blur: 10px;--hero-unit-size: 22px;--card-padding: 20px}}@media(max-width:420px){:root{--content-gutter: .78rem;--card-padding: 18px}.app-inner{padding-top:12px;padding-bottom:20px}}@media(prefers-contrast:more){:root{--text-muted: #eef5ff;--text-dim: #dce8ff;--border: 1px solid rgba(236, 243, 255, .6)}.city-search-dropdown{background:#040b19e6}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important;scroll-behavior:auto!important}}@media(forced-colors:active){.glass,button{border:1px solid ButtonBorder}button:focus-visible,input:focus-visible,a:focus-visible,[role=button]:focus-visible{outline:3px solid Highlight;box-shadow:none}[class*=severity-badge],[class*=forecast-signal-chip],[class*=alerts-priority],.eyebrow-pill,.storm-risk-pip{border:1px solid ButtonBorder}.storm-risk-pip[style*="rgba(255,255,255,0.1)"]{background:ButtonFace}.comfort-gradient{background:ButtonFace;border:1px solid ButtonBorder}.comfort-marker{background:Highlight;outline:2px solid ButtonBorder}.skip-link{forced-color-adjust:none;background:Canvas;color:CanvasText;border:2px solid ButtonBorder;outline:none}.skip-link:focus-visible{outline:3px solid Highlight;outline-offset:2px}}@media(hover:none){:root{--card-enter-duration: .34s;--card-enter-stagger: 45ms;--card-shadow: 0 12px 28px rgba(2, 8, 24, .28), inset 0 1px 0 rgba(229, 240, 255, .08);--card-backdrop-blur: 6px}}@supports (padding-top: env(safe-area-inset-top)){.app-inner{padding-top:calc(30px + env(safe-area-inset-top));padding-bottom:max(44px,calc(44px + env(safe-area-inset-bottom)));padding-inline:env(safe-area-inset-left) env(safe-area-inset-right)}@media(max-width:1200px){.app-inner{padding-top:calc(24px + env(safe-area-inset-top))}}@media(max-width:860px){.app-inner{padding-top:calc(20px + env(safe-area-inset-top));padding-bottom:max(30px,calc(30px + env(safe-area-inset-bottom)))}}@media(max-width:760px){.app-inner{padding-top:calc(18px + env(safe-area-inset-top))}}@media(max-width:640px){.app-inner{padding-top:calc(14px + env(safe-area-inset-top));padding-bottom:max(24px,calc(24px + env(safe-area-inset-bottom)))}}@media(max-width:420px){.app-inner{padding-top:calc(12px + env(safe-area-inset-top));padding-bottom:max(20px,calc(20px + env(safe-area-inset-bottom)))}}}.atmosphere-particles{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden;z-index:0}.atmosphere-particle{position:absolute;top:-8vh;display:block;will-change:transform,opacity}.atmosphere-particle--rain{width:1px;height:calc(14px + var(--size-boost, .5) * 16px);background:linear-gradient(180deg,#bae6fd00,#bae6fd6b,#bae6fd1f);animation-name:atmosphere-rain-fall;animation-iteration-count:infinite;animation-timing-function:linear;opacity:calc(.55 + var(--size-boost, .5) * .4);transform:translateY(-12vh) translate(0)}.atmosphere-particle--snow{width:calc(3px + var(--size-boost, .5) * 4px);height:calc(3px + var(--size-boost, .5) * 4px);border-radius:50%;background:#f1f8ffc7;box-shadow:0 0 6px #f1f8ff52;animation-name:atmosphere-snow-drift;animation-iteration-count:infinite;animation-timing-function:ease-in;opacity:calc(.55 + var(--size-boost, .5) * .4);transform:translateY(-12vh) translate(0)}@keyframes atmosphere-rain-fall{0%{transform:translateY(-12vh) translate(0);opacity:0}10%{opacity:.85}90%{opacity:.85}to{transform:translateY(118vh) translate(-2vw);opacity:0}}@keyframes atmosphere-snow-drift{0%{transform:translateY(-12vh) translate(0);opacity:0}10%{opacity:.7}50%{transform:translateY(50vh) translate(2vw)}90%{opacity:.7}to{transform:translateY(118vh) translate(-2vw);opacity:0}}@media(prefers-reduced-motion:reduce){.atmosphere-particles{display:none}}@media(prefers-reduced-transparency:reduce){.atmosphere-particles{display:none}}.weather-icon{display:block}.weather-icon--animated{transform-origin:center;will-change:transform;animation:weather-icon-float var(--motion-weather-float) ease-in-out infinite}.weather-icon--animated.weather-icon--sun{animation:weather-icon-float var(--motion-weather-float-sun) ease-in-out infinite,weather-icon-pulse var(--motion-weather-pulse) ease-in-out infinite}.weather-icon--animated.weather-icon--cloud{animation:weather-icon-cloud-drift var(--motion-weather-cloud) ease-in-out infinite}@keyframes weather-icon-float{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-6px) scale(1.02)}}@keyframes weather-icon-pulse{0%,to{transform:scale(1);opacity:.98}50%{transform:scale(1.05);opacity:1}}@keyframes weather-icon-cloud-drift{0%,to{transform:translate(0)}50%{transform:translate(4px)}}@media(prefers-reduced-motion:reduce){.weather-icon--animated{animation:none;will-change:auto}}@media(prefers-reduced-data:reduce){.weather-icon--animated{animation:none;will-change:auto}}.app--loading,.app--error{display:grid;place-items:center}.loading-card{display:flex;align-items:center;justify-content:center;min-height:180px}.bento-supplemental-loading{grid-column:1 / -1;min-height:216px;content-visibility:auto;contain-intrinsic-size:216px}.panel-boundary-fallback{flex-direction:column;gap:12px;padding:24px}.panel-boundary-retry{margin-top:4px;min-height:44px;padding:0 16px;border-radius:var(--radius-pill);border:var(--border-strong);background:var(--surface-3);color:#e3efff;font-size:12px;font-weight:700;letter-spacing:var(--track-tight);transition:background var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard),transform var(--motion-fast) var(--ease-standard)}.panel-boundary-retry:hover{border-color:#aee3ff99;background:var(--surface-strong);transform:translateY(var(--lift-1))}.panel-boundary-retry:focus-visible{border-color:var(--focus-outline);box-shadow:0 0 0 3px #40c4ff33}.panel-boundary-retry:active{transform:scale(var(--press-scale))}@media(prefers-reduced-motion:reduce){.panel-boundary-retry:hover,.panel-boundary-retry:active{transform:none}}.loading-card-title{position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;border-radius:var(--radius-pill);border:var(--border-default);background:var(--surface-2);box-shadow:inset 0 1px #e8f2ff1f,0 8px 18px #03081633;color:var(--text-muted);font-size:13px;font-weight:700;letter-spacing:var(--track-default);text-transform:uppercase}.loading-card-title:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(100deg,transparent 22%,rgba(191,214,255,.22) 48%,transparent 76%);transform:translate(-120%);animation:loading-sheen 1.5s ease-in-out infinite}.loading-dashboard{width:min(92vw,760px);padding:18px;border-radius:var(--radius);border:var(--card-border);background:linear-gradient(165deg,#fff3,#ffffff1f);backdrop-filter:blur(var(--card-backdrop-blur));-webkit-backdrop-filter:blur(var(--card-backdrop-blur));box-shadow:var(--card-shadow)}.loading-dashboard-header{display:flex;align-items:center;gap:13px;margin-bottom:16px}.loading-dashboard-brand{margin:0 0 3px;color:#f8fbff;font-family:var(--font-display);font-size:26px;line-height:1;font-weight:680}.loading-dashboard-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:12px}.loader-weather-icon{flex:0 0 auto;animation:weather-icon-breathe 1.5s ease-in-out infinite}.loading-skeleton{position:relative;overflow:hidden;display:flex;flex-direction:column;gap:14px;padding:18px;min-height:128px;border-radius:var(--radius-sm);border:var(--subcard-border);background:linear-gradient(160deg,#ffffff24,#ffffff14),var(--surface-1)}.loading-skeleton:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(100deg,transparent 20%,rgba(219,236,255,.12) 48%,transparent 76%);transform:translate(-120%);animation:loading-sheen 1.8s ease-in-out infinite;pointer-events:none}.loading-skeleton--hero{min-height:240px;justify-content:space-between}.loading-skeleton--wide{grid-column:1 / -1;min-height:116px}.loading-skeleton-block{border-radius:var(--radius-xs);background:#d0e2ff1f}.loading-skeleton-block--meta{width:40%;height:12px}.loading-skeleton-block--temp{width:70%;height:56px;border-radius:var(--radius-control);background:linear-gradient(90deg,#d0e2ff29,#bce2ff38 50%,#d0e2ff29)}.loading-skeleton-block--row{width:90%;height:16px}.loading-skeleton-block--gauge{width:86px;height:86px;align-self:flex-start;border-radius:50%;background:radial-gradient(circle at 32% 32%,#e8f6ff2e,#7bc7ff0f 64%),#d0e2ff1a}.loading-skeleton-bars{display:flex;align-items:flex-end;gap:8px;height:56px}.loading-skeleton-bar{flex:1 1 0;height:100%;border-radius:6px 6px 2px 2px;background:linear-gradient(180deg,#bce2ff0f,#7bc7ff29);animation:skeleton-bar-pulse 1.6s ease-in-out infinite;transform-origin:bottom}@keyframes skeleton-bar-pulse{0%,to{transform:scaleY(.5);opacity:.6}50%{transform:scaleY(1);opacity:1}}@keyframes weather-icon-breathe{0%,to{transform:scale(.96)}50%{transform:scale(1.04)}}@keyframes loading-sheen{0%{transform:translate(-120%)}to{transform:translate(120%)}}.loader-text{margin:0;color:var(--text-muted);font-size:13px;letter-spacing:var(--track-default);text-transform:uppercase;font-weight:700}.error-card{max-width:420px;padding:34px;text-align:center;border-radius:var(--radius);border:var(--border);background:linear-gradient(165deg,#fff3,#ffffff1f);box-shadow:var(--shadow)}.error-card-icon{margin:0 auto 10px;color:#d9ecff}.error-card h1{margin-bottom:8px;font-family:var(--font-display);font-size:30px;line-height:1.08;letter-spacing:0}.error-card p{color:var(--text-muted);font-size:14px}.error-card-actions{margin-top:18px;display:inline-flex;flex-wrap:wrap;justify-content:center;gap:10px}.error-retry{min-height:44px;min-width:124px;padding:0 18px;border-radius:var(--radius-pill);background:var(--active-pill-bg);color:var(--active-pill-color);font-size:14px;font-weight:700;transition:transform var(--motion-fast) var(--ease-standard),box-shadow var(--motion-medium) var(--ease-standard)}.error-card>.error-retry{margin-top:18px}.error-retry--subtle{background:transparent;color:#e5f0ffeb;border:1px solid rgba(196,220,255,.34)}.error-retry--subtle:hover{background:#ffffff29;border-color:#aee3ff80}.error-retry:hover{transform:translateY(var(--lift-1));box-shadow:0 10px 20px #040c1e57}.error-retry:active{transform:scale(var(--press-scale))}@media(max-width:760px){.loading-dashboard{width:min(94vw,420px);padding:16px}.loading-dashboard-grid{grid-template-columns:1fr}.loading-skeleton{padding:16px}.loading-skeleton--hero{min-height:190px}.loading-skeleton--wide{grid-column:auto}}@media(max-width:420px){.loading-card-title{padding:7px 10px;font-size:11px}.loading-dashboard{width:min(94vw,340px);padding:14px}.loading-dashboard-brand{font-size:23px}.loading-skeleton{min-height:108px;padding:14px}.loading-skeleton--hero{min-height:170px}.loading-skeleton-block--temp,.loading-skeleton-bars{height:44px}}@media(prefers-reduced-motion:reduce){.loading-card-title:after,.loading-skeleton:after{display:none}.loading-skeleton-bar{animation:none;transform:scaleY(.7);opacity:.7}.error-retry:hover{transform:none}}.city-search{position:relative;display:flex;flex-direction:column;gap:4px;flex:1 1 520px;width:min(100%,680px);min-width:240px}.city-search-input-wrap{position:relative;display:flex;align-items:center;min-height:var(--header-control-height);padding:0 14px;border-radius:var(--radius-sm);border:1px solid rgba(180,207,241,.38);background:linear-gradient(180deg,#0f1d34d1,#0a1528c7),#081126ad;box-shadow:inset 0 1px #e1f0ff1f,0 6px 18px #040a1833;transition:border-color var(--motion-subtle) var(--ease-standard),background var(--motion-subtle) var(--ease-standard),box-shadow var(--motion-subtle) var(--ease-standard),transform var(--motion-subtle) var(--ease-standard)}.city-search-input-wrap:hover{border-color:#c7def780;box-shadow:inset 0 1px #e1f0ff29,0 10px 24px #040a1847}.city-search-input-wrap:focus-within{border-color:#6fb7f2c7;background:linear-gradient(180deg,#12233fe6,#0b182dd1),#09142cc7;box-shadow:inset 0 1px #e5f4ff33,0 0 0 3px #6fb7f224,0 10px 26px #040a1842}.city-search-icon{flex-shrink:0;color:#c6e2fff2}.city-search-input{flex:1;width:100%;padding:10px;border:none;outline:none;background:none;color:#f3f8ff;font-size:15px;font-weight:600}.city-search-input::placeholder{color:var(--text-dim)}.city-search-clear{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;color:var(--text-dim);transition:color var(--motion-subtle) var(--ease-standard),background var(--motion-subtle) var(--ease-standard)}.city-search-clear:hover{color:#f8fbff;background:#b0ccff2e}.city-search-clear:focus-visible{color:#f8fbff;background:#b0ccff38;box-shadow:0 0 0 2px #74d4ff57}.city-search-clear:active{transform:scale(.96)}.city-search-shortcut-badge{margin-left:auto;padding:4px 8px;border-radius:var(--radius-pill);border:1px solid rgba(176,206,246,.28);background:#0b1426a3;color:#d2e4fce6;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}@media(hover:none)and (pointer:coarse){.city-search-shortcut-badge{display:none}}.city-search-dropdown{position:absolute;inset:calc(100% + 10px) 0 auto;z-index:50;--card-backdrop-blur: 8px;max-height:min(320px,calc(100vh - 180px));overflow:hidden auto;overscroll-behavior:contain;list-style:none;border-radius:var(--radius-sm);border:1px solid rgba(193,217,255,.25);background:linear-gradient(180deg,#080f1ef5,#060b18f5);box-shadow:0 22px 44px #02061385;transform-origin:top center;animation:dropdown-reveal var(--motion-subtle) var(--ease-standard)}.city-search-options{list-style:none;margin:0;padding:0}.city-search-group{position:sticky;top:0;z-index:1;padding:10px 14px 8px;background:linear-gradient(180deg,#080f1efa,#080f1eeb);border-bottom:1px solid rgba(173,198,242,.12)}.city-search-group-label{display:inline-flex;align-items:center;min-height:20px;padding:0 8px;border-radius:var(--radius-pill);border:1px solid rgba(185,211,250,.22);background:#0b152bb8;color:#d6e6fce6;font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.city-search-state{display:flex;align-items:center;gap:8px;padding:12px 15px;color:var(--text-muted);font-size:14px;font-weight:600}.city-search-state--error,.city-search-state-message--error{color:#fda4af}.city-search-empty-hint{padding:12px 15px 14px;color:var(--text-muted);font-size:13px;line-height:1.45}.city-search-spinner{animation:spin var(--motion-spinner) linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes dropdown-reveal{0%{opacity:0;transform:translateY(-4px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}.city-search-result{border:none;display:flex;align-items:center;gap:10px;padding:11px 14px;background:transparent;border-left:1px solid transparent;border-bottom:1px solid rgba(173,198,242,.12);color:inherit;text-align:left;font:inherit;cursor:pointer;transition:background var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard),transform var(--motion-fast) var(--ease-standard),color var(--motion-fast) var(--ease-standard)}.city-search-result:last-child{border-bottom:none}.city-search-result:hover,.city-search-result:focus-visible,.city-search-result.is-active{background:#6fb7f224;border-left-color:#f3b765b8;transform:translate(2px)}.city-search-result.is-active{box-shadow:inset 0 0 0 1px #6ee7ff94}.city-search-result-icon{flex-shrink:0;color:#cce1ff;transition:color var(--motion-fast) var(--ease-standard),transform var(--motion-fast) var(--ease-standard)}.city-search-result:hover .city-search-result-icon,.city-search-result.is-active .city-search-result-icon{color:#e5f3ff;transform:translate(1px)}.city-search-result.is-active .city-search-result-name{color:#f7fbff}.city-search-result-text{min-width:0}.city-search-result-name{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:#f2f7ff;font-size:15px;font-weight:700}.city-search-result-meta{margin-top:1px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:var(--text-dim);font-size:13px;font-weight:600}@media(max-width:760px){.city-search{flex:1 1 100%;width:100%;min-width:0}}@media(max-width:420px){.city-search-input-wrap{min-height:44px;padding:0 11px}.city-search-input{font-size:14px;padding:8px}.city-search-clear{width:34px;height:34px}.city-search-dropdown{inset:calc(100% + 8px) 0 auto;max-height:min(280px,calc(100dvh - 150px))}.city-search-group{padding:9px 12px 7px}.city-search-result{padding:10px 12px;gap:9px}.city-search-result-name{font-size:14px}.city-search-result-meta,.city-search-state,.city-search-empty-hint{font-size:12px}}@media(pointer:coarse){.city-search-input{font-size:16px}.city-search-clear{width:44px;height:44px}.city-search-result{padding:13px 14px;min-height:48px}.city-search-dropdown{max-height:min(320px,calc(100dvh - 160px))}}@media(pointer:coarse)and (max-width:420px){.city-search-result{padding:10px 12px}.city-search-dropdown{max-height:min(280px,calc(100dvh - 140px))}}@media(prefers-reduced-motion:reduce){.city-search-dropdown{animation:none}.city-search-result:hover,.city-search-result.is-active,.city-search-result:hover .city-search-result-icon,.city-search-result.is-active .city-search-result-icon,.city-search-clear:active{transform:none}}.mobile-settings-toggle{display:none}.app-header{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:14px 28px;margin-bottom:28px;padding:14px 18px;border-radius:var(--radius);border:var(--card-border);background:linear-gradient(180deg,#121e36c7,#081020b8),linear-gradient(130deg,rgba(111,183,242,.06),rgba(243,183,101,.035) 58%,transparent 84%),#060e1f94;box-shadow:0 18px 42px #030a194d,0 6px 16px #111d3b29,inset 0 1px #e4f0ff1a;animation:header-settle var(--motion-slow) var(--ease-emphasis) both}.brand-wrap{display:grid;grid-template-columns:auto auto;grid-template-areas:"mark brand" "mark tag";align-items:center;column-gap:12px;row-gap:2px;animation:controls-reveal var(--motion-reveal) var(--ease-standard) both;animation-delay:80ms}.brand{grid-area:brand;margin:0;font-family:var(--font-display);font-size:31px;font-weight:680;line-height:1;letter-spacing:0;color:#f8fbff}.brand-mark{grid-area:mark;width:29px;height:29px;opacity:.92}.tagline{grid-area:tag;color:#cddaefe0;font-size:10px;font-weight:700;line-height:1.1;letter-spacing:.13em;text-transform:uppercase}.app-header-actions{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:12px;animation:controls-reveal var(--motion-reveal) var(--ease-standard) both;animation-delay:.13s}.app-header-primary,.app-header-secondary{display:flex;align-items:center;gap:10px}.app-header-primary{flex:1 1 auto;min-width:0;align-items:stretch;flex-direction:column;gap:8px}.app-header-primary-row{min-width:0;display:flex;align-items:center;gap:10px}.app-header-secondary{flex:0 0 auto;align-items:flex-end}.saved-cities-strip{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.saved-city-chip-wrap{display:inline-flex;align-items:center;gap:3px;padding:2px 3px;border-radius:var(--radius-pill);border:1px solid rgba(181,210,252,.26);background:#08112480}.saved-city-chip-wrap.is-startup{border-color:#f3b76557;background:linear-gradient(180deg,#1f1e188f,#0f121f80),#0811248a}.saved-city-chip{position:relative;min-height:32px;padding:0 10px;max-width:188px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-radius:var(--radius-pill);border:1px solid transparent;color:#e0edffeb;font-size:11px;font-weight:700;letter-spacing:.04em;transition:background var(--motion-fast) var(--ease-standard),color var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard)}.saved-city-chip:before{content:"";position:absolute;top:-6px;right:-2px;bottom:-6px;left:-2px}.saved-city-chip.is-active,.saved-city-chip[aria-pressed=true]{color:#061026;background:linear-gradient(145deg,#f8fbff,#dbe9ff)}.saved-city-chip.is-startup:not(.is-active){border-color:#f3b76542}.saved-city-startup-badge,.saved-city-startup{min-height:24px;padding:0 8px;border-radius:var(--radius-pill);font-size:10px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;white-space:nowrap}.saved-city-startup-badge{display:inline-flex;align-items:center;color:#ffe1a8;border:1px solid rgba(243,183,101,.3);background:#3d2c0b57}.saved-city-startup{position:relative;color:#e0edffcc;border:1px solid rgba(181,210,252,.18);background:#07102357;transition:color var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard),background var(--motion-fast) var(--ease-standard)}.saved-city-startup:before{content:"";position:absolute;top:-10px;right:-4px;bottom:-10px;left:-4px}.saved-city-startup:hover{color:#f7fbff;border-color:#f3b7655c;background:#392b1157}.saved-city-startup:focus-visible{color:#f7fbff;border-color:#f3b7656b;background:#392b1166;box-shadow:0 0 0 2px #f3b7652e}.saved-city-move{position:relative;width:20px;height:24px;border-radius:var(--radius-pill);color:#cee2ffc7;font-size:14px;line-height:1;transition:color var(--motion-fast) var(--ease-standard),background var(--motion-fast) var(--ease-standard)}.saved-city-move:before{content:"";position:absolute;top:-10px;right:-2px;bottom:-10px;left:-2px}.saved-city-move:hover{color:#f2f8ff;background:#497cd64d}.saved-city-move:focus-visible{color:#f2f8ff;background:#497cd657;box-shadow:0 0 0 2px #93c5fd57}.saved-city-move[aria-disabled=true]{color:#cee2ff47;cursor:default}.saved-city-move[aria-disabled=true]:hover{background:transparent}.saved-city-remove{position:relative;width:24px;height:24px;border-radius:50%;color:#edc9c9e6;font-size:14px;line-height:1;transition:color var(--motion-fast) var(--ease-standard),background var(--motion-fast) var(--ease-standard)}.saved-city-remove:before{content:"";position:absolute;top:-10px;right:-3px;bottom:-10px;left:-3px}.saved-city-remove:hover{color:#fca5a5;background:#7f1d1d4d}.saved-city-remove:focus-visible{color:#fecaca;background:#7f1d1d57;box-shadow:0 0 0 2px #f8717157}.saved-city-undo{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:4px 6px 4px 12px;border-radius:var(--radius-pill);border:1px solid rgba(181,210,252,.26);background:#08112499;box-shadow:inset 0 1px #e4f0ff14;animation:settings-reveal var(--motion-medium) var(--ease-emphasis) both}.saved-city-undo-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-muted);font-size:12px;font-weight:600}.saved-city-undo-text strong{color:#f7fbff;font-weight:700}.saved-city-undo-action{flex-shrink:0;min-height:28px;padding:0 12px;border-radius:var(--radius-pill);color:var(--active-pill-color);background:var(--active-pill-bg);box-shadow:var(--active-pill-shadow);font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;transition:transform var(--motion-fast) var(--ease-standard),box-shadow var(--motion-fast) var(--ease-standard)}.saved-city-undo-action:hover{transform:translateY(var(--lift-1))}.saved-city-undo-action:active{transform:scale(var(--press-scale))}.saved-city-undo-dismiss{position:relative;flex-shrink:0;width:28px;height:28px;border-radius:50%;color:#d6e6fcdb;font-size:16px;line-height:1;transition:color var(--motion-fast) var(--ease-standard),background var(--motion-fast) var(--ease-standard)}.saved-city-undo-dismiss:before{content:"";position:absolute;top:-8px;right:-8px;bottom:-8px;left:-8px}.saved-city-undo-dismiss:hover{color:#f7fbff;background:#a0bef029}.sync-account-shell{width:100%;max-width:620px;display:grid;gap:8px}.sync-account-toggle{width:100%;min-height:42px;padding:9px 12px;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;border-radius:var(--radius-sm);border:1px solid rgba(185,211,250,.24);background:#0710237a;box-shadow:inset 0 1px #e4f0ff14;text-align:left;transition:border-color var(--motion-fast) var(--ease-standard),background var(--motion-fast) var(--ease-standard),transform var(--motion-fast) var(--ease-standard)}.sync-account-toggle:hover{border-color:#a6e3ff6b;background:#09142a9e;transform:translateY(-1px)}.sync-account-toggle-copy{min-width:0;display:grid;gap:3px}.sync-account-toggle-hint{display:inline-flex;align-items:center;min-height:22px;padding:0 8px;border-radius:var(--radius-pill);border:1px solid rgba(178,209,252,.28);background:#0812279e;color:#d2e3fce6;font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.sync-account-toggle-icon{color:#d6e6fcdb;transition:transform var(--motion-fast) var(--ease-standard)}.sync-account-toggle.is-expanded .sync-account-toggle-icon{transform:rotate(180deg)}.sync-account-panel{display:grid;gap:6px;width:100%;padding:10px 11px;border-radius:var(--radius-sm);border:1px solid rgba(185,211,250,.24);background:#0710238f;box-shadow:inset 0 1px #e4f0ff14}.sync-account-title{margin:0;display:inline-flex;align-items:center;gap:6px;color:#d4e3fceb;font-size:10px;font-weight:700;letter-spacing:.11em;text-transform:uppercase}.sync-account-status{margin:0;color:#e3efff;font-size:12px;font-weight:600}.sync-account-note{margin:0;color:#cdddf7e0;font-size:11px;line-height:1.4}.sync-account-meta{margin:0;color:#b8d0f5e0;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.sync-account-actions,.sync-account-manual{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.sync-account-connect{display:grid;gap:7px}.sync-account-btn{min-height:36px;padding:0 10px;border-radius:var(--radius-pill);border:1px solid rgba(186,214,252,.28);background:#08112694;color:#e3efff;font-size:11px;font-weight:700;letter-spacing:.03em;transition:border-color var(--motion-fast) var(--ease-standard),background var(--motion-fast) var(--ease-standard),transform var(--motion-fast) var(--ease-standard)}.sync-account-btn:hover{border-color:#a6e3ff80;background:#0a1630b8;transform:translateY(-1px)}.sync-account-btn:disabled,.sync-account-input:disabled{opacity:.62;cursor:not-allowed}.sync-account-btn:disabled:hover{border-color:#bad6fc47;background:#08112694;transform:none}.sync-account-btn--subtle{color:#d4e2f8eb;background:#08112570}.sync-account-input{flex:1 1 220px;min-height:36px;min-width:0;padding:0 10px;border-radius:var(--radius-pill);border:1px solid rgba(180,209,249,.28);background:#060e1fa3;color:#eef6ff;font-size:12px;font-weight:600}.sync-account-input::placeholder{color:#b5cbeec7}.sync-account-input:focus-visible{border-color:#82e4ffa8;box-shadow:0 0 0 3px #40c4ff33}.sync-account-key{margin:0;color:#b1cdf4e6;font-size:10px;font-weight:600;letter-spacing:.04em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sync-account-error{margin:0;color:#fecaca;font-size:11px;line-height:1.35}.header-control-stack{display:flex;flex-direction:column;gap:4px}.header-control-label{margin:0;padding-inline-start:4px;color:#cdddfbe6;font-size:10px;font-weight:700;letter-spacing:.13em;line-height:1;text-transform:uppercase}.unit-toggle,.toggle-pill,.current-location-btn,.settings-toggle,.header-secondary-action{background:#0811268f;border:1px solid rgba(198,218,255,.24);box-shadow:inset 0 1px #e2eeff14}.unit-toggle{display:flex;gap:4px;padding:4px 5px;border-radius:14px}.unit-btn,.toggle-pill-btn,.current-location-btn,.header-secondary-action{min-height:var(--header-control-height);min-width:44px;border-radius:11px;font-size:12px;letter-spacing:.03em;font-weight:700;color:var(--text-muted);transition:background var(--motion-fast) var(--ease-standard),color var(--motion-fast) var(--ease-standard),transform var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard),box-shadow var(--motion-medium) var(--ease-standard);display:inline-flex;align-items:center;justify-content:center}.current-location-btn{min-width:122px;padding:0 18px;border-radius:14px;letter-spacing:.05em;text-transform:uppercase}.header-secondary-action{min-width:122px;padding:0 14px;border-radius:14px;letter-spacing:.06em;text-transform:uppercase;font-size:11px}.header-secondary-action--danger{min-width:auto;min-height:36px;padding:0 4px;border-color:transparent;background:transparent;box-shadow:none;color:#fcc3c3e0;letter-spacing:.03em;text-transform:none;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.unit-btn{width:44px;height:var(--header-control-height)}.unit-btn.is-active,.toggle-pill-btn.is-active,.unit-btn[aria-pressed=true],.toggle-pill-btn[aria-pressed=true]{color:#021127;background:linear-gradient(145deg,#f9fcff,#d9eaff);box-shadow:0 6px 14px #040c1c42,inset 0 1px #ffffff85}.toggle-pill{display:flex;align-items:center;gap:4px;padding:4px 5px;border-radius:14px}.toggle-pill-btn{min-width:58px;padding:0 14px;border:1px solid transparent;text-transform:uppercase;letter-spacing:.08em}.current-location-btn:hover,.unit-btn:hover,.toggle-pill-btn:hover,.settings-toggle:hover,.header-secondary-action:hover{color:#f8fbff;transform:translateY(-1px);border-color:#aee3ff70;box-shadow:0 8px 18px #040c1c42,inset 0 1px #e5f1ff24}.header-secondary-action--danger:hover{color:#fecaca;background:transparent;border-color:transparent;box-shadow:none}.current-location-btn:active,.unit-btn:active,.toggle-pill-btn:active,.settings-toggle:active,.header-secondary-action:active{transform:scale(var(--press-scale))}.header-secondary-action--danger:active{transform:translateY(0)}.current-location-btn:disabled{opacity:.52;cursor:not-allowed}.current-location-btn:disabled:hover,.current-location-btn:disabled:focus-visible{transform:none;border-color:#c6daff3d;box-shadow:inset 0 1px #e2eeff14}.header-secondary-action--danger:focus-visible{border-color:#f8717185;box-shadow:0 0 0 3px #f8717129}@media(max-width:980px){.app-header{grid-template-columns:1fr;gap:14px;padding:14px 16px}.app-header-actions{width:100%}.app-header-primary{flex:1 1 100%;gap:8px}}@media(max-width:760px){.app-header{padding:12px;margin-bottom:18px}.app-header-actions{flex-wrap:wrap;width:100%;gap:8px;justify-content:flex-start}.app-header-primary{width:100%;gap:8px}.app-header-primary-row{width:100%;flex-wrap:wrap}.app-header-secondary{display:none}.app-header-secondary.is-mobile-open{display:flex;flex-wrap:wrap;align-items:stretch;width:100%;gap:8px;animation:settings-reveal var(--motion-medium) var(--ease-emphasis) both}.mobile-settings-toggle{display:inline-flex;align-items:center;gap:6px;min-height:44px;min-width:44px;padding:0 14px;border-radius:14px;border:1px solid rgba(198,218,255,.24);background:#0811268f;box-shadow:inset 0 1px #e2eeff14;color:var(--text-muted);font-size:12px;font-weight:700;letter-spacing:.04em;transition:background var(--motion-fast) var(--ease-standard),color var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard),box-shadow var(--motion-fast) var(--ease-standard)}.mobile-settings-toggle.is-open{color:var(--active-pill-color);background:var(--active-pill-bg);border-color:transparent;box-shadow:var(--active-pill-shadow)}.mobile-settings-toggle:hover{color:#f8fbff;border-color:#aee3ff70}.mobile-settings-toggle.is-open:hover{color:var(--active-pill-color)}.saved-city-chip{min-height:44px;padding:0 12px}.saved-city-remove{position:relative;width:28px;height:28px;font-size:16px}.saved-city-remove:before{content:"";position:absolute;top:-8px;right:-3px;bottom:-8px;left:-3px}.saved-city-startup{min-height:44px;padding:0 10px}.saved-city-undo{width:100%;min-height:48px;padding:4px 8px 4px 14px}.saved-city-undo-text{flex:1 1 auto}.saved-city-undo-action{min-height:44px;padding:0 16px}.settings-toggle{display:none}.app-header-secondary .toggle-pill,.app-header-secondary .unit-toggle{width:100%;justify-content:space-between}.app-header-secondary .header-control-stack{width:100%}.app-header-secondary .header-control-label{padding-inline-start:2px}.app-header-secondary .header-secondary-action{width:100%;justify-content:flex-start}.app-header-secondary .toggle-pill-btn,.app-header-secondary .unit-btn{flex:1 1 0}}@media(max-width:560px){.app-header-actions{gap:8px}.current-location-btn,.toggle-pill-btn,.mobile-settings-toggle,.settings-toggle,.unit-btn,.header-secondary-action{min-height:44px}}@media(max-width:420px){.app-header{padding:10px;gap:10px 12px;margin-bottom:12px}.brand{font-size:28px}.tagline{letter-spacing:.13em;font-size:10px}.app-header-primary{gap:6px}.current-location-btn{flex:1 1 auto;min-width:0;padding:0 12px}.mobile-settings-toggle{padding:0 12px;min-width:44px}.app-header-secondary{gap:6px}.saved-cities-strip{gap:5px}.saved-city-chip{min-height:28px;padding:0 8px;font-size:10px;max-width:min(48vw,150px)}.saved-city-chip:before{top:-8px;right:-2px;bottom:-8px;left:-2px}.saved-city-startup-badge,.saved-city-startup{min-height:22px;padding:0 7px;font-size:10px}.saved-city-startup:before{top:-11px;right:-4px;bottom:-11px;left:-4px}.saved-city-remove{width:24px;height:24px;font-size:12px}.saved-city-remove:before{top:-10px;right:-3px;bottom:-10px;left:-3px}.sync-account-panel{padding:9px 10px}.sync-account-toggle{grid-template-columns:minmax(0,1fr) auto}.sync-account-toggle-hint{display:none}.sync-account-status,.sync-account-input{font-size:11px}.sync-account-btn{min-height:36px;font-size:10px}}@media(hover:none){.current-location-btn:hover,.unit-btn:hover,.toggle-pill-btn:hover,.settings-toggle:hover,.header-secondary-action:hover{transform:none}}@media(prefers-contrast:more){.app-header{background:#040b19e6}}@media(pointer:coarse){.sync-account-input{font-size:16px}}@media(pointer:coarse){.saved-city-startup-badge,.saved-city-startup,.sync-account-toggle-hint,.tagline{font-size:10px}}.status-stack{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin:0 0 12px;width:100%;max-width:min(100%,1040px)}.status-stack--runtime{margin-bottom:10px}.runtime-status-tray{width:100%;display:flex;align-items:center;flex-wrap:wrap;gap:8px}.location-notice{margin:0;width:auto;display:inline-flex;align-items:center;gap:8px;padding:6px 12px;min-height:30px;border-radius:var(--radius-pill);border:var(--border-default);background:var(--surface-1);color:var(--text-muted);font-size:11px;font-weight:600;letter-spacing:.02em}.location-notice-label{display:inline-flex;align-items:center;color:var(--text-dim);font-size:10px;font-weight:700;letter-spacing:var(--track-loose);text-transform:uppercase}.location-notice-text{min-width:0}.location-setup-prompt{width:min(100%,760px);display:grid;gap:8px;padding:10px 12px;border-radius:var(--radius-sm);border:var(--border-strong);background:var(--surface-3);box-shadow:inset 0 1px #e5f1ff1f,0 8px 18px #030a182e}.permission-onboarding{width:min(100%,760px);display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"kicker actions" "title actions" "copy actions";align-items:center;gap:4px 16px;padding:10px 12px;border-radius:var(--radius-sm);border:var(--border-strong);background:linear-gradient(165deg,#ffffff29,#ffffff1a);box-shadow:inset 0 1px #e6f2ff1f,0 8px 18px #030a1833}.permission-onboarding-kicker{grid-area:kicker;margin:0;color:#cee1fce6;font-size:10px;font-weight:700;letter-spacing:var(--track-default);text-transform:uppercase}.permission-onboarding-title{grid-area:title;margin:0;color:#edf5ff;font-size:15px;font-weight:650;letter-spacing:0;line-height:1.2}.permission-onboarding-copy{grid-area:copy;margin:0;color:#d8e6fceb;font-size:12px;line-height:1.4}.permission-onboarding-actions{grid-area:actions;display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.location-setup-title{margin:0;color:#e0efff;font-size:13px;font-weight:600;line-height:1.45}.location-setup-actions{display:flex;gap:8px;flex-wrap:wrap}.location-setup-btn{min-height:38px;padding:0 14px;border-radius:var(--radius-pill);border:var(--border-strong);background:var(--surface-2);color:#e3efff;font-size:12px;font-weight:700;letter-spacing:.02em;transition:background var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard),color var(--motion-fast) var(--ease-standard),transform var(--motion-fast) var(--ease-standard)}.location-setup-btn--primary{background:var(--active-pill-bg);color:var(--active-pill-color)}.location-setup-btn--ghost{border-color:#bad4fc29;background:transparent;color:#d8e6fcdb;font-weight:600}.location-setup-btn:hover{border-color:#aee3ff7a;transform:translateY(var(--lift-1))}.location-setup-btn--primary:hover{background:linear-gradient(145deg,#fff,#dcedff)}.location-setup-btn--ghost:hover{background:#ffffff1f;color:#f0f6ff}.location-setup-btn:disabled,.app-status-retry:disabled,.app-status-action:disabled{opacity:.6;cursor:not-allowed;transform:none}.app-status{width:auto;margin:0;display:inline-flex;gap:8px;align-items:center;padding:6px 10px;min-height:32px;border-radius:var(--radius-pill);border:1px solid;background:var(--surface-3);font-size:11px;font-weight:700;letter-spacing:.02em;box-shadow:inset 0 1px #e5f1ff1f,0 6px 14px #030a1829}.app-status-message{flex:1 1 auto;min-width:0}.app-status:before{content:"";width:7px;height:7px;flex-shrink:0;border-radius:50%}.app-status--loading{border-color:#bedcff59;color:#d6e9ff}.app-status--loading:before{background:linear-gradient(180deg,#cae8ff,#80dbff);box-shadow:0 0 0 3px #71c8ff24}.app-status--error{border-color:#f8717180;color:#fecaca}.app-status--error:before{background:linear-gradient(180deg,#fecaca,#f87171);box-shadow:0 0 0 3px #f8717124}.app-status--update{border-color:#7dd3fc70;color:#dff5ff}.app-status--update:before{background:linear-gradient(180deg,#dff5ff,#7dd3fc);box-shadow:0 0 0 3px #7dd3fc24}.app-status--ready{border-color:#86efac6b;color:#dcfce7}.app-status--ready:before{background:linear-gradient(180deg,#dcfce7,#86efac);box-shadow:0 0 0 3px #86efac21}.app-status--install{border-color:#c4b5fd70;color:#f0eaff}.app-status--install:before{background:linear-gradient(180deg,#f0eaff,#c4b5fd);box-shadow:0 0 0 3px #c4b5fd24}.app-status-actions{display:inline-flex;align-items:center;gap:6px;margin-left:auto}.app-status-action{border:var(--border-strong);background:var(--surface-1);color:#e3efff;border-radius:var(--radius-pill);padding:5px 10px;min-height:30px;font-size:11px;font-weight:700;white-space:nowrap;transition:background var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard),transform var(--motion-fast) var(--ease-standard)}@media(pointer:coarse){.app-status-action{min-height:44px;padding:8px 14px}}.app-status-action--primary{border-color:#dbf4ffb3;background:var(--active-pill-bg);color:var(--active-pill-color)}.app-status-action:hover{border-color:#aee3ff8f;transform:translateY(var(--lift-1))}.app-status-action--primary:hover{background:linear-gradient(145deg,#fff,#dcedff)}.app-status-retry{margin-left:auto;border:1px solid rgba(248,228,228,.55);background:#fef2f229;color:#fee2e2;border-radius:var(--radius-pill);padding:5px 10px;min-height:30px;font-size:11px;font-weight:700;white-space:nowrap;transition:background var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard),transform var(--motion-fast) var(--ease-standard)}@media(pointer:coarse){.app-status-retry{min-height:44px;padding:8px 14px}}.app-status-retry:hover{background:#fef2f23d;border-color:#fee2e2bd}.app-status-retry:active{transform:scale(var(--press-scale))}@media(max-width:760px){.status-stack{width:100%;align-items:stretch}.runtime-status-tray{align-items:stretch}.location-notice,.app-status,.location-setup-prompt,.permission-onboarding{width:100%}.permission-onboarding-actions,.location-setup-actions{display:grid;grid-template-columns:1fr}.permission-onboarding{grid-template-columns:1fr;grid-template-areas:"kicker" "title" "copy" "actions";gap:8px;padding:12px 14px}.permission-onboarding-actions .location-setup-btn,.location-setup-actions .location-setup-btn{width:100%;justify-content:center;min-height:44px}.app-status{flex-wrap:wrap;justify-content:space-between;row-gap:8px}.app-status-actions{width:calc(100% - 17px);margin-left:17px}.app-status-action,.app-status-retry{min-height:36px;padding:8px 14px}}@media(max-width:420px){.status-stack{gap:6px;margin-bottom:12px}.location-notice,.app-status{min-height:36px;padding:8px 11px;font-size:11px}.location-setup-title{font-size:12px}.permission-onboarding-title{font-size:16px}.permission-onboarding-copy{font-size:12px}.app-status-retry,.app-status-action{min-height:36px;padding:8px 12px;font-size:11px}}@media(prefers-reduced-motion:reduce){.app-status-retry:hover,.app-status-action:hover{transform:none}}@media(pointer:coarse){.location-setup-btn{min-height:44px;padding:8px 14px}.location-notice-label{font-size:10px}}.hero-card{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;gap:16px}.hero-sky{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none}.hero-sky-breathe{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(120% 120% at 75% 10%,rgba(243,183,101,.2),transparent 55%);animation:hero-breathe 13s ease-in-out infinite}.hero-sky-glow{position:absolute;top:6px;right:14px;width:124px;height:124px;border-radius:50%;background:radial-gradient(circle,rgba(244,189,111,.52),transparent 65%);animation:hero-glow-pulse 6.5s ease-in-out infinite}.hero-sky-orb{position:absolute;top:34px;right:54px;width:44px;height:44px;border-radius:50%;background:#f4bd6f;box-shadow:0 0 18px #f4bd6f80}.hero-sky-orb--moon{background:radial-gradient(circle at 38% 38%,#d4dff0,#9aaecc);box-shadow:0 0 14px #9bb9e64d}.hero-sky-cloud{position:absolute;filter:blur(3px);will-change:transform}.hero-sky-cloud span{position:absolute;background:#ffffffe6;border-radius:50%}.hero-sky-cloud--1{top:30px;opacity:.15;animation:hero-cloud-drift 58s linear infinite;animation-delay:-12s}.hero-sky-cloud--2{top:90px;opacity:.1;animation:hero-cloud-drift 84s linear infinite;animation-delay:-42s}@keyframes hero-breathe{0%,to{opacity:.6}50%{opacity:1}}@keyframes hero-glow-pulse{0%,to{opacity:.5;transform:scale(1)}50%{opacity:.9;transform:scale(1.18)}}@keyframes hero-cloud-drift{0%{transform:translate(-180px)}to{transform:translate(900px)}}@media(prefers-reduced-motion:reduce){.hero-sky-breathe,.hero-sky-glow,.hero-sky-cloud--1,.hero-sky-cloud--2{animation:none}}.hero-meta,.hero-main,.hero-bottom,.hero-stats-note{position:relative;z-index:1}.hero-meta{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.hero-location-block{display:flex;flex-direction:column;gap:6px;min-width:0}.hero-location{display:inline-flex;align-items:center;gap:7px;min-width:0;color:var(--text-muted);font-size:16px;font-weight:600}.hero-location svg{flex-shrink:0}.hero-location span{min-width:0;overflow-wrap:anywhere}.hero-date{color:var(--text-dim);font-size:13px;letter-spacing:.06em;text-transform:uppercase}.hero-high-low{display:inline-flex;align-items:stretch;gap:14px;padding:10px 14px;border-radius:var(--radius-sm);border:1px solid rgba(111,183,242,.3);background:#6fb7f21a;box-shadow:inset 0 1px #6fb7f214}.hero-high-low-item{display:flex;flex-direction:column;gap:4px}.hero-high-low-label{color:var(--text-dim);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.hero-high-low-value{font-family:var(--font-display);color:#eff6ff;font-size:20px;font-weight:650;letter-spacing:0;font-variant-numeric:tabular-nums}.hero-high-low-value.is-missing{color:var(--text-dim);font-weight:600}.hero-main{display:flex;align-items:flex-start;margin:2px 0}.hero-temp-block{width:100%}.hero-temp-row{display:flex;align-items:flex-end;justify-content:space-between;gap:18px}.hero-temp{font-family:var(--font-sans);font-size:84px;font-weight:200;line-height:.82;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.hero-temp.is-missing{font-size:clamp(48px,6vw,72px);font-weight:600;color:var(--text-dim);letter-spacing:0}.hero-temp-unit{margin-left:6px;font-family:var(--font-display);color:#dce9ffeb;font-size:var(--hero-unit-size);font-weight:600}.hero-condition{margin-top:8px;font-size:22px;font-weight:650;letter-spacing:0}.hero-feels{margin-top:5px;color:var(--text-muted);font-size:15px;font-weight:600}.hero-insight{margin-top:14px;max-width:620px;padding:12px 14px;border-radius:var(--radius-sm);background:#0c162aad;border:1px solid rgba(198,215,242,.18);color:#e3ecfff2;font-size:14px;line-height:1.5}.hero-chips{display:flex;flex-wrap:wrap;gap:7px;list-style:none;margin:0;padding:0}.hero-chip{display:inline-flex;align-items:center;gap:5px;padding:5px 11px;border-radius:var(--radius-pill);border:1px solid rgba(255,255,255,.22);background:#ffffff21;color:#eef1f8;font-size:12px;font-weight:400;line-height:1}.hero-chip-icon{color:var(--glacier-light);flex-shrink:0}.hero-uv-panel{display:flex;flex-direction:column;gap:6px;margin-top:10px;max-width:340px}.hero-uv-head{display:flex;align-items:center;gap:6px;font-size:12.5px;line-height:1}.hero-uv-icon{color:#f3c98a;flex-shrink:0}.hero-uv-level{font-weight:600;color:#f5f2ebf2}.hero-uv-peak{margin-left:auto;color:#f5f2eb9e;font-variant-numeric:tabular-nums}.hero-uv-track{position:relative;height:6px;border-radius:var(--radius-pill, 999px);background:linear-gradient(90deg,#22c55e,#a3e635,#eab308,#f97316 60%,#ef4444 78%,#a855f7);opacity:.85}.hero-uv-marker{position:absolute;top:50%;width:11px;height:11px;border-radius:50%;background:#fff;border:2px solid rgba(11,22,38,.85);transform:translate(-50%,-50%);box-shadow:0 0 0 1px #ffffff4d}.hero-uv-line{margin:0;font-size:12px;line-height:1.35;color:#f5f2ebb8}.hero-trust-pill{display:inline-flex;align-items:center;gap:6px;margin-top:10px;padding:5px 11px;border-radius:var(--radius-pill);border:1px solid rgba(111,183,242,.45);background:#6fb7f22e;color:#cfe6fb;font-size:11.5px;font-weight:400}.hero-trust-dot{flex-shrink:0;width:6px;height:6px;border-radius:50%;background:var(--glacier)}.hero-trust-pill--saved .hero-trust-dot{background:#9ab6e0}.hero-trust-pill--stale .hero-trust-dot{background:#f3c98a}.hero-guidance{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.hero-guidance-item{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr);gap:9px;align-items:flex-start;padding:11px 12px;min-height:96px;border-radius:var(--radius-sm);border:1px solid rgba(198,215,242,.14);background:#0b142694;box-shadow:var(--subcard-shadow)}.hero-guidance-icon{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;color:#e8f6ff;background:#a0bef01f}.hero-guidance-copy{min-width:0;display:grid;gap:3px}.hero-guidance-label{color:var(--text-dim);font-size:10px;font-weight:760;letter-spacing:.1em;text-transform:uppercase}.hero-guidance-value{overflow-wrap:anywhere;color:#f4f9ff;font-size:14px;line-height:1.2;font-weight:780}.hero-guidance-detail{overflow-wrap:anywhere;color:#d3e2fac7;font-size:12px;line-height:1.35;font-weight:620}.hero-guidance-item--calm{border-color:#8bdca842;background:linear-gradient(160deg,#1030284d,#0b14267a)}.hero-guidance-item--notice{border-color:#f6c45352;background:linear-gradient(160deg,#3c301652,#0b14267a)}.hero-guidance-item--watch{border-color:#f1a0a857;background:linear-gradient(160deg,#421d234d,#0b14267a)}.hero-guidance-item--unavailable{border-color:#94a3b83d}.hero-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding-top:18px;border-top:1px solid rgba(178,202,244,.2)}.stat{display:flex;align-items:flex-start;gap:12px;padding:12px;border-radius:var(--radius-sm);background:var(--subcard-bg);border:var(--subcard-border);box-shadow:var(--subcard-shadow)}.stat-icon{flex-shrink:0;width:34px;height:34px;display:grid;place-items:center;border-radius:10px;color:#dcf7ff;background:linear-gradient(160deg,#8bd3ff2e,#f6c45317)}.stat-label{color:var(--text-dim);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.11em}.stat-value{margin-top:3px;color:#eff6ff;font-size:16px;font-weight:700;font-variant-numeric:tabular-nums}.hero-stats .stat-value{white-space:nowrap}.stat-value.is-missing{color:var(--text-dim);font-weight:600}.hero-stats-note{margin:12px 0 0;padding:10px 12px;border-radius:var(--radius-sm);border:1px dashed rgba(186,212,252,.34);background:#08112466;color:var(--text-muted);font-size:12px;font-weight:600;line-height:1.45}@media(max-width:1200px){.hero-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:980px){.hero-card{gap:16px}.hero-temp-row{gap:14px}.hero-temp{font-size:clamp(76px,10vw,96px)}.hero-condition{font-size:20px}.hero-insight{max-width:100%}.hero-guidance{grid-template-columns:1fr}}@media(max-width:760px){.hero-meta{flex-direction:column;align-items:flex-start}.hero-high-low{align-self:flex-start}.hero-temp-row{align-items:flex-start;gap:12px}.hero-condition{font-size:19px}}@media(max-width:640px){.hero-card{gap:14px}.hero-high-low{gap:10px;padding:9px 11px}.hero-high-low-value{font-size:18px}.hero-temp{font-size:clamp(68px,12vw,84px)}.hero-temp-row{flex-direction:column-reverse;align-items:flex-start;gap:10px}.hero-feels{font-size:14px}.hero-insight{margin-top:12px;padding:10px 12px;font-size:13px}.hero-guidance-item{min-height:auto;padding:10px}}@media(max-width:560px){.hero-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:420px){.hero-location{font-size:15px}.hero-date{font-size:12px}.hero-high-low{gap:8px;padding:8px 10px}.hero-high-low-value{font-size:17px}.hero-temp{font-size:clamp(62px,15vw,74px)}.hero-condition{font-size:18px}.stat-label{font-size:10px}.stat-value{font-size:15px}.stat{gap:10px;padding:10px}.hero-stats{gap:8px;padding-top:14px}}.hero-card.glass{color:#f4f1ea;border-radius:20px}.hero-location{color:#f4f1eae6}.hero-date{text-transform:none;letter-spacing:.02em;color:#f4f1ea9e}.hero-high-low{border:1px solid rgba(255,243,225,.1);background:#fff3e10f;box-shadow:none}.hero-high-low-label{font-weight:500;letter-spacing:.06em;color:#f4f1eaad}.hero-high-low-value{color:#f6f2ea;font-weight:400}.hero-high-low-item:first-child .hero-high-low-value{color:#f5d9a8}.hero-high-low-item:last-child .hero-high-low-value{color:#bcd2f0}.hero-temp-unit{color:#f4f1eab8;font-weight:400}.hero-condition{font-weight:500}.hero-feels{color:#f4f1eaad;font-weight:400}.hero-insight{background:#fff3e10d;border:1px solid rgba(255,238,214,.1);color:#f5f2ebe6}.hero-chip{border:1px solid rgba(255,243,225,.12);background:#fff3e112;color:#f5f2ebeb}.hero-chip-icon{color:#f3c98a}.hero-trust-pill{border:1px solid rgba(255,243,225,.12);background:#fff3e10f;color:#f5f2ebd1}.hero-trust-dot{background:#7fd99a}.hero-stats{border-top:1px solid rgba(255,238,214,.12)}.hero-stats .stat{border:1px solid rgba(255,238,214,.09);background:#fff3e10d;box-shadow:none}.hero-stats .stat-icon{color:#f3c98a;background:#f4bd6f1f}.hero-stats .stat-label{font-weight:500;letter-spacing:.06em;color:#f4f1eaad}.hero-stats .stat-value{color:#f6f2ea;font-weight:500}.hero-sky-glow{top:40px;right:14px;width:152px;height:152px}.hero-sky-orb{display:none}.hero-condition-line{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;margin-top:10px}.hero-condition-separator{color:#f4f1ea66}.hero-feels{margin-top:0}.bento-alerts{display:flex;flex-direction:column;grid-column:span 12;gap:12px;min-height:auto}.alerts-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.alerts-title{display:inline-flex;align-items:center;gap:8px;margin:0;font-family:var(--font-display);font-size:var(--section-title-size);font-weight:650;letter-spacing:0}.alerts-subtitle{display:inline-flex;align-items:center;padding:5px 10px;border-radius:var(--radius-pill);border:1px solid var(--severity-warn-border);background:var(--severity-warn-bg);color:var(--severity-warn-fg);font-size:10px;font-weight:700;letter-spacing:var(--track-default);text-transform:uppercase}.alerts-empty{padding:var(--subcard-padding);border-radius:var(--radius-sm);border:var(--subcard-border);background:var(--bg-well);box-shadow:var(--subcard-shadow)}.alerts-empty-title{margin:0;color:#ecf4ff;font-size:16px;font-weight:700}.alerts-empty-copy{margin:4px 0 0;color:var(--text-muted);font-size:13px;line-height:1.4}.alerts-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.alerts-item{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:var(--subcard-padding);border-radius:var(--radius-sm);border:var(--border-default);background:var(--bg-well);box-shadow:var(--subcard-shadow)}.alerts-item--critical{border-color:var(--severity-critical-border);background:linear-gradient(165deg,#e146464d,#be373733)}.alerts-item--high{border-color:var(--severity-high-border);background:linear-gradient(165deg,#eb823247,#c864232e)}.alerts-item--moderate{border-color:var(--severity-warn-border);background:linear-gradient(165deg,#e1af3742,#c3962829)}.alerts-item-main{display:flex;flex-direction:column;gap:4px;min-width:0}.alerts-event{margin:0;color:#f5f9ff;font-size:13px;font-weight:700}.alerts-headline{margin:0;color:var(--text-muted);font-size:12px;line-height:1.35}.alerts-item-meta{display:inline-flex;flex-direction:column;align-items:flex-end;gap:5px}.alerts-priority{display:inline-flex;align-items:center;padding:3px 8px;border-radius:var(--radius-pill);font-size:10px;font-weight:700;letter-spacing:var(--track-default);text-transform:uppercase}.alerts-priority--critical{color:var(--severity-critical-fg);border:1px solid var(--severity-critical-border);background:var(--severity-critical-bg)}.alerts-priority--high{color:var(--severity-high-fg);border:1px solid var(--severity-high-border);background:var(--severity-high-bg)}.alerts-priority--moderate{color:var(--severity-warn-fg);border:1px solid var(--severity-warn-border);background:var(--severity-warn-bg)}.alerts-priority--low{color:var(--severity-ok-fg);border:1px solid var(--severity-ok-border);background:var(--severity-ok-bg)}.alerts-window{color:var(--text-dim);font-size:11px;font-weight:600;white-space:nowrap}.alerts-overflow{margin:6px 0 0;padding:8px 10px;border-radius:var(--radius-sm);border:1px dashed rgba(var(--border-base),.28);background:var(--surface-1);color:var(--text-muted);font-size:12px;font-weight:600;line-height:1.35}@media(max-width:760px){.alerts-item{flex-direction:column;align-items:flex-start}.alerts-item-meta{flex-direction:row;align-items:center;gap:8px;flex-wrap:wrap}.alerts-window{white-space:normal}}@media(max-width:420px){.alerts-empty-title{font-size:14px}.alerts-empty-copy,.alerts-headline{font-size:11px}}@media(pointer:coarse){.alerts-priority{font-size:10px}}.bento-alerts-card.rain-alerts{grid-column:1 / -1;display:flex;flex-direction:column;gap:14px;padding:18px 20px;border-radius:18px}.rain-alerts-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.rain-alerts-title{display:inline-flex;align-items:center;gap:8px;margin:0;font-size:16px;font-weight:650}.rain-alerts-status{font-size:12.5px;color:var(--text-dim)}.rain-alerts-types{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.rain-alerts-type{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:12px;background:#ffffff0f;border:1px solid rgba(255,255,255,.12)}.rain-alerts-type-icon{display:grid;place-items:center;flex-shrink:0;color:#9cc6f5}.rain-alerts-type-copy{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.rain-alerts-type-label{font-size:14px;color:#eef1f8}.rain-alerts-type-detail{font-size:12px;color:var(--text-dim)}.rain-alerts-toggle{flex-shrink:0;min-width:52px;min-height:32px;padding:0 12px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#e0edffd1;border:1px solid rgba(181,210,252,.22);background:#07102366;cursor:pointer;transition:color var(--motion-fast, .15s) ease,background var(--motion-fast, .15s) ease,border-color var(--motion-fast, .15s) ease}.rain-alerts-toggle.is-on{color:#06210f;background:#7fd99a;border-color:#7fd99a}.rain-alerts-toggle:disabled{opacity:.6;cursor:default}.rain-alerts-actions{display:flex;flex-wrap:wrap;gap:10px}.rain-alerts-btn{min-height:40px;padding:0 16px;border-radius:999px;font-size:14px;font-weight:600;color:#eef1f8;border:1px solid rgba(181,210,252,.24);background:#ffffff0f;cursor:pointer}.rain-alerts-btn--primary{color:#06210f;background:#7fd99a;border-color:#7fd99a}.rain-alerts-btn:disabled{opacity:.6;cursor:default}.rain-alerts-note{margin:0;font-size:13px;line-height:1.45;color:#eef1f8b3}.rain-alerts-note--ok{color:#9be3b1}.rain-alerts-note--error{color:#fda4af}@media(prefers-reduced-motion:reduce){.rain-alerts-toggle{transition:none}}.info-drawer{display:inline-flex;flex-direction:column;align-items:flex-end;gap:6px}.info-drawer-trigger{position:relative;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;border:var(--border-strong);background:var(--surface-3);color:#dae9fff5;font-size:12px;font-weight:700;line-height:1;transition:border-color var(--motion-fast) var(--ease-standard),background var(--motion-fast) var(--ease-standard),transform var(--motion-fast) var(--ease-standard)}.info-drawer-trigger:before{content:"";position:absolute;top:-8px;right:-8px;bottom:-8px;left:-8px;border-radius:inherit}.info-drawer-trigger:hover{border-color:#8be6ff9e;background:var(--surface-strong);transform:translateY(var(--lift-1))}.info-drawer-trigger:active{transform:scale(var(--press-scale))}.info-drawer-panel{width:min(260px,72vw);padding:9px 10px;border-radius:var(--radius-xs);border:var(--border-default);background:#22466ceb;box-shadow:0 10px 22px #030a1852,inset 0 1px #e5f1ff1a;text-align:left}.info-drawer-title{margin:0 0 4px;color:#e9f3ff;font-size:11px;font-weight:700;letter-spacing:var(--track-tight);text-transform:uppercase}.info-drawer-copy{margin:0;color:#d6e4fceb;font-size:12px;line-height:1.35}@media(max-width:640px){.info-drawer-panel{width:min(240px,80vw)}}@media(max-width:420px){.info-drawer-trigger{width:28px;height:28px;font-size:11px}.info-drawer-trigger:before{top:-10px;right:-10px;bottom:-10px;left:-10px}.info-drawer-panel{width:min(220px,86vw);padding:8px 9px}.info-drawer-copy{font-size:11px}}.metric-card{display:flex;flex-direction:column;gap:10px;justify-content:flex-start;min-height:100%}.exposure-card{gap:12px}.exposure-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-height:0}.exposure-alert{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;margin-top:auto;padding:14px;border-radius:var(--radius-sm);border:1px solid rgba(248,178,92,.34);background:linear-gradient(135deg,#8e321857,#0c162aa8 54%),#0d1628b8;box-shadow:inset 0 1px #ffecd61f,0 14px 28px #050c1a2e}.exposure-alert-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;color:#fed7aa;background:#f973162e;border:1px solid rgba(251,191,36,.22)}.exposure-alert-copy{min-width:0;display:grid;gap:4px}.exposure-alert-topline,.exposure-alert-meta{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}.exposure-alert-kicker,.exposure-alert-priority,.exposure-alert-action,.exposure-alert-time{display:inline-flex;align-items:center;min-height:24px;padding:4px 8px;border-radius:var(--radius-pill);font-size:10px;font-weight:800;letter-spacing:var(--track-default);text-transform:uppercase;white-space:nowrap}.exposure-alert-kicker{color:#ffe8c7;background:#ffedd51a;border:1px solid rgba(255,237,213,.18)}.exposure-alert-priority{color:#05101f;background:linear-gradient(145deg,#fed7aa,#f97316);border:1px solid rgba(255,237,213,.36)}.exposure-alert-title{margin:0;color:#fff7ed;font-size:18px;font-weight:780;letter-spacing:0}.exposure-alert-summary{margin:0;color:#feebd7e0;font-size:12px;line-height:1.35;font-weight:620}.exposure-alert-meta{justify-content:flex-end;align-self:stretch;align-content:center}.exposure-alert-time{color:#fde68a;background:#713f1242;border:1px solid rgba(251,191,36,.22)}.exposure-alert-action{color:#e0f2fef5;background:#0e749033;border:1px solid rgba(125,211,252,.24)}.exposure-alert--critical,.exposure-alert--extreme{border-color:#fca5a57a;background:linear-gradient(135deg,#7f1d1d7a,#0c162aad 54%),#0d1628b8}.exposure-alert--critical .exposure-alert-priority,.exposure-alert--extreme .exposure-alert-priority{background:linear-gradient(145deg,#fecaca,#ef4444)}.exposure-alert--high .exposure-alert-priority{background:linear-gradient(145deg,#fed7aa,#f97316)}.exposure-alert--moderate .exposure-alert-priority{background:linear-gradient(145deg,#fde68a,#d97706)}.exposure-alert--low .exposure-alert-priority{color:#e0f2fe;background:#0e74903d}.metric-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;min-width:0}.metric-head-side{display:inline-flex;align-items:center;gap:6px}.metric-help-drawer{align-items:flex-end}.metric-help-drawer .info-drawer-panel{width:min(220px,72vw)}.metric-context{display:inline-flex;align-items:center;padding:4px 8px;border-radius:var(--radius-pill);border:var(--border-default);background:var(--surface-1);color:#dae6fdf0;font-size:10px;font-weight:700;letter-spacing:var(--track-loose);text-transform:uppercase}.metric-label{color:var(--text-dim);font-size:12px;letter-spacing:var(--track-loose);text-transform:uppercase;font-weight:700;margin:0}.metric-value,.metric-gauge-value{font-family:var(--font-display);letter-spacing:0}.exposure-panel{min-height:100%;padding:var(--subcard-padding);border-radius:calc(var(--radius-sm) + 2px);border:var(--subcard-border);background:var(--bg-well);box-shadow:var(--subcard-shadow)}.metric-card--meter{justify-content:flex-start}.metric-gauge{position:relative;width:100%;display:grid;place-items:center;margin:0}.metric-gauge-svg{width:100%;max-width:158px;height:96px}.metric-gauge-track,.metric-gauge-fill{fill:none;stroke-width:8;stroke-linecap:round}.metric-gauge-track{stroke:#bcd1f247}.metric-gauge-fill{transition:stroke-dashoffset var(--motion-medium) var(--ease-standard)}.metric-gauge-value{position:absolute;top:50%;transform:translateY(-50%);font-size:36px;font-weight:650;color:#f8fbff;font-variant-numeric:tabular-nums}.metric-meter-stack{display:flex;flex-direction:column;gap:8px}.metric-pill{display:inline-flex;align-items:center;gap:7px;padding:6px 11px;border-radius:var(--radius-pill);border:var(--border-default);background:var(--surface-2);color:#ebf3ff;font-size:13px;font-weight:700}.metric-card--meter .metric-pill{align-self:center}.metric-dot{width:8px;height:8px;border-radius:50%;background:var(--status-color, #9ca3af)}.metric-density{margin-top:0}.metric-density-track{position:relative;width:100%;height:7px;overflow:hidden;border-radius:var(--radius-pill);background:#c8dcff33}.metric-density-fill{position:absolute;inset:0 auto 0 0;border-radius:inherit;transition:width var(--motion-slow) var(--ease-emphasis)}.metric-density-fill--missing{width:100%;background:repeating-linear-gradient(120deg,#94a3b829 0,#94a3b829 8px,#94a3b84d 8px,#94a3b84d 16px)}.metric-density-marker{position:absolute;top:50%;width:11px;height:11px;border-radius:50%;background:#f8fbff;border:2px solid;transform:translateY(-50%);transition:left var(--motion-slow) var(--ease-emphasis)}.metric-density-scale{display:flex;justify-content:space-between;margin-top:5px;font-size:11px;color:var(--text-dim);letter-spacing:var(--track-default);text-transform:uppercase;font-weight:700}.metric-density-scale--missing{color:#cfd9ecdb}.metric-support{margin-top:0;color:var(--text-muted);font-size:13px;line-height:1.4}.metric-card--no-data .metric-gauge-track{stroke:#b0c3e633}.metric-card--no-data .metric-gauge-value{color:#c6d4ece6}.metric-pill--missing{border-color:#b0c3e657;background:#ffffff29;color:#d6e1f2f0}.metric-pill--missing .metric-dot{background:#94a3b8e6}.exposure-panel .metric-gauge{margin-top:2px}.exposure-panel .metric-gauge-svg{max-width:136px;height:86px}.exposure-panel .metric-gauge-value{font-size:30px}.exposure-panel .metric-pill{font-size:12px;padding:5px 9px}.exposure-panel .metric-support{font-size:12px}@media(max-width:560px){.metric-gauge-svg{max-width:130px;height:80px}.metric-gauge-value{font-size:29px}.exposure-grid{grid-template-columns:1fr;gap:8px}.exposure-alert{grid-template-columns:1fr;gap:10px}.exposure-alert-icon{display:none}.exposure-alert-meta{justify-content:flex-start}.metric-head{align-items:center}.metric-head-side{gap:4px}}@media(max-width:420px){.metric-gauge-svg{max-width:118px;height:72px}.metric-gauge-value{font-size:26px}.exposure-panel .metric-gauge-svg{max-width:112px;height:68px}.exposure-panel .metric-gauge-value{font-size:24px}.metric-label{font-size:11px}.metric-support{font-size:12px}}.data-trust-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:0;color:#d5e1f4eb;font-size:11px;font-weight:650;letter-spacing:.04em}.data-source-badge{display:inline-flex;align-items:center;min-height:20px;padding:2px 8px;border-radius:var(--radius-pill);border:1px solid rgba(111,183,242,.28);background:#0c172ab8;color:#e5f0fff5;font-size:10px;font-weight:700;letter-spacing:.11em;text-transform:uppercase}.data-updated-label{color:#cfddf3eb}.data-stale-warning{color:#fecaca;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.data-trust-meta.is-stale .data-source-badge{border-color:#f8717166;background:#490d0d66}@media(max-width:640px){.data-trust-meta{gap:6px}}@media(max-width:420px){.data-trust-meta{font-size:10px;letter-spacing:.03em}.data-source-badge{min-height:18px;padding:2px 7px;font-size:10px}}@media(pointer:coarse){.data-source-badge{font-size:10px}}.global-update-indicator{margin:0;display:inline-flex;align-items:center;gap:8px;padding:6px 12px;min-height:36px;border-radius:var(--radius-pill);border:var(--border-default);background:var(--surface-2);color:var(--text-dim);font-size:11px;font-weight:600;letter-spacing:.02em;white-space:nowrap;-webkit-user-select:none;user-select:none}@media(pointer:coarse){.global-update-indicator{min-height:44px;padding:8px 14px}}.global-update-indicator--placeholder{border-color:transparent;background:transparent;box-shadow:none;pointer-events:none}.global-update-indicator--button{cursor:pointer;transition:background var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard),transform var(--motion-fast) var(--ease-standard)}.global-update-indicator--button:hover{border-color:#aee3ff6b;background:var(--surface-3);color:var(--text-muted)}.global-update-indicator--button:active{transform:scale(var(--press-scale))}.global-update-indicator--button:focus-visible{outline:2px solid var(--focus-outline);outline-offset:2px}.global-update-indicator--button:disabled{opacity:.7;cursor:progress}.global-update-refresh{margin-left:2px;color:#bad4fcb3;flex-shrink:0}.global-update-refresh.is-spinning{animation:global-update-refresh-spin var(--motion-spinner) linear infinite}@keyframes global-update-refresh-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.global-update-refresh.is-spinning{animation:none}.global-update-indicator--button:active{transform:none}}.global-update-dot{width:6px;height:6px;border-radius:50%;background:#95d9afe6;box-shadow:0 0 0 2px #95d9af29;flex-shrink:0}.global-update-indicator--stale .global-update-dot{background:#fbbf24eb;box-shadow:0 0 0 2px #fbbf242e}.global-update-indicator--saved .global-update-dot{background:#94a3b8d9;box-shadow:0 0 0 2px #94a3b82e}.global-update-text{color:var(--text-muted)}.global-update-state{color:var(--text-dim);font-size:10px;font-weight:700;letter-spacing:var(--track-loose);text-transform:uppercase;padding:0 6px;border-radius:var(--radius-pill);border:var(--border-soft);background:var(--surface-2)}.global-update-indicator--stale .global-update-state{color:#fbbf24eb;border-color:#fbbf244d}@media(max-width:420px){.global-update-indicator{padding:6px 10px;font-size:10px}.global-update-state{display:none}}@media(pointer:coarse){.global-update-state{font-size:10px}}.data-trust-footer{grid-column:1 / -1;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:14px 4px 2px;color:var(--text-dim);font-size:11px;font-weight:300}.data-trust-footer-location,.data-trust-footer-source{display:flex;align-items:center;gap:6px}.data-trust-footer-icon{flex-shrink:0;opacity:.8}.data-trust-footer-dot{flex-shrink:0;width:7px;height:7px;border-radius:50%;background:#7fd99a}.bento{position:relative;isolation:isolate;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:22px}.bento-group-label{grid-column:1 / -1;position:relative;display:flex;align-items:center;width:100%;min-height:24px;margin:2px 0 -4px;padding-left:14px;color:#e6eefaeb;font-size:var(--fs-label-lg);font-weight:700;letter-spacing:var(--track-default);text-transform:uppercase;opacity:1;animation:label-reveal var(--motion-slow) var(--ease-standard) forwards;animation-delay:calc(var(--group-i, 0) * .12s)}.bento-group-label:before{content:"";position:absolute;left:0;top:50%;width:3px;height:14px;border-radius:var(--radius-pill);transform:translateY(-50%);background:#6fb7f2;box-shadow:0 0 8px #6fb7f273}.bento-group-label:after{content:"";flex:1;height:1px;margin-left:12px;border-radius:var(--radius-pill);background:linear-gradient(90deg,#becfe86b,#becfe80a)}.bento-group-scope{flex-shrink:0;margin-left:10px;padding:2px 9px;border-radius:var(--radius-pill);border:1px solid rgba(111,183,242,.28);background:#6fb7f224;color:#cfe6fb;font-size:10.5px;font-weight:600;letter-spacing:.02em;text-transform:none;white-space:nowrap}.bento-group-label[data-tier=act-now]{color:#fbeede}.bento-group-label[data-tier=act-now]:before{height:16px;background:#f3b765;box-shadow:0 0 10px #f3b76599}.bento-group-label[data-tier=ambient]{color:#e6eefa80}.bento-group-label[data-tier=ambient]:before{background:#becfe84d;box-shadow:none}.bento-group-label[data-tier=ambient]:after{opacity:.5}.bento-nowcast,.bento-rain{outline:1.5px solid rgba(243,183,101,.3);outline-offset:-1.5px}.bento>section{position:relative;min-width:0;min-height:186px;padding:var(--card-padding);border-radius:var(--card-radius);border:var(--card-border);opacity:1;animation:card-slide-up var(--card-enter-duration) var(--ease-emphasis) forwards;animation-delay:calc(var(--i, 0) * var(--card-enter-stagger));background:var(--bg-large-card);box-shadow:var(--card-shadow);transition:transform var(--motion-medium) var(--ease-emphasis),border-color var(--motion-fast) var(--ease-standard),background var(--motion-medium) var(--ease-standard),box-shadow var(--motion-medium) var(--ease-standard)}.bento>section:after{content:"";position:absolute;top:1px;right:1px;bottom:1px;left:1px;border-radius:calc(var(--card-radius) - 1px);pointer-events:none;border:1px solid rgba(255,255,255,.04)}.bento>section:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;pointer-events:none;opacity:0;background:radial-gradient(circle at 24% 0%,rgba(231,241,255,.1),transparent 62%);transition:opacity var(--motion-medium) var(--ease-standard)}.bento>section:focus-within:before{opacity:1}.bento>section[data-refreshing=true]{box-shadow:0 30px 72px #0208186b,0 6px 18px #07142e3d,inset 0 0 0 1px #80e2ff57}.bento>section[data-refreshing=true]:before{content:"Refreshing";inset:auto 14px auto auto;top:12px;width:auto;height:auto;padding:4px 9px;border-radius:var(--radius-pill);border:1px solid rgba(130,228,255,.36);background:#0a1934cc;color:#daf4fff0;font-size:var(--fs-caption);font-weight:700;letter-spacing:var(--track-default);text-transform:uppercase;transform:none;opacity:1;animation:refreshing-chip-pulse var(--motion-loop) ease-in-out infinite}.bento>section:focus-within{border-color:#85e6ffb8;box-shadow:0 28px 62px #0309186b,0 0 0 2px #85e6ff73,inset 0 1px #f3f8ff2e}@media(hover:hover)and (pointer:fine){.bento>section:hover{transform:translateY(-2px);border-color:#c6daf357;background:var(--bg-tile);box-shadow:var(--card-shadow-hover)}.bento>section:hover:before{opacity:1}}.bento-hero{grid-column:span 6;min-height:clamp(280px,28vw,360px);animation:hero-landing var(--card-enter-duration) var(--ease-emphasis) forwards;animation-delay:calc(var(--i, 0) * var(--card-enter-stagger))}.bento-exposure{grid-column:span 6}.bento-radar{grid-column:1 / -1}@media(max-width:1200px){.bento{gap:20px}}@media(max-width:980px){.bento{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.bento-group-label{font-size:var(--fs-label)}.bento-hero{grid-column:span 3;min-height:clamp(170px,44vw,236px)}.bento-exposure,.bento-rain,.bento-nowcast,.bento-chart,.bento-storm,.bento-forecast{grid-column:span 3}}@media(max-width:860px){.bento{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.bento-hero,.bento-exposure,.bento-rain,.bento-nowcast,.bento-chart,.bento-storm,.bento-forecast{grid-column:span 2}}@media(max-width:640px){.bento{grid-template-columns:1fr;gap:12px}.bento-group-label{justify-content:flex-start}.bento>[class*=bento-]{grid-column:auto;min-height:0}.bento-nowcast{content-visibility:auto;contain-intrinsic-block-size:340px}.bento-chart{content-visibility:auto;contain-intrinsic-block-size:320px}.bento-forecast{content-visibility:auto;contain-intrinsic-block-size:520px}.bento-alerts{content-visibility:auto;contain-intrinsic-block-size:280px}.bento-storm{content-visibility:auto;contain-intrinsic-block-size:440px}.bento-source-health{content-visibility:auto;contain-intrinsic-block-size:220px}.bento-radar{content-visibility:auto;contain-intrinsic-block-size:560px}}@media(max-width:420px){.bento-group-label{padding-left:14px;font-size:var(--fs-caption);letter-spacing:var(--track-default)}.bento-group-label:after{margin-left:8px}}@media(prefers-contrast:more){.bento>section{background:#040b19e6}}@media(prefers-reduced-motion:reduce){.bento-group-label,.bento>section{opacity:1;transform:none}.bento>section:hover{transform:none}}.data-status-disclosure{grid-column:1 / -1;margin-top:8px;border-radius:var(--radius-sm);border:1px dashed rgba(var(--border-base),.3);background:#08112457}.data-status-disclosure[open]{background:var(--surface-1);border-style:solid}.data-status-summary{display:flex;align-items:center;gap:10px;padding:10px 14px;cursor:pointer;list-style:none;color:var(--text-muted);font-size:var(--fs-label-lg);font-weight:700;letter-spacing:var(--track-default);text-transform:uppercase;border-radius:inherit;transition:color var(--motion-fast) var(--ease-standard)}.data-status-summary::-webkit-details-marker{display:none}.data-status-summary:after{content:"";margin-left:auto;width:8px;height:8px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(45deg) translate(-2px,-2px);transition:transform var(--motion-fast) var(--ease-standard)}.data-status-disclosure[open] .data-status-summary:after{transform:rotate(225deg) translate(-2px,-2px)}.data-status-summary:hover,.data-status-summary:focus-visible{color:#f3f8ff}.data-status-summary:focus-visible{outline:2px solid rgba(130,228,255,.66);outline-offset:2px}.data-status-summary-label{letter-spacing:var(--track-default)}.data-status-summary-hint{color:var(--text-dim);font-size:var(--fs-caption);font-weight:600;letter-spacing:var(--track-tight);text-transform:none}.data-status-disclosure .source-health-card{margin:0 14px 14px;animation:none}@media(max-width:640px){.data-status-summary-hint{display:none}}.bento>section{grid-column:1 / -1}
