/* V1.13.8: a quiet, readable layout; weather colours retain their semantic meaning. */
:root{--muted:#a6b9cd;--muted-strong:#cad8e5;--local-bg:#0c1624;--local-card:#142132;--local-line:#304256;--local-muted:#b4c4d5;--local-accent:#8be5d2;--local-white:#f2f6fa}
body{background:var(--local-bg);color:var(--local-white)}
.weather-app{background:radial-gradient(ellipse at 12% 0%,#18344966,transparent 52%),var(--local-bg)}
.atmosphere{display:none}
.app-header{background:#0c1624f5;border-bottom:1px solid #3042568a;min-height:72px;backdrop-filter:blur(12px)}
.brand strong{letter-spacing:-.5px}.brand small{letter-spacing:.6px;text-transform:none}
.dashboard-shell{width:min(1300px,calc(100% - 64px));padding-top:20px;padding-bottom:48px}
.glass-panel{background:var(--local-card);border-color:var(--local-line);box-shadow:0 5px 20px #02060c15;border-radius:20px;backdrop-filter:none}
.section-tabs{padding:5px;background:#101c2b;border-radius:16px;margin-bottom:14px;position:relative;top:auto;box-shadow:none}
.section-tabs__track{gap:3px}.section-tabs a{min-height:55px;padding:9px 6px;border-radius:11px;gap:5px;background:transparent;border-color:transparent}
.section-tabs a>span{display:none}.section-tabs a strong{font-size:12px;font-weight:600;letter-spacing:0;white-space:normal}.section-tabs a small{display:none}
.section-tabs a.is-active{background:#244248;border-color:#8be5d238;color:#cbfff3;box-shadow:none}
.local-interface-ready #apercu,.local-interface-ready #meteo-briefing,.local-interface-ready .sensor-strip{display:none!important}
body:not(.local-interface-ready) #today-local{display:none}
.local-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:24px 0 22px}
.local-heading p{margin:0 0 5px;color:var(--local-muted);font-size:14px;text-transform:capitalize}
.local-heading h1,.local-heading h2{margin:0;font-size:clamp(25px,2.6vw,34px);font-weight:650;letter-spacing:-1px;line-height:1.2}
.local-saint{color:var(--local-white);display:flex;flex-direction:column;text-decoration:none;text-align:right;font-size:14px;max-width:38%}
.local-saint span{font-size:11px;color:var(--local-muted);margin-bottom:4px;letter-spacing:.5px;text-transform:uppercase}.local-saint strong{font-weight:500}
.local-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:10px 0 6px}
.local-toolbar button{color:var(--local-muted);background:transparent;border:1px solid var(--local-line);border-radius:9px;min-height:38px;padding:7px 11px;cursor:pointer;font:inherit;font-size:12px}
.local-quality-button{display:flex;align-items:center;gap:9px;text-align:left}.local-quality-button i{width:7px;height:7px;flex:none;border-radius:50%;background:var(--local-accent)}
.local-quality-button.is-warn i{background:#ffc178}.local-quality-button.is-warn{color:#ffce94}
.local-toolbar button[aria-pressed=true]{color:var(--local-white);background:#304256}
.local-global-warning{border-left:3px solid #ffc178;background:#ffc1780c;padding:12px 16px;font-size:13px;color:#ffdab0;border-radius:4px 10px 10px 4px;margin:15px 0}
body:not([data-active-weather-view=today]):not([data-active-weather-view=forecast]):not([data-active-weather-view=analyses]) .local-global-warning{display:none}
.local-global-warning[hidden]{display:none}
.local-overview{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}
.local-card{background:var(--local-card);border:1px solid var(--local-line);border-radius:20px;padding:26px;color:var(--local-white);min-width:0}
.local-card h2,.local-card h3{margin:10px 0 14px;line-height:1.3;letter-spacing:-.45px;font-size:23px;font-weight:600}
.local-card p{color:var(--local-muted);font-size:14px;line-height:1.6}
.local-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px}
.local-kicker{font-size:11px;letter-spacing:1.1px;text-transform:uppercase;color:var(--local-muted);font-weight:600}
.local-chip{font-size:11px;white-space:nowrap;background:#87dfcb13;color:var(--local-accent);padding:5px 9px;border-radius:20px;border:1px solid #87dfcb25}
.local-now{background:linear-gradient(135deg,#203b46 0%,#142638 55%,#142132 100%)}
.local-now.is-old .local-chip,.local-forecast-stale [data-local-forecast-state]{color:#ffd29e;background:#ffc17815;border-color:#ffc17830}
.local-temperature{display:flex;align-items:baseline;gap:7px;margin:10px 0 -3px;position:relative}
.local-temperature>strong{font-size:clamp(64px,7.5vw,100px);font-weight:500;line-height:1.25;letter-spacing:-6px;font-variant-numeric:tabular-nums}
.local-temperature>span{font-size:28px;font-weight:300;color:#b4d4e0}
.local-station-icon{position:absolute;right:8px;top:20px;width:74px;height:74px;stroke:#ffd29e;stroke-width:1.5;opacity:.8}.local-station-icon.is-night{stroke:#b9c9ed;opacity:.5}
.local-measured{margin:0 0 22px!important;font-size:12px!important}
.local-metrics{display:grid;grid-template-columns:1fr 1fr;gap:17px 20px;border-top:1px solid #b4d4e025;padding-top:18px;margin:0 0 18px}
.local-metrics dt{font-size:12px;color:var(--local-muted);margin-bottom:5px}.local-metrics dd{font-size:19px;font-weight:500;margin:0;font-variant-numeric:tabular-nums}
.local-text-link{display:inline-flex;align-items:center;gap:10px;color:var(--local-accent);text-decoration:none;font-size:13px;font-weight:500;min-height:36px}
.local-text-link svg,.local-actions svg{width:19px;height:19px;flex:none}
.local-brief{display:flex;flex-direction:column}
.local-brief h2{font-size:clamp(22px,2.3vw,29px);margin-top:22px;max-width:95%}
.local-lead{margin:0;max-width:58ch}
.local-next{display:flex;flex-wrap:wrap;gap:20px;margin:22px 0 14px}
.local-next>div{display:flex;flex-direction:column;gap:7px;flex:1;min-width:130px}
.local-next span{font-size:12px;color:var(--local-muted)}.local-next strong{font-size:25px;font-weight:500}
.local-forecast-source{font-size:11px!important;margin:auto 0 16px;padding-top:8px}
.local-actions{display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.local-actions a{display:inline-flex;align-items:center;gap:8px;color:var(--local-white);font-size:13px;text-decoration:none;min-height:42px}
.local-actions .local-primary{background:var(--local-accent);color:#102a2c;border-radius:10px;padding:9px 15px;font-weight:650}
.local-timeline{padding-bottom:16px;margin-bottom:18px}.local-timeline h2{font-size:20px;margin:5px 0 0}
.local-segment{display:flex;flex:none;border:1px solid var(--local-line);border-radius:9px;padding:3px;gap:2px}
.local-segment button{border:0;background:transparent;color:var(--local-muted);font:inherit;font-size:12px;min-height:36px;min-width:47px;padding:5px 8px;border-radius:6px;cursor:pointer}
.local-segment button[aria-pressed=true]{background:#304256;color:var(--local-white)}
.local-timeline-scroll{overflow-x:auto;overscroll-behavior-inline:contain;margin-top:18px;scrollbar-color:#496179 transparent;scrollbar-width:thin}
.local-hours{display:flex;min-width:100%}
.local-hour{flex:1 0 70px;display:flex;align-items:center;flex-direction:column;padding:4px 8px 14px;border-right:1px solid #30425680;gap:10px}
.local-hour:last-child{border-right:0}.local-hour time{font-size:12px;color:var(--local-muted)}
.local-hour>strong{font-size:21px;font-weight:500;letter-spacing:-.6px}.local-hour>strong small{font-size:15px}
.local-rain-bar{height:25px;width:18px;display:flex;align-items:end;border-bottom:1px solid #71c6ee55;border-radius:2px;background:#88cfff08}.local-rain-bar i{display:block;width:100%;background:#7dcdf5;border-radius:2px 2px 0 0}
.local-hour-rain{font-size:13px;color:#a5deff}.local-hour-wind{font-size:13px;color:var(--local-muted)}.local-hour small{font-size:10px}
.local-footnote{font-size:11px!important;line-height:1.6;color:var(--local-muted);margin:12px 0 0}
.local-empty:empty{display:none}.local-empty{padding:12px 0;color:#ffdab0!important}
.local-reading{padding:17px 22px}.local-card summary{cursor:pointer;min-height:28px;color:var(--local-white);font-size:14px;line-height:1.6}
.local-card details{border-top:1px solid var(--local-line);padding-top:15px;margin-top:22px}.local-card details p{font-size:12px}
.local-card a:not(.local-primary){text-underline-offset:3px}.local-card details a{color:var(--local-accent)}
.local-analysis{margin-bottom:24px}.local-analysis-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:18px}
.local-balance-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:24px 0 14px;gap:12px}
.local-balance-grid>div{background:#0c162480;border:1px solid #304256a0;border-radius:12px;padding:15px 12px;min-width:0}
.local-balance-grid h4{font-size:18px;margin:0 0 18px;font-weight:600}.local-balance-grid dl{margin:0}
.local-balance-grid dl>div{margin:12px 0}.local-balance-grid dt{font-size:11px;color:var(--local-muted)}.local-balance-grid dd{margin:4px 0 0;font-size:20px}.local-balance-grid dd small{font-size:11px}
.local-balance-grid .local-net{border-top:1px solid var(--local-line);padding-top:12px;color:var(--local-accent)}.local-balance-grid>div>small{font-size:10px;color:var(--local-muted)}
.local-delta{display:block;font-size:clamp(44px,5vw,65px);font-weight:450;letter-spacing:-2px;color:var(--local-accent);margin:20px 0}
.local-pair{display:flex;gap:20px;flex-wrap:wrap}.local-pair>div{display:flex;flex-direction:column;gap:5px}.local-pair span{color:var(--local-muted);font-size:12px}.local-pair strong{font-size:20px;font-weight:500}
.local-dialog{background:#142132;color:var(--local-white);border:1px solid #526478;border-radius:20px;max-width:540px;width:calc(100% - 36px);padding:25px;max-height:85dvh;overflow:auto;box-shadow:0 25px 100px #0008}
.local-dialog::backdrop{background:#020812ba;backdrop-filter:blur(5px)}
.local-dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:15px}.local-dialog-heading h2{font-size:21px;margin:0}
.local-dialog-heading button{background:#24364a;color:var(--local-white);border:0;width:44px;height:44px;flex:none;border-radius:50%;font-size:28px;cursor:pointer}
.local-dialog p{font-size:13px;line-height:1.7;color:var(--local-muted)}
.local-quality-list>div{display:flex;justify-content:space-between;gap:15px;padding:16px 0;border-bottom:1px solid var(--local-line)}
.local-quality-list dt{font-size:13px}.local-quality-list dd{font-size:13px;text-align:right;margin:0}.local-quality-list small{display:block;color:var(--local-muted);margin-top:5px;font-size:11px}
.local-more-links{display:grid;gap:8px}.local-more-links a{display:flex;align-items:center;gap:14px;padding:16px 10px;min-height:52px;border-bottom:1px solid var(--local-line);text-decoration:none;color:var(--local-white);font-size:15px}.local-more-links svg{width:22px;height:22px}.local-more-links a.is-active{color:var(--local-accent)}
.local-mobile-nav{display:none}
button,a,summary,select{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible,select:focus-visible,.local-timeline-scroll:focus-visible{outline:2px solid var(--local-accent);outline-offset:4px}
.local-comfort .local-card p,.local-comfort .local-card summary,.local-comfort .local-metrics dt,.local-comfort .local-actions a,.local-comfort .local-text-link{font-size:16px}
.local-comfort .glass-panel p:not(.eyebrow),.local-comfort .glass-panel summary{font-size:15px}
.local-comfort .local-footnote,.local-comfort .local-forecast-source{font-size:13px!important}.local-comfort .local-kicker{font-size:12px}.local-comfort .local-measured{font-size:14px!important}
@media(min-width:1500px){.local-hour{flex-basis:82px}}
@media(max-width:1050px){.dashboard-shell{width:calc(100% - 40px)}.section-tabs a strong{font-size:11px}.local-card{padding:22px}.local-analysis-grid{grid-template-columns:1fr}.local-station-icon{width:60px;height:60px;right:0}.local-temperature>strong{font-size:78px}}
@media(max-width:700px){
 .app-header{min-height:62px;padding:10px 16px;gap:10px;position:relative}.brand-icon{width:35px;height:35px}.brand strong{font-size:17px}.brand small{font-size:10px}.live-pill{display:none}.header-actions{gap:5px}.refresh-button{min-height:40px;min-width:40px}
 .dashboard-shell{width:calc(100% - 28px);padding-top:12px;padding-bottom:calc(86px + env(safe-area-inset-bottom,0px))}
 body:has(#local-mobile-nav) #section-tabs{display:none}
 .local-toolbar{gap:8px;margin-top:10px}.local-toolbar button{font-size:10px;padding:7px 8px;min-height:38px}.local-toolbar [data-local-comfort]{max-width:74px;flex:none;line-height:1.3}.local-quality-button{gap:6px}
 .local-heading{margin:22px 0 18px;align-items:flex-start;gap:10px}.local-heading h1,.local-heading h2{font-size:26px;letter-spacing:-.8px}.local-heading p{font-size:12px}.local-saint{font-size:11px;max-width:32%;padding-top:2px}.local-saint span{font-size:9px;letter-spacing:.2px}
 .local-overview{grid-template-columns:1fr;gap:14px;margin-bottom:14px}.local-card{padding:20px;border-radius:17px}.local-temperature>strong{font-size:88px}.local-station-icon{right:18px;top:22px;width:70px;height:70px}.local-temperature>span{font-size:27px}
 .local-metrics{grid-template-columns:1fr 1fr;gap:16px;padding-top:16px;margin-bottom:10px}.local-metrics dd{font-size:20px}.local-metrics dt{font-size:12px}
 .local-brief h2{font-size:23px;margin:17px 0 10px}.local-next{margin:18px 0 10px}.local-next strong{font-size:24px}.local-forecast-source{margin:6px 0 14px}.local-actions{gap:14px}.local-actions a{font-size:12px;min-height:44px}
 .local-timeline{padding:19px 16px 15px;margin-bottom:14px}.local-timeline h2{font-size:18px}.local-kicker{font-size:10px;letter-spacing:.9px}.local-chip{font-size:10px}.local-segment button{min-width:40px;min-height:38px}.local-hour{flex-basis:73px}.local-reading{padding:16px 20px}.local-global-warning{font-size:12px;padding:11px 12px}
 .local-mobile-nav{position:fixed;bottom:0;left:0;right:0;z-index:90;background:#101d2bf5;border-top:1px solid #49617966;display:grid;grid-template-columns:repeat(5,1fr);padding:5px 6px calc(7px + env(safe-area-inset-bottom,0px));backdrop-filter:blur(15px)}
 .local-mobile-nav a,.local-mobile-nav button{display:flex;flex-direction:column;gap:4px;align-items:center;justify-content:center;min-height:52px;border:0;border-radius:10px;background:transparent;color:#b4c4d5;text-decoration:none;font:inherit;font-size:10px;cursor:pointer}
 .local-mobile-nav svg{width:22px;height:22px}.local-mobile-nav .is-active{background:#8be5d217;color:#a1efde}
 body[data-active-weather-view=vigilance] [data-local-more],body[data-active-weather-view=territory] [data-local-more],body[data-active-weather-view=observations] [data-local-more],body[data-active-weather-view=astronomy] [data-local-more],body[data-active-weather-view=settings] [data-local-more]{background:#8be5d217;color:#a1efde}
 .local-analysis-grid{gap:14px}.local-balance-grid{gap:7px}.local-balance-grid>div{padding:12px 8px}.local-balance-grid dt{font-size:10px}.local-balance-grid dd{font-size:18px}.local-balance-grid h4{font-size:17px}.local-balance-grid>div>small{font-size:9px}.local-delta{font-size:55px}
 .local-dialog{padding:20px;max-height:85dvh}.local-dialog-heading h2{font-size:20px}.app-footer{padding-bottom:90px}.weather-radar__map{max-width:100%}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
