.meteo-home-lead{display:flex;justify-content:space-between;align-items:end;gap:2rem;padding-block:clamp(.8rem,2vw,1.7rem)}
.meteo-home-lead h1{font-size:clamp(2.15rem,1.72rem + 1.45vw,3.35rem);margin:.3rem 0 .5rem;max-width:18ch}.meteo-home-lead p{max-width:50rem;margin:0}
.meteo-live-badge{display:flex;align-items:center;gap:.55rem;color:var(--mc-muted);font-size:.78rem;white-space:nowrap;padding:.42rem .65rem;border:1px solid var(--mc-line);border-radius:999px;background:color-mix(in srgb,var(--mc-surface) 78%,transparent)}
.meteo-live-badge span{width:.55rem;height:.55rem;border-radius:50%;background:var(--mc-good);box-shadow:0 0 0 .28rem color-mix(in srgb,var(--mc-good) 13%,transparent);animation:meteo-live 2.8s ease-in-out infinite}@keyframes meteo-live{50%{box-shadow:0 0 0 .42rem color-mix(in srgb,var(--mc-good) 5%,transparent)}}

.meteo-home-grid{display:grid;grid-template-columns:minmax(22rem,.82fr) minmax(0,1.65fr);gap:var(--mc-step-4);align-items:stretch}
.meteo-home-map{min-width:0}
.meteo-current{height:100%;position:relative;overflow:hidden;display:grid;grid-template-rows:auto 1fr;gap:1rem;padding:1.35rem;background:linear-gradient(145deg,color-mix(in srgb,var(--mc-section-a) 38%,var(--mc-surface-2)),var(--mc-surface) 58%,color-mix(in srgb,var(--mc-section-b) 14%,var(--mc-surface)));border:1px solid var(--mc-line-strong);border-radius:var(--mc-radius-lg);box-shadow:var(--mc-shadow-2),var(--mc-inner-highlight)}
.meteo-current::before{content:"";position:absolute;width:12rem;aspect-ratio:1;right:-4.5rem;top:-5rem;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--mc-solar) 20%,transparent),transparent 67%);filter:blur(1px);pointer-events:none}
.meteo-current-primary{display:flex;align-items:center;gap:1rem;padding-bottom:1rem;border-bottom:1px solid var(--mc-line);position:relative}
.meteo-weather-symbol{width:4.6rem;height:4.6rem;display:grid;place-content:center;font-size:3.25rem;color:var(--mc-accent);filter:drop-shadow(0 8px 16px color-mix(in srgb,var(--mc-accent) 20%,transparent))}
.meteo-current-temp{display:flex;align-items:start;gap:.2rem}.meteo-current-temp strong{font-family:var(--mc-mono);font-size:clamp(2.5rem,2.1rem + 1.4vw,4rem);letter-spacing:-.065em;line-height:1}.meteo-current-temp span{color:var(--mc-muted);font-size:1rem;margin-top:.3rem}.meteo-current-primary p{margin:0}
.meteo-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;position:relative}.meteo-metrics article{padding:.82rem .55rem;border-bottom:1px solid var(--mc-line);display:grid;grid-template-columns:1fr auto auto;gap:.25rem;align-items:baseline}.meteo-metrics span{color:var(--mc-subtle);font-size:.8rem}.meteo-metrics strong{font-family:var(--mc-mono);font-size:1.05rem}.meteo-metrics small{color:var(--mc-subtle)}

