:root {
  color-scheme: dark;
  --bg: #030914;
  --bg-soft: #071224;
  --surface: rgba(8, 25, 53, .78);
  --surface-strong: rgba(10, 33, 70, .92);
  --surface-faint: rgba(255,255,255,.055);
  --line: rgba(139, 196, 255, .14);
  --line-strong: rgba(101, 180, 255, .28);
  --text: #f6f9ff;
  --text-soft: #c5d5eb;
  --muted: #8298b6;
  --primary: #1e9bff;
  --primary-2: #2673ff;
  --cyan: #51d8ff;
  --green: #45e889;
  --yellow: #ffc44d;
  --orange: #ff8a4d;
  --red: #ff5d6c;
  --purple: #8b6cff;
  --shadow-lg: 0 30px 90px rgba(0, 4, 15, .46);
  --shadow-md: 0 18px 42px rgba(0, 5, 20, .25);
  --radius-xl: 30px;
  --radius-lg: 24px;
  --radius-md: 18px;
  --sidebar-w: 246px;
  --topbar-h: 88px;
  --mobile-nav-h: 74px;
  --safe-top: env(safe-area-inset-top, 0px);
  --safe-bottom: env(safe-area-inset-bottom, 0px);
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

* { box-sizing: border-box; }
html { min-width: 320px; min-height: 100%; background: var(--bg); scroll-behavior: smooth; }
body { margin: 0; min-height: 100vh; min-height: 100dvh; overflow-x: hidden; background: var(--bg); color: var(--text); -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
button, input, select { font: inherit; color: inherit; }
button { border: 0; }
button, [role="button"] { -webkit-tap-highlight-color: transparent; }
button:focus-visible, input:focus-visible, select:focus-visible, a:focus-visible { outline: 3px solid rgba(81,216,255,.55); outline-offset: 3px; }
button:disabled { opacity: .5; cursor: not-allowed !important; transform: none !important; }
img, svg { display: block; }
svg { width: 1.25em; height: 1.25em; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.svg-sprite { position: fixed; width: 0; height: 0; overflow: hidden; }
[hidden] { display: none !important; }

.ambient { position: fixed; inset: 0; z-index: -2; pointer-events: none; overflow: hidden; background: radial-gradient(circle at 78% 8%, rgba(21,112,255,.13), transparent 28%), radial-gradient(circle at 8% 82%, rgba(0,176,255,.08), transparent 32%), linear-gradient(145deg,#020713 0%,#041226 48%,#020814 100%); }
.ambient::before { content: ""; position: absolute; inset: 0; opacity: .16; background-image: linear-gradient(rgba(122,183,255,.08) 1px, transparent 1px), linear-gradient(90deg, rgba(122,183,255,.08) 1px, transparent 1px); background-size: 68px 68px; mask-image: radial-gradient(circle at center, black, transparent 82%); }
.ambient-orb { position: absolute; border-radius: 50%; filter: blur(60px); opacity: .22; animation: ambientFloat 16s ease-in-out infinite alternate; }
.orb-one { width: 380px; height: 380px; top: -160px; right: 5%; background: #086cff; }
.orb-two { width: 300px; height: 300px; bottom: -100px; left: 12%; background: #00b9ff; animation-delay: -5s; }
.orb-three { width: 230px; height: 230px; top: 38%; left: 48%; background: #5936ff; opacity: .1; animation-delay: -10s; }
@keyframes ambientFloat { to { transform: translate3d(45px,-30px,0) scale(1.14); } }


.button { min-height: 48px; padding: 0 19px; display: inline-flex; align-items: center; justify-content: center; gap: 10px; border-radius: 15px; cursor: pointer; font-weight: 700; letter-spacing: -.01em; transition: transform .2s ease, background .2s ease, border-color .2s ease, box-shadow .2s ease; }
.button:hover { transform: translateY(-2px); }
.button svg { width: 19px; height: 19px; }
.primary-button { color: white; background: linear-gradient(135deg, #19a7ff 0%, #176cff 100%); box-shadow: 0 14px 34px rgba(17,117,255,.28), inset 0 1px rgba(255,255,255,.26); }
.primary-button:hover { box-shadow: 0 17px 40px rgba(17,117,255,.4), inset 0 1px rgba(255,255,255,.28); }
.glow-button { position: relative; overflow: hidden; }
.glow-button::after { content:""; position:absolute; inset:-2px; transform: translateX(-110%) skewX(-22deg); background: linear-gradient(90deg,transparent,rgba(255,255,255,.22),transparent); animation: buttonSheen 4.5s ease-in-out infinite; }
@keyframes buttonSheen { 0%,60%{transform:translateX(-120%) skewX(-22deg)} 82%,100%{transform:translateX(120%) skewX(-22deg)} }
.light-button { color: #0a2d62; background: linear-gradient(180deg,#fff,#e8f1ff); box-shadow: 0 10px 25px rgba(0,15,50,.16); }
.ghost-button { background: transparent; color: #b9cff0; border: 1px solid rgba(143,196,255,.16); }
.ghost-button:hover { background: rgba(255,255,255,.06); border-color: rgba(143,196,255,.34); }
.outline-button { background: rgba(255,255,255,.055); border: 1px solid var(--line-strong); color: var(--text); }
.outline-button:hover { background: rgba(37,137,255,.12); border-color: rgba(75,174,255,.54); }
.danger-button { background: linear-gradient(135deg,#ff656e,#e43152); color:#fff; box-shadow:0 12px 28px rgba(228,49,82,.24); }
.full-button { width: 100%; }
.compact-button { min-height: 45px; }
.round-button { width: 44px; height: 44px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 14px; color: var(--text-soft); cursor: pointer; background: rgba(255,255,255,.052); border: 1px solid var(--line); transition: .2s ease; }
.round-button:hover { color: #fff; background: rgba(32,146,255,.13); border-color: rgba(74,176,255,.36); transform: translateY(-2px); }
.round-button svg { width: 20px; height: 20px; }
.section-kicker { display: block; margin-bottom: 6px; color: #64c8ff; font-size: 10px; line-height: 1; font-weight: 800; letter-spacing: .18em; }
.soft-badge { display: inline-flex; align-items: center; min-height: 30px; padding: 0 11px; border: 1px solid rgba(114,190,255,.18); border-radius: 999px; background: rgba(32,131,229,.08); color: #9fc9f1; font-size: 11px; font-weight: 700; white-space: nowrap; }
.soft-badge.good { color: #7df0aa; border-color: rgba(69,232,137,.22); background: rgba(69,232,137,.08); }


.global-loader { position: fixed; inset: 0; z-index: 5000; display: grid; place-items: center; padding: 24px; background: rgba(1,7,18,.62); backdrop-filter: blur(18px) saturate(120%); opacity: 0; visibility: hidden; transition: opacity .2s ease, visibility .2s ease; }
.global-loader.active { opacity: 1; visibility: visible; }
.loader-card { width: min(360px, 90vw); padding: 30px 28px 24px; text-align: center; border: 1px solid rgba(120,197,255,.22); border-radius: 26px; background: linear-gradient(150deg,rgba(11,39,78,.96),rgba(4,18,39,.96)); box-shadow: 0 28px 90px rgba(0,0,0,.48), inset 0 1px rgba(255,255,255,.08); }
.loader-card strong { display:block; margin-top:18px; font-family:Manrope,sans-serif; font-size:18px; }
.loader-card small { display:block; margin-top:7px; color:var(--muted); line-height:1.5; }
.weather-loader { position:relative; width:96px; height:62px; margin:0 auto; }
.loader-sun { position:absolute; top:1px; left:25px; width:38px; height:38px; border-radius:50%; background:linear-gradient(145deg,#ffe56d,#ff9d00); box-shadow:0 0 28px rgba(255,190,30,.45); animation:loaderSun 2s ease-in-out infinite; }
.loader-sun::before { content:""; position:absolute; inset:-10px; border:1px dashed rgba(255,205,68,.5); border-radius:50%; animation:spin 4s linear infinite; }
.loader-cloud { position:absolute; left:18px; bottom:8px; width:65px; height:25px; border-radius:999px; background:linear-gradient(#fff,#c8d9f1); box-shadow:0 8px 20px rgba(0,0,0,.22); animation:loaderCloud 1.8s ease-in-out infinite alternate; }
.loader-cloud::before,.loader-cloud::after { content:""; position:absolute; border-radius:50%; background:inherit; }
.loader-cloud::before { width:28px;height:28px;left:11px;top:-13px; }.loader-cloud::after{width:34px;height:34px;right:8px;top:-18px;}
.weather-loader i { position:absolute; bottom:-1px; width:3px; height:10px; border-radius:3px; background:#53cfff; animation:rainDrop 1.1s linear infinite; }.weather-loader i:nth-of-type(1){left:32px}.weather-loader i:nth-of-type(2){left:48px;animation-delay:-.35s}.weather-loader i:nth-of-type(3){left:64px;animation-delay:-.7s}
.loader-progress { height:3px; margin-top:22px; overflow:hidden; border-radius:99px; background:rgba(255,255,255,.07); }.loader-progress span{display:block;width:42%;height:100%;border-radius:inherit;background:linear-gradient(90deg,transparent,#4ecbff,#2572ff,transparent);animation:loaderProgress 1.25s ease-in-out infinite;}
@keyframes spin{to{transform:rotate(360deg)}} @keyframes loaderSun{50%{transform:scale(1.08)}} @keyframes loaderCloud{to{transform:translateX(6px)}} @keyframes rainDrop{0%{transform:translateY(-3px);opacity:0}40%{opacity:1}100%{transform:translateY(12px);opacity:0}} @keyframes loaderProgress{from{transform:translateX(-120%)}to{transform:translateX(340%)}}

.network-banner { position: fixed; top: calc(14px + var(--safe-top)); left: 50%; z-index: 6000; transform: translate(-50%,-230%); min-width: 260px; padding: 12px 18px; border:1px solid rgba(99,195,255,.25); border-radius:999px; background:rgba(8,33,68,.96); box-shadow:var(--shadow-md); text-align:center; color:#dbeaff; font-size:13px; font-weight:700; transition:transform .35s cubic-bezier(.2,.9,.2,1); }.network-banner.show{transform:translate(-50%,0)}.network-banner.offline{border-color:rgba(255,178,72,.35);color:#ffd69c;}


.welcome-shell { position: relative; z-index: 1; min-height: 100vh; min-height: 100dvh; display: grid; grid-template-columns: minmax(0,1.05fr) minmax(500px,.95fr); overflow:hidden; }
.welcome-story { min-height:100%; padding:44px clamp(36px,5vw,84px) 34px; display:flex; flex-direction:column; justify-content:space-between; position:relative; }
.welcome-story::after { content:""; position:absolute; top:0; right:0; width:1px; height:100%; background:linear-gradient(transparent,rgba(95,171,255,.2),transparent); }
.welcome-brand,.sidebar-brand { display:flex; align-items:center; gap:12px; font-family:Manrope,sans-serif; font-size:24px; font-weight:700; letter-spacing:-.045em; }
.brand-logo { width:43px; height:43px; object-fit:contain; filter:drop-shadow(0 8px 14px rgba(0,114,255,.22)); }
.welcome-brand b,.sidebar-brand b { color:#1c98ff; }
.story-copy { width:min(690px,100%); padding:45px 0; }
.story-copy h1 { margin:0 0 18px; max-width:760px; font-family:Manrope,sans-serif; font-size:clamp(44px,5.2vw,76px); line-height:.98; letter-spacing:-.065em; }
.story-copy h1 span { color:transparent; background:linear-gradient(90deg,#63d9ff,#2c8cff 55%,#8170ff); -webkit-background-clip:text; background-clip:text; }
.story-copy>p { max-width:640px; margin:0; color:#9eb2cc; font-size:clamp(16px,1.3vw,20px); line-height:1.7; }
.story-features { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:34px; }
.story-features article { min-height:78px; display:flex; align-items:center; gap:13px; padding:14px; border:1px solid rgba(117,182,255,.11); border-radius:18px; background:rgba(255,255,255,.025); backdrop-filter:blur(12px); transition:.25s ease; }
.story-features article:hover { transform:translateY(-3px); border-color:rgba(100,194,255,.28); background:rgba(40,128,230,.07); }
.story-features article>span { width:43px;height:43px;display:grid;place-items:center;flex:0 0 auto;border-radius:14px;background:linear-gradient(145deg,rgba(36,151,255,.22),rgba(31,89,200,.12));color:#66cfff;box-shadow:inset 0 1px rgba(255,255,255,.08); }
.story-features article strong,.story-features article small { display:block; }.story-features article strong{font-size:13px;margin-bottom:4px}.story-features article small{color:#7f95b2;font-size:11px;line-height:1.35}
.story-footer { display:flex; justify-content:space-between; gap:20px; color:#607795; font-size:11px; }.story-footer span{display:flex;align-items:center;gap:8px}.story-footer svg{width:16px;height:16px;color:#55d692}
.welcome-stage { position:relative; display:grid; place-items:center; min-height:100%; padding:50px 30px; background:radial-gradient(circle at 50% 42%,rgba(0,111,255,.22),transparent 33%),linear-gradient(160deg,rgba(8,32,71,.44),rgba(2,12,28,.15)); }
.stage-weather { position:absolute; inset:0; overflow:hidden; pointer-events:none; }.stage-weather::before{content:"";position:absolute;width:510px;height:510px;top:50%;left:50%;transform:translate(-50%,-50%);border:1px solid rgba(70,157,255,.12);border-radius:50%;box-shadow:0 0 0 80px rgba(25,112,236,.025),0 0 0 170px rgba(25,112,236,.018)}
.stage-sun{position:absolute;top:10%;right:12%;width:90px;height:90px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff1a0,#ffaf09 65%,#ff7a00);box-shadow:0 0 70px rgba(255,180,14,.28);animation:stageFloat 5s ease-in-out infinite alternate}.stage-sun::after{content:"";position:absolute;inset:-20px;border:2px dashed rgba(255,197,62,.24);border-radius:50%;animation:spin 18s linear infinite}
.stage-cloud{position:absolute;width:135px;height:38px;border-radius:999px;background:linear-gradient(180deg,rgba(255,255,255,.28),rgba(165,209,255,.1));filter:blur(.2px);opacity:.5}.stage-cloud::before,.stage-cloud::after{content:"";position:absolute;border-radius:50%;background:inherit}.stage-cloud::before{width:58px;height:58px;left:20px;top:-30px}.stage-cloud::after{width:72px;height:72px;right:18px;top:-42px}.cloud-a{left:8%;top:22%;animation:cloudDrift 11s ease-in-out infinite alternate}.cloud-b{right:2%;bottom:18%;transform:scale(.72);opacity:.24;animation:cloudDrift 14s ease-in-out infinite alternate-reverse}
.stage-star{position:absolute;width:4px;height:4px;border-radius:50%;background:#8cdaff;box-shadow:0 0 15px #54c7ff}.star-a{left:18%;bottom:25%;animation:twinkle 2.8s ease-in-out infinite}.star-b{right:17%;top:39%;animation:twinkle 3.4s ease-in-out infinite reverse}@keyframes stageFloat{to{transform:translateY(12px) scale(1.04)}}@keyframes cloudDrift{to{transform:translateX(38px)}}@keyframes twinkle{50%{opacity:.2;transform:scale(.5)}}
.phone-shell { position:relative; z-index:2; width:min(390px,92%); height:min(760px,calc(100dvh - 44px)); min-height:min(650px,calc(100dvh - 28px)); border:2px solid rgba(255,255,255,.22); border-radius:52px; background:#010712; box-shadow:0 50px 100px rgba(0,0,0,.55),0 0 0 7px rgba(3,8,16,.84),0 0 0 9px rgba(143,177,219,.22),inset 0 0 0 1px rgba(255,255,255,.12); overflow:hidden; }
.phone-shell::after{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;background:linear-gradient(120deg,rgba(255,255,255,.09),transparent 20%,transparent 75%,rgba(78,159,255,.05));}
.phone-island{position:absolute;z-index:5;top:11px;left:50%;transform:translateX(-50%);width:112px;height:27px;border-radius:99px;background:#000;box-shadow:inset 0 -1px rgba(255,255,255,.06)}
.phone-status{position:absolute;z-index:4;top:20px;left:28px;right:27px;display:flex;justify-content:space-between;font-size:11px;font-weight:700}.status-symbols{letter-spacing:1px;color:#e9f4ff}
.phone-screen{position:absolute;inset:0;border-radius:inherit;overflow:hidden;background:radial-gradient(circle at 75% 15%,rgba(21,117,255,.2),transparent 34%),linear-gradient(155deg,#061a3d,#03132d 58%,#051c40);}
.phone-screen::before{content:"";position:absolute;inset:0;opacity:.1;background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);background-size:36px 36px;mask-image:linear-gradient(to bottom,black,transparent 70%)}
.onboarding-view{position:absolute;inset:0;padding:70px 32px 28px;display:flex;flex-direction:column;opacity:0;visibility:hidden;transform:translateX(24px);transition:.4s cubic-bezier(.2,.85,.2,1);overflow:auto;scrollbar-width:none}.onboarding-view::-webkit-scrollbar{display:none}.onboarding-view.active{opacity:1;visibility:visible;transform:none}
.auth-logo-wrap{display:flex;align-items:center;justify-content:center;gap:11px;text-align:left}.auth-logo{width:64px;height:64px}.auth-logo-wrap h2{margin:0;font:800 32px/1 Manrope,sans-serif;letter-spacing:-.06em}.auth-logo-wrap h2 span{color:#1595ff}.auth-logo-wrap p{margin:5px 0 0;color:#aabdd5;font-size:11px}
.auth-head{margin-top:48px;text-align:center}.auth-kicker{color:#55c8ff;font-size:9px;font-weight:800;letter-spacing:.2em}.auth-head h3,.location-head h3{margin:10px 0 9px;font:800 24px/1.15 Manrope,sans-serif;letter-spacing:-.04em}.auth-head p,.location-head p{margin:0;color:#91a6c2;font-size:12px;line-height:1.55}
.auth-actions{margin-top:27px;display:flex;flex-direction:column;gap:12px}.auth-actions>.button{width:100%}.auth-secondary-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.auth-secondary-grid .button{min-height:52px}.auth-divider{height:24px;display:flex;align-items:center;gap:12px;color:#66809f;font-size:10px}.auth-divider::before,.auth-divider::after{content:"";height:1px;flex:1;background:linear-gradient(90deg,transparent,rgba(134,184,241,.18))}.auth-divider::after{transform:scaleX(-1)}.auth-divider.compact{height:30px}
.scan-icon{font-size:22px}#guest-login{margin-top:11px;min-height:54px}.ghost-button svg{width:15px;margin-left:auto}.auth-security{margin-top:auto;display:flex;gap:10px;align-items:center;padding:13px;border:1px solid rgba(89,171,255,.12);border-radius:15px;background:rgba(255,255,255,.025);color:#6f88a8}.auth-security svg{flex:0 0 auto;color:#65d49b}.auth-security strong,.auth-security small{display:block}.auth-security strong{color:#b9cce3;font-size:10px;margin-bottom:2px}.auth-security small{font-size:9px;line-height:1.35}
.back-auth{position:absolute;top:65px;left:22px;width:36px;height:36px}.back-auth svg{transform:rotate(180deg)}.location-head{text-align:center;margin-top:22px}.location-visual{position:relative;width:190px;height:190px;margin:26px auto 10px;display:grid;place-items:center}.location-ring{position:absolute;border:1px solid rgba(38,145,255,.28);border-radius:50%;animation:locationPulse 3s ease-out infinite}.ring-one{width:78px;height:78px}.ring-two{width:126px;height:126px;animation-delay:-1s}.ring-three{width:180px;height:180px;animation-delay:-2s}@keyframes locationPulse{0%{transform:scale(.82);opacity:.15}50%{opacity:.75}100%{transform:scale(1.08);opacity:.05}}
.location-pin{position:relative;z-index:2;width:70px;height:70px;display:grid;place-items:center;border-radius:23px;background:linear-gradient(145deg,#31bdff,#126eff);box-shadow:0 22px 42px rgba(0,105,255,.38),inset 0 1px rgba(255,255,255,.38);animation:pinFloat 2.4s ease-in-out infinite}.location-pin svg{width:35px;height:35px}.location-ok{position:absolute;z-index:3;right:24px;bottom:28px;width:39px;height:39px;display:grid;place-items:center;border:4px solid #061735;border-radius:50%;background:#39d776;color:#fff;font-size:20px;font-weight:800;opacity:0;transform:scale(.4);transition:.35s cubic-bezier(.2,1.6,.3,1)}.location-ok.show{opacity:1;transform:scale(1)}@keyframes pinFloat{50%{transform:translateY(-8px)}}
.location-result{text-align:center;min-height:51px}.location-result strong,.location-result small{display:block}.location-result strong{font-size:13px}.location-result small{margin-top:5px;color:#8198b8;font-size:10px}.location-view>.primary-button{margin-top:18px;width:100%}.onboarding-search{position:relative;display:flex;align-items:center;gap:8px;min-height:48px;padding-left:15px;border:1px solid rgba(123,190,255,.2);border-radius:15px;background:rgba(255,255,255,.055)}.onboarding-search>svg{width:17px;color:#6cbaff}.onboarding-search input{min-width:0;flex:1;border:0;outline:0;background:transparent;font-size:12px}.onboarding-search input::placeholder{color:#6c84a4}.onboarding-search>button{align-self:stretch;padding:0 14px;border-radius:0 14px 14px 0;background:rgba(31,137,255,.17);cursor:pointer;color:#8bd2ff;font-size:10px;font-weight:800}.floating-results{position:absolute;z-index:10;top:55px;left:0;right:0;max-height:180px;overflow:auto;border:1px solid rgba(104,181,255,.24);border-radius:15px;background:rgba(4,21,47,.98);box-shadow:0 20px 40px rgba(0,0,0,.38)}.floating-results:empty{display:none}.floating-result{width:100%;padding:12px 14px;display:flex;justify-content:space-between;gap:10px;text-align:left;border-bottom:1px solid rgba(255,255,255,.05);background:transparent;cursor:pointer}.floating-result:hover{background:rgba(41,139,255,.1)}.floating-result strong,.floating-result small{display:block}.floating-result strong{font-size:11px}.floating-result small{margin-top:3px;color:#7089a9;font-size:9px}.continue-button{width:100%;margin-top:13px;background:rgba(255,255,255,.06);border:1px solid rgba(117,187,255,.17);color:#d3e5f9}.continue-button:not(:disabled){background:linear-gradient(135deg,#1aa8ff,#176eff);border-color:transparent;box-shadow:0 14px 30px rgba(18,117,255,.28)}
.stage-caption{position:absolute;z-index:3;bottom:22px;display:flex;align-items:center;gap:9px;padding:9px 14px;border:1px solid rgba(113,190,255,.14);border-radius:999px;background:rgba(4,18,39,.72);backdrop-filter:blur(12px);color:#7f99b7;font-size:10px}.stage-caption i{width:1px;height:12px;background:rgba(255,255,255,.12)}.live-dot{width:7px;height:7px;border-radius:50%;background:#43e58b;box-shadow:0 0 12px #43e58b}


.app-shell { min-height:100vh; min-height:100dvh; display:grid; grid-template-columns:var(--sidebar-w) minmax(0,1fr); background:linear-gradient(145deg,#030914,#041023 55%,#030914); }
.sidebar { position:fixed; z-index:60; inset:0 auto 0 0; width:var(--sidebar-w); padding:28px 18px 22px; display:flex; flex-direction:column; background:linear-gradient(180deg,rgba(7,25,54,.98),rgba(3,14,31,.99)); border-right:1px solid var(--line); box-shadow:18px 0 60px rgba(0,0,0,.16); }
.sidebar-brand{padding:2px 10px 31px;font-size:21px}.sidebar-brand .brand-logo{width:38px;height:38px}.sidebar-brand em{margin-left:auto;padding:4px 7px;border-radius:8px;background:rgba(44,145,255,.12);color:#60c9ff;font:800 8px/1 Inter,sans-serif;letter-spacing:.08em}.sidebar-close{display:none;position:absolute;right:16px;top:18px}
.main-nav{display:flex;flex-direction:column;gap:5px}.nav-link{position:relative;width:100%;min-height:50px;padding:0 14px;display:flex;align-items:center;gap:13px;border-radius:15px;background:transparent;color:#8299b7;cursor:pointer;font-size:13px;font-weight:650;text-align:left;transition:.22s ease}.nav-link svg{width:20px;height:20px}.nav-link:hover{color:#cfe5ff;background:rgba(255,255,255,.035)}.nav-link.active{color:#fff;background:linear-gradient(90deg,rgba(24,125,255,.22),rgba(23,113,224,.06));box-shadow:inset 0 0 0 1px rgba(58,164,255,.22)}.nav-link.active svg{color:#40baff;filter:drop-shadow(0 0 8px rgba(42,166,255,.45))}.nav-link>i{position:absolute;right:-18px;width:3px;height:24px;border-radius:5px;background:#24a8ff;box-shadow:0 0 14px #24a8ff;opacity:0;transform:scaleY(.3);transition:.22s}.nav-link.active>i{opacity:1;transform:scaleY(1)}.nav-link>b{margin-left:auto;min-width:20px;height:20px;padding:0 6px;display:grid;place-items:center;border-radius:99px;background:rgba(60,154,255,.13);color:#78cfff;font-size:9px}.sidebar-spacer{flex:1}
.sidebar-weather{display:flex;align-items:center;gap:11px;padding:13px;border:1px solid rgba(92,172,255,.16);border-radius:17px;background:radial-gradient(circle at 10% 10%,rgba(41,150,255,.15),transparent 55%),rgba(255,255,255,.025)}.mini-weather-art{width:42px;height:42px;display:grid;place-items:center}.mini-weather-art .weather-svg{width:42px;height:42px}.sidebar-weather strong,.sidebar-weather small{display:block}.sidebar-weather strong{font-size:18px}.sidebar-weather small{max-width:120px;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#839bb9;font-size:9px}.sidebar-install,.sidebar-logout{width:100%;min-height:43px;margin-top:10px;padding:0 12px;display:flex;align-items:center;gap:11px;border-radius:13px;background:transparent;color:#7890af;cursor:pointer;font-size:11px;font-weight:700}.sidebar-install{border:1px dashed rgba(76,175,255,.26);color:#70c7ff;background:rgba(25,126,230,.06)}.sidebar-logout:hover,.sidebar-install:hover{background:rgba(255,255,255,.05);color:#fff}.sidebar-install svg,.sidebar-logout svg{width:18px;height:18px}.sidebar-credit{padding:15px 10px 0;color:#435a78;font-size:8px;line-height:1.5}
.app-content{grid-column:2;min-width:0;min-height:100vh}.topbar{position:sticky;z-index:50;top:0;height:var(--topbar-h);padding:0 clamp(20px,2.6vw,42px);display:grid;grid-template-columns:minmax(260px,1fr) minmax(280px,520px) minmax(260px,1fr);align-items:center;gap:22px;border-bottom:1px solid var(--line);background:rgba(3,12,28,.76);backdrop-filter:blur(22px) saturate(150%)}.topbar-left,.topbar-actions{display:flex;align-items:center}.topbar-left{min-width:0}.topbar-actions{justify-content:flex-end;gap:9px}.menu-button{display:none;margin-right:10px}.location-command{min-width:0;display:flex;align-items:center;gap:11px;padding:8px 10px 8px 8px;border-radius:15px;background:transparent;cursor:pointer;text-align:left;transition:.2s}.location-command:hover{background:rgba(255,255,255,.04)}.location-command-icon{width:38px;height:38px;display:grid;place-items:center;flex:0 0 auto;border:1px solid rgba(68,169,255,.2);border-radius:13px;background:rgba(27,132,239,.09);color:#48bdff}.location-command strong,.location-command small{display:block;max-width:230px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.location-command strong{font-size:13px}.location-command small{margin-top:4px;color:#6f86a5;font-size:9px}.location-chevron{width:14px;height:14px;margin-left:4px;color:#56708f;transform:rotate(90deg)}.command-search{width:100%;min-height:44px;padding:0 13px;display:flex;align-items:center;gap:10px;border:1px solid rgba(116,183,255,.14);border-radius:14px;background:rgba(255,255,255,.035);color:#6984a4;cursor:pointer;text-align:left;transition:.2s}.command-search:hover{border-color:rgba(84,180,255,.35);background:rgba(38,129,226,.07);color:#b8cde5}.command-search span{flex:1;font-size:11px}.command-search svg{width:17px}.command-search kbd{padding:4px 7px;border:1px solid rgba(255,255,255,.08);border-radius:7px;background:rgba(0,0,0,.18);font:600 8px/1 Inter,sans-serif;color:#607894}.favorite-button.active{color:#ffcf54;border-color:rgba(255,199,62,.35);background:rgba(255,184,29,.09)}.favorite-button.active svg{fill:currentColor}.favorite-button.burst .star-pulse{animation:starBurst .55s ease-out}.star-pulse{position:absolute;width:44px;height:44px;border:1px solid #ffcc4f;border-radius:50%;opacity:0}@keyframes starBurst{0%{transform:scale(.3);opacity:.8}100%{transform:scale(1.6);opacity:0}}.profile-button{position:relative;width:44px;height:44px;margin-left:4px;border-radius:14px;background:linear-gradient(145deg,#21b5ff,#1768ec);box-shadow:0 10px 24px rgba(13,110,245,.26);cursor:pointer;color:#fff;font-size:10px;font-weight:800}.profile-button i{position:absolute;right:-1px;bottom:-1px;width:10px;height:10px;border:2px solid #06152f;border-radius:50%;background:#45e889}
.pages-wrap{padding:30px clamp(20px,2.7vw,44px) 48px}.page{display:none;animation:pageOut .2s ease}.page.active-page{display:block;animation:pageIn .42s cubic-bezier(.2,.85,.2,1)}@keyframes pageIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes pageOut{to{opacity:0}}
.home-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.72fr);gap:18px;align-items:start}.glass-panel{position:relative;min-width:0;border:1px solid var(--line);border-radius:var(--radius-lg);background:linear-gradient(145deg,rgba(10,31,64,.78),rgba(5,20,43,.82));box-shadow:var(--shadow-md),inset 0 1px rgba(255,255,255,.035);overflow:hidden}.glass-panel::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(120deg,rgba(255,255,255,.018),transparent 25%)}.panel-title{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:16px}.panel-title h2{margin:0;font:750 17px/1.15 Manrope,sans-serif;letter-spacing:-.035em}.panel-link{display:inline-flex;align-items:center;gap:4px;background:transparent;color:#55bfff;cursor:pointer;font-size:10px;font-weight:700}.panel-link svg{width:13px;height:13px}
.hero-card{position:relative;grid-column:1;min-height:390px;padding:26px 30px 20px;overflow:hidden;border:1px solid rgba(100,187,255,.25);border-radius:var(--radius-xl);background:radial-gradient(circle at 78% 16%,rgba(72,187,255,.5),transparent 27%),radial-gradient(circle at 50% 130%,rgba(30,119,255,.28),transparent 48%),linear-gradient(135deg,#0750a4 0%,#0b70c9 50%,#083c86 100%);box-shadow:0 28px 72px rgba(0,62,140,.24),inset 0 1px rgba(255,255,255,.14);isolation:isolate}.hero-card::before{content:"";position:absolute;z-index:-1;width:420px;height:420px;right:-120px;top:-180px;border:1px solid rgba(255,255,255,.09);border-radius:50%;box-shadow:0 0 0 65px rgba(255,255,255,.02),0 0 0 140px rgba(255,255,255,.014)}.hero-card.weather-night{background:radial-gradient(circle at 80% 10%,rgba(65,97,216,.38),transparent 30%),linear-gradient(140deg,#07183f,#132859 55%,#0a183a)}.hero-card.weather-rain{background:radial-gradient(circle at 75% 15%,rgba(88,159,209,.3),transparent 30%),linear-gradient(140deg,#17375e,#20527d 52%,#0c284d)}.hero-card.weather-storm{background:radial-gradient(circle at 75% 15%,rgba(130,101,255,.3),transparent 30%),linear-gradient(140deg,#1a2045,#303168 52%,#111b3e)}.hero-card.weather-snow{background:radial-gradient(circle at 75% 15%,rgba(225,247,255,.38),transparent 30%),linear-gradient(140deg,#3977a6,#5d9dc4 52%,#315f8e)}.hero-aurora{position:absolute;z-index:-1;inset:-40%;background:conic-gradient(from 160deg at 60% 50%,transparent,rgba(72,229,255,.13),transparent 32%,rgba(93,105,255,.14),transparent 65%);filter:blur(34px);animation:aurora 14s linear infinite}.hero-grid-lines{position:absolute;z-index:-1;inset:0;opacity:.12;background-image:linear-gradient(rgba(255,255,255,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.12) 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(90deg,black,transparent 70%)}.hero-stars{position:absolute;z-index:-1;inset:0;background-image:radial-gradient(circle at 86% 20%,rgba(255,255,255,.9) 0 1px,transparent 2px),radial-gradient(circle at 72% 35%,rgba(255,255,255,.65) 0 1px,transparent 2px),radial-gradient(circle at 93% 45%,rgba(255,255,255,.5) 0 1px,transparent 2px);animation:twinkle 4s ease-in-out infinite}@keyframes aurora{to{transform:rotate(360deg)}}.hero-topline{display:flex;align-items:center;justify-content:space-between;color:rgba(236,247,255,.68);font-size:10px;font-weight:700}.hero-live{display:flex;align-items:center;gap:7px;padding:6px 9px;border:1px solid rgba(255,255,255,.14);border-radius:99px;background:rgba(0,0,0,.1);letter-spacing:.1em}.hero-live i{width:6px;height:6px;border-radius:50%;background:#59f1a0;box-shadow:0 0 10px #59f1a0}.hero-content{min-height:284px;display:flex;align-items:center;justify-content:space-between;gap:24px}.hero-copy{min-width:0}.hero-location{display:block;margin-bottom:8px;color:#d6ebff;font-size:12px;font-weight:700}.hero-temperature{display:flex;align-items:flex-start}.hero-temperature strong{font:800 clamp(72px,7vw,112px)/.82 Manrope,sans-serif;letter-spacing:-.09em;text-shadow:0 8px 28px rgba(0,0,0,.12)}.hero-temperature sup{margin:4px 0 0 9px;font:700 clamp(22px,2vw,30px)/1 Manrope,sans-serif}.hero-copy h1{margin:17px 0 7px;font:800 clamp(25px,2.5vw,36px)/1.1 Manrope,sans-serif;letter-spacing:-.045em}.hero-copy>p{max-width:520px;margin:0;color:rgba(230,243,255,.76);font-size:11px;line-height:1.55}.hero-facts{display:flex;flex-wrap:wrap;gap:11px;margin-top:19px}.hero-facts span{min-height:34px;padding:0 11px;display:flex;align-items:center;gap:6px;border:1px solid rgba(255,255,255,.12);border-radius:11px;background:rgba(0,20,60,.12);color:rgba(231,244,255,.76);font-size:9px}.hero-facts svg{width:14px;height:14px;color:#9ee1ff}.hero-facts b{color:#fff}.hero-visual-wrap{position:relative;flex:0 0 min(34%,250px);display:flex;flex-direction:column;align-items:center}.current-weather-art{width:220px;height:180px;display:grid;place-items:center;filter:drop-shadow(0 26px 25px rgba(0,22,65,.26))}.current-weather-art .weather-svg{width:210px;height:165px}.hero-high-low{padding:7px 12px;border:1px solid rgba(255,255,255,.12);border-radius:99px;background:rgba(0,15,40,.12);font-size:9px;font-weight:700}.hero-footer{min-height:42px;padding-top:15px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid rgba(255,255,255,.12)}.hero-status{display:flex;align-items:center;gap:8px;color:rgba(234,245,255,.7);font-size:9px}.online-dot{width:7px;height:7px;border-radius:50%;background:#55ec91;box-shadow:0 0 10px #55ec91}.online-dot.offline{background:#ffb54d;box-shadow:0 0 10px #ffb54d}.hero-favorite{display:flex;align-items:center;gap:8px;min-height:34px;padding:0 12px;border:1px solid rgba(255,255,255,.14);border-radius:11px;background:rgba(0,20,60,.12);color:#e9f5ff;cursor:pointer;font-size:9px;font-weight:750}.hero-favorite:hover{background:rgba(255,255,255,.1)}.hero-favorite.active{color:#ffd15b;border-color:rgba(255,213,94,.38);background:rgba(255,190,35,.1)}.hero-favorite.active svg{fill:currentColor}
.now-panel{grid-column:2;grid-row:1;padding:23px;min-height:390px}.now-metrics{margin-top:22px;display:grid;grid-template-columns:1fr 1fr;gap:11px}.now-metric{min-height:132px;padding:15px 12px;display:flex;flex-direction:column;justify-content:space-between;border:1px solid rgba(115,184,255,.1);border-radius:17px;background:rgba(255,255,255,.025);transition:.22s}.now-metric:hover{border-color:rgba(79,179,255,.28);background:rgba(40,132,229,.07);transform:translateY(-2px)}.now-metric>span{width:35px;height:35px;display:grid;place-items:center;border-radius:12px;background:rgba(34,143,255,.1);color:#55c4ff}.now-metric small,.now-metric strong,.now-metric em{display:block}.now-metric small{color:#7087a4;font-size:8px}.now-metric strong{margin-top:3px;font-size:16px}.now-metric em{margin-top:4px;color:#7890ad;font-size:8px;font-style:normal}
.hourly-panel{grid-column:1;padding:23px}.hourly-strip{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(92px,1fr);gap:9px;margin-top:19px;overflow-x:auto;padding-bottom:3px;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:rgba(80,167,255,.2) transparent}.hour-card{position:relative;min-height:154px;padding:13px 9px 11px;display:flex;flex-direction:column;align-items:center;justify-content:space-between;scroll-snap-align:start;border:1px solid rgba(116,185,255,.09);border-radius:16px;background:rgba(255,255,255,.022);transition:.2s}.hour-card:hover,.hour-card.current{background:linear-gradient(160deg,rgba(33,145,255,.16),rgba(18,77,166,.08));border-color:rgba(67,171,255,.28)}.hour-card.current::before{content:"";position:absolute;top:0;left:25%;right:25%;height:2px;border-radius:0 0 4px 4px;background:#39b9ff;box-shadow:0 0 12px #39b9ff}.hour-card time{color:#91a7c2;font-size:9px;font-weight:650}.hour-card .weather-svg{width:46px;height:42px}.hour-card strong{font-size:15px}.hour-card small{display:flex;align-items:center;gap:4px;color:#55bfff;font-size:8px}.hour-card small svg{width:10px;height:10px}
.forecast-panel{grid-column:2;grid-row:2 / span 2;padding:23px}.daily-forecast{margin-top:14px}.day-row{min-height:54px;display:grid;grid-template-columns:minmax(70px,1fr) 42px 56px minmax(65px,.7fr);align-items:center;gap:9px;border-bottom:1px solid rgba(255,255,255,.055);font-size:10px}.day-row:last-child{border-bottom:0}.day-row .day-label strong,.day-row .day-label small{display:block}.day-row .day-label strong{font-size:10px}.day-row .day-label small{margin-top:2px;color:#5f7898;font-size:7px}.day-row .weather-svg{width:34px;height:31px}.day-rain{display:flex;align-items:center;gap:3px;color:#58bcff;font-size:8px}.day-rain svg{width:10px;height:10px}.day-temp{display:flex;justify-content:flex-end;gap:7px;font-weight:700}.day-temp span:last-child{color:#667f9e;font-weight:500}
.chart-preview-panel{grid-column:1;padding:23px}.chart-wrap{height:225px;margin-top:16px}.chart-wrap canvas,.detail-chart-wrap canvas{width:100%;height:100%;display:block}.chart-legend{display:flex;flex-wrap:wrap;gap:13px;color:#6f86a4;font-size:8px}.chart-legend span{display:flex;align-items:center;gap:5px}.chart-legend i{width:14px;height:2px;border-radius:3px}.temp-line{background:#41c7ff}.rain-line{background:#766bff}.feels-line{background:#ffbd54}
.air-panel,.sun-panel,.insight-panel{padding:23px}.air-panel{grid-column:1}.aqi-main{display:flex;align-items:center;gap:20px;margin-top:18px}.aqi-gauge{position:relative;width:160px;flex:0 0 auto}.aqi-gauge svg{width:160px;height:90px;overflow:visible;fill:none;stroke-linecap:round}.aqi-track{stroke:rgba(255,255,255,.08);stroke-width:12}.aqi-progress{stroke:#49e591;stroke-width:12;stroke-dasharray:188.5;stroke-dashoffset:188.5;transition:stroke-dashoffset 1s ease,stroke .3s}.aqi-gauge>div{position:absolute;left:0;right:0;bottom:3px;text-align:center}.aqi-gauge strong,.aqi-gauge small{display:block}.aqi-gauge strong{font:800 30px/1 Manrope,sans-serif}.aqi-gauge small{margin-top:4px;color:#6f87a5;font-size:8px}.aqi-copy strong{font-size:13px}.aqi-copy p{max-width:390px;margin:7px 0 0;color:#728aa8;font-size:9px;line-height:1.55}.aqi-badge{min-width:40px;height:28px;padding:0 9px;display:grid;place-items:center;border-radius:10px;background:rgba(71,226,145,.1);color:#65efa5;font-size:11px;font-weight:800}.pollutants{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:16px}.pollutants span{padding:10px;border:1px solid rgba(255,255,255,.055);border-radius:12px;background:rgba(255,255,255,.02);color:#7086a2;font-size:8px}.pollutants b{display:block;margin-top:4px;color:#e8f3ff;font-size:11px}
.sun-panel{grid-column:2}.sun-cycle{position:relative;height:112px;margin-top:13px;overflow:hidden}.sun-arc-line{position:absolute;left:6%;right:6%;bottom:-65px;height:150px;border:1px dashed rgba(255,192,64,.35);border-radius:50% 50% 0 0}.horizon{position:absolute;left:0;right:0;bottom:9px;height:1px;background:linear-gradient(90deg,transparent,rgba(115,180,255,.15),transparent)}.sun-position{position:absolute;left:45%;bottom:72px;width:31px;height:31px;display:grid;place-items:center;border-radius:50%;background:radial-gradient(circle,#fff4aa,#ffb51f 65%,#ff8a00);color:#fff4b8;box-shadow:0 0 22px rgba(255,185,33,.42);transition:left .8s ease,bottom .8s ease}.sun-position svg{width:18px;height:18px}.sun-times{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-top:-4px}.sun-times>div:nth-child(2){text-align:center}.sun-times>div:last-child{text-align:right}.sun-times small,.sun-times strong{display:block}.sun-times small{color:#607996;font-size:7px}.sun-times strong{margin-top:3px;font-size:11px}
.insight-panel{grid-column:1 / -1}.ai-chip{padding:5px 8px;border:1px solid rgba(129,100,255,.28);border-radius:8px;background:rgba(118,80,255,.1);color:#a996ff;font-size:8px;font-weight:800;letter-spacing:.08em}.activity-insights{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:17px}.activity-card{padding:14px;border:1px solid rgba(255,255,255,.06);border-radius:15px;background:rgba(255,255,255,.022)}.activity-card>span{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:rgba(40,147,255,.09);color:#55c4ff}.activity-card strong,.activity-card small,.activity-card em{display:block}.activity-card strong{margin-top:11px;font-size:10px}.activity-card small{margin-top:4px;color:#7087a4;font-size:8px;line-height:1.4}.activity-card em{margin-top:8px;color:#54e795;font-size:8px;font-style:normal;font-weight:700}


.page-heading{margin-bottom:22px;display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.page-heading h1{margin:5px 0 7px;font:800 clamp(28px,3vw,42px)/1 Manrope,sans-serif;letter-spacing:-.055em}.page-heading p{max-width:620px;margin:0;color:#7086a3;font-size:11px;line-height:1.5}.heading-actions{display:flex;align-items:center;gap:10px}.live-status{min-height:39px;padding:0 13px;display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(84,216,142,.18);border-radius:13px;background:rgba(65,218,137,.06);color:#6eeaa2;font-size:9px;font-weight:700}.live-status i{width:7px;height:7px;border-radius:50%;background:#4be58d;box-shadow:0 0 10px #4be58d}.live-status.error{color:#ffbd6e;border-color:rgba(255,176,82,.25);background:rgba(255,164,46,.07)}.live-status.error i{background:#ffad4d;box-shadow:0 0 10px #ffad4d}
.radar-card{position:relative;height:clamp(480px,65vh,720px);overflow:hidden;border:1px solid rgba(92,179,255,.22);border-radius:28px;background:#06192d;box-shadow:var(--shadow-lg)}.radar-map{position:absolute;inset:0;overflow:hidden;cursor:grab;touch-action:none;background:#0b2337}.radar-map:active{cursor:grabbing}.radar-tiles{position:absolute;inset:0}.radar-tile{position:absolute;width:256px;height:256px;will-change:transform}.radar-tile img{position:absolute;inset:0;width:256px;height:256px;user-select:none;pointer-events:none}.radar-tile .base-tile{filter:saturate(.65) brightness(.58) contrast(1.18) hue-rotate(178deg)}.radar-overlay-tile{opacity:var(--radar-opacity,.72);mix-blend-mode:screen}.map-vignette{position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 140px rgba(0,9,24,.58);background:linear-gradient(180deg,rgba(0,10,28,.12),transparent 30%,transparent 65%,rgba(0,8,23,.36))}.radar-marker{position:absolute;z-index:3;left:50%;top:50%;width:24px;height:24px;transform:translate(-50%,-50%);pointer-events:none}.radar-marker span{position:absolute;inset:5px;border:3px solid #fff;border-radius:50%;background:#1a9cff;box-shadow:0 0 0 5px rgba(23,151,255,.18),0 5px 18px rgba(0,0,0,.38)}.radar-marker i{position:absolute;inset:-9px;border:1px solid rgba(61,181,255,.6);border-radius:50%;animation:markerPulse 2s ease-out infinite}@keyframes markerPulse{to{transform:scale(1.7);opacity:0}}.radar-top-overlay{position:absolute;z-index:5;top:18px;left:18px;right:18px;display:flex;justify-content:space-between;align-items:center;pointer-events:none}.radar-location{display:flex;align-items:center;gap:10px;padding:11px 14px;border:1px solid rgba(136,204,255,.16);border-radius:15px;background:rgba(3,17,37,.76);backdrop-filter:blur(15px);box-shadow:0 10px 24px rgba(0,0,0,.2)}.radar-location>svg{color:#46baff}.radar-location strong,.radar-location small{display:block}.radar-location strong{font-size:11px}.radar-location small{margin-top:3px;color:#6f88a8;font-size:8px}.radar-tools{pointer-events:auto}.radar-zoom{position:absolute;z-index:5;right:18px;top:84px;display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(126,195,255,.16);border-radius:13px;background:rgba(3,17,37,.78);backdrop-filter:blur(12px)}.radar-zoom button{width:40px;height:40px;background:transparent;color:#dcecff;cursor:pointer;font-size:20px}.radar-zoom button+button{border-top:1px solid rgba(255,255,255,.08)}.radar-zoom button:hover{background:rgba(47,151,255,.12)}.radar-bottom-overlay{position:absolute;z-index:5;left:18px;right:18px;bottom:18px;min-height:78px;padding:14px 16px;display:flex;align-items:center;gap:16px;border:1px solid rgba(128,197,255,.17);border-radius:19px;background:rgba(3,16,35,.82);backdrop-filter:blur(18px);box-shadow:0 16px 38px rgba(0,0,0,.28)}.radar-play-button{width:46px;height:46px;display:grid;place-items:center;flex:0 0 auto;border-radius:15px;background:linear-gradient(145deg,#25b5ff,#176ff2);box-shadow:0 10px 25px rgba(14,115,255,.32);cursor:pointer}.radar-play-button svg{width:20px;height:20px;fill:currentColor}.radar-timeline{min-width:0;flex:1}.radar-time-row{display:flex;justify-content:space-between;gap:15px;margin-bottom:10px}.radar-time-row strong{font-size:11px}.radar-time-row span{color:#66809f;font-size:8px}.radar-timeline input,.radar-opacity input,.threshold-row input{width:100%;accent-color:#2aaaff}.radar-opacity{width:170px;display:flex;align-items:center;gap:8px;color:#6f8aa8;font-size:8px}.radar-opacity svg{width:17px}.radar-opacity input{min-width:75px}.radar-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-top:15px}.radar-stat{min-height:80px;padding:16px;display:flex;align-items:center;gap:12px}.legend-dot{width:18px;height:18px;flex:0 0 auto;border-radius:6px}.legend-dot.weak{background:#3ec9ff;box-shadow:0 0 18px rgba(62,201,255,.35)}.legend-dot.medium{background:#ffe25e;box-shadow:0 0 18px rgba(255,226,94,.3)}.legend-dot.strong{background:#ff5e77;box-shadow:0 0 18px rgba(255,94,119,.3)}.radar-stat small,.radar-stat strong{display:block}.radar-stat small{color:#66809e;font-size:8px}.radar-stat strong{margin-top:5px;font-size:10px}.radar-stat.forecast>span{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:rgba(55,157,255,.11);color:#56c5ff}.radar-stat.forecast svg{width:21px;height:21px}
.favorites-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.favorite-card{position:relative;min-height:270px;padding:23px;overflow:hidden;border:1px solid rgba(98,181,255,.18);border-radius:24px;background:radial-gradient(circle at 80% 10%,rgba(41,157,255,.27),transparent 37%),linear-gradient(145deg,rgba(10,47,94,.94),rgba(5,25,54,.96));box-shadow:var(--shadow-md);cursor:pointer;transition:.25s}.favorite-card:hover{transform:translateY(-5px);border-color:rgba(76,178,255,.38);box-shadow:0 25px 55px rgba(0,7,25,.38)}.favorite-card::after{content:"";position:absolute;width:190px;height:190px;right:-100px;top:-100px;border:1px solid rgba(255,255,255,.06);border-radius:50%;box-shadow:0 0 0 35px rgba(255,255,255,.018)}.favorite-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.favorite-card h2{margin:0;font:750 18px/1.15 Manrope,sans-serif}.favorite-card p{margin:5px 0 0;color:#7d94b1;font-size:9px}.remove-favorite{position:relative;z-index:3;width:34px;height:34px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.1);border-radius:11px;background:rgba(0,0,0,.12);color:#9db2ca;cursor:pointer}.remove-favorite:hover{color:#ff8b97;border-color:rgba(255,89,105,.28);background:rgba(255,79,96,.08)}.remove-favorite svg{width:15px;height:15px}.favorite-weather{display:flex;align-items:flex-end;justify-content:space-between;margin-top:32px}.favorite-temp{font:800 52px/1 Manrope,sans-serif;letter-spacing:-.07em}.favorite-condition{display:block;margin-top:7px;color:#b8cee6;font-size:10px}.favorite-art .weather-svg{width:95px;height:80px}.favorite-footer{position:absolute;left:23px;right:23px;bottom:19px;padding-top:13px;display:flex;justify-content:space-between;border-top:1px solid rgba(255,255,255,.07);color:#7890ac;font-size:8px}.favorite-footer b{color:#dcecff}.empty-state{grid-column:1/-1;min-height:380px;padding:40px;display:grid;place-items:center;text-align:center;border:1px dashed rgba(98,181,255,.2);border-radius:25px;background:rgba(255,255,255,.018)}.empty-state-icon{width:76px;height:76px;margin:0 auto 18px;display:grid;place-items:center;border-radius:24px;background:rgba(41,145,255,.09);color:#51bfff}.empty-state-icon svg{width:34px;height:34px}.empty-state h2{margin:0 0 8px;font:750 20px Manrope,sans-serif}.empty-state p{max-width:430px;margin:0 auto 20px;color:#6c84a2;font-size:10px;line-height:1.55}
.alerts-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:18px;align-items:start}.alerts-list{display:flex;flex-direction:column;gap:12px}.alert-card{position:relative;min-height:112px;padding:19px 20px;display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:15px;border:1px solid rgba(99,181,255,.13);border-radius:20px;background:linear-gradient(145deg,rgba(10,31,64,.78),rgba(5,20,43,.82));overflow:hidden}.alert-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:#4bbcff}.alert-card.warning::before{background:#ffbd4d}.alert-card.danger::before{background:#ff596c}.alert-card.success::before{background:#47e28d}.alert-card-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:16px;background:rgba(53,157,255,.1);color:#55c5ff}.alert-card.warning .alert-card-icon{background:rgba(255,183,66,.09);color:#ffc15c}.alert-card.danger .alert-card-icon{background:rgba(255,76,101,.09);color:#ff6a7d}.alert-card.success .alert-card-icon{background:rgba(63,223,137,.09);color:#56e99a}.alert-card-icon svg{width:24px;height:24px}.alert-card h3{margin:0;font:700 13px Manrope,sans-serif}.alert-card p{margin:6px 0 0;color:#748ca8;font-size:9px;line-height:1.5}.alert-when{padding:6px 9px;border-radius:9px;background:rgba(255,255,255,.04);color:#7f96b1;font-size:8px;font-weight:700;white-space:nowrap}.thresholds-panel{padding:23px;position:sticky;top:calc(var(--topbar-h) + 20px)}.thresholds-panel>p{margin:9px 0 19px;color:#6f87a5;font-size:9px;line-height:1.5}.threshold-row{display:grid;grid-template-columns:1fr auto;gap:11px;padding:16px 0;border-top:1px solid rgba(255,255,255,.06)}.threshold-row>span{display:flex;align-items:center;gap:10px}.threshold-row>span>svg{width:19px;color:#54c0ff}.threshold-row strong,.threshold-row small{display:block}.threshold-row strong{font-size:10px}.threshold-row small{margin-top:3px;color:#647c9a;font-size:8px}.threshold-row output{align-self:center;color:#79cdff;font-size:9px;font-weight:800}.threshold-row input{grid-column:1/-1}
.detail-chart-panel,.hourly-table-panel{padding:24px}.detail-chart-wrap{height:390px;margin-top:20px}.hourly-table-panel{margin-top:18px;overflow:hidden}.hourly-table{margin-top:15px;overflow-x:auto}.hourly-table-row{min-width:850px;min-height:62px;display:grid;grid-template-columns:90px 80px 90px 90px 110px 110px 110px 1fr;align-items:center;gap:13px;border-bottom:1px solid rgba(255,255,255,.055);font-size:9px}.hourly-table-row.header{position:sticky;top:0;z-index:2;min-height:38px;background:#071a37;color:#5f7897;font-size:8px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.hourly-table-row .condition-cell{display:flex;align-items:center;gap:8px}.hourly-table-row .weather-svg{width:34px;height:30px}.hourly-table-row b{font-size:10px}


.app-dialog{width:min(520px,calc(100vw - 30px));max-height:min(800px,calc(100dvh - 30px));padding:0;border:1px solid rgba(109,190,255,.22);border-radius:27px;background:linear-gradient(155deg,rgba(10,36,75,.98),rgba(4,18,40,.99));color:var(--text);box-shadow:0 40px 110px rgba(0,0,0,.62);overflow:auto}.app-dialog::backdrop{background:rgba(1,6,16,.68);backdrop-filter:blur(16px)}.app-dialog form{position:relative;padding:34px}.dialog-close{position:absolute;z-index:2;right:18px;top:18px;width:38px;height:38px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:rgba(255,255,255,.035);color:#8198b5;cursor:pointer}.dialog-close:hover{color:#fff;background:rgba(255,255,255,.08)}.dialog-close svg{width:17px}.app-dialog h2{margin:8px 0 8px;font:800 26px/1.1 Manrope,sans-serif;letter-spacing:-.045em}.app-dialog form>p{margin:0 0 22px;color:#7c93ae;font-size:10px;line-height:1.55}.dialog-hero-icon{width:54px;height:54px;margin-bottom:20px;display:grid;place-items:center;border-radius:18px;background:linear-gradient(145deg,rgba(42,161,255,.2),rgba(41,104,230,.1));color:#5cc9ff}.dialog-hero-icon svg{width:27px;height:27px}.field-label{display:block;margin-top:13px;color:#a8bed7;font-size:9px;font-weight:700}.field-label input{width:100%;height:48px;margin-top:7px;padding:0 14px;border:1px solid rgba(120,187,255,.15);border-radius:14px;outline:0;background:rgba(255,255,255,.04);font-size:11px}.field-label input:focus{border-color:rgba(71,179,255,.55);box-shadow:0 0 0 3px rgba(43,151,255,.1)}.info-note{margin:15px 0;display:flex;align-items:flex-start;gap:10px;padding:12px;border:1px solid rgba(75,190,255,.12);border-radius:13px;background:rgba(32,136,235,.055);color:#7892b0;font-size:8px;line-height:1.5}.info-note svg{flex:0 0 auto;width:18px;color:#5ed99a}.dialog-search{height:52px;display:flex;align-items:center;gap:10px;padding-left:15px;border:1px solid rgba(105,184,255,.19);border-radius:15px;background:rgba(255,255,255,.04)}.dialog-search>svg{width:19px;color:#5ec8ff}.dialog-search input{min-width:0;flex:1;border:0;outline:0;background:transparent;font-size:11px}.dialog-search button{align-self:stretch;padding:0 17px;border-radius:0 14px 14px 0;background:linear-gradient(145deg,#1e9fff,#176cf1);cursor:pointer;font-size:10px;font-weight:800}.recent-searches{display:flex;flex-wrap:wrap;gap:7px;margin-top:13px}.recent-chip{min-height:30px;padding:0 10px;border:1px solid rgba(255,255,255,.07);border-radius:10px;background:rgba(255,255,255,.03);color:#8299b6;cursor:pointer;font-size:8px}.recent-chip:hover{color:#fff;border-color:rgba(88,181,255,.28)}.global-search-results{max-height:340px;margin-top:14px;overflow:auto}.search-result-row{width:100%;min-height:62px;padding:10px 11px;display:flex;align-items:center;gap:11px;border-bottom:1px solid rgba(255,255,255,.055);background:transparent;cursor:pointer;text-align:left}.search-result-row:hover{background:rgba(41,142,244,.07)}.search-result-row>span:first-child{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:rgba(47,150,252,.08);color:#54c3ff}.search-result-row>span:nth-child(2){min-width:0;flex:1}.search-result-row strong,.search-result-row small{display:block}.search-result-row strong{font-size:10px}.search-result-row small{margin-top:4px;color:#6982a0;font-size:8px}.search-result-row>svg{width:15px;color:#55708f}.search-loading,.search-empty{padding:32px;text-align:center;color:#6e87a6;font-size:9px}.settings-list{margin-top:17px;border-top:1px solid rgba(255,255,255,.06)}.setting-row{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid rgba(255,255,255,.06)}.setting-row strong,.setting-row small{display:block}.setting-row strong{font-size:10px}.setting-row small{margin-top:4px;color:#657d9b;font-size:8px}.setting-row select{max-width:180px;height:38px;padding:0 31px 0 11px;border:1px solid rgba(113,185,255,.14);border-radius:11px;outline:0;background:#092246;font-size:9px}.toggle-setting{position:relative}.toggle-setting input{position:absolute;opacity:0}.toggle-setting>i{position:relative;width:44px;height:24px;border-radius:99px;background:#152c4c;cursor:pointer;transition:.2s}.toggle-setting>i::after{content:"";position:absolute;width:18px;height:18px;left:3px;top:3px;border-radius:50%;background:#7690ad;transition:.2s}.toggle-setting input:checked+i{background:#197ce9}.toggle-setting input:checked+i::after{left:23px;background:#fff}.settings-dialog .full-button{margin-top:20px}.dialog-link{min-height:48px;margin-top:10px;display:flex;align-items:center;justify-content:space-between;color:#6e88a8;text-decoration:none;font-size:9px}.dialog-link:hover{color:#62c7ff}.dialog-link svg{width:14px}.profile-head{display:flex;align-items:center;gap:14px;margin-bottom:21px}.profile-avatar{width:58px;height:58px;display:grid;place-items:center;border-radius:18px;background:linear-gradient(145deg,#21b3ff,#1769ed);box-shadow:0 13px 28px rgba(17,107,239,.28);font-size:13px;font-weight:800}.profile-head h2{margin:5px 0 3px;font-size:21px}.profile-head p{margin:0;color:#6f87a5;font-size:8px}.dialog-menu-row{width:100%;min-height:67px;padding:11px 8px;display:grid;grid-template-columns:40px 1fr 18px;align-items:center;gap:10px;border-top:1px solid rgba(255,255,255,.06);background:transparent;cursor:pointer;text-align:left}.dialog-menu-row:hover{background:rgba(255,255,255,.025)}.dialog-menu-row>svg:first-child{width:20px;color:#52c0ff}.dialog-menu-row>svg:last-child{width:14px;color:#526b89}.dialog-menu-row strong,.dialog-menu-row small{display:block}.dialog-menu-row strong{font-size:10px}.dialog-menu-row small{margin-top:4px;color:#687f9e;font-size:8px}.dialog-menu-row.danger>svg:first-child,.dialog-menu-row.danger strong{color:#ff7b89}.confirm-dialog{width:min(420px,calc(100vw - 30px));text-align:center}.confirm-icon{width:60px;height:60px;margin:0 auto 18px;display:grid;place-items:center;border-radius:20px;background:rgba(255,92,107,.1);color:#ff6d7b;font:800 24px Manrope,sans-serif}.confirm-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:24px}
.toast-region{position:fixed;z-index:7000;right:20px;bottom:20px;width:min(370px,calc(100vw - 30px));display:flex;flex-direction:column;gap:9px;pointer-events:none}.toast{min-height:62px;padding:12px 14px;display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:10px;border:1px solid rgba(101,186,255,.22);border-radius:16px;background:rgba(6,25,53,.95);box-shadow:0 20px 48px rgba(0,0,0,.42);backdrop-filter:blur(18px);animation:toastIn .35s cubic-bezier(.2,1.2,.3,1)}.toast.removing{animation:toastOut .25s ease forwards}.toast-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:rgba(65,158,255,.1);color:#5cc8ff;font-weight:800}.toast.success .toast-icon{background:rgba(65,222,137,.1);color:#58e899}.toast.error .toast-icon{background:rgba(255,78,99,.1);color:#ff7180}.toast.warning .toast-icon{background:rgba(255,183,69,.1);color:#ffc160}.toast strong,.toast small{display:block}.toast strong{font-size:10px}.toast small{margin-top:4px;color:#7189a6;font-size:8px;line-height:1.4}.toast-close{pointer-events:auto;width:27px;height:27px;display:grid;place-items:center;border-radius:9px;background:transparent;color:#617b9b;cursor:pointer}.toast-close svg{width:13px}@keyframes toastIn{from{opacity:0;transform:translateX(20px) scale(.96)}}@keyframes toastOut{to{opacity:0;transform:translateX(20px) scale(.96)}}
.mobile-nav,.sidebar-scrim{display:none}


.weather-svg{overflow:visible}.wx-sun{transform-origin:center;animation:wxSun 12s linear infinite}.wx-cloud-front{animation:wxCloud 3.8s ease-in-out infinite alternate}.wx-cloud-back{animation:wxCloud 4.6s ease-in-out infinite alternate-reverse}.wx-rain{animation:wxRain 1.15s linear infinite}.wx-rain:nth-of-type(2){animation-delay:-.35s}.wx-rain:nth-of-type(3){animation-delay:-.7s}.wx-snow{animation:wxSnow 2s ease-in-out infinite}.wx-bolt{animation:wxBolt 2.5s ease-in-out infinite}@keyframes wxSun{to{transform:rotate(360deg)}}@keyframes wxCloud{to{transform:translateX(3px)}}@keyframes wxRain{0%{transform:translateY(-2px);opacity:0}35%{opacity:1}100%{transform:translateY(9px);opacity:0}}@keyframes wxSnow{50%{transform:translate(2px,7px);opacity:.5}}@keyframes wxBolt{0%,42%,48%,100%{opacity:.25}45%,50%{opacity:1;filter:drop-shadow(0 0 8px #ffe263)}}


body[data-theme="light"]{--bg:#edf5ff;--bg-soft:#e6f1ff;--surface:rgba(255,255,255,.82);--surface-strong:rgba(255,255,255,.96);--surface-faint:rgba(12,68,130,.045);--line:rgba(31,93,158,.12);--line-strong:rgba(22,119,217,.24);--text:#092348;--text-soft:#2e4b70;--muted:#68809f;color-scheme:light;background:#eef6ff}.reduce-motion *,.reduce-motion *::before,.reduce-motion *::after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}body[data-theme="light"] .ambient{background:radial-gradient(circle at 80% 0,rgba(34,149,255,.18),transparent 30%),linear-gradient(145deg,#f6fbff,#eaf4ff)}body[data-theme="light"] .ambient::before{opacity:.35}body[data-theme="light"] .sidebar{background:linear-gradient(180deg,rgba(249,252,255,.98),rgba(233,244,255,.99));box-shadow:18px 0 45px rgba(27,72,120,.08)}body[data-theme="light"] .topbar{background:rgba(243,249,255,.82)}body[data-theme="light"] .glass-panel{background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(246,251,255,.9));box-shadow:0 18px 42px rgba(34,85,139,.09),inset 0 1px rgba(255,255,255,.8)}body[data-theme="light"] .now-metric,body[data-theme="light"] .hour-card,body[data-theme="light"] .activity-card{background:rgba(20,93,168,.025)}body[data-theme="light"] .app-dialog{background:linear-gradient(155deg,#fff,#edf6ff)}body[data-theme="light"] .setting-row select{background:#edf6ff;color:#163c68}body[data-theme="light"] .toast{background:rgba(249,252,255,.96)}body[data-theme="light"] .command-search,body[data-theme="light"] .round-button{background:rgba(10,75,145,.035)}


@media (max-width: 1240px){
  :root{--sidebar-w:220px}.topbar{grid-template-columns:minmax(230px,1fr) minmax(230px,400px) minmax(220px,1fr);gap:14px}.home-grid{grid-template-columns:minmax(0,1.35fr) minmax(285px,.65fr)}.hero-card{min-height:370px}.hero-content{min-height:264px}.current-weather-art{width:180px}.current-weather-art .weather-svg{width:180px}.now-panel{min-height:370px}.favorites-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.activity-insights{grid-template-columns:repeat(2,1fr)}
}
@media (max-width: 1024px){
  .welcome-shell{grid-template-columns:1fr minmax(430px,.85fr)}.welcome-story{padding-left:36px;padding-right:36px}.story-copy h1{font-size:48px}.story-features{grid-template-columns:1fr}.story-features article:nth-child(n+4){display:none}.phone-shell{width:365px;height:720px;min-height:620px}
  :root{--sidebar-w:82px}.sidebar{padding-left:11px;padding-right:11px}.sidebar-brand{justify-content:center;padding-left:0;padding-right:0}.sidebar-brand>span,.sidebar-brand>em,.nav-link>span,.sidebar-weather>div,.sidebar-install>span,.sidebar-logout>span,.sidebar-credit{display:none}.nav-link{justify-content:center;padding:0}.nav-link>i{right:-11px}.nav-link>b{position:absolute;right:7px;top:6px;min-width:15px;height:15px;padding:0 4px}.sidebar-weather{justify-content:center;padding:10px}.sidebar-install,.sidebar-logout{justify-content:center;padding:0}.topbar{grid-template-columns:minmax(220px,1fr) minmax(200px,330px) auto}.topbar-actions .round-button:nth-child(1){display:none}.home-grid{grid-template-columns:1fr}.hero-card,.now-panel,.hourly-panel,.forecast-panel,.chart-preview-panel,.air-panel,.sun-panel{grid-column:1;grid-row:auto}.now-panel{min-height:auto}.now-metrics{grid-template-columns:repeat(4,1fr)}.now-metric{min-height:120px}.forecast-panel{padding-bottom:15px}.daily-forecast{display:grid;grid-template-columns:1fr 1fr;column-gap:18px}.day-row:nth-child(5){border-bottom:1px solid rgba(255,255,255,.055)}.alerts-layout{grid-template-columns:1fr}.thresholds-panel{position:static}.radar-cards{grid-template-columns:repeat(2,1fr)}
}
@media (max-width: 780px){
  :root{--topbar-h:72px;--radius-xl:24px;--radius-lg:20px}.welcome-shell{display:block}.welcome-story{display:none}.welcome-stage{min-height:100dvh;padding:20px 12px;background:radial-gradient(circle at 50% 32%,rgba(24,130,255,.22),transparent 40%),linear-gradient(160deg,#041225,#020914)}.phone-shell{width:min(430px,100%);height:calc(100dvh - 30px);min-height:620px;border-radius:35px;border-color:rgba(255,255,255,.1);box-shadow:0 28px 80px rgba(0,0,0,.46),0 0 0 4px rgba(4,10,20,.7)}.stage-caption{display:none}.stage-sun{width:65px;height:65px;right:6%;top:6%}.onboarding-view{padding-left:26px;padding-right:26px}.auth-head{margin-top:38px}
  .app-shell{display:block;padding-bottom:calc(var(--mobile-nav-h) + var(--safe-bottom))}.app-content{min-height:100dvh}.sidebar{z-index:90;width:min(310px,86vw);padding:25px 18px;transform:translateX(-105%);transition:transform .32s cubic-bezier(.2,.85,.2,1)}.app-shell.menu-open .sidebar{transform:none}.sidebar-brand{justify-content:flex-start;padding-left:8px}.sidebar-brand>span,.sidebar-brand>em,.nav-link>span,.sidebar-weather>div,.sidebar-install>span,.sidebar-logout>span,.sidebar-credit{display:block}.nav-link{justify-content:flex-start;padding:0 14px}.nav-link>i{right:-18px}.nav-link>b{position:static;margin-left:auto;min-width:20px;height:20px}.sidebar-weather{justify-content:flex-start;padding:13px}.sidebar-install,.sidebar-logout{justify-content:flex-start;padding:0 12px}.sidebar-close{display:grid}.sidebar-scrim{position:fixed;z-index:80;inset:0;display:block;background:rgba(0,5,14,.58);backdrop-filter:blur(6px);opacity:0;visibility:hidden;transition:.25s}.app-shell.menu-open .sidebar-scrim{opacity:1;visibility:visible}.topbar{height:var(--topbar-h);padding:0 14px;grid-template-columns:minmax(0,1fr) auto;gap:8px}.menu-button{display:grid}.topbar-center{display:none}.topbar-actions{gap:6px}.topbar-actions #refresh-button,.topbar-actions #header-favorite{display:none}.location-command{padding-left:0}.location-command-icon{width:35px;height:35px}.location-command strong{max-width:150px;font-size:11px}.location-command small{max-width:150px}.profile-button,.topbar-actions .round-button{width:40px;height:40px;border-radius:13px}.pages-wrap{padding:18px 14px 24px}.home-grid{gap:13px}.hero-card{min-height:420px;padding:20px 18px 16px;border-radius:24px}.hero-content{min-height:326px;align-items:flex-start}.hero-copy{padding-top:34px}.hero-temperature strong{font-size:80px}.hero-copy h1{font-size:25px}.hero-copy>p{max-width:250px}.hero-facts{gap:7px}.hero-facts span{padding:0 8px}.hero-visual-wrap{position:absolute;right:5px;top:84px;width:140px}.current-weather-art,.current-weather-art .weather-svg{width:145px;height:125px}.hero-high-low{font-size:8px}.hero-footer{gap:8px}.hero-status{min-width:0}.hero-status span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hero-favorite span{display:none}.hero-favorite{width:38px;padding:0;justify-content:center;flex:0 0 auto}.glass-panel{border-radius:20px}.now-panel,.hourly-panel,.forecast-panel,.chart-preview-panel,.air-panel,.sun-panel,.insight-panel{padding:18px}.now-metrics{grid-template-columns:1fr 1fr}.now-metric{min-height:118px}.hourly-strip{grid-auto-columns:84px}.forecast-panel{padding-bottom:12px}.daily-forecast{display:block}.day-row:nth-child(5){border-bottom:1px solid rgba(255,255,255,.055)}.chart-wrap{height:210px}.aqi-main{align-items:flex-start;gap:12px}.aqi-gauge{width:135px}.aqi-gauge svg{width:135px}.pollutants{grid-template-columns:1fr 1fr}.sun-times>div:nth-child(2){display:none}.activity-insights{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.activity-card{min-width:180px;scroll-snap-align:start}.panel-title{align-items:flex-start}.panel-title h2{font-size:15px}.panel-link span{display:none}.chart-legend{display:none}.page-heading{align-items:flex-start;flex-direction:column;margin-bottom:17px}.page-heading h1{font-size:30px}.page-heading .button{width:100%}.heading-actions{width:100%;justify-content:space-between}.heading-actions .button{width:auto}.radar-card{height:calc(100dvh - 220px);min-height:460px;border-radius:21px}.radar-top-overlay{top:12px;left:12px;right:12px}.radar-zoom{right:12px;top:76px}.radar-bottom-overlay{left:10px;right:10px;bottom:10px;min-height:70px;padding:11px;gap:10px}.radar-play-button{width:42px;height:42px}.radar-opacity{display:none}.radar-time-row span{max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.radar-cards{grid-template-columns:1fr 1fr;gap:9px}.radar-stat{padding:12px;min-height:70px}.favorites-grid{grid-template-columns:1fr}.favorite-card{min-height:250px}.alerts-layout{gap:13px}.alert-card{grid-template-columns:44px minmax(0,1fr);padding:16px}.alert-when{grid-column:2;justify-self:start}.detail-chart-panel,.hourly-table-panel{padding:18px}.detail-chart-wrap{height:300px}.app-dialog form{padding:29px 22px}.app-dialog h2{font-size:23px}.toast-region{right:12px;bottom:calc(var(--mobile-nav-h) + var(--safe-bottom) + 12px);width:calc(100vw - 24px)}.mobile-nav{position:fixed;z-index:70;left:0;right:0;bottom:0;height:calc(var(--mobile-nav-h) + var(--safe-bottom));padding:7px 8px calc(7px + var(--safe-bottom));display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(114,183,255,.14);background:rgba(3,14,31,.9);backdrop-filter:blur(22px) saturate(160%)}.mobile-nav-link{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;border-radius:13px;background:transparent;color:#617a99;cursor:pointer;font-size:8px;font-weight:650}.mobile-nav-link svg{width:20px;height:20px}.mobile-nav-link.active{color:#45baff;background:rgba(34,138,241,.07)}.mobile-nav-link.active svg{filter:drop-shadow(0 0 8px rgba(50,176,255,.48))}.mobile-icon-wrap{position:relative}.mobile-icon-wrap b{position:absolute;right:-11px;top:-8px;min-width:15px;height:15px;padding:0 4px;display:grid;place-items:center;border:2px solid #06152e;border-radius:99px;background:#158dff;color:#fff;font-size:7px}.profile-dialog{margin-bottom:calc(var(--mobile-nav-h) + 10px)}
}
@media (max-width: 430px){
  .phone-shell{height:100dvh;min-height:600px;border:0;border-radius:0;box-shadow:none}.welcome-stage{padding:0}.phone-island{top:8px}.phone-status{top:17px}.onboarding-view{padding-top:61px}.auth-logo{width:55px;height:55px}.auth-logo-wrap h2{font-size:28px}.auth-head{margin-top:34px}.auth-actions{margin-top:22px}.auth-security{margin-top:18px}.location-visual{width:160px;height:160px;margin-top:18px}.ring-three{width:155px;height:155px}.ring-two{width:110px;height:110px}.location-pin{width:64px;height:64px}.hero-temperature strong{font-size:72px}.hero-facts span:nth-child(3){display:none}.hero-visual-wrap{right:-8px;top:92px}.current-weather-art,.current-weather-art .weather-svg{width:135px}.hero-copy>p{max-width:225px}.aqi-main{display:block}.aqi-gauge{margin:0 auto}.aqi-copy{text-align:center;margin-top:8px}.pollutants{margin-top:13px}.radar-cards{grid-template-columns:1fr}.radar-stat:nth-child(2),.radar-stat:nth-child(3){display:none}.setting-row{align-items:flex-start;padding:15px 0}.setting-row select{max-width:145px}.app-dialog{border-radius:22px}.confirm-actions{grid-template-columns:1fr}
}
@media (min-width: 1600px){
  :root{--sidebar-w:270px}.sidebar{padding-left:22px;padding-right:22px}.pages-wrap{max-width:1760px;margin:0 auto}.home-grid{grid-template-columns:minmax(0,1.6fr) minmax(360px,.65fr);gap:22px}.hero-card{min-height:430px}.hero-content{min-height:322px}.now-panel{min-height:430px}.hourly-strip{grid-auto-columns:minmax(98px,1fr)}.forecast-panel{grid-row:2 / span 3}.chart-wrap{height:260px}.favorites-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}}



.radar-heading-actions{flex-wrap:wrap}.radar-mode-switch{min-height:44px;padding:4px;display:flex;align-items:center;gap:3px;border:1px solid rgba(105,185,255,.18);border-radius:15px;background:rgba(255,255,255,.035)}.radar-mode-switch button{min-height:34px;padding:0 12px;display:flex;align-items:center;gap:7px;border-radius:11px;background:transparent;color:#6f88a8;cursor:pointer;font-size:9px;font-weight:800;white-space:nowrap;transition:.2s}.radar-mode-switch button i{width:7px;height:7px;border-radius:50%;background:#5b708c}.radar-mode-switch button svg{width:15px}.radar-mode-switch button.active{color:#fff;background:linear-gradient(145deg,rgba(35,164,255,.28),rgba(28,99,228,.18));box-shadow:inset 0 1px rgba(255,255,255,.08)}.radar-mode-switch button.active i{background:#48eb94;box-shadow:0 0 10px #48eb94}
.radar-map::before{content:"";position:absolute;inset:0;background-color:#0b2238;background-image:linear-gradient(rgba(79,153,207,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(79,153,207,.08) 1px,transparent 1px);background-size:48px 48px}.radar-forecast-canvas{position:absolute;z-index:2;inset:0;width:100%;height:100%;pointer-events:none;opacity:0;transition:opacity .28s ease}.radar-forecast-canvas.active{opacity:1}.radar-map.forecast-mode .radar-overlay-tile{display:none}.radar-map.live-mode .radar-forecast-canvas{opacity:0}.radar-empty{position:absolute;z-index:7;left:50%;top:50%;width:min(310px,calc(100% - 38px));transform:translate(-50%,-50%);padding:22px;text-align:center;border:1px solid rgba(255,178,69,.25);border-radius:20px;background:rgba(5,20,43,.9);backdrop-filter:blur(18px);box-shadow:0 22px 55px rgba(0,0,0,.35)}.radar-empty>span{width:50px;height:50px;margin:0 auto 12px;display:grid;place-items:center;border-radius:16px;background:rgba(255,179,66,.1);color:#ffc05d}.radar-empty>span svg{width:25px}.radar-empty strong,.radar-empty small{display:block}.radar-empty strong{font:750 14px Manrope,sans-serif}.radar-empty small{margin-top:6px;color:#8196af;font-size:9px;line-height:1.5}.radar-empty button{min-height:36px;margin-top:14px;padding:0 14px;border-radius:11px;background:linear-gradient(145deg,#1ca9ff,#176df2);color:#fff;cursor:pointer;font-size:9px;font-weight:800}.radar-dry-chip{position:absolute;z-index:4;left:50%;top:50%;transform:translate(-50%,-50%);padding:10px 13px;border:1px solid rgba(93,193,255,.18);border-radius:999px;background:rgba(4,22,47,.76);backdrop-filter:blur(12px);color:#a9c5e4;font-size:9px;font-weight:700;pointer-events:none;white-space:nowrap}.radar-attribution{position:absolute;z-index:5;right:17px;bottom:107px;padding:5px 8px;border-radius:8px;background:rgba(2,12,28,.62);color:#7188a5;font-size:7px;pointer-events:none}.radar-player-buttons{display:flex;align-items:center;gap:7px}.radar-step-button{width:34px;height:34px;display:grid;place-items:center;border:1px solid rgba(116,190,255,.14);border-radius:11px;background:rgba(255,255,255,.035);color:#bed4ea;cursor:pointer;font-size:22px;line-height:1}.radar-step-button:hover{background:rgba(38,145,247,.12)}.radar-speed{display:flex;flex-direction:column;gap:5px;color:#65809e;font-size:7px}.radar-speed select{height:30px;padding:0 25px 0 8px;border:1px solid rgba(112,184,255,.13);border-radius:9px;background:#0a2447;color:#cbe0f5;font-size:8px}.radar-info-cards .radar-stat>span:not(.legend-dot){width:42px;height:42px;display:grid;place-items:center;border-radius:14px;background:rgba(37,145,247,.09);color:#55c5ff}.radar-info-cards .radar-stat>span svg{width:20px}.radar-info-cards .radar-stat strong{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.radar-legend{margin-top:12px;padding:13px 16px;display:flex;align-items:center;flex-wrap:wrap;gap:12px 22px;color:#8fa5bf;font-size:8px}.radar-legend>span{display:flex;align-items:center;gap:7px}.radar-legend small{margin-left:auto;max-width:520px;color:#607996;line-height:1.45}.live-status.warning{color:#ffd08a;border-color:rgba(255,177,68,.28);background:rgba(255,166,42,.07)}.live-status.warning i{background:#ffb44f;box-shadow:0 0 10px #ffb44f}.live-status.success{color:#84f1ae;border-color:rgba(65,224,137,.24);background:rgba(65,224,137,.06)}.live-status.success i{background:#48e894;box-shadow:0 0 10px #48e894}.round-button.loading svg{animation:spin .8s linear infinite}.favorite-button .star-pulse{pointer-events:none}

@media(max-height:760px) and (min-width:901px){.welcome-stage{padding:18px 22px}.phone-shell{height:calc(100dvh - 28px);min-height:560px}.onboarding-view{padding-top:58px;padding-bottom:18px}.auth-logo{width:54px;height:54px}.auth-logo-wrap h2{font-size:27px}.auth-head{margin-top:28px}.auth-head h3{font-size:21px}.auth-actions{margin-top:17px;gap:8px}.auth-secondary-grid .button{min-height:46px}#guest-login{min-height:46px}.auth-security{padding:10px}.story-features{margin-top:20px}.story-features article{min-height:64px}.story-copy h1{margin-top:15px}.welcome-story{padding-top:28px;padding-bottom:24px}}
@media(max-width:900px){.radar-heading-actions{display:grid;grid-template-columns:1fr auto auto;align-items:center}.radar-mode-switch{grid-column:1/-1;width:100%}.radar-mode-switch button{flex:1;justify-content:center}.radar-bottom-overlay{flex-wrap:wrap}.radar-player-buttons{order:1}.radar-timeline{order:2;flex:1;min-width:180px}.radar-speed{order:3}.radar-opacity{order:4}.radar-attribution{bottom:125px}.radar-legend small{width:100%;margin-left:0}}
@media(max-width:600px){.auth-actions{gap:10px}.auth-divider{height:18px}#guest-login{margin-top:10px}.radar-heading-actions{grid-template-columns:1fr auto}.radar-heading-actions .live-status{grid-column:1/2}.radar-heading-actions #radar-refresh{grid-column:2/3}.radar-heading-actions #radar-recenter{grid-column:1/-1;width:100%}.radar-card{height:calc(100dvh - 250px);min-height:470px}.radar-bottom-overlay{align-items:center}.radar-player-buttons{width:100%;justify-content:center}.radar-timeline{width:100%;flex-basis:100%}.radar-speed{display:none}.radar-attribution{bottom:143px}.radar-dry-chip{max-width:calc(100% - 30px);white-space:normal;text-align:center}.radar-info-cards{grid-template-columns:1fr 1fr}.radar-info-cards .radar-stat{display:flex!important}.radar-legend{display:none}}
@media(max-width:430px){.auth-head{margin-top:24px}.auth-head h3{font-size:22px}.auth-actions{margin-top:16px}.auth-security{margin-top:12px}.radar-info-cards{grid-template-columns:1fr}.radar-info-cards .radar-stat:nth-child(3){display:flex!important}}



body { font-size: 16px; }
.nav-link { font-size: 14px; }
.sidebar-credit { font-size: 11px; line-height: 1.55; }
.location-command strong { font-size: 14px; }
.location-command small { font-size: 11px; }
.command-search { font-size: 13px; }
.section-kicker { font-size: 12px; }
.panel-title h2 { font-size: 22px; }
.panel-link { font-size: 12px; }
.soft-badge { font-size: 12px; }
.hero-topline { font-size: 12px; }
.hero-location { font-size: 15px; }
.hero-copy > p { font-size: 14px; }
.hero-facts span { font-size: 12px; min-height: 38px; }
.hero-high-low { font-size: 11px; }
.hero-status { font-size: 11px; }
.hero-favorite { font-size: 12px; }
.now-metric small, .now-metric em { font-size: 11px; }
.now-metric strong { font-size: 19px; }
.day-label strong, .day-temp { font-size: 13px; }
.day-label small, .day-rain { font-size: 11px; }
.aqi-copy p, .sun-copy p, .activity-card p, .insight-panel p { font-size: 13px; line-height: 1.55; }
.pollutant small, .sun-times small, .radar-stat small { font-size: 11px; }
.pollutant strong, .sun-times strong, .radar-stat strong { font-size: 14px; }
.page-heading p { font-size: 14px; }
.live-status, .radar-location small, .radar-time-row span, .radar-legend { font-size: 10px; }
.radar-location strong, .radar-time-row strong { font-size: 13px; }
.setting-row strong { font-size: 13px; }
.setting-row small { font-size: 11px; }
.app-dialog p, .info-note, .dialog-link, .dialog-menu-row small, .profile-head p { font-size: 12px; }
.dialog-menu-row strong { font-size: 13px; }
.toast strong { font-size: 13px; }
.toast small { font-size: 11px; }
.mobile-nav-link { font-size: 10px; }

.hour-card {
  appearance: none;
  color: inherit;
  text-align: center;
  cursor: pointer;
  min-height: 178px;
  padding: 14px 10px 12px;
}
.hour-card time { font-size: 12px; }
.hour-card strong { font-size: 18px; }
.hour-card small { font-size: 11px; }
.hour-card-more {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 23px;
  padding: 0 8px;
  border-radius: 999px;
  background: rgba(60, 168, 255, .1);
  color: #6bc7ff;
  font-size: 10px;
  font-weight: 750;
  opacity: .78;
  transition: .2s ease;
}
.hour-card:hover .hour-card-more,
.hour-card:focus-visible .hour-card-more { opacity: 1; background: rgba(60, 168, 255, .18); }

.hour-detail-dialog { width: min(760px, calc(100vw - 30px)); }
.hour-detail-dialog form { padding: 32px; }
.hour-detail-heading { display:flex; align-items:center; justify-content:space-between; gap:22px; padding-right:30px; }
.hour-detail-heading h2 { margin: 4px 0 7px; font-size: 27px; }
.hour-detail-heading p { margin:0; color:var(--muted); }
.hour-detail-art { width:130px; height:100px; display:grid; place-items:center; flex:0 0 auto; }
.hour-detail-art .weather-svg { width:125px; height:100px; }
.hour-detail-hero { margin-top:18px; padding:18px 20px; display:flex; align-items:center; justify-content:space-between; gap:18px; border:1px solid var(--line); border-radius:20px; background:linear-gradient(135deg,rgba(25,143,255,.16),rgba(39,91,208,.08)); }
.hour-detail-hero > div:first-child { display:flex; align-items:baseline; gap:14px; }
.hour-detail-hero > div:first-child strong { font:800 46px/1 Manrope,sans-serif; letter-spacing:-.06em; }
.hour-detail-hero > div:first-child span { color:var(--text-soft); font-size:16px; font-weight:700; }
.hour-detail-trend { text-align:right; }
.hour-detail-trend small, .hour-detail-trend strong { display:block; }
.hour-detail-trend small { color:var(--muted); font-size:11px; }
.hour-detail-trend strong { margin-top:4px; font-size:13px; }
.hour-detail-grid { margin-top:16px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.hour-detail-metric { min-height:98px; padding:15px; display:flex; flex-direction:column; justify-content:center; border:1px solid rgba(118,190,255,.12); border-radius:16px; background:rgba(255,255,255,.03); }
.hour-detail-metric small, .hour-detail-metric strong, .hour-detail-metric span { display:block; }
.hour-detail-metric small { color:var(--muted); font-size:11px; }
.hour-detail-metric strong { margin-top:6px; font-size:17px; }
.hour-detail-metric span { margin-top:5px; color:#7f9ab9; font-size:11px; }
.hour-detail-actions { margin-top:18px; display:grid; grid-template-columns:1fr 1fr; gap:10px; }

.share-dialog { width:min(560px,calc(100vw - 30px)); }
.share-preview { margin:18px 0; padding:15px; border:1px solid var(--line); border-radius:15px; background:rgba(255,255,255,.03); color:var(--text-soft)!important; line-height:1.6; }
.share-actions { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.share-actions .button { min-height:52px; }

.privacy-center-button {
  position:fixed;
  z-index:250;
  left:auto;
  right:18px;
  bottom:18px;
  min-height:46px;
  padding:0 15px;
  display:flex;
  align-items:center;
  gap:8px;
  border:1px solid rgba(101,190,255,.3);
  border-radius:15px;
  background:rgba(5,22,48,.88);
  color:#d7ebff;
  box-shadow:0 16px 38px rgba(0,0,0,.3);
  backdrop-filter:blur(16px);
  cursor:pointer;
  font-size:12px;
  font-weight:750;
  transition:.2s ease;
}
.privacy-center-button:hover { transform:translateY(-2px); background:rgba(14,58,112,.94); }
.privacy-center-button svg { width:20px; height:20px; color:#54caff; }

.cookie-consent {
  position:fixed;
  z-index:4600;
  inset:0;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  padding:24px;
  background:rgba(0,6,17,.62);
  backdrop-filter:blur(10px);
}
.cookie-card {
  width:min(1180px,100%);
  padding:24px;
  display:grid;
  grid-template-columns:64px minmax(0,1fr) auto;
  align-items:center;
  gap:20px;
  border:1px solid rgba(112,190,255,.24);
  border-radius:24px;
  background:linear-gradient(145deg,rgba(8,29,62,.98),rgba(4,17,39,.98));
  box-shadow:0 30px 90px rgba(0,0,0,.5);
}
.cookie-icon { width:58px; height:58px; display:grid; place-items:center; border-radius:18px; background:rgba(35,153,255,.12); color:#59c8ff; }
.cookie-icon svg { width:29px; height:29px; }
.cookie-copy h2 { margin:5px 0 7px; font:800 23px/1.15 Manrope,sans-serif; }
.cookie-copy p { margin:0; max-width:760px; color:var(--text-soft); font-size:13px; line-height:1.55; }
.cookie-copy .privacy-ai-note{margin-top:8px;padding-top:8px;border-top:1px solid rgba(117,194,255,.14);color:var(--muted);}
.cookie-copy a { display:inline-flex; margin-top:8px; color:#67c9ff; font-size:12px; font-weight:700; }
.cookie-actions { display:flex; align-items:center; gap:9px; }
.cookie-actions .button { white-space:nowrap; }

.privacy-dialog { width:min(650px,calc(100vw - 30px)); }
.privacy-options { margin-top:18px; border-top:1px solid rgba(255,255,255,.07); }
.privacy-option { position:relative; min-height:82px; padding:15px 62px 15px 0; display:flex; align-items:center; border-bottom:1px solid rgba(255,255,255,.07); cursor:pointer; }
.privacy-option > span strong, .privacy-option > span small { display:block; }
.privacy-option > span strong { font-size:14px; }
.privacy-option > span small { margin-top:5px; color:var(--muted); font-size:12px; line-height:1.45; }
.privacy-option input { position:absolute; opacity:0; pointer-events:none; }
.privacy-option i { position:absolute; right:0; width:46px; height:26px; border-radius:99px; background:#1a2c48; box-shadow:inset 0 0 0 1px rgba(130,190,255,.14); transition:.2s; }
.privacy-option i::after { content:""; position:absolute; width:20px; height:20px; top:3px; left:3px; border-radius:50%; background:#8fa6c0; transition:.2s; }
.privacy-option input:checked + i { background:linear-gradient(135deg,#19a8ff,#176cff); }
.privacy-option input:checked + i::after { left:23px; background:#fff; }
.privacy-option.locked { cursor:default; opacity:.8; }
.privacy-dialog-actions { margin-top:20px; display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }
.privacy-facts { margin-top:18px; display:grid; gap:10px; }
.privacy-fact { display:grid; grid-template-columns:42px minmax(0,1fr); gap:12px; align-items:start; padding:14px; border:1px solid rgba(117,194,255,.14); border-radius:16px; background:rgba(255,255,255,.025); }
.privacy-fact > svg { width:23px; height:23px; margin:2px auto 0; color:#62d9cc; }
.privacy-fact strong, .privacy-fact small { display:block; }
.privacy-fact strong { font-size:14px; }
.privacy-fact small { margin-top:5px; color:var(--muted); font-size:12px; line-height:1.5; }
.privacy-dialog-actions.single-action { grid-template-columns:minmax(180px,240px); justify-content:end; }

@media (max-width: 1100px) {
  .cookie-card { grid-template-columns:54px 1fr; }
  .cookie-actions { grid-column:1/-1; justify-content:flex-end; }
}

@media (max-width: 900px) {
  .panel-title h2 { font-size:20px; }
  .privacy-center-button { left:auto; right:12px; bottom:calc(var(--mobile-nav-h) + var(--safe-bottom) + 12px); width:44px; height:44px; min-height:44px; padding:0; justify-content:center; border-radius:14px; }
  .privacy-center-button span { display:none; }
  .hourly-strip { grid-auto-columns:100px; }
  .hour-card { min-height:174px; }
  .hour-detail-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width: 620px) {
  body { font-size:15px; }
  .location-command strong { font-size:13px; }
  .location-command small { font-size:10px; }
  .hero-copy > p { font-size:13px; }
  .hero-facts span { font-size:11px; }
  .panel-title h2 { font-size:19px; }
  .section-kicker { font-size:11px; }
  .hourly-strip { grid-auto-columns:96px; }
  .hour-card time { font-size:11px; }
  .hour-card strong { font-size:17px; }
  .hour-card small { font-size:10px; }
  .hour-detail-dialog form { padding:26px 18px 20px; }
  .hour-detail-heading { padding-right:18px; }
  .hour-detail-heading h2 { font-size:22px; }
  .hour-detail-art { width:92px; height:80px; }
  .hour-detail-art .weather-svg { width:90px; height:76px; }
  .hour-detail-hero { align-items:flex-start; flex-direction:column; }
  .hour-detail-hero > div:first-child strong { font-size:39px; }
  .hour-detail-trend { text-align:left; }
  .hour-detail-grid { grid-template-columns:1fr 1fr; }
  .hour-detail-metric { min-height:92px; padding:13px; }
  .hour-detail-metric strong { font-size:15px; }
  .share-actions { grid-template-columns:1fr; }
  .cookie-consent { padding:12px; }
  .cookie-card { max-height:calc(100dvh - 24px); overflow:auto; padding:20px; grid-template-columns:1fr; gap:13px; border-radius:21px; }
  .cookie-icon { width:48px; height:48px; }
  .cookie-copy h2 { font-size:20px; }
  .cookie-copy p { font-size:12px; }
  .cookie-actions { grid-column:auto; display:grid; grid-template-columns:1fr; width:100%; }
  .cookie-actions .button { width:100%; }
  .privacy-dialog-actions, .hour-detail-actions { grid-template-columns:1fr; }
}

@media (max-width: 430px) {
  .hour-detail-grid { grid-template-columns:1fr; }
  .hour-detail-heading { align-items:flex-start; }
  .hour-detail-art { display:none; }
}


.auth-kicker { font-size:11px; }
.auth-divider { font-size:12px; }
.auth-security strong { font-size:12px; }
.auth-security small { font-size:11px; }
.location-result small, .onboarding-search > button { font-size:12px; }
.floating-result small { font-size:11px; }
.stage-caption { font-size:11px; }
.nav-link > b { font-size:11px; }
.sidebar-weather small { font-size:11px; }
.profile-button { font-size:12px; }
.chart-legend, .aqi-gauge small { font-size:11px; }
.pollutants span { font-size:11px; }
.sun-times small { font-size:10px; }
.ai-chip { font-size:10px; }
.activity-card strong { font-size:13px; }
.activity-card small, .activity-card em { font-size:11px; }
.radar-opacity, .radar-stat small { font-size:11px; }
.radar-stat strong { font-size:14px; }
.favorite-card p { font-size:12px; }
.favorite-condition { font-size:13px; }
.favorite-footer { font-size:11px; }
.empty-state p { font-size:13px; }
.alert-card p { font-size:12px; }
.alert-when { font-size:11px; }
.thresholds-panel > p { font-size:12px; }
.threshold-row strong { font-size:13px; }
.threshold-row small { font-size:11px; }
.threshold-row output { font-size:12px; }
.hourly-table-row { font-size:12px; }
.hourly-table-row.header { font-size:10px; }
.hourly-table-row b { font-size:13px; }
.app-dialog form > p { font-size:13px; }
.field-label { font-size:12px; }
.info-note { font-size:11px; }
.dialog-search button { font-size:12px; }
.recent-chip { font-size:11px; }
.search-result-row strong { font-size:13px; }
.search-result-row small { font-size:11px; }
.search-loading, .search-empty { font-size:12px; }
.setting-row select { font-size:12px; }
.radar-mode-switch button { font-size:11px; }
.radar-empty small, .radar-empty button, .radar-dry-chip { font-size:11px; }
.radar-attribution { font-size:9px; }
.radar-speed, .radar-speed select { font-size:10px; }
.mobile-icon-wrap b { font-size:9px; }

@media (max-width:620px) {
  .hourly-table-row { font-size:11px; }
  .sidebar-credit { font-size:10px; }
}


:root{
  --font-readable:clamp(16px,.35vw + 14px,18px);
  --panel-border:rgba(93,205,255,.24);
  --panel-highlight:rgba(255,255,255,.08);
  --neon-cyan:#51dcff;
  --neon-blue:#258cff;
  --neon-violet:#9a76ff;
}
html{font-size:16px}
body{font-size:var(--font-readable);line-height:1.55;letter-spacing:.005em}
body::after{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background-image:linear-gradient(rgba(79,175,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(79,175,255,.025) 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.75),transparent 92%)}
.ambient{z-index:-3}
.weather-atmosphere{position:fixed;inset:0;z-index:-2;overflow:hidden;pointer-events:none;transition:background 1.2s ease,filter 1.2s ease}
.weather-atmosphere::before,.weather-atmosphere::after{content:"";position:absolute;inset:-15%;pointer-events:none;transition:opacity 1s ease,transform 1s ease}
.weather-atmosphere::before{background:radial-gradient(circle at 72% 18%,rgba(74,192,255,.22),transparent 22%),radial-gradient(circle at 16% 74%,rgba(107,68,255,.16),transparent 28%);animation:atmosphereDrift 18s ease-in-out infinite alternate}
.weather-atmosphere::after{background:linear-gradient(115deg,transparent 18%,rgba(97,218,255,.06) 44%,transparent 67%);transform:translateX(-35%);animation:skyScan 13s linear infinite}
#weather-fx-canvas{position:absolute;inset:0;width:100%;height:100%;opacity:.9}
.atmosphere-sun,.atmosphere-moon,.atmosphere-cloud,.atmosphere-glow,.atmosphere-lightning{position:absolute;display:block;transition:opacity 1.1s ease,transform 1.1s ease}
.atmosphere-sun{right:8vw;top:6vh;width:clamp(190px,24vw,430px);aspect-ratio:1;border-radius:50%;opacity:0;background:radial-gradient(circle at 38% 36%,#fffbe0 0 6%,#ffe66d 17%,#ffad28 48%,rgba(255,142,0,.2) 66%,transparent 72%);filter:drop-shadow(0 0 45px rgba(255,195,61,.44));animation:sunFloat 9s ease-in-out infinite}
.atmosphere-sun::before,.atmosphere-sun::after{content:"";position:absolute;inset:-20%;border-radius:50%;border:1px solid rgba(255,217,91,.22);animation:orbitSpin 25s linear infinite}
.atmosphere-sun::after{inset:-38%;border-style:dashed;animation-duration:38s;animation-direction:reverse}
.atmosphere-moon{right:10vw;top:8vh;width:clamp(150px,19vw,340px);aspect-ratio:1;border-radius:50%;opacity:0;background:radial-gradient(circle at 34% 30%,#fff 0 4%,#dceeff 26%,#93b7dc 72%,#567798 100%);box-shadow:0 0 80px rgba(140,196,255,.28),inset -35px -28px 55px rgba(34,54,89,.32);animation:moonFloat 11s ease-in-out infinite}
.atmosphere-cloud{width:clamp(280px,34vw,680px);height:clamp(100px,13vw,250px);border-radius:50%;opacity:0;background:radial-gradient(ellipse at 50% 52%,rgba(201,229,255,.2),rgba(98,135,177,.06) 58%,transparent 72%);filter:blur(14px)}
.cloud-one{left:-12%;top:13%;animation:cloudCruiseOne 29s linear infinite}
.cloud-two{right:-18%;top:52%;animation:cloudCruiseTwo 37s linear infinite}
.atmosphere-glow{inset:auto 0 0;height:48vh;opacity:.55;background:radial-gradient(ellipse at 50% 100%,rgba(25,137,255,.19),transparent 68%)}
.atmosphere-lightning{inset:0;opacity:0;background:radial-gradient(circle at 55% 22%,rgba(255,255,255,.92),rgba(157,204,255,.3) 14%,transparent 43%);mix-blend-mode:screen}
.atmosphere-lightning.flash{animation:lightningFlash .52s steps(2,end)}
.weather-clear.is-day{background:linear-gradient(145deg,#03132b 0%,#062d59 49%,#0c5794 100%)}
.weather-clear.is-day .atmosphere-sun{opacity:.82}
.weather-night,.weather-clear.is-night{background:radial-gradient(circle at 78% 13%,rgba(66,117,181,.22),transparent 25%),linear-gradient(150deg,#020817,#06152d 52%,#0a2544)}
.weather-night .atmosphere-moon,.weather-clear.is-night .atmosphere-moon{opacity:.68}
.weather-cloud{background:linear-gradient(150deg,#061326,#153451 48%,#273c52)}
.weather-cloud .atmosphere-cloud{opacity:calc(.38 + var(--cloud-cover,.6) * .45)}
.weather-rain{background:linear-gradient(145deg,#020a16,#0a1d31 48%,#16334a)}
.weather-rain .atmosphere-cloud{opacity:.72}
.weather-storm{background:linear-gradient(145deg,#02050d,#101321 44%,#19233b)}
.weather-storm .atmosphere-cloud{opacity:.88;filter:blur(17px) brightness(.7)}
.weather-snow{background:linear-gradient(145deg,#06111e,#19364d 48%,#45667e)}
.weather-snow::before{background:radial-gradient(circle at 70% 14%,rgba(224,247,255,.25),transparent 24%),linear-gradient(125deg,rgba(255,255,255,.08),transparent 58%)}
.weather-fog{background:linear-gradient(145deg,#162536,#31495b 52%,#657686)}
.weather-fog .atmosphere-cloud{opacity:.9;filter:blur(23px)}
@keyframes atmosphereDrift{to{transform:translate3d(4%,-2%,0) scale(1.06)}}
@keyframes skyScan{to{transform:translateX(48%)}}
@keyframes sunFloat{50%{transform:translate3d(-16px,16px,0) scale(1.04)}}
@keyframes moonFloat{50%{transform:translate3d(-12px,12px,0) rotate(-3deg)}}
@keyframes orbitSpin{to{transform:rotate(360deg)}}
@keyframes cloudCruiseOne{0%{transform:translateX(-10vw)}100%{transform:translateX(125vw)}}
@keyframes cloudCruiseTwo{0%{transform:translateX(15vw) scale(.85)}100%{transform:translateX(-125vw) scale(1.05)}}
@keyframes lightningFlash{0%,100%{opacity:0}18%,35%{opacity:.9}25%,48%{opacity:.12}}


.app-shell,.welcome-shell{position:relative;z-index:1}
.global-loader{position:fixed;z-index:5000}
.network-banner{position:fixed;z-index:6000}
.privacy-center-button{position:fixed;z-index:250}
.cookie-consent{position:fixed;z-index:4600}
.toast-region{position:fixed;z-index:7000}
.app-shell{isolation:isolate}
.glass-panel,.radar-card,.app-dialog form,.cookie-card{border-color:var(--panel-border);background:linear-gradient(145deg,rgba(7,28,56,.88),rgba(4,18,39,.78));box-shadow:inset 0 1px 0 var(--panel-highlight),0 24px 70px rgba(0,7,22,.3);backdrop-filter:blur(24px) saturate(140%)}
.glass-panel{position:relative;overflow:hidden;transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease}
.glass-panel::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,transparent 10%,rgba(82,214,255,.06) 45%,transparent 70%);transform:translateX(-120%);animation:panelShimmer 10s ease-in-out infinite}
.glass-panel:hover{transform:translateY(-3px);border-color:rgba(91,220,255,.42);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 30px 82px rgba(0,17,48,.42),0 0 0 1px rgba(49,167,255,.07)}
@keyframes panelShimmer{0%,65%{transform:translateX(-120%)}86%,100%{transform:translateX(125%)}}

.page-heading h1{font-size:clamp(2.55rem,4.1vw,4.65rem);line-height:.98;letter-spacing:-.045em}
.page-heading p{font-size:clamp(1rem,.45vw + .85rem,1.22rem);line-height:1.65;max-width:760px}
.section-kicker{font-size:.78rem!important;letter-spacing:.22em;font-weight:850}
.panel-title h2{font-size:clamp(1.35rem,1.1vw + 1rem,2rem);line-height:1.15;letter-spacing:-.025em}
.panel-title p,.panel-link,.soft-badge,.live-status{font-size:.88rem}
.sidebar-nav .nav-link,.mobile-nav button{font-size:1rem;font-weight:750}
.location-command strong{font-size:1rem}.location-command small{font-size:.79rem}
.hero-place{font-size:1.05rem}.hero-date{font-size:.92rem}
.hero-copy h2{font-size:clamp(3.75rem,5.7vw,6.7rem);line-height:.86;letter-spacing:-.07em}
.hero-copy h3{font-size:clamp(2rem,2.3vw,3.1rem);line-height:1.03}
.hero-copy>p{font-size:1rem;line-height:1.65;max-width:650px}
.hero-facts span{font-size:.88rem;padding:12px 16px}
.hero-status,.hero-favorite{font-size:.88rem}
.now-metric small{font-size:.83rem}.now-metric strong{font-size:clamp(1.25rem,1vw + 1rem,1.7rem)}.now-metric em{font-size:.78rem}
.hour-card time{font-size:.82rem}.hour-card strong{font-size:1.28rem}.hour-card small{font-size:.78rem}.hour-card{min-width:112px}
.daily-row,.daily-row strong,.daily-row small{font-size:.92rem}
.chart-legend,.aqi-gauge small,.pollutants span,.sun-times small,.activity-card small,.activity-card em{font-size:.8rem!important}
.activity-card strong,.aqi-copy strong,.sun-times strong{font-size:1.06rem}
.sidebar-credit{font-size:.72rem;line-height:1.55}
.button{font-size:.95rem;min-height:49px}.round-button{min-width:49px;min-height:49px}
input,select,textarea{font-size:1rem}

.hero-panel{background:radial-gradient(circle at 84% 30%,rgba(83,220,255,.24),transparent 32%),linear-gradient(128deg,rgba(11,94,194,.96),rgba(20,139,229,.92) 48%,rgba(33,93,211,.92));box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 32px 90px rgba(0,60,152,.34)}
.hero-panel::before{content:"";position:absolute;width:720px;height:720px;right:-310px;top:-390px;border:1px solid rgba(255,255,255,.12);border-radius:50%;box-shadow:0 0 0 72px rgba(255,255,255,.025),0 0 0 145px rgba(255,255,255,.02);animation:heroOrbit 18s linear infinite}
@keyframes heroOrbit{to{transform:rotate(360deg)}}

.trend-dashboard{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.mini-chart-panel{min-width:0;padding:22px 22px 16px}
.mini-chart-head{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:13px;margin-bottom:10px}
.mini-chart-head>span{width:44px;height:44px;display:grid;place-items:center;border-radius:14px;color:#55ddff;background:linear-gradient(145deg,rgba(45,169,255,.22),rgba(94,90,255,.12));box-shadow:inset 0 0 0 1px rgba(95,207,255,.15),0 0 22px rgba(49,176,255,.1)}
.mini-chart-head svg{width:22px;height:22px}
.mini-chart-head small{display:block;color:#54d9ff;font-size:.72rem;font-weight:850;letter-spacing:.18em}
.mini-chart-head h3{margin:3px 0 0;font-size:1.08rem;line-height:1.25}
.mini-chart-head b{font-size:1.03rem;color:#eff9ff;white-space:nowrap}
.mini-chart-wrap{height:180px;position:relative}
.mini-chart-wrap canvas,.detail-motion-chart canvas{width:100%;height:100%;display:block}
.detail-trend-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:20px}
.detail-motion-panel{min-width:0;padding:22px}
.detail-motion-panel .mini-chart-head{margin-bottom:14px}
.detail-motion-chart{height:260px;position:relative}

.radar-card{height:clamp(570px,69vh,820px);background:#06172b}
.radar-map{background:radial-gradient(circle at center,rgba(28,109,163,.2),transparent 52%),linear-gradient(145deg,#071827,#0b2840);isolation:isolate}
.radar-map::before{content:"";position:absolute;inset:-35%;z-index:2;pointer-events:none;background:conic-gradient(from 0deg at 50% 50%,transparent 0 87%,rgba(74,222,255,.12) 93%,transparent 100%);animation:radarSweep 8s linear infinite;mix-blend-mode:screen}
.radar-base-canvas{position:absolute;inset:0;z-index:0;width:100%;height:100%;display:block}
.radar-tiles{z-index:1}.radar-forecast-canvas{z-index:1}.map-vignette{z-index:2}.radar-marker{z-index:4}.radar-top-overlay,.radar-zoom,.radar-bottom-overlay,.radar-attribution,.radar-empty,.radar-dry-chip{z-index:6}
.radar-only-tile{background:transparent}
.radar-overlay-tile{filter:saturate(1.25) contrast(1.1);mix-blend-mode:screen}
.radar-location strong{font-size:.98rem}.radar-location small{font-size:.76rem}
.radar-time-row strong{font-size:1rem}.radar-time-row span{font-size:.75rem}
.radar-speed,.radar-speed select,.radar-opacity,.radar-stat small{font-size:.76rem!important}
.radar-stat strong{font-size:.96rem!important}.radar-attribution{font-size:.68rem!important}
.radar-mode-switch button{font-size:.86rem!important}
@keyframes radarSweep{to{transform:rotate(360deg)}}

.hour-detail-dialog form{width:min(860px,calc(100vw - 28px))}
.hour-detail-heading h2{font-size:clamp(1.65rem,2vw,2.3rem)}
.hour-detail-heading p{font-size:.98rem}
.hour-detail-hero>div:first-child strong{font-size:clamp(3rem,5vw,5rem)}
.hour-detail-hero>div:first-child span{font-size:1.1rem}
.hour-detail-metric small{font-size:.8rem}.hour-detail-metric strong{font-size:1.06rem}.hour-detail-metric em{font-size:.74rem}
.cookie-copy h2,.privacy-dialog h2,.share-dialog h2{font-size:clamp(1.35rem,1.5vw,1.9rem)}
.cookie-copy p,.privacy-dialog p,.share-preview{font-size:.94rem;line-height:1.6}
.privacy-option>span strong{font-size:.95rem}.privacy-option>span small{font-size:.8rem}

@media (max-width:1280px){
  .trend-dashboard{grid-template-columns:repeat(2,minmax(0,1fr))}
  .trend-dashboard>.mini-chart-panel:last-child{grid-column:1/-1}
  .hero-copy h2{font-size:clamp(3.4rem,6vw,5.7rem)}
}
@media (max-width:980px){
  body{font-size:16px}
  .trend-dashboard,.detail-trend-grid{grid-template-columns:1fr}
  .trend-dashboard>.mini-chart-panel:last-child{grid-column:auto}
  .mini-chart-wrap{height:205px}
  .detail-motion-chart{height:230px}
  .page-heading h1{font-size:clamp(2.35rem,8vw,4rem)}
  .radar-card{height:clamp(600px,78vh,820px)}
}
@media (max-width:700px){
  html{font-size:16px}body{font-size:16px}
  .page-heading h1{font-size:2.6rem}
  .page-heading p{font-size:1rem}
  .panel-title h2{font-size:1.45rem}
  .hero-copy h2{font-size:4rem}.hero-copy h3{font-size:2rem}.hero-copy>p{font-size:.98rem}
  .hero-facts span{font-size:.84rem}
  .now-metric small{font-size:.8rem}.now-metric strong{font-size:1.35rem}.now-metric em{font-size:.76rem}
  .hourly-strip{grid-auto-columns:112px}.hour-card{min-height:184px}.hour-card time{font-size:.8rem}.hour-card strong{font-size:1.3rem}.hour-card small{font-size:.76rem}
  .daily-row,.daily-row strong,.daily-row small{font-size:.88rem}
  .mini-chart-panel{padding:18px 16px 12px}.mini-chart-head{grid-template-columns:auto 1fr}.mini-chart-head>b{grid-column:2}.mini-chart-wrap{height:190px}
  .radar-card{height:680px;border-radius:22px}.radar-bottom-overlay{left:10px;right:10px;bottom:10px;padding:12px;gap:10px}.radar-top-overlay{left:10px;right:10px;top:10px}.radar-location{padding:10px 11px}.radar-location strong{font-size:.9rem}.radar-location small{font-size:.7rem}.radar-zoom{right:10px}.radar-attribution{right:10px;bottom:126px}
  .detail-motion-panel{padding:17px}.detail-motion-chart{height:210px}
  .button{font-size:.94rem}
}
@media (max-width:450px){
  .hero-copy h2{font-size:3.35rem}.hero-copy h3{font-size:1.78rem}
  .mini-chart-head h3{font-size:1rem}.mini-chart-head b{font-size:.96rem}
  .radar-card{height:650px}.radar-player-buttons{gap:5px}.radar-step-button{width:38px;height:38px}.radar-play-button{width:46px;height:46px}.radar-speed{display:none}.radar-opacity{width:110px}
}
@media (prefers-reduced-motion:reduce){
  .weather-atmosphere::before,.weather-atmosphere::after,.atmosphere-sun,.atmosphere-moon,.atmosphere-cloud,.glass-panel::after,.hero-panel::before,.radar-map::before{animation:none!important}
}
body.reduce-motion .weather-atmosphere::before,body.reduce-motion .weather-atmosphere::after,body.reduce-motion .atmosphere-sun,body.reduce-motion .atmosphere-moon,body.reduce-motion .atmosphere-cloud,body.reduce-motion .glass-panel::after,body.reduce-motion .hero-panel::before,body.reduce-motion .radar-map::before{animation:none!important}


@media (max-width:700px){
  .activity-insights{display:grid;grid-template-columns:1fr;overflow:visible;gap:12px}
  .activity-card{min-width:0;width:100%}
  .activity-card strong{font-size:1.03rem}
  .activity-card small,.activity-card em{font-size:.82rem!important}
}


:root{
  --content-gutter:clamp(16px,1.45vw,48px);
  --ultrawide-gap:clamp(16px,1.1vw,30px);
}
.pages-wrap{width:100%;max-width:none!important;margin:0!important;padding-left:var(--content-gutter);padding-right:var(--content-gutter)}
.page{width:100%;min-width:0}
.home-grid{width:100%;align-items:start}
.trend-dashboard,.detail-trend-grid{align-items:stretch}
.mini-chart-panel,.detail-motion-panel{min-height:0!important;align-self:start;overflow:hidden}
.mini-chart-wrap,.detail-motion-chart,.detail-chart-wrap{position:relative;isolation:isolate;overflow:hidden;border-radius:16px;background:linear-gradient(180deg,rgba(35,126,224,.035),rgba(4,15,33,.015))}
.mini-chart-wrap::before,.detail-motion-chart::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(90deg,transparent,rgba(79,211,255,.09),transparent);transform:translateX(-115%);animation:chartScan 7s ease-in-out infinite}
.mini-chart-wrap::after,.detail-motion-chart::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background-image:linear-gradient(rgba(122,190,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(122,190,255,.025) 1px,transparent 1px);background-size:100% 25%,12.5% 100%;mask-image:linear-gradient(to bottom,rgba(0,0,0,.8),transparent)}
.mini-chart-wrap canvas,.detail-motion-chart canvas,.detail-chart-wrap canvas{position:relative;z-index:1;width:100%!important;height:100%!important;display:block}
@keyframes chartScan{0%,18%{transform:translateX(-115%);opacity:0}35%{opacity:1}68%,100%{transform:translateX(115%);opacity:0}}
.chart-live-pill{display:inline-flex;align-items:center;gap:7px;min-height:32px;padding:0 11px;border:1px solid rgba(87,211,255,.18);border-radius:999px;background:rgba(49,170,255,.07);color:#9bcfff;font-size:.78rem;font-weight:800;white-space:nowrap}
.chart-live-pill i{width:7px;height:7px;border-radius:50%;background:#4ae99a;box-shadow:0 0 11px #4ae99a;animation:livePulse 1.8s ease-in-out infinite}
@keyframes livePulse{50%{opacity:.42;transform:scale(.75)}}
.detail-motion-panel{padding:clamp(18px,1.2vw,28px)}
.detail-motion-chart{height:clamp(230px,17vw,340px);margin-top:14px}
.detail-chart-wrap{height:clamp(330px,25vw,500px)}
.mini-chart-wrap{height:clamp(190px,12vw,270px)}
.mini-chart-head{position:relative;z-index:2}


body{font-size:clamp(16px,.15vw + 15px,19px)}
.sidebar-nav .nav-link{font-size:clamp(.94rem,.12vw + .9rem,1.08rem)}
.location-command strong{font-size:clamp(.96rem,.12vw + .92rem,1.08rem)}
.location-command small{font-size:clamp(.75rem,.08vw + .72rem,.86rem)}
.panel-title h2{font-size:clamp(1.28rem,.42vw + 1rem,2rem)}
.hour-card time,.hour-card small,.day-row small,.now-metric small,.now-metric em{font-size:clamp(.76rem,.08vw + .73rem,.9rem)}
.hour-card strong,.day-row strong,.now-metric strong{font-size:clamp(1.08rem,.2vw + 1rem,1.5rem)}
.chart-legend{font-size:clamp(.72rem,.08vw + .68rem,.86rem)!important}


@media (min-width:1800px){
  :root{--sidebar-w:clamp(270px,14vw,330px);--topbar-h:96px}
  .topbar{padding-left:var(--content-gutter);padding-right:var(--content-gutter);grid-template-columns:minmax(320px,1fr) minmax(420px,680px) minmax(330px,1fr)}
  .home-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--ultrawide-gap)}
  .hero-card{grid-column:1/9;grid-row:1;min-height:clamp(430px,28vw,610px)}
  .now-panel{grid-column:9/13;grid-row:1;min-height:clamp(430px,28vw,610px)}
  .hourly-panel{grid-column:1/9;grid-row:2}
  .forecast-panel{grid-column:9/13;grid-row:2/span 2}
  .chart-preview-panel{grid-column:1/9;grid-row:3}
  .trend-dashboard{grid-column:1/13;grid-row:4;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--ultrawide-gap)}
  .air-panel{grid-column:1/9;grid-row:5}
  .sun-panel{grid-column:9/13;grid-row:5}
  .insight-panel{grid-column:1/13;grid-row:6}
  .hero-content{min-height:clamp(320px,21vw,470px)}
  .current-weather-art,.current-weather-art .weather-svg{width:clamp(210px,15vw,340px);height:auto}
  .hourly-strip{grid-auto-columns:minmax(118px,1fr)}
  .now-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(12px,1vw,22px)}
  .now-metric{min-height:clamp(125px,8vw,180px)}
  .detail-trend-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--ultrawide-gap)}
  .detail-motion-chart{height:clamp(270px,16vw,390px)}
  .detail-chart-wrap{height:clamp(420px,24vw,590px)}
  .favorites-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}

@media (min-width:2560px){
  :root{--sidebar-w:clamp(300px,12vw,380px);--topbar-h:108px;--content-gutter:clamp(34px,1.6vw,72px)}
  .sidebar{padding-left:clamp(24px,1.2vw,42px);padding-right:clamp(24px,1.2vw,42px)}
  .sidebar-brand{min-height:105px}
  .sidebar-brand img{width:54px;height:54px}.sidebar-brand>span{font-size:1.55rem}
  .nav-link{min-height:68px;border-radius:20px}
  .home-grid{gap:clamp(24px,1.25vw,38px)}
  .glass-panel,.hero-card{border-radius:clamp(26px,1.4vw,38px)}
  .hero-card{grid-column:1/8;min-height:590px}
  .now-panel{grid-column:8/13;min-height:590px}
  .hourly-panel{grid-column:1/8}
  .forecast-panel{grid-column:8/13}
  .chart-preview-panel{grid-column:1/8}
  .hero-copy h2{font-size:clamp(6rem,5.2vw,8.8rem)}
  .hero-copy h3{font-size:clamp(2.5rem,2vw,4rem)}
  .hero-copy>p{font-size:clamp(1rem,.25vw + .9rem,1.35rem)}
  .trend-dashboard{grid-template-columns:repeat(3,minmax(0,1fr))}
  .mini-chart-wrap{height:clamp(250px,11vw,360px)}
  .detail-trend-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .detail-motion-chart{height:clamp(250px,11vw,360px)}
  .detail-chart-wrap{height:clamp(500px,22vw,720px)}
  .activity-insights{grid-template-columns:repeat(4,minmax(0,1fr))}
  .hourly-table-row{min-width:1200px;font-size:.9rem;grid-template-columns:120px 1.3fr 120px 120px 130px 130px 140px 1fr}
  .hourly-table-row.header{font-size:.78rem}.hourly-table-row b{font-size:.94rem}
}

@media (min-width:3440px){
  :root{--content-gutter:clamp(56px,2vw,96px)}
  .topbar{grid-template-columns:minmax(420px,1fr) minmax(560px,820px) minmax(420px,1fr)}
  .home-grid{grid-template-columns:repeat(16,minmax(0,1fr))}
  .hero-card{grid-column:1/11}.now-panel{grid-column:11/17}
  .hourly-panel{grid-column:1/11}.forecast-panel{grid-column:11/17}
  .chart-preview-panel{grid-column:1/11}.trend-dashboard{grid-column:1/17}
  .air-panel{grid-column:1/11}.sun-panel{grid-column:11/17}.insight-panel{grid-column:1/17}
  .mini-chart-wrap{height:360px}.detail-motion-chart{height:370px}.detail-chart-wrap{height:720px}
}


@media (min-width:981px) and (max-width:1799px){
  .pages-wrap{padding-left:clamp(22px,2vw,36px);padding-right:clamp(22px,2vw,36px)}
  .detail-trend-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .detail-motion-chart{height:280px}
}
@media (max-width:980px){
  .detail-motion-panel{padding:18px}
  .detail-motion-chart{height:250px}
  .detail-chart-wrap{height:330px}
}
@media (max-width:700px){
  .pages-wrap{padding-left:14px!important;padding-right:14px!important}
  .detail-trend-grid{gap:14px}
  .detail-motion-chart{height:230px;margin-top:10px}
  .mini-chart-wrap{height:220px}
  .chart-live-pill{min-height:28px;padding:0 9px;font-size:.7rem}
}
@media (prefers-reduced-motion:reduce){.mini-chart-wrap::before,.detail-motion-chart::before,.chart-live-pill i{animation:none!important}}
body.reduce-motion .mini-chart-wrap::before,body.reduce-motion .detail-motion-chart::before,body.reduce-motion .chart-live-pill i{animation:none!important}



.global-loader,.network-banner,.privacy-center-button,.cookie-consent,.toast-region{margin:0!important}
dialog.app-dialog:not([open]){display:none!important}


:root{
  --primary:#35d6c7;
  --primary-2:#786cff;
  --cyan:#5cddff;
  --green:#55e7a3;
  --yellow:#ffd166;
  --orange:#ff9a62;
  --purple:#a881ff;
  --panel-border:rgba(115,207,218,.19);
  --content-gutter:clamp(16px,1.7vw,48px);
}

body{background:#040812;font-size:clamp(16px,.18vw + 15px,19px)}
.ambient{background:radial-gradient(circle at 82% 5%,rgba(120,90,255,.13),transparent 28%),radial-gradient(circle at 8% 78%,rgba(38,211,190,.1),transparent 32%),linear-gradient(145deg,#030711,#08111d 48%,#050916)}
.weather-atmosphere{z-index:0!important}
.app-shell,.welcome-shell{position:relative;z-index:1}
.app-shell{--sidebar-expanded:clamp(232px,15vw,292px);--sidebar-current:var(--sidebar-expanded);grid-template-columns:var(--sidebar-current) minmax(0,1fr)!important;background:transparent!important;transition:grid-template-columns .3s ease}
.app-shell.sidebar-collapsed{--sidebar-current:88px}
.app-content{grid-column:2!important;background:transparent}


.pages-wrap{position:relative;isolation:isolate;min-height:calc(100dvh - var(--topbar-h));overflow:hidden;background:rgba(3,8,17,.46);transition:background 1s ease}
.pages-wrap::before,.pages-wrap::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;transition:background 1.1s ease,opacity 1.1s ease,filter 1.1s ease}
.pages-wrap::before{opacity:.94;background:radial-gradient(circle at 75% 8%,rgba(86,111,255,.16),transparent 32%),radial-gradient(circle at 8% 74%,rgba(35,211,190,.12),transparent 31%),linear-gradient(150deg,rgba(4,10,20,.84),rgba(8,17,30,.72))}
.pages-wrap::after{opacity:.22;background-image:linear-gradient(rgba(149,203,218,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(149,203,218,.055) 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(to bottom,black,transparent 94%)}
.page{position:relative;z-index:2}
body[data-weather="clear"][data-daylight="day"] .pages-wrap::before{background:radial-gradient(circle at 83% 8%,rgba(255,190,83,.24),transparent 24%),radial-gradient(circle at 20% 16%,rgba(55,220,205,.18),transparent 32%),linear-gradient(145deg,rgba(8,19,28,.78),rgba(18,29,43,.7) 54%,rgba(45,31,20,.55))}
body[data-weather="clear"][data-daylight="night"] .pages-wrap::before,body[data-weather="night"] .pages-wrap::before{background:radial-gradient(circle at 82% 10%,rgba(160,129,255,.2),transparent 26%),radial-gradient(circle at 16% 70%,rgba(48,181,202,.12),transparent 34%),linear-gradient(150deg,rgba(4,7,20,.9),rgba(13,13,39,.78) 55%,rgba(8,24,39,.72))}
body[data-weather="cloud"] .pages-wrap::before{background:radial-gradient(circle at 78% 12%,rgba(151,173,194,.18),transparent 31%),radial-gradient(circle at 15% 72%,rgba(89,184,167,.12),transparent 34%),linear-gradient(145deg,rgba(7,13,22,.88),rgba(20,31,43,.76),rgba(28,31,47,.68))}
body[data-weather="rain"] .pages-wrap::before{background:radial-gradient(circle at 76% 8%,rgba(53,190,188,.16),transparent 29%),linear-gradient(145deg,rgba(3,10,17,.91),rgba(8,28,34,.82) 48%,rgba(18,22,42,.75))}
body[data-weather="rain"] .pages-wrap::after{opacity:.33;background-image:repeating-linear-gradient(112deg,transparent 0 35px,rgba(102,218,235,.12) 36px 38px,transparent 39px 73px);background-size:160px 220px;animation:pageRain 4.8s linear infinite}
body[data-weather="storm"] .pages-wrap::before{background:radial-gradient(circle at 76% 10%,rgba(169,111,255,.2),transparent 27%),linear-gradient(145deg,rgba(3,5,13,.95),rgba(24,16,38,.82),rgba(8,24,34,.78))}
body[data-weather="snow"] .pages-wrap::before{background:radial-gradient(circle at 78% 8%,rgba(219,244,255,.2),transparent 27%),linear-gradient(145deg,rgba(7,17,25,.9),rgba(25,47,57,.78),rgba(36,38,61,.68))}
body[data-weather="fog"] .pages-wrap::before{filter:saturate(.72);background:linear-gradient(145deg,rgba(20,29,36,.88),rgba(47,57,65,.7),rgba(17,30,40,.78))}
@keyframes pageRain{to{background-position:-150px 240px}}


.sidebar{width:var(--sidebar-current)!important;background:linear-gradient(180deg,rgba(9,19,31,.98),rgba(10,13,25,.99) 58%,rgba(5,19,24,.99))!important;border-right-color:rgba(79,211,190,.16)!important;transition:width .3s ease,padding .3s ease,transform .32s cubic-bezier(.2,.85,.2,1)}
.topbar{background:linear-gradient(90deg,rgba(5,13,23,.92),rgba(11,13,28,.9),rgba(5,19,23,.9))!important;border-bottom-color:rgba(112,205,199,.14)!important}
.glass-panel,.app-dialog form,.cookie-card{background:radial-gradient(circle at 100% 0,rgba(135,91,255,.08),transparent 35%),radial-gradient(circle at 0 100%,rgba(42,209,185,.06),transparent 36%),linear-gradient(145deg,rgba(10,23,36,.9),rgba(10,15,29,.84))!important;border-color:rgba(105,205,196,.18)!important}
.now-metric:nth-child(1){--metric-accent:#49d8cf}.now-metric:nth-child(2){--metric-accent:#a881ff}.now-metric:nth-child(3){--metric-accent:#ff9a62}.now-metric:nth-child(4){--metric-accent:#ffd166}
.now-metric>span{color:var(--metric-accent)!important;background:color-mix(in srgb,var(--metric-accent) 13%,transparent)!important}
.trend-dashboard>.mini-chart-panel:nth-child(1){box-shadow:inset 0 1px rgba(255,255,255,.05),0 22px 55px rgba(15,113,111,.12)}
.trend-dashboard>.mini-chart-panel:nth-child(2){box-shadow:inset 0 1px rgba(255,255,255,.05),0 22px 55px rgba(105,68,176,.12)}
.trend-dashboard>.mini-chart-panel:nth-child(3){box-shadow:inset 0 1px rgba(255,255,255,.05),0 22px 55px rgba(182,111,42,.11)}

.hero-card.weather-clear{background:radial-gradient(circle at 82% 20%,rgba(255,212,104,.42),transparent 28%),linear-gradient(132deg,#107f96 0%,#2b9d9d 42%,#655acb 100%)!important}
.hero-card.weather-night{background:radial-gradient(circle at 82% 16%,rgba(210,196,255,.24),transparent 26%),linear-gradient(132deg,#111b42,#32265f 48%,#095160)!important}
.hero-card.weather-cloud{background:radial-gradient(circle at 84% 18%,rgba(227,236,244,.2),transparent 27%),linear-gradient(132deg,#294655,#3f5366 48%,#52506f)!important}
.hero-card.weather-rain{background:radial-gradient(circle at 82% 18%,rgba(92,224,214,.2),transparent 28%),linear-gradient(132deg,#0d5260,#163b54 48%,#30356a)!important}
.hero-card.weather-storm{background:radial-gradient(circle at 82% 18%,rgba(181,124,255,.23),transparent 27%),linear-gradient(132deg,#171a35,#37234d 48%,#173b4e)!important}
.hero-card.weather-snow{background:radial-gradient(circle at 82% 18%,rgba(242,253,255,.32),transparent 25%),linear-gradient(132deg,#4c8794,#5c728d 48%,#68658c)!important}
.hero-card.weather-fog{background:linear-gradient(132deg,#53636b,#616a76 48%,#4a5f68)!important}


.topbar{height:clamp(88px,5.8vw,102px)!important;padding:0 clamp(16px,2vw,38px)!important;grid-template-columns:minmax(235px,.9fr) minmax(240px,1.25fr) max-content!important;gap:clamp(10px,1.25vw,24px)!important}
.topbar-left,.topbar-center,.topbar-actions{min-width:0}
.topbar-left{gap:8px}
.menu-button{display:grid!important;color:#69ded0!important;border-color:rgba(74,219,199,.22)!important;background:rgba(37,190,171,.075)!important}
.location-command{max-width:100%;min-width:0}
.location-command>span:nth-child(2){min-width:0}
.location-command strong,.location-command small{max-width:clamp(150px,16vw,280px)!important}
.command-search{min-width:0;overflow:hidden;border-color:rgba(160,133,255,.18)!important;background:rgba(129,102,223,.055)!important}
.command-search:hover{border-color:rgba(165,132,255,.38)!important;background:rgba(129,102,223,.1)!important}
.command-search span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.topbar-actions{justify-self:end;display:grid!important;grid-template-columns:repeat(4,48px) 62px;align-items:center;gap:5px!important;padding:5px;border:1px solid rgba(138,180,198,.14);border-radius:20px;background:rgba(255,255,255,.035);box-shadow:inset 0 1px rgba(255,255,255,.04),0 12px 32px rgba(0,0,0,.17)}
.topbar-actions .round-button{width:48px!important;height:48px!important;min-width:48px!important;min-height:48px!important;border:0!important;border-radius:15px!important;background:transparent!important}
#refresh-button{color:#5be4b2!important}#share-button{color:#b39aff!important}#header-favorite{color:#ffd166!important}.topbar-actions .round-button:hover{background:rgba(255,255,255,.075)!important;box-shadow:inset 0 0 0 1px currentColor}
.profile-button{width:62px!important;min-width:62px!important;height:48px!important;padding:0 12px!important;margin-left:2px!important;border-radius:16px!important;background:linear-gradient(145deg,#2dd3ba,#7467ee)!important;font-size:13px!important;letter-spacing:.02em;box-shadow:0 10px 24px rgba(68,82,197,.25)!important}
.profile-button span{display:block;min-width:24px;text-align:center;white-space:nowrap}


@media (min-width:781px){
  .sidebar{padding:24px 17px 22px!important}
  .sidebar-brand{justify-content:flex-start!important;padding:2px 48px 28px 10px!important;white-space:nowrap;overflow:hidden}
  .sidebar-brand>span,.nav-link>span,.sidebar-weather>div,.sidebar-install>span,.sidebar-logout>span,.sidebar-credit{display:block!important}
  .sidebar-close{display:grid!important;right:12px!important;top:25px!important;width:38px!important;height:38px!important;border-radius:13px!important;color:#91a5bd!important;background:rgba(255,255,255,.035)!important}
  .main-nav .nav-link{justify-content:flex-start!important;padding:0 14px!important;overflow:hidden;white-space:nowrap}
  .nav-link>b{position:static!important;margin-left:auto!important}
  .sidebar-weather{justify-content:flex-start!important;padding:13px!important;overflow:hidden}
  .sidebar-install,.sidebar-logout{justify-content:flex-start!important;padding:0 12px!important;overflow:hidden;white-space:nowrap}
  .app-shell.sidebar-collapsed .sidebar{padding-left:12px!important;padding-right:12px!important}
  .app-shell.sidebar-collapsed .sidebar-brand{justify-content:center!important;padding:2px 0 27px!important}
  .app-shell.sidebar-collapsed .sidebar-brand .brand-logo{width:42px;height:42px}
  .app-shell.sidebar-collapsed .sidebar-brand>span,
  .app-shell.sidebar-collapsed .sidebar-close,
  .app-shell.sidebar-collapsed .nav-link>span,
  .app-shell.sidebar-collapsed .sidebar-weather>div,
  .app-shell.sidebar-collapsed .sidebar-install>span,
  .app-shell.sidebar-collapsed .sidebar-logout>span,
  .app-shell.sidebar-collapsed .sidebar-credit{display:none!important}
  .app-shell.sidebar-collapsed .main-nav .nav-link{justify-content:center!important;padding:0!important}
  .app-shell.sidebar-collapsed .nav-link>i{right:-12px!important}
  .app-shell.sidebar-collapsed .nav-link>b{position:absolute!important;right:4px!important;top:5px!important;margin:0!important;min-width:18px!important;height:18px!important;padding:0 5px!important}
  .app-shell.sidebar-collapsed .sidebar-weather,.app-shell.sidebar-collapsed .sidebar-install,.app-shell.sidebar-collapsed .sidebar-logout{justify-content:center!important;padding-left:0!important;padding-right:0!important}
  .app-shell.sidebar-collapsed .sidebar-weather{border-radius:16px}
}


.chart-tooltip{position:fixed;z-index:9000;width:max-content;min-width:210px;max-width:min(320px,calc(100vw - 28px));padding:13px 14px;border:1px solid rgba(117,220,205,.28);border-radius:16px;background:linear-gradient(145deg,rgba(11,24,35,.97),rgba(18,14,35,.97));color:#f7fbff;box-shadow:0 22px 60px rgba(0,0,0,.48),inset 0 1px rgba(255,255,255,.07);backdrop-filter:blur(20px);pointer-events:none;transform-origin:center;animation:chartTooltipIn .16s ease-out}
.chart-tooltip[hidden]{display:none!important}
.chart-tooltip>small{display:block;color:#76daca;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.chart-tooltip>time{display:block;margin:4px 0 9px;color:#c9d6e8;font-size:.82rem;font-weight:700}
.chart-tooltip-row{display:grid;grid-template-columns:9px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:25px;font-size:.8rem}
.chart-tooltip-row i{width:8px;height:8px;border-radius:50%;background:var(--series-color);box-shadow:0 0 10px var(--series-color)}
.chart-tooltip-row b{font-weight:600;color:#9fb1c7}.chart-tooltip-row strong{font-weight:800;color:#fff}
.chart-hovering{filter:brightness(1.06)}
@keyframes chartTooltipIn{from{opacity:0;transform:translateY(5px) scale(.98)}}


.radar-heading{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(430px,650px);align-items:end!important;gap:clamp(20px,2.2vw,42px)!important}
.radar-heading-actions{width:100%!important;display:grid!important;grid-template-columns:minmax(260px,1fr) minmax(180px,auto) 50px minmax(150px,auto)!important;grid-template-areas:"modes modes modes modes" "status status refresh recenter";align-items:center!important;gap:10px!important;justify-content:stretch!important}
.radar-mode-switch{grid-area:modes;width:100%;display:grid!important;grid-template-columns:1fr 1fr!important;padding:5px!important;border-color:rgba(160,132,255,.22)!important;background:rgba(105,75,178,.07)!important}
.radar-mode-switch button{min-height:44px!important;justify-content:center!important;font-size:.92rem!important}
.radar-heading-actions .live-status{grid-area:status;justify-self:start;min-height:48px;padding:0 16px;font-size:.88rem!important}
#radar-refresh{grid-area:refresh;width:48px!important;height:48px!important;min-width:48px!important}
#radar-recenter{grid-area:recenter;min-width:150px!important;min-height:48px!important;padding-inline:18px!important;white-space:nowrap}
.heading-actions .button,.radar-bottom-overlay button,.radar-mode-switch button{flex:0 0 auto}


.sun-panel .panel-title{align-items:flex-start!important;flex-wrap:wrap!important;gap:12px!important}
.sun-panel .panel-title>div{min-width:180px;flex:1}
.sun-panel .soft-badge{max-width:100%;min-height:36px;padding:8px 13px;white-space:normal!important;line-height:1.25;text-align:center;overflow-wrap:anywhere}
.sun-times{grid-template-columns:repeat(var(--mobile-nav-columns,3),minmax(0,1fr))!important;gap:10px}
.sun-times>div{min-width:0}.sun-times small{white-space:normal;line-height:1.25}.sun-times strong{font-size:clamp(1rem,1vw,1.35rem)!important;white-space:nowrap}


.button,.round-button,.profile-button,.radar-step-button,.radar-play-button{flex-shrink:0}
.panel-title{gap:12px}.panel-title>div{min-width:0}.panel-link{white-space:nowrap}

@media (max-width:1500px) and (min-width:781px){
  .topbar{grid-template-columns:minmax(215px,.85fr) minmax(210px,1fr) max-content!important;padding-inline:20px!important;gap:12px!important}
  .command-search kbd{display:none}
  .topbar-actions{grid-template-columns:repeat(4,44px) 58px}
  .topbar-actions .round-button{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important}
  .profile-button{width:58px!important;min-width:58px!important;height:44px!important}
  .location-command strong,.location-command small{max-width:190px!important}
}

@media (max-width:1180px) and (min-width:781px){
  .topbar{grid-template-columns:minmax(200px,.9fr) minmax(180px,1fr) max-content!important}
  .topbar-actions{grid-template-columns:repeat(4,42px) 56px;padding:4px;gap:3px!important}
  .topbar-actions .round-button{width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important}
  .profile-button{width:56px!important;min-width:56px!important;height:42px!important}
  .command-search{padding-inline:11px}.command-search span{font-size:.88rem}
  .location-command strong,.location-command small{max-width:150px!important}
  .radar-heading{grid-template-columns:1fr!important;align-items:start!important}
  .radar-heading-actions{max-width:680px}
}

@media (max-width:900px) and (min-width:781px){
  .topbar-center{display:none!important}
  .topbar{grid-template-columns:minmax(0,1fr) max-content!important}
}

@media (max-width:780px){
  .app-shell{display:block!important;padding-bottom:calc(var(--mobile-nav-h) + var(--safe-bottom))}
  .app-content{grid-column:auto!important}
  .sidebar{width:min(330px,88vw)!important}
  .sidebar-close{display:grid!important}
  .topbar{height:var(--topbar-h)!important;padding:0 12px!important;grid-template-columns:minmax(0,1fr) max-content!important;gap:7px!important}
  .topbar-center{display:none!important}
  .topbar-actions{display:grid!important;grid-template-columns:42px 42px 52px;padding:3px;gap:2px!important;border-radius:17px}
  .topbar-actions #refresh-button,.topbar-actions #header-favorite{display:none!important}
  .topbar-actions .round-button{width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important}
  .profile-button{width:52px!important;min-width:52px!important;height:42px!important;padding:0 8px!important}
  .location-command strong,.location-command small{max-width:118px!important}
  .location-command-icon{width:38px!important;height:38px!important}
  .pages-wrap{overflow:hidden;padding-top:18px!important}
  .radar-heading{display:flex!important;flex-direction:column!important;align-items:stretch!important}
  .radar-heading-actions{display:grid!important;grid-template-columns:1fr 48px!important;grid-template-areas:"modes modes" "status refresh" "recenter recenter"!important}
  .radar-mode-switch button{min-height:42px!important;font-size:.8rem!important;padding-inline:8px!important}
  .radar-heading-actions .live-status{width:100%;min-width:0;justify-content:center;padding-inline:10px;font-size:.78rem!important}
  #radar-recenter{width:100%!important;min-width:0!important}
  .sun-times{grid-template-columns:1fr 1fr!important}.sun-times>div:nth-child(2){display:none!important}
  .chart-tooltip{min-width:190px}
}

@media (max-width:430px){
  .topbar-actions{grid-template-columns:40px 48px}
  .topbar-actions #share-button{display:none!important}
  .topbar-actions .round-button{width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important}
  .profile-button{width:48px!important;min-width:48px!important;height:40px!important}
  .location-command strong,.location-command small{max-width:102px!important}
}

@media (prefers-reduced-motion:reduce){body[data-weather="rain"] .pages-wrap::after{animation:none!important}}
body.reduce-motion[data-weather="rain"] .pages-wrap::after{animation:none!important}


@media (min-width:781px){
  .app-shell{grid-template-columns:var(--sidebar-expanded) minmax(0,1fr)!important}
  .app-shell>.sidebar{width:var(--sidebar-expanded)!important}
  .app-shell.sidebar-collapsed{grid-template-columns:88px minmax(0,1fr)!important}
  .app-shell.sidebar-collapsed>.sidebar{width:88px!important}
}
.radar-heading{grid-template-columns:minmax(0,1fr) minmax(470px,680px)!important}
.radar-heading-actions{grid-template-columns:minmax(0,1fr) 50px minmax(145px,auto)!important;grid-template-areas:"modes modes modes" "status refresh recenter"!important}
.radar-heading-actions .live-status{min-width:0!important;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#radar-recenter{min-width:145px!important}
@media (max-width:1180px) and (min-width:781px){
  .radar-heading{grid-template-columns:1fr!important}
}
@media (max-width:780px){
  .radar-heading-actions{grid-template-columns:minmax(0,1fr) 48px!important;grid-template-areas:"modes modes" "status refresh" "recenter recenter"!important}
}


.app-shell{transition:none!important}
@media (min-width:781px){
  .app-shell>.sidebar{transition:background .25s ease,border-color .25s ease,padding .22s ease!important}
}
@media (max-width:780px){
  .app-shell>.sidebar{transform:translateX(-105%)!important;transition:transform .24s cubic-bezier(.2,.85,.2,1)!important}
  .app-shell.menu-open>.sidebar{transform:translateX(0)!important}
}


@media (max-width:780px){
  .app-shell>.sidebar{transition:none!important}
  .app-shell.menu-open>.sidebar .nav-link{animation:drawerItemIn .26s both}
  .app-shell.menu-open>.sidebar .nav-link:nth-child(2){animation-delay:.025s}
  .app-shell.menu-open>.sidebar .nav-link:nth-child(3){animation-delay:.05s}
  .app-shell.menu-open>.sidebar .nav-link:nth-child(4){animation-delay:.075s}
  .app-shell.menu-open>.sidebar .nav-link:nth-child(5){animation-delay:.1s}
}
@keyframes drawerItemIn{from{opacity:0;transform:translateX(-8px)}to{opacity:1;transform:none}}


:root{
  --header-control-h:60px;
  --header-control-radius:18px;
  --header-control-gap:10px;
}


.sidebar-close{display:none!important}
@media (min-width:781px){
  .sidebar-brand{padding-right:10px!important}
}
@media (max-width:780px){
  .sidebar-brand{padding-right:8px!important}
}


.pages-wrap>.weather-atmosphere{
  position:fixed!important;
  inset:var(--topbar-h) 0 0 var(--sidebar-current)!important;
  z-index:1!important;
  opacity:.92;
  overflow:hidden;
  transition:left .2s ease,background 1.1s ease,filter 1.1s ease,opacity .6s ease;
}
.pages-wrap>.page{position:relative;z-index:2}
.app-shell.sidebar-collapsed .pages-wrap>.weather-atmosphere{left:88px!important}
.pages-wrap>.weather-atmosphere #weather-fx-canvas{opacity:1}
.pages-wrap>.weather-atmosphere.weather-rain #weather-fx-canvas,
.pages-wrap>.weather-atmosphere.weather-storm #weather-fx-canvas,
.pages-wrap>.weather-atmosphere.weather-snow #weather-fx-canvas{filter:drop-shadow(0 0 5px rgba(91,214,255,.24))}
.pages-wrap>.weather-atmosphere.weather-clear.is-day .atmosphere-sun{opacity:.95}
.pages-wrap>.weather-atmosphere.weather-snow::after{
  opacity:.34;
  background-image:radial-gradient(circle,rgba(245,252,255,.88) 0 2px,transparent 2.4px);
  background-size:54px 54px;
  animation:snowBackdrop 9s linear infinite;
}
.pages-wrap>.weather-atmosphere.weather-cloud .atmosphere-cloud{opacity:.84}
.pages-wrap>.weather-atmosphere.weather-rain .atmosphere-cloud{opacity:.92}
.pages-wrap>.weather-atmosphere.weather-storm .atmosphere-cloud{opacity:1}
@keyframes snowBackdrop{to{background-position:35px 105px}}


.glass-panel,.app-dialog form,.cookie-card{
  background:radial-gradient(circle at 100% 0,rgba(135,91,255,.075),transparent 35%),radial-gradient(circle at 0 100%,rgba(42,209,185,.055),transparent 36%),linear-gradient(145deg,rgba(9,22,35,.86),rgba(9,14,28,.81))!important;
}


.topbar{
  min-height:94px!important;
  height:auto!important;
  padding-block:14px!important;
  grid-template-columns:minmax(310px,1fr) minmax(360px,1.22fr) max-content!important;
  align-items:center!important;
  gap:clamp(14px,1.35vw,26px)!important;
}
.topbar-left,.topbar-center,.topbar-actions{min-height:var(--header-control-h);align-items:center!important}
.topbar-left{display:grid!important;grid-template-columns:var(--header-control-h) minmax(0,1fr);gap:var(--header-control-gap)!important}
.menu-button,
.location-command,
.command-search,
.topbar-actions .round-button,
.profile-button{
  min-height:var(--header-control-h)!important;
  height:var(--header-control-h)!important;
  border-radius:var(--header-control-radius)!important;
}
.menu-button{
  width:var(--header-control-h)!important;
  min-width:var(--header-control-h)!important;
  margin:0!important;
}
.location-command{
  width:100%;
  padding:7px 15px 7px 8px!important;
  border:1px solid rgba(91,205,198,.17)!important;
  background:rgba(36,177,162,.045)!important;
}
.location-command-icon{width:46px!important;height:46px!important;border-radius:15px!important}
.location-command strong{font-size:clamp(.98rem,.18vw + .92rem,1.14rem)!important}
.location-command small{font-size:clamp(.76rem,.12vw + .7rem,.9rem)!important}
.location-command strong,.location-command small{max-width:clamp(175px,17vw,330px)!important}
.command-search{
  min-height:var(--header-control-h)!important;
  padding:0 18px!important;
  border-radius:var(--header-control-radius)!important;
}
.command-search span{font-size:clamp(.9rem,.14vw + .84rem,1.05rem)!important}
.command-search svg{width:23px!important;height:23px!important}
.command-search kbd{font-size:.72rem!important;padding:6px 9px!important}
.topbar-actions{
  justify-self:end;
  display:flex!important;
  min-width:0;
  gap:var(--header-control-gap)!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.topbar-actions .round-button{
  width:var(--header-control-h)!important;
  min-width:var(--header-control-h)!important;
  border:1px solid rgba(132,188,205,.18)!important;
  background:rgba(255,255,255,.038)!important;
  border-radius:var(--header-control-radius)!important;
}
.profile-button{
  width:72px!important;
  min-width:72px!important;
  padding:0 12px!important;
  margin:0!important;
  font-size:.95rem!important;
}


.home-grid{align-items:stretch!important}
.hero-card,.now-panel{align-self:stretch!important;height:100%!important}
.now-panel{display:flex;flex-direction:column}
.now-panel .now-metrics{flex:1;grid-auto-rows:1fr}
.now-metric{height:100%;min-height:0!important}


.hourly-panel{min-width:0}
.hourly-strip{
  display:flex!important;
  grid-auto-flow:unset!important;
  grid-auto-columns:unset!important;
  align-items:stretch;
  gap:14px!important;
  margin-top:22px!important;
  padding:2px 3px 10px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x mandatory;
  overscroll-behavior-inline:contain;
}
.hour-card{
  flex:0 0 clamp(132px,8.4vw,174px)!important;
  width:auto!important;
  min-width:0!important;
  min-height:210px!important;
  height:210px!important;
  padding:17px 13px 14px!important;
  border-radius:20px!important;
  scroll-snap-align:start;
  overflow:hidden;
}
.hour-card .weather-svg{width:58px!important;height:54px!important}
.hour-card-more{min-height:34px;padding:0 14px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:rgba(58,174,217,.085);white-space:nowrap}


.hour-detail-dialog{
  width:min(1180px,calc(100vw - 32px))!important;
  max-width:1180px!important;
  max-height:none!important;
  overflow:visible!important;
  border-radius:28px!important;
}
.hour-detail-dialog form{
  width:100%!important;
  max-width:none!important;
  max-height:none!important;
  overflow:visible!important;
  padding:clamp(20px,2vw,30px)!important;
}
.hour-detail-heading{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:center!important;gap:18px!important;padding-right:44px!important}
.hour-detail-heading>div:first-child{min-width:0}
.hour-detail-heading h2,.hour-detail-heading p{overflow-wrap:anywhere}
.hour-detail-art{position:static!important;max-width:130px;overflow:hidden}
.hour-detail-hero{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(210px,.42fr)!important;
  align-items:center!important;
  gap:18px!important;
  padding:16px 20px!important;
}
.hour-detail-hero>div:first-child{min-width:0;display:flex!important;align-items:baseline!important;flex-wrap:wrap!important;gap:10px 18px!important}
.hour-detail-trend{min-width:0;text-align:right!important}
.hour-detail-trend strong{display:block;white-space:normal!important;overflow-wrap:anywhere}
.hour-detail-grid{
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:12px!important;
}
.hour-detail-metric{
  min-width:0;
  min-height:108px!important;
  padding:15px!important;
  overflow:hidden;
}
.hour-detail-metric small,.hour-detail-metric strong,.hour-detail-metric span{white-space:normal!important;overflow-wrap:anywhere}
.hour-detail-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.hour-detail-actions .button{min-width:0;white-space:normal;text-align:center;line-height:1.25}


dialog.app-dialog{overflow-x:hidden!important}
dialog.app-dialog form{min-width:0;overflow-x:hidden!important}

@media (max-width:1480px) and (min-width:1051px){
  :root{--header-control-h:54px;--header-control-gap:8px;--header-control-radius:16px}
  .topbar{grid-template-columns:minmax(270px,.95fr) minmax(290px,1.08fr) max-content!important;padding-inline:18px!important;gap:12px!important}
  .profile-button{width:64px!important;min-width:64px!important}
  .location-command strong,.location-command small{max-width:205px!important}
  .hour-detail-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important}
}

@media (max-width:1050px) and (min-width:781px){
  :root{--header-control-h:52px;--header-control-gap:7px;--header-control-radius:15px}
  .topbar{grid-template-columns:minmax(255px,1fr) max-content!important;padding-inline:16px!important}
  .topbar-center{display:none!important}
  .profile-button{width:62px!important;min-width:62px!important}
  .home-grid{align-items:start!important}
  .hero-card,.now-panel{height:auto!important}
  .hour-detail-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}

@media (max-width:780px){
  :root{--header-control-h:46px;--header-control-gap:6px;--header-control-radius:14px}
  .pages-wrap>.weather-atmosphere{inset:var(--topbar-h) 0 calc(var(--mobile-nav-h) + var(--safe-bottom)) 0!important}
  .topbar{min-height:72px!important;height:72px!important;padding:0 10px!important;grid-template-columns:minmax(0,1fr) max-content!important;gap:7px!important}
  .topbar-left{grid-template-columns:var(--header-control-h) minmax(0,1fr);gap:6px!important}
  .location-command{padding:4px 8px 4px 5px!important}
  .location-command-icon{width:38px!important;height:38px!important;border-radius:12px!important}
  .location-command strong,.location-command small{max-width:118px!important}
  .topbar-actions{gap:5px!important}
  .topbar-actions #refresh-button,.topbar-actions #header-favorite{display:none!important}
  .topbar-actions .round-button{width:var(--header-control-h)!important;min-width:var(--header-control-h)!important;height:var(--header-control-h)!important;min-height:var(--header-control-h)!important}
  .profile-button{width:54px!important;min-width:54px!important;height:var(--header-control-h)!important}
  .home-grid{align-items:start!important}
  .hero-card,.now-panel{height:auto!important}
  .hourly-strip{gap:11px!important}
  .hour-card{flex-basis:118px!important;min-height:190px!important;height:190px!important;padding:14px 10px 12px!important}
  .hour-card .weather-svg{width:50px!important;height:47px!important}
  .hour-detail-dialog{width:calc(100vw - 18px)!important;border-radius:22px!important}
  .hour-detail-dialog form{padding:18px 15px!important}
  .hour-detail-heading{grid-template-columns:minmax(0,1fr) 80px!important;padding-right:34px!important;gap:10px!important}
  .hour-detail-art{width:80px!important;height:70px!important}
  .hour-detail-art .weather-svg{width:78px!important;height:66px!important}
  .hour-detail-hero{grid-template-columns:1fr!important;gap:8px!important;padding:13px 15px!important}
  .hour-detail-trend{text-align:left!important}
  .hour-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
  .hour-detail-metric{min-height:86px!important;padding:11px!important}
  .hour-detail-actions{gap:8px!important}
}

@media (max-width:430px){
  :root{--header-control-h:42px}
  .topbar-actions #share-button{display:none!important}
  .profile-button{width:48px!important;min-width:48px!important}
  .location-command strong,.location-command small{max-width:96px!important}
  .hour-detail-heading{grid-template-columns:1fr!important;padding-right:30px!important}
  .hour-detail-art{display:none!important}
  .hour-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .hour-detail-actions{grid-template-columns:1fr!important}
}

@media (min-width:1800px){
  :root{--header-control-h:64px;--header-control-gap:12px;--header-control-radius:20px}
  .topbar{min-height:104px!important;grid-template-columns:minmax(360px,1fr) minmax(500px,1.25fr) max-content!important}
  .profile-button{width:78px!important;min-width:78px!important}
  .hero-card,.now-panel{min-height:clamp(560px,29vw,700px)!important}
  .hour-card{flex-basis:clamp(146px,7.3vw,186px)!important;height:224px!important;min-height:224px!important}
}

@media (prefers-reduced-motion:reduce){.pages-wrap>.weather-atmosphere.weather-snow::after{animation:none!important}}
body.reduce-motion .pages-wrap>.weather-atmosphere.weather-snow::after{animation:none!important}


.hour-detail-dialog,.hour-detail-dialog form{overflow-x:visible!important;overflow-y:visible!important}
@media (max-width:780px){
  .hero-visual-wrap{top:78px!important;right:8px!important}
  .hero-visual-wrap .hero-high-low{position:absolute!important;top:104px!important;right:2px!important;margin:0!important;z-index:2}
}
@media (max-width:430px){
  .hour-detail-dialog form{padding:12px 12px 11px!important}
  .hour-detail-heading{gap:3px!important;margin-bottom:7px!important}
  .hour-detail-heading .section-kicker{margin-bottom:3px!important;font-size:.64rem!important}
  .hour-detail-heading h2{margin:2px 0 2px!important;font-size:1.12rem!important;line-height:1.12!important}
  .hour-detail-heading p{font-size:.78rem!important;line-height:1.25!important}
  .hour-detail-hero{margin-top:8px!important;padding:9px 11px!important;border-radius:15px!important}
  .hour-detail-hero>div:first-child strong{font-size:2.35rem!important}
  .hour-detail-hero>div:first-child span{font-size:.88rem!important}
  .hour-detail-trend small{font-size:.64rem!important}
  .hour-detail-trend strong{font-size:.74rem!important}
  .hour-detail-grid{margin-top:8px!important;grid-template-columns:repeat(var(--mobile-nav-columns,3),minmax(0,1fr))!important;gap:6px!important}
  .hour-detail-metric{min-height:74px!important;padding:8px 7px!important;border-radius:13px!important}
  .hour-detail-metric small{font-size:.64rem!important;line-height:1.15!important}
  .hour-detail-metric strong{margin-top:5px!important;font-size:.86rem!important;line-height:1.15!important}
  .hour-detail-metric span{margin-top:4px!important;font-size:.58rem!important;line-height:1.15!important}
  .hour-detail-actions{margin-top:8px!important;grid-template-columns:1fr 1fr!important;gap:6px!important}
  .hour-detail-actions .button{min-height:42px!important;padding:5px 7px!important;font-size:.72rem!important}
}


html,body{overflow-y:auto!important;overscroll-behavior-y:auto}
.app-shell,.app-content,.pages-wrap,.page{overflow:visible!important}
.pages-wrap{min-height:calc(100dvh - var(--topbar-h));padding-bottom:72px!important}
.pages-wrap>.weather-atmosphere{pointer-events:none!important;contain:paint;will-change:background,filter,opacity}
.pages-wrap>.weather-atmosphere #weather-fx-canvas{display:block!important;opacity:1!important;mix-blend-mode:screen;will-change:contents}


.pages-wrap>.weather-atmosphere .atmosphere-cloud{
  background:radial-gradient(ellipse at 50% 52%,rgba(225,242,255,.36),rgba(123,157,188,.15) 48%,rgba(63,91,121,.035) 67%,transparent 74%);
  filter:blur(10px) drop-shadow(0 22px 45px rgba(0,18,36,.22));
}
.pages-wrap>.weather-atmosphere.weather-cloud .atmosphere-cloud{opacity:.96!important}
.pages-wrap>.weather-atmosphere.weather-cloud::after{
  opacity:.52!important;
  background:repeating-linear-gradient(102deg,transparent 0 90px,rgba(194,230,244,.075) 120px,transparent 185px);
  background-size:520px 100%;
  animation:cloudBands 14s linear infinite!important;
}
.pages-wrap>.weather-atmosphere.weather-rain::after,
.pages-wrap>.weather-atmosphere.weather-storm::after{
  opacity:.62!important;
  background:repeating-linear-gradient(108deg,transparent 0 28px,rgba(104,220,239,.18) 30px 32px,transparent 34px 66px);
  background-size:180px 260px;
  animation:weatherRainSheet 1.15s linear infinite!important;
}
.pages-wrap>.weather-atmosphere.weather-snow::after{
  opacity:.72!important;
  background-image:radial-gradient(circle,rgba(248,253,255,.96) 0 2px,transparent 2.7px),radial-gradient(circle,rgba(205,238,255,.76) 0 1.4px,transparent 2px);
  background-position:0 0,28px 26px;
  background-size:58px 58px,76px 76px;
  animation:weatherSnowSheet 6.5s linear infinite!important;
}
.pages-wrap>.weather-atmosphere.weather-clear.is-day::after{
  opacity:.38!important;
  background:conic-gradient(from 200deg at 82% 12%,transparent 0 28deg,rgba(255,224,135,.13) 34deg,transparent 41deg 66deg,rgba(255,233,168,.09) 72deg,transparent 80deg);
  animation:sunRaysTurn 26s linear infinite!important;
}
.pages-wrap>.weather-atmosphere.weather-fog::after{
  opacity:.68!important;
  background:repeating-linear-gradient(0deg,transparent 0 58px,rgba(221,239,246,.08) 74px,transparent 96px);
  background-size:100% 260px;
  animation:fogRoll 13s ease-in-out infinite alternate!important;
}
@keyframes cloudBands{from{background-position:-520px 0}to{background-position:520px 0}}
@keyframes weatherRainSheet{from{background-position:0 -260px}to{background-position:-72px 260px}}
@keyframes weatherSnowSheet{to{background-position:42px 116px,-34px 148px}}
@keyframes sunRaysTurn{to{transform:rotate(360deg) scale(1.1)}}
@keyframes fogRoll{to{background-position:100px 92px;transform:translateX(3%)}}


@media (prefers-reduced-motion:reduce){
  body:not(.reduce-motion) .pages-wrap>.weather-atmosphere::before{animation:atmosphereDrift 18s ease-in-out infinite alternate!important}
  body:not(.reduce-motion) .pages-wrap>.weather-atmosphere.weather-cloud::after{animation:cloudBands 14s linear infinite!important}
  body:not(.reduce-motion) .pages-wrap>.weather-atmosphere.weather-rain::after,
  body:not(.reduce-motion) .pages-wrap>.weather-atmosphere.weather-storm::after{animation:weatherRainSheet 1.15s linear infinite!important}
  body:not(.reduce-motion) .pages-wrap>.weather-atmosphere.weather-snow::after{animation:weatherSnowSheet 6.5s linear infinite!important}
  body:not(.reduce-motion) .pages-wrap>.weather-atmosphere.weather-clear.is-day::after{animation:sunRaysTurn 26s linear infinite!important}
  body:not(.reduce-motion) .pages-wrap>.weather-atmosphere .atmosphere-sun{animation:sunFloat 9s ease-in-out infinite!important}
  body:not(.reduce-motion) .pages-wrap>.weather-atmosphere .atmosphere-moon{animation:moonFloat 11s ease-in-out infinite!important}
  body:not(.reduce-motion) .pages-wrap>.weather-atmosphere .cloud-one{animation:cloudCruiseOne 24s linear infinite!important}
  body:not(.reduce-motion) .pages-wrap>.weather-atmosphere .cloud-two{animation:cloudCruiseTwo 31s linear infinite!important}
}
body.reduce-motion .pages-wrap>.weather-atmosphere::after,
body.reduce-motion .pages-wrap>.weather-atmosphere .atmosphere-sun,
body.reduce-motion .pages-wrap>.weather-atmosphere .atmosphere-moon,
body.reduce-motion .pages-wrap>.weather-atmosphere .atmosphere-cloud{animation:none!important}


.alerts-page-heading{margin-bottom:24px!important}
.alerts-dashboard{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,420px);gap:22px;align-items:start}
.alerts-main-column{display:grid;gap:18px;min-width:0}
.alerts-summary-card{position:relative;display:grid;grid-template-columns:76px minmax(0,1fr) auto;grid-template-areas:"icon copy action" "icon stats stats";gap:18px 22px;align-items:center;padding:26px;overflow:hidden}
.alerts-summary-card::before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:#51e7a5;box-shadow:0 0 25px currentColor}
.alerts-summary-card.watch::before{background:#ffd166}.alerts-summary-card.warning::before{background:#ff9a62}.alerts-summary-card.danger::before{background:#ff6178}
.alerts-summary-card::after{content:"";position:absolute;right:-80px;top:-110px;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle,rgba(72,224,198,.13),transparent 68%);pointer-events:none}
.alerts-summary-icon{grid-area:icon;position:relative;width:76px;height:76px;display:grid;place-items:center;border-radius:24px;color:#5be5ae;background:rgba(67,225,158,.1);border:1px solid rgba(85,233,170,.22);box-shadow:inset 0 1px rgba(255,255,255,.08),0 16px 40px rgba(26,126,99,.16)}
.alerts-summary-card.watch .alerts-summary-icon{color:#ffd166;background:rgba(255,209,102,.1);border-color:rgba(255,209,102,.24)}
.alerts-summary-card.warning .alerts-summary-icon{color:#ff9a62;background:rgba(255,154,98,.1);border-color:rgba(255,154,98,.24)}
.alerts-summary-card.danger .alerts-summary-icon{color:#ff7187;background:rgba(255,97,120,.1);border-color:rgba(255,97,120,.25)}
.alerts-summary-icon svg{width:34px;height:34px}.alerts-summary-icon span{position:absolute;right:10px;bottom:10px;width:10px;height:10px;border-radius:50%;background:currentColor;box-shadow:0 0 16px currentColor;animation:alertPulse 1.8s ease-in-out infinite}
@keyframes alertPulse{50%{transform:scale(.62);opacity:.45}}
.alerts-summary-copy{grid-area:copy;min-width:0}.alerts-summary-copy h2{margin:0;font:800 clamp(1.35rem,1.2vw,1.8rem)/1.15 Manrope,sans-serif;letter-spacing:-.035em}.alerts-summary-copy p{max-width:780px;margin:8px 0 0;color:var(--muted);font-size:.92rem;line-height:1.6}
.alerts-summary-action{grid-area:action;min-width:156px;white-space:nowrap}
.alerts-summary-stats{grid-area:stats;display:grid;grid-template-columns:repeat(3,minmax(120px,1fr));gap:10px}
.alerts-summary-stats>div{min-height:72px;padding:13px 15px;display:flex;flex-direction:column;justify-content:center;border:1px solid rgba(124,204,197,.13);border-radius:17px;background:rgba(255,255,255,.027)}
.alerts-summary-stats small{color:#7690aa;font-size:.72rem}.alerts-summary-stats strong{margin-top:5px;font-size:1.02rem}
.alert-monitor-panel,.alert-events-panel{padding:24px}
.alerts-panel-title{align-items:flex-start!important;gap:16px}.alerts-panel-title p,.thresholds-heading p{margin:7px 0 0;color:#7890aa;font-size:.84rem;line-height:1.55}.alerts-panel-title .soft-badge{margin-top:2px}
.alert-days-grid{margin-top:20px;display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px}
.alert-day-card{position:relative;min-width:0;padding:16px;border:1px solid rgba(119,201,198,.14);border-radius:19px;background:linear-gradient(145deg,rgba(13,31,43,.78),rgba(12,17,31,.82));overflow:hidden;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.alert-day-card:hover,.alert-day-card:focus-visible{transform:translateY(-3px);border-color:rgba(99,225,206,.34);box-shadow:0 18px 40px rgba(0,0,0,.22)}
.alert-day-card.watch{border-color:rgba(255,209,102,.22)}.alert-day-card.warning{border-color:rgba(255,154,98,.25)}.alert-day-card.danger{border-color:rgba(255,97,120,.28)}
.alert-day-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.alert-day-head span strong,.alert-day-head span small{display:block}.alert-day-head span strong{font-size:.95rem}.alert-day-head span small{margin-top:3px;color:#6f87a0;font-size:.7rem}.alert-day-head em{padding:5px 8px;border-radius:999px;background:rgba(85,231,163,.08);color:#63e7ad;font-size:.66rem;font-style:normal;font-weight:800;white-space:nowrap}.alert-day-card.watch .alert-day-head em{background:rgba(255,209,102,.09);color:#ffd166}.alert-day-card.warning .alert-day-head em{background:rgba(255,154,98,.1);color:#ffab78}.alert-day-card.danger .alert-day-head em{background:rgba(255,97,120,.1);color:#ff7b90}
.alert-day-weather{margin:12px 0;display:flex;align-items:center;justify-content:space-between;gap:8px}.alert-day-art{width:58px;height:48px;display:grid;place-items:center}.alert-day-art .weather-svg{width:58px;height:48px}.alert-day-weather>div{text-align:right}.alert-day-weather>div strong,.alert-day-weather>div small{display:block}.alert-day-weather>div strong{font-size:1.35rem}.alert-day-weather>div small{margin-top:2px;color:#7590a9;font-size:.68rem}
.alert-day-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.alert-day-metrics span{min-width:0;padding:8px 5px;text-align:center;border-radius:12px;background:rgba(255,255,255,.026)}.alert-day-metrics svg{width:15px;height:15px;margin:0 auto 4px;color:#55d8d0}.alert-day-metrics b,.alert-day-metrics small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.alert-day-metrics b{font-size:.76rem}.alert-day-metrics small{margin-top:2px;color:#6f879f;font-size:.58rem}
.alert-risk-track{height:4px;margin-top:12px;overflow:hidden;border-radius:99px;background:rgba(255,255,255,.055)}.alert-risk-track i{display:block;width:var(--risk);height:100%;border-radius:inherit;background:linear-gradient(90deg,#49d9c3,#6ee5ad);box-shadow:0 0 14px rgba(73,217,195,.45)}.alert-day-card.watch .alert-risk-track i{background:linear-gradient(90deg,#f1c65e,#ffd986)}.alert-day-card.warning .alert-risk-track i{background:linear-gradient(90deg,#ff9362,#ffc06f)}.alert-day-card.danger .alert-risk-track i{background:linear-gradient(90deg,#ff6178,#ff9a62)}
.alert-events-panel .alerts-list{margin-top:18px}.alerts-empty-state{min-height:118px;padding:20px;display:flex;align-items:center;gap:16px;border:1px dashed rgba(85,231,163,.23);border-radius:19px;background:rgba(70,220,159,.035)}.alerts-empty-state>span{width:52px;height:52px;display:grid;place-items:center;flex:0 0 auto;border-radius:17px;background:rgba(74,230,164,.09);color:#59e7aa}.alerts-empty-state svg{width:26px;height:26px}.alerts-empty-state strong{font-size:1rem}.alerts-empty-state p{margin:5px 0 0;color:#7d95ad;font-size:.82rem;line-height:1.55}
.alert-card{min-height:104px!important;padding:17px 18px!important}.alert-card h3{font-size:.92rem!important}.alert-card p{font-size:.78rem!important}.alert-when{font-size:.7rem!important}
.thresholds-panel{position:static!important;top:auto!important;padding:24px;min-width:0}.thresholds-heading{align-items:flex-start!important}.threshold-live-dot{min-height:30px;padding:0 10px;display:inline-flex;align-items:center;gap:7px;border-radius:999px;background:rgba(75,229,166,.08);border:1px solid rgba(75,229,166,.18);color:#63e7ad;font-size:.7rem;font-weight:800;white-space:nowrap}.threshold-live-dot i{width:8px;height:8px;border-radius:50%;background:currentColor;box-shadow:0 0 12px currentColor;animation:alertPulse 1.8s ease-in-out infinite}.threshold-row{padding:22px 0!important}.threshold-row strong{font-size:.92rem!important}.threshold-row small{font-size:.74rem!important;line-height:1.4}.threshold-row output{font-size:.84rem!important}.threshold-row input{margin-top:4px}.threshold-footer{padding-top:18px;border-top:1px solid rgba(255,255,255,.06);display:grid;gap:12px}.threshold-footer .button{width:100%}.threshold-footer small{text-align:center;color:#607991;font-size:.7rem}.notifications-enabled{background:linear-gradient(135deg,#2bcf9a,#159d87)!important;box-shadow:0 14px 34px rgba(24,176,137,.25)!important}

@media (min-width:2400px){
  .alerts-dashboard{grid-template-columns:minmax(0,1fr) minmax(400px,470px);gap:28px}
  .alert-days-grid{grid-template-columns:repeat(7,minmax(0,1fr))}
  .alerts-summary-card{padding:30px}.alert-monitor-panel,.alert-events-panel,.thresholds-panel{padding:28px}
}
@media (max-width:1450px){
  .alerts-dashboard{grid-template-columns:minmax(0,1fr) minmax(320px,370px)}
  .alert-days-grid{grid-template-columns:repeat(3,minmax(150px,1fr))}
  .alerts-summary-card{grid-template-columns:68px minmax(0,1fr);grid-template-areas:"icon copy" "stats stats" "action action"}.alerts-summary-icon{width:68px;height:68px}.alerts-summary-action{width:100%}
}
@media (max-width:1100px){
  .alerts-dashboard{grid-template-columns:1fr}.thresholds-panel{max-width:none}.alert-days-grid{grid-template-columns:repeat(4,minmax(145px,1fr))}
}
@media (max-width:780px){
  .pages-wrap{overflow:visible!important;padding-bottom:calc(var(--mobile-nav-h) + var(--safe-bottom) + 34px)!important}
  .alerts-page-heading .button{width:100%!important}.alerts-dashboard{gap:14px}.alerts-main-column{gap:14px}
  .alerts-summary-card{grid-template-columns:56px minmax(0,1fr);grid-template-areas:"icon copy" "stats stats" "action action";padding:18px;gap:14px}.alerts-summary-icon{width:56px;height:56px;border-radius:18px}.alerts-summary-icon svg{width:27px;height:27px}.alerts-summary-copy h2{font-size:1.18rem}.alerts-summary-copy p{font-size:.8rem}.alerts-summary-stats{grid-template-columns:1fr}.alerts-summary-stats>div{min-height:58px}.alert-monitor-panel,.alert-events-panel,.thresholds-panel{padding:18px}.alerts-panel-title,.thresholds-heading{display:flex!important;flex-direction:column!important}.alerts-panel-title .soft-badge,.threshold-live-dot{align-self:flex-start}.alert-days-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:7px}.alert-day-card{min-width:220px;scroll-snap-align:start}.alert-card{grid-template-columns:44px minmax(0,1fr)!important}.alert-when{grid-column:2!important;justify-self:start}.threshold-row{padding:19px 0!important}
}
@media (max-width:430px){
  .alert-day-card{min-width:205px}.alerts-summary-card{grid-template-columns:1fr;grid-template-areas:"icon" "copy" "stats" "action"}.alerts-summary-icon{width:52px;height:52px}.alerts-empty-state{align-items:flex-start}.alerts-summary-stats{grid-template-columns:1fr}.threshold-row{grid-template-columns:1fr auto!important}
}





.global-loader{
  inset:calc(14px + var(--safe-top)) auto auto 50%!important;
  width:min(520px,calc(100vw - 28px))!important;
  height:auto!important;
  padding:0!important;
  display:block!important;
  background:transparent!important;
  backdrop-filter:none!important;
  pointer-events:none!important;
  opacity:0!important;
  visibility:hidden!important;
  transform:translate(-50%,-18px) scale(.98)!important;
  transition:opacity .18s ease,transform .22s ease,visibility .18s ease!important;
}
.global-loader.active{opacity:1!important;visibility:visible!important;transform:translate(-50%,0) scale(1)!important}
.loader-card{
  width:100%!important;
  min-height:78px!important;
  padding:12px 16px!important;
  display:grid!important;
  grid-template-columns:58px minmax(0,1fr)!important;
  grid-template-rows:auto auto auto!important;
  column-gap:14px!important;
  align-items:center!important;
  text-align:left!important;
  border-color:rgba(77,225,197,.34)!important;
  border-radius:20px!important;
  background:linear-gradient(135deg,rgba(6,27,43,.97),rgba(24,17,48,.96))!important;
  box-shadow:0 20px 55px rgba(0,0,0,.42),inset 0 1px rgba(255,255,255,.08)!important;
  backdrop-filter:blur(22px) saturate(150%)!important;
}
.loader-card .weather-loader{grid-row:1/4;width:58px;height:48px;margin:0!important;transform:scale(.72);transform-origin:center}
.loader-card strong{grid-column:2;margin:0!important;font-size:1rem!important}
.loader-card small{grid-column:2;margin:3px 0 7px!important;font-size:.78rem!important}
.loader-progress{grid-column:2;margin:0!important}
body.operation-loading{cursor:progress}


.dialog-toast-region{
  position:fixed!important;
  z-index:2147483647!important;
  top:calc(18px + var(--safe-top))!important;
  right:18px!important;
  bottom:auto!important;
  width:min(390px,calc(100vw - 28px))!important;
  pointer-events:none!important;
}
.dialog-toast-region .toast{pointer-events:auto}
@media(max-width:600px){.dialog-toast-region{top:10px!important;right:10px!important;width:calc(100vw - 20px)!important}}


.button,.round-button,.radar-step-button,.radar-play-button,.radar-mode-switch button{
  border-color:rgba(178,205,230,.26)!important;
  color:#f4f8ff!important;
  text-shadow:0 1px 1px rgba(0,0,0,.28);
}
.outline-button,.ghost-button,.round-button,.radar-step-button{
  background:linear-gradient(145deg,rgba(20,43,61,.93),rgba(20,24,46,.91))!important;
  box-shadow:inset 0 1px rgba(255,255,255,.06),0 8px 22px rgba(0,0,0,.18)!important;
}
.outline-button:hover,.ghost-button:hover,.round-button:hover,.radar-step-button:hover{
  border-color:rgba(83,224,198,.55)!important;
  background:linear-gradient(145deg,rgba(23,70,75,.96),rgba(42,28,74,.95))!important;
  color:#fff!important;
}
.primary-button,.radar-play-button{
  background:linear-gradient(135deg,#1cc9aa 0%,#4d8ef7 48%,#8b65ed 100%)!important;
  box-shadow:0 13px 30px rgba(34,115,193,.3),inset 0 1px rgba(255,255,255,.24)!important;
}
.radar-mode-switch{background:rgba(4,17,31,.78)!important;border-color:rgba(175,202,231,.26)!important}
.radar-mode-switch button:not(.active){background:rgba(255,255,255,.055)!important;color:#c8d7ea!important}
.radar-mode-switch button.active{background:linear-gradient(135deg,rgba(28,201,170,.36),rgba(91,92,230,.4))!important;border:1px solid rgba(101,229,211,.36)!important;box-shadow:0 8px 25px rgba(23,113,149,.24),inset 0 1px rgba(255,255,255,.12)!important}
.live-status{background:rgba(7,31,42,.92)!important;border-color:rgba(72,232,179,.42)!important;color:#96ffd0!important;box-shadow:inset 0 1px rgba(255,255,255,.05)}
.button:disabled,.round-button:disabled{opacity:.55!important;filter:saturate(.55);cursor:not-allowed;transform:none!important}


.notification-dialog form{width:min(760px,calc(100vw - 28px))!important;max-width:760px!important;padding:28px!important;overflow:visible!important}
.notification-dialog-head{display:grid;grid-template-columns:58px minmax(0,1fr);align-items:center;gap:16px;padding-right:42px}
.notification-dialog-head h2{margin:3px 0 6px!important}.notification-dialog-head p{margin:0!important}
.notification-hero-icon{margin:0!important;background:linear-gradient(145deg,rgba(28,201,170,.18),rgba(137,91,238,.18))!important;color:#68e6cb!important}
.notification-status-grid{margin-top:20px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.notification-status-grid article{min-width:0;min-height:96px;padding:14px;border:1px solid rgba(155,190,223,.18);border-radius:16px;background:rgba(255,255,255,.035);position:relative;overflow:hidden}
.notification-status-grid article::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:#64748b}
.notification-status-grid article.ok::before{background:#41dfa2}.notification-status-grid article.warning::before{background:#f4bf55}.notification-status-grid article.error::before{background:#ff6d78}
.notification-status-grid small,.notification-status-grid strong,.notification-status-grid span{display:block;overflow-wrap:anywhere}
.notification-status-grid small{font-size:.68rem;color:#7e94ac;text-transform:uppercase;letter-spacing:.09em;font-weight:800}
.notification-status-grid strong{margin-top:7px;font-size:.96rem}.notification-status-grid span{margin-top:5px;color:#8fa3b8;font-size:.72rem;line-height:1.35}
.notification-platform-guide{margin-top:12px;padding:13px 15px;display:grid;grid-template-columns:36px minmax(0,1fr);gap:11px;align-items:center;border:1px solid rgba(244,191,85,.25);border-radius:15px;background:rgba(244,170,52,.07)}
.notification-platform-guide[hidden]{display:none!important}.notification-platform-guide>svg{width:26px;height:26px;color:#ffc867}.notification-platform-guide strong{font-size:.88rem}.notification-platform-guide p{margin:3px 0 0!important;font-size:.76rem!important;line-height:1.4}
.notification-preferences{margin-top:12px;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.notification-pref{min-width:0;min-height:76px;padding:12px 13px;display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid rgba(151,190,224,.16);border-radius:16px;background:rgba(255,255,255,.03);cursor:pointer}
.notification-pref>span{min-width:0;display:flex;align-items:center;gap:10px}.notification-pref svg{width:22px;height:22px;flex:0 0 auto;color:#55d8c3}.notification-pref strong,.notification-pref small{display:block}.notification-pref strong{font-size:.85rem}.notification-pref small{margin-top:3px;color:#8197ae;font-size:.71rem;line-height:1.35}
.notification-pref input{position:absolute;opacity:0;pointer-events:none}.notification-pref>i{width:42px;height:24px;flex:0 0 auto;border-radius:999px;background:#25364a;position:relative;transition:.2s}.notification-pref>i::after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#afbdd0;transition:.2s}.notification-pref input:checked+i{background:linear-gradient(90deg,#20c8a7,#6d74ed)}.notification-pref input:checked+i::after{left:21px;background:#fff}
.notification-dialog-actions{margin-top:16px;display:flex;justify-content:flex-end;flex-wrap:wrap;gap:10px}.notification-dialog-actions .button{min-height:48px;padding-inline:17px}
.notification-scope-note{margin:14px 0 0!important;padding-top:13px;border-top:1px solid rgba(157,190,223,.13);display:grid;grid-template-columns:20px minmax(0,1fr);gap:9px;color:#788fa8!important;font-size:.7rem!important;line-height:1.45}.notification-scope-note svg{width:18px;height:18px;color:#66d9c3}
#notification-button.notifications-enabled{background:linear-gradient(135deg,#19b88f,#4d74df)!important}
#notification-button.notifications-blocked{background:linear-gradient(135deg,#a14c54,#7b4f73)!important}

@media(max-width:760px){
  .notification-dialog form{padding:22px 18px!important}
  .notification-status-grid{grid-template-columns:1fr 1fr}
  .notification-preferences{grid-template-columns:1fr}
  .notification-dialog-actions{display:grid;grid-template-columns:1fr 1fr}.notification-dialog-actions #notification-primary{grid-column:1/-1}
}
@media(max-width:430px){
  .notification-dialog-head{grid-template-columns:46px minmax(0,1fr);gap:11px;padding-right:36px}
  .notification-status-grid article{min-height:86px;padding:11px}.notification-status-grid span{font-size:.66rem}
  .notification-dialog-actions{grid-template-columns:1fr}.notification-dialog-actions #notification-primary{grid-column:auto}
  .notification-dialog-actions .button{width:100%}
  .notification-scope-note{font-size:.65rem!important}
}


dialog.app-dialog[open]{overflow:visible!important}
dialog.app-dialog[open]>form{overflow:hidden!important}
.notification-dialog{width:min(790px,calc(100vw - 28px))!important;max-height:calc(100dvh - 28px)!important}
.notification-dialog>form{width:100%!important;max-width:none!important}
@media(max-width:760px) and (max-height:760px){
  .notification-dialog>form{padding:16px 14px!important}
  .notification-dialog-head{grid-template-columns:40px minmax(0,1fr);gap:9px}
  .notification-hero-icon{width:40px!important;height:40px!important;border-radius:13px!important}
  .notification-hero-icon svg{width:21px!important;height:21px!important}
  .notification-dialog-head h2{font-size:1.28rem!important;line-height:1.05!important}
  .notification-dialog-head p{font-size:.68rem!important}
  .notification-status-grid{margin-top:12px;gap:7px}
  .notification-status-grid article{min-height:69px;padding:9px 10px}
  .notification-status-grid small{font-size:.58rem}.notification-status-grid strong{margin-top:4px;font-size:.82rem}.notification-status-grid span{margin-top:2px;font-size:.6rem;line-height:1.2}
  .notification-preferences{margin-top:8px;gap:7px}
  .notification-pref{min-height:56px;padding:8px 10px}.notification-pref strong{font-size:.75rem}.notification-pref small{font-size:.61rem}.notification-pref svg{width:18px;height:18px}
  .notification-dialog-actions{margin-top:9px;gap:7px}.notification-dialog-actions .button{min-height:41px!important}
  .notification-scope-note{margin-top:8px!important;padding-top:8px;font-size:.58rem!important;line-height:1.25}
}
@media(max-width:760px){
  .notification-dialog.needs-install #notification-support-card,
  .notification-dialog.needs-install #notification-delivery-card,
  .notification-dialog.needs-install .notification-preferences,
  .notification-dialog.needs-install #notification-test,
  .notification-dialog.needs-install #notification-primary,
  .notification-dialog.needs-install .notification-scope-note{display:none!important}
  .notification-dialog.needs-install .notification-status-grid{grid-template-columns:1fr 1fr!important}
  .notification-dialog.needs-install .notification-dialog-actions{display:grid!important;grid-template-columns:1fr!important}
  .notification-dialog.needs-install #notification-install{display:flex!important;width:100%;justify-content:center}
}




.auth-secondary-grid .light-button,
.auth-secondary-grid .light-button:hover,
.auth-secondary-grid .light-button:focus-visible{
  color:#0b2d59!important;
  text-shadow:none!important;
  background:linear-gradient(180deg,#ffffff 0%,#e7f1ff 100%)!important;
  border-color:rgba(255,255,255,.82)!important;
  box-shadow:0 12px 28px rgba(0,13,39,.24),inset 0 1px rgba(255,255,255,.94)!important;
}
.auth-secondary-grid .light-button svg{color:#0b3a76!important;stroke:currentColor!important}
.auth-secondary-grid .light-button span{color:#0b2d59!important;opacity:1!important}


dialog.app-dialog{
  overflow:visible!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
dialog.app-dialog>form{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  border:1px solid rgba(104,202,194,.24)!important;
  border-radius:27px!important;
  background:radial-gradient(circle at 100% 0,rgba(128,90,242,.12),transparent 38%),linear-gradient(150deg,rgba(8,29,47,.98),rgba(10,17,35,.98))!important;
  box-shadow:0 38px 100px rgba(0,0,0,.58),inset 0 1px rgba(255,255,255,.07)!important;
  overflow:visible!important;
  isolation:isolate;
}
dialog.app-dialog::backdrop{background:rgba(1,7,16,.72)!important;backdrop-filter:blur(16px) saturate(125%)}
.dialog-close{z-index:20!important}

body[data-theme="light"] dialog.app-dialog>form{
  color:#102d52!important;
  border-color:rgba(27,104,166,.2)!important;
  background:radial-gradient(circle at 100% 0,rgba(106,85,229,.09),transparent 38%),linear-gradient(150deg,#ffffff,#edf5fb)!important;
  box-shadow:0 30px 80px rgba(24,63,105,.24),inset 0 1px rgba(255,255,255,.94)!important;
}
body[data-theme="light"] .app-dialog h2,
body[data-theme="light"] .app-dialog strong{color:#0b2f5b!important}
body[data-theme="light"] .app-dialog p,
body[data-theme="light"] .app-dialog small,
body[data-theme="light"] .dialog-link{color:#587392!important}
body[data-theme="light"] .dialog-close{color:#3d5878!important;background:rgba(18,66,117,.05)!important;border-color:rgba(18,66,117,.13)!important}


.auth-dialog{width:min(560px,calc(100vw - 30px))!important}
.auth-dialog>form{padding:36px!important}
.auth-step{display:none;animation:authStepIn .24s ease both}
.auth-step.active{display:block}
.auth-step[hidden]{display:none!important}
@keyframes authStepIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.field-label{font-size:.82rem!important;color:#c6d6e8!important}
.field-label input{
  height:54px!important;
  margin-top:8px!important;
  padding:0 16px!important;
  border:1px solid rgba(131,190,223,.24)!important;
  border-radius:15px!important;
  background:rgba(255,255,255,.045)!important;
  color:#f6fbff!important;
  font-size:1rem!important;
  box-shadow:inset 0 1px rgba(255,255,255,.03)!important;
}
.field-label input::placeholder{color:#7189a3!important}
.field-label input:focus{border-color:#4edac8!important;box-shadow:0 0 0 4px rgba(56,205,184,.12)!important}
.field-label input.is-invalid{border-color:#ff6e7a!important;background:rgba(255,76,91,.07)!important;box-shadow:0 0 0 4px rgba(255,76,91,.09)!important}
.field-error{display:block;min-height:20px;margin:6px 2px 0;color:#ff929b;font-size:.78rem;font-weight:700;line-height:1.35}
.auth-smtp-status{font-size:.78rem!important;margin:16px 0!important;padding:13px 14px!important}
.auth-smtp-status.warning{border-color:rgba(255,183,73,.3)!important;background:rgba(255,170,50,.08)!important;color:#ffd08c!important}
.auth-smtp-status code,.settings-backend-note code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.86em}
.otp-sent-note{margin:15px 0 18px;padding:13px 14px;display:flex;align-items:center;gap:11px;border:1px solid rgba(69,229,179,.24);border-radius:14px;background:rgba(40,204,155,.075);color:#bfeedd;font-size:.83rem;line-height:1.4}
.otp-sent-note svg{width:21px;height:21px;flex:0 0 auto;color:#52e0bd}
.otp-actions{margin:8px 0 17px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.text-button{padding:7px 0;background:transparent;color:#5ecde8;cursor:pointer;font-size:.8rem;font-weight:800}
.text-button:hover{color:#8ee9df}.text-button:disabled{color:#617386!important;opacity:.8!important;cursor:not-allowed!important}
.auth-dialog .full-button{min-height:54px!important;font-size:.92rem!important}


.settings-dialog{width:min(620px,calc(100vw - 30px))!important}
.settings-dialog>form{padding:36px!important}
.settings-list{border-color:rgba(150,190,220,.14)!important}
.setting-row{min-height:84px!important;padding:13px 0!important;gap:20px!important}
.setting-row>span{min-width:0;flex:1}
.setting-row strong{font-size:.95rem!important}
.setting-row small{font-size:.78rem!important;line-height:1.4!important}
.settings-backend-note{margin-top:18px;padding:14px 15px;display:grid;grid-template-columns:24px minmax(0,1fr);gap:11px;align-items:center;border:1px solid rgba(75,207,188,.18);border-radius:15px;background:rgba(45,190,160,.055)}
.settings-backend-note>svg{width:21px;height:21px;color:#56dac1}.settings-backend-note strong,.settings-backend-note small{display:block}.settings-backend-note strong{font-size:.84rem}.settings-backend-note small{margin-top:3px;color:#7f98ad;font-size:.72rem}
body[data-theme="light"] .settings-backend-note{background:rgba(24,145,122,.055);border-color:rgba(24,145,122,.18)}


.meteonexa-choices{width:min(250px,48%);margin:0!important;flex:0 0 auto;position:relative;z-index:8}
.meteonexa-choices.is-open{z-index:80}
.meteonexa-choices .choices__inner{
  min-height:48px!important;
  padding:0 42px 0 15px!important;
  display:flex!important;
  align-items:center!important;
  border:1px solid rgba(112,194,217,.24)!important;
  border-radius:14px!important;
  background:linear-gradient(145deg,rgba(14,44,62,.96),rgba(18,25,50,.96))!important;
  color:#f3f8ff!important;
  font-size:.88rem!important;
  box-shadow:inset 0 1px rgba(255,255,255,.05)!important;
}
.meteonexa-choices .choices__list--single{padding:0!important}
.meteonexa-choices[data-type*=select-one]::after{right:16px!important;margin-top:-3px!important;border-width:6px 5px 0!important;border-color:#69d7c7 transparent transparent!important}
.meteonexa-choices.is-open[data-type*=select-one]::after{margin-top:-4px!important;border-width:0 5px 6px!important;border-color:transparent transparent #69d7c7!important}
.meteonexa-choices .choices__list--dropdown,
.meteonexa-choices .choices__list[aria-expanded]{
  margin-top:7px!important;
  overflow:hidden!important;
  border:1px solid rgba(105,202,194,.28)!important;
  border-radius:14px!important;
  background:#0c1c2c!important;
  box-shadow:0 20px 45px rgba(0,0,0,.38)!important;
  color:#eaf4ff!important;
  z-index:100!important;
}
.meteonexa-choices .choices__item--choice{padding:13px 15px!important;font-size:.84rem!important}
.meteonexa-choices .choices__item--choice.is-highlighted{background:linear-gradient(90deg,rgba(41,207,177,.18),rgba(128,88,235,.16))!important;color:#fff!important}
body[data-theme="light"] .meteonexa-choices .choices__inner{background:linear-gradient(145deg,#f8fbff,#e9f3fb)!important;color:#11375f!important;border-color:rgba(24,105,167,.22)!important}
body[data-theme="light"] .meteonexa-choices .choices__list--dropdown,
body[data-theme="light"] .meteonexa-choices .choices__list[aria-expanded]{background:#fff!important;color:#153a61!important;border-color:rgba(24,105,167,.2)!important;box-shadow:0 18px 38px rgba(24,63,105,.22)!important}
body[data-theme="light"] .meteonexa-choices .choices__item--choice.is-highlighted{background:linear-gradient(90deg,rgba(42,194,169,.13),rgba(110,85,220,.1))!important;color:#0b2f5b!important}
.choices-unavailable .enhanced-select{display:block!important;min-width:180px;height:48px;padding:0 14px;border:1px solid rgba(112,194,217,.24);border-radius:14px;background:#0c2037;color:#fff}


#page-favorites .page-heading,
#page-favorites .empty-state,
#page-favorites .favorite-card{position:relative;z-index:2}
#page-favorites .page-heading{padding:24px 26px;border:1px solid rgba(99,205,193,.15);border-radius:24px;background:linear-gradient(145deg,rgba(6,25,43,.9),rgba(12,17,35,.86));box-shadow:0 18px 42px rgba(0,0,0,.2)}
#page-favorites .page-heading p{color:#a8bdd2!important}
#page-favorites .empty-state{min-height:360px;border-color:rgba(96,214,198,.26)!important;background:radial-gradient(circle at 50% 0,rgba(112,86,231,.12),transparent 44%),linear-gradient(145deg,rgba(7,28,47,.92),rgba(9,18,37,.94))!important;backdrop-filter:blur(18px)}
#page-favorites .empty-state h2{color:#f5f9ff!important}
#page-favorites .empty-state p{max-width:520px;color:#a7bad0!important;font-size:.9rem!important;line-height:1.55!important}
body[data-theme="light"] #page-favorites .page-heading,
body[data-theme="light"] #page-favorites .empty-state{background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(236,246,252,.94))!important;border-color:rgba(31,111,170,.16)!important;box-shadow:0 18px 42px rgba(24,63,105,.12)!important}
body[data-theme="light"] #page-favorites .empty-state h2{color:#0d315b!important}
body[data-theme="light"] #page-favorites .page-heading p,
body[data-theme="light"] #page-favorites .empty-state p{color:#55718f!important}


body[data-theme="light"] .field-label{color:#244c73!important}
body[data-theme="light"] .field-label input{background:#f8fbff!important;color:#11385f!important;border-color:rgba(25,105,168,.2)!important}
body[data-theme="light"] .field-label input::placeholder{color:#8096ad!important}
body[data-theme="light"] .info-note{color:#476a89!important;background:rgba(22,112,169,.05)!important;border-color:rgba(22,112,169,.14)!important}
body[data-theme="light"] .setting-row{border-color:rgba(18,80,137,.12)!important}
body[data-theme="light"] .toggle-setting>i{background:#c6d7e7!important}
body[data-theme="light"] .toggle-setting input:checked+i{background:linear-gradient(90deg,#25bea6,#6d73e9)!important}

@media(max-width:600px){
  .auth-dialog>form,.settings-dialog>form{padding:28px 20px!important}
  .setting-row{align-items:flex-start!important;flex-direction:column!important;gap:10px!important}
  .meteonexa-choices{width:100%!important;max-width:none!important}
  .otp-actions{align-items:flex-start;flex-direction:column;gap:3px}
  #page-favorites .page-heading{padding:20px!important}
}


@media(max-width:600px){
  .settings-dialog{width:calc(100vw - 24px)!important;max-height:calc(100dvh - 20px)!important}
  .settings-dialog>form{padding:24px 18px 20px!important}
  .settings-dialog h2{font-size:1.65rem!important;margin-top:5px!important}
  .settings-dialog form>p{margin-bottom:12px!important;font-size:.82rem!important}
  .settings-list{margin-top:10px!important}
  .settings-dialog .setting-row{
    min-height:68px!important;
    padding:9px 0!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(132px,44%)!important;
    align-items:center!important;
    gap:10px!important;
  }
  .settings-dialog .setting-row>span{min-width:0!important}
  .settings-dialog .setting-row strong{font-size:.82rem!important;line-height:1.2!important}
  .settings-dialog .setting-row small{margin-top:3px!important;font-size:.67rem!important;line-height:1.25!important}
  .settings-dialog .meteonexa-choices{width:100%!important;max-width:none!important}
  .settings-dialog .meteonexa-choices .choices__inner,
  .settings-dialog .setting-row>select{min-height:43px!important;height:43px!important;font-size:.75rem!important}
  .settings-dialog .toggle-setting>i{justify-self:end}
  .settings-backend-note{margin-top:10px!important;padding:10px 12px!important;grid-template-columns:20px minmax(0,1fr)!important}
  .settings-backend-note strong{font-size:.75rem!important}.settings-backend-note small{font-size:.62rem!important}
  .settings-dialog .dialog-link{min-height:38px!important;margin-top:2px!important;font-size:.72rem!important}
}
@media(max-width:380px){
  .settings-dialog .setting-row{grid-template-columns:minmax(0,1fr) 128px!important}
  .settings-dialog>form{padding-inline:16px!important}
}



body[data-page="favorites"] .pages-wrap{
  padding-bottom:30px!important;
}
body[data-page="favorites"] #page-favorites.active-page{
  min-height:calc(100dvh - var(--topbar-h) - 60px);
  display:flex;
  flex-direction:column;
}
body[data-page="favorites"] #page-favorites .page-heading{
  flex:0 0 auto;
}
body[data-page="favorites"] #page-favorites .favorites-grid{
  flex:1 1 auto;
  min-height:0;
  align-content:start;
  margin-bottom:0;
}
body[data-page="favorites"] #page-favorites .favorites-grid:has(.empty-state){
  align-content:stretch;
}
body[data-page="favorites"] #page-favorites .empty-state{
  min-height:360px!important;
  height:100%;
  padding:34px!important;
}
@media (max-width:760px){
  body[data-page="favorites"] .pages-wrap{
    padding-bottom:calc(var(--mobile-nav-h) + var(--safe-bottom) + 24px)!important;
  }
  body[data-page="favorites"] #page-favorites.active-page{
    min-height:auto;
  }
  body[data-page="favorites"] #page-favorites .empty-state{
    min-height:clamp(300px,48dvh,420px)!important;
    height:auto;
    padding:26px 18px!important;
  }
}



#welcome[hidden],
#weather-app[hidden],
.app-shell[hidden],
.welcome-shell[hidden]{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
#welcome:not([hidden]),
#weather-app:not([hidden]){
  visibility:visible;
}



html{min-height:100%;background:#030812}
body{min-height:100%;min-height:100dvh}


dialog.app-dialog[open]{
  position:fixed!important;
  inset:0!important;
  margin:auto!important;
  width:min(620px,calc(100vw - 28px))!important;
  max-width:calc(100vw - 28px)!important;
  max-height:calc(100dvh - 28px)!important;
  transform:none!important;
  box-sizing:border-box!important;
  overscroll-behavior:contain;
}
dialog.app-dialog[open]>form{
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
.search-dialog{width:min(680px,calc(100vw - 28px))!important}
.search-dialog>form{padding:34px!important}
.search-location-actions{margin-top:13px;display:flex;align-items:center;gap:12px;min-width:0}
.search-location-button{min-width:0;min-height:56px;padding:10px 14px;display:flex;align-items:center;gap:12px;border:1px solid rgba(76,211,190,.22);border-radius:15px;background:linear-gradient(135deg,rgba(38,199,177,.1),rgba(112,85,235,.09));color:#dffaf5;cursor:pointer;text-align:left;transition:.2s ease}
.search-location-button:hover{border-color:rgba(76,211,190,.5);background:linear-gradient(135deg,rgba(38,199,177,.17),rgba(112,85,235,.14))}
.search-location-button.loading svg{animation:locationPulseButton 1s ease-in-out infinite}
.search-location-button svg{width:23px;height:23px;flex:0 0 auto;color:#55dbc7}
.search-location-button span{min-width:0}.search-location-button strong,.search-location-button small{display:block}.search-location-button strong{font-size:.86rem}.search-location-button small{margin-top:3px;color:#7f9bb2;font-size:.7rem}
.search-location-status{min-width:0;flex:1;color:#7f9bb2;font-size:.72rem;line-height:1.35}
@keyframes locationPulseButton{50%{transform:scale(.78);opacity:.55}}
body[data-theme="light"] .search-location-button{color:#123b5e;background:linear-gradient(135deg,rgba(35,184,160,.09),rgba(102,79,219,.07));border-color:rgba(27,136,122,.2)}
body[data-theme="light"] .search-location-button small,body[data-theme="light"] .search-location-status{color:#5d7890}


@media(max-width:780px){
  html.drawer-open,html.drawer-open body{overflow:hidden!important;touch-action:none}
  .app-shell>.sidebar{z-index:10020!important;pointer-events:none!important;visibility:hidden!important;transform:translate3d(-105%,0,0)!important;transition:transform .26s cubic-bezier(.2,.85,.2,1),visibility 0s linear .26s!important;will-change:transform}
  .app-shell.menu-open>.sidebar{pointer-events:auto!important;visibility:visible!important;transform:translate3d(0,0,0)!important;transition:transform .26s cubic-bezier(.2,.85,.2,1),visibility 0s!important}
  .sidebar-scrim{z-index:10010!important;pointer-events:none!important}
  .app-shell.menu-open>.sidebar-scrim{pointer-events:auto!important}
  #menu-button{position:relative;z-index:5;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
}


@media(max-width:1024px){
  .welcome-shell{display:block!important;min-height:100svh!important;min-height:100dvh!important}
  .welcome-story{display:none!important}
  .welcome-stage{width:100%!important;min-height:100svh!important;min-height:100dvh!important;padding:0!important;place-items:stretch!important;overflow:hidden!important}
  .phone-shell{width:100%!important;max-width:none!important;height:100svh!important;height:100dvh!important;min-height:100svh!important;min-height:100dvh!important;border:0!important;border-radius:0!important;box-shadow:none!important}
  .phone-screen{border-radius:0!important}
  .onboarding-view{min-height:100%!important;padding:calc(68px + env(safe-area-inset-top)) clamp(24px,6vw,58px) calc(24px + env(safe-area-inset-bottom))!important;box-sizing:border-box!important}
  #auth-view{justify-content:center!important}
  #auth-view .auth-head{margin-top:clamp(30px,5vh,52px)!important}
  #auth-view .auth-actions{margin-top:clamp(20px,3vh,30px)!important}
  #auth-view .auth-security{margin-top:clamp(20px,4vh,42px)!important}
  .stage-caption{display:none!important}
}

@media(max-width:600px){
  dialog.app-dialog[open]{width:calc(100vw - 20px)!important;max-width:calc(100vw - 20px)!important;max-height:calc(100dvh - 20px)!important}
  dialog.app-dialog[open]>form{padding:25px 18px 20px!important;border-radius:22px!important}
  .search-dialog>form{padding:24px 16px 18px!important}
  .search-dialog h2{padding-right:42px;font-size:clamp(1.65rem,8vw,2.1rem)!important;line-height:1.05!important;overflow-wrap:anywhere}
  .search-dialog form>p{font-size:.86rem!important;line-height:1.45!important}
  .dialog-search{height:auto!important;min-height:54px!important;display:grid!important;grid-template-columns:24px minmax(0,1fr)!important;gap:10px!important;padding:10px 11px!important;border-radius:15px!important}
  .dialog-search>svg{grid-column:1;grid-row:1;align-self:center}
  .dialog-search input{grid-column:2;grid-row:1;width:100%!important;min-width:0!important;font-size:16px!important}
  .dialog-search button{grid-column:1/-1;grid-row:2;width:100%!important;min-height:45px!important;border-radius:12px!important;font-size:.86rem!important}
  .search-location-actions{align-items:stretch;flex-direction:column;gap:7px}
  .search-location-button{width:100%;min-height:54px}
  .search-location-status{width:100%;padding-inline:3px}
  .global-search-results{max-height:min(34dvh,280px)!important}
  .recent-searches{max-height:82px;overflow:auto}
  .profile-dialog{margin:auto!important}
  .phone-status{top:calc(18px + env(safe-area-inset-top))!important}
  .phone-island{top:calc(10px + env(safe-area-inset-top))!important}
  .auth-logo-wrap h2{font-size:clamp(27px,8vw,34px)!important}
  .auth-head h3{font-size:clamp(24px,7.2vw,31px)!important}
  .auth-head p{font-size:clamp(13px,3.9vw,16px)!important}
  .auth-secondary-grid .button{min-width:0!important}
}

@media(max-width:390px){
  .onboarding-view{padding-inline:18px!important}
  .auth-secondary-grid{gap:8px!important}
  .auth-secondary-grid .button{padding-inline:8px!important;font-size:.88rem!important}
  .search-dialog h2{font-size:1.55rem!important}
}



@media(max-width:780px){
  dialog.app-dialog[open]{
    top:var(--visual-center-y,50dvh)!important;
    bottom:auto!important;
    left:0!important;
    right:0!important;
    margin:0 auto!important;
    transform:translateY(-50%)!important;
    max-height:calc(var(--visual-height,100dvh) - 20px)!important;
  }
}


[data-action="logout"]{
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
  cursor:pointer;
}
[data-action="logout"] *{pointer-events:none}
#confirm-dialog[open]{z-index:2147483000!important}


#confirm-dialog[open],
#confirm-dialog[open] > form,
#confirm-dialog[open] .confirm-actions,
#confirm-dialog[open] .confirm-actions button{
  pointer-events:auto!important;
}
#confirm-dialog .confirm-actions button{
  position:relative;
  z-index:3;
  min-height:52px;
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
  user-select:none;
}
#confirm-dialog .confirm-actions button:active{
  transform:translateY(1px) scale(.99);
}


.pages-wrap {
  min-height: calc(100dvh - var(--topbar-h));
  padding-bottom: 30px;
}

@media (max-width: 780px) {
  .pages-wrap {
    min-height: calc(100dvh - var(--topbar-h)) !important;
    padding-bottom: 30px !important;
  }
}




#welcome[hidden],
#weather-app[hidden],
.welcome-shell[hidden],
.app-shell[hidden] {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
  content-visibility: hidden !important;
}
#welcome:not([hidden]),
#weather-app:not([hidden]) {
  visibility: visible !important;
  pointer-events: auto;
  content-visibility: visible;
}


.chart-wrap,
.mini-chart-wrap,
.detail-chart-wrap,
.detail-motion-chart { position: relative; }
.chart-wrap canvas,
.mini-chart-wrap canvas,
.detail-chart-wrap canvas,
.detail-motion-chart canvas {
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}
.chart-selection-marker {
  position: absolute;
  z-index: 4;
  width: 1px;
  border-left: 1px dashed rgba(112,220,255,.78);
  pointer-events: none;
  transform: translateX(-.5px);
  filter: drop-shadow(0 0 6px rgba(67,204,255,.55));
}
.chart-selection-marker i {
  position: absolute;
  left: 50%;
  width: 13px;
  height: 13px;
  border: 3px solid #e9fbff;
  border-radius: 50%;
  background: #34c8ff;
  box-shadow: 0 0 0 5px rgba(52,200,255,.16),0 0 18px rgba(52,200,255,.8);
  transform: translate(-50%,-50%);
}
canvas.chart-hovering {
  outline: 1px solid rgba(72,209,255,.24);
  outline-offset: 2px;
  border-radius: 10px;
}

@media (max-width:780px) {
  
  .topbar-left {
    min-width: 0;
    display: grid !important;
    grid-template-columns: var(--header-control-h) minmax(0,1fr) !important;
    gap: 6px !important;
  }
  .location-command {
    width: 100%;
    min-width: 0;
    max-width: none !important;
    grid-template-columns: auto minmax(0,1fr) auto !important;
  }
  .location-command > span:nth-child(2) { min-width: 0; }
  .location-command strong,
  .location-command small {
    display: block;
    min-width: 0;
    max-width: none !important;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  
  #weather-app:not([hidden]) .topbar {
    min-height: calc(72px + var(--safe-top)) !important;
    height: calc(72px + var(--safe-top)) !important;
    padding: var(--safe-top) 10px 0 !important;
    box-sizing: border-box !important;
  }
  #weather-app:not([hidden]) .pages-wrap {
    min-height: calc(100dvh - 72px - var(--safe-top)) !important;
  }
  #weather-app:not([hidden]) .pages-wrap > .weather-atmosphere {
    inset: calc(72px + var(--safe-top)) 0 calc(var(--mobile-nav-h) + var(--safe-bottom)) 0 !important;
  }
  #weather-app:not([hidden]) .sidebar {
    padding-top: calc(25px + var(--safe-top)) !important;
  }

  .chart-tooltip {
    z-index: 2147482000;
    min-width: min(230px,calc(100vw - 24px));
    max-width: calc(100vw - 24px);
    font-size: .84rem;
  }
}

@media (max-width:480px) {
  #top-location,
  #last-update { font-size: 0 !important; line-height: 1 !important; }
  #top-location::after {
    content: attr(data-compact);
    display: block;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: .94rem;
    font-weight: 800;
    color: var(--text);
    line-height: 1.15;
  }
  #last-update::after {
    content: attr(data-compact);
    display: block;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: .72rem;
    font-weight: 550;
    color: var(--muted);
    line-height: 1.2;
  }
  .location-command-icon { width: 40px !important; height: 40px !important; }
  .location-chevron { width: 14px !important; flex: 0 0 14px; }
}





.auth-secondary-grid {
  grid-template-columns: minmax(0, 1fr) !important;
}
.auth-secondary-grid [data-auth="sms"] {
  display: none !important;
}


.settings-backend-note {
  display: none !important;
}


.pages-wrap {
  min-height: calc(100dvh - var(--topbar-h)) !important;
  padding-bottom: 30px !important;
}


@media (min-width: 781px) {
  dialog.app-dialog[open] {
    max-height: calc(100dvh - 32px) !important;
    overflow: visible !important;
  }
  dialog.app-dialog[open] > form {
    max-height: calc(100dvh - 32px) !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
    -webkit-overflow-scrolling: touch;
  }
  dialog.app-dialog[open] > form::-webkit-scrollbar {
    width: 10px;
  }
  dialog.app-dialog[open] > form::-webkit-scrollbar-track {
    margin-block: 22px;
    background: transparent;
  }
  dialog.app-dialog[open] > form::-webkit-scrollbar-thumb {
    border: 3px solid transparent;
    border-radius: 999px;
    background: rgba(104, 202, 194, .42);
    background-clip: padding-box;
  }
}



@media (max-width: 780px) {
  .mobile-nav { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }
}



@media (max-width: 900px) {
  .phone-island,
  .phone-status {
    display: none !important;
  }

  .onboarding-view {
    padding-top: calc(30px + env(safe-area-inset-top)) !important;
  }
}





@media (max-width: 900px) {
  .privacy-center-button {
    display: grid !important;
    place-items: center !important;
    align-content: center !important;
    justify-content: center !important;
    gap: 0 !important;
  }
  .privacy-center-button svg {
    display: block !important;
    margin: 0 !important;
    transform: translateX(1px);
    transform-origin: center;
  }
}


.mini-chart-wrap::before,
.detail-motion-chart::before {
  animation-duration: 20s !important;
  animation-timing-function: linear !important;
}


.radar-admin-key {
  position: absolute;
  z-index: 7;
  left: 18px;
  bottom: 108px;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 7px 10px;
  border: 1px solid rgba(139, 205, 255, .14);
  border-radius: 11px;
  background: rgba(2, 15, 33, .72);
  color: #9db1c9;
  font-size: .7rem;
  font-weight: 750;
  backdrop-filter: blur(14px);
  pointer-events: none;
}
.radar-admin-key span { display: inline-flex; align-items: center; gap: 6px; white-space: nowrap; }
.radar-admin-key i { width: 19px; height: 0; border-top: 2px solid #4de8cf; box-shadow: 0 0 8px rgba(77,232,207,.5); }
.radar-admin-key .metro-key i { border-top-color: #ae80ff; border-top-style: dashed; box-shadow: 0 0 8px rgba(174,128,255,.45); }


.radar-bottom-overlay {
  display: grid !important;
  grid-template-columns: auto minmax(240px, 1fr) minmax(150px, 170px) minmax(145px, 180px) !important;
  align-items: center !important;
  gap: 12px 16px !important;
}
.radar-player-buttons { min-width: max-content; }
.radar-timeline { width: 100%; min-width: 0 !important; }
.radar-speed {
  width: 100% !important;
  min-width: 150px !important;
  max-width: 170px !important;
  overflow: visible !important;
}
.radar-speed > span { display: block; margin-bottom: 5px; white-space: nowrap; }
.radar-speed .meteonexa-choices,
.radar-speed .choices {
  width: 100% !important;
  min-width: 150px !important;
  overflow: visible !important;
}
.radar-speed .choices__inner {
  width: 100% !important;
  min-height: 42px !important;
  padding: 0 34px 0 12px !important;
  display: flex !important;
  align-items: center !important;
  border-radius: 12px !important;
  overflow: hidden !important;
}
.radar-speed .choices__list--single { width: 100%; padding: 0 !important; }
.radar-speed .choices__item { white-space: nowrap !important; word-break: normal !important; overflow: hidden; text-overflow: ellipsis; }
.radar-speed .choices__list--dropdown,
.radar-speed .choices__list[aria-expanded] {
  left: auto !important;
  right: 0 !important;
  width: 190px !important;
  min-width: 190px !important;
  max-width: min(190px, calc(100vw - 24px)) !important;
  z-index: 2147482500 !important;
  overflow: hidden !important;
}
.radar-speed .choices__list--dropdown .choices__item,
.radar-speed .choices__list[aria-expanded] .choices__item {
  min-height: 42px;
  padding: 11px 13px !important;
  white-space: nowrap !important;
  word-break: normal !important;
}
.radar-opacity { width: 100% !important; min-width: 145px; }

.search-country-code,
.country-code {
  min-width: 30px;
  padding: 4px 7px;
  border: 1px solid rgba(91, 221, 201, .2);
  border-radius: 999px;
  color: #76decf;
  font-size: .68rem;
  font-weight: 850;
  letter-spacing: .08em;
  text-align: center;
}

@media (max-width: 1180px) {
  .radar-bottom-overlay {
    grid-template-columns: auto minmax(200px, 1fr) minmax(150px, 170px) !important;
  }
  .radar-opacity { grid-column: 2 / 4; }
  .radar-admin-key { bottom: 150px; }
}

@media (max-width: 780px) {
  .radar-bottom-overlay {
    grid-template-columns: auto minmax(0, 1fr) !important;
    gap: 9px 10px !important;
  }
  .radar-player-buttons { grid-column: 1; grid-row: 1; }
  .radar-timeline { grid-column: 2; grid-row: 1; }
  .radar-speed {
    display: flex !important;
    grid-column: 1 / 2;
    grid-row: 2;
    min-width: 0 !important;
    max-width: none !important;
  }
  .radar-speed .meteonexa-choices,
  .radar-speed .choices { min-width: 0 !important; }
  .radar-opacity { grid-column: 2; grid-row: 2; min-width: 0; }
  .radar-admin-key {
    left: 10px;
    right: 10px;
    bottom: 146px;
    justify-content: center;
    gap: 10px;
    font-size: .62rem;
  }
  .radar-attribution { bottom: 184px !important; }
}

@media (max-width: 560px) {
  .radar-card { min-height: 570px !important; }
  .radar-bottom-overlay {
    grid-template-columns: 1fr 1fr !important;
    padding: 10px !important;
  }
  .radar-player-buttons { grid-column: 1 / -1; justify-content: center; }
  .radar-timeline { grid-column: 1 / -1; grid-row: 2; }
  .radar-speed { grid-column: 1; grid-row: 3; }
  .radar-opacity { display: flex !important; grid-column: 2; grid-row: 3; }
  .radar-admin-key { bottom: 187px; }
  .radar-attribution { display: none; }
  .radar-speed .choices__list--dropdown,
  .radar-speed .choices__list[aria-expanded] {
    left: 0 !important;
    right: auto !important;
    width: min(190px, calc(100vw - 42px)) !important;
  }
}





.mini-weather-art {
  display: grid !important;
  place-items: center !important;
  align-content: center !important;
  justify-content: center !important;
  overflow: visible !important;
}
.mini-weather-art .weather-svg {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  transform-origin: 50% 50%;
}
.mini-weather-art .weather-svg-night,
.mini-weather-art .weather-svg-partly-night { transform: none !important; }
#sidebar-weather-icon .weather-svg-night {
  position: relative !important;
  left: 5px !important;
}
#sidebar-weather-icon .weather-svg-partly-night {
  position: relative !important;
  left: 2px !important;
}
.app-shell.sidebar-collapsed .sidebar-weather {
  display: grid !important;
  place-items: center !important;
  min-height: 72px;
  padding: 10px !important;
}
.app-shell.sidebar-collapsed .mini-weather-art {
  width: 48px !important;
  height: 48px !important;
  margin: 0 auto !important;
}


.radar-world-map {
  position: absolute;
  inset: 0;
  z-index: 0;
  opacity: 0;
  pointer-events: none;
  transition: opacity .45s ease;
  background: #07182b;
}
.radar-map.vector-map-ready .radar-world-map { opacity: 1; }
.radar-world-map .maplibregl-map,
.radar-world-map .maplibregl-canvas-container,
.radar-world-map .maplibregl-canvas { width: 100% !important; height: 100% !important; }
.radar-world-map .maplibregl-canvas {
  filter: brightness(.58) saturate(.72) contrast(1.16) hue-rotate(154deg);
}
body[data-theme="light"] .radar-world-map .maplibregl-canvas {
  filter: brightness(.82) saturate(.78) contrast(1.03) hue-rotate(145deg);
}
.radar-base-canvas { z-index: 1 !important; pointer-events: none; }
.radar-tiles,.radar-forecast-canvas { z-index: 2 !important; }
.map-vignette { z-index: 3 !important; }
.radar-marker { z-index: 4 !important; }


.radar-world-search {
  position: relative;
  z-index: 20;
  display: grid;
  grid-template-columns: minmax(240px,.72fr) minmax(420px,1.28fr);
  align-items: center;
  gap: 18px;
  margin: 0 0 16px;
  padding: 16px 18px !important;
  overflow: visible !important;
}
.radar-world-search-copy { min-width: 0; }
.radar-world-search-copy strong,.radar-world-search-copy small { display: block; }
.radar-world-search-copy strong { margin-top: 3px; font-size: 1rem; }
.radar-world-search-copy small { margin-top: 5px; color: var(--muted); font-size: .76rem; line-height: 1.45; }
.radar-city-search-shell {
  position: relative;
  min-width: 0;
  min-height: 54px;
  display: grid;
  grid-template-columns: 24px minmax(0,1fr) auto 48px;
  align-items: center;
  gap: 8px;
  padding: 5px 6px 5px 16px;
  border: 1px solid rgba(103,213,206,.22);
  border-radius: 17px;
  background: rgba(3,19,35,.72);
  box-shadow: inset 0 1px rgba(255,255,255,.04);
}
.radar-city-search-shell>svg { width: 20px; height: 20px; color: #65dcd0; }
.radar-city-search-shell>input {
  width: 100%; min-width: 0; height: 42px; padding: 0 8px;
  border: 0; outline: 0; background: transparent; color: var(--text);
  font: 700 .92rem Inter,system-ui,sans-serif;
}
.radar-city-search-shell>input::placeholder { color: #71869e; font-weight: 550; }
.radar-city-search-shell>button {
  min-height: 42px; padding: 0 18px; border-radius: 12px;
  background: linear-gradient(135deg,#20c8b0,#6e67ef); color: #fff;
  font-size: .82rem; font-weight: 850; cursor: pointer; white-space: nowrap;
}
.radar-city-search-shell>.radar-city-gps { width: 48px; padding: 0; display: grid; place-items: center; background: rgba(95,205,194,.1); color: #67e2d1; border: 1px solid rgba(95,205,194,.2); }
.radar-city-gps svg { width: 20px; height: 20px; }
.radar-city-gps.loading svg { animation: livePulse 1s ease-in-out infinite; }
.radar-city-results {
  position: absolute; z-index: 2147482000; left: 0; right: 0; top: calc(100% + 9px);
  display: none; max-height: min(390px,55vh); overflow: auto; padding: 8px;
  border: 1px solid rgba(109,210,202,.24); border-radius: 16px;
  background: rgba(5,18,33,.98); box-shadow: 0 26px 70px rgba(0,0,0,.52); backdrop-filter: blur(22px);
}
.radar-city-results.open:not(:empty) { display: block; }
.radar-city-results .floating-result { width: 100%; min-height: 52px; text-align: left; }


.radar-bottom-overlay {
  grid-template-columns: auto minmax(250px,1fr) minmax(190px,210px) !important;
  grid-template-areas: "player timeline speed" "player opacity opacity" !important;
  align-items: center !important;
}
.radar-player-buttons { grid-area: player; }
.radar-timeline { grid-area: timeline; }
.radar-speed { grid-area: speed; width: 100% !important; min-width: 190px !important; max-width: 210px !important; }
.radar-opacity { grid-area: opacity; width: 100% !important; max-width: 360px; justify-self: end; }
.radar-speed .meteonexa-choices,.radar-speed .choices { min-width: 190px !important; width: 100% !important; }
.radar-speed .choices__inner { min-height: 44px !important; }
.radar-speed .choices__item { white-space: nowrap !important; word-break: keep-all !important; }


.chart-wrap,.mini-chart-wrap,.detail-chart-wrap,.detail-motion-chart { position: relative; overflow: hidden; }
.chart-wrap::before,.mini-chart-wrap::before,.detail-chart-wrap::before,.detail-motion-chart::before {
  content: ""; position: absolute; inset: 0; z-index: 2; pointer-events: none;
  width: 28%; background: linear-gradient(90deg,transparent,rgba(94,235,255,.13),transparent);
  transform: translateX(-140%); animation: chartScanSlow 30s linear infinite;
  mix-blend-mode: screen;
}
@keyframes chartScanSlow { from{transform:translateX(-140%)} to{transform:translateX(470%)} }
.chart-wrap canvas,.mini-chart-wrap canvas,.detail-chart-wrap canvas,.detail-motion-chart canvas { z-index: 1 !important; }
body.reduce-motion .chart-wrap::before,
body.reduce-motion .mini-chart-wrap::before,
body.reduce-motion .detail-chart-wrap::before,
body.reduce-motion .detail-motion-chart::before { animation: none !important; display:none; }

@media (max-width: 1100px) {
  .radar-world-search { grid-template-columns: 1fr; }
  .radar-bottom-overlay {
    grid-template-columns: auto minmax(0,1fr) minmax(180px,200px) !important;
    grid-template-areas: "player timeline speed" "opacity opacity opacity" !important;
  }
  .radar-opacity { max-width: 100%; }
}
@media (max-width: 780px) {
  .radar-world-search { padding: 14px !important; gap: 12px; }
  .radar-world-search-copy small { font-size: .72rem; }
  .radar-city-search-shell { grid-template-columns: 22px minmax(0,1fr) 46px; padding-left: 12px; }
  .radar-city-search-shell>button:not(.radar-city-gps) { grid-column: 1 / -1; width: 100%; }
  .radar-city-search-shell>.radar-city-gps { grid-column: 3; grid-row: 1; }
  .radar-bottom-overlay {
    grid-template-columns: 1fr 1fr !important;
    grid-template-areas: "player player" "timeline timeline" "speed opacity" !important;
  }
  .radar-player-buttons { justify-content:center; }
  .radar-speed { display:flex !important; min-width:0 !important; max-width:none !important; }
  .radar-speed .meteonexa-choices,.radar-speed .choices { min-width:0 !important; }
  .radar-opacity { display:flex !important; min-width:0 !important; }
}
@media (max-width: 480px) {
  .radar-world-search-copy small { display:none; }
  .radar-city-search-shell { grid-template-columns: 20px minmax(0,1fr) 44px; }
  .radar-bottom-overlay { gap: 8px !important; }
  .radar-speed .choices__inner { min-height: 42px !important; padding-inline: 10px 28px !important; }
  .radar-opacity { gap: 5px; }
}



#sidebar-weather-icon {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 0 !important;
  text-align: center !important;
}
#sidebar-weather-icon .weather-svg {
  flex: 0 0 auto !important;
  object-position: center !important;
}
.app-shell.sidebar-collapsed #sidebar-weather-icon {
  width: 48px !important;
  height: 48px !important;
  margin: 0 auto !important;
}



.radar-map { contain: layout paint; }
.radar-world-map,
.radar-world-map > .maplibregl-map,
.radar-world-map .maplibregl-canvas-container,
.radar-world-map .maplibregl-canvas {
  position: absolute !important;
  inset: 0 !important;
  min-width: 100% !important;
  min-height: 100% !important;
}
.radar-world-map .maplibregl-canvas { display: block !important; }
.radar-map.is-zooming .radar-world-map,
.radar-map.is-panning .radar-world-map { opacity: 1 !important; }
.radar-map.is-zooming .radar-tiles,
.radar-map.is-panning .radar-tiles { transition: opacity .14s ease; opacity: .82; }
.radar-map.map-render-pending .radar-world-map::after {
  content: "";
  position: absolute;
  right: 82px;
  top: 24px;
  width: 18px;
  height: 18px;
  border: 2px solid rgba(121,224,214,.25);
  border-top-color: #69e0d2;
  border-radius: 50%;
  animation: spin .8s linear infinite;
  pointer-events: none;
}
.radar-only-tile { transform-origin: 0 0; overflow: hidden; }
.radar-only-tile .radar-overlay-tile { object-fit: fill; }



.radar-world-map{pointer-events:auto!important;touch-action:none!important}
.radar-world-map .maplibregl-map,.radar-world-map .maplibregl-canvas-container,.radar-world-map .maplibregl-canvas{pointer-events:auto!important}
.radar-base-canvas,.radar-tiles,.radar-forecast-canvas,.map-vignette,.radar-marker{pointer-events:none!important}
.radar-map.vector-map-ready .radar-tiles{display:none!important}
.radar-map.vector-map-ready.live-mode .radar-base-canvas{opacity:.38}
.radar-map.vector-map-ready.forecast-mode .radar-base-canvas{opacity:.62}
.radar-world-map .maplibregl-control-container{display:none!important}
.radar-map.is-panning .radar-world-map .maplibregl-canvas{cursor:grabbing!important}
.radar-map:not(.is-panning) .radar-world-map .maplibregl-canvas{cursor:grab!important}
.radar-map.vector-map-ready.vector-radar-fallback .radar-tiles{display:block!important}


.location-command-copy{min-width:0;display:flex;flex-direction:column;align-items:flex-start}
.top-timezone{margin-top:2px!important;color:#62d9cb!important;font-size:.68rem!important;font-weight:700!important;letter-spacing:.015em}
.hero-timezone{width:max-content;max-width:100%;margin:-2px 0 9px;padding:5px 9px;display:inline-flex;align-items:center;border:1px solid rgba(91,231,210,.24);border-radius:999px;background:rgba(5,29,61,.18);color:#c5fff5;font-size:.7rem;font-weight:700;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;backdrop-filter:blur(8px)}
.favorite-timezone{display:block;margin-top:7px;color:#62d9cb;font-size:.7rem;font-weight:700;line-height:1.35}
.search-result-row small,.floating-result small{line-height:1.45}

html[data-theme="light"] .top-timezone,
html[data-theme="light"] .favorite-timezone{color:#087f78!important}
html[data-theme="light"] .hero-timezone{border-color:rgba(0,117,111,.24);background:rgba(255,255,255,.42);color:#064e4a}

@media (max-width:780px){
  .top-timezone{display:none!important}
  .hero-timezone{max-width:calc(100vw - 86px);font-size:.68rem;padding:5px 8px}
  .favorite-timezone{font-size:.72rem}
}


.topbar{overflow:hidden}
.topbar-left{width:100%;min-width:0;overflow:hidden}
.location-command{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) auto!important;
  overflow:hidden!important;
}
.location-command-copy{width:100%;min-width:0;overflow:hidden}
.location-command strong,.location-command small{
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.location-chevron{width:14px;height:14px;min-width:14px;margin-left:0!important}

.day-row{
  width:100%;
  min-width:0;
  min-height:58px;
  padding:0 4px;
  grid-template-columns:minmax(70px,1fr) 42px 56px minmax(65px,.7fr) 18px;
  color:inherit;
  background:transparent;
  text-align:left;
  cursor:pointer;
  border-left:0;
  border-right:0;
  border-top:0;
  transition:background .2s ease,border-color .2s ease,transform .2s ease;
}
.day-row:hover,.day-row:focus-visible{
  background:rgba(63,179,255,.07);
  border-bottom-color:rgba(77,194,255,.2);
}
.day-row:focus-visible{outline:2px solid rgba(74,199,255,.5);outline-offset:-2px}
.day-row-chevron{display:grid;place-items:center;color:#6284a8}
.day-row-chevron svg{width:14px;height:14px}

.day-detail-dialog{width:min(1050px,calc(100vw - 32px))!important}
.day-detail-dialog form{max-height:min(900px,calc(100dvh - 32px));overflow-y:auto!important}
.day-detail-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important}
.day-detail-timeline-head{margin-top:22px;display:flex;align-items:flex-end;justify-content:space-between;gap:16px}
.day-detail-timeline-head h3{margin-top:4px;font-size:1.1rem}
.day-detail-timeline-head>small{color:var(--muted);font-size:.78rem;text-align:right}
.day-detail-hourly{grid-auto-columns:minmax(104px,1fr);margin-top:12px;padding-bottom:10px}
.day-detail-hourly .hour-card{min-height:168px}

body[data-theme="light"] .day-row:hover,
body[data-theme="light"] .day-row:focus-visible{background:rgba(28,120,206,.06)}

@media (max-width:1100px){
  .topbar{grid-template-columns:minmax(0,1fr) max-content!important}
  .topbar-center{display:none!important}
  .topbar-left{grid-template-columns:var(--header-control-h) minmax(0,1fr)!important}
  .location-command strong,.location-command small{max-width:100%!important}
  .day-detail-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}

@media (max-width:780px){
  .topbar{overflow:hidden!important}
  .topbar-left{width:100%;overflow:hidden!important}
  .location-command{padding-right:6px!important}
  .location-command-copy{overflow:hidden!important}
  .day-row{grid-template-columns:minmax(74px,1fr) 38px 48px minmax(62px,.8fr) 15px;gap:6px}
  .day-row-chevron svg{width:12px;height:12px}
  .day-detail-dialog{width:calc(100vw - 18px)!important}
  .day-detail-dialog form{padding:18px 15px!important;max-height:calc(100dvh - 18px)}
  .day-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .day-detail-timeline-head{align-items:flex-start;flex-direction:column;gap:4px}
  .day-detail-timeline-head>small{text-align:left}
  .day-detail-hourly{grid-auto-columns:112px!important}
}

@media (max-width:520px){
  .location-chevron{display:none!important}
  .location-command{grid-template-columns:auto minmax(0,1fr)!important}
  .day-row{grid-template-columns:minmax(64px,1fr) 34px 44px minmax(56px,.7fr) 12px;font-size:9px}
  .day-row .day-label strong{font-size:9px}
  .day-temp{gap:4px}
}


.app-content,.topbar,.topbar-left,.location-command,.location-command-copy{min-width:0}
.topbar{width:100%;max-width:100%;box-sizing:border-box}
.topbar-actions{flex:0 0 auto}
@media (max-width:1100px) and (min-width:781px){
  .topbar-actions #refresh-button,
  .topbar-actions #header-favorite{display:none!important}
  .topbar-actions .round-button{width:48px!important;min-width:48px!important}
  .profile-button{width:56px!important;min-width:56px!important;padding-inline:8px!important}
}
@media (max-width:900px) and (min-width:781px){
  .topbar-actions #share-button{display:none!important}
  .topbar{padding-inline:12px!important;gap:8px!important}
}



.welcome-language-picker{position:relative;z-index:15;width:100%;margin-top:auto}
.welcome-language-button{width:100%;min-height:52px;display:grid;grid-template-columns:38px minmax(0,1fr) 18px;align-items:center;gap:11px;padding:8px 13px;border:1px solid rgba(94,181,255,.18);border-radius:15px;background:linear-gradient(135deg,rgba(29,122,221,.09),rgba(124,94,255,.05));color:#dcecff;cursor:pointer;text-align:left;box-shadow:inset 0 1px rgba(255,255,255,.035);transition:border-color .2s ease,background .2s ease,transform .2s ease}
.welcome-language-button:hover,.welcome-language-picker.open .welcome-language-button{border-color:rgba(87,196,255,.42);background:linear-gradient(135deg,rgba(31,151,240,.15),rgba(117,92,255,.1))}
.welcome-language-button:active{transform:translateY(1px)}
.welcome-language-button:focus-visible{outline:3px solid rgba(72,191,255,.28);outline-offset:2px}
.welcome-language-icon{width:38px;height:38px;display:grid;place-items:center;border:1px solid rgba(79,190,255,.23);border-radius:12px;background:linear-gradient(145deg,rgba(35,173,255,.2),rgba(40,96,220,.12));color:#5ed4ff}
.welcome-language-icon svg{width:20px;height:20px}
.welcome-language-copy{min-width:0}.welcome-language-copy small,.welcome-language-copy strong{display:block}.welcome-language-copy small{margin-bottom:3px;color:#7e9bbb;font-size:8px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.welcome-language-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#dcecff;font-size:11px}
.welcome-language-chevron{width:14px;height:14px;color:#7295b9;transform:rotate(90deg);transition:transform .2s ease}.welcome-language-picker.open .welcome-language-chevron{transform:rotate(-90deg)}
.welcome-language-menu{position:absolute;z-index:30;left:0;right:0;bottom:calc(100% + 8px);padding:7px;border:1px solid rgba(102,188,255,.24);border-radius:16px;background:rgba(3,18,42,.98);box-shadow:0 22px 50px rgba(0,0,0,.5);backdrop-filter:blur(22px) saturate(145%)}
.welcome-language-menu[hidden]{display:none!important}
.welcome-language-option{width:100%;min-height:40px;display:grid;grid-template-columns:30px minmax(0,1fr) 18px;align-items:center;gap:9px;padding:5px 8px;border-radius:11px;background:transparent;color:#bdd0e7;cursor:pointer;text-align:left;transition:background .16s ease,color .16s ease}
.welcome-language-option:hover,.welcome-language-option:focus-visible{outline:0;background:rgba(54,151,255,.12);color:#fff}.welcome-language-option.active{background:linear-gradient(135deg,rgba(36,183,255,.19),rgba(95,86,255,.13));color:#fff}
.welcome-language-option>span{width:30px;height:27px;display:grid;place-items:center;border:1px solid rgba(110,188,255,.18);border-radius:8px;background:rgba(255,255,255,.04);color:#6bcfff;font-size:8px;font-weight:900;letter-spacing:.08em}.welcome-language-option strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}.welcome-language-option i{opacity:0;color:#63dda2;font-size:12px;font-style:normal;text-align:center}.welcome-language-option.active i{opacity:1}
#auth-view .welcome-language-picker+.auth-security{margin-top:9px!important}
body[data-theme="light"] .welcome-language-button{border-color:rgba(31,111,169,.2);background:linear-gradient(135deg,rgba(29,139,220,.08),rgba(115,91,230,.05));color:#163d61}body[data-theme="light"] .welcome-language-copy strong{color:#163d61}body[data-theme="light"] .welcome-language-copy small{color:#5c7892}body[data-theme="light"] .welcome-language-menu{border-color:#c5ddeb;background:rgba(249,253,255,.98);box-shadow:0 22px 50px rgba(31,74,111,.2)}body[data-theme="light"] .welcome-language-option{color:#375b78}body[data-theme="light"] .welcome-language-option:hover,body[data-theme="light"] .welcome-language-option:focus-visible,body[data-theme="light"] .welcome-language-option.active{color:#143d61;background:rgba(43,151,224,.1)}
@media(max-width:1024px){#auth-view .welcome-language-picker{margin-top:clamp(16px,3vh,28px)!important}#auth-view .welcome-language-picker+.auth-security{margin-top:9px!important}}
@media(max-width:430px){.welcome-language-button{min-height:48px;grid-template-columns:34px minmax(0,1fr) 16px;padding:7px 10px}.welcome-language-icon{width:34px;height:34px}.welcome-language-menu{bottom:calc(100% + 6px)}}


:root{
  --header-control-h:52px;
  --header-control-radius:16px;
  --topbar-h:82px;
}


.topbar{
  min-height:var(--topbar-h)!important;
  height:var(--topbar-h)!important;
  padding:0 clamp(14px,2vw,28px)!important;
  grid-template-columns:minmax(270px,360px) minmax(240px,1fr) max-content!important;
  align-items:center!important;
  gap:14px!important;
  overflow:visible!important;
}
.topbar-left{
  width:100%!important;
  min-width:0!important;
  display:grid!important;
  grid-template-columns:var(--header-control-h) minmax(0,1fr)!important;
  gap:10px!important;
  align-items:center!important;
}
.menu-button,
.location-command,
.command-search,
.topbar-actions .round-button,
.profile-button{
  min-height:var(--header-control-h)!important;
  height:var(--header-control-h)!important;
  border-radius:var(--header-control-radius)!important;
}
.menu-button,
.topbar-actions .round-button,
.profile-button{
  width:var(--header-control-h)!important;
  min-width:var(--header-control-h)!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
}
.profile-button{margin:0!important;font-size:.82rem!important}
.location-command{
  min-width:0!important;
  width:100%!important;
  max-width:100%!important;
  padding:5px 10px 5px 6px!important;
  display:grid!important;
  grid-template-columns:40px minmax(0,1fr) 14px!important;
  gap:9px!important;
  overflow:hidden!important;
}
.location-command-icon{width:40px!important;height:40px!important;border-radius:13px!important}
.location-command-copy{min-width:0!important;overflow:hidden!important}
.location-command strong{font-size:.92rem!important;line-height:1.15!important}
.location-command small{margin-top:3px!important;font-size:.7rem!important;line-height:1.15!important}
.location-command strong,.location-command small{max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
.topbar-actions{
  min-height:var(--header-control-h)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.topbar-actions .round-button{border-radius:var(--header-control-radius)!important}
@media (max-width:1280px) and (min-width:1101px){
  .topbar{grid-template-columns:minmax(260px,330px) minmax(220px,1fr) max-content!important;gap:11px!important}
  .topbar-actions{gap:7px!important}
  .command-search kbd{display:none!important}
}

@media (max-width:1100px) and (min-width:781px){
  :root{--header-control-h:50px;--topbar-h:76px}
  .topbar{grid-template-columns:minmax(0,1fr) max-content!important;padding-inline:14px!important;gap:10px!important}
  .topbar-center{display:none!important}
  .topbar-actions{gap:7px!important}
  .topbar-actions #refresh-button,.topbar-actions #header-favorite{display:none!important}
  .topbar-actions .round-button,.profile-button{width:var(--header-control-h)!important;min-width:var(--header-control-h)!important;height:var(--header-control-h)!important;min-height:var(--header-control-h)!important}
  .location-command{height:var(--header-control-h)!important;min-height:var(--header-control-h)!important}
}

@media (max-width:780px){
  :root{--header-control-h:46px;--topbar-h:70px}
  #weather-app:not([hidden]) .topbar{
    min-height:calc(var(--topbar-h) + var(--safe-top))!important;
    height:calc(var(--topbar-h) + var(--safe-top))!important;
    padding:var(--safe-top) 10px 0!important;
    grid-template-columns:minmax(0,1fr) max-content!important;
    gap:8px!important;
  }
  .topbar-left{grid-template-columns:var(--header-control-h) minmax(0,1fr)!important;gap:7px!important}
  .location-command{grid-template-columns:36px minmax(0,1fr) 12px!important;gap:7px!important;padding:4px 7px 4px 5px!important}
  .location-command-icon{width:36px!important;height:36px!important;border-radius:12px!important}
  .location-command strong{font-size:.82rem!important}
  .location-command small{font-size:.64rem!important}
  .top-timezone{display:none!important}
  .topbar-actions{display:flex!important;gap:6px!important}
  .topbar-actions #refresh-button,.topbar-actions #header-favorite{display:none!important}
  .topbar-actions .round-button,.profile-button{width:var(--header-control-h)!important;min-width:var(--header-control-h)!important;height:var(--header-control-h)!important;min-height:var(--header-control-h)!important}
  #weather-app:not([hidden]) .pages-wrap{min-height:calc(100dvh - var(--topbar-h) - var(--safe-top))!important}
  #weather-app:not([hidden]) .pages-wrap>.weather-atmosphere{inset:calc(var(--topbar-h) + var(--safe-top)) 0 calc(var(--mobile-nav-h) + var(--safe-bottom)) 0!important}
}

@media (max-width:520px){
  .topbar-actions #share-button{display:none!important}
  .location-chevron{display:none!important}
  .location-command{grid-template-columns:34px minmax(0,1fr)!important}
  .location-command-icon{width:34px!important;height:34px!important}
}

@media (max-width:370px){
  :root{--header-control-h:42px;--topbar-h:64px}
  #weather-app:not([hidden]) .topbar{padding-inline:7px!important;gap:5px!important}
  .topbar-left{gap:5px!important}
  .location-command{grid-template-columns:30px minmax(0,1fr)!important;gap:5px!important;padding-inline:4px!important}
  .location-command-icon{width:30px!important;height:30px!important}
  .location-command small{display:none!important}
  .topbar-actions{gap:4px!important}
}


.radar-heading{align-items:start!important}
.radar-heading-actions{gap:12px!important}
.radar-mode-switch{min-height:50px!important;padding:5px!important;gap:6px!important;border-radius:16px!important}
.radar-mode-switch button{min-height:40px!important;border-radius:12px!important}
.radar-heading-actions .live-status,#radar-refresh,#radar-recenter{min-height:46px!important;height:46px!important}
#radar-refresh{width:46px!important;min-width:46px!important}
#radar-recenter{padding-inline:16px!important;border-radius:14px!important}

.radar-top-overlay{right:80px!important;align-items:flex-start!important}
.radar-location{max-width:min(420px,calc(100% - 10px));min-height:44px;padding:9px 12px!important;border-radius:14px!important}
.radar-location>span{min-width:0}
.radar-location strong,.radar-location small{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.radar-map-controls{
  position:absolute;
  z-index:8;
  top:18px;
  right:18px;
  display:grid;
  gap:8px;
  pointer-events:auto;
}
.radar-map-button{
  width:44px!important;
  min-width:44px!important;
  height:44px!important;
  min-height:44px!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid rgba(126,195,255,.2)!important;
  border-radius:14px!important;
  background:rgba(3,17,37,.82)!important;
  color:#dcecff!important;
  box-shadow:0 10px 24px rgba(0,0,0,.2),inset 0 1px rgba(255,255,255,.04)!important;
  backdrop-filter:blur(14px)!important;
  cursor:pointer!important;
  line-height:1!important;
  transition:background .18s ease,border-color .18s ease,transform .18s ease!important;
}
.radar-map-button:hover{background:rgba(29,105,176,.9)!important;border-color:rgba(111,213,255,.48)!important;transform:translateY(-1px)}
.radar-map-button:focus-visible{outline:3px solid rgba(73,201,255,.28);outline-offset:2px}
.radar-map-button svg{width:20px!important;height:20px!important}
.radar-zoom{
  position:static!important;
  display:grid!important;
  gap:8px!important;
  overflow:visible!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  backdrop-filter:none!important;
}
.radar-zoom button{font-size:21px!important;font-weight:650!important}
.radar-zoom button+button{border-top:1px solid rgba(126,195,255,.2)!important}

.radar-bottom-overlay{
  display:grid!important;
  grid-template-columns:auto minmax(220px,1fr) minmax(170px,200px)!important;
  grid-template-areas:"player timeline speed" "opacity opacity opacity"!important;
  align-items:center!important;
  gap:12px 16px!important;
  padding:14px 16px!important;
}
.radar-player-buttons{grid-area:player;gap:8px!important}
.radar-timeline{grid-area:timeline}
.radar-speed{grid-area:speed}
.radar-opacity{grid-area:opacity;justify-self:end}
.radar-step-button{width:40px!important;height:40px!important;border-radius:13px!important}
.radar-play-button{width:48px!important;height:48px!important;border-radius:15px!important}

.radar-world-search{gap:18px!important}
.radar-city-search-shell{gap:9px!important;padding:6px 7px 6px 15px!important}
.radar-city-search-shell>button{min-height:42px!important;border-radius:12px!important}
.radar-city-search-shell>.radar-city-gps{width:42px!important;min-width:42px!important;height:42px!important}

@media (max-width:1100px){
  .radar-bottom-overlay{grid-template-columns:auto minmax(0,1fr) minmax(160px,190px)!important;grid-template-areas:"player timeline speed" "opacity opacity opacity"!important}
}

@media (max-width:780px){
  .radar-heading{gap:16px!important}
  .radar-heading-actions{grid-template-columns:minmax(0,1fr) 46px!important;grid-template-areas:"modes modes" "status refresh" "recenter recenter"!important;gap:10px!important}
  .radar-mode-switch{min-height:48px!important;gap:5px!important}
  .radar-mode-switch button{min-height:38px!important;font-size:.76rem!important}
  .radar-heading-actions .live-status,#radar-refresh,#radar-recenter{height:44px!important;min-height:44px!important}
  #radar-refresh{width:44px!important;min-width:44px!important}
  .radar-card{border-radius:22px!important}
  .radar-top-overlay{top:12px!important;left:12px!important;right:68px!important}
  .radar-map-controls{top:12px;right:12px;gap:7px}
  .radar-map-button{width:42px!important;min-width:42px!important;height:42px!important;min-height:42px!important;border-radius:13px!important}
  .radar-zoom{gap:7px!important}
  .radar-location{max-width:100%;min-height:42px;padding:8px 10px!important}
  .radar-bottom-overlay{left:10px!important;right:10px!important;bottom:10px!important;grid-template-columns:1fr!important;grid-template-areas:"player" "timeline"!important;gap:10px!important;padding:12px!important}
  .radar-player-buttons{justify-content:center!important}
  .radar-timeline{width:100%!important}
  .radar-speed,.radar-opacity{display:none!important}
  .radar-attribution{bottom:126px!important;max-width:calc(100% - 24px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .radar-world-search{padding:14px!important;gap:12px!important}
  .radar-city-search-shell{grid-template-columns:22px minmax(0,1fr) 42px!important;gap:7px!important;padding:6px 7px 6px 12px!important}
  .radar-city-search-shell>button:not(.radar-city-gps){grid-column:1/-1!important;width:100%!important;margin-top:2px}
  .radar-city-search-shell>.radar-city-gps{grid-column:3!important;grid-row:1!important}
}

@media (max-width:430px){
  .radar-heading-actions{grid-template-columns:minmax(0,1fr) 42px!important}
  #radar-refresh{width:42px!important;min-width:42px!important}
  .radar-map-controls{gap:6px}
  .radar-map-button{width:40px!important;min-width:40px!important;height:40px!important;min-height:40px!important}
  .radar-zoom{gap:6px!important}
  .radar-top-overlay{right:62px!important}
  .radar-location>svg{display:none!important}
}


dialog.app-dialog[open]{overflow:visible!important}
dialog.app-dialog>form.dialog-layout{
  width:100%!important;
  max-width:100%!important;
  max-height:min(860px,calc(100dvh - 28px))!important;
  padding:0!important;
  display:grid!important;
  grid-template-rows:auto minmax(0,1fr) auto!important;
  overflow:hidden!important;
  border-radius:26px!important;
}
.dialog-header{
  position:relative!important;
  min-width:0;
  padding:24px 26px 20px!important;
  display:flex!important;
  align-items:flex-start!important;
  gap:16px!important;
  border-bottom:1px solid rgba(125,196,214,.13)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,0))!important;
}
.dialog-header-with-icon{display:grid!important;grid-template-columns:54px minmax(0,1fr) 42px!important;align-items:start!important}
.dialog-header-copy{min-width:0!important;flex:1!important}
.dialog-header .section-kicker{display:block!important}
.dialog-header h2{margin:6px 0 7px!important;overflow-wrap:anywhere}
.dialog-header p{margin:0!important;max-width:760px;color:#8198b3!important;font-size:.82rem!important;line-height:1.5!important;overflow-wrap:anywhere}
.dialog-header .dialog-hero-icon{width:54px!important;height:54px!important;margin:0!important;flex:0 0 auto!important}
.dialog-header .dialog-close{
  position:static!important;
  top:auto!important;
  right:auto!important;
  width:42px!important;
  min-width:42px!important;
  height:42px!important;
  min-height:42px!important;
  margin-left:auto!important;
  flex:0 0 42px!important;
  border-radius:13px!important;
}
.dialog-body{
  min-width:0!important;
  min-height:0!important;
  padding:22px 26px!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  overscroll-behavior:contain!important;
  scrollbar-gutter:stable!important;
  -webkit-overflow-scrolling:touch!important;
}
.dialog-body::-webkit-scrollbar{width:9px}
.dialog-body::-webkit-scrollbar-track{background:transparent}
.dialog-body::-webkit-scrollbar-thumb{border:3px solid transparent;border-radius:999px;background:rgba(104,202,194,.38);background-clip:padding-box}
.dialog-footer{
  min-width:0!important;
  margin:0!important;
  padding:16px 20px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  flex-wrap:wrap!important;
  gap:10px!important;
  border-top:1px solid rgba(125,196,214,.14)!important;
  background:rgba(2,13,27,.34)!important;
}
.dialog-footer[hidden]{display:none!important}
.dialog-footer .button{
  min-height:48px!important;
  height:auto!important;
  min-width:132px!important;
  padding:0 18px!important;
  border-radius:14px!important;
  justify-content:center!important;
}
.dialog-footer.single-action .button{min-width:150px!important}
.auth-dialog-footer,.settings-dialog-footer,.profile-dialog-footer,.confirm-actions,.hour-detail-actions,.share-actions,.notification-dialog-actions,.privacy-dialog-actions{margin-top:0!important}
.profile-dialog-header .profile-head{min-width:0!important;margin:0!important;flex:1!important}
.profile-dialog-header .profile-head>div{min-width:0!important}
.confirm-dialog-header{justify-content:center!important;padding-right:26px!important}
.confirm-dialog-body{text-align:center!important}
.confirm-actions{display:grid!important;grid-template-columns:1fr 1fr!important}
.confirm-actions .button{width:100%!important;min-width:0!important}
.hour-detail-dialog-header{display:grid!important;grid-template-columns:minmax(0,1fr) 42px!important}
.hour-detail-dialog-header .hour-detail-heading{min-width:0!important;padding-right:0!important}
.hour-detail-dialog .dialog-body,.day-detail-dialog .dialog-body{padding-top:20px!important}
.notification-dialog-header{grid-template-columns:54px minmax(0,1fr) 42px!important}
.notification-status-grid{margin-top:0!important}
.share-actions .button{min-width:140px!important}

body[data-theme="light"] .dialog-header{border-bottom-color:rgba(31,99,150,.13)!important;background:linear-gradient(180deg,rgba(26,92,142,.035),rgba(255,255,255,0))!important}
body[data-theme="light"] .dialog-footer{border-top-color:rgba(31,99,150,.13)!important;background:rgba(225,239,248,.58)!important}

@media (max-width:780px){
  dialog.app-dialog[open]{width:calc(100vw - 18px)!important;max-width:calc(100vw - 18px)!important;max-height:calc(100dvh - 18px)!important}
  dialog.app-dialog>form.dialog-layout{max-height:calc(100dvh - 18px)!important;border-radius:22px!important}
  .dialog-header{padding:19px 17px 16px!important;gap:12px!important}
  .dialog-header-with-icon{grid-template-columns:46px minmax(0,1fr) 38px!important}
  .dialog-header .dialog-hero-icon{width:46px!important;height:46px!important;border-radius:15px!important}
  .dialog-header .dialog-hero-icon svg{width:23px!important;height:23px!important}
  .dialog-header .dialog-close{width:38px!important;min-width:38px!important;height:38px!important;min-height:38px!important;flex-basis:38px!important}
  .dialog-header h2{font-size:1.34rem!important;line-height:1.15!important}
  .dialog-header p{font-size:.75rem!important}
  .dialog-body{padding:18px 17px!important;scrollbar-gutter:auto!important}
  .dialog-footer{padding:13px 14px!important;gap:8px!important}
  .dialog-footer .button{min-height:46px!important;min-width:0!important;flex:1 1 150px!important;padding-inline:13px!important}
  .confirm-actions{grid-template-columns:1fr!important}
  .hour-detail-dialog-header{grid-template-columns:minmax(0,1fr) 38px!important}
  .hour-detail-heading{grid-template-columns:minmax(0,1fr) auto!important;gap:10px!important}
  .hour-detail-art{max-width:82px!important}
  .notification-dialog-header{grid-template-columns:46px minmax(0,1fr) 38px!important}
  .notification-dialog-actions{display:grid!important;grid-template-columns:1fr 1fr!important}
  .notification-dialog-actions #notification-primary{grid-column:1/-1!important}
  .share-actions{display:grid!important;grid-template-columns:1fr 1fr!important}
  .share-actions .button{width:100%!important;min-width:0!important}
}

@media (max-width:480px){
  .dialog-header{padding:17px 14px 14px!important}
  .dialog-header-with-icon{grid-template-columns:42px minmax(0,1fr) 36px!important;gap:10px!important}
  .dialog-header .dialog-hero-icon{width:42px!important;height:42px!important}
  .dialog-header .dialog-close{width:36px!important;min-width:36px!important;height:36px!important;min-height:36px!important;flex-basis:36px!important}
  .dialog-body{padding:15px 14px!important}
  .dialog-footer{display:grid!important;grid-template-columns:1fr!important;padding:12px!important}
  .dialog-footer .button{width:100%!important;min-height:46px!important}
  .share-actions,.notification-dialog-actions{grid-template-columns:1fr!important}
  .notification-dialog-actions #notification-primary{grid-column:auto!important}
  .hour-detail-dialog-header{grid-template-columns:minmax(0,1fr) 36px!important}
  .hour-detail-heading{grid-template-columns:1fr!important}
  .hour-detail-art{display:none!important}
}




.ui-tooltip{
  position:fixed;
  z-index:2147483600;
  width:max-content;
  max-width:min(280px,calc(100vw - 20px));
  padding:9px 12px;
  border:1px solid rgba(111,220,204,.3);
  border-radius:11px;
  background:linear-gradient(145deg,rgba(5,20,39,.98),rgba(15,20,48,.98));
  color:#f5fbff;
  box-shadow:0 16px 42px rgba(0,0,0,.48),inset 0 1px rgba(255,255,255,.08);
  font-size:.74rem;
  font-weight:750;
  line-height:1.35;
  text-align:center;
  pointer-events:none;
  white-space:normal;
  overflow-wrap:anywhere;
  backdrop-filter:blur(18px) saturate(145%);
  animation:uiTooltipIn .14s ease-out;
}
.ui-tooltip[hidden]{display:none!important}
.ui-tooltip::before{
  content:"";
  position:absolute;
  left:50%;
  width:9px;
  height:9px;
  border-left:1px solid rgba(111,220,204,.3);
  border-top:1px solid rgba(111,220,204,.3);
  background:#09152d;
  transform:translateX(-50%) rotate(45deg);
}
.ui-tooltip[data-placement="bottom"]::before{top:-5px}
.ui-tooltip[data-placement="top"]::before{bottom:-5px;transform:translateX(-50%) rotate(225deg)}
@keyframes uiTooltipIn{from{opacity:0;transform:translateY(-3px) scale(.98)}to{opacity:1;transform:none}}
body[data-theme="light"] .ui-tooltip{
  border-color:rgba(34,122,174,.25);
  background:rgba(255,255,255,.98);
  color:#153d62;
  box-shadow:0 16px 38px rgba(37,78,113,.22);
}
body[data-theme="light"] .ui-tooltip::before{border-color:rgba(34,122,174,.25);background:#fff}


.topbar{overflow:visible!important;isolation:isolate}
.topbar :is(.menu-button,.topbar-actions .round-button,.profile-button){
  position:relative;
  z-index:1;
  transform:none!important;
  border:1px solid rgba(132,188,205,.2)!important;
  border-radius:var(--header-control-radius)!important;
  background-clip:padding-box!important;
}
.topbar :is(.menu-button,.topbar-actions .round-button,.profile-button):hover,
.topbar :is(.menu-button,.topbar-actions .round-button,.profile-button):focus-visible{
  z-index:3;
  transform:none!important;
  border-color:rgba(93,225,205,.58)!important;
  box-shadow:0 0 0 1px rgba(93,225,205,.16),0 12px 28px rgba(0,0,0,.24),inset 0 1px rgba(255,255,255,.08)!important;
  outline:0!important;
}
.profile-button{
  border:1px solid rgba(116,207,255,.28)!important;
  transition:border-color .18s ease,box-shadow .18s ease,filter .18s ease!important;
}
.profile-button:hover,.profile-button:focus-visible{
  filter:brightness(1.08) saturate(1.06);
  border-color:rgba(104,232,213,.66)!important;
  box-shadow:0 0 0 1px rgba(104,232,213,.17),0 14px 30px rgba(13,110,245,.34)!important;
}
.profile-button i{pointer-events:none}


.radar-heading-actions{
  display:grid!important;
  grid-template-columns:minmax(220px,1fr) 132px 132px!important;
  grid-template-areas:"modes modes modes" "status refresh recenter"!important;
  align-items:center!important;
  gap:10px!important;
}
.radar-heading-actions .radar-mode-switch{grid-area:modes!important}
.radar-heading-actions .live-status{grid-area:status!important;min-width:0!important;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.radar-heading-button{
  width:132px!important;
  min-width:132px!important;
  height:46px!important;
  min-height:46px!important;
  padding:0 14px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  border-radius:14px!important;
  white-space:nowrap!important;
}
#radar-refresh{grid-area:refresh!important}
#radar-recenter{grid-area:recenter!important}
.radar-heading-button svg{width:18px!important;height:18px!important;flex:0 0 auto}
.radar-heading-button.loading svg{animation:spin .8s linear infinite}


#page-radar,.radar-card,.radar-bottom-overlay{overflow:visible!important}
.radar-card{isolation:isolate}
.radar-map{overflow:hidden!important;border-radius:inherit}
.radar-top-overlay,.radar-map-controls,.radar-bottom-overlay,.radar-attribution{z-index:12!important}


.radar-bottom-overlay{
  grid-template-columns:auto minmax(220px,1fr) minmax(170px,200px)!important;
  grid-template-areas:"key key key" "player timeline speed" "opacity opacity opacity"!important;
  gap:11px 16px!important;
  padding:12px 16px 14px!important;
}
.radar-admin-key{
  position:static!important;
  inset:auto!important;
  grid-area:key!important;
  width:100%!important;
  min-width:0!important;
  min-height:34px;
  padding:0 2px 9px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  flex-wrap:wrap!important;
  gap:7px 18px!important;
  border:0!important;
  border-bottom:1px solid rgba(139,205,255,.12)!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  font-size:.72rem!important;
  pointer-events:none;
}
.radar-admin-key span{min-width:0!important;white-space:normal!important}
.radar-admin-key i{flex:0 0 22px}
.radar-player-buttons{grid-area:player!important}
.radar-timeline{grid-area:timeline!important}
.radar-speed{grid-area:speed!important;position:relative!important;z-index:30!important}
.radar-opacity{grid-area:opacity!important;justify-self:end!important}
.radar-speed .choices,.radar-speed .meteonexa-choices{position:relative!important;z-index:30!important;overflow:visible!important}
.radar-speed .choices.is-open,.radar-speed .meteonexa-choices.is-open{z-index:2147482500!important}
.radar-speed .choices__list--dropdown,.radar-speed .choices__list[aria-expanded]{z-index:2147482500!important}
.radar-attribution{bottom:172px!important}


.hourly-table-panel{overflow:hidden!important}
.hourly-table{
  width:100%!important;
  max-width:100%!important;
  margin-top:16px!important;
  padding:0 clamp(10px,1.2vw,20px) 10px!important;
  overflow-x:auto!important;
  scrollbar-gutter:stable;
}
.hourly-table-row{
  width:max(100%,1080px)!important;
  min-width:1080px!important;
  min-height:72px!important;
  padding:0 clamp(12px,1.2vw,20px)!important;
  grid-template-columns:minmax(88px,.7fr) minmax(190px,1.55fr) repeat(5,minmax(105px,1fr)) minmax(120px,1fr)!important;
  gap:clamp(12px,1.4vw,24px)!important;
  box-sizing:border-box!important;
}
.hourly-table-row.header{
  min-height:44px!important;
  border-radius:10px 10px 0 0;
}
.hourly-table-row .condition-cell{min-width:0!important}
.hourly-table-row .condition-cell b{min-width:0;overflow-wrap:anywhere}

@media (max-width:1100px){
  .radar-heading-actions{grid-template-columns:minmax(0,1fr) 124px 124px!important}
  .radar-heading-button{width:124px!important;min-width:124px!important}
  .radar-bottom-overlay{grid-template-columns:auto minmax(0,1fr) minmax(160px,190px)!important}
}

@media (max-width:780px){
  .radar-heading-actions{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    grid-template-areas:"modes modes" "status status" "refresh recenter"!important;
  }
  .radar-heading-actions .live-status{width:100%!important;justify-content:center!important}
  .radar-heading-button{width:100%!important;min-width:0!important;height:44px!important;min-height:44px!important}
  .radar-card{min-height:620px!important}
  .radar-bottom-overlay{
    grid-template-columns:minmax(0,1fr) minmax(150px,.8fr)!important;
    grid-template-areas:"key key" "player player" "timeline timeline" "speed opacity"!important;
    gap:10px 12px!important;
  }
  .radar-admin-key{justify-content:center!important;text-align:center!important}
  .radar-player-buttons{justify-content:center!important}
  .radar-speed,.radar-opacity{display:flex!important;min-width:0!important;width:100%!important}
  .radar-opacity{justify-self:stretch!important}
  .radar-attribution{display:none!important}
}

@media (max-width:520px){
  .radar-card{min-height:720px!important}
  .radar-bottom-overlay{
    grid-template-columns:1fr!important;
    grid-template-areas:"key" "player" "timeline" "speed" "opacity"!important;
    padding:11px!important;
  }
  .radar-admin-key{gap:6px 12px!important;font-size:.66rem!important}
  .radar-speed,.radar-opacity{width:100%!important;max-width:none!important}
  .radar-speed .meteonexa-choices,.radar-speed .choices{width:100%!important;max-width:none!important}
  .radar-speed .choices__list--dropdown,.radar-speed .choices__list[aria-expanded]{
    left:0!important;
    right:auto!important;
    width:100%!important;
    min-width:100%!important;
    max-width:100%!important;
  }
  .hourly-table{padding-inline:8px!important}
  .hourly-table-row{padding-inline:14px!important}
}
.radar-card{z-index:3!important}
.radar-cards,.radar-legend{position:relative;z-index:1}




.meteonexa-choices.is-flipped .choices__list--dropdown,
.meteonexa-choices.is-flipped .choices__list[aria-expanded]{
  top:auto!important;
  bottom:calc(100% + 7px)!important;
  margin-top:0!important;
  margin-bottom:0!important;
  transform-origin:bottom center!important;
}
.settings-dialog .dialog-body{position:relative!important;z-index:2!important}
.settings-dialog .dialog-footer{position:relative!important;z-index:1!important}
.settings-dialog .meteonexa-choices.is-open{z-index:120!important}
.settings-dialog .meteonexa-choices .choices__list--dropdown,
.settings-dialog .meteonexa-choices .choices__list[aria-expanded]{
  max-height:min(250px,36dvh)!important;
  overflow-y:auto!important;
}


#page-radar .radar-heading{
  width:100%!important;
  margin-bottom:18px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  gap:16px!important;
}
#page-radar .radar-heading>div:first-child{max-width:920px}
#page-radar .radar-heading-actions{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  padding:10px!important;
  display:grid!important;
  grid-template-columns:minmax(330px,1fr) minmax(190px,260px) 126px 126px!important;
  grid-template-areas:"modes status refresh recenter"!important;
  align-items:center!important;
  gap:10px!important;
  border:1px solid rgba(112,196,217,.18)!important;
  border-radius:20px!important;
  background:linear-gradient(145deg,rgba(5,25,43,.9),rgba(12,18,38,.9))!important;
  box-shadow:0 18px 42px rgba(0,0,0,.18),inset 0 1px rgba(255,255,255,.04)!important;
  backdrop-filter:blur(18px) saturate(145%)!important;
}
#page-radar .radar-mode-switch{
  grid-area:modes!important;
  width:100%!important;
  min-width:0!important;
  min-height:48px!important;
  padding:4px!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:4px!important;
  border-radius:15px!important;
  background:rgba(1,13,28,.62)!important;
}
#page-radar .radar-mode-switch button{
  width:100%!important;
  min-width:0!important;
  min-height:40px!important;
  padding:0 14px!important;
  justify-content:center!important;
  border-radius:11px!important;
  font-size:.86rem!important;
  line-height:1.2!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#page-radar .radar-heading-actions .live-status{
  grid-area:status!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  height:46px!important;
  min-height:46px!important;
  padding:0 14px!important;
  justify-content:center!important;
  border-radius:14px!important;
  font-size:.8rem!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#page-radar .radar-heading-button{
  width:126px!important;
  min-width:126px!important;
  max-width:126px!important;
  height:46px!important;
  min-height:46px!important;
  padding:0 14px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  border-radius:14px!important;
  font-size:.82rem!important;
  white-space:nowrap!important;
}
#page-radar #radar-refresh{grid-area:refresh!important}
#page-radar #radar-recenter{grid-area:recenter!important}
#page-radar .radar-heading-button svg{width:18px!important;height:18px!important;flex:0 0 auto!important}


#page-radar .radar-card{
  isolation:isolate!important;
  overflow:hidden!important;
  min-height:570px!important;
  height:clamp(570px,68dvh,780px)!important;
  border-radius:24px!important;
}
#page-radar .radar-map{overflow:hidden!important;border-radius:inherit!important}
#page-radar .radar-map-controls{z-index:30!important}
#page-radar .radar-map-button,
#page-radar #radar-fullscreen,
#page-radar #radar-zoom-in,
#page-radar #radar-zoom-out{
  width:44px!important;
  min-width:44px!important;
  max-width:44px!important;
  height:44px!important;
  min-height:44px!important;
  max-height:44px!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  border-radius:14px!important;
  box-sizing:border-box!important;
}
#page-radar .radar-bottom-overlay{
  position:absolute!important;
  z-index:24!important;
  left:16px!important;
  right:16px!important;
  bottom:16px!important;
  width:auto!important;
  min-width:0!important;
  min-height:104px!important;
  padding:14px 16px!important;
  display:grid!important;
  grid-template-columns:auto minmax(260px,1fr) minmax(190px,220px)!important;
  grid-template-areas:"player timeline speed" "player opacity opacity"!important;
  align-items:center!important;
  gap:10px 16px!important;
  overflow:visible!important;
  border:1px solid rgba(124,195,221,.18)!important;
  border-radius:19px!important;
  background:linear-gradient(145deg,rgba(5,22,42,.94),rgba(13,20,40,.95))!important;
  box-shadow:0 20px 52px rgba(0,0,0,.34),inset 0 1px rgba(255,255,255,.05)!important;
  backdrop-filter:blur(22px) saturate(145%)!important;
}
#page-radar .radar-admin-key{
  position:absolute!important;
  left:0!important;
  right:auto!important;
  top:auto!important;
  bottom:calc(100% + 10px)!important;
  width:max-content!important;
  max-width:min(100%,620px)!important;
  min-height:38px!important;
  padding:8px 12px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  flex-wrap:nowrap!important;
  gap:10px 18px!important;
  overflow:hidden!important;
  border:1px solid rgba(124,195,221,.16)!important;
  border-radius:12px!important;
  background:rgba(4,19,37,.9)!important;
  box-shadow:0 12px 28px rgba(0,0,0,.24)!important;
  backdrop-filter:blur(16px)!important;
  font-size:.7rem!important;
  line-height:1.2!important;
  pointer-events:none!important;
}
#page-radar .radar-admin-key span{min-width:0!important;white-space:nowrap!important}
#page-radar .radar-admin-key i{flex:0 0 22px!important}
#page-radar .radar-player-buttons{
  grid-area:player!important;
  width:auto!important;
  min-width:max-content!important;
  display:grid!important;
  grid-template-columns:repeat(3,46px)!important;
  align-items:center!important;
  justify-content:start!important;
  gap:8px!important;
}
#page-radar .radar-step-button,
#page-radar .radar-play-button{
  width:46px!important;
  min-width:46px!important;
  max-width:46px!important;
  height:46px!important;
  min-height:46px!important;
  max-height:46px!important;
  margin:0!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  border-radius:14px!important;
  box-sizing:border-box!important;
}
#page-radar .radar-step-button{font-size:1.65rem!important}
#page-radar .radar-play-button svg{width:19px!important;height:19px!important}
#page-radar .radar-timeline{grid-area:timeline!important;width:100%!important;min-width:0!important}
#page-radar .radar-time-row{margin-bottom:8px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important}
#page-radar .radar-time-row strong{font-size:.95rem!important;white-space:nowrap!important}
#page-radar .radar-time-row span{min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;text-align:right!important;font-size:.76rem!important}
#page-radar .radar-timeline input[type="range"]{width:100%!important;margin:0!important}
#page-radar .radar-speed{
  grid-area:speed!important;
  position:relative!important;
  z-index:80!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  display:flex!important;
  flex-direction:column!important;
  gap:6px!important;
  overflow:visible!important;
  font-size:.72rem!important;
}
#page-radar .radar-speed>span{margin:0!important}
#page-radar .radar-speed .meteonexa-choices,
#page-radar .radar-speed .choices{width:100%!important;min-width:0!important;max-width:none!important;z-index:90!important}
#page-radar .radar-speed .choices__inner{min-height:42px!important;height:42px!important}
#page-radar .radar-speed .choices__list--dropdown,
#page-radar .radar-speed .choices__list[aria-expanded]{
  left:0!important;
  right:auto!important;
  width:100%!important;
  min-width:100%!important;
  max-width:100%!important;
}
#page-radar .radar-opacity{
  grid-area:opacity!important;
  width:min(100%,620px)!important;
  min-width:0!important;
  max-width:620px!important;
  justify-self:end!important;
  display:grid!important;
  grid-template-columns:22px minmax(150px,1fr) 48px!important;
  align-items:center!important;
  gap:10px!important;
}
#page-radar .radar-opacity svg{width:19px!important;height:19px!important}
#page-radar .radar-opacity input{width:100%!important;min-width:0!important;margin:0!important}
#page-radar .radar-opacity span{min-width:48px;text-align:right!important}
#page-radar .radar-attribution{right:18px!important;bottom:138px!important;z-index:18!important}


#page-radar .radar-world-search{margin-bottom:16px!important}
#page-radar .radar-cards{margin-top:16px!important}
#page-radar .radar-legend{margin-top:14px!important}

@media (max-width:1120px){
  #page-radar .radar-heading-actions{
    grid-template-columns:minmax(0,1fr) 126px 126px!important;
    grid-template-areas:"modes modes modes" "status refresh recenter"!important;
  }
  #page-radar .radar-bottom-overlay{
    grid-template-columns:auto minmax(0,1fr)!important;
    grid-template-areas:"player timeline" "speed opacity"!important;
  }
  #page-radar .radar-speed{max-width:220px!important}
  #page-radar .radar-opacity{width:100%!important;max-width:none!important}
}

@media (max-width:720px){
  #page-radar .radar-heading-actions{
    padding:9px!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    grid-template-areas:"modes modes" "status status" "refresh recenter"!important;
    gap:9px!important;
    border-radius:17px!important;
  }
  #page-radar .radar-heading-button{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:44px!important;
    min-height:44px!important;
  }
  #page-radar .radar-heading-actions .live-status{height:44px!important;min-height:44px!important}
  #page-radar .radar-card{height:680px!important;min-height:680px!important;border-radius:21px!important}
  #page-radar .radar-bottom-overlay{
    left:10px!important;
    right:10px!important;
    bottom:10px!important;
    min-height:0!important;
    padding:12px!important;
    grid-template-columns:1fr!important;
    grid-template-areas:"key" "player" "timeline" "speed" "opacity"!important;
    gap:10px!important;
    border-radius:17px!important;
  }
  #page-radar .radar-admin-key{
    position:static!important;
    grid-area:key!important;
    width:100%!important;
    max-width:none!important;
    min-height:34px!important;
    padding:0 0 9px!important;
    justify-content:center!important;
    flex-wrap:wrap!important;
    gap:7px 14px!important;
    border:0!important;
    border-bottom:1px solid rgba(124,195,221,.13)!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    backdrop-filter:none!important;
  }
  #page-radar .radar-player-buttons{justify-self:center!important}
  #page-radar .radar-speed{width:100%!important;max-width:none!important}
  #page-radar .radar-opacity{width:100%!important;max-width:none!important;justify-self:stretch!important}
  #page-radar .radar-attribution{display:none!important}
}

@media (max-width:430px){
  #page-radar .radar-mode-switch button{padding-inline:8px!important;font-size:.74rem!important}
  #page-radar .radar-heading-actions .live-status{font-size:.72rem!important}
  #page-radar .radar-card{height:700px!important;min-height:700px!important}
  #page-radar .radar-bottom-overlay{padding:10px!important}
  #page-radar .radar-player-buttons{grid-template-columns:repeat(3,44px)!important;gap:7px!important}
  #page-radar .radar-step-button,
  #page-radar .radar-play-button{width:44px!important;min-width:44px!important;max-width:44px!important;height:44px!important;min-height:44px!important;max-height:44px!important}
  #page-radar .radar-opacity{grid-template-columns:20px minmax(100px,1fr) 42px!important;gap:8px!important}
}

body[data-theme="light"] #page-radar .radar-heading-actions,
body[data-theme="light"] #page-radar .radar-bottom-overlay{
  background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(239,247,255,.94))!important;
  border-color:rgba(35,113,170,.16)!important;
  box-shadow:0 18px 40px rgba(42,84,126,.12),inset 0 1px rgba(255,255,255,.88)!important;
}
body[data-theme="light"] #page-radar .radar-admin-key{background:rgba(250,253,255,.94)!important;color:#486684!important;border-color:rgba(35,113,170,.16)!important}





body[data-page="favorites"] #page-favorites.active-page{
  min-height:calc(100dvh - var(--topbar-h) - 78px)!important;
  display:flex!important;
  flex-direction:column;
}
#page-favorites .page-heading{
  flex:0 0 auto;
}
#page-favorites .favorites-grid.has-favorites{
  width:100%;
  flex:1 1 auto;
  display:grid;
  align-items:stretch;
  align-content:stretch;
  grid-auto-rows:minmax(330px,1fr);
}
#page-favorites .favorites-grid[data-count="1"]{
  grid-template-columns:minmax(0,1fr)!important;
}
#page-favorites .favorites-grid[data-count="2"]{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}
#page-favorites .favorites-grid[data-count="3"]{
  grid-template-columns:repeat(var(--mobile-nav-columns,3),minmax(0,1fr))!important;
}
#page-favorites .favorites-grid.has-favorites .favorite-card{
  height:100%;
}
#page-favorites .favorites-grid[data-count="1"] .favorite-card,
#page-favorites .favorites-grid[data-count="2"] .favorite-card{
  min-height:clamp(340px,calc(100dvh - 395px),620px);
  padding:clamp(24px,2vw,36px);
  display:flex;
  flex-direction:column;
}
#page-favorites .favorites-grid[data-count="1"] .favorite-card-header,
#page-favorites .favorites-grid[data-count="2"] .favorite-card-header{
  flex:0 0 auto;
}
#page-favorites .favorites-grid[data-count="1"] .favorite-weather,
#page-favorites .favorites-grid[data-count="2"] .favorite-weather{
  flex:1 1 auto;
  min-height:170px;
  margin-top:0;
  padding:clamp(30px,4vh,58px) 0 clamp(68px,7vh,90px);
  align-items:center;
}
#page-favorites .favorites-grid[data-count="1"] .favorite-temp,
#page-favorites .favorites-grid[data-count="2"] .favorite-temp{
  font-size:clamp(60px,5vw,82px);
}
#page-favorites .favorites-grid[data-count="1"] .favorite-art .weather-svg,
#page-favorites .favorites-grid[data-count="2"] .favorite-art .weather-svg{
  width:clamp(112px,9vw,152px);
  height:clamp(94px,8vw,128px);
}
#page-favorites .favorites-grid[data-count="1"] .favorite-footer,
#page-favorites .favorites-grid[data-count="2"] .favorite-footer{
  left:clamp(24px,2vw,36px);
  right:clamp(24px,2vw,36px);
  bottom:clamp(22px,2vw,30px);
  font-size:.78rem;
}


@media (min-width:1101px){
  #page-alerts .alerts-dashboard{
    align-items:stretch!important;
  }
  #page-alerts .alerts-main-column{
    min-height:100%;
  }
  #page-alerts .thresholds-panel{
    position:static!important;
    top:auto!important;
    align-self:stretch!important;
    height:auto!important;
    min-height:100%;
    display:grid!important;
    grid-template-rows:auto repeat(3,minmax(0,1fr)) auto;
  }
  #page-alerts .thresholds-heading,
  #page-alerts .threshold-footer{
    align-self:start;
  }
  #page-alerts .threshold-row{
    min-height:0!important;
    align-content:center;
  }
  #page-alerts .threshold-footer{
    align-self:end;
    width:100%;
  }
}

@media (max-width:1100px){
  #page-alerts .thresholds-panel{
    min-height:0!important;
    height:auto!important;
    display:block!important;
  }
  #page-alerts .threshold-row{
    min-height:0!important;
  }
}

@media (max-width:760px){
  body[data-page="favorites"] #page-favorites.active-page{
    min-height:auto!important;
  }
  #page-favorites .favorites-grid.has-favorites{
    flex:0 0 auto;
    align-content:start;
    grid-auto-rows:auto;
  }
  #page-favorites .favorites-grid[data-count="1"],
  #page-favorites .favorites-grid[data-count="2"],
  #page-favorites .favorites-grid[data-count="3"]{
    grid-template-columns:1fr!important;
  }
  #page-favorites .favorites-grid[data-count="1"] .favorite-card,
  #page-favorites .favorites-grid[data-count="2"] .favorite-card{
    min-height:270px;
    height:auto;
    padding:22px;
  }
  #page-favorites .favorites-grid[data-count="1"] .favorite-weather,
  #page-favorites .favorites-grid[data-count="2"] .favorite-weather{
    flex:none;
    min-height:0;
    margin-top:30px;
    padding:0;
    align-items:flex-end;
  }
  #page-favorites .favorites-grid[data-count="1"] .favorite-footer,
  #page-favorites .favorites-grid[data-count="2"] .favorite-footer{
    left:22px;
    right:22px;
    bottom:19px;
    font-size:.72rem;
  }
}





#page-radar .radar-world-map{
  transition:none!important;
}
#page-radar .radar-map.map-initializing{
  background:linear-gradient(145deg,#07192d,#0a2037)!important;
}
#page-radar .radar-map.map-initializing::before{
  content:"";
  position:absolute;
  z-index:9;
  left:50%;
  top:50%;
  width:38px;
  height:38px;
  margin:-19px 0 0 -19px;
  border:3px solid rgba(106,222,210,.18);
  border-top-color:#69e0d2;
  border-radius:50%;
  animation:spin .8s linear infinite;
  pointer-events:none;
}
#page-radar .radar-map.map-initializing .radar-world-map,
#page-radar .radar-map.map-initializing .radar-base-canvas,
#page-radar .radar-map.map-initializing .radar-tiles,
#page-radar .radar-map.map-initializing .radar-forecast-canvas,
#page-radar .radar-map.map-initializing .radar-marker{
  opacity:0!important;
  visibility:hidden!important;
}
#page-radar .radar-map:not(.vector-map-ready):not(.map-fallback-active) .radar-base-canvas,
#page-radar .radar-map:not(.vector-map-ready):not(.map-fallback-active) .radar-tiles,
#page-radar .radar-map:not(.vector-map-ready):not(.map-fallback-active) .radar-forecast-canvas{
  opacity:0!important;
  visibility:hidden!important;
}
#page-radar .radar-map.vector-map-ready .radar-base-canvas{
  opacity:0!important;
  visibility:hidden!important;
}
#page-radar .radar-map.map-fallback-active .radar-base-canvas,
#page-radar .radar-map.map-fallback-active .radar-tiles,
#page-radar .radar-map.map-fallback-active .radar-forecast-canvas{
  visibility:visible!important;
}


@media (min-width:1101px){
  #page-alerts .alerts-dashboard{
    align-items:start!important;
    overflow:visible!important;
  }
  #page-alerts .alerts-main-column{
    min-height:0!important;
  }
  #page-alerts .thresholds-panel{
    position:relative!important;
    top:auto!important;
    align-self:start!important;
    height:auto!important;
    min-height:0!important;
    display:block!important;
    grid-template-rows:none!important;
    transform:translate3d(0,var(--threshold-follow-y,0px),0)!important;
    transition:none!important;
    will-change:transform;
  }
  #page-alerts .threshold-row{
    min-height:0!important;
    align-content:normal!important;
  }
  #page-alerts .thresholds-heading,
  #page-alerts .threshold-footer{
    align-self:auto!important;
  }
}

#radar-dry-chip{display:none!important}


@media (min-width:1101px){
  #page-alerts,
  #page-alerts .alerts-dashboard,
  #page-alerts .alerts-main-column{
    overflow:visible!important;
  }
  #page-alerts #thresholds-panel{
    z-index:3;
    contain:layout style;
    backface-visibility:hidden;
  }
}



#confirm-dialog.app-dialog[open]{
  width:min(460px,calc(100vw - 28px))!important;
  max-width:460px!important;
  max-height:min(520px,calc(100dvh - 28px))!important;
  margin:auto!important;
}
#confirm-dialog>form.confirm-dialog-layout{
  max-height:min(520px,calc(100dvh - 28px))!important;
  border-radius:22px!important;
}
#confirm-dialog .confirm-dialog-header{
  min-height:104px!important;
  padding:22px 24px!important;
  display:grid!important;
  grid-template-columns:52px minmax(0,1fr)!important;
  align-items:center!important;
  justify-content:stretch!important;
  gap:15px!important;
  text-align:left!important;
}
#confirm-dialog .confirm-icon{
  width:52px!important;
  height:52px!important;
  margin:0!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid rgba(255,106,122,.22)!important;
  border-radius:16px!important;
  background:linear-gradient(145deg,rgba(255,93,111,.17),rgba(220,43,78,.08))!important;
  color:#ff7584!important;
  box-shadow:inset 0 1px rgba(255,255,255,.06)!important;
}
#confirm-dialog .confirm-icon svg{
  width:25px!important;
  height:25px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.9!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
#confirm-dialog .confirm-heading{min-width:0!important}
#confirm-dialog .confirm-heading h2{
  margin:0!important;
  font-size:1.42rem!important;
  line-height:1.18!important;
  letter-spacing:-.035em!important;
  text-align:left!important;
}
#confirm-dialog .confirm-dialog-body{
  min-height:auto!important;
  padding:20px 24px!important;
  text-align:left!important;
  overflow:visible!important;
}
#confirm-dialog .confirm-dialog-body p{
  margin:0!important;
  color:#a8bdd2!important;
  font-size:.93rem!important;
  line-height:1.6!important;
}
#confirm-dialog .confirm-actions{
  padding:15px 18px 18px!important;
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:10px!important;
}
#confirm-dialog .confirm-actions .button{
  width:100%!important;
  min-width:0!important;
  min-height:48px!important;
  padding-inline:16px!important;
  border-radius:14px!important;
  font-size:.92rem!important;
}
#confirm-dialog[data-confirm-kind="remove"] .confirm-icon{
  border-color:rgba(255,195,80,.23)!important;
  background:linear-gradient(145deg,rgba(255,190,70,.17),rgba(217,128,23,.08))!important;
  color:#ffc45f!important;
}
body[data-theme="light"] #confirm-dialog .confirm-dialog-body p{color:#55708c!important}
body[data-theme="light"] #confirm-dialog .confirm-icon{
  border-color:rgba(212,55,76,.17)!important;
  background:linear-gradient(145deg,rgba(255,93,111,.11),rgba(220,43,78,.045))!important;
}
@media(max-width:480px){
  #confirm-dialog.app-dialog[open]{
    width:min(430px,calc(100vw - 20px))!important;
    max-width:calc(100vw - 20px)!important;
  }
  #confirm-dialog .confirm-dialog-header{
    min-height:92px!important;
    padding:18px 17px!important;
    grid-template-columns:46px minmax(0,1fr)!important;
    gap:12px!important;
  }
  #confirm-dialog .confirm-icon{width:46px!important;height:46px!important;border-radius:14px!important}
  #confirm-dialog .confirm-icon svg{width:22px!important;height:22px!important}
  #confirm-dialog .confirm-heading h2{font-size:1.22rem!important}
  #confirm-dialog .confirm-dialog-body{padding:17px!important}
  #confirm-dialog .confirm-dialog-body p{font-size:.86rem!important}
  #confirm-dialog .confirm-actions{
    padding:12px!important;
    grid-template-columns:1fr 1fr!important;
  }
  #confirm-dialog .confirm-actions .button{min-height:46px!important;font-size:.86rem!important}
}
@media(max-width:350px){
  #confirm-dialog .confirm-actions{grid-template-columns:1fr!important}
}


.forecast-panel{
  container-type:inline-size;
  container-name:forecast-panel;
  min-width:0;
}
.forecast-panel-title{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:start!important;
  gap:clamp(10px,2cqi,18px)!important;
}
.forecast-panel-copy{min-width:0}
.forecast-panel-copy h2{
  max-width:100%;
  margin-right:0;
  font-size:1.72rem!important;
  font-size:clamp(1.45rem,7cqi,2rem)!important;
  line-height:1.08;
  overflow-wrap:normal;
}
.forecast-history-button{
  min-width:0;
  min-height:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:0 13px;
  border:1px solid rgba(77,184,255,.28);
  border-radius:14px;
  background:linear-gradient(135deg,rgba(36,156,239,.14),rgba(117,91,255,.10));
  color:#a9d4ff;
  font:800 .78rem/1 Inter,system-ui,sans-serif;
  white-space:nowrap;
  cursor:pointer;
  transition:transform .2s ease,border-color .2s ease,background .2s ease,color .2s ease;
}
.forecast-history-button svg{width:17px;height:17px;stroke-width:2}
.forecast-history-button:hover,.forecast-history-button:focus-visible,.forecast-history-button.active{
  border-color:rgba(88,211,255,.56);
  background:linear-gradient(135deg,rgba(42,186,244,.24),rgba(116,92,255,.18));
  color:#e9f8ff;
  transform:translateY(-1px);
}
.forecast-history-button:focus-visible{outline:3px solid rgba(64,192,255,.22);outline-offset:2px}
.daily-forecast{width:100%;min-width:0}
.day-row{
  box-sizing:border-box!important;
  width:100%!important;
  min-width:0!important;
  padding-inline:14px!important;
  padding-inline:clamp(11px,2.2cqi,18px)!important;
  grid-template-columns:minmax(84px,1.18fr) 42px minmax(54px,.72fr) minmax(72px,.82fr) 20px!important;
  gap:10px!important;
  gap:clamp(7px,1.7cqi,12px)!important;
}
.day-row-chevron{
  justify-self:end!important;
  width:20px;
  min-width:20px;
  margin:0!important;
}
.day-row-chevron svg{width:15px;height:15px}
.day-temp{min-width:0;justify-content:flex-end!important;white-space:nowrap}
.day-rain{min-width:0;white-space:nowrap}

@container forecast-panel (max-width:430px){
  .forecast-panel-title{gap:10px!important}
  .forecast-panel-copy h2{font-size:1.5rem!important;font-size:clamp(1.32rem,8.5cqi,1.72rem)!important}
  .forecast-history-button{min-height:40px;padding:0 11px;border-radius:13px;font-size:.72rem}
  .day-row{
    min-height:64px!important;
    padding-inline:10px!important;
    grid-template-columns:minmax(72px,1.12fr) 36px minmax(46px,.68fr) minmax(64px,.82fr) 18px!important;
    gap:7px!important;
  }
  .day-row .weather-svg{width:32px!important;height:30px!important}
  .day-row-chevron{width:18px;min-width:18px}
}
@container forecast-panel (max-width:330px){
  .forecast-panel-title{grid-template-columns:minmax(0,1fr) 42px}
  .forecast-history-button{width:42px;padding:0}
  .forecast-history-button span{display:none}
  .day-row{
    grid-template-columns:minmax(66px,1fr) 31px minmax(40px,.62fr) minmax(58px,.78fr) 16px!important;
    padding-inline:8px!important;
    gap:5px!important;
  }
  .day-row .weather-svg{width:28px!important;height:27px!important}
  .day-row-chevron{width:16px;min-width:16px}
  .day-row-chevron svg{width:12px;height:12px}
  .day-temp{gap:4px!important}
}

.history-heading .outline-button svg{width:15px;height:15px;transform:rotate(180deg)}
.history-toolbar-panel{
  display:grid;
  grid-template-columns:minmax(230px,.75fr) minmax(520px,1.55fr) auto;
  align-items:end;
  gap:18px;
  padding:22px;
}
.history-location-card{
  min-width:0;
  display:grid;
  grid-template-columns:48px minmax(0,1fr);
  align-items:center;
  gap:12px;
}
.history-location-icon{
  width:48px;height:48px;
  display:grid;place-items:center;
  border:1px solid rgba(70,186,255,.24);
  border-radius:16px;
  background:linear-gradient(145deg,rgba(31,169,246,.18),rgba(55,92,213,.12));
  color:#50caff;
}
.history-location-icon svg{width:23px;height:23px}
.history-location-card small,.history-location-card strong,.history-location-card em{display:block;min-width:0}
.history-location-card small{margin-bottom:4px;color:#69cfff;font-size:.67rem;font-weight:900;letter-spacing:.14em}
.history-location-card strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-size:1rem}
.history-location-card em{margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:.72rem;font-style:normal}
.history-period-form{display:grid;grid-template-columns:minmax(150px,1fr) minmax(150px,1fr) auto;align-items:end;gap:12px}
.history-date-field{min-width:0;display:grid;gap:7px;color:var(--muted);font-size:.72rem;font-weight:800}
.history-date-field input{
  box-sizing:border-box;
  width:100%;
  min-height:48px;
  padding:0 13px;
  border:1px solid rgba(91,178,255,.22);
  border-radius:14px;
  outline:0;
  background:rgba(6,25,52,.72);
  color:var(--text);
  color-scheme:dark;
  font:700 .86rem/1 Inter,system-ui,sans-serif;
  transition:border-color .2s ease,box-shadow .2s ease,background .2s ease;
}
.history-date-field input:hover{border-color:rgba(93,201,255,.4)}
.history-date-field input:focus{border-color:#43c7ff;box-shadow:0 0 0 3px rgba(67,199,255,.13);background:rgba(7,32,64,.9)}
.history-period-form .button{min-height:48px;white-space:nowrap}
.history-quick-actions{display:flex;align-items:center;gap:7px;justify-content:flex-end}
.history-quick-actions button{
  min-height:40px;
  padding:0 11px;
  border:1px solid rgba(92,177,255,.18);
  border-radius:12px;
  background:rgba(11,34,65,.54);
  color:var(--muted);
  font:800 .72rem/1 Inter,system-ui,sans-serif;
  white-space:nowrap;
  cursor:pointer;
  transition:.2s ease;
}
.history-quick-actions button:hover,.history-quick-actions button:focus-visible,.history-quick-actions button.active{
  border-color:rgba(74,209,255,.45);
  background:rgba(39,146,231,.14);
  color:#dff8ff;
}
.history-summary-grid{margin-top:18px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.history-summary-card{min-width:0;min-height:126px;padding:20px;display:flex;align-items:center;gap:15px}
.history-summary-card>span{width:48px;height:48px;flex:0 0 auto;display:grid;place-items:center;border-radius:15px;background:rgba(31,153,234,.12);color:#51caff}
.history-summary-card>span svg{width:23px;height:23px}
.history-summary-card div{min-width:0}
.history-summary-card small,.history-summary-card strong,.history-summary-card em{display:block}
.history-summary-card small{color:var(--muted);font-size:.74rem;font-weight:800}
.history-summary-card strong{margin-top:7px;color:var(--text);font-size:1.45rem;line-height:1}
.history-summary-card em{margin-top:7px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#6f8baa;font-size:.68rem;font-style:normal}
.history-chart-panel,.history-table-panel{margin-top:18px;padding:22px;overflow:hidden}
.history-panel-title{gap:16px}
.history-panel-title .soft-badge{max-width:44%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.history-chart-wrap{position:relative;height:clamp(290px,30vw,470px);margin-top:18px;overflow:hidden;border-radius:18px;background:linear-gradient(180deg,rgba(23,119,214,.05),rgba(5,17,36,.02))}
.history-chart-wrap::before{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(116,190,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(116,190,255,.025) 1px,transparent 1px);background-size:100% 25%,12.5% 100%;mask-image:linear-gradient(to bottom,#000,transparent)}
.history-chart-wrap canvas{position:relative;z-index:1;width:100%!important;height:100%!important;display:block}
.history-chart-legend{margin-top:14px;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:18px;color:var(--muted);font-size:.73rem;font-weight:700}
.history-chart-legend span{display:inline-flex;align-items:center;gap:7px}
.history-chart-legend i{width:22px;height:3px;display:inline-block;border-radius:99px}
.history-max-line{background:#48d2ff}.history-min-line{background:#ffbd65}.history-rain-bars{height:9px!important;background:linear-gradient(180deg,#8b7cff,rgba(55,141,255,.25))}
.history-table-scroll{margin-top:17px;overflow-x:auto;overscroll-behavior-inline:contain}
.history-table{min-width:880px;border:1px solid rgba(103,175,239,.10);border-radius:17px;overflow:hidden}
.history-table-row{display:grid;grid-template-columns:minmax(170px,1.2fr) minmax(180px,1.35fr) minmax(125px,.8fr) minmax(115px,.75fr) minmax(160px,1fr);align-items:center;gap:16px;min-height:76px;padding:12px 18px;border-bottom:1px solid rgba(111,176,236,.09)}
.history-table-row:last-child{border-bottom:0}
.history-table-row:not(.history-table-head):hover{background:rgba(54,161,238,.055)}
.history-table-head{min-height:46px;background:rgba(17,61,112,.36);color:#7590af;font-size:.69rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}
.history-date-cell strong,.history-date-cell small,.history-wind-cell strong,.history-wind-cell small{display:block}
.history-date-cell strong{color:var(--text);font-size:.82rem}.history-date-cell small{margin-top:4px;color:#6883a3;font-size:.68rem}
.history-condition-cell{display:flex;align-items:center;gap:10px;min-width:0}.history-condition-cell .weather-svg{width:44px;height:40px;flex:0 0 auto}.history-condition-cell strong{min-width:0;overflow:hidden;text-overflow:ellipsis;color:var(--text);font-size:.82rem}
.history-temperature-cell{display:flex;align-items:center;gap:8px;color:var(--text);font-size:.84rem}.history-temperature-cell i{color:#6683a4;font-style:normal}
.history-rain-cell{display:flex;align-items:center;gap:7px;color:#59c2ff}.history-rain-cell svg{width:15px;height:15px}.history-rain-cell strong{font-size:.8rem}
.history-wind-cell strong{color:var(--text);font-size:.8rem}.history-wind-cell small{margin-top:4px;color:#718aa7;font-size:.68rem}
.history-empty{margin-top:18px;min-height:220px;display:grid;place-items:center;align-content:center;gap:8px;text-align:center;color:var(--muted)}
.history-empty[hidden]{display:none!important}.history-empty svg{width:42px;height:42px;color:#55caff}.history-empty strong{color:var(--text)}.history-empty p{margin:0;font-size:.8rem}


html[data-theme="light"] .forecast-history-button{background:rgba(255,255,255,.62);color:#125f9f}
html[data-theme="light"] .history-date-field input{background:rgba(255,255,255,.72);color:#0a2948;color-scheme:light}
html[data-theme="light"] .history-quick-actions button{background:rgba(255,255,255,.6)}
html[data-theme="light"] .history-table-head{background:rgba(34,128,205,.09)}

@media (max-width:1380px){
  .history-toolbar-panel{grid-template-columns:minmax(220px,.7fr) minmax(460px,1.5fr)}
  .history-quick-actions{grid-column:1/-1;justify-content:flex-start}
}
@media (max-width:980px){
  .history-toolbar-panel{grid-template-columns:1fr}
  .history-period-form{grid-template-columns:1fr 1fr auto}
  .history-quick-actions{grid-column:auto}
  .history-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:700px){
  .history-heading .outline-button{width:100%}
  .history-toolbar-panel,.history-chart-panel,.history-table-panel{padding:17px}
  .history-period-form{grid-template-columns:1fr 1fr}
  .history-period-form .button{grid-column:1/-1;width:100%}
  .history-quick-actions{display:grid;grid-template-columns:repeat(3,1fr);width:100%}
  .history-quick-actions button{padding:0 7px}
  .history-summary-grid{grid-template-columns:1fr;gap:12px}
  .history-summary-card{min-height:104px;padding:17px}
  .history-chart-wrap{height:320px;margin-top:13px}
  .history-panel-title{align-items:flex-start!important}
  .history-panel-title .soft-badge{max-width:50%;font-size:.66rem}
  .history-table-scroll{overflow:visible}
  .history-table{min-width:0;border:0;border-radius:0;display:grid;gap:12px;overflow:visible}
  .history-table-head{display:none}
  .history-table-row:not(.history-table-head){
    min-height:0;
    padding:15px;
    grid-template-columns:1fr 1fr;
    gap:13px 16px;
    border:1px solid rgba(99,180,245,.13);
    border-radius:16px;
    background:rgba(6,27,55,.42);
  }
  .history-table-row:not(.history-table-head)>span{position:relative;min-width:0;padding-top:17px}
  .history-table-row:not(.history-table-head)>span::before{content:attr(data-label);position:absolute;top:0;left:0;color:#6686a8;font-size:.58rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
  .history-date-cell,.history-condition-cell{grid-column:1/-1}
  .history-condition-cell{padding-top:19px!important}
  .history-date-cell{display:flex;align-items:baseline;justify-content:space-between;gap:10px}
  .history-date-cell small{margin-top:0}
  .history-temperature-cell,.history-rain-cell,.history-wind-cell{align-self:start}
  .history-wind-cell{grid-column:1/-1}
}
@media (max-width:420px){
  .history-period-form{grid-template-columns:1fr}
  .history-period-form .button{grid-column:auto}
  .history-quick-actions{grid-template-columns:1fr}
  .history-summary-card strong{font-size:1.28rem}
  .history-panel-title{display:grid!important;grid-template-columns:minmax(0,1fr);gap:9px!important}
  .history-panel-title .soft-badge{max-width:100%;justify-self:start}
  .history-chart-wrap{height:285px}
  .history-table-row:not(.history-table-head){grid-template-columns:1fr}
  .history-date-cell,.history-condition-cell,.history-wind-cell{grid-column:auto}
}



.insight-panel-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end}.intelligence-link{font-size:11px!important}.intelligence-heading{padding:26px 28px;border:1px solid rgba(88,211,205,.16);border-radius:26px;background:radial-gradient(circle at 88% 12%,rgba(92,90,255,.17),transparent 32%),linear-gradient(145deg,rgba(5,28,48,.91),rgba(11,17,36,.89));box-shadow:0 22px 58px rgba(0,0,0,.23)}
.intelligence-hero-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(330px,.7fr);gap:20px;align-items:stretch}.nowcast-intelligence-panel,.confidence-panel,.change-panel,.decision-panel,.model-comparison-panel{padding:26px}.intelligence-panel-title{position:relative;z-index:2}.nowcast-intelligence-panel{min-height:430px}.nowcast-message{position:relative;z-index:2;display:flex;align-items:center;gap:16px;margin-top:24px;padding:18px;border:1px solid rgba(82,212,199,.14);border-radius:20px;background:linear-gradient(135deg,rgba(36,198,183,.08),rgba(92,93,255,.08))}.nowcast-message>span{width:52px;height:52px;display:grid;place-items:center;flex:0 0 auto;border-radius:16px;background:linear-gradient(145deg,rgba(47,214,193,.2),rgba(91,89,255,.18));color:#6af3d4}.nowcast-message svg{width:25px;height:25px}.nowcast-message strong,.nowcast-message p{display:block}.nowcast-message strong{font:800 18px/1.2 Manrope,sans-serif}.nowcast-message p{margin:6px 0 0;color:#91a8bf;font-size:13px;line-height:1.55}.nowcast-metrics{position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:16px}.nowcast-metrics>div{padding:14px 15px;border:1px solid rgba(255,255,255,.055);border-radius:16px;background:rgba(255,255,255,.025)}.nowcast-metrics small,.nowcast-metrics strong{display:block}.nowcast-metrics small{color:#728ca9;font-size:10px}.nowcast-metrics strong{margin-top:7px;font:800 17px/1.15 Manrope,sans-serif}.nowcast-timeline{position:relative;z-index:2;display:grid;grid-template-columns:repeat(9,minmax(48px,1fr));gap:8px;margin-top:22px;padding:18px 14px 12px;border-top:1px solid rgba(255,255,255,.065);overflow-x:auto}.nowcast-point{min-width:48px;text-align:center}.nowcast-point>span{height:82px;display:flex;align-items:flex-end;justify-content:center;padding:4px;border-radius:12px;background:linear-gradient(180deg,rgba(57,171,255,.035),rgba(57,171,255,.09))}.nowcast-point i{width:72%;min-height:3px;height:calc(4px + var(--rain-level) * 68px);display:block;border-radius:7px 7px 4px 4px;background:linear-gradient(180deg,#7aeaff,#3e83ff 60%,#7869ff);box-shadow:0 0 18px rgba(73,165,255,calc(.08 + var(--rain-level) * .35));transition:height .45s ease}.nowcast-point strong,.nowcast-point small{display:block;white-space:nowrap}.nowcast-point strong{margin-top:9px;font-size:10px}.nowcast-point small{margin-top:3px;color:#728ba8;font-size:8px}
.confidence-panel{display:flex;flex-direction:column}.confidence-badge{padding:7px 11px;border:1px solid rgba(101,238,186,.2);border-radius:999px;background:rgba(64,221,169,.08);color:#6ff0ba;font-size:10px;font-weight:800}.confidence-main{position:relative;z-index:2;display:grid;grid-template-columns:170px minmax(0,1fr);align-items:center;gap:22px;margin-top:28px}.confidence-ring{--confidence:0;position:relative;width:166px;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#55e4c4 calc(var(--confidence) * 1%),rgba(91,117,160,.16) 0);box-shadow:0 0 46px rgba(52,215,191,.1)}.confidence-ring::before{content:"";position:absolute;inset:13px;border-radius:50%;background:linear-gradient(145deg,#071b31,#0e1832);box-shadow:inset 0 0 0 1px rgba(255,255,255,.055)}.confidence-ring>div{position:relative;text-align:center}.confidence-ring strong{display:block;font:850 46px/1 Manrope,sans-serif;letter-spacing:-.06em}.confidence-ring small{display:block;margin-top:4px;color:#6f8aa7;font-size:10px}.confidence-copy strong{font:800 19px/1.2 Manrope,sans-serif}.confidence-copy p{margin:8px 0 0;color:#8da3ba;font-size:13px;line-height:1.62}.confidence-facts{position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:auto;padding-top:24px}.confidence-facts>div{padding:13px;border:1px solid rgba(255,255,255,.055);border-radius:15px;background:rgba(255,255,255,.02)}.confidence-facts small,.confidence-facts strong{display:block}.confidence-facts small{color:#6e88a5;font-size:9px}.confidence-facts strong{margin-top:6px;font-size:12px}
.intelligence-secondary-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;margin-top:20px}.intelligence-live-pill{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid rgba(84,232,176,.17);border-radius:999px;background:rgba(48,221,161,.07);color:#62e7ae;font-size:9px;font-weight:800}.intelligence-live-pill i{width:7px;height:7px;border-radius:50%;background:#4fe29e;box-shadow:0 0 10px #4fe29e}.forecast-change-list{position:relative;z-index:2;display:grid;gap:10px;margin-top:20px}.forecast-change-list article{display:grid;grid-template-columns:46px minmax(0,1fr);gap:14px;align-items:center;padding:14px;border:1px solid rgba(255,255,255,.055);border-radius:17px;background:rgba(255,255,255,.022)}.forecast-change-list article>span{width:46px;height:46px;display:grid;place-items:center;border-radius:14px;background:rgba(71,159,255,.09);color:#62c8ff}.forecast-change-list svg{width:22px;height:22px}.forecast-change-list strong{font-size:13px}.forecast-change-list p{margin:5px 0 0;color:#7f98b2;font-size:11px;line-height:1.5}.decision-panel-icon{width:26px;height:26px;color:#8c7cff}.intelligence-decisions{position:relative;z-index:2;display:grid;gap:8px;margin-top:20px}.decision-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:13px;padding:13px 14px;border:1px solid rgba(255,255,255,.055);border-radius:16px;background:rgba(255,255,255,.022)}.decision-row>span{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:rgba(61,220,198,.08);color:#62e6cc}.decision-row svg{width:20px;height:20px}.decision-row strong,.decision-row small{display:block}.decision-row strong{font-size:12px}.decision-row small{margin-top:4px;color:#718aa6;font-size:9px}.decision-row b{max-width:150px;text-align:right;color:#e8f6ff;font-size:12px}
.model-comparison-panel{margin-top:20px}.model-comparison{position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:22px}.model-card{min-width:0;padding:18px;border:1px solid rgba(255,255,255,.065);border-radius:20px;background:radial-gradient(circle at 100% 0,rgba(82,110,255,.1),transparent 36%),rgba(255,255,255,.025);transition:transform .25s ease,border-color .25s ease}.model-card:hover{transform:translateY(-3px);border-color:rgba(92,218,206,.25)}.model-card-head{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:11px}.model-mark{width:44px;height:44px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(145deg,rgba(55,216,194,.18),rgba(89,89,255,.18));color:#dffeff;font:850 13px/1 Manrope,sans-serif;letter-spacing:.05em}.model-card-head strong,.model-card-head small{display:block}.model-card-head strong{font-size:14px}.model-card-head small{margin-top:4px;color:#758eaa;font-size:9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.model-condition{max-width:110px;padding:6px 8px;border-radius:9px;background:rgba(255,255,255,.04);color:#9fb5ca;font-size:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.model-sparkline{height:100px;margin-top:18px;padding:10px 6px 4px;border-top:1px solid rgba(255,255,255,.055);border-bottom:1px solid rgba(255,255,255,.055)}.model-sparkline svg{width:100%;height:100%;overflow:visible;fill:none}.model-sparkline polyline{stroke:#64e2d0;stroke-width:2;vector-effect:non-scaling-stroke}.model-rain-bars{fill:rgba(77,145,255,.45)}.model-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:14px}.model-metrics>div{padding:10px;border-radius:12px;background:rgba(255,255,255,.025)}.model-metrics small,.model-metrics strong{display:block}.model-metrics small{color:#6f89a5;font-size:8px}.model-metrics strong{margin-top:5px;font-size:11px;white-space:nowrap}.model-rain-time{display:flex;align-items:center;gap:8px;margin-top:13px;color:#7e98b3;font-size:9px;line-height:1.4}.model-rain-time svg{width:16px;height:16px;flex:0 0 auto;color:#5abfff}.model-empty{grid-column:1/-1;min-height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#7690ab}.model-empty svg{width:40px;height:40px;color:#7a68ff}.model-empty strong{margin-top:12px;color:#dbeeff}.model-empty p{max-width:420px;margin:7px 0 0;font-size:11px;line-height:1.5}.intelligence-source-note{margin-top:18px}
body[data-theme="light"] .intelligence-heading{background:radial-gradient(circle at 88% 12%,rgba(92,90,255,.12),transparent 32%),linear-gradient(145deg,rgba(255,255,255,.95),rgba(240,248,255,.92))}body[data-theme="light"] .confidence-ring::before{background:linear-gradient(145deg,#fff,#eef6ff)}body[data-theme="light"] .nowcast-message,body[data-theme="light"] .model-card,body[data-theme="light"] .forecast-change-list article,body[data-theme="light"] .decision-row{background:rgba(22,91,160,.035)}
@media (max-width:1180px){.intelligence-hero-grid{grid-template-columns:1fr}.confidence-panel{min-height:360px}.model-comparison{grid-template-columns:1fr 1fr}.model-card:last-child{grid-column:1/-1}.nowcast-metrics{grid-template-columns:repeat(2,1fr)}}
@media (max-width:760px){.insight-panel-actions{width:100%;justify-content:space-between}.intelligence-heading{padding:20px}.intelligence-heading .button{width:100%}.nowcast-intelligence-panel,.confidence-panel,.change-panel,.decision-panel,.model-comparison-panel{padding:18px}.nowcast-message{align-items:flex-start}.nowcast-message>span{width:44px;height:44px}.nowcast-message strong{font-size:15px}.nowcast-message p{font-size:11px}.nowcast-timeline{grid-template-columns:repeat(9,58px);margin-left:-4px;margin-right:-4px;padding-left:4px;padding-right:4px}.confidence-main{grid-template-columns:1fr;text-align:center}.confidence-ring{width:150px;margin:0 auto}.confidence-facts{grid-template-columns:1fr 1fr}.confidence-facts>div:last-child{grid-column:1/-1}.intelligence-secondary-grid{grid-template-columns:1fr}.model-comparison{grid-template-columns:1fr}.model-card:last-child{grid-column:auto}.model-card-head{grid-template-columns:42px minmax(0,1fr)}.model-condition{grid-column:1/-1;max-width:none}.model-metrics{grid-template-columns:1fr 1fr}.model-metrics>div:last-child{grid-column:1/-1}.decision-row{grid-template-columns:40px minmax(0,1fr)}.decision-row b{grid-column:2;text-align:left;margin-top:2px}.nowcast-metrics{grid-template-columns:1fr 1fr}.nowcast-metrics strong{font-size:14px}}
@media (max-width:420px){.nowcast-metrics{grid-template-columns:1fr}.confidence-facts{grid-template-columns:1fr}.confidence-facts>div:last-child{grid-column:auto}.model-metrics{grid-template-columns:1fr}.model-metrics>div:last-child{grid-column:auto}}





.topbar-center{min-width:0;overflow:visible!important}
.command-search-shell{position:relative;width:100%;min-width:0}
form.command-search{
  width:100%!important;
  min-width:0!important;
  min-height:46px!important;
  height:46px!important;
  padding:5px 6px 5px 14px!important;
  display:grid!important;
  grid-template-columns:22px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:9px!important;
  overflow:visible!important;
  border:1px solid rgba(160,133,255,.22)!important;
  border-radius:15px!important;
  background:rgba(129,102,223,.065)!important;
}
form.command-search:focus-within{
  border-color:rgba(81,196,255,.52)!important;
  box-shadow:0 0 0 3px rgba(55,157,255,.1)!important;
  background:rgba(129,102,223,.1)!important;
}
form.command-search>svg{width:20px!important;height:20px!important;color:#61c7ff;pointer-events:none}
form.command-search input{
  width:100%;min-width:0;height:34px;padding:0;border:0;outline:0;
  background:transparent;color:var(--text);font:650 .84rem/1 Manrope,sans-serif;
}
form.command-search input::placeholder{color:#738aa7;opacity:1}
form.command-search>button{
  align-self:stretch;min-width:72px;padding:0 14px;border:0;border-radius:11px;
  background:linear-gradient(135deg,rgba(35,190,195,.95),rgba(110,91,239,.96));
  color:#fff;cursor:pointer;font-size:.74rem;font-weight:800;box-shadow:0 8px 18px rgba(38,109,223,.18)
}
form.command-search>button svg{display:none;width:18px;height:18px}
form.command-search>button:hover{filter:brightness(1.07)}
.command-search-results{
  z-index:120!important;top:calc(100% + 8px)!important;left:0!important;right:0!important;
  max-height:min(360px,48dvh)!important;border-radius:15px!important;
}
.command-search-results .floating-result{min-height:58px;padding:11px 13px}
.command-search-results .floating-result strong{font-size:.82rem}
.command-search-results .floating-result small{font-size:.68rem;line-height:1.35}
.command-search-results .country-code{width:34px;height:34px;flex:0 0 34px;display:grid;place-items:center;border:1px solid rgba(75,211,196,.22);border-radius:11px;color:#62d6c8;font-size:.67rem;font-weight:800}


.search-dialog{width:min(620px,calc(100vw - 28px))!important}
.search-dialog>form.dialog-layout{max-height:min(760px,calc(100dvh - 28px))!important}
.search-dialog .dialog-header{padding-bottom:17px!important}
.search-dialog .dialog-body{padding-top:18px!important;padding-bottom:18px!important}
.search-dialog .dialog-search{
  width:100%;height:58px!important;min-height:58px!important;padding:6px 6px 6px 15px!important;
  display:grid!important;grid-template-columns:22px minmax(0,1fr) auto!important;grid-template-rows:1fr!important;
  align-items:center!important;gap:10px!important;border-radius:16px!important;
}
.search-dialog .dialog-search>svg{grid-column:1!important;grid-row:1!important;width:20px!important;height:20px!important}
.search-dialog .dialog-search input{grid-column:2!important;grid-row:1!important;width:100%!important;min-width:0!important;height:44px!important;font-size:.9rem!important}
.search-dialog .dialog-search .dialog-search-location{
  grid-column:3!important;grid-row:1!important;align-self:stretch!important;width:auto!important;min-width:158px!important;
  min-height:44px!important;padding:0 14px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;
  border:1px solid rgba(74,211,193,.24)!important;border-radius:12px!important;
  background:linear-gradient(135deg,rgba(38,199,177,.15),rgba(112,85,235,.16))!important;
  color:#dffaf5!important;font-size:.76rem!important;font-weight:800!important;white-space:nowrap!important;
}
.search-dialog .dialog-search .dialog-search-location svg{width:18px;height:18px;color:#5ce0cc}
.search-dialog .dialog-search .dialog-search-location.loading svg{animation:locationPulseButton 1s ease-in-out infinite}
.search-dialog .search-location-status{display:block;min-height:0;margin:8px 3px 0;color:#7f9bb2;font-size:.72rem;line-height:1.35}
.search-dialog .search-location-status:empty{display:none}
.search-dialog .global-search-results{max-height:min(350px,42dvh);margin-top:10px}
.search-dialog .global-search-results:empty{display:none}
.search-dialog .dialog-footer{padding-top:13px!important;padding-bottom:13px!important}
.search-dialog .dialog-footer .button{min-height:46px!important}


.hero-card .hero-content{padding-bottom:16px!important}
.hero-card .hero-footer{margin-top:12px!important}


.hourly-panel{align-self:start!important;height:auto!important;min-height:0!important;padding-bottom:18px!important}
.hourly-panel .hourly-strip{margin-bottom:0!important;padding-bottom:2px!important}
.hourly-panel .hour-card{margin-bottom:0!important}

body[data-theme="light"] form.command-search{background:rgba(82,83,190,.055)!important;border-color:rgba(54,105,170,.17)!important}
body[data-theme="light"] form.command-search input{color:#123658}
body[data-theme="light"] .search-dialog .dialog-search .dialog-search-location{color:#173f5d!important;background:linear-gradient(135deg,rgba(38,199,177,.11),rgba(112,85,235,.09))!important}

@media (max-width:1180px){
  form.command-search>button{min-width:46px;padding-inline:10px}
  form.command-search>button span{display:none}
  form.command-search>button svg{display:block}
}

@media (max-width:780px){
  .search-dialog>form.dialog-layout{max-height:calc(100dvh - 18px)!important}
  .search-dialog .dialog-header{padding-bottom:14px!important}
  .search-dialog .dialog-body{padding-top:14px!important;padding-bottom:14px!important}
  .search-dialog .dialog-search{height:54px!important;min-height:54px!important;grid-template-columns:20px minmax(0,1fr) 44px!important;padding:5px 5px 5px 12px!important;gap:8px!important}
  .search-dialog .dialog-search input{height:42px!important;font-size:16px!important}
  .search-dialog .dialog-search .dialog-search-location{width:44px!important;min-width:44px!important;height:42px!important;min-height:42px!important;padding:0!important;border-radius:11px!important}
  .search-dialog .dialog-search .dialog-search-location span{display:none!important}
  .search-dialog .dialog-search .dialog-search-location svg{width:20px;height:20px}
  .search-dialog .global-search-results{max-height:min(330px,44dvh)!important}
  .hero-card .hero-content{padding-bottom:12px!important}
  .hero-card .hero-footer{margin-top:9px!important}
  .hourly-panel{padding-bottom:15px!important}
}

@media (max-width:480px){
  .search-dialog .dialog-header-copy p{display:none}
  .search-dialog .dialog-body{padding-top:12px!important}
  .search-dialog .dialog-footer{display:grid!important;grid-template-columns:1fr 1fr!important}
  .search-dialog .dialog-footer .button{width:100%!important;min-width:0!important}
  .hero-card .hero-content{padding-bottom:10px!important}
  .hero-card .hero-footer{margin-top:8px!important}
}


/* stable first paint and desktop login viewport */
html.i18n-pending [data-i18n-key],
html.i18n-pending [data-i18n-placeholder],
html.i18n-pending [data-i18n-aria-label],
html.i18n-pending [data-i18n-data-tooltip],
html.i18n-pending [data-i18n-data-placeholder],
html.i18n-pending [data-i18n-data-update-label],
html.i18n-pending [data-i18n-title],
html.i18n-pending [data-i18n-alt],
html.i18n-pending [data-i18n-content]{
  visibility:hidden!important;
}
html.i18n-ready [data-i18n-key],
html.i18n-ready [data-i18n-placeholder],
html.i18n-ready [data-i18n-aria-label],
html.i18n-ready [data-i18n-data-tooltip],
html.i18n-ready [data-i18n-data-placeholder],
html.i18n-ready [data-i18n-data-update-label],
html.i18n-ready [data-i18n-title],
html.i18n-ready [data-i18n-alt],
html.i18n-ready [data-i18n-content]{
  visibility:visible;
}
@media (min-width:1025px){
  body:has(#welcome:not([hidden])){
    height:100vh;
    height:100dvh;
    overflow:hidden!important;
  }
  #welcome:not([hidden]){
    height:100vh;
    height:100dvh;
    min-height:0!important;
    overflow:hidden!important;
  }
  #welcome:not([hidden]) .welcome-stage,
  #welcome:not([hidden]) .welcome-story{
    min-height:0!important;
    height:100%;
    box-sizing:border-box;
  }
}

/* compact hourly panel footer spacing */
.hourly-panel{
  block-size:fit-content!important;
  padding-bottom:9px!important;
}
.hourly-panel .hourly-strip{
  margin-bottom:0!important;
  padding-bottom:0!important;
}
@media (max-width:780px){
  .hourly-panel{padding-bottom:9px!important}
}


/* larger hourly cards and tighter panel */
.hourly-panel{
  padding-bottom:6px!important;
}
.hourly-panel .hourly-strip{
  grid-auto-columns:minmax(108px,1fr)!important;
  align-items:stretch!important;
  gap:12px!important;
  margin-top:17px!important;
  padding-bottom:0!important;
}
.hourly-panel .hour-card{
  min-height:186px!important;
  padding:16px 11px 14px!important;
  border-radius:18px!important;
}
.hourly-panel .hour-card .weather-svg{
  width:50px!important;
  height:46px!important;
}
.hourly-panel .hour-card strong{font-size:18px!important}
.hourly-panel .hour-card .mini-pill,
.hourly-panel .hour-card button,
.hourly-panel .hour-card .button,
.hourly-panel .hour-card .ghost-button{
  min-height:46px!important;
}
@media (max-width:780px){
  .hourly-panel{padding-bottom:8px!important}
  .hourly-panel .hourly-strip{grid-auto-columns:minmax(102px,1fr)!important;gap:10px!important}
  .hourly-panel .hour-card{min-height:174px!important;padding:14px 10px 12px!important}
}


/* short desktop login: outer stage padding only */
@media (max-height:760px) and (min-width:901px){
  .welcome-stage{
    padding:12px 22px!important;
  }
}


/* privacy center aligned right in login and app */
.privacy-center-button{
  left:auto!important;
  right:18px!important;
}
@media (max-width:900px){
  .privacy-center-button{
    left:auto!important;
    right:12px!important;
  }
}




/* hourly panel follows the grid flow, without overlap */
@media (min-width:1025px){
  .home-grid{
    align-items:stretch!important;
  }
  .hourly-panel{
    align-self:stretch!important;
    height:100%!important;
    min-height:0!important;
    display:flex!important;
    flex-direction:column!important;
    padding-bottom:18px!important;
  }
  .hourly-panel>.panel-title{
    flex:0 0 auto!important;
  }
  .hourly-panel .hourly-strip{
    flex:1 1 auto!important;
    min-height:0!important;
    align-items:stretch!important;
    margin-bottom:0!important;
    padding-bottom:0!important;
  }
  .hourly-panel .hour-card{
    height:auto!important;
    min-height:240px!important;
    align-self:stretch!important;
  }
  .chart-preview-panel{
    margin-top:0!important;
  }
}


/* floating privacy and assistant controls aligned */
.privacy-center-button{
  left:18px!important;
  right:auto!important;
  bottom:18px!important;
}
.assistant-center-button{
  left:auto!important;
  right:18px!important;
  bottom:18px!important;
}
@media(max-width:900px){
  .privacy-center-button{
    left:12px!important;
    right:auto!important;
    bottom:calc(var(--mobile-nav-h) + var(--safe-bottom) + 12px)!important;
  }
  .assistant-center-button{
    left:auto!important;
    right:12px!important;
    bottom:calc(var(--mobile-nav-h) + var(--safe-bottom) + 12px)!important;
  }
}

/* 17.4.2 — OTP spacing, compact header and profile actions */
.otp-sent-note .otp-sent-copy{display:flex;min-width:0;flex-direction:column;align-items:flex-start;gap:4px}
.otp-sent-note .otp-sent-copy strong{display:block;max-width:100%;overflow-wrap:anywhere;color:var(--text);font-weight:800}
.profile-head>div{min-width:0}.profile-head .profile-email{margin:3px 0 0!important;color:var(--text)!important;font-size:.78rem!important;font-weight:700;overflow-wrap:anywhere}.profile-head .profile-method{display:block;margin-top:4px;color:var(--muted);font-size:.7rem}
.profile-dialog-body .profile-action-row.favorite-button{position:relative;border-radius:0;box-shadow:none}.profile-dialog-body .profile-action-row.favorite-button.active{color:#ffcf54;background:rgba(255,184,29,.065)}
#weather-app .topbar-actions{display:flex!important;grid-template-columns:none!important;gap:7px!important}
.mobile-nav{grid-template-columns:repeat(var(--mobile-nav-columns,4),minmax(0,1fr))!important}

/* 17.4.2 — forecast alerts are consolidated in the Settings notification center. */
.notification-current-alerts{display:grid;gap:14px;padding:16px;border:1px solid var(--border);border-radius:20px;background:color-mix(in srgb,var(--panel) 78%,transparent)}
.notification-current-alerts .alerts-summary-card{margin:0}
.notification-current-alerts .alert-monitor-panel,.notification-current-alerts .alert-events-panel{padding:14px;border:1px solid var(--border);border-radius:16px;background:color-mix(in srgb,var(--panel) 78%,transparent)}
.notification-current-alerts .alert-days-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
@media (max-width:720px){.notification-current-alerts{padding:12px}.notification-current-alerts .alert-days-grid{grid-template-columns:1fr 1fr}}

/* 17.4.2 — settings lives only inside Profile; topbar keeps the profile control only. */
#weather-app .topbar-actions{display:flex!important;grid-template-columns:none!important;justify-content:flex-end!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}


/* 17.4.2 — layout consistency, profile notification access and expandable history */
.pages-wrap{padding-top:30px!important;padding-bottom:30px!important}
.profile-button .profile-notification-badge{
  position:absolute;z-index:4;right:-7px;top:-7px;min-width:20px;height:20px;padding:0 5px;
  display:grid;place-items:center;border:2px solid #07162d;border-radius:999px;
  background:linear-gradient(145deg,#ff5571,#ff7a58);color:#fff;font:900 10px/1 Inter,system-ui,sans-serif;
  box-shadow:0 5px 14px rgba(255,75,105,.34);cursor:pointer;pointer-events:auto
}
.profile-button .profile-notification-badge[hidden]{display:none!important}
.profile-button .profile-notification-badge:hover{filter:brightness(1.1)}

.history-table{min-width:940px}
.history-table-row{grid-template-columns:minmax(170px,1.2fr) minmax(180px,1.35fr) minmax(125px,.8fr) minmax(115px,.75fr) minmax(160px,1fr) 42px!important}
.history-table-row.expanded{background:rgba(54,161,238,.06)}
.history-row-toggle{
  width:38px;height:38px;display:grid;place-items:center;justify-self:end;border:1px solid var(--line);
  border-radius:11px;background:var(--surface-faint);color:#91abc6;cursor:pointer;transition:.18s ease
}
.history-row-toggle:hover,.history-row-toggle:focus-visible{border-color:rgba(79,199,255,.42);color:#d9f6ff;outline:0}
.history-row-toggle svg{width:15px;height:15px;transform:rotate(90deg);transition:transform .2s ease}
.history-row-toggle[aria-expanded="true"] svg{transform:rotate(-90deg)}
.history-row-details{
  grid-column:1/-1;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;
  width:100%;min-width:0;padding:2px 0 15px
}
.history-row-details[hidden]{display:none!important}
.history-row-details span{min-width:0;padding:11px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-faint)}
.history-row-details small,.history-row-details strong{display:block;min-width:0}
.history-row-details small{margin-bottom:4px;color:var(--muted);font-size:.66rem}
.history-row-details strong{font-size:.78rem;white-space:normal;overflow-wrap:anywhere}

.assistant-dialog .assistant-form{
  display:grid!important;grid-template-columns:minmax(0,1fr) 44px auto!important;gap:8px!important;align-items:center!important
}
.assistant-dialog .assistant-clear-icon{
  width:44px!important;min-width:44px!important;height:44px!important;min-height:44px!important;
  margin:0!important;border-radius:13px!important;color:#ff8294!important
}
.assistant-dialog .assistant-clear-icon svg{width:19px!important;height:19px!important}
.assistant-dialog #assistant-send{height:44px!important;min-height:44px!important;margin:0!important;white-space:nowrap}

@media(max-width:780px){
  .pages-wrap{padding-top:18px!important;padding-bottom:calc(var(--mobile-nav-h) + var(--safe-bottom) + 18px)!important}
}
@media(max-width:720px){
  .history-table{min-width:0!important}
  .history-table-row:not(.history-table-head){grid-template-columns:minmax(0,1fr) 42px!important}
  .history-table-row:not(.history-table-head)>span{grid-column:1!important}
  .history-row-toggle{grid-column:2!important;grid-row:1!important;align-self:start!important}
  .history-row-details{grid-column:1/-1!important;grid-template-columns:1fr 1fr!important}
}
@media(max-width:600px){
  .assistant-dialog .assistant-form{grid-template-columns:minmax(0,1fr) 42px!important}
  .assistant-dialog .assistant-clear-icon{width:42px!important;min-width:42px!important;height:42px!important;min-height:42px!important}
  .assistant-dialog #assistant-send{grid-column:1/-1!important;width:100%!important}
}
@media(max-width:420px){
  .history-table-row:not(.history-table-head){grid-template-columns:1fr 40px!important}
  .history-row-details{grid-template-columns:1fr!important}
}
.profile-button .profile-notification-badge svg{width:11px;height:11px;fill:none;stroke:currentColor;stroke-width:2}
.profile-button .profile-notification-badge:not(.has-notifications){background:linear-gradient(145deg,#1b9de8,#6b67ed);box-shadow:0 5px 14px rgba(56,129,235,.28)}

/* 18.5.10 — charts: keep point interaction available after layout/overlay changes */
.chart-wrap canvas,
.mini-chart-wrap canvas,
.detail-chart-wrap canvas,
.detail-motion-chart canvas,
.history-chart-wrap canvas{
  position:relative;
  z-index:5!important;
  pointer-events:auto!important;
}

/* 18.5.10 — interactive charts: hover/click/tap must always reach the canvas/proxy. */
.chart-wrap,.mini-chart-wrap,.detail-chart-wrap,.detail-motion-chart,.history-chart-wrap{
  position:relative!important;isolation:isolate;
}
.chart-wrap::before,.chart-wrap::after,
.mini-chart-wrap::before,.mini-chart-wrap::after,
.detail-chart-wrap::before,.detail-chart-wrap::after,
.detail-motion-chart::before,.detail-motion-chart::after,
.history-chart-wrap::before,.history-chart-wrap::after{
  pointer-events:none!important;
}
.chart-wrap canvas,.mini-chart-wrap canvas,.detail-chart-wrap canvas,.detail-motion-chart canvas,.history-chart-wrap canvas{
  position:relative!important;z-index:10!important;pointer-events:auto!important;touch-action:pan-y!important;
}
.chart-selection-marker{z-index:14!important;pointer-events:none!important}
.chart-tooltip{z-index:10000!important}

/* 18.5.10 — optical-flow radar prediction. */
.radar-predictive-panel{margin-top:16px;padding:24px;overflow:hidden}
.radar-predictive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:20px}
.radar-predictive-grid>div{min-width:0;padding:15px 16px;border:1px solid rgba(255,255,255,.06);border-radius:16px;background:rgba(255,255,255,.025)}
.radar-predictive-grid small,.radar-predictive-grid strong{display:block}
.radar-predictive-grid small{color:#718ba8;font-size:.72rem}
.radar-predictive-grid strong{margin-top:7px;color:#eef8ff;font:800 1rem/1.25 Manrope,sans-serif;overflow-wrap:anywhere}
.radar-predictive-track{display:grid;grid-template-columns:repeat(19,minmax(34px,1fr));gap:6px;margin-top:18px;padding:12px 4px 6px;overflow-x:auto;scrollbar-width:thin}
.radar-motion-point{min-width:34px;text-align:center;color:#7e98b4;font-size:.66rem}
.radar-motion-point i{width:100%;height:42px;display:flex;align-items:flex-end;justify-content:center;margin-bottom:6px;border-radius:9px;background:rgba(44,133,217,.05)}
.radar-motion-point i::after{content:"";width:70%;height:calc(3px + var(--rain-level,0) * 34px);border-radius:7px;background:linear-gradient(180deg,#74edff,#3c8dff 62%,#7a65ff);box-shadow:0 0 14px rgba(76,169,255,calc(.08 + var(--rain-level,0) * .28))}
.radar-predictive-copy{margin:14px 0 0;color:#829bb6;font-size:.8rem;line-height:1.65}

/* 18.5.10 — adaptive ensemble + proactive AI use the same card language as the suite. */
.ensemble-model-card{grid-column:1/-1;border-color:rgba(91,222,202,.2);background:radial-gradient(circle at 85% 0,rgba(53,222,190,.11),transparent 34%),rgba(255,255,255,.027)}
.ensemble-model-card .model-mark{color:#79f2d9}
.ensemble-weight-copy{margin-top:14px;padding:10px 12px;border:1px solid rgba(90,219,204,.11);border-radius:12px;background:rgba(40,202,180,.045);color:#8eabbf;font-size:.72rem;line-height:1.5;overflow-wrap:anywhere}
.proactive-ai-panel{margin-top:20px;padding:26px;overflow:visible}
.proactive-settings{position:relative;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:22px}
.proactive-settings .briefing-toggle{flex:1;min-width:0}
.proactive-output{margin-top:18px}
.proactive-meta{display:block;margin-top:9px;color:#708ba8;font-size:.68rem}

@media(max-width:900px){
  .radar-predictive-grid{grid-template-columns:1fr 1fr}
  .radar-predictive-grid>div:last-child{grid-column:1/-1}
  .proactive-settings{align-items:stretch;flex-direction:column}
  .proactive-settings .soft-badge{align-self:flex-start}
}
@media(max-width:600px){
  .radar-predictive-panel,.proactive-ai-panel{padding:18px}
  .radar-predictive-grid{grid-template-columns:1fr}
  .radar-predictive-grid>div:last-child{grid-column:auto}
  .radar-predictive-track{grid-template-columns:repeat(19,42px)}
  .ensemble-model-card{grid-column:auto}
}


/* 18.5.10 — Firefox-safe chart interaction proxy.
   Canvas drawing stays purely visual; this transparent layer receives
   mouse/pointer/touch/keyboard events consistently on Firefox and Chromium. */
.chart-interaction-layer{
  position:absolute!important;
  z-index:18!important;
  display:block!important;
  background:transparent!important;
  pointer-events:auto!important;
  touch-action:pan-y!important;
  -webkit-tap-highlight-color:transparent;
  outline:none;
}
.chart-interaction-layer:focus-visible{
  border-radius:10px;
  box-shadow:0 0 0 2px rgba(72,209,255,.42);
}
.chart-wrap canvas,.mini-chart-wrap canvas,.detail-chart-wrap canvas,.detail-motion-chart canvas,.history-chart-wrap canvas{
  pointer-events:none!important;
}

/* 18.5.10 — mobile navigation geometry: audience-aware destinations, always centered. */
@media(max-width:900px){
  .mobile-nav{
    --mobile-nav-columns:3;
    grid-template-columns:repeat(var(--mobile-nav-columns,3),minmax(0,1fr))!important;
    align-items:stretch!important;
    padding-inline:max(10px,env(safe-area-inset-left)) max(10px,env(safe-area-inset-right))!important;
  }
  .mobile-nav-link{min-width:0!important;width:100%!important;place-self:stretch!important;justify-content:center!important;align-items:center!important;text-align:center!important}
  .mobile-nav-link>svg,.mobile-icon-wrap{width:24px!important;height:24px!important;display:grid!important;place-items:center!important;margin-inline:auto!important}
  .mobile-nav-link>svg,.mobile-icon-wrap svg{width:21px!important;height:21px!important}
  .mobile-icon-wrap b{right:-9px!important;top:-7px!important}
}

/* 18.5.10 — mobile navigation is audience-aware: guest 3 items, authenticated 4. */
.mobile-nav-link[hidden]{display:none!important}
@media (max-width:980px){
  .mobile-nav{grid-template-columns:repeat(var(--mobile-nav-columns,3),minmax(0,1fr))!important}
  .mobile-nav-link span:last-child{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
}

@media(max-width:980px){.mobile-nav-link{font-size:clamp(9px,2.4vw,11px)!important;font-weight:750!important}}

/* 18.5.10 Safari touch focus guard: prevents a guest-login tap from falling through to the city search during view transition. */
html.mobile-focus-guard #location-view input,html.mobile-focus-guard #location-view textarea,html.mobile-focus-guard #location-view [contenteditable="true"]{pointer-events:none!important;}

/* 18.5.10 — privacy receipt before a full MeteoNexa local-data reset. */
.cache-privacy-dialog{width:min(580px,calc(100vw - 30px))!important}
.cache-privacy-dialog>form{padding:36px!important}
.cache-privacy-icon{color:var(--accent,#2ad1b9)}
.cache-privacy-note{margin-top:14px}
.cache-privacy-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.cache-privacy-actions .button{min-height:48px}
@media(max-width:700px){
  .cache-privacy-dialog{width:calc(100vw - 20px)!important;max-height:calc(100dvh - 20px)!important}
  .cache-privacy-dialog>form{padding:24px 18px 20px!important}
  .cache-privacy-actions{display:grid;grid-template-columns:1fr!important}
  .cache-privacy-actions .button{width:100%!important}
}

/* 18.5.10 product wordmark: the product name is MeteoNexa in every locale. */
.brand-wordmark{white-space:nowrap}.brand-wordmark b{color:#1c98ff;font-weight:800}.auth-logo-wrap .brand-wordmark b{color:#1595ff}
/* 18.5.10 guest privacy receipt: mailbox verification */
#cache-privacy-code-step[hidden],#cache-privacy-email-step[hidden]{display:none!important}
#cache-receipt-code{letter-spacing:.28em;text-align:center;font-weight:850;font-variant-numeric:tabular-nums}
.cache-privacy-verification-copy{margin:0 0 16px;color:var(--text-soft,#7891a8);line-height:1.55}

/* 18.5.10 — atomic i18n first paint: never expose raw translation keys */
.i18n-boot-splash{
  position:fixed; inset:0; z-index:9000; display:grid; place-items:center;
  background:var(--bg,#06152f); opacity:0; visibility:hidden; pointer-events:none;
  transition:opacity .16s ease,visibility .16s ease;
}
.i18n-boot-brand{display:grid;justify-items:center;gap:18px;transform:translateY(-2vh)}
.i18n-boot-brand>img{width:72px;height:72px;object-fit:contain;filter:drop-shadow(0 18px 38px rgba(0,0,0,.24))}
.i18n-boot-brand>.brand-wordmark{font-size:clamp(22px,4vw,30px);letter-spacing:.04em}
.i18n-boot-pulse{display:flex;align-items:center;gap:7px;height:14px}
.i18n-boot-pulse i{width:7px;height:7px;border-radius:999px;background:currentColor;opacity:.28;animation:i18nBootPulse 1s ease-in-out infinite}
.i18n-boot-pulse i:nth-child(2){animation-delay:.14s}.i18n-boot-pulse i:nth-child(3){animation-delay:.28s}
@keyframes i18nBootPulse{0%,100%{transform:translateY(0);opacity:.24}50%{transform:translateY(-5px);opacity:.9}}
html.i18n-pending .i18n-boot-splash{opacity:1;visibility:visible}
html.i18n-pending #welcome,
html.i18n-pending #weather-app,
html.i18n-pending .privacy-center-button,
html.i18n-pending .network-banner,
html.i18n-pending .cookie-consent,
html.i18n-pending .toast-region,
html.i18n-pending dialog{visibility:hidden!important}
html.i18n-pending .global-loader{opacity:0!important;visibility:hidden!important}
html.i18n-ready .i18n-boot-splash{opacity:0;visibility:hidden}
@media (prefers-reduced-motion:reduce){.i18n-boot-pulse i{animation:none!important;opacity:.55}}

/* 18.5.10 — authenticated device/access history */
.devices-access-dialog{width:min(820px,calc(100vw - 30px))!important}
.devices-access-summary{display:flex;flex-wrap:wrap;gap:10px;margin:4px 0 16px}
.devices-access-summary .soft-badge{min-height:34px;display:inline-flex;align-items:center;padding:0 12px}
.devices-access-list{display:grid;gap:14px}
.devices-access-section{display:grid;gap:10px}
.devices-access-section-title{margin:0;color:#a9c9ea;font-size:.76rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.devices-access-section-grid{display:grid;gap:12px}
.devices-history-disclosure{border-top:1px solid rgba(109,190,255,.12);padding-top:4px}
.devices-history-disclosure>summary{min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;list-style:none;color:#92b5d8;font-size:.78rem;font-weight:850;letter-spacing:.02em}
.devices-history-disclosure>summary::-webkit-details-marker{display:none}
.devices-history-disclosure>summary::after{content:"⌄";font-size:1rem;line-height:1;transition:transform .18s ease}
.devices-history-disclosure[open]>summary::after{transform:rotate(180deg)}
.devices-history-disclosure .devices-access-section-grid{padding-top:8px}
.device-access-card{padding:16px;border:1px solid rgba(109,190,255,.16);border-radius:18px;background:rgba(255,255,255,.035);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:start}
.device-access-card.is-current{border-color:rgba(60,211,177,.38);box-shadow:inset 0 0 0 1px rgba(60,211,177,.08)}
.device-access-card.is-ended{opacity:.74}
.device-access-head{display:flex;align-items:center;gap:10px;min-width:0}
.device-access-icon{width:42px;height:42px;display:grid;place-items:center;flex:0 0 auto;border-radius:14px;background:rgba(82,190,255,.10);color:#62c9ff}
.device-access-icon svg{width:21px;height:21px}
.device-access-title{min-width:0}
.device-access-title strong,.device-access-title small{display:block}
.device-access-title strong{font-size:.9rem;line-height:1.25}
.device-access-title small{margin-top:3px;color:#718aa7;font-size:.72rem;line-height:1.35}
.device-access-meta{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.device-access-meta span{min-width:0;padding:9px 10px;border-radius:12px;background:rgba(255,255,255,.028);color:#8298b2;font-size:.68rem;line-height:1.35;overflow-wrap:anywhere}
.device-access-meta b{display:block;margin-bottom:2px;color:#c5d5e7;font-size:.65rem}
.device-access-actions{display:flex;align-items:center;gap:8px}
.device-access-actions .button{min-height:38px;padding-inline:12px;white-space:nowrap}
.devices-access-empty{padding:26px 14px;border:1px dashed rgba(109,190,255,.18);border-radius:16px;text-align:center;color:#7088a5}
.devices-access-footer{gap:10px}
@media(max-width:760px){
  .devices-access-dialog{width:calc(100vw - 20px)!important;max-height:calc(100dvh - 18px)!important}
  .device-access-card{grid-template-columns:1fr}
  .device-access-actions{grid-column:1/-1;justify-content:flex-end}
  .device-access-meta{grid-template-columns:repeat(2,minmax(0,1fr))}
  .devices-access-footer{display:grid!important;grid-template-columns:1fr!important}
  .devices-access-footer .button{width:100%!important}
}
@media(max-width:460px){
  .device-access-meta{grid-template-columns:1fr}
  .device-access-actions{justify-content:stretch}
  .device-access-actions .button{width:100%}
}


/* MeteoNexa 18.9.7.4 — notification center mobile/tablet containment and device-history actions. */
.profile-notification-badge{display:none!important}
html.mobile-focus-guard #onboarding-city{pointer-events:none!important;user-select:none!important;-webkit-user-select:none!important}

@media(max-width:900px){
  .notification-dialog{width:calc(100vw - 14px)!important;max-width:calc(100vw - 14px)!important;max-height:calc(100dvh - 14px)!important}
  .notification-dialog>form.dialog-layout{width:100%!important;max-width:100%!important;max-height:calc(100dvh - 14px)!important}
  .notification-dialog .dialog-body{width:100%!important;max-width:100%!important;min-width:0!important;overflow-x:hidden!important;padding-inline:16px!important}
  .notification-dialog .dialog-body>*{width:100%;max-width:100%;min-width:0;box-sizing:border-box}
  .notification-current-alerts,.notification-alert-monitor,.notification-alert-events,.smart-alert-preferences,.notification-thresholds{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;overflow:hidden!important}
  .notification-current-alerts .panel-title,.notification-dialog .thresholds-heading{min-width:0!important}
  .notification-current-alerts .panel-title>div,.notification-dialog .thresholds-heading>div{min-width:0!important;max-width:100%!important}
  .notification-current-alerts h2,.notification-current-alerts h3,.notification-current-alerts p,.notification-dialog .thresholds-heading h2,.notification-dialog .thresholds-heading h3,.notification-dialog .thresholds-heading p{max-width:100%!important;white-space:normal!important;overflow-wrap:anywhere!important}
  .notification-current-alerts .alert-days-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;overflow:visible!important;scroll-snap-type:none!important;padding-bottom:0!important}
  .notification-current-alerts .alert-day-card{width:100%!important;min-width:0!important;max-width:100%!important;scroll-snap-align:none!important}
  .notification-current-alerts .alerts-list{width:100%!important;max-width:100%!important;min-width:0!important;overflow:hidden!important}
  .notification-current-alerts .alert-card{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;grid-template-columns:44px minmax(0,1fr)!important}
  .notification-current-alerts .alert-card>*{min-width:0!important;max-width:100%!important}
  .notification-current-alerts .alert-card h3,.notification-current-alerts .alert-card p{white-space:normal!important;overflow:visible!important;text-overflow:clip!important;overflow-wrap:anywhere!important;word-break:normal!important}
  .notification-current-alerts .alert-when{grid-column:2!important;justify-self:start!important;max-width:100%!important;white-space:normal!important}
  .notification-current-alerts .alerts-summary-card{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important}
  .notification-current-alerts .alerts-summary-copy,.notification-current-alerts .alerts-summary-stats{min-width:0!important;max-width:100%!important}
  .notification-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%!important;min-width:0!important}
  .notification-status-grid article{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important}
  .smart-alert-toggle-grid{width:100%!important;min-width:0!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .smart-event-toggle{width:100%!important;min-width:0!important;max-width:100%!important}
  .smart-event-toggle>span{min-width:0!important;white-space:normal!important;overflow-wrap:anywhere!important}
  .smart-alert-options{width:100%!important;min-width:0!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .notification-thresholds .threshold-row{min-width:0!important}
  .notification-thresholds .threshold-row>span{min-width:0!important}
  .notification-thresholds .threshold-row>span>span{min-width:0!important}
}
@media(max-width:620px){
  .notification-dialog{width:calc(100vw - 10px)!important;max-width:calc(100vw - 10px)!important;max-height:calc(100dvh - 10px)!important;border-radius:20px!important}
  .notification-dialog>form.dialog-layout{max-height:calc(100dvh - 10px)!important;border-radius:19px!important}
  .notification-dialog-header{grid-template-columns:42px minmax(0,1fr) 36px!important;gap:9px!important;padding:16px 12px 14px!important}
  .notification-dialog-header .dialog-header-copy h2{font-size:1.16rem!important;line-height:1.13!important}
  .notification-dialog-header .dialog-header-copy p{font-size:.72rem!important;line-height:1.42!important}
  .notification-dialog .dialog-body{padding:13px 12px!important}
  .notification-current-alerts{padding:10px!important;gap:11px!important;border-radius:17px!important}
  .notification-current-alerts .alert-monitor-panel,.notification-current-alerts .alert-events-panel{padding:12px!important;border-radius:15px!important}
  .notification-current-alerts .alert-days-grid{grid-template-columns:1fr!important}
  .notification-current-alerts .alert-day-card{padding:14px!important}
  .notification-current-alerts .alert-day-metrics{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .notification-current-alerts .alert-day-metrics span{min-width:0!important;padding-inline:4px!important}
  .notification-current-alerts .alert-day-metrics b,.notification-current-alerts .alert-day-metrics small{white-space:normal!important;text-overflow:clip!important;overflow:visible!important;overflow-wrap:anywhere!important}
  .notification-current-alerts .alert-card{grid-template-columns:40px minmax(0,1fr)!important;gap:10px!important;padding:14px 12px!important;min-height:0!important}
  .notification-current-alerts .alert-card-icon{width:40px!important;height:40px!important;border-radius:13px!important}
  .notification-current-alerts .alert-card-icon svg{width:21px!important;height:21px!important}
  .notification-current-alerts .alert-card h3{font-size:.9rem!important;line-height:1.25!important}
  .notification-current-alerts .alert-card p{font-size:.76rem!important;line-height:1.45!important}
  .notification-current-alerts .alerts-summary-card{grid-template-columns:48px minmax(0,1fr)!important;grid-template-areas:"icon copy" "stats stats"!important;padding:14px!important;gap:11px!important}
  .notification-current-alerts .alerts-summary-icon{width:48px!important;height:48px!important;border-radius:15px!important}
  .notification-current-alerts .alerts-summary-copy h3,.notification-current-alerts .alerts-summary-copy h2{font-size:1.08rem!important;line-height:1.2!important}
  .notification-current-alerts .alerts-summary-stats{grid-template-columns:1fr!important}
  .notification-status-grid{grid-template-columns:1fr!important}
  .notification-preferences{grid-template-columns:1fr!important}
  .smart-alert-toggle-grid,.smart-alert-options{grid-template-columns:1fr!important}
  .smart-alert-preferences{padding:13px!important;border-radius:15px!important}
  .notification-thresholds{padding:13px!important}
  .notification-dialog-actions{padding:10px!important}
  .notification-dialog-actions .button{width:100%!important}
}

/* MeteoNexa 18.9.7.4 — privacy-safe dynamic login weather.
   The scene is derived only from the last successful weather snapshot already
   stored in this browser. Login itself never requests geolocation or a weather
   provider, so opening the app cannot disclose a location before access. */
#welcome .stage-weather::after{
  content:"";position:absolute;inset:-18%;pointer-events:none;opacity:0;
  transition:opacity .45s ease;background-size:28px 28px;will-change:transform,opacity
}
#welcome .stage-sun,#welcome .stage-cloud,#welcome .stage-star{transition:opacity .45s ease,filter .45s ease,background .45s ease,box-shadow .45s ease}
#welcome[data-login-weather="neutral"] .stage-sun{opacity:0;filter:saturate(.35)}
#welcome[data-login-weather="neutral"] .stage-cloud{opacity:.58}
#welcome[data-login-weather="cloud"] .stage-sun{opacity:.22;filter:saturate(.55) blur(.2px)}
#welcome[data-login-weather="cloud"] .stage-cloud{opacity:.86;filter:brightness(.82)}
#welcome[data-login-weather="rain"] .stage-sun,
#welcome[data-login-weather="storm"] .stage-sun,
#welcome[data-login-weather="snow"] .stage-sun,
#welcome[data-login-weather="fog"] .stage-sun{opacity:0}
#welcome[data-login-weather="rain"] .stage-cloud,
#welcome[data-login-weather="storm"] .stage-cloud{opacity:.94;filter:brightness(.62) saturate(.75)}
#welcome[data-login-weather="rain"] .welcome-stage,
#welcome[data-login-weather="storm"] .welcome-stage{background:radial-gradient(circle at 48% 34%,rgba(42,105,159,.28),transparent 40%),linear-gradient(160deg,rgba(7,27,52,.78),rgba(2,10,24,.46))}
#welcome[data-login-weather="rain"] .stage-weather::after,
#welcome[data-login-weather="storm"] .stage-weather::after{
  opacity:.52;background-image:repeating-linear-gradient(116deg,transparent 0 16px,rgba(114,205,255,.5) 17px 18px,transparent 19px 31px);
  background-size:38px 38px;animation:loginRainFall 1.15s linear infinite
}
#welcome[data-login-weather="storm"] .stage-weather{animation:loginStormFlash 6.4s steps(1,end) infinite}
#welcome[data-login-weather="snow"] .welcome-stage{background:radial-gradient(circle at 52% 38%,rgba(158,205,237,.2),transparent 42%),linear-gradient(160deg,rgba(21,52,79,.68),rgba(5,18,36,.38))}
#welcome[data-login-weather="snow"] .stage-cloud{opacity:.82;filter:brightness(1.05) saturate(.45)}
#welcome[data-login-weather="snow"] .stage-weather::after{
  opacity:.82;background-image:radial-gradient(circle,rgba(242,251,255,.92) 0 2px,transparent 2.4px),radial-gradient(circle,rgba(211,239,255,.72) 0 1.4px,transparent 1.8px);
  background-position:0 0,17px 22px;background-size:36px 42px,44px 52px;animation:loginSnowFall 8s linear infinite
}
#welcome[data-login-weather="fog"] .welcome-stage{background:linear-gradient(160deg,rgba(42,66,84,.62),rgba(8,24,39,.38))}
#welcome[data-login-weather="fog"] .stage-cloud{opacity:.42;filter:blur(2px) saturate(.35)}
#welcome[data-login-weather="fog"] .stage-weather::after{
  opacity:.72;background:repeating-linear-gradient(0deg,transparent 0 42px,rgba(208,228,237,.16) 43px 58px,transparent 59px 92px);filter:blur(7px);animation:loginFogDrift 12s ease-in-out infinite alternate
}
#welcome[data-login-weather="night"] .welcome-stage,
#welcome[data-login-weather="night-cloud"] .welcome-stage{background:radial-gradient(circle at 50% 40%,rgba(35,66,139,.22),transparent 38%),linear-gradient(160deg,rgba(4,14,40,.92),rgba(1,7,22,.72))}
#welcome[data-login-weather="night"] .stage-sun,
#welcome[data-login-weather="night-cloud"] .stage-sun{
  opacity:.92;width:76px;height:76px;background:radial-gradient(circle at 35% 30%,#f7fbff,#bad8ed 62%,#6f97b9);box-shadow:0 0 58px rgba(143,201,239,.2)
}
#welcome[data-login-weather="night"] .stage-sun::after,
#welcome[data-login-weather="night-cloud"] .stage-sun::after{border-color:rgba(162,211,242,.14);animation:none}
#welcome[data-login-weather="night"] .stage-star,
#welcome[data-login-weather="night-cloud"] .stage-star{opacity:.92;filter:drop-shadow(0 0 6px rgba(181,220,255,.75))}
#welcome[data-login-weather="night"] .stage-cloud{opacity:.18}
#welcome[data-login-weather="night-cloud"] .stage-cloud{opacity:.68;filter:brightness(.48) saturate(.55)}
@keyframes loginRainFall{from{transform:translate3d(-4%,-8%,0)}to{transform:translate3d(5%,14%,0)}}
@keyframes loginSnowFall{from{transform:translate3d(-2%,-8%,0)}to{transform:translate3d(4%,12%,0)}}
@keyframes loginFogDrift{from{transform:translateX(-3%)}to{transform:translateX(4%)}}
@keyframes loginStormFlash{0%,87%,90%,100%{filter:none}88%{filter:brightness(1.7)}89%{filter:brightness(.82)}91%{filter:brightness(1.35)}}
@media (prefers-reduced-motion:reduce){#welcome .stage-weather::after,#welcome[data-login-weather="storm"] .stage-weather{animation:none!important}}

/* 18.9.7.4 — official warning evidence directly in Panoramica. */
.home-official-alert{position:relative;z-index:4;width:100%;box-sizing:border-box;margin:0 0 18px;padding:15px 18px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;border:1px solid rgba(255,190,75,.34);border-radius:20px;background:linear-gradient(135deg,rgba(72,47,8,.76),rgba(8,24,48,.92));box-shadow:0 18px 45px rgba(0,0,0,.18);overflow:hidden}
.home-official-alert[hidden]{display:none!important}.home-official-alert:after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 8% 0,rgba(255,202,87,.12),transparent 34%)}
.home-official-alert[data-severity="orange"]{border-color:rgba(255,145,64,.52);background:linear-gradient(135deg,rgba(78,35,9,.8),rgba(8,24,48,.94))}.home-official-alert[data-severity="red"]{border-color:rgba(255,91,108,.58);background:linear-gradient(135deg,rgba(75,18,28,.82),rgba(8,24,48,.94))}
.home-official-alert-icon{position:relative;z-index:1;width:46px;height:46px;display:grid;place-items:center;border-radius:15px;background:rgba(255,192,66,.12);color:#ffd36f}.home-official-alert[data-severity="orange"] .home-official-alert-icon{background:rgba(255,139,58,.13);color:#ffad6c}.home-official-alert[data-severity="red"] .home-official-alert-icon{background:rgba(255,79,99,.13);color:#ff8391}.home-official-alert-icon svg{width:23px;height:23px}
.home-official-alert-copy{position:relative;z-index:1;min-width:0;display:grid;gap:3px}.home-official-alert-copy strong{font:800 clamp(.96rem,.18vw + .92rem,1.12rem)/1.3 Manrope,sans-serif;overflow-wrap:anywhere}.home-official-alert-copy p{margin:0;color:var(--text-soft);font-size:.82rem;line-height:1.5;overflow-wrap:anywhere}.home-official-alert-copy small{color:var(--muted);font-size:.7rem;line-height:1.4;overflow-wrap:anywhere}
.home-official-alert-action{position:relative;z-index:1;min-height:40px;padding:0 12px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid rgba(255,202,101,.2);border-radius:12px;background:rgba(255,255,255,.04);color:var(--text);font:800 .74rem/1 Manrope,sans-serif;cursor:pointer;white-space:nowrap}.home-official-alert-action:hover{background:rgba(255,255,255,.08);transform:translateY(-1px)}.home-official-alert-action svg{width:14px;height:14px}
@media(max-width:720px){.home-official-alert{grid-template-columns:auto minmax(0,1fr);padding:14px;margin-bottom:13px}.home-official-alert-action{grid-column:1/-1;width:100%}}
@media(max-width:430px){.home-official-alert{gap:11px}.home-official-alert-icon{width:40px;height:40px;border-radius:13px}.home-official-alert-copy p{font-size:.76rem}}

/* MeteoNexa 18.9.7.4 — guest public alerts + mobile onboarding hardening. */
.notification-dialog[data-guest-public="true"] .notification-status-grid,
.notification-dialog[data-guest-public="true"] #notification-platform-guide,
.notification-dialog[data-guest-public="true"] .notification-preferences,
.notification-dialog[data-guest-public="true"] .smart-alert-preferences,
.notification-dialog[data-guest-public="true"] .notification-thresholds,
.notification-dialog[data-guest-public="true"] .notification-scope-note,
.notification-dialog[data-guest-public="true"] .notification-dialog-actions{display:none!important}
.guest-public-alert-note{margin-bottom:12px!important}
.public-official-alert-card{display:grid;grid-template-columns:48px minmax(0,1fr);gap:12px;align-items:center;padding:15px 16px;margin-bottom:12px;border:1px solid var(--line);border-radius:17px;background:rgba(79,216,200,.055)}
.public-official-alert-card .public-official-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:15px;background:rgba(79,216,200,.1);color:#69e6ce}
.public-official-alert-card .public-official-icon svg{width:23px;height:23px}
.public-official-alert-card small{display:block;color:var(--muted);font-size:.67rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.public-official-alert-card strong{display:block;margin-top:4px;font-size:.98rem;line-height:1.25}
.public-official-alert-card p{margin:5px 0 0;color:var(--muted);font-size:.76rem;line-height:1.45;overflow-wrap:anywhere}
.public-official-alert-card.severity-yellow{border-color:rgba(242,194,72,.38);background:rgba(242,194,72,.07)}
.public-official-alert-card.severity-yellow .public-official-icon{background:rgba(242,194,72,.12);color:#f6cb61}
.public-official-alert-card.severity-orange{border-color:rgba(248,145,55,.42);background:rgba(248,145,55,.075)}
.public-official-alert-card.severity-orange .public-official-icon{background:rgba(248,145,55,.13);color:#ffad62}
.public-official-alert-card.severity-red{border-color:rgba(255,92,112,.42);background:rgba(255,92,112,.075)}
.public-official-alert-card.severity-red .public-official-icon{background:rgba(255,92,112,.13);color:#ff8494}
.device-history-delete{min-height:38px!important;height:38px!important;padding:0 11px!important;gap:7px!important;border-color:rgba(255,104,125,.24)!important;color:#ff9baa!important;background:rgba(255,91,112,.055)!important}
.device-history-delete svg{width:16px!important;height:16px!important}
.device-history-delete:hover,.device-history-delete:focus-visible{background:rgba(255,91,112,.12)!important;border-color:rgba(255,104,125,.42)!important}
.impact-preference-chip{transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease}
.impact-preference-chip:active{transform:scale(.97)}
.impact-grid[data-filtered="true"]{animation:impactPreferenceRefresh .18s ease-out}
@keyframes impactPreferenceRefresh{from{opacity:.72;transform:translateY(2px)}to{opacity:1;transform:none}}
#guest-login{touch-action:manipulation}
@media (max-width:900px),(pointer:coarse){
  #onboarding-city,#global-city-search,#command-city-search,.search-dialog input[type="search"]{font-size:16px!important;line-height:1.25!important}
  .onboarding-search input,.command-search input{font-size:16px!important}
}
@media(max-width:560px){
  .public-official-alert-card{grid-template-columns:42px minmax(0,1fr);padding:13px 12px}
  .public-official-alert-card .public-official-icon{width:42px;height:42px;border-radius:13px}
}

/* MeteoNexa 18.9.7.4 — guest Home official-warning parity. */
.home-official-alert[data-state="loading"],
.home-official-alert[data-state="clear"],
.home-official-alert[data-state="unavailable"]{border-color:rgba(82,194,181,.28);background:linear-gradient(135deg,rgba(11,58,67,.58),rgba(8,24,48,.92))}
.home-official-alert[data-state="loading"] .home-official-alert-icon,
.home-official-alert[data-state="clear"] .home-official-alert-icon,
.home-official-alert[data-state="unavailable"] .home-official-alert-icon{background:rgba(79,216,200,.10);color:#69e6ce}
.home-official-alert[data-state="loading"] .home-official-alert-icon svg{animation:homeOfficialPulse 1.15s ease-in-out infinite alternate}
@keyframes homeOfficialPulse{from{opacity:.48;transform:scale(.94)}to{opacity:1;transform:scale(1.04)}}
@media(prefers-reduced-motion:reduce){.home-official-alert[data-state="loading"] .home-official-alert-icon svg{animation:none!important}}
/* 18.9.7.4 — guest Panoramica official-alert continuity. */
.home-official-alert[data-severity="info"]{border-color:rgba(87,185,235,.30);background:linear-gradient(135deg,rgba(13,61,91,.72),rgba(8,24,48,.92))}
.home-official-alert[data-severity="info"] .home-official-alert-icon{background:rgba(75,190,230,.11);color:#76d8f5}
.home-official-alert[data-state="loading"] .home-official-alert-icon svg{animation:homeOfficialPulse 1.2s ease-in-out infinite}
@keyframes homeOfficialPulse{0%,100%{opacity:.48;transform:scale(.94)}50%{opacity:1;transform:scale(1)}}
@media (prefers-reduced-motion:reduce){.home-official-alert[data-state="loading"] .home-official-alert-icon svg{animation:none}}


/* 18.9.7.4 — feedback page and desktop alert-badge parity */
.nav-link>b[hidden],.mobile-icon-wrap b[hidden]{display:none!important}
.bug-report-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.7fr);gap:18px;align-items:start}
.bug-report-panel,.bug-report-info{padding:24px}
.bug-report-form-head{display:flex;align-items:center;gap:14px;margin-bottom:22px}.bug-report-form-head>div{min-width:0}.bug-report-form-head strong{display:block;font-size:1rem}.bug-report-form-head p,.bug-report-info>p{margin:5px 0 0;color:var(--muted);font-size:.82rem;line-height:1.6}
.bug-report-icon{width:48px;height:48px;display:grid;place-items:center;flex:0 0 auto;border:1px solid rgba(82,194,255,.2);border-radius:16px;background:rgba(46,159,255,.09);color:#63c9ff}.bug-report-icon svg{width:23px;height:23px}
.bug-report-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.bug-report-fields .field-label{display:grid;gap:8px}.bug-report-fields .field-label>span{font-size:.78rem;font-weight:760;color:var(--text)}.bug-report-fields input,.bug-report-fields textarea{width:100%;min-width:0;border:1px solid rgba(126,195,255,.16);border-radius:14px;background:rgba(2,14,31,.36);color:var(--text);outline:none;transition:border-color .18s,box-shadow .18s,background .18s}.bug-report-fields input{height:48px;padding:0 14px}.bug-report-fields textarea{padding:13px 14px;resize:vertical;line-height:1.55;font:inherit}.bug-report-fields input:focus,.bug-report-fields textarea:focus{border-color:rgba(67,188,255,.58);box-shadow:0 0 0 3px rgba(31,153,255,.1);background:rgba(5,23,46,.55)}.bug-field-full{grid-column:1/-1}
.bug-diagnostics-toggle{min-height:48px;display:flex;align-items:center;gap:11px;padding:9px 12px;border:1px solid rgba(126,195,255,.12);border-radius:14px;background:rgba(255,255,255,.025)}.bug-diagnostics-toggle>.meteo-switch{flex:0 0 auto}.bug-diagnostics-toggle>span{display:grid;gap:2px;min-width:0}.bug-diagnostics-toggle strong{font-size:.76rem}.bug-diagnostics-toggle small{color:var(--muted);font-size:.68rem;line-height:1.4}.bug-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}.bug-safety-note{margin-top:16px}.bug-report-actions{display:flex;justify-content:flex-end;margin-top:18px}.bug-report-actions .button{min-width:180px}.bug-report-info{position:sticky;top:calc(var(--topbar-h) + 18px)}.bug-report-info h2{margin:5px 0 7px;font-size:1.2rem}.bug-info-list{display:grid;gap:10px;margin:20px 0}.bug-info-list>div{display:flex;gap:11px;padding:12px;border:1px solid rgba(126,195,255,.1);border-radius:14px;background:rgba(255,255,255,.02)}.bug-info-list>div>svg{width:20px;height:20px;flex:0 0 auto;color:#65caff}.bug-info-list span{display:grid;gap:3px}.bug-info-list strong{font-size:.76rem}.bug-info-list small{color:var(--muted);font-size:.68rem;line-height:1.45}.bug-privacy-link{width:100%;justify-content:center}
@media(max-width:900px){.bug-report-grid{grid-template-columns:1fr}.bug-report-info{position:static}.bug-report-fields{grid-template-columns:1fr}.bug-field-full{grid-column:auto}}
@media(max-width:520px){.bug-report-panel,.bug-report-info{padding:18px}.bug-report-form-head{align-items:flex-start}.bug-report-actions .button{width:100%}}

/* MeteoNexa 18.9.7.4 — Bug report workspace, media dropzone and readable notifications */
#page-bug-report{overflow:visible}
#page-bug-report .bug-report-heading{margin-bottom:18px;align-items:end}
#page-bug-report .bug-report-heading h1{font-size:clamp(2.15rem,4.8vw,4.7rem);line-height:.98;letter-spacing:-.045em;margin:.12em 0 .22em}
#page-bug-report .bug-report-heading p{max-width:780px;font-size:clamp(.9rem,1.25vw,1.05rem);line-height:1.65}
.bug-report-grid{display:grid;grid-template-columns:minmax(0,1.58fr) minmax(300px,.68fr);gap:20px;align-items:stretch;overflow:visible}
.bug-report-panel{padding:0!important;overflow:visible}
.bug-report-panel form{display:block}
.bug-report-form-head{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;margin:0!important;padding:22px 24px;border-bottom:1px solid rgba(126,195,255,.11);background:linear-gradient(115deg,rgba(58,174,255,.08),transparent 46%)}
.bug-report-form-head>div{min-width:0}.bug-report-form-head strong{display:block;font-size:1.04rem}.bug-report-form-head p{margin:4px 0 0;color:var(--muted);font-size:.79rem;line-height:1.5}
.bug-report-icon{width:46px;height:46px;border-radius:15px;background:linear-gradient(145deg,rgba(45,169,255,.16),rgba(91,100,255,.08));box-shadow:inset 0 0 0 1px rgba(93,203,255,.18)}
.bug-form-availability{padding:7px 10px;border:1px solid rgba(95,218,173,.18);border-radius:999px;background:rgba(57,203,145,.075);color:#8cecc5;font-size:.66rem;font-weight:800;letter-spacing:.03em;white-space:nowrap}
.bug-form-section{padding:24px;border-bottom:1px solid rgba(126,195,255,.09)}
.bug-section-head{display:flex;align-items:flex-start;gap:11px;margin-bottom:17px}.bug-section-head>span{width:28px;height:28px;display:grid;place-items:center;flex:0 0 auto;border-radius:10px;background:rgba(69,185,255,.1);border:1px solid rgba(81,198,255,.2);color:#6fd3ff;font-size:.7rem;font-weight:900}.bug-section-head>div{display:grid;gap:3px}.bug-section-head strong{font-size:.9rem}.bug-section-head small{color:var(--muted);font-size:.72rem;line-height:1.45}
.bug-report-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:15px}.bug-report-fields .field-label{display:grid;gap:8px;min-width:0}.bug-report-fields .field-label>span,.bug-report-fields>.field-label>span{font-size:.74rem;font-weight:800;color:var(--text)}.bug-report-fields input,.bug-report-fields textarea{width:100%;min-width:0;border:1px solid rgba(126,195,255,.17);border-radius:13px;background:rgba(3,15,31,.38);color:var(--text);outline:none;transition:border-color .18s,box-shadow .18s,background .18s}.bug-report-fields input{height:46px;padding:0 13px}.bug-report-fields textarea{padding:12px 13px;resize:vertical;line-height:1.52;font:inherit;min-height:112px}.bug-report-fields input:focus,.bug-report-fields textarea:focus{border-color:rgba(67,188,255,.58);box-shadow:0 0 0 3px rgba(31,153,255,.1);background:rgba(5,23,46,.58)}.bug-field-full{grid-column:1/-1}
.bug-category-control{width:100%}.bug-category-control .meteo-select-trigger{width:100%;min-height:46px;justify-content:space-between;border-radius:13px;background:rgba(3,15,31,.38)}.bug-category-control .meteo-select-menu{width:100%;max-height:300px;overflow:auto;z-index:40}.bug-category-menu .meteo-select-option{min-height:42px}
.bug-dropzone{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:15px;padding:18px;border:1px dashed rgba(90,196,255,.34);border-radius:18px;background:linear-gradient(135deg,rgba(38,142,213,.07),rgba(93,75,197,.035));cursor:pointer;outline:none;transition:.2s}.bug-dropzone:hover,.bug-dropzone:focus-visible,.bug-dropzone.is-dragover{border-color:rgba(83,205,255,.72);background:linear-gradient(135deg,rgba(38,142,213,.13),rgba(93,75,197,.07));box-shadow:0 0 0 3px rgba(59,175,255,.07)}.bug-dropzone-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:15px;background:rgba(66,187,255,.12);color:#70d5ff}.bug-dropzone-icon svg{width:23px;height:23px}.bug-dropzone-copy{display:grid;gap:3px;min-width:0}.bug-dropzone-copy strong{font-size:.84rem}.bug-dropzone-copy span{color:var(--muted);font-size:.74rem;line-height:1.45}.bug-dropzone-copy small{margin-top:3px;color:rgba(157,184,208,.78);font-size:.64rem;line-height:1.4}.bug-dropzone-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.bug-dropzone-actions .button{min-height:38px;padding:0 12px;font-size:.7rem}
.bug-attachment-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}.bug-attachment-item{display:grid;grid-template-columns:72px minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px;border:1px solid rgba(126,195,255,.11);border-radius:14px;background:rgba(255,255,255,.025);min-width:0}.bug-attachment-thumb{width:72px;height:54px;border-radius:10px;overflow:hidden;background:#06172a;display:grid;place-items:center}.bug-attachment-thumb img,.bug-attachment-thumb video{width:100%;height:100%;object-fit:cover}.bug-attachment-meta{display:grid;gap:3px;min-width:0}.bug-attachment-meta strong{font-size:.7rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bug-attachment-meta small{font-size:.63rem;color:var(--muted)}.bug-attachment-remove{width:34px;height:34px;display:grid;place-items:center;border:1px solid rgba(255,112,135,.14);border-radius:10px;background:rgba(255,90,118,.055);color:#ff91a4;cursor:pointer}.bug-attachment-remove svg{width:16px;height:16px}
.bug-recording-panel{margin-top:12px;padding:12px;border:1px solid rgba(255,112,135,.18);border-radius:16px;background:rgba(24,10,25,.24)}.bug-recording-preview{position:relative;overflow:hidden;border-radius:13px;background:#020914;aspect-ratio:16/9}.bug-recording-preview video{width:100%;height:100%;object-fit:cover}.bug-recording-live{position:absolute;top:10px;left:10px;display:flex;align-items:center;gap:7px;padding:6px 9px;border-radius:999px;background:rgba(3,9,18,.76);backdrop-filter:blur(8px);font-size:.65rem;font-weight:800}.bug-recording-live i{width:7px;height:7px;border-radius:50%;background:#ff526d;box-shadow:0 0 0 4px rgba(255,82,109,.12);animation:bug-rec-pulse 1s ease-in-out infinite}.bug-recording-live b{font-variant-numeric:tabular-nums}.bug-recording-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:10px}@keyframes bug-rec-pulse{50%{opacity:.38}}
.bug-contact-grid{align-items:stretch}.bug-diagnostics-toggle{min-height:46px;display:flex;align-items:center;gap:11px;padding:8px 11px;border:1px solid rgba(126,195,255,.12);border-radius:13px;background:rgba(255,255,255,.025)}.bug-diagnostics-toggle>span{display:grid;gap:2px;min-width:0}.bug-diagnostics-toggle strong{font-size:.72rem}.bug-diagnostics-toggle small{color:var(--muted);font-size:.64rem;line-height:1.4}.bug-safety-note{margin-top:14px}.bug-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}
.bug-report-actions{display:flex!important;align-items:center;justify-content:space-between;gap:14px;margin:0!important;padding:18px 24px 22px;background:rgba(1,12,27,.2)}.bug-submit-note{max-width:520px;color:var(--muted);font-size:.67rem;line-height:1.45}.bug-report-actions .button{min-width:178px}
.bug-info-head h2{margin:6px 0 6px;font-size:1.08rem;line-height:1.3}.bug-info-head p{margin:0;color:var(--muted);font-size:.75rem;line-height:1.55}.bug-info-list{display:grid;gap:9px;margin:17px 0}.bug-info-list>div{display:flex;gap:10px;padding:11px;border:1px solid rgba(126,195,255,.1);border-radius:13px;background:rgba(255,255,255,.022)}.bug-info-list>div>svg{width:18px;height:18px;flex:0 0 auto;color:#65caff}.bug-info-list span{display:grid;gap:2px}.bug-info-list strong{font-size:.7rem}.bug-info-list small{color:var(--muted);font-size:.63rem;line-height:1.43}.bug-info-limit{display:grid;gap:4px;margin:0 0 13px;padding:11px;border-radius:13px;background:rgba(86,214,164,.055);border:1px solid rgba(86,214,164,.13)}.bug-info-limit strong{font-size:.68rem;color:#8de7c3}.bug-info-limit span{font-size:.62rem;line-height:1.45;color:var(--muted)}.bug-privacy-link{width:100%;justify-content:center}

.alerts-mark-read{min-height:34px;padding:0 10px;font-size:.68rem;white-space:nowrap}.alert-card{position:relative}.alert-card.is-read{opacity:.63}.alert-card.is-read::after{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:rgba(3,13,28,.08)}.alert-card-main{min-width:0}.alert-card-actions{display:flex;align-items:center;gap:7px;justify-self:end}.alert-read-button{position:relative;z-index:1;min-width:34px;height:32px;display:grid;place-items:center;border:1px solid rgba(126,195,255,.14);border-radius:10px;background:rgba(255,255,255,.025);color:var(--muted);cursor:pointer}.alert-read-button:hover,.alert-read-button:focus-visible{color:#7dd9ff;border-color:rgba(87,202,255,.42)}.alert-read-button svg{width:15px;height:15px}.alert-unread-dot{width:7px;height:7px;border-radius:50%;background:#55cfff;box-shadow:0 0 0 4px rgba(85,207,255,.1)}.alert-card.is-read .alert-unread-dot{display:none}
.notification-inbox{margin-top:18px;padding-top:18px;border-top:1px solid rgba(126,195,255,.1)}.notification-inbox-list{display:grid;gap:9px}.notification-inbox-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:11px;padding:12px;border:1px solid rgba(126,195,255,.1);border-radius:14px;background:rgba(255,255,255,.02)}.notification-inbox-item.unread{border-color:rgba(86,199,255,.25);background:rgba(54,167,235,.055)}.notification-inbox-item-icon{width:35px;height:35px;display:grid;place-items:center;border-radius:11px;background:rgba(77,189,255,.09);color:#69cdfd}.notification-inbox-item-icon svg{width:17px;height:17px}.notification-inbox-copy{display:grid;gap:3px;min-width:0}.notification-inbox-copy strong{font-size:.73rem}.notification-inbox-copy span{color:var(--muted);font-size:.66rem;line-height:1.45}.notification-inbox-copy small{color:rgba(150,179,205,.7);font-size:.59rem}.notification-inbox-actions{display:flex;gap:6px}.notification-inbox-actions button{width:32px;height:32px;display:grid;place-items:center;border:1px solid rgba(126,195,255,.12);border-radius:9px;background:rgba(255,255,255,.02);color:var(--muted);cursor:pointer}.notification-inbox-actions svg{width:14px;height:14px}.notification-inbox-empty{padding:14px;border:1px dashed rgba(126,195,255,.12);border-radius:13px;color:var(--muted);font-size:.68rem;text-align:center}

@media(max-width:1100px){.bug-report-grid{grid-template-columns:minmax(0,1fr) minmax(270px,.58fr)}.bug-dropzone{grid-template-columns:auto 1fr}.bug-dropzone-actions{grid-column:1/-1;justify-content:flex-start;margin-left:63px}.bug-attachment-list{grid-template-columns:1fr}}
@media(max-width:900px){#page-bug-report{overflow:hidden}.bug-report-grid{grid-template-columns:1fr}.bug-report-info{position:static!important;max-height:none;overflow:visible}.bug-report-fields{grid-template-columns:1fr}.bug-field-full{grid-column:auto}.bug-contact-grid{grid-template-columns:1fr}}
@media(max-width:620px){#page-bug-report .bug-report-heading h1{font-size:2.35rem}.bug-report-form-head{grid-template-columns:auto 1fr;padding:18px}.bug-form-availability{grid-column:1/-1;justify-self:start}.bug-form-section{padding:18px}.bug-dropzone{grid-template-columns:1fr;text-align:center;padding:16px}.bug-dropzone-icon{justify-self:center}.bug-dropzone-actions{grid-column:auto;margin-left:0;justify-content:stretch;display:grid;grid-template-columns:1fr}.bug-dropzone-actions .button{width:100%}.bug-attachment-item{grid-template-columns:62px minmax(0,1fr) auto}.bug-attachment-thumb{width:62px;height:50px}.bug-recording-actions{display:grid;grid-template-columns:1fr}.bug-report-actions{align-items:stretch;flex-direction:column;padding:16px 18px 19px}.bug-report-actions .button{width:100%;min-width:0}.bug-submit-note{order:2}.notification-inbox-item{grid-template-columns:auto minmax(0,1fr)}.notification-inbox-actions{grid-column:2;justify-content:flex-end}.alerts-panel-title{align-items:flex-start}.alerts-mark-read{width:auto}}
@media(max-width:420px){.bug-report-form-head{grid-template-columns:1fr}.bug-report-icon{width:42px;height:42px}.bug-form-availability{grid-column:auto}.bug-form-section{padding:16px}.bug-section-head{margin-bottom:14px}.bug-attachment-item{grid-template-columns:54px minmax(0,1fr) auto}.bug-attachment-thumb{width:54px;height:46px}}
@media(prefers-reduced-motion:reduce){.bug-recording-live i{animation:none}}

/* 18.9.7.4 reliability: a cached forecast must never look live. */
#last-update[data-freshness="cache"],
.hero-status .is-stale{color:#ffd08a}
.online-dot.stale{background:#ffb54d;box-shadow:0 0 10px #ffb54d}

/* MeteoNexa 18.9.7.4 — Segnala bug: full-width information above the form. */
.bug-report-stack{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;align-items:start;overflow:visible}
#page-bug-report .bug-report-info{position:static!important;inset:auto!important;width:100%;max-width:none;max-height:none!important;overflow:visible!important;padding:22px 24px!important}
#page-bug-report .bug-info-layout{display:grid;grid-template-columns:minmax(220px,.62fr) minmax(0,1.55fr);gap:22px;align-items:start}
#page-bug-report .bug-info-head{min-width:0}
#page-bug-report .bug-info-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0}
#page-bug-report .bug-info-list>div{height:100%;margin:0;padding:14px}
#page-bug-report .bug-info-footer{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:18px;padding-top:16px;border-top:1px solid rgba(126,195,255,.1)}
#page-bug-report .bug-info-limit{flex:1 1 auto;margin:0!important}
#page-bug-report .bug-privacy-link{width:auto;min-width:190px;flex:0 0 auto}
#page-bug-report .bug-report-panel{width:100%;max-width:none}
#page-bug-report .bug-report-form-head{grid-template-columns:auto minmax(0,1fr)!important}
#page-bug-report .bug-form-availability{display:none!important}
.hour-card .hour-card-condition{display:block;max-width:100%;min-height:1.35em;color:var(--text-soft);font-size:clamp(.64rem,.04vw + .62rem,.76rem);font-weight:750;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center}
.hour-card .hour-card-condition.is-dry{color:#86e5c0}
@media(max-width:1000px){#page-bug-report .bug-info-layout{grid-template-columns:1fr}#page-bug-report .bug-info-list{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){#page-bug-report .bug-info-list{grid-template-columns:1fr}#page-bug-report .bug-info-footer{align-items:stretch;flex-direction:column}#page-bug-report .bug-privacy-link{width:100%}}
