:root{--bg:#f8fafc;--card:#fff;--text:#0f172a;--text-2:#5e6d84;--text-3:#64748b;--border:#0f172a14;--primary:#2563eb;--primary-600:#1d4ed8;--primary-soft:#eff4fe;--sky:#0284c7;--sky-soft:#e8f5fd;--amber:#d97706;--amber-soft:#fdf3e3;--emerald:#059669;--emerald-soft:#e6f7f0;--violet:#7c3aed;--violet-soft:#f3eefd;--rose:#e11d48;--rose-soft:#fdedf1;--yellow:#ca8a04;--yellow-soft:#fdf6df;--ink-primary:#1d4ed8;--ink-sky:#0369a1;--ink-emerald:#047857;--ink-amber:#b45309;--ink-rose:#be123c;--ink-yellow:#854d0e;--grid-line:#edf1f6;--axis-ink:#64748b;--shadow-sm:0 1px 2px #0f172a0a, 0 2px 8px #0f172a0a;--shadow-md:0 2px 4px #0f172a0a, 0 12px 32px #0f172a14;--shadow-lg:0 4px 8px #0f172a0d, 0 24px 56px #0f172a21;--r-sm:12px;--r-md:20px;--r-lg:24px;--r-xl:28px;--s-1:8px;--s-2:16px;--s-3:24px;--s-4:32px;--s-5:40px;--s-6:48px;--s-8:64px;--font:"InterVariable", "InterVariable Fallback", "InterVariable Fallback Android", system-ui, -apple-system, "Segoe UI", sans-serif;--ease:cubic-bezier(.22, 1, .36, 1);--topnav-h:72px;--sal:env(safe-area-inset-left,0px);--sar:env(safe-area-inset-right,0px)}body[data-theme=dark]{--bg:#0a1428;--card:#112240;--text:#f1f5f9;--text-2:#b3c0d4;--text-3:#8b99ae;--border:#94a3b824;--primary-soft:#3b82f629;--sky-soft:#0284c72e;--amber-soft:#d977062e;--emerald-soft:#0596692e;--violet-soft:#7c3aed2e;--rose-soft:#e11d482e;--yellow-soft:#ca8a042e;--ink-primary:#93c5fd;--ink-sky:#7dd3fc;--ink-emerald:#6ee7b7;--ink-amber:#fcd34d;--ink-rose:#fda4af;--ink-yellow:#fde047;--grid-line:#22304b;--axis-ink:#8b99ae;--shadow-sm:0 1px 2px #00000040, 0 2px 8px #00000040;--shadow-md:0 2px 4px #0000004d, 0 12px 32px #0006;--shadow-lg:0 4px 8px #00000059, 0 24px 56px #00000080}*{box-sizing:border-box}[hidden]{display:none!important}html{scroll-behavior:smooth}h1,h2,h3,h4,p{margin:0}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}ul{margin:0;padding:0;list-style:none}input{font:inherit}@font-face{font-family:InterVariable Fallback;src:local(Arial),local(ArialMT);font-weight:100 500;size-adjust:106%;ascent-override:91.39%;descent-override:22.76%;line-gap-override:0%}@font-face{font-family:InterVariable Fallback;src:local(Arial Bold),local(Arial-BoldMT);font-weight:600 900;size-adjust:101.5%;ascent-override:95.44%;descent-override:23.77%;line-gap-override:0%}@font-face{font-family:InterVariable Fallback Android;src:local(Roboto);size-adjust:107.5%;ascent-override:90.12%;descent-override:22.44%;line-gap-override:0%}body{font-family:var(--font);font-optical-sizing:none;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:16px;line-height:1.5}::selection{background:#2563eb2e}body[data-theme=dark] ::selection{background:#60a5fa4d}.topnav{z-index:100;height:var(--topnav-h);-webkit-backdrop-filter:saturate(1.6)blur(16px);backdrop-filter:saturate(1.6)blur(16px);border-bottom:1px solid var(--border);background:#f8fafcd1;position:sticky;top:0}body[data-theme=dark] .topnav{background:#0a1428d9}.topnav-inner{align-items:center;gap:var(--s-3);width:100%;height:100%;padding:0 var(--s-4);display:flex}.topnav-start{align-items:center;gap:var(--s-2);flex-shrink:0;display:flex}.topnav-center{flex:1;align-items:center;min-width:0;display:flex}@media (width>=901px){.topnav-inner{grid-template-columns:minmax(auto,1fr) minmax(200px,660px) minmax(auto,1fr);max-width:1440px;margin-inline:auto;display:grid}}.logo{color:var(--text);flex-shrink:0;align-items:center;gap:10px;text-decoration:none;display:flex}.brand-logo{object-fit:contain;width:auto;height:46px;display:block}.brand-mark{width:40px;height:40px;display:none}body[data-theme=dark] .brand-logo{background:#f1f5f9f0;border-radius:12px;padding:3px 10px}.topnav-actions{flex-shrink:0;justify-content:flex-end;align-items:center;gap:12px;display:flex}.topnav-actions .icon-btn{border-color:var(--border);border-radius:16px;min-width:44px;height:44px}.topnav-actions .theme-btn{color:var(--text)}.topnav-actions .theme-btn #themeBtnIcon{place-items:center;width:20px;height:20px;line-height:0;display:grid}.topnav-actions .theme-btn #themeBtnIcon svg{display:block}#modeToggle,#modeToggleSide{border-radius:12px}@media (width>=901px){.topnav-actions #modeToggle{margin-right:8px}}#modeToggle button,#modeToggle .seg-thumb,#modeToggleSide button,#modeToggleSide .seg-thumb{border-radius:8px}.theme-wrap,.lang-wrap{position:relative}.lang-btn{font-size:17px}.lang-code{letter-spacing:.05em;font-size:13px;font-weight:700}.menu{z-index:120;background:var(--card);border:1px solid var(--border);min-width:180px;box-shadow:var(--shadow-lg);animation:panelIn .22s var(--ease);border-radius:16px;padding:6px;position:absolute;top:calc(100% + 8px);right:0}.menu button{text-align:left;border-radius:10px;align-items:center;gap:10px;width:100%;padding:10px 12px;font-size:14px;font-weight:500;transition:background .15s;display:flex}.menu button:hover{background:var(--bg)}.menu button[aria-checked=true]{background:var(--primary-soft);color:var(--ink-primary);font-weight:600}.icon-btn.nav-burger{display:none}.sidebar{top:var(--topnav-h);height:calc(100vh - var(--topnav-h));padding:var(--s-4) var(--s-2) var(--s-3) var(--s-3);flex-direction:column;justify-content:space-between;display:flex;position:sticky}.side-list{flex-direction:column;gap:4px;display:flex}.side-item{width:100%;color:var(--text-2);transition:background .2s, color .2s, transform .15s var(--ease);border-radius:14px;align-items:center;gap:14px;padding:11px 14px;font-size:14.5px;font-weight:500;display:flex}.side-item:hover{color:var(--text);background:#0f172a0b}body[data-theme=dark] .side-item:hover{background:#94a3b814}.side-item:active{transform:scale(.98)}.side-item.is-active{background:var(--primary-soft);color:var(--ink-primary);font-weight:600}.side-ico{width:34px;height:34px;transition:transform .25s var(--ease);border-radius:10px;place-items:center;display:grid}.side-item:hover .side-ico{transform:translateY(-1px)}.ico-home{color:var(--primary);background:var(--primary-soft)}.ico-map{color:var(--emerald);background:var(--emerald-soft)}.ico-forecast{color:var(--sky);background:var(--sky-soft)}.ico-fav{color:var(--amber);background:var(--amber-soft)}.ico-about{color:var(--violet);background:var(--violet-soft)}.ico-settings{color:var(--text-2);background:#0f172a0d}body[data-theme=dark] .ico-settings{background:#94a3b81f}.side-badge{color:var(--ink-primary);background:var(--primary-soft);border-radius:999px;margin-left:auto;padding:2px 8px;font-size:11.5px;font-weight:700}.side-foot{gap:var(--s-2);flex-direction:column;padding:0 4px;display:flex}.side-mode button{flex:1}.side-pos{text-align:left;border-radius:var(--r-md);background:var(--card);border:1px solid var(--border);width:100%;box-shadow:var(--shadow-sm);transition:transform .25s var(--ease), box-shadow .25s var(--ease);flex-direction:column;align-items:flex-start;gap:3px;padding:14px;display:flex}.side-pos:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.side-pos.is-collapsed{gap:0;padding:10px 12px}.side-pos.is-collapsed .side-pos-body{min-height:0}.side-pos.is-collapsed .side-pos-wx{display:none}.side-pos.is-collapsed.is-expanded .side-pos-wx{margin-top:4px;display:block}.side-pos-head{letter-spacing:.02em;width:100%;color:var(--ink-primary);align-items:center;gap:6px;font-size:12px;font-weight:700;display:flex}.side-pos-refresh{width:26px;height:26px;color:var(--text-2);border-radius:8px;place-items:center;margin-left:auto;transition:background .2s,color .2s;display:grid}.side-pos-refresh:hover{background:var(--primary-soft);color:var(--ink-primary)}.side-pos-refresh:disabled{opacity:.45;cursor:default}.side-pos-body{text-align:left;flex-direction:column;align-items:flex-start;gap:3px;width:100%;padding:0;display:flex}.side-pos-name{color:var(--text);font-size:13.5px;font-weight:600}.geo-spin{vertical-align:-2px;border:2px solid var(--primary-soft);border-top-color:var(--primary);border-radius:50%;width:12px;height:12px;animation:1s linear infinite geoSpin;display:inline-block}@keyframes geoSpin{to{transform:rotate(360deg)}}.side-pos-wx{color:var(--text-2);align-items:center;gap:6px;font-size:13px;display:inline-flex}.side-pos-wx .wi{width:22px;height:22px}.sidebar-scrim{inset:var(--topnav-h) 0 0 0;z-index:90;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172a59;display:none;position:fixed}.shell{max-width:1520px;min-height:calc(100vh - var(--topnav-h));grid-template-columns:248px minmax(0,1fr);margin:0 auto;display:grid}.main{padding:var(--s-4) var(--s-4) var(--s-6);outline:none;min-width:0}.view{display:none}.view.is-visible{animation:viewIn .45s var(--ease);display:block}@keyframes viewIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.footer{border-top:1px solid var(--border);background:var(--card);margin-top:var(--s-6)}.footer-inner{max-width:1520px;padding:var(--s-6) var(--s-4) var(--s-3);margin:0 auto}.footer-grid{gap:var(--s-3);grid-template-columns:1.5fr repeat(3,minmax(0,.85fr)) 1.2fr;display:grid}.foot-contact{color:var(--text-2);font-size:13px;line-height:1.5}.logo-row{align-items:center;gap:8px;display:inline-flex}.footer-brand-logo{width:auto;height:44px}.footer-brand p{color:var(--text-2);max-width:26ch;margin-top:10px;font-size:13.5px;line-height:1.5}.footer-col{flex-direction:column;align-items:flex-start;gap:2px;min-width:0;display:flex}.footer-col h3{letter-spacing:.01em;color:var(--text);margin-bottom:8px;font-size:13px;font-weight:700}.footer-col button,.footer-col a{color:var(--text-2);text-align:left;padding:5px 0;font-size:13.5px;text-decoration:none;transition:color .2s}.footer-col button:hover,.footer-col a:hover{color:var(--ink-primary)}.footer-bottom{justify-content:space-between;align-items:center;gap:var(--s-2);margin-top:var(--s-4);padding-top:var(--s-3);border-top:1px solid var(--border);flex-wrap:wrap;display:flex}.footer-note{color:var(--text-3);font-size:13px}.icon-btn{min-width:40px;height:40px;color:var(--text-2);transition:background .2s, color .2s, border-color .2s, transform .2s var(--ease);border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:0 10px;display:inline-flex}.icon-btn:hover{background:var(--card);color:var(--text);border-color:var(--border);box-shadow:var(--shadow-sm)}.icon-btn:active{transform:scale(.95)}.btn-primary{background:var(--primary);color:#fff;transition:background .2s, transform .2s var(--ease), box-shadow .2s;border-radius:12px;align-items:center;gap:8px;padding:10px 18px;font-size:13.5px;font-weight:600;display:inline-flex;box-shadow:0 4px 14px #2563eb4d}.btn-primary:hover{background:var(--primary-600);transform:translateY(-1px);box-shadow:0 6px 18px #2563eb59}.btn-primary:active{transform:translateY(0)scale(.97)}.seg-toggle{border:1px solid var(--border);background:#0f172a0e;border-radius:999px;align-items:stretch;height:44px;padding:4px;display:inline-flex;position:relative}body[data-theme=dark] .seg-toggle{background:#94a3b81f}.seg-toggle button{z-index:1;color:var(--text-2);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;padding:0 16px;font-size:13.5px;font-weight:500;transition:color .25s,font-weight .25s;display:inline-flex;position:relative}.seg-toggle button[aria-checked=true]{color:var(--text);font-weight:700}.seg-thumb{z-index:0;background:var(--card);border:1px solid var(--border);width:60px;transition:transform .35s var(--ease), width .35s var(--ease);border-radius:999px;position:absolute;top:4px;bottom:4px;left:4px;box-shadow:0 1px 2px #0f172a14}body[data-theme=dark] .seg-thumb{background:#24314d;box-shadow:0 1px 2px #00000040}.seg-icons{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:12px;gap:4px;padding:4px;display:inline-flex}.seg-icons button{width:34px;height:30px;color:var(--text-2);border-radius:8px;place-items:center;transition:background .2s,color .2s;display:grid}.seg-icons button:hover{color:var(--text)}.seg-icons button[aria-checked=true]{background:var(--primary-soft);color:var(--ink-primary)}.switch{background:#64748b59;border-radius:999px;flex-shrink:0;width:40px;height:23px;margin-left:auto;transition:background .25s;position:relative}.switch:after{content:"";width:18px;height:18px;transition:translate .25s var(--ease);background:#fff;border-radius:50%;position:absolute;top:2.5px;left:2.5px;box-shadow:0 1px 3px #0f172a4d}.switch[aria-checked=true]{background:var(--primary)}.switch[aria-checked=true]:after{translate:17px}.uchips{gap:6px;display:inline-flex}.uchips button{color:var(--text-2);background:var(--bg);border:1px solid var(--border);border-radius:10px;padding:7px 14px;font-size:13px;font-weight:600;transition:background .2s,color .2s,border-color .2s}.uchips button:hover{color:var(--text)}.uchips button[aria-checked=true]{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 2px 8px #2563eb4d}.search-wrap{flex:1;min-width:0;max-width:560px;margin-inline:auto;position:relative}@media (width>=1440px){.search-wrap{max-width:640px}}.search-bar{height:44px;padding:0 var(--s-2);background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow-sm);transition:border-color .2s, box-shadow .3s var(--ease), transform .3s var(--ease);border-radius:16px;align-items:center;gap:12px;display:flex}.search-bar:focus-within{box-shadow:0 0 0 4px #2563eb1a, var(--shadow-md);border-color:#2563eb73}.search-ico{color:var(--text-3);flex-shrink:0}.search-bar input{min-width:0;color:var(--text);background:0 0;border:0;outline:0;flex:1;align-self:stretch;font-size:15px}.search-bar input::placeholder{color:var(--text-3)}.search-bar input::-webkit-search-cancel-button{display:none}.search-kbd{font-family:var(--font);color:var(--text-3);border:1px solid var(--border);background:var(--bg);border-radius:6px;padding:2px 7px;font-size:12px}body[data-theme=dark] .search-kbd{background:#94a3b81f}.search-panel{z-index:110;background:var(--card);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-lg);animation:panelIn .28s var(--ease);transform-origin:top;position:absolute;top:calc(100% + 8px);left:0;right:0;overflow:hidden}@keyframes panelIn{0%{opacity:0;transform:translateY(-6px)scale(.985)}to{opacity:1;transform:none}}.search-results{max-height:380px;padding:8px;overflow-y:auto}.search-item{text-align:left;border-radius:14px;align-items:center;gap:14px;width:100%;padding:10px 12px;transition:background .15s;display:flex}.search-item:hover,[role=option][aria-selected=true]>.search-item{background:var(--primary-soft)}[role=option][aria-selected=true]>.search-item{outline:2px solid var(--primary);outline-offset:-2px}.search-item .si-visual{background:var(--bg);border-radius:10px;flex-shrink:0;place-items:center;width:36px;height:36px;font-size:19px;display:grid;position:relative;overflow:hidden}.search-item .si-name{font-size:15px;font-weight:600}.search-item .si-sub{color:var(--text-2);font-size:13px}.search-item .si-kind{letter-spacing:.04em;text-transform:uppercase;color:var(--text-2);background:var(--bg);border:1px solid var(--border);border-radius:999px;flex-shrink:0;margin-left:auto;padding:4px 10px;font-size:11px;font-weight:600}.search-item.search-more{justify-content:center;min-height:44px}.search-item.search-more .si-name{color:var(--primary);font-size:14px}.search-empty{text-align:center;color:var(--text-2);padding:24px;font-size:14px}.search-group+.search-group{border-top:1px solid var(--border);margin-top:4px;padding-top:4px}.search-group-label{color:var(--text-2);letter-spacing:.04em;text-transform:uppercase;padding:8px 12px 4px;font-size:11.5px;font-weight:700}.search-status{border-top:1px solid var(--border);color:var(--text-2);align-items:center;gap:10px;padding:10px 16px;font-size:13px;display:flex}.search-status:empty,.search-results:empty{display:none}.search-results:empty+.search-status{border-top:0}.search-status .search-retry{flex-shrink:0;margin:0 0 0 auto}.mobile-search-btn{display:none}@media (width<=520px){.search-wrap{display:none}.search-wrap.is-mobile-open{top:var(--topnav-h);z-index:105;max-width:none;padding:10px var(--s-2) 14px;background:var(--bg);border-bottom:1px solid var(--border);box-shadow:var(--shadow-md);margin:0;display:block;position:fixed;left:0;right:0}.search-wrap.is-mobile-open .search-kbd{display:none}.search-wrap.is-mobile-open .search-panel{max-width:100%;margin-top:8px;position:static}.mobile-search-btn{display:inline-flex}}.section-title{letter-spacing:-.025em;font-size:28px;font-weight:700}.section-title.sm{letter-spacing:-.015em;font-size:18px}.section-sub{color:var(--text-2);margin-top:4px;font-size:14.5px}.block{margin-top:var(--s-6)}.block-head{justify-content:space-between;align-items:flex-end;gap:var(--s-2);margin-bottom:var(--s-3);flex-wrap:wrap;display:flex}.block-head--spaced{margin-top:var(--s-3)}.wx-notice:not(:empty){margin-bottom:var(--s-2)}.notice-action{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--card);min-height:36px;color:var(--ink-primary);margin-top:8px;padding:6px 14px;font-size:13px;font-weight:600;transition:background .2s,border-color .2s}.notice-action:hover{background:var(--primary-soft)}.notice-action:disabled{opacity:.65;cursor:progress}body[data-theme=dark] .notice-action{color:color-mix(in srgb, var(--primary) 55%, #fff)}@media (pointer:coarse){.notice-action{min-height:44px}}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}.metric-ico{border-radius:50%;flex-shrink:0;place-items:center;width:34px;height:34px;font-size:16px;display:grid}.tint-blue{background:var(--primary-soft);color:var(--primary)}.tint-sky{background:var(--sky-soft);color:var(--sky)}.tint-amber{background:var(--amber-soft);color:var(--amber)}.tint-emerald{background:var(--emerald-soft);color:var(--emerald)}.tint-violet{background:var(--violet-soft);color:var(--violet)}.tint-rose{background:var(--rose-soft);color:var(--rose)}.pill{color:var(--text-2);background:var(--bg);border:1px solid var(--border);border-radius:999px;padding:5px 12px;font-size:13px;font-weight:600}.empty-state{padding:var(--s-8) var(--s-3);text-align:center;border-radius:var(--r-lg);color:var(--text-2);border:1.5px dashed #0f172a24;grid-column:1/-1}.empty-state .big{margin-bottom:12px;font-size:44px}.empty-state h2{color:var(--text);margin-bottom:4px;font-size:17px}.empty-state .empty-action{margin-top:var(--s-2)}body[data-theme=dark] .empty-state{border-color:#94a3b840}.skeleton{background:#0f172a0f;border-radius:10px;position:relative;overflow:hidden;color:#0000!important}.skeleton:after{content:"";background:linear-gradient(90deg,#0000,#ffffffa6,#0000);animation:1.4s infinite shimmer;position:absolute;inset:0;transform:translate(-100%)}.hero .skeleton{background:#ffffff38}.hero .skeleton:after{background:linear-gradient(90deg,#0000,#ffffff59,#0000)}@keyframes shimmer{to{transform:translate(100%)}}body[data-theme=dark] .skeleton{background:#94a3b81f}.forecast-card{padding:var(--s-3) var(--s-2);text-align:center;border-radius:var(--r-md);background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow-sm);transition:transform .3s var(--ease), box-shadow .3s var(--ease), border-color .3s;animation:cardIn .5s var(--ease) backwards}@keyframes cardIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.forecast-card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.forecast-card.is-today{background:linear-gradient(#fbfdff,#f3f7fe);border-color:#2563eb59}body[data-theme=dark] .forecast-card.is-today{background:linear-gradient(#172a4a,#112240)}.fc-day{font-size:14px;font-weight:700}.fc-date{color:var(--text-2);margin-top:2px;font-size:13px}.fc-icon{width:44px;height:44px;margin:12px auto 8px}.fc-icon .wi{filter:drop-shadow(0 2px 4px #0f172a1f)}.fc-desc{color:var(--text-2);justify-content:center;align-items:center;min-height:2.6em;font-size:13px;display:flex}.fc-temps{justify-content:center;gap:10px;margin-top:8px;font-size:15px;display:flex}.fc-temps .hi{font-weight:700}.fc-temps .lo{color:var(--text-2);font-weight:500}.fc-rain{color:var(--ink-sky);background:var(--sky-soft);border-radius:999px;align-items:center;gap:4px;margin-top:10px;padding:2px 8px;font-size:11.5px;font-weight:500;display:inline-flex}.info-card{padding:var(--s-3);border-radius:var(--r-lg)}.info-title{margin-bottom:var(--s-2);font-size:15px;font-weight:700}.info-head{margin-bottom:var(--s-2);align-items:center;gap:14px;display:flex}.loc-photo{border-radius:inherit;width:100%;height:100%;position:relative;overflow:hidden}.loc-photo-fallback{transition:opacity .3s var(--ease);place-items:center;display:grid;position:absolute;inset:0}.loc-photo-img{object-fit:cover;object-position:center;opacity:0;width:100%;height:100%;transition:opacity .45s var(--ease);border-radius:inherit;position:absolute;inset:0}.loc-photo.has-photo .loc-photo-img{opacity:1}.loc-photo.has-photo .loc-photo-fallback{opacity:0}.loc-credit{z-index:2;text-align:right;overflow-wrap:anywhere;color:#fffffff5;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#020617b8;border-top-left-radius:8px;max-width:100%;padding:3px 7px;font-size:11px;line-height:1.2;text-decoration:none;transition:color .2s,background .2s;position:absolute;bottom:0;right:0}.loc-credit:hover,.loc-credit:focus-visible{color:#fff;background:#020617d9;text-decoration:underline}.loc-credit--inline{width:max-content;color:var(--text-3);background:var(--bg);-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:6px;margin-top:8px;padding:2px 6px;display:inline-flex;position:static}.loc-credit--inline:hover,.loc-credit--inline:focus-visible{color:var(--text-2);background:var(--primary-soft)}.loc-photo.loading:after{content:"";pointer-events:none;background:linear-gradient(100deg,#0000 30%,#ffffff29 50%,#0000 70%) 0 0/220% 100%;animation:1.15s linear infinite locShimmer;position:absolute;inset:0}@keyframes locShimmer{0%{background-position:180% 0}to{background-position:-80% 0}}@media (prefers-reduced-motion:reduce){.loc-photo.loading:after{animation:none}}.loc-img{object-fit:cover;border-radius:inherit;width:100%;height:100%;display:block}.toast{bottom:calc(24px + env(safe-area-inset-bottom,0px));z-index:300;pointer-events:none;text-align:center;background:var(--text);color:#fff;max-width:calc(100vw - 32px);box-shadow:var(--shadow-lg);animation:toastIn .35s var(--ease);border-radius:14px;padding:12px 20px;font-size:14px;font-weight:500;position:fixed;left:50%;transform:translate(-50%)}.toast.has-action{text-align:left;pointer-events:auto;align-items:center;gap:18px;display:flex}.toast-action{color:#93c5fd;font:inherit;text-underline-offset:2px;border-radius:7px;flex-shrink:0;padding:4px 7px;font-weight:800;text-decoration:underline}.toast-action:hover,.toast-action:focus-visible{color:#fff;background:#ffffff21}@keyframes toastIn{0%{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%)}}body[data-theme=dark] .toast{background:#24314d}.confirm-dialog{border-radius:var(--r-lg);width:min(380px,100vw - 24px);max-width:none;max-height:calc(100dvh - 24px);color:var(--text);box-shadow:var(--shadow-lg);background:0 0;border:0;padding:0;overflow:auto}.confirm-dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0f172a8c}.confirm-dialog-card{border:1px solid var(--border);border-radius:inherit;background:var(--card);padding:20px}.confirm-dialog h2{margin:0 0 6px;font-size:18px}.confirm-dialog p{color:var(--text-2);margin:0;font-size:13.5px;line-height:1.55}.confirm-dialog-actions{justify-content:flex-end;gap:10px;margin-top:18px;display:flex}.confirm-dialog-btn{border-radius:var(--r-sm);border:1px solid var(--border);min-height:44px;color:var(--text-2);background:var(--card);padding:8px 15px;font-size:13.5px;font-weight:700}.confirm-dialog-btn:hover,.confirm-dialog-btn:focus-visible{color:var(--text);background:var(--bg)}.confirm-dialog-danger{color:#fff;background:var(--rose);border-color:#0000;box-shadow:0 5px 16px #f43f5e40}.confirm-dialog-danger:hover,.confirm-dialog-danger:focus-visible{color:#fff;background:#e11d48}.confirm-dialog-primary{color:#fff;background:var(--primary);border-color:#0000;box-shadow:0 5px 16px #2563eb3d}.confirm-dialog-primary:hover,.confirm-dialog-primary:focus-visible{color:#fff;background:var(--primary-600)}@media (width<=480px){.confirm-dialog-card{padding:18px}.confirm-dialog-btn{flex:1}}@media (width<=340px){.confirm-dialog-actions{flex-direction:column-reverse}.confirm-dialog-btn{width:100%}}.notif-wrap{position:relative}.notif-badge{background:var(--rose);color:#fff;min-width:16px;height:16px;box-shadow:0 0 0 2px var(--card);border-radius:999px;place-items:center;padding:0 4px;font-size:10.5px;font-weight:700;line-height:1;display:grid;position:absolute;top:4px;right:4px}.notif-panel{flex-direction:column;width:min(360px,100vw - 32px);max-height:min(70vh,520px);padding:0;display:flex;overflow:hidden}.notif-panel-head{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;padding:14px 16px;display:flex}.notif-panel-head h2{margin:0;font-size:15px;font-weight:700}.notif-panel-head button.notif-clear,.notif-panel-head button.notif-mark-read{border-radius:var(--r-sm);border:1px solid var(--border);width:auto;color:var(--text-2);flex-shrink:0;padding:6px 10px;font-size:12.5px;font-weight:600;transition:color .2s,border-color .2s}.notif-panel-head button.notif-clear:hover,.notif-panel-head button.notif-mark-read:hover{color:var(--text);border-color:var(--primary)}#notifPanelBody{overflow-y:auto}.notif-status{color:var(--text-2);text-align:center;margin:0;padding:22px 16px;font-size:13.5px}.notif-status[data-state=error],.notif-status[data-state=offline]{color:var(--ink-rose)}.notif-list{margin:0;padding:6px;list-style:none}.notif-item+.notif-item{border-top:1px solid var(--border)}.notif-list .notif-item-btn{text-align:left;border-radius:12px;align-items:flex-start;gap:10px;width:100%;padding:10px 8px;transition:background .15s;display:flex}.notif-list .notif-item-btn:hover{background:var(--bg)}.notif-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px;margin-top:5px}.notif-body{flex-direction:column;gap:2px;min-width:0;display:flex}.notif-event{color:var(--text);align-items:center;gap:6px;font-size:13.5px;font-weight:700;display:flex}.notif-unread{background:var(--primary);border-radius:50%;flex-shrink:0;width:7px;height:7px}.notif-place{color:var(--text-2);align-items:center;gap:6px;font-size:12.5px;font-weight:600;display:flex}.notif-place .location-flags{height:12px}.notif-meta,.notif-time{color:var(--text-3);font-size:12px}.notif-source{color:var(--text-3);font-size:11.5px}.notif-dot[data-tone=severe],.fav-alert-badge[data-tone=severe]{background:var(--rose)}.notif-dot[data-tone=warning],.fav-alert-badge[data-tone=warning]{background:var(--amber)}.notif-dot[data-tone=caution],.fav-alert-badge[data-tone=caution]{background:var(--yellow)}.notif-dot[data-tone=normal],.fav-alert-badge[data-tone=normal]{background:var(--emerald)}.notif-dot[data-tone=info],.fav-alert-badge[data-tone=info]{background:var(--sky)}@media (width<=520px){.notif-panel{top:calc(var(--topnav-h) + 6px);width:auto;position:fixed;left:8px;right:8px}}[data-tip]{position:relative}@media (hover:hover) and (pointer:fine){[data-tip]:after{content:attr(data-tip);z-index:120;border-radius:var(--r-sm);background:var(--text);width:max-content;max-width:240px;color:var(--bg);box-shadow:var(--shadow-md);text-align:left;white-space:normal;pointer-events:none;--tip-x:-50%;padding:7px 10px;font-size:12.5px;font-weight:500;line-height:1.35;display:none;position:absolute;top:calc(100% + 8px);left:50%}[data-tip][data-tip-align=end]:after{--tip-x:0;left:auto;right:0}[data-tip][data-tip-align=start]:after{--tip-x:0;left:0;right:auto}[data-tip]:hover:after,[data-tip]:focus-visible:after{animation:tipIn .15s var(--ease) .35s backwards;transform:translate(var(--tip-x), 0);display:block}[data-tip]:focus-visible:after{animation-delay:0s}[data-tip][aria-expanded=true]:after{display:none}}@keyframes tipIn{0%{opacity:0;transform:translate(var(--tip-x), -3px)}to{opacity:1;transform:translate(var(--tip-x), 0)}}@media (width<=820px){.map-layer-switcher [data-tip]:after{display:none}}.hero-fx{z-index:0;pointer-events:none;border-radius:inherit;position:absolute;inset:0;overflow:hidden}.hero-fx[hidden]{display:none}.fx-flake{top:0;left:var(--x);width:var(--s);height:100%;animation:fxSnow var(--d) linear var(--dl) infinite;will-change:transform;position:absolute;transform:translateY(-10%)}.fx-flake:before{content:"";aspect-ratio:1;opacity:.72;background:#fff;border-radius:50%;width:100%;position:absolute;top:0;left:0}@keyframes fxSnow{to{transform:translate3d(var(--dr), 100%, 0)}}.fx-wave{opacity:.09;width:200%;height:26%;animation:fxWave var(--wave-dur,22s) linear infinite;will-change:transform;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 40' preserveAspectRatio='none'%3E%3Cpath d='M0 22Q50 4 100 22T200 22T300 22T400 22V40H0Z' fill='%23fff'/%3E%3C/svg%3E") 0 0/50% 100% repeat-x;position:absolute;bottom:0;left:0}.fx-wave--b{opacity:.06;height:19%;animation-direction:reverse;animation-duration:calc(var(--wave-dur,22s) * 1.35)}@keyframes fxWave{to{transform:translate(-50%)}}.fx-flash{opacity:0;background:#dbeafe;animation:19s linear -4s infinite fxFlash;position:absolute;inset:0}@keyframes fxFlash{0%,90%,to{opacity:0}91%{opacity:.22}91.6%{opacity:.04}92.4%{opacity:.16}94%{opacity:0}}.hero-fx[data-motion=static] *{will-change:auto;animation:none}.hero-fx[data-motion=static] .fx-flake{transform:none}.hero-fx[data-motion=static] .fx-flake:before{top:var(--y)}.hero-fx[data-paused=true] *{animation-play-state:paused}@media (prefers-reduced-motion:reduce){.hero-fx *{animation:none}.hero-fx .fx-flake{transform:none}.hero-fx .fx-flake:before{top:var(--y)}}.map-anim-row{display:flex}.map-time.map-anim{border:1px solid #0f172a24;flex:none;align-items:center;gap:6px;display:inline-flex}.map-anim svg{flex:none}.map-time.map-anim[aria-pressed=true]:not([disabled]){background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 4px 10px #2563eb3d}body[data-theme=dark] .map-time.map-anim{border-color:#94a3b847}body[data-theme=dark] .map-time.map-anim[aria-pressed=true]:not([disabled]){border-color:var(--primary);color:#fff}@media (pointer:coarse),(width<=820px){.map-time.map-anim{min-height:44px}}.chart-tabs{background:#0f172a0e;border-radius:999px;flex-wrap:wrap;gap:6px;padding:4px;display:inline-flex}body[data-theme=dark] .chart-tabs{background:#94a3b81f}.chart-tabs button{color:var(--text-2);border-radius:999px;padding:7px 16px;font-size:13px;font-weight:600;transition:background .25s,color .25s,box-shadow .25s}.chart-tabs button:hover{color:var(--text)}.chart-tabs button[aria-selected=true]{background:var(--card);color:var(--text);box-shadow:0 1px 3px #0f172a1f}body[data-theme=dark] .chart-tabs button[aria-selected=true]{background:#24314d;box-shadow:0 1px 3px #0006}#chartTabs,#fcTabs{border:1px solid var(--border);border-radius:12px;gap:4px;padding:4px}#chartTabs button,#fcTabs button{border-radius:8px;padding:7px 12px}.chart-card{padding:var(--s-3);border-radius:var(--r-lg)}.chart-host{width:100%;height:300px;position:relative}.chart-host svg{width:100%;height:100%;display:block;overflow:visible}.chart-tooltip{z-index:5;pointer-events:none;background:var(--text);color:#fff;box-shadow:var(--shadow-lg);opacity:0;transition:opacity .15s, transform .2s var(--ease);white-space:nowrap;border-radius:12px;padding:10px 14px;font-size:13px;line-height:1.35;position:absolute;transform:translate(-50%,-8px)}body[data-theme=dark] .chart-tooltip{background:#24314d}.chart-tooltip.on{opacity:1;transform:translate(-50%,-14px)}.chart-tooltip .tt-val{font-size:17px;font-weight:700}.chart-tooltip .tt-time{opacity:.72;font-size:11.5px}.chart-cross,.chart-dot{transition:opacity .15s}.flag{aspect-ratio:auto;object-fit:contain;clip-path:inset(0 round 3px);vertical-align:-3px;border-radius:3px;flex-shrink:0;width:auto;height:16px;display:inline-block}.flag-txt{aspect-ratio:auto;letter-spacing:.04em;width:auto;color:var(--text-2);background:var(--bg);border:1px solid var(--border);vertical-align:1px;border-radius:4px;padding:1px 4px;font-size:10px;font-weight:700}.hero-loc-kicker .flag{vertical-align:-4px;height:15px}.hero-region .flag{vertical-align:-3px;height:14px}.si-visual .flag{border-radius:4px;height:19px}.explore-emoji .flag{border-radius:12px;height:90px;box-shadow:0 8px 24px #0206174d}.explore-country .flag{vertical-align:-3px;height:13px}.hero-landmark .flag{border-radius:24px;height:195px}.menu .flag,.seg-toggle .flag{vertical-align:-3px;height:14px}.location-flags{vertical-align:-.32em;flex-wrap:nowrap;align-items:center;gap:7px;display:inline-flex}.location-flag-wrap{flex:none;align-items:center;width:auto;height:25px;display:inline-flex;overflow:visible}.location-flags--small .location-flag-wrap{height:19px}.location-flag-wrap img,.location-flag-wrap>.flag{object-fit:contain;background:0 0;flex-shrink:0;display:block;transform:none;aspect-ratio:auto!important;width:auto!important;min-width:0!important;max-width:none!important;height:100%!important}.location-flag-wrap img{border-radius:2.5px}.wi{width:100%;height:100%;display:block}.wi .sun-core{transform-origin:32px 32px}.wi .sun-rays{transform-box:view-box;transform-origin:var(--sun-cx,32px) var(--sun-cy,32px);animation:26s linear infinite spinSlow}@keyframes spinSlow{to{transform:rotate(360deg)}}.wi .cloud-a{animation:8s ease-in-out infinite alternate drift}.wi .cloud-b{animation:10s ease-in-out infinite alternate-reverse drift}@keyframes drift{0%{transform:translate(-1px)}to{transform:translate(1.4px)}}.wi .drop{opacity:0;animation:1.8s ease-in infinite dropFall}.wi .drop.d3{animation-delay:.9s}.wi .drop-fix{opacity:.9}.wi .flake-fix{opacity:.95}@keyframes dropFall{0%{opacity:0;transform:translateY(-2px)}25%{opacity:1}75%{opacity:1}to{opacity:0;transform:translateY(7px)}}.wi .flake{opacity:0;transform-origin:50%;animation:2.6s linear infinite flakeFall}.wi .flake.d2{animation-delay:.8s}.wi .flake.d3{animation-delay:1.7s}@keyframes flakeFall{0%{opacity:0;transform:translateY(-2px)rotate(0)}20%{opacity:1}80%{opacity:1}to{opacity:0;transform:translateY(8px)rotate(120deg)}}.wi .bolt{transform-origin:50%;animation:6s ease-in-out infinite boltFlash}@keyframes boltFlash{0%,78%,92%,to{opacity:1}84%{opacity:.55}}.wi .moon{transform-origin:32px 32px;animation:9s ease-in-out infinite alternate moonSway}@keyframes moonSway{0%{transform:rotate(-1.5deg)}to{transform:rotate(2deg)}}.wi .star{animation:3.2s ease-in-out infinite alternate twinkle}.wi .star.d2{animation-delay:1.1s}@keyframes twinkle{0%{opacity:.55}to{opacity:1}}.wi .fog-line{animation:4.5s ease-in-out infinite alternate fogSlide}.wi .fog-line.d2{animation-direction:alternate-reverse;animation-delay:.8s}@keyframes fogSlide{0%{transform:translate(-2.5px)}to{transform:translate(2.5px)}}.home-grid{grid-template-columns:minmax(0,1.25fr) minmax(360px,.95fr);align-items:stretch;gap:20px;display:grid}.hero{border-radius:var(--r-xl);color:#fff;min-height:410px;box-shadow:var(--shadow-md);isolation:isolate;border:0;display:flex;position:relative;overflow:hidden}.hero-bg{z-index:-2;background:linear-gradient(150deg,#3b82f6,#1d4ed8);transition:opacity .6s;position:absolute;inset:0}.hero-bg:after{content:"";background:var(--hero-text-scrim,linear-gradient(transparent, transparent)), radial-gradient(120% 90% at 85% -10%, #ffffff47, transparent 55%), radial-gradient(90% 70% at 10% 110%, #02061761, transparent 60%);position:absolute;inset:0}.hero-bg:before{content:"";background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 200' preserveAspectRatio='none'%3E%3Cpath d='M0 200V128l55-46 50 40 62-60 53 48 55-32 52 38 73-28v112z' fill='%23020617' fill-opacity='.20'/%3E%3Cpath d='M0 200v-46l70-40 65 36 70-48 65 40 65-26 65 32v52z' fill='%23020617' fill-opacity='.30'/%3E%3C/svg%3E") bottom/100% 100% no-repeat;height:52%;position:absolute;bottom:0;left:0;right:0}.hero-landmark{z-index:-1;opacity:.28;filter:saturate(.9);width:380px;height:300px;animation:landmarkIn 1s var(--ease);-webkit-user-select:none;user-select:none;pointer-events:none;position:absolute;bottom:-26px;right:-8px;transform:rotate(-4deg)}.hero-landmark .loc-photo-fallback{font-size:230px;line-height:1}@keyframes landmarkIn{0%{opacity:0;transform:rotate(-4deg)translateY(30px)scale(.92)}to{opacity:.28;transform:rotate(-4deg)translateY(0)scale(1)}}.hero-landmark:has(.loc-photo.has-photo){opacity:1;filter:none;width:100%;height:100%;animation:none;inset:0;transform:none}.loc-photo.hero-photo.has-photo:after{content:"";pointer-events:none;border-radius:inherit;background:linear-gradient(90deg,#02061799 0%,#0206175c 42%,#02061714 100%);position:absolute;inset:0}.hero:has(.hero-landmark .loc-photo.has-photo) .hero-bg:before{display:none}.hero-inner{z-index:1;width:100%;padding:var(--s-4);flex-direction:column;display:flex;position:relative}.hero-top{justify-content:space-between;align-items:flex-start;gap:var(--s-2);display:flex}.hero-head{text-align:center;margin-top:6px}.hero-main{padding-top:var(--s-3);margin-top:auto}.hero-updated{margin-top:var(--s-3);opacity:.92;text-shadow:0 1px 8px #0206178c;align-items:center;gap:7px;font-size:13px;display:flex}.hero-live{align-items:center;gap:6px;margin-left:auto;font-weight:600;display:inline-flex}.hero-live.is-offline .pulse-dot{box-shadow:none;background:#fbbf24;animation:none}.hero-loc-kicker{letter-spacing:.02em;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff29;border:1px solid #ffffff38;border-radius:999px;align-items:center;gap:8px;padding:6px 14px;font-size:13px;font-weight:600;display:inline-flex}.hero-clock{font-variant-numeric:tabular-nums;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff29;border:1px solid #ffffff38;border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:600;display:inline-flex}.hero-city{letter-spacing:-.03em;text-shadow:0 2px 24px #02061740;align-items:center;gap:12px;margin-top:16px;font-size:42px;font-weight:800;line-height:1.08;display:flex}.hero-region{opacity:.92;flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:2px 6px;margin-top:8px;font-size:15px;font-weight:500;display:flex}.hero-fav-btn{color:#ffffffd9;width:38px;height:38px;transition:transform .2s var(--ease), background .2s, color .2s;border-radius:12px;flex-shrink:0;place-items:center;display:grid}.hero-fav-btn:hover{color:#fff;background:#ffffff2e;transform:scale(1.08)}.hero-fav-btn:active{transform:scale(.92)}.hero-fav-btn.is-fav svg{fill:#fbbf24;stroke:#fbbf24}.hero-now{align-items:center;gap:18px;display:flex}.hero-now-txt{min-width:0}.hero-wicon{filter:drop-shadow(0 6px 16px #02061740);flex-shrink:0;width:88px;height:88px}.hero-temp{letter-spacing:-.04em;text-shadow:0 2px 24px #02061733;font-size:68px;font-weight:800;line-height:1}.hero-temp sup{vertical-align:14px;opacity:.9;font-size:.42em;font-weight:700}.hero-desc{margin-top:6px;font-size:20px;font-weight:600}.hero-hl{opacity:.95;text-shadow:0 1px 8px #0206178c;gap:16px;margin-top:10px;font-size:15px;font-weight:500;display:flex}.hero-hl b{font-weight:700}.pulse-dot{background:#4ade80;border-radius:50%;width:7px;height:7px;animation:2.4s 3 pulse;box-shadow:0 0 #4ade8099}@keyframes pulse{0%{box-shadow:0 0 #4ade808c}70%{box-shadow:0 0 0 7px #4ade8000}to{box-shadow:0 0 #4ade8000}}.hero-bg[data-sky=clear-day]{background:linear-gradient(150deg,#38bdf8 0%,#2563eb 78%)}.hero-bg[data-sky=clear-night]{background:linear-gradient(150deg,#1e293b 0%,#0f172a 80%)}.hero-bg[data-sky=cloudy-day]{background:linear-gradient(150deg,#64748b 0%,#334155 85%)}.hero-bg[data-sky=cloudy-night]{background:linear-gradient(150deg,#334155 0%,#0f172a 85%)}.hero-bg[data-sky=rain]{background:linear-gradient(150deg,#475569 0%,#1e3a8a 90%)}.hero-bg[data-sky=snow]{background:linear-gradient(150deg,#94a3b8 0%,#475569 90%)}.hero-bg[data-sky=storm]{background:linear-gradient(150deg,#3730a3 0%,#111827 90%)}.hero-bg[data-sky=fog]{background:linear-gradient(150deg,#94a3b8 0%,#64748b 90%)}.hero-bg[data-sky=clear-day],.hero-bg[data-sky=snow],.hero-bg[data-sky=fog]{--hero-text-scrim:linear-gradient(to right, #02061742 0%, #02061733 50%, #02061724 100%)}.metrics{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--card);min-width:0;box-shadow:var(--shadow-sm);flex-direction:column;gap:14px;padding:20px;display:flex}.metrics-heading{justify-content:space-between;align-items:center;gap:var(--s-2);display:flex}.metrics-heading h2{letter-spacing:-.015em;font-size:18px;font-weight:700}.metrics-heading span{color:var(--ink-emerald);font-size:11px;font-weight:700}.metrics-grid{flex:1;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-auto-rows:minmax(0,1fr);gap:12px;display:grid}.metric-card{border-radius:var(--r-sm);background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow-sm);transition:transform .3s var(--ease), box-shadow .3s var(--ease);animation:cardIn .5s var(--ease) backwards;padding:15px;position:relative}.metric-card[data-metric=feelsLike]{order:1}.metric-card[data-metric=humidity]{order:2}.metric-card[data-metric=windSpeed]{order:3}.metric-card[data-metric=rainNext12h]{order:4}.metric-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.metric-head{align-items:center;gap:10px;display:flex}.metric-label{letter-spacing:.015em;color:var(--text-2);font-size:13px;font-weight:600}.metric-value{letter-spacing:-.02em;align-items:baseline;gap:4px;margin-top:10px;font-size:24px;font-weight:700;display:flex}.metric-value .unit{color:var(--text-2);font-size:14px;font-weight:600}.metric-foot{color:var(--text-2);margin-top:4px;font-size:13px}.detailed-only{display:none}body[data-mode=detailed] .detailed-only{animation:viewIn .5s var(--ease);display:block}.metric-card.detailed-only{display:none}body[data-mode=detailed] .metric-card.detailed-only{display:block}.simple-only{display:none}body[data-mode=simple] .simple-only{animation:viewIn .5s var(--ease);display:block}#metricsGridDetailed,body[data-mode=detailed] #metricsGrid{display:none}body[data-mode=detailed] #metricsGridDetailed{gap:var(--s-2);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}body[data-mode=detailed] .home-grid{align-items:center}@media (width>=1081px){body[data-mode=detailed] .hero{height:590px;min-height:0}}@media (width>=1241px){body[data-mode=detailed] .hero{height:650px}}.metric-group{border-radius:var(--r-md);background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow-sm);transition:transform .3s var(--ease), box-shadow .3s var(--ease);animation:cardIn .5s var(--ease) backwards;padding:15px 16px}.metric-group:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.mg-head{align-items:center;gap:8px;display:flex}.mg-head .metric-ico{width:26px;height:26px;font-size:13px}.mg-title{letter-spacing:.015em;color:var(--text-2);font-size:12.5px;font-weight:600}.mg-primary{letter-spacing:-.02em;margin-top:9px;font-size:21px;font-weight:700}.mg-primary .unit{color:var(--text-2);font-size:12.5px;font-weight:600}.mg-rows{border-top:1px solid var(--border);margin-top:9px;padding-top:9px}.mg-row{align-items:baseline;gap:6px;font-size:12.5px;line-height:1.7;display:flex}.mg-row .metric-ico{width:18px;height:18px;margin-right:2px;font-size:10px}.mg-row-label{color:var(--text-2)}.mg-row-value{margin-left:auto;font-weight:600}.mg-status{color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;margin-top:8px;font-size:12px;overflow:hidden}.mg-rows-eq{border-top:0;flex-direction:column;gap:7px;margin-top:9px;padding-top:0;display:flex}.mg-rows-eq .mg-row{font-size:14px}.mg-rows-eq .mg-row-value{font-size:16px;font-weight:700}@media (width<=480px){.mg-row{flex-direction:column;align-items:flex-start;gap:0}.mg-row-value{margin-left:0}}.advisory-region{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--card);box-shadow:var(--shadow-sm);margin-top:18px;padding:14px 16px 12px}.advisory-region-title{letter-spacing:-.015em;margin:0 0 10px;font-size:17px;font-weight:700}.advisory-list{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr);gap:10px;display:grid}.advisory{background:var(--bg);border:1px solid var(--border);border-left:3px solid var(--adv-accent);border-radius:var(--r-sm);min-width:0;box-shadow:var(--shadow-sm);gap:10px;padding:12px 13px;display:flex}.advisory.is-primary{background:color-mix(in srgb, var(--adv-soft) 45%, var(--card))}.advisory.is-secondary{align-items:center}.adv--high{--adv-accent:var(--rose);--adv-soft:var(--rose-soft)}.adv--moderate{--adv-accent:var(--amber);--adv-soft:var(--amber-soft)}.adv--low{--adv-accent:var(--sky);--adv-soft:var(--sky-soft)}.adv-icon{width:32px;height:32px;color:var(--adv-accent);background:var(--adv-soft);border-radius:10px;flex-shrink:0;place-items:center;display:grid}.adv-icon svg{width:18px;height:18px}.adv-body{min-width:0}.adv-kicker{letter-spacing:.02em;text-transform:uppercase;color:var(--text-2);flex-wrap:wrap;align-items:center;gap:8px;font-size:11.5px;font-weight:600;display:flex}.adv-sev{color:var(--adv-accent);background:var(--adv-soft);border-radius:999px;padding:1px 8px;font-size:11px}.adv-title{letter-spacing:-.01em;margin:4px 0 0;font-size:14px;font-weight:700}.adv-time{color:var(--text-2);font-size:12px;font-weight:600}.adv-desc{color:var(--text);margin:3px 0 0;font-size:13px}.adv-meta{color:var(--text-2);margin:3px 0 0;font-size:11.5px}.adv-meta b{color:var(--text);font-weight:600}.adv-when,.advisory.is-secondary .adv-kicker>span:first-child,.advisory.is-secondary .adv-meta{display:none}.advisory.is-secondary .adv-title{margin-top:1px}.advisory.is-secondary .adv-desc{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.adv-disclaimer{color:var(--text-3);grid-column:1/-1;margin:0;font-size:11px}@media (width<=1080px){.advisory-list{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}}.advisory:only-of-type{grid-column:1/-1;width:100%}@media (width>=721px){.advisory-list:has(.advisory:first-of-type:nth-last-of-type(2)){grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}@media (width<=720px){.advisory-list{grid-template-columns:minmax(0,1fr)}.advisory{gap:10px;padding:12px 14px}.adv-kicker{font-size:11px}.advisory.is-secondary .adv-desc{white-space:normal}}.home-hourly-block{margin-top:18px}.home-hourly-block .block-head{margin-bottom:10px}.home-hourly-block .hourly-card{margin-top:0;padding:10px 12px}.home-hourly-block .hourly-strip{padding:2px 0}.home-hourly-block .hour-cell{padding:11px 6px}.home-hourly-block .hour-cell .h-icon{margin:7px auto 5px}.forecast-row{gap:var(--s-2);grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.home-hourly-block .hourly-strip:empty{min-height:115px}.forecast-row:empty{min-height:255px}@media (width<=1080px){body[data-mode=simple] .metrics-grid:empty{min-height:283px}.forecast-row:empty{min-height:273px}}@media (width<=720px){.forecast-row:empty{min-height:269px}}@media (width<=480px){body[data-mode=simple] .metrics-grid:empty{min-height:293px}}@media (width<=374px){body[data-mode=simple] .metrics-grid:empty{min-height:373px}}.home-duo{gap:var(--s-3);grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);align-items:start;display:grid}body[data-mode=simple] .home-duo{grid-template-columns:minmax(0,1fr)}.duo-col .section-title{margin-bottom:var(--s-2)}.insights-list{gap:var(--s-2);flex-direction:column;display:flex}@media (width>=1081px){body[data-mode=detailed] .home-duo{align-items:stretch}body[data-mode=detailed] .home-duo>.duo-col{flex-direction:column;display:flex}body[data-mode=detailed] .insights-list{flex:1;justify-content:center}}.insight-card{border-radius:var(--r-md);background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow-sm);animation:cardIn .5s var(--ease) backwards;align-items:center;gap:14px;padding:16px 18px;display:flex}.insight-emoji{border-radius:50%;flex-shrink:0;place-items:center;width:44px;height:44px;font-size:22px;display:grid}.insight-body{min-width:0}.insight-card h3{font-size:14.5px;font-weight:700}.insight-card p{color:var(--text-2);margin-top:3px;font-size:13px;line-height:1.45}.insight-value{text-align:right;flex-direction:column;flex-shrink:0;gap:1px;margin-left:auto;display:flex}.insight-value b{letter-spacing:-.01em;font-size:17px;font-weight:700}.insight-value span{color:var(--text-2);font-size:11.5px}.map-mini{border-radius:var(--r-lg);padding:12px}#homeMap{border-radius:var(--r-sm);z-index:0;background:#0b2545;height:clamp(360px,30vw,460px);overflow:hidden}.carousel-nav{gap:8px;display:flex}.carousel{gap:var(--s-2);scroll-snap-type:x mandatory;padding:6px 4px 18px;display:flex;overflow-x:auto}.explore-card{border-radius:var(--r-md);scroll-snap-align:start;color:#fff;text-align:left;height:260px;box-shadow:var(--shadow-sm);transition:transform .35s var(--ease), box-shadow .35s var(--ease);isolation:isolate;flex:0 0 220px;position:relative;overflow:hidden}.explore-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-6px)scale(1.02)}.explore-card:active{transform:translateY(-2px)scale(1)}.explore-bg{z-index:-2;position:absolute;inset:0}.explore-bg:after{content:"";background:linear-gradient(#02061700 30%,#0206178c 100%);position:absolute;inset:0}.explore-emoji{z-index:-1;opacity:.85;transition:transform .45s var(--ease), opacity .45s ease;-webkit-user-select:none;user-select:none;font-size:108px;line-height:1;position:absolute;top:14px;right:-6px;transform:rotate(-6deg)}.explore-card:hover .explore-emoji{transform:rotate(0)scale(1.08)}.explore-bg.has-photo~.explore-emoji{opacity:0}.explore-open{z-index:1;border-radius:inherit;position:absolute;inset:0}.explore-open:focus-visible{outline-offset:-4px;outline:3px solid #fff}.explore-credit{z-index:2;border-radius:0 var(--r-md) 0 8px;max-width:calc(100% - 10px);top:0;bottom:auto;right:0}.explore-credit[data-provider=pexels]{display:none}.explore-txt{position:absolute;bottom:16px;left:18px;right:18px}.explore-name{letter-spacing:-.01em;text-shadow:0 1px 12px #02061766;font-size:18px;font-weight:700}.explore-country{opacity:.92;align-items:center;gap:6px;margin-top:2px;font-size:13px;display:flex}.map-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.map-filters{gap:12px}.chip{background:var(--card);border-style:solid;border-width:1px;border-color:var(--border);height:44px;color:var(--text-2);box-shadow:var(--shadow-sm);transition:color .2s, border-color .2s, background .2s, box-shadow .2s, transform .2s var(--ease);border-radius:999px;align-items:center;gap:9px;padding:0 18px;font-size:14px;font-weight:600;display:inline-flex}.chip:not(.is-active):hover{color:var(--text);border-color:var(--border);transform:translateY(-1px)}.chip:not(.is-active):active{box-shadow:var(--shadow-sm);transform:translateY(0)}.chip.is-active{color:#fff;background:var(--primary);border-color:var(--primary-600)}.chip.is-active:active{background:var(--primary-600)}.chip-icon{flex-shrink:0;justify-content:center;align-items:center;width:34px;height:16.5px;display:flex}.chip-icon svg{border-radius:3px;width:22px;height:16.5px}.chip-icon img,.chip-icon .flag{object-fit:contain;border-radius:3px;width:auto;height:16.5px;display:block}.map-filters .chip{background:var(--card);border-color:#94a3b847;border-radius:9px;height:42px;padding:0 16px;box-shadow:0 4px 12px #0f172a12}.map-filters .chip:not(.is-active):hover{border-color:var(--primary-300);box-shadow:0 6px 16px #0f172a1a}.map-filters .chip.is-active{border-color:var(--primary);background:var(--primary);box-shadow:0 7px 16px #2563eb40}body[data-theme=dark] .map-filters .chip{border-color:var(--border);background:var(--card);box-shadow:var(--shadow-sm)}body[data-theme=dark] .map-filters .chip.is-active{border-color:var(--primary);background:var(--primary);color:#fff}.map-actions .icon-btn{background:var(--card);border-color:var(--border);box-shadow:var(--shadow-sm)}.map-share-chip{border-radius:12px}.map-card{isolation:isolate;margin-top:var(--s-3);padding:var(--s-3);border-radius:var(--r-xl);--map-ctrl-top:146px;--map-ctrl-left:12px;position:relative;overflow:hidden}.map-card:fullscreen{padding:var(--s-2);background:var(--card);border-radius:0}.map-card:fullscreen #worldMap{height:calc(100vh - 32px)}.map-popup{min-width:190px}.mp-wx{border-top:1px solid var(--border);align-items:center;gap:8px;margin-top:10px;padding-top:10px;display:flex}.mp-wx .wi{flex-shrink:0;width:38px;height:38px}.mp-wx b{font-size:17px;display:block}.mp-wx span{color:var(--text-2);font-size:12px}.mp-link{color:var(--ink-primary);margin-top:10px;padding:0;font-size:13px;font-weight:700}.mp-link:hover{text-decoration:underline}.map-info-grid{margin-top:var(--s-3);gap:var(--s-2);grid-template-columns:1fr 1fr 1fr;align-items:start;display:grid}.info-visual{color:#fff;border-radius:12px;flex-shrink:0;width:96px;height:66px;overflow:hidden}.info-visual .loc-photo-fallback{font-size:34px}.info-visual .flag{height:35px}.info-name{align-items:center;gap:6px;font-size:15px;display:flex}.info-name .flag{height:14px}.info-sub{color:var(--text-2);margin-top:2px;font-size:13px}.facts{grid-template-columns:repeat(3,1fr);gap:14px 10px;margin:0;display:grid}.facts dt{color:var(--text-3);font-size:11.5px;font-weight:600}.facts dd{overflow-wrap:anywhere;margin:2px 0 0;font-size:13px;font-weight:600}.cond-main{align-items:center;gap:12px;display:flex}.cond-icon{flex-shrink:0;width:64px;height:64px}.cond-icon .wi{filter:drop-shadow(0 2px 4px #0f172a1f)}.cond-main b{letter-spacing:-.02em;font-size:30px;font-weight:700;display:block}.cond-main span{color:var(--text-2);font-size:13.5px}.cond-stats{margin-top:var(--s-2);padding-top:var(--s-2);border-top:1px solid var(--border);grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.cond-stats dt{color:var(--text-3);font-size:11.5px;font-weight:600}.cond-stats dd{margin:3px 0 0;font-size:14.5px;font-weight:700}.pop-list{flex-direction:column;display:flex}.pop-row{text-align:left;border-radius:12px;align-items:center;gap:10px;width:100%;padding:9px 8px;transition:background .15s;display:flex}.pop-row:hover{background:var(--bg)}.pop-row+.pop-row{border-top:1px solid var(--border)}.pop-row .flag{height:15px}.pop-names{flex-direction:column;min-width:0;display:flex}.pop-names b{font-size:13.5px}.pop-names span{color:var(--text-2);font-size:11.5px}.pop-wx{align-items:center;gap:6px;margin-left:auto;display:inline-flex}.pop-wx b{font-size:14px}.pop-wx .wi{width:26px;height:26px}#worldMap{border-radius:var(--r-md);z-index:0;background:#e8eef5;height:680px;overflow:hidden;box-shadow:inset 0 0 0 1px #0f172a1a}@media (width<=1439px){#worldMap{height:600px}}@media (width<=1023px){#worldMap{height:500px}}@media (width<=767px){#worldMap{height:410px}}@media (width<=389px){#worldMap{height:370px}}.map-pin-icon{cursor:pointer;width:18px;height:18px;position:relative}.map-pin-icon .map-dot,.map-pin-icon .map-ping,.map-pin-icon .map-focus-ring{position:absolute;top:50%;left:50%;translate:-50% -50%}.map-focus-ring{z-index:0;pointer-events:none;background:radial-gradient(circle,#2563eb3d 0%,#2563eb1a 70%,#0000 100%);border:2.5px solid #2563ebeb;border-radius:50%;width:48px;height:48px;box-shadow:0 0 0 3px #ffffffe0,0 0 0 9px #2563eb2e,0 2px 10px #0f172a4d}.maplibregl-map{font-family:var(--font);border-radius:var(--r-sm)}.maplibregl-popup-content{box-shadow:var(--shadow-lg);font-family:var(--font);border-radius:14px;padding:12px 16px}.maplibregl-popup-close-button{color:var(--text-2);padding:2px 8px;font-size:16px}.maplibregl-ctrl-group{box-shadow:var(--shadow-sm);border-radius:10px;overflow:hidden}.map-reset-btn{color:#333;justify-content:center;align-items:center;display:flex}body[data-theme=dark] .map-reset-btn{color:#ccc}.maplibregl-ctrl-group button.maplibregl-ctrl-zoom-in,.maplibregl-ctrl-group button.maplibregl-ctrl-zoom-out,.maplibregl-ctrl-group button.map-reset-btn,.maplibregl-ctrl-group button.maplibregl-ctrl-geolocate{width:44px;height:44px}.map-popup .mp-name{align-items:center;gap:6px;font-size:14.5px;display:flex}.map-popup .mp-name .flag{height:14px}.map-popup .mp-sub{color:var(--text-2);margin-top:3px;font-size:13px}body[data-theme=dark] .maplibregl-popup-content{background:var(--card);color:var(--text)}body[data-theme=dark] .maplibregl-popup-anchor-bottom .maplibregl-popup-tip{border-top-color:var(--card)}body[data-theme=dark] .maplibregl-popup-anchor-top .maplibregl-popup-tip{border-bottom-color:var(--card)}body[data-theme=dark] .maplibregl-popup-anchor-left .maplibregl-popup-tip{border-right-color:var(--card)}body[data-theme=dark] .maplibregl-popup-anchor-right .maplibregl-popup-tip{border-left-color:var(--card)}body[data-theme=dark] .maplibregl-ctrl-group,body[data-theme=dark] .maplibregl-ctrl-group button{background:var(--card)}#worldMap .maplibregl-ctrl-attrib,#homeMap .maplibregl-ctrl-attrib,#worldMap .maplibregl-ctrl-logo,#homeMap .maplibregl-ctrl-logo{opacity:.52;transition:opacity .2s}#worldMap .maplibregl-ctrl-logo,#homeMap .maplibregl-ctrl-logo{transform-origin:0 100%;scale:.82}#worldMap .maplibregl-ctrl-attrib:hover,#homeMap .maplibregl-ctrl-attrib:hover,#worldMap .maplibregl-ctrl-attrib:focus-within,#homeMap .maplibregl-ctrl-attrib:focus-within,#worldMap .maplibregl-ctrl-logo:hover,#homeMap .maplibregl-ctrl-logo:hover,#worldMap .maplibregl-ctrl-logo:focus-visible,#homeMap .maplibregl-ctrl-logo:focus-visible{opacity:1}body[data-theme=dark] .maplibregl-ctrl button .maplibregl-ctrl-icon{filter:invert()hue-rotate(180deg)}#worldMap,#homeMap{position:relative}#worldMap.is-loading:before,#homeMap.is-loading:before{content:"";z-index:5;background:var(--bg);position:absolute;inset:0}#worldMap.is-loading:after,#homeMap.is-loading:after{content:"";z-index:6;border:3px solid var(--primary-soft);border-top-color:var(--primary);border-radius:50%;width:28px;height:28px;margin:-14px 0 0 -14px;animation:1s linear infinite geoSpin;position:absolute;top:50%;left:50%}.map-dot{z-index:2;background:var(--primary);width:14px;height:14px;animation:markerDrop .6s var(--ease);border:3px solid #fff;border-radius:50%;box-shadow:0 2px 10px #02061780}@keyframes markerDrop{0%{opacity:0;transform:translateY(-16px)}60%{opacity:1;transform:translateY(2px)}to{transform:translateY(0)}}.map-ping{z-index:1;opacity:0;background:#60a5facc;border-radius:50%;width:14px;height:14px;animation:2.4s ease-out 3 mapPulse;position:absolute}@keyframes mapPulse{0%{opacity:.8;transform:scale(1)}80%,to{opacity:0;transform:scale(3.4)}}.user-loc-dot{width:18px;height:18px;position:relative}.user-loc-dot .uld-core,.user-loc-dot .uld-halo{border-radius:50%;position:absolute;top:50%;left:50%;translate:-50% -50%}.user-loc-dot .uld-core{background:#4285f4;border:2.5px solid #fff;width:14px;height:14px;box-shadow:0 0 0 1px #4285f480,0 1px 4px #00000059}.user-loc-dot .uld-halo{background:#4285f459;width:14px;height:14px;animation:2s ease-out infinite uldPulse}@keyframes uldPulse{0%{opacity:.6;transform:translate(-50%,-50%)scale(1)}70%,to{opacity:0;transform:translate(-50%,-50%)scale(3.2)}}@media (prefers-reduced-motion:reduce){.user-loc-dot .uld-halo{opacity:.3;animation:none}}.map-offline{height:100%;padding:var(--s-3);text-align:center;color:var(--text-2);place-items:center;margin:0;font-size:14px;display:grid}.map-offline .notice{text-align:left;max-width:440px}.map-layer-switcher{z-index:4;border:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff0;border-radius:14px;flex-direction:column;gap:8px;max-width:calc(100% - 56px);padding:8px;display:flex;position:absolute;top:28px;left:28px;box-shadow:0 8px 24px #0f172a2e}@media (width>=821px){.map-layer-switcher{max-width:calc(100% - 422px)}.map-card:has(>.map-weather-panel[hidden]) .map-layer-switcher{max-width:calc(100% - 56px)}}.map-layer-row{scrollbar-width:none;align-items:center;gap:8px;display:flex;position:relative;overflow-x:auto}.map-layer-row::-webkit-scrollbar{display:none}.map-layer{color:#53627a;white-space:nowrap;background:#0f172a0a;border-radius:10px;flex:1 0 auto;justify-content:center;align-items:center;gap:7px;min-height:44px;padding:0 12px;font-size:12.5px;font-weight:700;line-height:1;transition:color .18s,background .18s,opacity .18s;display:inline-flex}.map-layer:hover{color:#14213d;background:#0f172a14}.map-layer:focus-visible{outline-offset:-2px}.map-layer.is-active:focus-visible{outline-offset:-4px;outline-color:#fff}.map-layer.is-active{color:#fff;background:var(--primary);box-shadow:0 5px 12px #2563eb42}.map-layer.is-loading{cursor:progress;opacity:.62}.map-layer.is-disabled{color:#a7b0c0;cursor:not-allowed}.map-layer.is-disabled:hover{color:#a7b0c0;background:#0f172a0a}.map-layer-badge{color:#7c8aa0;letter-spacing:.02em;text-transform:uppercase;white-space:nowrap;background:#53627a24;border-radius:999px;padding:2px 6px;font-size:9.5px;font-weight:700}.map-layer-icon{flex-shrink:0;width:16px;height:16px;display:inline-flex}.map-layer-icon svg{width:100%;height:100%}.map-layer-fade{border-radius:inherit;pointer-events:none;opacity:0;z-index:1;width:26px;transition:opacity .2s;position:absolute;top:0;bottom:0}.map-layer-fade.is-visible{opacity:1}.map-layer-fade-left{background:linear-gradient(90deg,#fffffff0,#0000);left:0}.map-layer-fade-right{background:linear-gradient(270deg,#fffffff0,#0000);right:0}body[data-theme=dark] .map-layer-fade-left{background:linear-gradient(90deg,#111827f2,#0000)}body[data-theme=dark] .map-layer-fade-right{background:linear-gradient(270deg,#111827f2,#0000)}.map-card .maplibregl-ctrl-top-left{top:var(--map-ctrl-top);left:var(--map-ctrl-left)}.map-card .maplibregl-ctrl-top-right{top:calc(var(--map-ctrl-top) + 3 * 44px + 2 * 10px);right:auto;left:var(--map-ctrl-left)}.map-card .maplibregl-ctrl-top-right .maplibregl-ctrl{margin:10px 0 0 10px}.map-weather-panel{z-index:3;color:#111827;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);overscroll-behavior:contain;--geo-chip-bg:#0f172a0d;--geo-chip-border:#0f172a1f;--geo-chip-text:#334155;background:#fffffff5;border:1px solid #ffffffc2;border-radius:20px;width:min(350px,100% - 56px);max-height:calc(100% - 56px);padding:22px;position:absolute;top:28px;right:28px;overflow-y:auto;box-shadow:0 18px 48px #0f172a3d}.map-panel-head,.map-panel-location,.map-panel-current{align-items:center;display:flex}.map-panel-head{justify-content:space-between;gap:12px}.map-panel-location{flex:1;gap:11px;min-width:0}.map-panel-location>div{min-width:0}.map-panel-pin{background:var(--primary);color:#fff;border-radius:50% 50% 50% 10px;flex:none;place-items:center;width:32px;height:32px;font-size:10px;display:grid;rotate:-45deg}.map-panel-pin:first-letter{rotate:45deg}.map-panel-location h2{letter-spacing:-.02em;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:19px;line-height:1.2;overflow:hidden}.map-panel-location p{color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;margin:4px 0 0;font-size:12.5px;overflow:hidden}.map-panel-actions{flex:none;align-items:center;gap:5px;display:flex}body[data-theme=dark] .map-weather-panel{--geo-chip-bg:#94a3b824;--geo-chip-border:#94a3b83d;--geo-chip-text:var(--text-2)}.geo-identity{margin-top:12px}.geo-identity-row{flex-wrap:wrap;gap:7px;display:flex}.geo-chip{border:1px solid var(--geo-chip-border);background:var(--geo-chip-bg);min-width:0;max-width:100%;color:var(--geo-chip-text);border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-size:12px;font-weight:700;display:inline-flex}.geo-chip span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.geo-chip-flag{object-fit:contain;border-radius:2px;flex-shrink:0;width:auto;max-width:none;height:14px}.geo-chip-icon{color:var(--geo-chip-text);opacity:.75;flex-shrink:0;display:inline-flex}.geo-chip-icon svg{width:14px;height:14px}.geo-hierarchy{overflow-wrap:anywhere;color:var(--text-2);margin:7px 0 0;font-size:12px}body[data-theme=dark] .geo-hierarchy{color:var(--text-2)}.map-panel-favorite{color:#64748b;border-radius:11px;flex:none;place-items:center;width:38px;height:38px;transition:color .18s,background .18s;display:grid}.map-panel-favorite:hover{color:#d97706;background:#fff7ed}.map-panel-favorite svg{fill:none;stroke:currentColor;stroke-linejoin:round;stroke-width:1.8px;width:23px}.map-panel-favorite.is-active{color:#d97706;background:#fff7ed}.map-panel-favorite.is-active svg{fill:currentColor}.map-panel-close{color:#fff;background:#e11d48;border:1px solid #e11d48;border-radius:10px;place-items:center;width:34px;height:34px;font-size:23px;line-height:1;transition:color .18s,border-color .18s,background .18s,transform .18s;display:grid;box-shadow:0 5px 14px #e11d4840}.map-panel-close span{justify-content:center;align-items:center;width:100%;height:100%;line-height:1;display:flex}.map-panel-close:hover,.map-panel-close:focus-visible{color:#fff;background:#be123c;border-color:#be123c;transform:scale(1.04);box-shadow:0 7px 18px #e11d4857}.map-show-panel{z-index:4;color:#172033;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff2;border:1px solid #ffffffb8;border-radius:12px;align-items:center;gap:8px;min-height:42px;padding:0 15px;font-size:12.5px;font-weight:700;display:inline-flex;position:absolute;bottom:28px;right:28px;box-shadow:0 8px 24px #0f172a33}.map-show-panel:hover{color:var(--ink-primary);transform:translateY(-1px)}.map-panel-current{border-bottom:1px solid #e5eaf1;gap:16px;margin-top:22px;padding-bottom:20px}.map-panel-icon{flex:none;width:78px;height:78px}.map-panel-current strong{letter-spacing:-.045em;font-size:43px;line-height:1;display:block}.map-panel-current span{color:var(--text-2);margin-top:7px;font-size:13px;display:block}.map-panel-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:18px 0;display:grid}.map-panel-stats div{min-width:0}.map-panel-stats dt{color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:600;overflow:hidden}.map-panel-stats dd{color:#172033;white-space:nowrap;margin:5px 0 0;font-size:12.5px;font-weight:800}.map-forecast-button{background:var(--primary);color:#fff;border-radius:12px;justify-content:space-between;align-items:center;width:100%;min-height:44px;padding:0 17px;font-size:13.5px;font-weight:700;transition:background .18s,transform .18s;display:flex;box-shadow:0 8px 18px #2563eb3b}.map-forecast-button:hover{background:var(--primary-600);transform:translateY(-1px)}.map-hourly{border-top:1px solid #e5eaf1;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:18px;padding-top:16px;display:grid}.map-hour{text-align:center;flex-direction:column;align-items:center;gap:5px;min-width:0;display:flex}.map-hour+.map-hour{border-left:1px solid #eef2f7}.map-hour>span{color:var(--text-2);white-space:nowrap;font-size:11px}.map-hour .wi{width:34px;height:34px}.map-hour b{font-size:12px}.map-sheet-handle{touch-action:none;justify-content:center;width:100%;padding:10px 0 6px;display:none}.map-sheet-grip{background:#cbd5e1;border-radius:999px;width:40px;height:5px}body[data-theme=dark] .map-sheet-grip{background:#94a3b866}.map-panel-peek{justify-content:space-between;align-items:center;gap:12px;padding:2px 4px 14px;font-weight:700;display:none}.map-panel-peek span{color:#172033;text-overflow:ellipsis;white-space:nowrap;font-size:15px;overflow:hidden}.map-panel-peek b{flex:none;font-size:17px}body[data-theme=dark] .map-panel-peek span{color:var(--text)}.map-panel-photo{border-radius:14px;height:132px;margin:16px 0}.map-panel-share{color:#64748b;border-radius:11px;flex:none;place-items:center;width:38px;height:38px;transition:color .18s,background .18s;display:grid}.map-panel-share:hover,.map-panel-share:focus-visible{color:var(--ink-primary);background:var(--primary-soft)}.map-panel-share svg{width:19px;height:19px}body[data-theme=dark] .map-panel-share{color:var(--text-2)}.map-panel-nearby{border-top:1px solid #e5eaf1;margin-top:18px;padding-top:16px}body[data-theme=dark] .map-panel-nearby{border-color:var(--border)}.map-panel-nearby-title{color:#172033;margin:0 0 10px;font-size:13px;font-weight:800}body[data-theme=dark] .map-panel-nearby-title{color:var(--text)}.map-nearby-note{color:var(--text-2);align-items:center;gap:8px;margin:0;font-size:12.5px;display:flex}body[data-theme=dark] .map-nearby-note{color:var(--text-2)}.map-nearby-list{flex-direction:column;gap:6px;display:flex}.map-nearby-place{text-align:left;background:0 0;border:1px solid #e5eaf1;border-radius:12px;align-items:center;gap:10px;width:100%;min-height:44px;padding:8px 10px;transition:background .16s,border-color .16s;display:flex}.map-nearby-place:hover,.map-nearby-place:focus-visible{border-color:var(--primary);background:var(--primary-soft)}.map-nearby-place .wi{flex:none;width:28px;height:28px}.map-nearby-text{flex-direction:column;flex:auto;gap:2px;min-width:0;display:flex}.map-nearby-text b{color:#172033;text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;overflow:hidden}.map-nearby-text span{color:var(--text-2);font-size:11px}.map-nearby-stats{text-align:right;flex-direction:column;flex:none;align-items:flex-end;gap:2px;display:flex}.map-nearby-stats b{color:#172033;font-size:13px}.map-nearby-stats span{color:var(--text-2);white-space:nowrap;font-size:11px}body[data-theme=dark] .map-nearby-place{border-color:var(--border)}body[data-theme=dark] .map-nearby-text b,body[data-theme=dark] .map-nearby-stats b{color:var(--text)}body[data-theme=dark] .map-nearby-text span,body[data-theme=dark] .map-nearby-stats span{color:var(--text-2)}.map-popular-card{border-radius:var(--r-xl);margin-top:14px;padding:16px 18px 18px}.map-popular-card .info-title{margin:0 0 11px}.map-popular-list{grid-template-columns:repeat(auto-fit,minmax(188px,1fr));gap:8px;display:grid}.map-popular-place{border:1px solid var(--border);min-width:0;min-height:48px;color:var(--text);text-align:left;border-radius:12px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:6px;padding:8px 9px;transition:border-color .18s,background .18s,transform .18s;display:grid}.map-popular-place:hover{border-color:var(--primary-300);background:var(--primary-soft);transform:translateY(-1px)}.map-popular-place .location-flags{gap:4px}.map-popular-place .location-flag-wrap{height:15px}.map-popular-place b{text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;overflow:hidden}.map-popular-place>span{white-space:nowrap;font-size:12px;font-weight:700}.map-popular-place .wi{width:23px;height:23px}.map-panel-loading{flex-direction:column;gap:6px;padding:6px 0;display:flex}.map-panel-loading-title{align-items:center;gap:9px;margin:0;font-size:14px;font-weight:700;display:flex}.map-panel-loading-coords{color:var(--text-2);font-variant-numeric:tabular-nums;margin:0;font-size:12.5px}body[data-theme=dark] .map-panel-loading-coords{color:var(--text-2)}.map-panel-spinner{border:2px solid var(--primary-soft);border-top-color:var(--primary);border-radius:50%;flex-shrink:0;width:15px;height:15px;animation:1s linear infinite geoSpin}.map-weather-controls{z-index:4;color:#172033;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff0;border:1px solid #ffffffb8;border-radius:14px;flex-direction:column;gap:10px;width:min(348px,100% - 56px);padding:11px 13px 12px;display:flex;position:absolute;bottom:28px;left:28px;box-shadow:0 8px 24px #0f172a2e}.map-time-row{scrollbar-width:none;background:#0f172a0f;border-radius:10px;gap:4px;padding:3px;display:flex;position:relative;overflow-x:auto}.map-time-row::-webkit-scrollbar{display:none}.map-time{color:#53627a;white-space:nowrap;border-radius:8px;flex:1 0 auto;min-height:32px;padding:0 7px;font-size:12.5px;font-weight:700;transition:color .18s,background .18s}.map-time:hover:not([disabled]){color:#14213d;background:#ffffffd9}.map-time:focus-visible{outline-offset:-2px}.map-time[aria-checked=true]{background:var(--primary);color:#fff;box-shadow:0 4px 10px #2563eb3d}.map-time[disabled]{opacity:.45;cursor:not-allowed}@media (width<=400px){.map-time-row{gap:3px}.map-time{padding-inline:5px}}.map-time-status{color:#64748b;overflow-wrap:anywhere;margin:0;font-size:11.5px;line-height:1.35}.map-time-status[data-loading]:after{content:"";vertical-align:-1px;border:2px solid var(--primary-soft);border-top-color:var(--primary);border-radius:50%;width:10px;height:10px;margin-left:6px;animation:1s linear infinite geoSpin;display:inline-block}.map-legend{border-top:1px solid #0f172a1a;margin:0;padding-top:9px}.map-legend-title{letter-spacing:.01em;margin-bottom:7px;font-size:11.5px;font-weight:700}.map-legend-bar{background-color:#94a3b82e;background-repeat:no-repeat;background-size:100% 100%;border-radius:999px;height:10px;box-shadow:inset 0 0 0 1px #0f172a24}.map-legend-ticks{height:15px;margin:5px 0 0;padding:0;list-style:none;position:relative}.map-legend-ticks li{color:#64748b;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:10.5px;position:absolute;transform:translate(-50%)}.map-legend-ticks li:first-child{transform:none}.map-legend-ticks li:last-child{transform:translate(-100%)}.map-legend-empty{color:#64748b;margin:0;font-size:11.5px}.map-aqi-status{color:#64748b;overflow-wrap:anywhere;margin:0;font-size:11.5px;line-height:1.35}.map-aqi-status[data-loading]:after{content:"";vertical-align:-1px;border:2px solid var(--primary-soft);border-top-color:var(--primary);border-radius:50%;width:10px;height:10px;margin-left:6px;animation:1s linear infinite geoSpin;display:inline-block}.map-aqi-status[data-state=error]{color:var(--ink-rose)}.map-aqi-headline{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.map-aqi-value{letter-spacing:-.01em;font-size:28px;font-weight:800}.map-aqi-badge{font-size:12px;font-weight:700}.map-aqi-badge.is-good{color:var(--ink-emerald)}.map-aqi-badge.is-warn{color:var(--ink-amber)}.map-aqi-badge.is-bad{color:var(--ink-rose)}.map-aqi-index-label{color:#64748b;flex-basis:100%;font-size:11px}.map-aqi-grid{border-top:1px solid #0f172a1a;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 14px;margin:10px 0 0;padding:9px 0 0;display:grid}.map-aqi-item dt{color:#64748b;margin:0;font-size:10.5px;font-weight:600}.map-aqi-item dd{margin:1px 0 0;font-size:14px;font-weight:700}.map-aqi-unit{color:#64748b;margin-left:3px;font-size:10.5px;font-weight:600}.map-aqi-meta{color:#64748b;overflow-wrap:anywhere;margin:10px 0 0;font-size:10.5px}.map-lightning-status,.map-lightning-count,.map-lightning-meta{color:var(--text-muted);margin:0;font-size:.78rem}.map-lightning-status[data-state=clear],.map-lightning-status[data-state=unsupported]{color:var(--text-muted)}.map-lightning-status[data-state=error]{color:var(--danger,#fca5a5)}.map-lightning-status[data-loading]:after{content:"";vertical-align:-.12rem;border:2px solid;border-right-color:#0000;border-radius:50%;width:.7rem;height:.7rem;margin-left:.45rem;animation:.8s linear infinite map-control-spin;display:inline-block}.map-clouds-meta a{color:inherit;text-decoration:underline}.map-lightning-list{gap:.35rem;margin:.55rem 0;padding:0;list-style:none;display:grid}.map-lightning-strike{background:#facc151f;border-radius:.45rem;justify-content:space-between;gap:1rem;padding:.4rem .55rem;font-size:.78rem;display:flex}.map-lightning-strike strong{color:#fde68a;font-variant-numeric:tabular-nums}body[data-theme=light] .map-lightning-strike strong{color:#a16207}.map-alerts-list{overscroll-behavior:contain;gap:10px;max-height:46vh;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.map-alert{background:#d9770612;border:1px solid #d9770659;border-radius:10px;padding:9px 10px}.map-alert.is-tornado{background:#dc262614;border-color:#dc262666}.map-alert-badge{color:var(--ink-amber);text-transform:uppercase;letter-spacing:.04em;margin:0;font-size:10px;font-weight:700}.map-alert.is-tornado .map-alert-badge{color:var(--ink-rose)}.map-alert-event{overflow-wrap:anywhere;margin:2px 0 6px;font-size:14px;font-weight:800;line-height:1.25}.map-alert-facts{gap:4px;margin:0;display:grid}.map-alert-fact{flex-wrap:wrap;gap:6px;font-size:11px;display:flex}.map-alert-fact dt{color:var(--text-2);flex:none;margin:0;font-weight:600}.map-alert-fact dd{overflow-wrap:anywhere;min-width:0;margin:0;font-weight:600}.map-alert-source{color:var(--ink-primary);overflow-wrap:anywhere;margin-top:7px;font-size:10.5px;font-weight:600;display:inline-block}.map-aqi-status[data-state=unsupported],.map-aqi-status[data-state=clear]{color:#475569}body[data-theme=dark] .map-weather-controls{color:var(--text);background:#111827f2;border-color:#94a3b838}body[data-theme=dark] .map-time-row{background:#94a3b81f}body[data-theme=dark] .map-time{color:var(--text-2)}body[data-theme=dark] .map-time:hover:not([disabled]){color:var(--text);background:#94a3b829}body[data-theme=dark] .map-time[aria-checked=true]{color:#fff}body[data-theme=dark] .map-time-status,body[data-theme=dark] .map-legend-ticks li,body[data-theme=dark] .map-legend-empty{color:var(--text-2)}body[data-theme=dark] .map-legend{border-color:var(--border)}body[data-theme=dark] .map-legend-bar{box-shadow:inset 0 0 0 1px #94a3b847}body[data-theme=dark] .map-aqi-status,body[data-theme=dark] .map-aqi-index-label,body[data-theme=dark] .map-aqi-item dt,body[data-theme=dark] .map-aqi-unit,body[data-theme=dark] .map-aqi-meta{color:var(--text-2)}body[data-theme=dark] .map-aqi-grid{border-color:var(--border)}body[data-theme=dark] .map-alert-fact dt,body[data-theme=dark] .map-aqi-status[data-state=unsupported],body[data-theme=dark] .map-aqi-status[data-state=clear]{color:var(--text-2)}@media (prefers-reduced-motion:reduce){.map-panel-spinner,.map-time-status[data-loading]:after,.map-aqi-status[data-loading]:after,.map-lightning-status[data-loading]:after{animation:none}}.map-recents-card{border-radius:var(--r-xl);margin-top:14px;padding:16px 18px 18px}.map-recents-head{flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin-bottom:11px;display:flex}.map-recents-card .info-title{margin:0}.map-recents-sub{color:var(--text-3);margin:0;font-size:12px}.map-recents-note{color:var(--text-2);margin:0;font-size:13px}.map-recents-link{color:var(--ink-primary);margin-top:8px;padding:0;font-size:13px;font-weight:700}.map-recents-link:hover{text-decoration:underline}.map-recents-list{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.map-recent{border:1px solid var(--border);width:100%;min-width:0;min-height:52px;color:var(--text);text-align:left;border-radius:12px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px 10px;transition:border-color .18s,background .18s,transform .18s;display:grid}.map-recent:hover{border-color:var(--primary-300);background:var(--primary-soft);transform:translateY(-1px)}.map-recent .location-flags{gap:4px}.map-recent .location-flag-wrap{height:15px}.map-recent-text{flex-direction:column;min-width:0;display:flex}.map-recent-text b{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.map-recent-text span{color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;overflow:hidden}.map-recent-kind{color:var(--text-3);white-space:nowrap;font-size:11px;font-weight:700}.map-recents-clear{color:#be123c;margin-top:12px;padding:0;font-size:12.5px;font-weight:700}.map-recents-clear:hover{text-decoration:underline}body[data-theme=dark] .map-recents-clear{color:#fb7185}body[data-theme=dark] .map-layer-switcher,body[data-theme=dark] .map-weather-panel,body[data-theme=dark] .map-show-panel{color:var(--text);background:#111827f2;border-color:#94a3b838}body[data-theme=dark] .map-layer{color:var(--text-2);background:#94a3b814}body[data-theme=dark] .map-layer.is-active{background:var(--primary);color:#fff}body[data-theme=dark] .map-layer:hover{color:var(--text);background:#94a3b829}body[data-theme=dark] .map-layer.is-active:hover{background:var(--primary)}body[data-theme=dark] .map-layer.is-disabled,body[data-theme=dark] .map-layer.is-disabled:hover{color:var(--text-3);background:#94a3b80a}body[data-theme=dark] .map-layer-badge{color:var(--text-3);background:#94a3b829}body[data-theme=dark] .map-panel-current,body[data-theme=dark] .map-hourly{border-color:var(--border)}body[data-theme=dark] .map-panel-current strong,body[data-theme=dark] .map-panel-stats dd{color:var(--text)}body[data-theme=dark] .map-hour+.map-hour{border-color:var(--border)}body[data-theme=dark] .map-panel-stats dt,body[data-theme=dark] .map-hour>span{color:var(--text-3)}@media (width<=1180px){.map-weather-panel{width:318px;padding:18px}.map-layer-row{gap:6px}.map-layer{padding-inline:10px}.map-popular-list{grid-template-columns:repeat(3,minmax(0,1fr))}.map-show-panel{bottom:18px;right:18px}.map-weather-controls{width:min(320px,100% - 36px);bottom:18px;left:18px}}@media (width<=820px){#view-map.is-visible{animation:mapViewIn .45s var(--ease)}@keyframes mapViewIn{0%{opacity:0}to{opacity:1}}.map-layer-switcher{max-width:none;left:22px;right:22px}.map-weather-panel{z-index:20;border-color:var(--border);background:var(--card);width:auto;height:84vh;max-height:none;color:var(--text);-webkit-backdrop-filter:none;backdrop-filter:none;overscroll-behavior:contain;transition:translate .32s var(--ease);border-width:1px 0 0;border-radius:20px 20px 0 0;flex-direction:column;margin-top:0;padding:0 18px 18px;display:flex;position:fixed;inset:auto 0 0;overflow:hidden;translate:0 54vh;box-shadow:0 -14px 36px #0f172a33}.map-weather-panel.is-dragging{transition:none}.map-weather-panel[data-sheet-state=collapsed]{overflow:hidden;translate:0 calc(84vh - 88px)}.map-weather-panel[data-sheet-state=half]{translate:0 54vh}.map-weather-panel[data-sheet-state=expanded]{translate:0}.map-panel-body{overscroll-behavior:contain;flex:auto;min-height:0;overflow-y:auto}.map-sheet-handle{z-index:1;background:inherit;flex:none;display:flex}.map-weather-panel[data-sheet-state=collapsed] .map-panel-peek{display:flex}.map-weather-panel[data-sheet-state=collapsed] .map-panel-body{display:none}.map-weather-controls{border-color:var(--border);background:var(--card);width:auto;box-shadow:var(--shadow-sm);color:var(--text);-webkit-backdrop-filter:none;backdrop-filter:none;margin-top:12px;position:static}.map-time{min-height:40px}.map-panel-current strong,.map-panel-stats dd{color:var(--text)}.map-panel-current,.map-hourly{border-color:var(--border)}.map-popular-list{scroll-snap-type:x proximity;padding-bottom:3px;display:flex;overflow-x:auto}.map-popular-place{scroll-snap-align:start;min-width:210px}}@media (width<=520px){.map-filters{gap:8px}.map-filters .chip{height:40px;padding:0 14px;font-size:13.5px}.map-card{--map-ctrl-top:132px;--map-ctrl-left:6px;padding:8px}.map-layer-switcher{top:18px;left:18px;right:18px}#worldMap{height:390px}.map-weather-panel{border-radius:16px;padding:17px}.map-panel-current{margin-top:16px}.map-panel-current strong{font-size:38px}.map-panel-icon{width:66px;height:66px}.map-panel-stats{grid-template-columns:repeat(2,1fr);gap:13px 10px}.map-panel-stats dt,.map-panel-stats dd{text-overflow:clip;overflow:visible}.map-popular-card,.map-recents-card{padding-inline:14px}.map-recents-list{grid-template-columns:1fr}}body.map-expanded{--mx-edge:16px;--mx-gap:10px;--mx-bar-h:52px;--mx-pill-h:112px;--mx-ctrl:44px;--mx-ctrl-gap:8px;--mx-attrib:40px;--mx-top:calc(env(safe-area-inset-top,0px) + var(--mx-edge));--mx-left:calc(var(--sal) + var(--mx-edge));--mx-right:calc(var(--sar) + var(--mx-edge));--mx-bottom:calc(env(safe-area-inset-bottom,0px) + var(--mx-attrib));--mx-row2:calc(var(--mx-top) + var(--mx-bar-h) + var(--mx-gap));--mx-row3:calc(var(--mx-row2) + var(--mx-pill-h) + var(--mx-gap));overflow:hidden}body.map-expanded #sidebar,body.map-expanded .sidebar-scrim,body.map-expanded .nav-burger,body.map-expanded .footer,body.map-expanded #view-map .wx-notice,body.map-expanded #view-map>.block-head,body.map-expanded #mapRecents,body.map-expanded #mapPopular{display:none}body.map-expanded #view-map.is-visible{animation:none}body.map-expanded .map-card{z-index:80;width:100%;height:100dvh;box-shadow:none;border:0;border-radius:0;margin:0;padding:0;position:fixed;inset:0 auto auto 0}body.map-expanded #worldMap{border-radius:0;width:100%;height:100%;position:absolute;inset:0}body.map-expanded .topnav{top:var(--mx-top);left:var(--mx-left);width:auto;max-width:calc(100% - var(--mx-left) - var(--mx-right) - 230px);height:var(--mx-bar-h);background:#fffffff0;border:1px solid #ffffffb8;border-radius:16px;padding:0;position:fixed;box-shadow:0 8px 24px #0f172a2e}body[data-theme=dark].map-expanded .topnav{background:#111827f2;border-color:#94a3b838}body.map-expanded .topnav-inner{gap:8px;max-width:none;margin:0;padding:0 4px 0 8px;display:flex}body.map-expanded .topnav-center{flex:0 auto;width:400px;min-width:0}body.map-expanded .topnav-actions{gap:8px}body.map-expanded .topnav .logo{justify-content:center;align-items:center;min-width:44px;min-height:44px}body.map-expanded .topnav-actions #modeToggle{display:none}@media (width>=1280px){body.map-expanded .topnav-actions #modeToggle{margin-right:0;display:inline-flex}}.map-exit-expand{z-index:5;color:#172033;white-space:nowrap;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);min-height:44px;transition:color .2s, transform .2s var(--ease);background:#fffffff2;border:1px solid #ffffffb8;border-radius:12px;align-items:center;gap:8px;padding:0 15px;font-size:12.5px;font-weight:700;display:inline-flex;position:absolute;box-shadow:0 8px 24px #0f172a33}body.map-expanded .map-exit-expand{top:calc(var(--mx-top) + (var(--mx-bar-h) - 44px) / 2);right:var(--mx-right)}.map-exit-expand:hover{color:var(--ink-primary);transform:translateY(-1px)}.map-exit-expand:active{transform:translateY(0)}.map-exit-expand-icon{align-items:center;display:inline-flex}body[data-theme=dark] .map-exit-expand{color:var(--text);background:#111827f2;border-color:#94a3b838}body.map-expanded .map-layer-switcher{top:var(--mx-row2);right:auto;left:var(--mx-left)}@media (width>=821px){body.map-expanded .map-layer-switcher{max-width:calc(100% - var(--mx-left) - var(--mx-right) - 350px - var(--mx-gap))}}body.map-expanded .map-card .maplibregl-ctrl-top-left{top:var(--mx-row3);left:var(--mx-left)}body.map-expanded .map-card .maplibregl-ctrl-top-left .maplibregl-ctrl{margin:0 0 var(--mx-ctrl-gap)}body.map-expanded .map-card .maplibregl-ctrl-top-right{top:calc(var(--mx-row3) + 3 * var(--mx-ctrl) + 2 * var(--mx-ctrl-gap));right:auto;left:var(--mx-left)}body.map-expanded .map-card .maplibregl-ctrl-top-right .maplibregl-ctrl{margin:0}body.map-expanded .map-card .maplibregl-ctrl-geolocate{width:var(--mx-ctrl);height:var(--mx-ctrl)}body.map-expanded .map-card .maplibregl-ctrl-bottom-right{right:var(--sar);bottom:env(safe-area-inset-bottom,0)}body.map-expanded .map-card .maplibregl-ctrl-bottom-left{bottom:env(safe-area-inset-bottom,0);left:var(--sal)}body.map-expanded .map-weather-controls{bottom:var(--mx-bottom);left:var(--mx-left)}body.map-expanded .map-show-panel{right:var(--mx-right);bottom:var(--mx-bottom)}@media (width>=821px){body.map-expanded .map-weather-panel{top:var(--mx-row2);right:var(--mx-right);width:350px;max-height:calc(100% - var(--mx-row2) - var(--mx-bottom))}}@media (width<=820px){body.map-expanded{--mx-edge:12px;--mx-gap:8px}body.map-expanded .map-exit-expand{padding:0 12px;font-size:12px}body.map-expanded .map-layer-switcher{right:var(--mx-right);max-width:none}body.map-expanded .map-weather-panel{padding-bottom:calc(18px + env(safe-area-inset-bottom,0px))}body.map-expanded .map-card{--mx-sheet:0px}body.map-expanded .map-card:has(#mapShowPanel:not([hidden])){--mx-sheet:calc(44px + var(--mx-ctrl-gap))}body.map-expanded .map-card:has(#mapWeatherPanel:not([hidden])[data-sheet-state=collapsed]){--mx-sheet:88px}body.map-expanded .map-card:has(#mapWeatherPanel:not([hidden])[data-sheet-state=half]){--mx-sheet:30vh}body.map-expanded .map-card .maplibregl-ctrl-bottom-right,body.map-expanded .map-card .maplibregl-ctrl-bottom-left{bottom:max(var(--mx-sheet), env(safe-area-inset-bottom,0px));transition:bottom .32s var(--ease)}body.map-expanded .map-show-panel{bottom:var(--mx-bottom)}body.map-expanded .map-weather-controls{right:auto;bottom:calc(max(var(--mx-sheet), env(safe-area-inset-bottom,0px)) + var(--mx-attrib));left:calc(var(--mx-left) + var(--mx-ctrl) + var(--mx-ctrl-gap));width:min(320px, calc(100% - var(--mx-left) - var(--mx-ctrl) - var(--mx-ctrl-gap) - var(--mx-right)));transition:bottom .32s var(--ease);margin-top:0;position:absolute}body.map-expanded .map-card:has(#mapWeatherPanel:not([hidden])[data-sheet-state=expanded]) .map-weather-controls{display:none}body.map-expanded .topnav-actions,body.map-expanded .topnav .brand-logo{display:none}body.map-expanded .topnav .brand-mark{display:block}}@media (width<=520px){body.map-expanded .topnav-center{flex:none;width:auto}body.map-expanded .topnav{max-width:calc(100% - var(--mx-left) - var(--mx-right) - 194px)}body.map-expanded .topnav-inner{gap:4px;padding:0 4px}}@media (prefers-reduced-motion:no-preference){body.map-expanded .map-exit-expand{animation:mapExitExpandIn .2s var(--ease)}@keyframes mapExitExpandIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}}.forecast-carousel-wrap{position:relative}.forecast-carousel{gap:var(--s-2);scroll-snap-type:x mandatory;padding:6px 4px 16px;display:flex;overflow-x:auto}.forecast-carousel .forecast-card{scroll-snap-align:start;flex:0 0 172px}.carousel-fade{pointer-events:none;opacity:0;width:36px;transition:opacity .2s;position:absolute;top:0;bottom:16px}.carousel-fade.is-visible{opacity:1}.carousel-fade-left{background:linear-gradient(to right, var(--bg), transparent);left:0}.carousel-fade-right{background:linear-gradient(to left, var(--bg), transparent);right:0}.fc-duo{margin-top:var(--s-3);gap:var(--s-2);grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:stretch;display:grid}.fc-chart-card{padding:var(--s-3);border-radius:var(--r-lg)}.fc-card-head{justify-content:space-between;align-items:center;gap:var(--s-2);margin-bottom:var(--s-2);flex-wrap:wrap;display:flex}.fc-card-head h2{letter-spacing:-.01em;font-size:17px;font-weight:700}.chart-host.sm{height:250px}.precip-summary{margin:-4px 0 var(--s-2);color:var(--text-2);font-size:13px;font-weight:600}.dd-grid{gap:var(--s-3) var(--s-2);grid-template-columns:repeat(2,1fr);display:grid}.dd-item{align-items:flex-start;gap:12px;display:flex}.dd-item .metric-ico{width:40px;height:40px}.dd-item dl{margin:0}.dd-item dt{color:var(--text-2);font-size:12px;font-weight:600}.dd-item dd{letter-spacing:-.01em;margin:2px 0 0;font-size:21px;font-weight:700}.dd-badge{letter-spacing:normal;color:var(--text-2);margin-top:1px;font-size:12px;font-weight:700;display:block}.dd-badge.is-good{color:var(--ink-emerald)}.dd-badge.is-warn{color:var(--ink-amber)}.dd-badge.is-bad{color:var(--ink-rose)}.sum-text{color:var(--text-2);font-size:14px;line-height:1.55}.sum-rows{margin-top:var(--s-2);padding-top:var(--s-2);border-top:1px solid var(--border);flex-direction:column;gap:10px;display:flex}.sum-row{color:var(--text-2);align-items:center;gap:10px;font-size:13.5px;font-weight:600;display:flex}.sum-row .metric-ico{width:30px;height:30px}.sum-row b{color:var(--text);margin-left:auto;font-size:15px}.hourly-card{margin-top:var(--s-2);padding:var(--s-2);border-radius:var(--r-lg)}.hourly-strip{gap:6px;padding:6px 2px 10px;display:flex;overflow-x:auto}.hour-cell{text-align:center;border-radius:16px;flex:1 0 104px;padding:16px 6px;transition:background .2s}.hour-cell:hover{background:var(--bg)}.hour-cell.is-now{background:var(--primary-soft)}.hour-cell .h-time{color:var(--text-2);font-size:13px;font-weight:700}.hour-cell.is-now .h-time{color:var(--ink-primary)}.hour-cell .h-icon{width:34px;height:34px;margin:10px auto 8px}.hour-cell .h-temp{font-size:15.5px;font-weight:700}.hour-cell .h-rain{color:var(--ink-sky);margin-top:6px;font-size:11.5px;font-weight:600}.hour-cell .h-wind{color:var(--text-2);justify-content:center;align-items:center;gap:4px;margin-top:3px;font-size:11.5px;font-weight:600;display:flex}.hour-cell.is-now .h-wind{color:color-mix(in srgb, var(--text-2) 70%, var(--text))}.hour-cell .h-wind svg{width:12px;height:12px;color:var(--emerald)}.fav-grid{gap:var(--s-2);grid-template-columns:repeat(auto-fill,minmax(250px,1fr));display:grid}.favx-card{isolation:isolate;text-align:left;border-radius:var(--r-md);color:#fff;min-height:320px;box-shadow:var(--shadow-sm);transition:transform .3s var(--ease), box-shadow .3s var(--ease);animation:cardIn .5s var(--ease) backwards;flex-direction:column;padding:18px;display:flex;position:relative;overflow:hidden}.favx-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-5px)}.favx-open{z-index:1;border-radius:inherit;position:absolute;inset:0}.favx-open:focus-visible{outline-offset:-4px;outline:3px solid #fff}.favx-bg{z-index:-2;position:absolute;inset:0}.favx-bg:before{content:"";z-index:1;pointer-events:none;background:linear-gradient(#0206172e 0%,#0206170d 35%,#0206178c 100%);position:absolute;inset:0}.favx-emoji{z-index:-1;opacity:.5;transition:transform .45s var(--ease);-webkit-user-select:none;user-select:none;font-size:110px;line-height:1;position:absolute;top:34%;right:-8px;transform:rotate(-6deg)}.favx-bg.has-photo .favx-emoji{opacity:0}.favx-card:hover .favx-emoji{transform:rotate(0)scale(1.06)}.favx-emoji .flag{border-radius:12px;height:82px}.favx-top{align-items:center;gap:9px;display:flex}.favx-top .flag{height:17px}.favx-names{flex-direction:column;min-width:0;display:flex}.favx-names b{text-shadow:0 1px 10px #02061759;font-size:16.5px;font-weight:700}.favx-names span{opacity:.9;font-size:12px}.favx-star{z-index:2;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);width:34px;height:34px;transition:background .2s, transform .2s var(--ease);background:#ffffff38;border-radius:50%;flex-shrink:0;place-items:center;margin-left:auto;display:grid;position:relative}.favx-star:hover{background:#fff6;transform:scale(1.1)}.favx-star.is-confirming,.fav-remove-s.is-confirming{color:#fff;background:var(--rose);box-shadow:0 0 0 4px var(--rose-soft)}.fav-alert-badge{z-index:2;color:#fff;white-space:nowrap;text-overflow:ellipsis;border-radius:999px;align-self:flex-start;align-items:center;gap:5px;max-width:100%;margin-top:8px;padding:4px 10px 4px 8px;font-size:11.5px;font-weight:700;display:inline-flex;position:relative;overflow:hidden}.fav-alert-badge svg{flex-shrink:0}.ft-place-cell .fav-alert-badge{align-self:flex-start;margin:4px 0 0 58px}.favx-main{flex-direction:column;gap:6px;margin-top:auto;display:flex}.favx-temp{letter-spacing:-.03em;text-shadow:0 2px 16px #0206174d;font-size:42px;font-weight:800;line-height:1}.favx-temp sup{vertical-align:10px;font-size:.45em;font-weight:700}.favx-desc{align-items:center;gap:6px;font-size:14px;font-weight:600;display:flex}.favx-wicon{flex-shrink:0;width:30px;height:30px}.favx-retry{z-index:2;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fff;background:#ffffff38;border:1px solid #ffffff73;border-radius:999px;align-self:flex-start;min-height:44px;padding:0 16px;font-size:13px;font-weight:700;transition:background .2s;position:relative}.favx-retry:hover{background:#fff6}.favx-retry:focus-visible{outline-offset:2px;outline:3px solid #fff}.ft-retry{margin-left:8px;padding:6px 12px}.favx-chips{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.favx-chips span{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff2e;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:600}.favx-foot{opacity:.92;background:#0206174d;align-items:center;gap:6px;margin:14px -18px -18px;padding:11px 18px;font-size:12px;display:flex}.favx-credit{z-index:3;border-radius:7px;max-width:calc(100% - 16px);bottom:42px;right:8px}.table-card{border-radius:var(--r-lg);padding:8px 12px}.table-scroll{scrollbar-width:thin;scrollbar-color:#64748b66 transparent;overflow-x:auto}.table-scroll::-webkit-scrollbar{height:5px}.table-scroll::-webkit-scrollbar-thumb{background:#64748b66;border-radius:999px}.table-scroll::-webkit-scrollbar-track{background:0 0}.fav-table{border-collapse:collapse;width:100%;min-width:760px}.fav-table th{text-align:left;color:var(--text-2);border-bottom:1px solid var(--border);padding:12px 10px;font-size:12px;font-weight:600}.fav-table td{vertical-align:middle;padding:11px 10px;font-size:13.5px}.fav-table tbody tr{cursor:pointer;transition:background .15s}.fav-table tbody tr:hover{background:var(--bg)}.fav-table tbody tr+tr td{border-top:1px solid var(--border)}.ft-place{align-items:center;gap:12px;display:flex}.ft-open{text-align:left;border-radius:10px;width:100%;padding:0}.ft-open:focus-visible{outline:2px solid var(--primary);outline-offset:3px}.ft-visual{color:#fff;border-radius:12px;flex-shrink:0;place-items:center;width:46px;height:46px;font-size:21px;display:grid;overflow:hidden}.ft-visual .flag{height:20px}.ft-credit{margin:3px 0 0 58px;font-size:9.5px;line-height:1.25}.ft-names{flex-direction:column;display:flex}.ft-names .flag{display:none}.ft-names b{font-size:13.5px}.ft-names span{color:var(--text-2);font-size:11.5px}.ft-cond{color:var(--text-2);align-items:center;gap:8px;font-weight:500;display:inline-flex}.ft-wicon{flex-shrink:0;width:30px;height:30px}.ft-hi{color:var(--ink-rose);font-weight:700}.ft-lo{color:var(--ink-primary);font-weight:700}.ft-ago{color:var(--text-3);font-size:13px}.fav-remove-s{width:30px;height:30px;color:var(--text-3);border-radius:9px;place-items:center;transition:background .2s,color .2s;display:grid}.fav-remove-s:hover{background:var(--rose-soft);color:var(--rose)}.compare-block{margin-top:var(--s-4);display:block}.compare-head{margin-bottom:var(--s-2)}.compare-card{padding:var(--s-3);border-radius:var(--r-lg)}.compare-clear{border-radius:var(--r-sm);border:1px solid var(--border);background:var(--bg);color:var(--text-2);align-self:center;padding:9px 14px;font-size:13px;font-weight:600;transition:color .2s,border-color .2s}.compare-clear:hover{color:var(--text);border-color:var(--primary)}.compare-picker{margin-bottom:var(--s-3);flex-wrap:wrap;gap:8px;display:flex}.compare-chip{border:1.5px solid var(--border);background:var(--bg);color:var(--text-2);border-radius:999px;align-items:center;gap:8px;padding:8px 14px;font-size:13px;font-weight:600;transition:border-color .2s,background .2s,color .2s;display:inline-flex}.compare-chip:hover:not(:disabled){color:var(--text);border-color:var(--primary)}.compare-chip[aria-pressed=true]{border-color:var(--primary);background:var(--primary-soft);color:var(--ink-primary)}.compare-chip:disabled{opacity:.55;cursor:not-allowed}.compare-chip .location-flag-wrap{height:15px}.compare-empty{color:var(--text-2);margin:0;font-size:13px}.compare-source{margin:var(--s-3) 0 0;color:var(--text-3);font-size:12px}.compare-source a{color:inherit;text-decoration:underline}.compare-table{border-collapse:collapse;width:100%;font-size:13.5px}.compare-table th,.compare-table td{text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;padding:11px 14px}.compare-table tbody tr:last-child th,.compare-table tbody tr:last-child td{border-bottom:0}.compare-table tbody th{color:var(--text-2);font-weight:600}.compare-table thead th{color:var(--text);font-size:13px;font-weight:700}.compare-table td{font-variant-numeric:tabular-nums}.compare-col{align-items:center;gap:8px;display:inline-flex}.compare-col-name{align-items:center;gap:6px;display:inline-flex}.compare-col-name .location-flag-wrap{height:15px}.compare-remove{width:22px;height:22px;color:var(--text-2);background:var(--bg);border:1px solid var(--border);border-radius:50%;flex-shrink:0;place-items:center;font-size:15px;line-height:1;transition:color .2s,border-color .2s;display:grid}.compare-remove:hover{color:var(--rose);border-color:var(--rose)}@media (width<=640px){.compare-card{padding:var(--s-2)}.compare-table th,.compare-table td{padding:10px}}.about-hero-card{gap:var(--s-4);padding:var(--s-4);border-radius:var(--r-xl);grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:center;display:grid}.about-tag{color:var(--text-2);margin-top:8px;font-size:15.5px;font-weight:600}.about-mission{margin-top:var(--s-2);color:var(--text-2);max-width:56ch;font-size:14.5px;line-height:1.65}.about-meta{margin-top:var(--s-3);flex-wrap:wrap;gap:8px;display:flex}.pill-heart{color:var(--ink-primary);background:var(--primary-soft);border-color:#2563eb40}.pill-heart [aria-hidden]{color:var(--rose)}.about-art{border-radius:var(--r-md);background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 200' preserveAspectRatio='none'%3E%3Cpath d='M0 200V128l55-46 50 40 62-60 53 48 55-32 52 38 73-28v112z' fill='%23020617' fill-opacity='.20'/%3E%3Cpath d='M0 200v-46l70-40 65 36 70-48 65 40 65-26 65 32v52z' fill='%23020617' fill-opacity='.30'/%3E%3C/svg%3E") bottom/100% 46% no-repeat,linear-gradient(160deg,#38bdf8 0%,#2563eb 55%,#f59e0b 130%);min-height:300px;position:relative;overflow:hidden}.art-ring{border:1.5px dashed #ffffff42;border-radius:50%;animation:60s linear infinite ringSpin;position:absolute;top:46%;left:50%;translate:-50% -50%}.art-ring.r1{aspect-ratio:2/1.05;width:74%}.art-ring.r2{aspect-ratio:2/1.05;width:48%;animation-duration:45s;animation-direction:reverse}@keyframes ringSpin{to{rotate:360deg}}.art-wicon{filter:drop-shadow(0 6px 14px #0206172e);width:58px;height:58px;animation:8s ease-in-out infinite alternate artFloat;position:absolute}.art-wicon.w1{top:14%;left:12%}.art-wicon.w2{animation-delay:1.2s;top:20%;right:12%}.art-wicon.w3{animation-delay:2.1s;bottom:22%;left:22%}.art-wicon.w4{width:48px;height:48px;animation-delay:.6s;bottom:16%;right:20%}@keyframes artFloat{0%{transform:translateY(-2px)}to{transform:translateY(2px)}}@media (prefers-reduced-motion:reduce){.art-ring,.art-wicon{animation:none}}.about-features{margin-top:var(--s-3);gap:var(--s-2);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.feature-card{padding:var(--s-3);border-radius:var(--r-md);animation:cardIn .5s var(--ease) backwards}.feature-card .metric-ico{border-radius:14px;width:44px;height:44px}.feature-card h2{margin-top:14px;font-size:15px;font-weight:700}.feature-card p{color:var(--text-2);margin-top:6px;font-size:13px;line-height:1.5}.about-duo{margin-top:var(--s-3);gap:var(--s-2);grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:start;display:grid}.info-title.lg{margin-bottom:6px;font-size:18px}.src-sub{color:var(--text-2);margin-bottom:var(--s-3);max-width:52ch;font-size:13.5px;line-height:1.5}.tech-group+.tech-group{margin-top:var(--s-3)}.tech-group-title{text-transform:uppercase;letter-spacing:.04em;color:var(--text-3);margin-bottom:10px;font-size:12.5px;font-weight:700}.tech-grid{gap:var(--s-3) var(--s-2);flex-wrap:wrap;display:flex}.tech-item{min-width:86px;color:var(--text-2);flex-direction:column;align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}@media (width>=1280px){.tech-grid{grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.tech-item{text-align:center;min-width:0}}.tone-primary{--tone:var(--primary);--tone-soft:var(--primary-soft)}.tone-sky{--tone:var(--sky);--tone-soft:var(--sky-soft)}.tone-amber{--tone:var(--amber);--tone-soft:var(--amber-soft)}.tone-emerald{--tone:var(--emerald);--tone-soft:var(--emerald-soft)}.tone-violet{--tone:var(--violet);--tone-soft:var(--violet-soft)}.tone-rose{--tone:var(--rose);--tone-soft:var(--rose-soft)}.tech-logo{letter-spacing:-.02em;border:1px solid var(--border);background:var(--tone-soft);width:58px;height:58px;color:color-mix(in srgb, var(--tone) 72%, #000);border-radius:16px;place-items:center;font-size:19px;font-weight:800;display:grid}body[data-theme=dark] .tech-logo{color:color-mix(in srgb, var(--tone) 55%, #fff)}.src-list{flex-direction:column;display:flex}.src-row{align-items:center;gap:14px;padding:13px 0;display:flex}.src-row+.src-row{border-top:1px solid var(--border)}.src-logo{border-radius:var(--r-sm);background:linear-gradient(135deg, var(--tone), color-mix(in srgb, var(--tone) 62%, #000));color:#fff;flex-shrink:0;place-items:center;width:44px;height:44px;font-size:13px;font-weight:800;display:grid}.src-body{flex-direction:column;min-width:0;display:flex}.src-body b{font-size:14px}.src-body span{color:var(--text-2);font-size:13px}.link-chip{background:var(--primary-soft);color:var(--ink-primary);transition:background .2s, transform .2s var(--ease);border-radius:999px;flex-shrink:0;align-items:center;gap:6px;margin-left:auto;padding:7px 13px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.link-chip:hover{background:color-mix(in srgb, var(--primary) 20%, transparent);transform:translateY(-1px)}body[data-theme=dark] .link-chip{color:color-mix(in srgb, var(--primary) 55%, #fff)}.src-note{margin-top:var(--s-2);color:var(--text-3);font-size:13px}.resource-section-title{margin:0 0 var(--s-3);font-size:18px}.help-step-grid{gap:var(--s-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.help-step,.policy-card{padding:var(--s-4)}.help-step{flex-direction:column;min-height:238px;display:flex}.step-number{background:var(--primary-soft);width:32px;height:32px;color:var(--ink-primary);border-radius:50%;place-items:center;font-size:14px;font-weight:800;display:grid}.help-step h3,.policy-card h2,.privacy-summary h2,.privacy-controls h2{margin:var(--s-2) 0 0;font-size:17px}.help-step p,.policy-card p,.privacy-summary p,.privacy-controls p,.faq-item p{color:var(--text-2);font-size:14px;line-height:1.6}.help-step p,.policy-card p,.privacy-summary p,.privacy-controls p{margin:var(--s-2) 0 0}.resource-link{padding:var(--s-3) 0 0;color:var(--ink-primary);cursor:pointer;font:inherit;text-underline-offset:3px;background:0 0;border:0;align-self:flex-start;margin-top:auto;font-weight:800;text-decoration:underline;text-decoration-thickness:1px}.resource-link:hover{color:var(--primary-700)}.faq-section{max-width:860px;margin-top:var(--s-4)}.faq-item{padding:0 var(--s-3);border:1px solid var(--border);border-radius:var(--r-sm);background:var(--card)}.faq-item+.faq-item{margin-top:var(--s-2)}.faq-item summary{padding:var(--s-3) 0;cursor:pointer;font-weight:700}.faq-item p{max-width:68ch;margin:0 0 var(--s-3)}.privacy-summary{padding:var(--s-4);border-color:color-mix(in srgb, var(--primary) 25%, var(--border));background:linear-gradient(120deg, color-mix(in srgb, var(--primary-soft) 65%, var(--card)), var(--card))}.privacy-kicker{color:var(--ink-primary);letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:12px;font-weight:800}.privacy-summary h2{margin-top:var(--s-2)}.privacy-grid{gap:var(--s-3);margin-top:var(--s-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.policy-card h2{margin-top:0}.privacy-controls{justify-content:space-between;align-items:center;gap:var(--s-3);margin-top:var(--s-3);padding:var(--s-4);border-left:3px solid var(--primary);display:flex}.privacy-controls h2{margin-top:0}@media (width<=1080px){.help-step-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.help-step-grid,.privacy-grid{grid-template-columns:minmax(0,1fr)}.help-step{min-height:0}.privacy-controls{flex-direction:column;align-items:flex-start}}.set-grid{gap:var(--s-2);grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;display:grid}.set-card{padding:var(--s-3);border-radius:var(--r-lg)}.set-wide{margin-top:var(--s-2)}.set-head{margin-bottom:var(--s-3);align-items:flex-start;gap:14px;display:flex}.set-head .metric-ico{border-radius:13px;width:42px;height:42px}.set-head h2{font-size:16.5px;font-weight:700}.set-head p{color:var(--text-2);margin-top:2px;font-size:13px}.uchip-groups{gap:var(--s-3) var(--s-4);flex-wrap:wrap;display:flex}.ulabel{color:var(--text-2);margin-bottom:8px;font-size:13px;font-weight:600;display:block}.set-tiles{gap:var(--s-2);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.theme-tiles{grid-template-columns:repeat(3,1fr)}.set-tile{border-radius:var(--r-sm);background:var(--bg);border:1.5px solid var(--border);text-align:left;transition:border-color .2s, background .2s, transform .2s var(--ease);align-items:center;gap:10px;padding:16px;font-size:14px;display:flex;position:relative}.set-tile:hover{transform:translateY(-1px)}.set-tile[aria-checked=true]{border-color:var(--primary);background:var(--primary-soft)}.set-tile .flag{height:17px}.set-tile.tall{align-items:flex-start}.tile-ico{border-radius:var(--r-sm);flex-shrink:0;place-items:center;width:38px;height:38px;display:grid}.tile-txt{flex-direction:column;gap:3px;display:flex}.tile-txt b{font-size:14px}.tile-txt span{color:var(--text-2);font-size:12.5px;line-height:1.45}.tile-check{background:var(--primary);border-radius:50%;place-items:center;width:20px;height:20px;display:none;position:absolute;top:10px;right:10px}.set-tile[aria-checked=true] .tile-check{display:grid}.set-tile.theme{flex-direction:column;align-items:stretch;gap:8px;font-size:13px;font-weight:600}.tprev{border:1px solid var(--border);border-radius:9px;height:56px;padding:8px;font-size:15px;display:block;position:relative}.tprev i{border-radius:3px;height:5px;margin:5px 0 0 28px;display:block}.tprev-light{background:#f3f7fc}.tprev-light i{background:#cbd8e8}.tprev-dark{background:#1e293b}.tprev-dark i{background:#475569}.tprev-sys{padding:0;display:flex;overflow:hidden}.tprev-sys-half{flex:1 0 50%;align-items:flex-end;padding:8px;display:flex}.tprev-sys-light{background:#f3f7fc}.tprev-sys-dark{background:#1e293b}.tprev-sys .tprev-sys-half i{border-radius:3px;width:100%;height:5px;margin:0}.tprev-sys-light i{background:#cbd8e8}.tprev-sys-dark i{background:#475569}.set-toggle-row{margin-top:var(--s-3);border-radius:var(--r-sm);border:1px solid var(--border);background:var(--bg);align-items:center;gap:12px;padding:14px;display:flex}.set-time.set-card{align-self:start;padding-bottom:12px}.set-time .set-head{margin-bottom:var(--s-2)}.set-time .ulabel{margin-bottom:6px}.set-time .set-toggle-row{margin-top:var(--s-2)}.set-provider .set-head{margin-bottom:var(--s-2)}.set-provider-options{gap:10px;display:grid}.set-provider-option{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--bg);align-items:center;gap:12px;min-width:0;padding:12px;display:flex}.set-provider-option.is-current{border-color:var(--primary);background:color-mix(in srgb, var(--primary) 8%, var(--bg))}.set-provider-radio{border:1.5px solid var(--text-3);border-radius:50%;flex:0 0 18px;place-items:center;width:18px;height:18px;display:grid}.is-current .set-provider-radio{border-color:var(--primary)}.is-current .set-provider-radio span{background:var(--primary);border-radius:50%;width:8px;height:8px}.set-provider-copy,.set-provider-name{min-width:0;display:flex}.set-provider-copy{color:var(--text-2);flex-direction:column;flex:1;gap:4px;font-size:12px}.set-provider-name{color:var(--text);flex-wrap:wrap;align-items:center;gap:8px;font-size:13px}.set-provider-badge{border:1px solid var(--border);background:var(--bg);color:var(--text-2);border-radius:999px;padding:0 8px;font-size:11px;font-weight:600}.set-provider-badge.is-live{background:color-mix(in srgb, var(--primary) 16%, transparent);color:var(--ink-primary)}.set-provider-option.is-unavailable{cursor:not-allowed;border-style:dashed}.set-provider-option.is-unavailable .set-provider-radio{opacity:.6;border-style:dashed}.notif-item{border-radius:var(--r-sm);border:1px solid var(--border);background:var(--bg);align-items:center;gap:12px;padding:14px;display:flex}.notif-item .metric-ico{flex-shrink:0}.notif-txt{flex-direction:column;gap:2px;min-width:0;display:flex}.notif-txt b{font-size:13px}.notif-txt span{color:var(--text-2);font-size:12.5px;line-height:1.4}.priv-grid{gap:var(--s-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.priv-tile{border-radius:var(--r-sm);text-align:left;border:1px solid var(--border);background:var(--bg);transition:border-color .2s, transform .2s var(--ease), box-shadow .2s;align-items:center;gap:12px;padding:14px;display:flex}.priv-tile:hover{box-shadow:var(--shadow-sm);border-color:#2563eb66;transform:translateY(-2px)}.priv-tile .metric-ico{flex-shrink:0}.priv-txt{flex-direction:column;gap:2px;min-width:0;display:flex}.priv-txt b{font-size:13px}.priv-txt span{color:var(--text-2);font-size:12.5px;line-height:1.4}:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:8px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.skip-link{z-index:200;background:var(--text);color:#fff;transition:top .25s var(--ease);border-radius:12px;padding:12px 20px;font-size:14px;font-weight:600;text-decoration:none;position:fixed;top:-64px;left:16px}.skip-link:focus{top:12px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=900px){.topnav,.main,.footer-inner{padding-left:calc(var(--s-2) + var(--sal));padding-right:calc(var(--s-2) + var(--sar))}}@media (pointer:coarse),(width<=900px){.icon-btn{min-width:44px;min-height:44px}.chip,.compare-chip,.uchips button,.btn-primary{min-height:44px}.uchips button{min-width:44px}.seg-icons button{min-width:44px;min-height:38px}.footer-col button,.footer-col a{align-items:center;min-width:44px;min-height:44px;display:inline-flex}.side-pos-body{justify-content:center;min-height:44px}.map-panel-actions{gap:8px}.switch,.favx-star,.fav-remove-s,.hero-fav-btn,.side-pos-refresh,.map-panel-favorite,.map-panel-share,.map-panel-close,.map-recents-link{position:relative}.switch:before,.favx-star:before,.fav-remove-s:before,.hero-fav-btn:before,.side-pos-refresh:before,.map-panel-favorite:before,.map-panel-share:before,.map-panel-close:before,.map-recents-link:before{content:"";width:max(100%,44px);height:max(100%,44px);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.seg-toggle button,.seg-icons button,.chart-tabs button{position:relative}.seg-toggle button:before,.seg-icons button:before,.chart-tabs button:before{content:"";height:44px;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.maplibregl-ctrl-group button{width:44px;height:44px}}.hero-city,.favx-names b,.info-name b,.pop-names b,.si-name{overflow-wrap:anywhere}@media (width<=1240px){.home-grid{grid-template-columns:minmax(0,1.45fr) minmax(300px,1fr)}.hero-temp{font-size:72px}.hero-city{font-size:40px}}@media (width<=1080px){.home-grid{grid-template-columns:minmax(0,1fr)}.metrics-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}body[data-mode=simple] .metrics-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.home-duo{grid-template-columns:minmax(0,1fr)}.forecast-row{scroll-snap-type:x mandatory;padding:4px 4px 14px;display:flex;overflow-x:auto}.forecast-row .forecast-card{scroll-snap-align:start;flex:0 0 162px}.seg-toggle button{padding:0 12px}.footer-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.map-info-grid,.fc-duo,.about-hero-card{grid-template-columns:minmax(0,1fr)}.about-features{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.about-duo,.set-grid{grid-template-columns:minmax(0,1fr)}.priv-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}@media (width<=900px){.topnav-inner{padding:0 var(--s-2);gap:var(--s-2)}.icon-btn.nav-burger{display:inline-flex}.shell{grid-template-columns:minmax(0,1fr)}.sidebar{left:0;top:var(--topnav-h);z-index:95;background:var(--card);border-right:1px solid var(--border);width:268px;box-shadow:var(--shadow-lg);transition:transform .38s var(--ease);padding-top:var(--s-3);position:fixed;transform:translate(-105%)}.sidebar.is-open{transform:none}.sidebar-scrim:not([hidden]){display:block}.search-kbd,#modeToggle{display:none}.main{padding:var(--s-3) var(--s-2) var(--s-5)}}@media (width>=901px) and (width<=1200px){.search-kbd{display:none}}@media (width<=640px){.brand-logo{display:none}.brand-mark{display:block}.hero{min-height:420px}.hero-inner{padding:var(--s-3)}.hero-city{font-size:30px}.hero-temp{font-size:54px}.hero-wicon{width:72px;height:72px}.hero-now{gap:14px}.fc-icon{width:40px;height:40px}.hero-landmark{font-size:150px}.section-title{font-size:22px}.metrics-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.footer-grid{gap:var(--s-3) var(--s-2);grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.footer-brand{grid-column:1/-1}.footer-inner{padding:var(--s-4) var(--s-2) var(--s-2)}#homeMap{height:280px}.about-features{grid-template-columns:minmax(0,1fr)}.about-art{min-height:220px}.src-row{flex-wrap:wrap}.src-row .link-chip{margin-left:58px}.priv-grid,.set-tiles{grid-template-columns:minmax(0,1fr)}.theme-tiles{grid-template-columns:repeat(3,1fr)}.map-card,.chart-card,.fc-chart-card,.info-card,.set-card,.about-hero-card{padding:var(--s-2)}.fav-grid{grid-template-columns:minmax(0,1fr)}.explore-card{flex-basis:180px;height:220px}}.carousel,.forecast-carousel,.hourly-strip,.forecast-row{scrollbar-width:none;-ms-overflow-style:none}.carousel::-webkit-scrollbar{width:0;height:0;display:none}.forecast-carousel::-webkit-scrollbar{width:0;height:0;display:none}.hourly-strip::-webkit-scrollbar{width:0;height:0;display:none}.forecast-row::-webkit-scrollbar{width:0;height:0;display:none}@media (width<=520px){.topnav-inner{gap:8px}}@media (width<=350px){.topnav-inner{padding-inline:0}.topnav-start,.topnav-actions{gap:8px}}@media (width<=374px){.metric-head,.mg-head{flex-direction:column;align-items:flex-start;gap:6px}}