.meteo-map-shell{position:relative;display:grid;gap:.72rem;min-width:0;padding:.8rem;border:1px solid var(--mc-line-strong);border-radius:var(--mc-radius-lg);background:linear-gradient(145deg,color-mix(in srgb,var(--mc-section-a) 12%,var(--mc-surface)),var(--mc-surface));box-shadow:var(--mc-shadow-2),var(--mc-inner-highlight);transform-style:preserve-3d}
.meteo-map-shell::before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(115deg,color-mix(in srgb,var(--mc-section-line) 12%,transparent),transparent 22%,transparent 76%,color-mix(in srgb,var(--mc-section-b) 12%,transparent));opacity:.8}
.meteo-map-toolbar,.meteo-map-meta,.meteo-map,.meteo-map-legend{position:relative;z-index:1}
.meteo-map-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.meteo-map-toolbar>div:not(.meteo-map-layer-group){display:grid;gap:.1rem}.meteo-map-toolbar>div>span{color:var(--mc-subtle);font-size:.75rem}
.meteo-map-layer-group{display:flex;gap:.4rem;flex-wrap:wrap}.meteo-map-layer,.meteo-map-center{min-height:2.5rem;padding:.48rem .75rem;border:1px solid var(--mc-line-strong);border-radius:.62rem;background:var(--mc-surface);color:var(--mc-muted);font-weight:720;cursor:pointer;box-shadow:var(--mc-inner-highlight);transition:transform var(--mc-fast) var(--mc-ease),border-color var(--mc-fast) ease,background-color var(--mc-fast) ease,color var(--mc-fast) ease,box-shadow var(--mc-fast) ease}
.meteo-map-layer:hover,.meteo-map-center:hover{border-color:var(--mc-accent);background:var(--mc-surface-2);color:var(--mc-text);transform:translateY(-1px)}.meteo-map-layer:active,.meteo-map-center:active{background:var(--mc-surface-3);color:var(--mc-text);transform:none}
.meteo-map-layer[aria-pressed="true"]{background:linear-gradient(135deg,var(--mc-accent),color-mix(in srgb,var(--mc-accent) 70%,var(--mc-accent-2)));border-color:var(--mc-accent);color:var(--mc-on-accent);box-shadow:0 6px 18px color-mix(in srgb,var(--mc-accent) 19%,transparent)}
.meteo-map-layer:disabled,.meteo-map-center:disabled{background:var(--mc-disabled-bg);color:var(--mc-disabled-text);border-color:var(--mc-line);transform:none;box-shadow:none}
.meteo-map-meta{display:flex;justify-content:space-between;gap:1rem;color:var(--mc-subtle);font-size:.76rem;min-height:1.2rem;padding-inline:.15rem}
.meteo-map{height:clamp(24rem,57svh,46rem);border:1px solid var(--mc-line-strong);border-radius:var(--mc-radius-md);overflow:hidden;background:var(--mc-surface);box-shadow:0 18px 42px rgba(0,0,0,.17);transform:translateZ(0)}
.meteo-map-placeholder{height:100%;display:grid;place-content:center;color:var(--mc-subtle);background:radial-gradient(circle at 50% 40%,var(--mc-section-a),transparent 22rem)}
.leaflet-container{font-family:var(--mc-font);background:#dce8ec}.leaflet-control-attribution{font-size:10px;background:rgba(255,255,255,.88)}
.leaflet-bar a{color:#15313b}.leaflet-control-zoom a{background:#f7fbfc;color:#15313b;border-color:#d5e1e5}.leaflet-control-zoom a:hover{background:#e9f3f5;color:#0b2530}
.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#102a35}.leaflet-popup-content-wrapper{border-radius:.75rem;box-shadow:0 18px 50px rgba(8,33,44,.22)}.leaflet-popup-content{margin:.85rem 1rem}.meteo-map-popup{display:grid;gap:.34rem;min-width:12rem}.meteo-map-popup>div{display:flex;justify-content:space-between;gap:1rem;border-bottom:1px solid #d9e3e7;padding-bottom:.28rem}.meteo-map-popup span{color:#4c6874}.meteo-map-popup strong{color:#102a35;text-align:right}
.meteo-weather-divicon{background:transparent;border:0}.meteo-weather-pin{transform:translate(-50%,-50%);display:grid;min-width:max-content;background:linear-gradient(145deg,#071f2a,#0a2b38);color:#fff;border:1px solid rgba(255,255,255,.55);border-left:4px solid #8ba0aa;border-radius:.6rem;padding:.3rem .45rem;box-shadow:0 5px 18px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.08);line-height:1.05}.meteo-weather-pin-value{font-family:var(--mc-mono);font-size:.78rem;font-weight:820;display:flex;gap:.3rem;align-items:center}.meteo-weather-pin-value i{font-style:normal;filter:drop-shadow(0 2px 4px rgba(0,0,0,.25))}.meteo-weather-pin-name{font-size:.62rem;color:#dcebef;margin-top:.18rem}.meteo-weather-pin--cold{border-left-color:var(--mc-temp-cold)}.meteo-weather-pin--cool{border-left-color:var(--mc-temp-cool)}.meteo-weather-pin--mild{border-left-color:var(--mc-temp-mild)}.meteo-weather-pin--warm{border-left-color:var(--mc-temp-warm)}.meteo-weather-pin--hot{border-left-color:var(--mc-temp-hot)}.meteo-weather-pin--dry{border-left-color:#8ba0aa}.meteo-weather-pin--light{border-left-color:var(--mc-rain)}.meteo-weather-pin--moderate{border-left-color:var(--mc-watch)}.meteo-weather-pin--heavy{border-left-color:var(--mc-danger)}.meteo-weather-pin--clear{border-left-color:var(--mc-temp-warm)}.meteo-weather-pin--mixed{border-left-color:var(--mc-cloud)}.meteo-weather-pin--cloudy{border-left-color:#a2acb1}
.meteo-map-legend{display:flex;align-items:center;gap:.7rem 1rem;flex-wrap:wrap;padding:.7rem .8rem;border:1px solid var(--mc-line);border-radius:.7rem;background:color-mix(in srgb,var(--mc-surface-2) 90%,transparent);color:var(--mc-muted);font-size:.72rem}.meteo-map-legend strong{color:var(--mc-text);margin-right:.25rem}.meteo-map-legend span{display:inline-flex;align-items:center;gap:.35rem}.meteo-map-legend i{width:.72rem;height:.72rem;border-radius:50%;background:var(--mc-cloud);border:1px solid color-mix(in srgb,var(--mc-text) 20%,transparent);box-shadow:0 0 0 2px color-mix(in srgb,currentColor 5%,transparent)}.meteo-map-legend [data-scale="cold"]{background:var(--mc-temp-cold)}.meteo-map-legend [data-scale="cool"]{background:var(--mc-temp-cool)}.meteo-map-legend [data-scale="mild"]{background:var(--mc-temp-mild)}.meteo-map-legend [data-scale="warm"]{background:var(--mc-temp-warm)}.meteo-map-legend [data-scale="hot"]{background:var(--mc-temp-hot)}.meteo-map-legend [data-scale="dry"]{background:#8ba0aa}.meteo-map-legend [data-scale="light"]{background:var(--mc-rain)}.meteo-map-legend [data-scale="moderate"]{background:var(--mc-watch)}.meteo-map-legend [data-scale="heavy"]{background:var(--mc-danger)}.meteo-map-legend [data-scale="clear"]{background:var(--mc-temp-warm)}.meteo-map-legend [data-scale="mixed"]{background:var(--mc-cloud)}.meteo-map-legend [data-scale="cloudy"]{background:#75858d}.meteo-map-legend [data-scale="station"]{background:var(--mc-accent)}

.meteo-quick-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--mc-line);border-radius:var(--mc-radius-md);overflow:hidden;background:color-mix(in srgb,var(--mc-surface) 84%,transparent);box-shadow:var(--mc-inner-highlight)}
.meteo-quick-nav a{position:relative;padding:1rem 2.2rem 1rem 1rem;text-decoration:none;color:var(--mc-text);border-right:1px solid var(--mc-line);transition:background-color var(--mc-fast) ease,color var(--mc-fast) ease}.meteo-quick-nav a:last-child{border-right:0}.meteo-quick-nav a::before{content:"";position:absolute;left:1rem;top:0;width:2.4rem;height:2px;background:var(--mc-accent)}.meteo-quick-nav a:nth-child(2)::before{background:var(--mc-rain)}.meteo-quick-nav a:nth-child(3)::before{background:var(--mc-warning)}.meteo-quick-nav a:nth-child(4)::before{background:var(--mc-violet)}.meteo-quick-nav a::after{content:"→";position:absolute;right:1rem;top:50%;transform:translateY(-50%);color:var(--mc-subtle);transition:transform var(--mc-fast) var(--mc-ease),color var(--mc-fast) ease}.meteo-quick-nav a:hover{background:var(--mc-surface-2)}.meteo-quick-nav a:hover::after{transform:translate(.2rem,-50%);color:var(--mc-accent)}.meteo-quick-nav strong{display:block}.meteo-quick-nav span{font-size:.78rem;color:var(--mc-subtle)}

.meteo-hourly{display:flex;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;border-block:1px solid var(--mc-line);background:linear-gradient(90deg,color-mix(in srgb,var(--mc-section-a) 10%,transparent),transparent 30%,transparent 70%,color-mix(in srgb,var(--mc-section-b) 10%,transparent));scrollbar-color:var(--mc-line-strong) transparent}
.meteo-hourly article{min-width:7.25rem;padding:.88rem .72rem;border-right:1px solid var(--mc-line);scroll-snap-align:start;text-align:center;transition:background-color var(--mc-fast) ease}.meteo-hourly article:hover{background:color-mix(in srgb,var(--mc-section-a) 14%,var(--mc-surface))}.meteo-hourly time{display:block;color:var(--mc-subtle);font-size:.75rem}.meteo-hourly .symbol{font-size:1.4rem;margin:.45rem 0;filter:drop-shadow(0 4px 7px rgba(0,0,0,.18))}.meteo-hourly strong{display:block;font-family:var(--mc-mono)}.meteo-hourly small{color:var(--mc-subtle)}.meteo-hourly-compact article{min-width:6.5rem}

.meteo-home-special{display:grid;grid-template-columns:.7fr 1.7fr;gap:2rem;align-items:start}.meteo-special-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--mc-line)}.meteo-special-links a{position:relative;padding:1rem 0;border-bottom:1px solid var(--mc-line);text-decoration:none;color:var(--mc-text);transition:color var(--mc-fast) ease,padding-left var(--mc-fast) var(--mc-ease)}.meteo-special-links a:hover{color:var(--mc-accent);padding-left:.25rem}.meteo-special-links a:nth-child(odd){padding-right:1rem}.meteo-special-links a:nth-child(even){padding-left:1rem;border-left:1px solid var(--mc-line)}.meteo-special-links a:nth-child(even):hover{padding-left:1.25rem}.meteo-special-links span{display:block;color:var(--mc-subtle);font-size:.8rem}

.meteo-forecast-stack{display:grid;gap:var(--mc-step-4)}
.meteo-chart{min-height:19rem;overflow:hidden;padding:.4rem;border-radius:var(--mc-radius-sm);background:linear-gradient(180deg,color-mix(in srgb,var(--mc-section-a) 8%,transparent),transparent)}.meteo-chart-large{min-height:26rem}.meteo-chart svg{display:block;width:100%;height:auto;min-height:inherit}.meteo-chart .axis{stroke:var(--mc-line)}.meteo-chart .grid{stroke:var(--mc-line);stroke-dasharray:3 5}.meteo-chart .temp-line{fill:none;stroke:var(--mc-accent-2);stroke-width:2.5;filter:drop-shadow(0 3px 6px color-mix(in srgb,var(--mc-accent-2) 18%,transparent))}.meteo-chart .rain-bar{fill:var(--mc-rain)}.meteo-chart text{fill:var(--mc-subtle);font-family:var(--mc-font);font-size:11px}.meteo-chart[data-chart-ready="1"] .temp-line{stroke-dasharray:1;stroke-dashoffset:0;animation:meteo-line-reveal .72s var(--mc-ease) both}.meteo-chart[data-chart-ready="1"] .rain-bar{transform-box:fill-box;transform-origin:center bottom;animation:meteo-bar-reveal .48s var(--mc-ease) both}@keyframes meteo-line-reveal{from{stroke-dashoffset:1}}@keyframes meteo-bar-reveal{from{transform:scaleY(.05);opacity:.35}}
.meteo-legend{display:flex;gap:.8rem;color:var(--mc-subtle);font-size:.75rem}.meteo-legend i{display:inline-block;width:1.2rem;height:.2rem;margin-right:.3rem;vertical-align:middle;border-radius:99px}.line-temp{background:var(--mc-accent-2)}.bar-rain{background:var(--mc-rain)}

.meteo-daily{display:grid;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));border:1px solid var(--mc-line);border-radius:var(--mc-radius-md);overflow:hidden}.meteo-daily article{padding:1rem .8rem;border-bottom:1px solid var(--mc-line);border-right:1px solid var(--mc-line);background:color-mix(in srgb,var(--mc-surface) 82%,transparent);transition:background-color var(--mc-fast) ease}.meteo-daily article:hover{background:color-mix(in srgb,var(--mc-section-a) 12%,var(--mc-surface))}.meteo-daily time{display:block;color:var(--mc-subtle);font-size:.75rem}.meteo-daily .symbol{font-size:1.65rem;margin:.5rem 0;filter:drop-shadow(0 4px 7px rgba(0,0,0,.14))}.meteo-daily strong{font-family:var(--mc-mono)}.meteo-daily small{display:block;color:var(--mc-subtle);margin-top:.25rem}

