:root{font-synthesis:none;text-rendering:optimizelegibility;-webkit-text-size-adjust:100%;--radius-card:22px;--radius-hero:26px;--radius-small:15px;--space-page:16px;--focus-ring:#ffbf47;--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--page-bg-end:#f3f7f9;--weather-page-accent:#d8ecf6;--weather-page-glow:#eef5f8;--page-bg:linear-gradient(180deg, var(--weather-page-accent) 0%, var(--weather-page-glow) 42%, var(--page-bg-end) 100%);--text-primary:#152536;--text-secondary:#486171;--surface-card:#f8fbfd;--surface-card-emphasized:#fff;--surface-subtle:#eef5f8;--surface-chip:#f6fafc;--border-subtle:#2d546d33;--divider:#2d546d2e;--accent:#8fd3ff;--accent-text:#06243a;--accent-strong:#0f5f8f;--warning-bg:#fff8df;--warning-text:#67470a;--error-bg:#fff1f1;--error-text:#8e2626;--shadow-card:0 1px 2px #2240580f, 0 8px 22px #22405814;--shadow-hero:0 14px 34px #1e53773d;--shadow-modal:0 -20px 70px #05152440;--hero-highlight:#ffe8aa3d;--hero-text:#fff;--hero-muted:#ffffffd6;--hero-tile:#ffffff26;--hero-border:#ffffff52;--hero-bg:radial-gradient(120% 85% at 88% -20%, var(--hero-highlight), transparent 58%), linear-gradient(145deg, #1b88bf, #0f5f8f 58%, #0a496e);--aqi-good:#2f8f63;--aqi-fair:#527f1e;--aqi-moderate:#936a00;--aqi-poor:#b7551d;--aqi-very-poor:#a5373f;--aqi-extremely-poor:#7d3a8a;--aqi-surface:#2f8f631c;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--page-bg-end:#071827;--weather-page-accent:#06111d;--weather-page-glow:#0b2033;--page-bg:linear-gradient(180deg, var(--weather-page-accent) 0%, var(--weather-page-glow) 48%, var(--page-bg-end) 100%);--text-primary:#eef8ff;--text-secondary:#b8d1e2;--surface-card:#0b2033;--surface-card-emphasized:#102d45;--surface-subtle:#102d45;--surface-chip:#0f2a42;--border-subtle:#b8d1e233;--divider:#b8d1e22e;--accent:#6ac8ff;--accent-text:#04111d;--accent-strong:#dff2ff;--warning-bg:#3b3214;--warning-text:#ffe6a3;--error-bg:#3a181b;--error-text:#ffb7bd;--shadow-card:0 2px 10px #0000002e;--shadow-hero:0 12px 32px #00000052;--shadow-modal:0 -20px 70px #00000073;--hero-highlight:#ffd16652;--hero-text:#fff;--hero-muted:#ffffffd6;--hero-tile:#ffffff24;--hero-border:#ffffff57;--hero-bg:radial-gradient(120% 85% at 88% -20%, var(--hero-highlight), transparent 58%), linear-gradient(145deg, #0b4d78, #06111d);--aqi-good:#7fd6a7;--aqi-fair:#b8d96c;--aqi-moderate:#ffd166;--aqi-poor:#ffab6b;--aqi-very-poor:#ff8f98;--aqi-extremely-poor:#dcb3ff;--aqi-surface:#7fd6a71f}}*{box-sizing:border-box}html{background:var(--surface-card)}body{min-width:320px;min-height:100vh;color:var(--text-primary);background:var(--page-bg);margin:0}button,input,select{font:inherit}button,select{min-height:44px}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.62}a{color:inherit}.page-shell{--weather-scene:none;--weather-particles:none;--weather-scene-opacity:0;--weather-particle-opacity:0;--weather-scene-animation:none;--weather-particle-animation:none;isolation:isolate;min-height:100dvh;padding-bottom:calc(env(safe-area-inset-bottom) + 16px);background:var(--page-bg);position:relative;overflow-x:clip}.page-shell:before,.page-shell:after{z-index:-1;pointer-events:none;content:"";position:fixed}.page-shell:before{background:var(--weather-scene);opacity:var(--weather-scene-opacity);animation:var(--weather-scene-animation);transform-origin:top;inset:-2% -5% 0}.page-shell:after{background:var(--weather-particles);opacity:var(--weather-particle-opacity);animation:var(--weather-particle-animation);inset:0}.page-shell[data-weather=clear]{--weather-scene:radial-gradient(circle at 82% 5%, #ffdc7e94 0 3%, #ffe29438 11%, transparent 29%);--weather-scene-opacity:.82;--weather-scene-animation:weather-light-breathe 12s ease-in-out infinite alternate}.page-shell[data-weather=cloudy]{--weather-scene:radial-gradient(ellipse 46% 10% at 18% 7%, #ffffff57 0 46%, transparent 50%), radial-gradient(ellipse 58% 12% at 84% 15%, #7d97a933 0 48%, transparent 52%), radial-gradient(ellipse 64% 12% at 37% 25%, #fff3 0 46%, transparent 51%);--weather-scene-opacity:.78;--weather-scene-animation:weather-cloud-drift 24s ease-in-out infinite alternate}.page-shell[data-weather=rain]{--weather-scene:radial-gradient(ellipse 65% 12% at 18% 5%, #53748942 0 48%, transparent 52%), radial-gradient(ellipse 72% 14% at 84% 14%, #63849738 0 48%, transparent 52%);--weather-particles:repeating-linear-gradient(108deg, transparent 0 18px, #5e9ec033 19px 20px, transparent 21px 34px);--weather-scene-opacity:.74;--weather-particle-opacity:.46;--weather-scene-animation:weather-cloud-drift 28s ease-in-out infinite alternate;--weather-particle-animation:weather-rain-fall 1.1s linear infinite}.page-shell[data-weather=snow]{--weather-scene:radial-gradient(ellipse 60% 11% at 24% 6%, #ffffff61 0 47%, transparent 52%), radial-gradient(ellipse 72% 13% at 88% 16%, #cfe4ef4d 0 47%, transparent 52%);--weather-particles:radial-gradient(circle, #fffc 0 2px, transparent 2.5px), radial-gradient(circle, #dceff8b8 0 3px, transparent 3.5px), radial-gradient(circle, #ffffffa3 0 1.5px, transparent 2px);--weather-scene-opacity:.72;--weather-particle-opacity:.58;--weather-particle-animation:weather-snow-fall 13s linear infinite}.page-shell[data-weather=snow]:after{background-position:8px 4px,41px 23px,19px 37px;background-size:86px 104px,137px 173px,59px 79px}.page-shell[data-weather=fog]{--weather-scene:repeating-linear-gradient(176deg, transparent 0 70px, #ffffff3b 90px 128px, transparent 148px 205px);--weather-scene-opacity:.7;--weather-scene-animation:weather-fog-drift 20s ease-in-out infinite alternate}.page-shell[data-weather=storm]{--weather-scene:radial-gradient(ellipse 76% 15% at 22% 5%, #2a344c6b 0 48%, transparent 52%), radial-gradient(ellipse 80% 16% at 89% 17%, #313b545c 0 48%, transparent 52%);--weather-particles:repeating-linear-gradient(108deg, transparent 0 15px, #7799b730 16px 17px, transparent 18px 29px);--weather-scene-opacity:.84;--weather-particle-opacity:.4;--weather-scene-animation:weather-storm-light 11s ease-in-out infinite;--weather-particle-animation:weather-rain-fall .85s linear infinite}.page-shell[data-day-phase=night]{--weather-particle-color:#deedffbf}.page-shell[data-day-phase=night][data-weather=clear]{--weather-scene:radial-gradient(circle at 78% 6%, #e2edff8f 0 2.5%, #bfd7f424 9%, transparent 24%);--weather-particles:radial-gradient(circle, var(--weather-particle-color) 0 1px, transparent 1.5px), radial-gradient(circle, #ffffff80 0 1.5px, transparent 2px);--weather-particle-opacity:.5;--weather-particle-animation:weather-stars-twinkle 6s ease-in-out infinite alternate}.page-shell[data-day-phase=night][data-weather=clear]:after{background-position:12px 9px,45px 31px;background-size:83px 97px,149px 131px}@keyframes weather-light-breathe{0%{opacity:.62;transform:scale(.99)}to{opacity:.88;transform:scale(1.015)}}@keyframes weather-cloud-drift{0%{transform:translate(-1.5%)}to{transform:translate(1.5%,1%)}}@keyframes weather-rain-fall{0%{background-position:0 -90px}to{background-position:-22px 90px}}@keyframes weather-snow-fall{0%{background-position:8px -104px,41px -173px,19px -79px}to{background-position:-24px 104px,65px 173px,4px 79px}}@keyframes weather-fog-drift{0%{opacity:.5;transform:translate(-2%)}to{opacity:.76;transform:translate(2%,1%)}}@keyframes weather-storm-light{0%,44%,48%,to{filter:brightness()}46%{filter:brightness(1.13)}}@keyframes weather-stars-twinkle{0%{opacity:.3}to{opacity:.56}}.app{width:min(100%,480px);padding-left:max(var(--space-page), env(safe-area-inset-left));padding-right:max(var(--space-page), env(safe-area-inset-right));margin:0 auto}.main-flow{gap:14px;padding-top:0;display:grid}.card{border:1px solid var(--border-subtle);border-radius:var(--radius-card);background:var(--surface-card);box-shadow:var(--shadow-card);padding:18px}.card h2{margin:0 0 12px;font-size:1.08rem;font-weight:780}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}@media (prefers-color-scheme:light){[data-weather=clear]{--weather-page-accent:#cce8f4;--weather-page-glow:#edf5f8;--page-bg-end:#f4f7f8;--hero-highlight:#ffe18a40;--hero-bg:radial-gradient(130% 90% at 88% -22%, var(--hero-highlight), transparent 60%), linear-gradient(145deg, #238dc2, #116a9a 55%, #0d547c)}[data-weather=cloudy]{--weather-page-accent:#d7e2e8;--weather-page-glow:#edf2f5;--page-bg-end:#f4f6f7;--hero-highlight:#ffffff2e;--hero-bg:radial-gradient(130% 95% at 82% -24%, var(--hero-highlight), transparent 62%), linear-gradient(145deg, #7792a3, #47677d 58%, #2d4a5f)}[data-weather=rain]{--weather-page-accent:#c6dce8;--weather-page-glow:#e8f0f4;--page-bg-end:#f3f6f8;--hero-highlight:#aedcef2e;--hero-bg:radial-gradient(130% 95% at 84% -24%, var(--hero-highlight), transparent 62%), linear-gradient(145deg, #3d839d, #245f79 58%, #17445a)}[data-weather=snow]{--weather-page-accent:#e1edf2;--weather-page-glow:#f1f5f7;--page-bg-end:#f7f9fa;--hero-highlight:#fff3;--hero-bg:radial-gradient(130% 95% at 84% -24%, var(--hero-highlight), transparent 62%), linear-gradient(145deg, #6fa9c6, #3e7a99 58%, #2a5b74)}[data-weather=fog]{--weather-page-accent:#dbe4e7;--weather-page-glow:#eff3f4;--page-bg-end:#f5f6f7;--hero-highlight:#ffffff2e;--hero-bg:radial-gradient(140% 100% at 80% -26%, var(--hero-highlight), transparent 64%), linear-gradient(145deg, #8398a2, #576f7d 58%, #3d5968)}[data-weather=storm]{--weather-page-accent:#c6cfdd;--weather-page-glow:#e5ebf2;--page-bg-end:#f1f4f7;--hero-highlight:#ffda752e;--hero-bg:radial-gradient(130% 95% at 84% -24%, var(--hero-highlight), transparent 60%), linear-gradient(145deg, #536487, #33415f 58%, #202b42)}[data-day-phase=night]{--weather-page-accent:#c4d2df;--weather-page-glow:#e6edf3;--page-bg-end:#f3f6f8;--hero-highlight:#d9ebff2e;--hero-bg:radial-gradient(130% 95% at 84% -24%, var(--hero-highlight), transparent 62%), linear-gradient(145deg, #2a5a7c, #173a59 58%, #102941)}}@media (prefers-color-scheme:dark){[data-weather=clear]{--weather-page-accent:#071b2d;--weather-page-glow:#0b2033;--page-bg-end:#06111d;--hero-highlight:#ffd16652;--hero-bg:radial-gradient(120% 85% at 88% -20%, var(--hero-highlight), transparent 58%), linear-gradient(145deg, #0b4d78, #06111d)}[data-weather=cloudy]{--weather-page-accent:#111d29;--weather-page-glow:#0b2033;--page-bg-end:#071827;--hero-highlight:#ffffff1a;--hero-bg:radial-gradient(120% 85% at 88% -20%, var(--hero-highlight), transparent 58%), linear-gradient(145deg, #394f61, #0d1f30)}[data-weather=rain]{--weather-page-accent:#0e2a3a;--weather-page-glow:#0b2033;--page-bg-end:#071827;--hero-highlight:#6ac8ff1f;--hero-bg:radial-gradient(120% 85% at 88% -20%, var(--hero-highlight), transparent 58%), linear-gradient(145deg, #17485f, #071827)}[data-weather=snow]{--weather-page-accent:#102536;--weather-page-glow:#0b2033;--page-bg-end:#071827;--hero-highlight:#dcf5ff24;--hero-bg:radial-gradient(120% 85% at 88% -20%, var(--hero-highlight), transparent 58%), linear-gradient(145deg, #35677f, #0b2033)}[data-weather=fog]{--weather-page-accent:#172633;--weather-page-glow:#0f2230;--page-bg-end:#071827;--hero-highlight:#ffffff1a;--hero-bg:radial-gradient(120% 85% at 88% -20%, var(--hero-highlight), transparent 58%), linear-gradient(145deg, #4d6470, #122635)}[data-weather=storm]{--weather-page-accent:#14192a;--weather-page-glow:#111d2d;--page-bg-end:#070b14;--hero-highlight:#ffd1664d;--hero-bg:radial-gradient(120% 85% at 88% -20%, var(--hero-highlight), transparent 58%), linear-gradient(145deg, #232c44, #070b14)}[data-day-phase=night]{--weather-page-accent:#030914;--weather-page-glow:#071827;--page-bg-end:#030914;--hero-highlight:#dcebff3d;--hero-bg:radial-gradient(120% 85% at 88% -20%, var(--hero-highlight), transparent 58%), linear-gradient(145deg, #102d45, #030914)}}.site-header{padding-top:env(safe-area-inset-top);color:var(--text-primary)}.simple-header{padding-top:12px;padding-bottom:6px}.simple-header h1{letter-spacing:-.02em;color:var(--text-primary);margin:0 0 10px;font-size:1.35rem;font-weight:800;line-height:1.1}.quick-location-card{margin:0}.quick-location-card h2{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.08em;margin:0 0 8px;font-size:.78rem;font-weight:720}.quick-location-list{overscroll-behavior-x:contain;scroll-padding-inline:var(--space-page);gap:8px;padding-bottom:2px;display:flex;overflow-x:auto}.quick-location-chip{white-space:nowrap;border:1px solid var(--border-subtle);background:var(--surface-chip);min-height:44px;color:var(--text-primary);border-radius:999px;flex:none;align-items:center;gap:6px;padding:8px 13px;font-weight:720;display:inline-flex}.quick-location-chip[aria-pressed=true]{border-color:var(--accent);background:var(--accent);color:var(--accent-text)}.quick-location-check{font-weight:900}.quick-location-chip.more{color:var(--text-secondary)}.hero{color:var(--hero-text);background:var(--hero-bg);border-radius:var(--radius-hero);box-shadow:var(--shadow-hero);padding:17px;overflow:hidden}.current-card-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.current-card-header h2{color:var(--hero-text);margin:0}.hero-refresh{border:1px solid var(--hero-border);background:var(--hero-tile);width:44px;height:44px;min-height:44px;color:var(--hero-text);border-radius:50%;place-items:center;padding:0;display:inline-grid}.refresh-icon{width:22px;height:22px}.refresh-icon.is-spinning{animation:.9s linear infinite spin}.condition{align-items:center;gap:9px;margin-top:12px;font-size:1.1rem;display:flex}.weather-icon{place-items:center;font-size:1.75rem;line-height:1;display:inline-grid}.hero-temperature{letter-spacing:-.08em;margin:10px 0 4px;font-size:clamp(4rem,17vw,5rem);font-weight:850;line-height:.95}.current-summary p:not(.hero-temperature){color:var(--hero-muted);margin:0;font-size:.96rem}.metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 10px;margin:16px 0 12px;display:grid}.metrics div{border-radius:var(--radius-small);background:var(--hero-tile);padding:10px 11px}.metrics dt{color:var(--hero-muted);font-size:.76rem;font-weight:560}.metrics dd{white-space:nowrap;margin:3px 0 0;font-size:1.08rem;font-weight:720}.updated{color:var(--hero-muted);gap:3px;font-size:.8rem;display:grid}.updated p{margin:0}.updated a{text-underline-offset:3px}.stale-note{font-weight:760}.warning-card{border-color:color-mix(in srgb, #f59e0b 48%, var(--border-subtle))}.warning-item{border-top:1px solid var(--divider);gap:6px;padding:10px 0;display:grid}.warning-item:first-of-type{border-top:0;padding-top:0}.warning-title{margin:0;font-size:1.02rem;font-weight:780}.warning-meta,.warning-cache{color:var(--text-secondary);margin:0;font-size:.88rem}.warning-item details{color:var(--text-primary);margin-top:4px}.warning-item summary{cursor:pointer;min-height:44px;font-weight:720}.warning-item details p{color:var(--text-secondary);margin:8px 0 0}.warning-minor{--warning-accent:#eab308}.warning-moderate{--warning-accent:#f59e0b}.warning-severe{--warning-accent:#ef4444}.warning-extreme{--warning-accent:#a855f7}.warning-item{border-left:4px solid var(--warning-accent,var(--divider));padding-left:10px}.detail-section-grid{gap:14px;display:grid}.detail-section{padding:17px}.section-main-value{margin:8px 0 14px;font-size:clamp(1.9rem,7vw,2.55rem);font-weight:800;line-height:1}.detail-pair-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;margin:0;display:grid}.detail-item{border-top:1px solid var(--divider);min-width:0;padding:10px 0}.detail-item-wide{grid-column:1/-1}.detail-item dt{color:var(--text-secondary);font-size:.78rem;font-weight:620}.detail-item dd{overflow-wrap:anywhere;margin:4px 0 0;font-size:1rem;font-weight:720}.forecast-card{overflow:hidden}.hourly-scroll-hint{margin-inline:-4px;position:relative}.hourly-scroll-hint:after{content:"";pointer-events:none;background:linear-gradient(90deg, transparent, var(--surface-card));width:28px;position:absolute;inset:0 0 8px auto}.hourly{overscroll-behavior-x:contain;scroll-snap-type:x proximity;gap:10px;margin:0;padding:0 28px 8px 4px;list-style:none;display:flex;overflow-x:auto}.hour{scroll-snap-align:start;border:1px solid var(--border-subtle);border-radius:var(--radius-small);background:var(--surface-subtle);text-align:center;min-width:90px;padding:11px 10px}.hour time,.hour small{color:var(--text-secondary);white-space:nowrap;font-size:.78rem;display:block}.hour .weather-icon{margin:8px auto}.hour strong{white-space:nowrap;font-size:1.12rem;font-weight:760;display:block}.hour small{margin-top:5px}.air-quality-card{gap:10px;display:grid}.air-quality-card.aqi-good{--aqi-current:var(--aqi-good)}.air-quality-card.aqi-fair{--aqi-current:var(--aqi-fair)}.air-quality-card.aqi-moderate{--aqi-current:var(--aqi-moderate)}.air-quality-card.aqi-poor{--aqi-current:var(--aqi-poor)}.air-quality-card.aqi-very-poor{--aqi-current:var(--aqi-very-poor)}.air-quality-card.aqi-extremely-poor{--aqi-current:var(--aqi-extremely-poor)}.air-quality-card.aqi-unknown{--aqi-current:var(--text-secondary)}.air-quality-main{color:var(--aqi-current);margin:0;font-size:clamp(1.75rem,8vw,2.4rem);font-weight:820;line-height:1.05}.air-quality-trend,.air-quality-primary,.air-quality-status,.air-quality-empty{margin:0}.air-quality-trend{color:var(--text-primary);font-size:1rem;line-height:1.45}.air-quality-primary{color:var(--text-secondary);font-size:.93rem;font-weight:700}.air-quality-status{color:var(--warning-text);font-size:.86rem}.air-quality-empty{color:var(--text-secondary);font-size:.95rem}.daily-list{margin:0;padding:0;list-style:none;display:grid}.day{border-top:1px solid var(--divider);grid-template-columns:72px minmax(0,1fr) auto;align-items:center;gap:10px 12px;padding:12px 6px;display:grid}.day:first-child{border-top:0}.day.is-today{border-radius:var(--radius-small);background:var(--surface-subtle);padding-inline:10px}.day-date{gap:3px;display:grid}.day-date time{font-weight:720}.day-date span{color:var(--accent);font-size:.72rem;font-weight:780}.day-condition{align-items:center;gap:8px;min-width:0;display:flex}.day-condition span:last-child{overflow-wrap:anywhere}.day-icon{flex:none;font-size:1.35rem;line-height:1}.day-temps{white-space:nowrap;align-items:baseline;gap:4px;display:flex}.day-temps strong{font-weight:790}.day-temps span{color:var(--text-secondary)}.day-meta{color:var(--text-secondary);grid-column:2/4;margin:-4px 0 0;font-size:.84rem}.notice,.inline-note,.update-banner,.install-hint{border:1px solid var(--border-subtle);background:var(--surface-card);box-shadow:var(--shadow-card);border-radius:16px;padding:12px 14px}.status{font-weight:720}.error{background:var(--error-bg);color:var(--error-text);border-color:#9a2c2c73}.inline-note{background:var(--warning-bg);color:var(--warning-text);margin:-2px 0 0}.update-banner,.install-hint{justify-content:space-between;align-items:center;gap:12px;display:flex}.update-banner p,.install-hint p{margin:0}.update-banner div,.install-hint div{flex-wrap:wrap;gap:8px;display:flex}.update-banner button,.install-hint button,.search-row button,.location-actions button,.confirm-actions button,.secondary-button{border:1px solid var(--border-subtle);background:var(--surface-card-emphasized);color:var(--text-primary);border-radius:14px;padding:8px 12px;font-weight:720}.text-button{color:var(--text-secondary);background:0 0;border-color:#0000}.install-icon{background:var(--surface-subtle);border-radius:10px;flex:none;place-items:center;width:32px;height:32px;display:inline-grid}.site-footer{width:min(100%,860px);padding:10px 16px calc(env(safe-area-inset-bottom) + 12px);color:var(--text-secondary);text-align:center;margin:0 auto;font-size:.82rem}.modal-open{overflow:hidden}.location-modal{z-index:20;padding:max(8px, env(safe-area-inset-top)) max(8px, env(safe-area-inset-right)) max(8px, env(safe-area-inset-bottom)) max(8px, env(safe-area-inset-left));background:#05152473;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.location-sheet{background:var(--surface-card);width:min(100%,560px);max-height:min(88dvh,780px);color:var(--text-primary);box-shadow:var(--shadow-modal);border-radius:28px 28px 18px 18px;padding:18px;overflow:auto}.sheet-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;display:flex}.sheet-header h2{margin:0}.icon-button{background:var(--surface-subtle);min-width:44px;min-height:44px;color:var(--text-primary);border:0;border-radius:50%;font-size:2rem;line-height:1}.search-box{border:1px solid var(--border-subtle);background:var(--surface-subtle);border-radius:20px;margin-bottom:18px;padding:14px}.search-box label{margin-bottom:8px;font-weight:760;display:block}.search-row{gap:8px;display:flex}.search-row input{border:1px solid var(--border-subtle);background:var(--surface-card);min-width:0;color:var(--text-primary);border-radius:14px;flex:1;padding:12px;font-size:1rem}.hint{color:var(--text-secondary);margin:10px 0 0}.error-text{color:var(--error-text)}.result-list{gap:8px;margin-top:12px;display:grid}.location-row{border:1px solid var(--border-subtle);background:var(--surface-subtle);min-height:56px;color:var(--text-primary);text-align:left;border-radius:16px;padding:12px}.location-row strong,.location-row span{display:block}.location-row span{color:var(--text-secondary);margin-top:2px}.saved-list{gap:10px;display:grid}.saved-location{border:1px solid var(--border-subtle);background:var(--surface-subtle);border-radius:18px;grid-template-columns:1fr;gap:12px;padding:14px;display:grid}.saved-location h4{margin:0 0 4px}.saved-location p{color:var(--text-secondary);margin:0}.badges{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.badges span{background:var(--surface-card);color:var(--accent);border-radius:999px;padding:4px 8px;font-size:.76rem;font-weight:780}.location-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.location-actions .danger{grid-column:1/3}.danger{background:var(--error-bg);color:var(--error-text);border-color:#9a2c2c73}.confirm-box{background:var(--error-bg);border:1px solid #9a2c2c73;border-radius:18px;margin-top:14px;padding:14px;position:sticky;bottom:0;box-shadow:0 8px 26px #5f141424}.confirm-actions{justify-content:flex-end;gap:8px;display:flex}@media (hover:hover) and (pointer:fine){button:not(:disabled):hover{filter:brightness(.98)}.quick-location-chip:not([aria-pressed=true]):hover{border-color:var(--accent)}}@media (width>=560px){.saved-location{grid-template-columns:1fr auto}.location-actions{grid-template-columns:repeat(3,auto);align-content:start}.location-actions .danger{grid-column:auto}}@media (width>=760px){.app{width:min(100%,900px)}.metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.detail-section-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quick-location-list{flex-wrap:wrap;overflow-x:visible}.quick-location-card{align-items:center;gap:14px;display:flex}.quick-location-card h2{margin:0}.location-sheet{border-radius:28px;align-self:center}}@media (width>=1120px){.app,.site-footer{width:min(100%,920px)}}@media (width<=420px){:root{--space-page:14px}.card,.hero{padding:16px}.quick-location-chip{padding-inline:11px}.update-banner,.install-hint{display:grid}.day{grid-template-columns:62px minmax(0,1fr) auto;gap:8px}.day-meta{grid-column:1/-1;margin-top:0}.detail-pair-grid{gap:0 14px}.location-sheet{padding:14px}}@media (orientation:landscape) and (height<=520px){.location-sheet{max-height:94dvh}.hero-temperature{font-size:3.7rem}.card{padding:14px}}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important}.page-shell:before,.page-shell:after,.refresh-icon.is-spinning{animation:none}}