.meteo-table-wrap{overflow:auto;max-height:43rem;border:1px solid var(--mc-line-strong);border-radius:var(--mc-radius-sm);background:var(--mc-surface);box-shadow:var(--mc-inner-highlight);scrollbar-color:var(--mc-line-strong) transparent}.meteo-table{width:100%;min-width:62rem;border-collapse:collapse;font-size:.84rem}.meteo-table th,.meteo-table td{padding:.68rem .72rem;text-align:left;border-bottom:1px solid var(--mc-line);white-space:nowrap}.meteo-table tbody tr:hover td{background:color-mix(in srgb,var(--mc-section-a) 10%,var(--mc-surface))}.meteo-table thead th{position:sticky;top:0;z-index:3;background:var(--mc-surface-2);color:var(--mc-text);box-shadow:0 1px 0 var(--mc-line)}.meteo-table th:first-child,.meteo-table td:first-child{position:sticky;left:0;background:var(--mc-surface);z-index:2}.meteo-table thead th:first-child{z-index:4;background:var(--mc-surface-2)}

.meteo-radar-toolbar{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-bottom:.75rem}.meteo-radar-toolbar output{margin-left:auto;color:var(--mc-muted);font-family:var(--mc-mono);font-size:.8rem}.meteo-radar-scale{display:flex;align-items:center;gap:0;margin-top:.65rem;color:var(--mc-subtle);font-size:.72rem}.meteo-radar-scale i{height:.48rem;flex:1;box-shadow:inset 0 1px 0 rgba(255,255,255,.16)}.meteo-radar-scale i:nth-of-type(1){background:#28a2df}.meteo-radar-scale i:nth-of-type(2){background:#5dc35d}.meteo-radar-scale i:nth-of-type(3){background:#f0d644}.meteo-radar-scale i:nth-of-type(4){background:#f18d43}.meteo-radar-scale i:nth-of-type(5){background:#d94a5b}

.meteo-risk-guide{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--mc-line-strong);border-radius:var(--mc-radius-md);overflow:hidden;background:var(--mc-surface)}.meteo-risk-guide div{padding:1rem;border-right:1px solid var(--mc-line);position:relative}.meteo-risk-guide div:last-child{border-right:0}.meteo-risk-guide div::before{content:"";display:block;width:2.2rem;height:.28rem;border-radius:99px;margin-bottom:.65rem;background:var(--mc-good);box-shadow:0 0 12px color-mix(in srgb,var(--mc-good) 25%,transparent)}.meteo-risk-guide [data-risk="1"]::before{background:var(--mc-watch);box-shadow:0 0 12px color-mix(in srgb,var(--mc-watch) 25%,transparent)}.meteo-risk-guide [data-risk="2"]::before{background:var(--mc-warning);box-shadow:0 0 12px color-mix(in srgb,var(--mc-warning) 25%,transparent)}.meteo-risk-guide [data-risk="3"]::before{background:var(--mc-danger);box-shadow:0 0 12px color-mix(in srgb,var(--mc-danger) 25%,transparent)}.meteo-risk-guide strong,.meteo-risk-guide span{display:block}.meteo-risk-guide span{font-size:.78rem;color:var(--mc-subtle)}

.meteo-model-workstation{display:grid;grid-template-columns:18rem minmax(0,1fr);border:1px solid var(--mc-line-strong);border-radius:var(--mc-radius-lg);overflow:hidden;min-height:34rem;background:linear-gradient(145deg,color-mix(in srgb,var(--mc-indigo) 7%,var(--mc-surface)),var(--mc-surface));box-shadow:var(--mc-shadow-2),var(--mc-inner-highlight)}.meteo-model-workstation aside{padding:1rem;background:color-mix(in srgb,var(--mc-bg-2) 55%,var(--mc-surface));border-right:1px solid var(--mc-line);display:flex;flex-direction:column;gap:.8rem}.meteo-model-workstation label{display:grid;gap:.3rem;color:var(--mc-muted);font-size:.82rem}.meteo-model-output{padding:1rem;min-width:0}.meteo-model-meta{margin-top:auto;color:var(--mc-subtle);font-size:.75rem}.meteo-model-timeline{display:flex;gap:.3rem;overflow:auto;padding-bottom:.2rem}.meteo-model-time{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--mc-line);background:var(--mc-surface);color:var(--mc-muted);border-radius:.48rem;padding:.46rem;min-width:4rem;font-family:var(--mc-mono);font-size:.75rem}

.meteo-map-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--mc-line)}.meteo-map-links a{padding:1rem 0;border-bottom:1px solid var(--mc-line);text-decoration:none;color:var(--mc-text)}.meteo-map-links a:nth-child(3n+2){padding-inline:1rem;border-left:1px solid var(--mc-line);border-right:1px solid var(--mc-line)}.meteo-map-links span{display:block;color:var(--mc-subtle);font-size:.78rem}
.meteo-territory-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));border:1px solid var(--mc-line);border-radius:var(--mc-radius-md);overflow:hidden}.meteo-territory-grid a{padding:1rem;border-bottom:1px solid var(--mc-line);text-decoration:none;color:var(--mc-text);background:color-mix(in srgb,var(--mc-surface) 88%,transparent);transition:background-color var(--mc-fast) ease}.meteo-territory-grid a:hover{background:color-mix(in srgb,var(--mc-section-a) 12%,var(--mc-surface))}.meteo-territory-grid span,.meteo-territory-grid small{display:block;color:var(--mc-subtle);font-size:.73rem}.meteo-territory-grid strong{display:block;margin:.3rem 0}

.meteo-atmos-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--mc-line-strong);border-radius:var(--mc-radius-md);overflow:hidden;background:linear-gradient(145deg,color-mix(in srgb,var(--mc-indigo) 5%,var(--mc-surface)),var(--mc-surface))}.meteo-atmos-grid article,.meteo-air-summary article,.meteo-drought-grid article{padding:1rem;border-right:1px solid var(--mc-line);border-bottom:1px solid var(--mc-line)}.meteo-atmos-grid span,.meteo-air-summary span,.meteo-drought-grid span{display:block;color:var(--mc-subtle);font-size:.75rem}.meteo-atmos-grid strong,.meteo-air-summary strong,.meteo-drought-grid strong{font-family:var(--mc-mono);font-size:1.5rem}.meteo-atmos-grid small,.meteo-air-summary small,.meteo-drought-grid small{color:var(--mc-subtle);margin-left:.2rem}

.meteo-space-page{background:radial-gradient(circle at 75% 15%,rgba(130,110,255,.1),transparent 24rem)}
.meteo-sky{position:relative;overflow:hidden;background:radial-gradient(circle at 22% 15%,rgba(113,130,255,.22),transparent 20rem),radial-gradient(circle at 84% 95%,rgba(82,113,255,.18),transparent 24rem),linear-gradient(145deg,#07101e,#111a38 56%,#14153a);border:1px solid rgba(160,170,255,.24);border-radius:var(--mc-radius-xl);padding:clamp(1.2rem,3vw,2rem);color:#f4f7ff;display:grid;grid-template-columns:.8fr 1.4fr;gap:2rem;box-shadow:0 28px 70px rgba(5,8,25,.3),inset 0 1px 0 rgba(255,255,255,.06)}
.meteo-sky::before{content:"";position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(circle,rgba(255,255,255,.62) 0 1px,transparent 1.2px),radial-gradient(circle,rgba(151,173,255,.48) 0 1px,transparent 1.1px);background-size:68px 68px,43px 43px;opacity:.2}
.meteo-sky p{color:#bdc7de}.meteo-moon{display:flex;align-items:center;gap:1.2rem;position:relative}.meteo-moon-disc{width:clamp(5rem,9vw,8rem);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff,#d9ddea 55%,#a3aabc);box-shadow:0 0 28px rgba(222,227,255,.2),0 0 72px rgba(136,137,255,.18)}.meteo-sun-times{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-left:1px solid rgba(255,255,255,.14);position:relative}.meteo-sun-times article{padding:1rem;border-bottom:1px solid rgba(255,255,255,.1);background:rgba(7,13,33,.18)}.meteo-sun-times span{display:block;color:#aeb9d4;font-size:.75rem}.meteo-sun-times strong{font-family:var(--mc-mono);font-size:1.15rem;color:#f5f7ff}

.meteo-air-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border:1px solid var(--mc-line-strong);border-radius:var(--mc-radius-md);overflow:hidden;background:linear-gradient(145deg,color-mix(in srgb,var(--mc-forest) 5%,var(--mc-surface)),var(--mc-surface))}.meteo-aqi{background:linear-gradient(140deg,color-mix(in srgb,var(--mc-good) 12%,var(--mc-surface)),var(--mc-surface))}.meteo-pollen{display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:.7rem}.meteo-pollen article{padding:.85rem;border-top:2px solid color-mix(in srgb,var(--mc-forest) 55%,var(--mc-line));background:color-mix(in srgb,var(--mc-forest) 5%,var(--mc-surface));border-radius:0 0 var(--mc-radius-xs) var(--mc-radius-xs)}.meteo-pollen strong{display:block;font-family:var(--mc-mono)}

.meteo-marine{display:grid;grid-template-columns:minmax(12rem,.55fr) minmax(0,1.5fr);gap:1rem;align-items:stretch}.meteo-wave-visual{position:relative;overflow:hidden;min-height:15rem;border-radius:var(--mc-radius-xl);border:1px solid rgba(102,222,231,.2);background:radial-gradient(circle at 50% 120%,rgba(75,230,208,.34),transparent 58%),linear-gradient(150deg,#092238,#0b4057 55%,#0a5360);color:#f4fbff;display:grid;place-content:center;text-align:center;box-shadow:0 24px 60px rgba(2,31,48,.22),inset 0 1px 0 rgba(255,255,255,.07)}.meteo-wave-visual::before,.meteo-wave-visual::after{content:"";position:absolute;left:-15%;width:130%;height:38%;border-radius:45% 52% 0 0;background:rgba(108,232,219,.09);transform:rotate(-3deg)}.meteo-wave-visual::before{bottom:-9%;animation:meteo-wave 9s ease-in-out infinite}.meteo-wave-visual::after{bottom:-19%;background:rgba(97,174,255,.12);animation:meteo-wave 12s ease-in-out reverse infinite}.meteo-wave-visual span,.meteo-wave-visual small{position:relative;z-index:1}.meteo-wave-visual span{font-family:var(--mc-mono);font-size:3rem}.meteo-wave-visual small{color:#bfe7e9}@keyframes meteo-wave{50%{transform:translateX(6%) rotate(1deg)}}
.meteo-marine-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--mc-line-strong);border-radius:var(--mc-radius-md);overflow:hidden;background:linear-gradient(145deg,color-mix(in srgb,var(--mc-ocean) 6%,var(--mc-surface)),var(--mc-surface))}.meteo-marine-metrics article{padding:1rem;border-right:1px solid var(--mc-line);border-bottom:1px solid var(--mc-line)}.meteo-marine-metrics span{display:block;color:var(--mc-subtle);font-size:.75rem}.meteo-marine-metrics strong{font-family:var(--mc-mono);font-size:1.4rem}.meteo-marine-metrics small{color:var(--mc-subtle)}

.meteo-storm-layout{display:grid;grid-template-columns:17rem minmax(0,1fr);gap:1rem}.meteo-storm-index{position:relative;overflow:hidden;border:1px solid var(--mc-line-strong);border-radius:var(--mc-radius-lg);padding:1.2rem;background:radial-gradient(circle at 110% -10%,color-mix(in srgb,var(--mc-solar) 15%,transparent),transparent 9rem),linear-gradient(155deg,color-mix(in srgb,var(--mc-violet) 14%,var(--mc-surface)),var(--mc-surface));box-shadow:var(--mc-shadow-1),var(--mc-inner-highlight)}.meteo-storm-index::after{content:"ϟ";position:absolute;right:.8rem;top:.45rem;font-size:3rem;color:color-mix(in srgb,var(--mc-electric) 24%,transparent);transform:rotate(9deg)}.meteo-storm-index strong{display:block;font-family:var(--mc-mono);font-size:2.5rem}.meteo-storm-index span{color:var(--mc-subtle)}
.meteo-fire-status{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem;border:1px solid var(--mc-line);border-left:3px solid var(--mc-warning);border-radius:0 var(--mc-radius-sm) var(--mc-radius-sm) 0;background:linear-gradient(90deg,color-mix(in srgb,var(--mc-warning) 9%,var(--mc-surface)),var(--mc-surface))}.meteo-fire-status h2{margin:.2rem 0}.meteo-fire-status p{margin:0}
.meteo-drought-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--mc-line-strong);border-radius:var(--mc-radius-md);overflow:hidden;background:linear-gradient(145deg,color-mix(in srgb,var(--mc-watch) 5%,var(--mc-surface)),var(--mc-surface))}

.meteo-news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem}.meteo-news-grid article{position:relative;padding:1.05rem;border:1px solid var(--mc-line);border-radius:var(--mc-radius-sm);background:var(--mc-surface);box-shadow:var(--mc-inner-highlight)}.meteo-news-grid article::before{content:"";position:absolute;left:1.05rem;top:-1px;width:2.4rem;height:2px;background:linear-gradient(90deg,var(--mc-accent),var(--mc-violet))}.meteo-news-grid time{color:var(--mc-subtle);font-size:.74rem}.meteo-news-grid h2{font-size:1.2rem;margin:.4rem 0}.meteo-news-grid h2 a{color:var(--mc-text);text-decoration:none}.meteo-empty{grid-column:1/-1;padding:2rem 0}
.meteo-sky h2{color:#f4f7ff}.meteo-sky .meteo-kicker{color:#b9c7ff}.meteo-sky .meteo-moon strong{color:#f4f7ff}
