:root{--bg:#eef7fb;--ink:#18212f;--title:#0b5f86;--primary:#1f9ed6;--primary-dark:#0b7fb0;--button:#159bd3;--border:#c9e4ef;--muted:#657586;--white:#fff;--red:#dc6844;--green:#27875c}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:Calibri,Arial,sans-serif}
a{color:inherit}button{font:inherit}
.site-header{height:78px;padding:0 max(24px,calc((100% - 1220px)/2));display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid var(--border)}
.brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:var(--title)}
.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:50% 50% 45% 55%;background:linear-gradient(145deg,#58c9f0,var(--primary));color:#fff;font-size:28px;font-weight:700;font-style:italic}
.brand strong,.brand small{display:block}.brand strong{font-size:21px;line-height:1}.brand small{margin-top:5px;color:var(--muted);font-size:11px}
.site-header{height:104px}.brand-logo{display:block;width:clamp(260px,38vw,490px);height:auto;max-width:490px;max-height:90px;object-fit:contain}
@media(max-width:980px){.site-header{height:86px}.brand-logo{width:min(430px,calc(100vw - 105px));max-height:76px}.site-header nav.open{top:85px!important}}
@media(max-width:720px){.site-header{height:68px}.brand-logo{width:min(330px,calc(100vw - 88px));max-height:58px}.site-header nav.open{top:67px!important}}
nav{display:flex;align-items:center;gap:5px}nav a{padding:10px 13px;border-radius:7px;text-decoration:none;font-weight:700;color:#38546a}nav a:hover,nav a.active{background:#e4f5fb;color:var(--title)}
.menu-button{display:none;border:0;background:transparent;color:var(--title);font-size:24px;cursor:pointer}
.station-bar{min-height:42px;padding:8px max(24px,calc((100% - 1220px)/2));display:flex;align-items:center;justify-content:space-between;background:var(--title);color:#eaf8fd;font-size:13px}
.status-dot{display:inline-block;width:8px;height:8px;margin-right:8px;border-radius:50%}.status-dot.loading{background:#f5c55e}.status-dot.online{background:#5ee099;box-shadow:0 0 0 4px rgba(94,224,153,.15)}.status-dot.offline{background:#ff8177}.sep{margin:0 8px;color:#7fc8e2}.update-status{display:flex;align-items:center;gap:5px}.refresh{border:0;background:transparent;color:#fff;cursor:pointer;font-size:18px}.countdown-badge{display:inline-grid;place-items:center;min-width:38px;padding:4px 7px;background:#e6f5fb;color:#0b5f86;border-radius:15px;font-weight:700}
main{max-width:1220px;margin:0 auto;padding:0 24px 32px}
.hero{padding:42px 0 26px;display:flex;justify-content:space-between;align-items:flex-end;background:radial-gradient(circle at 92% 10%,rgba(91,198,236,.17),transparent 30%)}
.eyebrow{margin:0 0 7px;color:#5a7f90;font-size:11px;font-weight:800;letter-spacing:.14em}.hero h1{margin:0;color:var(--title);font-size:35px;line-height:1.1}.hero>div>p:last-child{margin:10px 0 0;color:var(--muted)}
.overview-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px;align-items:stretch}
.featured-card{padding:20px;background:#fff;border:1px solid var(--border);border-radius:8px;box-shadow:0 3px 12px rgba(31,82,120,.05)}
.featured-heading{display:flex;align-items:center;gap:11px}.featured-heading h2{margin:0;color:#397895;font-size:18px}
.temperature-feature{border-top:4px solid #ef9a5b}
.temperature-top{display:grid;grid-template-columns:1fr 176px;gap:18px}.temperature-value{display:flex;align-items:flex-end;margin:18px 0 10px;color:var(--title);font-size:66px;font-weight:700;line-height:.9}.temperature-degree{margin-left:4px;color:inherit;font:inherit;line-height:inherit}.trend-indicator{display:inline-grid;place-items:center;width:27px;height:27px;margin:0 0 10px 24px;border-radius:50%;font-size:23px;font-weight:800;line-height:1;animation:trend-fade 2.2s ease-in-out infinite}.trend-indicator.rising{color:#d94f3d;background:#fff0ed}.trend-indicator.falling{color:#168bc3;background:#e9f6fc}.trend-indicator.neutral{color:#2d9665;background:#eaf7f0}@keyframes trend-fade{0%,100%{opacity:.18}50%{opacity:1}}
.temperature-details{display:grid;grid-template-columns:1fr;gap:8px}.temperature-details>div{padding:10px 12px;background:#f5fafc;border:1px solid #e0edf2;border-radius:7px}.temperature-details>div>span{display:block;color:var(--muted);font-size:14px;font-weight:600}.temperature-details strong{display:block;margin-top:4px;color:var(--title);font-size:21px;line-height:1.15;white-space:nowrap}.temperature-details strong span{display:inline;color:inherit;font-size:inherit}
.perceived-heading{margin-top:28px;color:#397895;font-size:13px;font-weight:700}.sensation-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:6px}.sensation-row>div{display:grid;grid-template-columns:1fr auto;align-items:center;padding:11px 12px;border:1px solid #e5edf1;border-radius:7px}.sensation-row>div.heat-index-box{background:rgba(239,111,82,.07);border-color:rgba(220,104,68,.2)}.sensation-row>div.wind-chill-box{background:rgba(31,158,214,.07);border-color:rgba(31,158,214,.2)}.sensation-row>div>span{color:#365f73;font-size:15px;font-weight:700}.sensation-row strong{color:var(--title);font-size:20px;white-space:nowrap}.sensation-row strong span{display:inline}.sensation-row small{grid-column:1/3;margin-top:4px;color:#6f838e;font-size:10px}
.climate-band{display:flex;align-items:center;gap:10px;margin-top:10px;padding:8px 10px;background:#f7fafb;border:1px solid #e2edf2;border-radius:7px}.climate-band>span{flex:0 0 16px;width:16px;height:34px;border-radius:4px;background:#d7e4ea}.climate-band small,.climate-band strong{display:block}.climate-band small{color:var(--muted);font-size:9px}.climate-band strong{margin-top:2px;color:var(--title);font-size:15px}
.temperature-chart{margin-top:22px;padding-top:10px;border-top:1px solid #e5eef2}.chart-heading{display:flex;align-items:center;justify-content:space-between;color:var(--title);font-size:12px}.chart-heading span{color:var(--muted);font-size:10px}.chart-canvas{height:190px;margin-top:5px}.temperature-chart p{margin:5px 0 0;color:#8b5f55;font-size:10px}.temperature-chart p.chart-source-status{color:#617985}.temperature-chart p.chart-source-status.warning{color:#8b5f55}
.extremes-feature{padding-top:8px;border-top:4px solid #56b6db}.extremes-feature .panel-heading h2{color:#397895;font-size:16px;line-height:1.1}.extremes-feature .extremes{margin-top:4px}
.extremes-chart{margin-top:12px;padding-top:10px;border-top:1px solid #e5eef2}.extremes-canvas{height:205px;margin-top:5px}
.weather-card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}.weather-card{min-width:0;padding:16px;background:#fff;border:1px solid var(--border);border-top:4px solid var(--primary);border-radius:8px;box-shadow:0 3px 12px rgba(31,82,120,.05)}.humidity-pressure-card{border-top-color:#56b6db}.precipitation-card{border-top-color:#3c97cf}.wind-card{border-top-color:#5dc1a5}.ephemeris-card{border-top-color:#8e81c9}.weather-card-heading{display:flex;align-items:center;gap:9px;padding-bottom:11px;border-bottom:1px solid #e3eef3}.weather-card-heading h2{margin:0;color:var(--title);font-size:18px;line-height:1.1}.weather-card-icon{flex:0 0 32px;display:grid;place-items:center;width:32px;height:32px;border-radius:7px;background:#e8f6fb;font-size:20px}.weather-main-value{padding:13px 2px 8px;color:var(--title);font-size:34px;font-weight:700}.weather-main-value small,.wind-card-main small{margin-left:4px;color:#57707e;font-size:13px}.weather-detail-list{margin-top:5px}.weather-detail-list>div{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:34px;padding:7px 2px;border-bottom:1px solid #e5edf1;color:#536c79;font-size:12px}.weather-detail-list strong{color:#263f4e;text-align:right}.weather-detail-list .highlight-row{margin-top:4px;padding:7px 6px;background:#f2f9fc;border:0;border-radius:5px}.forecast-row img{display:block;width:52px;height:28px;object-fit:contain}.forecast-row img[hidden]{display:none}.snow-line-low{color:#d94f3d!important;font-weight:800}.rain-card-status{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:13px 2px 8px}.rain-card-status>strong{color:var(--title);font-size:20px}.wind-overview{display:grid;grid-template-columns:100px minmax(0,1fr);align-items:center;gap:8px;padding:12px 0 6px}.wind-card-main{display:flex;min-width:0;align-items:flex-start;flex-direction:column;gap:9px;padding:0;color:var(--title)}.wind-card-main>div{font-size:29px;font-weight:700;white-space:nowrap}.wind-card-main>strong.current-wind-direction{display:flex;width:100%;min-width:0;align-items:center;justify-content:flex-start;gap:12px;padding:0;background:transparent}.wind-dir-symbol,.wind-dir-degrees{display:inline-block;padding:4px 6px;border-radius:6px;font-size:13px}.wind-dir-symbol{background:#eef8f5;color:#27875c}.wind-dir-degrees{background:#edf2fa;color:#506ca2}.compass.wind-compass{width:94px;height:94px;flex-basis:94px;border-width:7px}.compass.wind-compass b{font-size:31px}.dominant-wind{margin:5px 0 8px;padding:10px;background:#f5fafc;border:1px solid #deedf2;border-radius:7px}.dominant-wind-label{display:block;margin-bottom:7px;color:#536c79;font-size:11px;font-weight:700}.dominant-wind-value{display:flex;align-items:center;gap:9px}.dominant-wind-value>span{display:grid;place-items:center;width:30px;height:30px;border-radius:6px;background:#6699ff;color:#fff;font-size:21px;font-weight:800;transition:background-color .3s;animation:trend-fade 2.2s ease-in-out infinite}.dominant-wind-value strong{font-size:17px;transition:color .3s}.dominant-wind small{display:block;margin:6px 0 0 39px;color:#657586;font-size:11px}.weather-detail-list>div.gust-row{align-items:flex-start}.gust-display{display:flex;align-items:flex-end;flex-direction:column;line-height:1.25}.gust-display>span{color:#263f4e;font-size:13px}.gust-display small{display:block;max-width:150px;margin-top:3px;color:#657586;font-size:10px;font-weight:600;text-align:right}.ephemeris-top{display:grid;grid-template-columns:1fr 88px;gap:10px}.ephemeris-top .weather-detail-list{margin-top:9px}.moon-summary{display:flex;align-items:center;flex-direction:column;padding-top:12px;color:#536c79;font-size:11px;text-align:center}.moon-summary img{width:62px;height:62px;margin:5px 0;object-fit:contain}.moon-summary strong{color:var(--title);font-size:13px}.ephemeris-extra{margin-top:8px}
.primary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:18px}
.metric{display:flex;gap:10px;align-items:flex-start;min-height:132px;padding:17px 14px;background:#fff;border:1px solid var(--border);border-top-width:3px;border-radius:8px;box-shadow:0 3px 10px rgba(31,82,120,.05)}
.metric-icon{flex:0 0 29px;display:grid;place-items:center;width:29px;height:29px;border-radius:7px;background:#e6f5fb;font-size:20px}.wind-arrow{transition:transform .3s}
.metric p{margin:2px 0 8px;color:var(--muted);font-size:14px;font-weight:600}.metric strong{display:block;color:var(--title);font-size:28px;line-height:1}.metric strong small{margin-left:4px;color:#526b79;font-size:12px}.metric div>span{display:block;margin-top:10px;color:var(--muted);font-size:12px;line-height:1.4}.metric div>span b{color:#425a68}
.metric.temperature{border-top-color:#ef9a5b}.metric.humidity{border-top-color:#56b6db}.metric.wind{border-top-color:#5dc1a5}.metric.pressure{border-top-color:#8e81c9}.metric.rain{border-top-color:#3c97cf}.metric.solar{border-top-color:#edbb45}
.content-grid{display:grid;grid-template-columns:1fr;gap:16px;margin-bottom:16px}.content-grid.lower{grid-template-columns:1fr 1fr}
.panel{padding:20px;background:#fff;border:1px solid var(--border);border-radius:8px;box-shadow:0 3px 12px rgba(31,82,120,.05)}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.panel h2{margin:0;color:var(--title);font-size:22px}
.update-chip,.state-badge{padding:6px 9px;border-radius:20px;background:#eaf5f9;color:#59717e;font-size:10px}.state-badge.dry{background:#edf7ee;color:#377348}.state-badge.wet{background:#e1f1fb;color:#176b98}
.extremes{margin-top:15px}.extreme-row{display:grid;grid-template-columns:1.25fr repeat(3,1fr);align-items:center;min-height:60px;padding:8px;border-bottom:1px solid #e4eef3;font-size:15px}.extreme-row b{font-size:17px}.extreme-row.header{min-height:32px;background:var(--primary);color:#fff;border:0;border-radius:6px 6px 0 0;font-size:12px;font-weight:700}.extreme-row>span:not(:first-child){text-align:right}.extreme-row small{display:block;margin-top:3px;color:#84959e;font-size:10px}.extreme-row .low b{color:#2787b5}.extreme-row .high b{color:#d76643}
.extreme-row.today-row{min-height:72px;background:#f5fafc}.extreme-row.today-row>strong{color:var(--title);font-size:19px}.extreme-row.today-row span{font-size:17px}.extreme-row.today-row b{font-size:22px}.extreme-row.today-row small{font-size:11px}
.comfort-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px}.comfort-strip>span{padding:10px;background:#f5fafc;border:1px solid #e1edf2;border-radius:7px;color:var(--muted);font-size:11px}.comfort-strip strong{display:block;margin-top:4px;color:var(--title);font-size:16px}
.detail-list{margin-top:13px}.detail-list>div{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:42px;padding:9px 2px;border-bottom:1px solid #e7f0f4;color:var(--muted);font-size:12px}.detail-list strong{color:#334e5f;text-align:right}.detail-list.compact{margin:0;flex:1}.detail-list.two-columns{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}
.wind-summary{display:flex;align-items:center;gap:25px;margin-top:14px}.compass{position:relative;flex:0 0 155px;width:155px;height:155px;border:10px solid #e4f2f7;border-radius:50%;box-shadow:inset 0 0 0 1px #9fcbdc}.compass span{position:absolute;color:#527080;font-size:10px;font-weight:700}.compass span:nth-child(1){top:5px;left:50%;transform:translateX(-50%)}.compass span:nth-child(2){right:7px;top:50%;transform:translateY(-50%)}.compass span:nth-child(3){bottom:5px;left:50%;transform:translateX(-50%)}.compass span:nth-child(4){left:7px;top:50%;transform:translateY(-50%)}.compass b{position:absolute;left:50%;top:50%;color:var(--primary);font-size:48px;transform-origin:center;transition:transform .3s}
.error-message{margin-top:12px;padding:12px;background:#fff3f1;border:1px solid #f1c3bb;border-radius:8px;color:#a84435;font-size:13px}
footer{padding:24px max(24px,calc((100% - 1220px)/2));display:flex;align-items:center;justify-content:space-between;background:#fff;border-top:1px solid var(--border);color:var(--muted);font-size:12px}footer strong,footer span{display:block}footer strong{margin-bottom:3px;color:var(--title);font-size:15px}footer a{color:var(--primary-dark)}
.visitor-counters{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:22px;min-height:72px;padding:16px 24px;background:#f5fafc;border-top:1px solid var(--border)}.visitor-counter-item{display:flex;align-items:center;justify-content:center;min-height:32px}.visitor-counter-item img{display:block;max-width:100%;height:auto;border:0}.site-footer-station{text-align:right}.site-footer-station .old-site-link{display:inline-block;margin-top:6px;color:var(--primary-dark);font-size:12px;font-weight:700;text-decoration:underline;text-underline-offset:2px}.site-footer-station .old-site-link:hover{color:var(--primary)}
.overview-side-stack{display:grid;grid-template-rows:repeat(2,minmax(0,1fr));gap:12px;min-height:0}.overview-side-stack>.featured-card,.overview-side-stack>.weather-card{min-height:0;overflow:hidden}.overview-side-stack .extremes-feature{padding:8px 12px}.overview-side-stack .extremes-feature .extremes{margin-top:3px}.overview-side-stack .extreme-row{min-height:39px;padding:4px 7px;font-size:13px}.overview-side-stack .extreme-row b{font-size:15px}.overview-side-stack .extreme-row.header{min-height:26px;font-size:10px}.overview-side-stack .extreme-row.today-row{min-height:47px}.overview-side-stack .extreme-row.today-row>strong{font-size:17px}.overview-side-stack .extreme-row.today-row span{font-size:15px}.overview-side-stack .extreme-row.today-row b{font-size:19px}.overview-side-stack .extreme-row small{margin-top:1px;font-size:8px}.overview-side-stack .humidity-pressure-card{padding:10px 12px}.overview-side-stack .weather-card-heading{padding-bottom:5px}.overview-side-stack .weather-card-heading h2{font-size:16px}.overview-side-stack .weather-card-icon{width:27px;height:27px;flex-basis:27px;font-size:17px}.overview-side-stack .weather-main-value{padding:5px 2px 2px;font-size:27px}.overview-side-stack .weather-detail-list{margin-top:1px}.overview-side-stack .weather-detail-list>div{min-height:24px;padding:3px 2px;font-size:10px}.overview-side-stack .weather-detail-list .highlight-row{margin-top:2px;padding:4px 5px}.overview-side-stack .forecast-row img{width:45px;height:22px}.precipitation-wide{grid-column:span 2}
.overview-side-stack .humidity-pressure-card .weather-main-value{font-size:33px}.overview-side-stack .humidity-pressure-card .weather-detail-list>div{min-height:27px;padding:4px 2px;font-size:12px}.overview-side-stack .humidity-pressure-card .weather-detail-list strong{font-size:12px}
.overview-side-stack .humidity-pressure-card .humidity-main{display:flex;align-items:center;flex-direction:column;padding:7px 2px 5px;text-align:center}.humidity-main-label{display:block;margin-bottom:2px;color:#536c79;font-size:13px;font-weight:700}.overview-side-stack .humidity-main>strong{color:var(--title);font-size:39px;line-height:1}.overview-side-stack .humidity-main>strong small{font-size:15px}
#pressureTrendRow.pressure-up{background:#fff0ed;color:#c94b39;font-weight:800}#pressureTrendRow.pressure-up strong{color:#c94b39}#pressureTrendRow.pressure-down{background:#eaf6fc;color:#0b7fb0;font-weight:800}#pressureTrendRow.pressure-down strong{color:#0b7fb0}
.overview-side-stack .extremes-feature{padding-left:10px;padding-right:10px}.overview-side-stack .extremes-feature .panel-heading h2{font-size:20px}.overview-side-stack .extreme-row{min-height:38px;padding:2px 6px;font-size:18px}.overview-side-stack .extreme-row b{font-size:20px}.overview-side-stack .extreme-row.header{min-height:27px;font-size:13px}.overview-side-stack .extreme-row small{font-size:11px}.overview-side-stack .extreme-row.today-row{min-height:48px}.overview-side-stack .extreme-row.today-row>strong{font-size:23px}.overview-side-stack .extreme-row.today-row span{font-size:20px}.overview-side-stack .extreme-row.today-row b{font-size:25px}.overview-side-stack .extreme-row.today-row small{font-size:12px}
.overview-side-stack .humidity-pressure-card .weather-card-heading h2{font-size:20px}.overview-side-stack .humidity-pressure-card .humidity-main-label{font-size:18px}.overview-side-stack .humidity-pressure-card .weather-detail-list>div{min-height:26px;padding:1px 2px;font-size:18px;line-height:1}.overview-side-stack .humidity-pressure-card .weather-detail-list strong{font-size:20px}.overview-side-stack .humidity-pressure-card .forecast-row{font-size:16px}.precipitation-card .weather-detail-list>div{font-size:18px;line-height:1.1}.precipitation-card .weather-detail-list strong{font-size:20px}.precipitation-card .rain-card-status{font-size:18px}.precipitation-card .rain-card-status>strong{font-size:25px}
.precipitation-card .weather-card-heading h2{font-size:20px}.precipitation-card .rain-card-status{font-size:18px}.precipitation-card .rain-card-status>strong{font-size:25px}.precipitation-card .weather-detail-list>div{min-height:37px;font-size:18px;line-height:1}.precipitation-card .weather-detail-list strong{font-size:20px}.precipitation-card #todayRainRow.rain-active{font-size:18px}.precipitation-card #todayRainRow.rain-active strong{font-size:20px}
.wind-card .weather-detail-list>div.gust-row{font-size:18px;line-height:1.1}.wind-card .gust-display>span{font-size:20px}.wind-card .gust-display small{font-size:12px}
@media(max-width:980px){.ephemeris-card{padding:12px}.ephemeris-card .sun-panel,.ephemeris-card .moon-panel{grid-template-columns:48px minmax(0,1fr);gap:6px;padding:7px}.ephemeris-card .sun-image,.ephemeris-card .moon-panel img{width:46px;height:46px}.ephemeris-card .sun-image{font-size:38px}.ephemeris-card .sun-panel-data,.ephemeris-card .moon-panel-data{min-width:0;font-size:12px}.ephemeris-card .sun-panel-data>span,.ephemeris-card .moon-panel-data>span{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px}.ephemeris-card .sun-panel-data b,.ephemeris-card .moon-panel-data b{min-width:0;font-size:12px;text-align:right}.ephemeris-card .sun-panel-data>span:last-child,.ephemeris-card .moon-panel-data>span:last-child{grid-template-columns:1fr}.ephemeris-card .sun-panel-data>span:last-child b,.ephemeris-card .moon-panel-data>span:last-child b{white-space:normal}}

/* Aggiornamento layout dal Live Summary */
.embedded-extremes{margin-top:18px;padding-top:14px;border-top:1px solid #e5eef2}.embedded-extremes .extremes{margin-top:0}.embedded-extremes .extreme-row{min-height:52px}.embedded-extremes .extreme-row.header{min-height:31px}.embedded-extremes .extreme-row.today-row{min-height:64px}
.overview-side-stack{grid-template-rows:auto auto}.overview-side-stack>.weather-card{overflow:visible}.overview-side-stack .precipitation-wide{grid-column:auto;grid-row:auto}.overview-side-stack .precipitation-card{height:auto;padding:14px 16px}.overview-side-stack .precipitation-card .weather-card-heading{padding-bottom:8px}.overview-side-stack .precipitation-card .weather-card-heading h2{font-size:20px}.overview-side-stack .precipitation-card .weather-detail-list{margin-top:4px}.overview-side-stack .precipitation-card .weather-detail-list>div{min-height:34px;padding:5px 2px;font-size:16px;line-height:1.05}.overview-side-stack .precipitation-card .weather-detail-list strong{font-size:18px}.overview-side-stack .precipitation-card #todayRainRow.rain-active{font-size:18px}.overview-side-stack .precipitation-card #todayRainRow.rain-active strong{font-size:20px}
@media(min-width:1201px){.weather-card-grid .cumulative-rain-card{grid-column:1/span 2;grid-row:1}.weather-card-grid .wind-card{grid-column:3;grid-row:1}.weather-card-grid .ephemeris-card{grid-column:4;grid-row:1}.weather-card-grid .daily-chart-stack{grid-column:1/span 4;grid-row:2;grid-template-columns:1fr 1fr;grid-template-rows:none}}
@media(max-width:1200px){.weather-card-grid .cumulative-rain-card{grid-column:1/span 2;grid-row:1}.weather-card-grid .daily-chart-stack{grid-column:1/span 2;grid-row:2}.weather-card-grid .wind-card{grid-column:1;grid-row:3}.weather-card-grid .ephemeris-card{grid-column:2;grid-row:3}}
@media(max-width:720px){.embedded-extremes{margin-top:15px;padding-top:12px}.embedded-extremes .extreme-row{min-height:48px}.weather-card-grid .cumulative-rain-card,.weather-card-grid .daily-chart-stack,.weather-card-grid .wind-card,.weather-card-grid .ephemeris-card{grid-column:1;grid-row:auto}}

/* Barre identificazione e aggiornamento Summary */
.station-identity{display:flex;align-items:center;flex-wrap:wrap}.station-bar-summary{margin:0 0 12px;padding:10px 15px;border-radius:9px;box-shadow:0 4px 14px rgba(11,95,134,.12);font-size:15px}.station-bar-summary .update-status{font-size:15px}.station-bar-summary .status-dot{width:10px;height:10px}.station-bar-summary .countdown-badge{font-size:12px}
.overview-grid,.weather-card-grid{transition:opacity .35s ease,filter .35s ease}.station-offline .overview-grid,.station-offline .weather-card-grid{opacity:.42;filter:grayscale(.35)}.station-offline .station-bar-summary{background:#784b50}.station-offline .status-dot.offline{background:#ff4d43;box-shadow:0 0 0 4px rgba(255,77,67,.18)}
@media(max-width:720px){.station-identity{line-height:1.35}.station-bar-summary{align-items:flex-start;gap:5px;flex-direction:column}.station-bar-summary .update-status{width:100%;justify-content:space-between}}

/* Pannello menu laterale */
body.menu-open{overflow:hidden}.site-header{justify-content:flex-start;gap:18px}.site-header .menu-button{display:grid;place-items:center;order:-1;flex:0 0 46px;width:46px;height:46px;padding:0;border:1px solid #cbe5ef;border-radius:12px;background:#eef8fc;color:var(--title);font-size:27px;line-height:1;cursor:pointer;transition:background .18s,transform .18s}.site-header .menu-button:hover{background:#dff3fa;transform:translateY(-1px)}.site-header .brand{margin-right:auto}
#mainNav{position:fixed!important;z-index:1001;top:0!important;bottom:0;left:0;display:flex!important;flex-direction:column;align-items:stretch;width:min(360px,88vw);padding:0;background:#fff;border:0;border-right:1px solid var(--border);border-radius:0;box-shadow:12px 0 38px rgba(18,61,85,.2);transform:translateX(-105%);visibility:hidden;transition:transform .24s ease,visibility 0s linear .24s}#mainNav.open{transform:translateX(0);visibility:visible;transition:transform .24s ease}
.side-menu-header{display:flex;align-items:center;justify-content:space-between;min-height:92px;padding:18px 20px;background:linear-gradient(135deg,#075b80,#159bd3);color:#fff}.side-menu-header strong,.side-menu-header span{display:block}.side-menu-header strong{font-size:21px}.side-menu-header span{margin-top:4px;color:#cceefa;font-size:12px}.menu-close{display:grid;place-items:center;width:42px;height:42px;padding:0;border:1px solid rgba(255,255,255,.35);border-radius:50%;background:rgba(255,255,255,.1);color:#fff;font-size:29px;line-height:1;cursor:pointer}
.side-menu-content{overflow-y:auto;padding:10px 14px 24px}.menu-section{padding:13px 0;border-bottom:1px solid #e7f0f4}.menu-section:last-child{border-bottom:0}.menu-section-title{display:block;padding:0 13px 7px;color:#7a91a0;font-size:10px;font-weight:800;letter-spacing:.13em}#mainNav .menu-section a{display:flex;align-items:center;margin:2px 0;padding:12px 13px;border-radius:9px;color:#304f61;font-size:15px;font-weight:700;text-decoration:none}#mainNav .menu-section a:hover,#mainNav .menu-section a.active{background:#e8f6fb;color:var(--title)}
.menu-backdrop{position:fixed;z-index:1000;inset:0;background:rgba(9,31,45,.53);opacity:0;transition:opacity .22s}.menu-backdrop.visible{opacity:1}
@media(max-width:720px){.site-header{gap:10px;padding-left:12px;padding-right:12px}.site-header .menu-button{flex-basis:42px;width:42px;height:42px;border-radius:10px}.brand-logo{width:min(310px,calc(100vw - 78px))}.side-menu-header{min-height:78px}}

/* Webcam in apertura home */
.webcam-section{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:28px 0 18px}.webcam-card{overflow:hidden;background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:0 5px 18px rgba(31,82,120,.08)}.webcam-frame{position:relative;overflow:hidden;width:100%;aspect-ratio:16/9;background:#0a1c26}.webcam-frame iframe,.webcam-frame img{display:block;width:100%;height:100%;border:0;object-fit:cover}.webcam-primary-frame>iframe{position:absolute;inset:0}.webcam-primary-cover,.webcam-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity 1.1s ease,visibility 0s linear 1.1s}.webcam-primary-cover{z-index:2}.webcam-primary-cover.active,.webcam-slide.active{opacity:1;visibility:visible;transition:opacity 1.1s ease}.webcam-primary-cover:not(.active){pointer-events:none}.webcam-slides{position:relative}.webcam-caption{display:flex;align-items:center;justify-content:center;gap:9px;min-height:47px;padding:10px 14px;color:#31586d;font-size:15px}.webcam-caption strong{font-weight:800}.webcam-live-dot{width:8px;height:8px;border-radius:50%;background:#e45f4d;box-shadow:0 0 0 4px rgba(228,95,77,.12)}
@media(max-width:720px){.webcam-section{grid-template-columns:1fr;padding-top:18px}.webcam-caption{min-height:43px}}
@media(prefers-reduced-motion:reduce){.webcam-primary-cover,.webcam-slide{transition:none}}

/* Spaghetti e satellite */
.home-media-section{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:0 0 18px}.home-media-frame{display:flex;align-items:center;justify-content:center;overflow:hidden;width:100%;aspect-ratio:16/9;background:#071821;text-decoration:none}.home-media-frame img{display:block;width:100%;height:100%;object-fit:contain}.media-caption{text-align:center;line-height:1.25}.media-caption strong{font-size:14px}
@media(max-width:720px){.home-media-section{grid-template-columns:1fr}}

/* Ingrandimento immagini e accordion mappe */
body.lightbox-open{overflow:hidden}.lightbox-trigger{cursor:zoom-in}.webcam-image-trigger{display:block;width:100%;height:100%;padding:0;border:0;background:transparent}.home-media-frame{padding:0;border:0;cursor:zoom-in}
[hidden]{display:none!important}
.weather-maps-accordion{margin:0 0 18px;background:rgba(255,255,255,.58);border:1px solid rgba(151,204,224,.72);border-radius:12px;box-shadow:0 5px 18px rgba(31,82,120,.05);backdrop-filter:blur(7px)}.accordion-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:68px;padding:13px 18px;border:0;border-radius:12px;background:linear-gradient(135deg,rgba(255,255,255,.82),rgba(214,241,250,.72));color:var(--title);text-align:left;cursor:pointer;transition:background .18s}.accordion-toggle:hover,.accordion-toggle.open{background:linear-gradient(135deg,rgba(246,252,255,.94),rgba(192,232,247,.84))}.accordion-toggle span:first-child{display:flex;flex-direction:column}.accordion-toggle strong{font-size:19px}.accordion-toggle small{margin-top:3px;color:#5f7e8e;font-size:12px}.accordion-arrow{color:#168ebd;font-size:28px;line-height:1;transition:transform .22s}.accordion-toggle.open .accordion-arrow{transform:rotate(180deg)}
.weather-maps-panel{padding:14px}.weather-maps-grid{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:8px}.weather-map-item{display:flex;min-width:0;flex-direction:column;align-items:stretch;overflow:hidden;padding:0;border:1px solid #d2e6ee;border-radius:8px;background:#edf7fb;color:#166c94;cursor:zoom-in}.weather-map-item:hover{border-color:#58bde3;box-shadow:0 4px 12px rgba(26,120,160,.14)}.weather-map-item img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;background:#dcecf2}.weather-map-item span{display:grid;place-items:center;min-height:48px;padding:6px 3px;font-size:10px;font-weight:800;line-height:1.1;text-align:center}
.image-lightbox{position:fixed;z-index:2000;inset:0;display:flex;align-items:center;justify-content:center;padding:32px;background:rgba(3,17,25,.86);opacity:0;transition:opacity .22s}.image-lightbox.visible{opacity:1}.lightbox-content{display:flex;max-width:96vw;max-height:92vh;flex-direction:column;overflow:hidden;background:#071821;border:1px solid rgba(255,255,255,.22);border-radius:12px;box-shadow:0 20px 70px rgba(0,0,0,.5)}.lightbox-content img{display:block;max-width:94vw;max-height:82vh;object-fit:contain}.lightbox-caption{padding:12px 18px;background:#fff;color:#244d62;font-size:15px;font-weight:800;text-align:center}.lightbox-close{position:fixed;z-index:2001;top:16px;right:20px;display:grid;place-items:center;width:46px;height:46px;padding:0;border:1px solid rgba(255,255,255,.45);border-radius:50%;background:rgba(5,39,56,.8);color:#fff;font-size:32px;line-height:1;cursor:pointer}
@media(max-width:980px){.weather-maps-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:600px){.weather-maps-panel{padding:10px}.weather-maps-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.weather-map-item span{font-size:11px}.image-lightbox{padding:12px}.lightbox-close{top:10px;right:10px}.lightbox-content img{max-width:96vw;max-height:78vh}}
@media(prefers-reduced-motion:reduce){.accordion-arrow,.image-lightbox{transition:none}}

/* Dimensione media e previsioni sotto il summary */
.webcam-section,.home-media-section{max-width:1050px;margin-left:auto;margin-right:auto}
.external-forecast-section{display:grid;gap:14px;margin-top:18px}.forecast-card{overflow:hidden;background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:0 5px 18px rgba(31,82,120,.07)}.forecast-card-heading{display:flex;align-items:center;justify-content:space-between;min-height:67px;padding:12px 17px;border-bottom:1px solid #dcecf2}.forecast-card-heading span{display:block;color:#6d8795;font-size:10px;font-weight:800;letter-spacing:.12em}.forecast-card-heading h2{margin:3px 0 0;color:var(--title);font-size:20px}.forecast-card-heading>strong{padding:6px 10px;border-radius:16px;background:#e5f5fb;color:#087da9;font-size:12px}.windy-frame{height:430px}.windy-frame iframe{display:block;width:100%;height:100%;border:0}.forecast-two-columns{display:grid;grid-template-columns:1fr 1fr;gap:14px}.forecast-image-link{display:flex;align-items:center;justify-content:center;min-height:300px;padding:14px;background:#f7fbfd}.forecast-image-link img{display:block;width:100%;height:auto;max-height:360px;object-fit:contain}.ilmeteo-frame{display:flex;align-items:flex-start;justify-content:center;min-height:300px;padding:18px;background:#f7fbfd}.ilmeteo-frame iframe{display:block;width:100%;max-width:400px;height:260px;border:0}
@media(max-width:720px){.forecast-two-columns{grid-template-columns:1fr}.windy-frame{height:380px}.forecast-card-heading h2{font-size:18px}}
.ilmeteo-two-columns{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:14px}.ilmeteo-daily-frame iframe{height:260px;max-width:400px}.ilmeteo-hourly-frame iframe{height:600px;max-width:460px}.ilmeteo-hourly-frame{min-height:640px}
@media(max-width:720px){.ilmeteo-two-columns{grid-template-columns:1fr}.ilmeteo-hourly-frame{min-height:620px}}

/* Immagini, donazioni e reti meteo */
.community-section{display:grid;gap:14px;margin-top:18px}.community-image-row{display:flex;align-items:center;justify-content:center;overflow:hidden;padding:12px;background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:0 5px 18px rgba(31,82,120,.06)}.community-image-row img{display:block;max-width:100%;height:auto;max-height:420px;object-fit:contain}.donation-card{padding:24px;background:#fff;border:1px solid var(--border);border-radius:12px;text-align:center;box-shadow:0 5px 18px rgba(31,82,120,.06)}.donation-card h2{margin:0;color:var(--title);font-size:21px}.donation-card p{margin:7px 0 16px;color:var(--muted);font-size:14px}.donation-card form{display:inline-block}.donation-card input[type=image]{display:block;margin:auto}.paypal-pixel{position:absolute;width:1px;height:1px;opacity:0}
.weather-networks-card{overflow:hidden;background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:0 5px 18px rgba(31,82,120,.06)}.networks-heading{padding:18px;text-align:center;border-bottom:1px solid #dcecf2}.networks-heading>span{color:#6d8795;font-size:10px;font-weight:800;letter-spacing:.12em}.networks-heading h2{margin:4px 0;color:var(--title);font-size:21px}.networks-heading p{margin:0;color:var(--muted);font-size:13px}.weather-networks-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;padding:16px}.weather-networks-grid a,.network-logo{display:flex;align-items:center;justify-content:center;min-height:112px;padding:10px;border:1px solid #d9e9ef;border-radius:9px;background:#f8fcfd}.weather-networks-grid a{transition:border-color .18s,transform .18s}.weather-networks-grid a:hover{border-color:#58bde3;transform:translateY(-2px)}.weather-networks-grid img{display:block;max-width:100%;max-height:88px;object-fit:contain}
@media(max-width:900px){.weather-networks-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:560px){.weather-networks-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:10px}.weather-networks-grid a,.network-logo{min-height:90px}.community-image-row{padding:7px}}

/* Navigazione orizzontale desktop, pannello laterale mobile */
.menu-category{width:100%;border:0;background:transparent;text-align:left;cursor:pointer}.menu-dropdown{display:block}.top-home-link{display:block;margin:2px 0;padding:12px 13px;border-radius:9px;color:#304f61;font-size:15px;font-weight:700;text-decoration:none}.top-home-link:hover,.top-home-link.active{background:#e8f6fb;color:var(--title)}
@media(min-width:1181px){
  .site-header{position:relative;height:154px;padding-bottom:50px}.site-header .menu-button{display:none}.site-header .brand{margin-right:auto}
  #mainNav{position:absolute!important;z-index:100;top:auto!important;right:0;bottom:0;left:0;display:block!important;width:auto;height:50px;padding:0;background:#0b5f86;border:0;border-radius:0;box-shadow:none;transform:none;visibility:visible;transition:none;overflow:visible}
  #mainNav .side-menu-header{display:none}.side-menu-content{display:flex;align-items:flex-start;justify-content:center;height:50px;padding:0;overflow:visible}
  .top-home-link{display:flex;align-items:center;height:50px;margin:0;padding:0 13px;border-radius:0;color:#fff;font-size:12px;font-weight:800}.top-home-link:hover,.top-home-link.active{background:#168ebd;color:#fff}
  #mainNav .menu-section{position:relative;flex:0 0 auto;padding:0;border:0}
  #mainNav .menu-section-title{display:flex;align-items:center;gap:6px;width:auto;height:50px;padding:0 11px;border:0;border-radius:0;background:transparent;color:#fff;font-size:11px;font-weight:800;letter-spacing:.02em;white-space:nowrap}
  #mainNav .menu-section-title::after{content:"⌄";font-size:15px;color:#aee3f6;transform:translateY(-1px)}
  #mainNav .menu-section:hover>.menu-section-title,#mainNav .menu-section:focus-within>.menu-section-title,#mainNav .menu-section.open-category>.menu-section-title{background:#168ebd}
  #mainNav .menu-dropdown{position:absolute;top:50px;left:0;display:none;width:255px;padding:7px;background:#fff;border:1px solid #c8e0ea;border-top:3px solid #27a8d9;border-radius:0 0 9px 9px;box-shadow:0 14px 34px rgba(12,55,78,.2)}
  #mainNav .menu-section:hover>.menu-dropdown,#mainNav .menu-section:focus-within>.menu-dropdown,#mainNav .menu-section.open-category>.menu-dropdown{display:block}
  #mainNav .menu-dropdown-wide{width:470px;grid-template-columns:1fr 1fr;column-gap:6px}
  #mainNav .menu-section:hover>.menu-dropdown-wide,#mainNav .menu-section:focus-within>.menu-dropdown-wide,#mainNav .menu-section.open-category>.menu-dropdown-wide{display:grid}
  #mainNav .menu-dropdown-right{right:0;left:auto}
  #mainNav .menu-dropdown a{display:flex;align-items:center;min-height:39px;margin:0;padding:8px 11px;border-bottom:1px solid #e5eef2;border-radius:5px;color:#345668;font-size:13px;font-weight:700;line-height:1.15;text-decoration:none;white-space:normal}
  #mainNav .menu-dropdown a:last-child{border-bottom:0}#mainNav .menu-dropdown a:hover{background:#e7f6fb;color:#0876a2}
}
.precipitation-card #todayRainRow.rain-active{font-size:23px!important;color:#0b7fb0!important;font-weight:800}.precipitation-card #todayRainRow.rain-active strong{font-size:26px!important;color:#0b7fb0!important;font-weight:800}
@media(max-width:720px){.weather-card-grid{grid-template-columns:minmax(0,1fr)!important}.weather-card-grid>.weather-card,.precipitation-wide,.cumulative-rain-card,.wind-card,.ephemeris-card,.daily-chart-stack{grid-column:1!important;width:100%;max-width:100%;box-sizing:border-box}.precipitation-wide,.cumulative-rain-card,.wind-card,.ephemeris-card,.daily-chart-stack{grid-row:auto!important}.daily-chart-stack{grid-template-columns:minmax(0,1fr)!important}}
@media(max-width:980px){.ephemeris-card .sun-panel,.ephemeris-card .moon-panel{grid-template-columns:minmax(0,1fr)!important;align-items:start}.ephemeris-card .sun-image,.ephemeris-card .moon-panel img{margin:0 auto}.ephemeris-card .sun-panel-data,.ephemeris-card .moon-panel-data{width:100%!important;max-width:100%}.ephemeris-card .moon-panel-data>strong{text-align:center}.ephemeris-card .sun-panel-data>span,.ephemeris-card .moon-panel-data>span{width:100%!important;grid-template-columns:minmax(0,1fr) max-content!important}.ephemeris-card .sun-panel-data b,.ephemeris-card .moon-panel-data b{max-width:100%;overflow-wrap:anywhere}.ephemeris-card .sun-panel-data>span:last-child,.ephemeris-card .moon-panel-data>span:last-child{grid-template-columns:minmax(0,1fr) max-content!important}.ephemeris-card .sun-panel-data>span:last-child b,.ephemeris-card .moon-panel-data>span:last-child b{white-space:nowrap}}
.daily-chart-stack{grid-column:3/span 2;grid-row:2;display:grid;grid-template-rows:1fr 1fr;gap:12px;min-width:0;height:100%}.daily-thermal-card,.daily-weather-card{min-height:0;padding:12px 14px}.daily-chart-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.daily-chart-heading h2{margin:0;color:var(--title);font-size:16px}.daily-chart-heading span{padding:3px 7px;background:#eaf6fc;border-radius:10px;color:#397895;font-size:10px;font-weight:700}.daily-chart-fade{height:120px;margin-top:5px;opacity:1;transition:opacity .55s ease}.daily-chart-fade.is-fading{opacity:0}.daily-thermal-card>p,.daily-weather-card>p{margin:4px 0 0;color:#657586;font-size:10px}.daily-thermal-card>p.warning,.daily-weather-card>p.warning{color:#a35b48}
@media(max-width:1200px){.daily-chart-stack{grid-column:1/span 2;grid-row:3;grid-template-columns:1fr 1fr;grid-template-rows:none}.wind-card{grid-row:4!important}.ephemeris-card{grid-row:4!important}.daily-chart-slot{min-height:220px}.daily-chart-fade{height:190px}}
@media(max-width:720px){.daily-chart-stack{grid-column:1;grid-row:auto;grid-template-columns:1fr;grid-template-rows:auto}.wind-card,.ephemeris-card{grid-row:auto!important}.daily-chart-slot{min-height:0}.daily-chart-fade{height:220px}}
@media(max-width:980px){.ephemeris-card .sun-panel,.ephemeris-card .moon-panel{grid-template-columns:minmax(0,1fr);align-items:start}.ephemeris-card .sun-image,.ephemeris-card .moon-panel img{margin:0 auto}.ephemeris-card .sun-panel-data,.ephemeris-card .moon-panel-data{width:100%;max-width:100%}.ephemeris-card .moon-panel-data>strong{text-align:center}.ephemeris-card .sun-panel-data>span,.ephemeris-card .moon-panel-data>span{width:100%;grid-template-columns:minmax(0,1fr) max-content}.ephemeris-card .sun-panel-data b,.ephemeris-card .moon-panel-data b{max-width:100%;overflow-wrap:anywhere}.ephemeris-card .sun-panel-data>span:last-child,.ephemeris-card .moon-panel-data>span:last-child{grid-template-columns:minmax(0,1fr) max-content}.ephemeris-card .sun-panel-data>span:last-child b,.ephemeris-card .moon-panel-data>span:last-child b{white-space:nowrap}}
.precipitation-card .weather-card-heading h2{font-size:20px}.precipitation-card .rain-card-status{font-size:18px}.precipitation-card .rain-card-status>strong{font-size:25px}.precipitation-card .weather-detail-list>div{min-height:37px;font-size:18px;line-height:1}.precipitation-card .weather-detail-list strong{font-size:20px}.precipitation-card #todayRainRow.rain-active{font-size:18px}.precipitation-card #todayRainRow.rain-active strong{font-size:20px}
.wind-card .weather-detail-list>div.gust-row{font-size:18px;line-height:1.1}.wind-card .gust-display>span{font-size:20px}.wind-card .gust-display small{font-size:12px}
@media(max-width:980px){.ephemeris-card{padding:12px}.ephemeris-card .sun-panel,.ephemeris-card .moon-panel{grid-template-columns:48px minmax(0,1fr);gap:6px;padding:7px}.ephemeris-card .sun-image,.ephemeris-card .moon-panel img{width:46px;height:46px}.ephemeris-card .sun-image{font-size:38px}.ephemeris-card .sun-panel-data,.ephemeris-card .moon-panel-data{min-width:0;font-size:12px}.ephemeris-card .sun-panel-data>span,.ephemeris-card .moon-panel-data>span{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px}.ephemeris-card .sun-panel-data b,.ephemeris-card .moon-panel-data b{min-width:0;font-size:12px;text-align:right}.ephemeris-card .sun-panel-data>span:last-child,.ephemeris-card .moon-panel-data>span:last-child{grid-template-columns:1fr}.ephemeris-card .sun-panel-data>span:last-child b,.ephemeris-card .moon-panel-data>span:last-child b{white-space:normal}}
.weather-card-grid{align-items:start}.precipitation-wide{grid-column:1/span 2;grid-row:1}.wind-card{grid-column:3;grid-row:1}.ephemeris-card{grid-column:4;grid-row:1}.cumulative-rain-card{grid-column:1/span 2;grid-row:2;border-top-color:#3c97cf}.cumulative-rain-canvas{height:300px;margin-top:12px}.cumulative-rain-card>p{margin:7px 0 0;color:#657586;font-size:10px}.cumulative-rain-card>p.warning{color:#a35b48}
.weather-card-grid{align-items:stretch}.precipitation-wide,.wind-card,.ephemeris-card{height:100%}.wind-card .weather-card-heading h2{font-size:20px}.wind-card .wind-card-main>div{font-size:32px}.wind-card .wind-dir-symbol,.wind-card .wind-dir-degrees{font-size:14px}.wind-card .dominant-wind-label{font-size:12px}.wind-card .dominant-wind-value strong{font-size:19px}.wind-card .dominant-wind small{font-size:12px}.wind-card .weather-detail-list>div{font-size:13px}.wind-card .gust-display>span{font-size:14px}.wind-card .gust-display small{font-size:11px}.moon-panel{display:grid;grid-template-columns:70px 1fr;align-items:center;gap:11px;margin-top:9px;padding:9px;background:#f5fafc;border:1px solid #e0edf2;border-radius:7px}.moon-panel img{width:66px;height:66px;object-fit:contain}.moon-panel img[hidden]{display:none}.moon-panel-data{display:grid;gap:4px;color:#657586;font-size:11px}.moon-panel-data>strong{color:var(--title);font-size:14px}.moon-panel-data span{display:flex;justify-content:space-between;gap:8px}.moon-panel-data b{color:#263f4e}.ephemeris-card .ephemeris-extra{margin-top:5px}
.precipitation-card .weather-card-heading h2{font-size:20px}.precipitation-card .rain-card-status{font-size:13px}.precipitation-card .rain-card-status>strong{font-size:23px}.precipitation-card .weather-detail-list>div{min-height:37px;font-size:14px}.precipitation-card .weather-detail-list strong{font-size:14px}.precipitation-card .weather-detail-list>div.rain-active{background:#eaf6fc;color:#0b7fb0;font-weight:800}.precipitation-card .weather-detail-list>div.rain-active strong{color:#0b7fb0;font-weight:800}.precipitation-card #todayRainRow.rain-active{font-size:17px}.precipitation-card #todayRainRow.rain-active strong{font-size:18px}
.ephemeris-section-title{margin-top:11px;color:#b87813;font-size:14px;font-weight:800}.ephemeris-section-title.moon-title{margin-top:13px;color:#5f6290}.sun-panel{display:grid;grid-template-columns:70px 1fr;align-items:center;gap:11px;margin-top:5px;padding:9px;background:#fff9e9;border:1px solid #f2dfaa;border-radius:7px}.sun-image{display:grid;place-items:center;width:66px;height:66px;font-size:49px;filter:drop-shadow(0 2px 3px rgba(207,143,24,.25))}.sun-panel-data{display:grid;gap:5px;color:#6c6f73;font-size:11px}.sun-panel-data span{display:flex;justify-content:space-between;gap:8px}.sun-panel-data b{color:#714f16}.ephemeris-card .moon-panel{margin-top:5px;background:#f5f5fb;border-color:#dedff0}
.ephemeris-card .weather-card-heading h2{font-size:20px}.ephemeris-section-title{font-size:16px}.sun-panel,.moon-panel{grid-template-columns:68px minmax(0,1fr);gap:9px}.sun-panel-data,.moon-panel-data{font-size:13px}.sun-panel-data span,.moon-panel-data span{align-items:center}.sun-panel-data b,.moon-panel-data b,.degree-value{white-space:nowrap}.moon-panel-data>strong{font-size:16px}.moon-panel img{width:64px;height:64px}.sun-image{width:64px;height:64px;font-size:48px}
.sun-panel-data>span,.moon-panel-data>span{display:flex}.sun-panel-data b>span,.moon-panel-data b>span,.degree-value>span{display:inline!important}.degree-value{display:inline-flex!important;align-items:baseline;white-space:nowrap}.sun-panel-data b,.moon-panel-data b{flex:0 0 auto;white-space:nowrap}
@media(max-width:980px){.temperature-top{grid-template-columns:1fr 150px}.weather-card-grid,.primary-grid{grid-template-columns:repeat(2,1fr)}nav{display:none}.menu-button{display:block}.site-header{position:relative}.site-header nav.open{display:flex;position:absolute;z-index:20;top:67px;left:12px;right:12px;flex-direction:column;align-items:stretch;padding:10px;background:#fff;border:1px solid var(--border);border-radius:8px;box-shadow:0 12px 30px rgba(31,82,120,.18)}}
@media(max-width:720px){.site-header{height:68px}.brand small{display:none}.station-bar{align-items:flex-start;gap:5px;flex-direction:column}.hero{padding-top:28px}.hero h1{font-size:29px}.overview-grid,.weather-card-grid{grid-template-columns:1fr}.overview-side-stack{grid-template-rows:auto}.overview-side-stack>.featured-card,.overview-side-stack>.weather-card{overflow:visible}.precipitation-wide{grid-column:span 1}.primary-grid{grid-template-columns:repeat(2,1fr)}.content-grid,.content-grid.lower{grid-template-columns:1fr}.detail-list.two-columns{grid-template-columns:1fr}footer{align-items:flex-start;flex-direction:column;gap:12px}}

/* Peso tipografico dei valori nei box Umidita/Pressione e Precipitazioni */
.humidity-pressure-card .humidity-main>strong,.humidity-pressure-card .weather-detail-list strong{font-weight:400}.humidity-pressure-card #relativePressureRow strong,.humidity-pressure-card #pressureTrendRow strong{font-weight:800}.precipitation-card:not(.is-raining) .weather-detail-list strong{font-weight:400!important}.precipitation-card.is-raining .weather-detail-list strong{font-weight:700}
@media(max-width:480px){main{padding-left:12px;padding-right:12px}.primary-grid{grid-template-columns:1fr}.metric{min-height:104px}.panel,.featured-card{padding:15px}.panel-heading{align-items:flex-start;flex-direction:column}.temperature-top{grid-template-columns:1fr}.temperature-value{font-size:58px}.temperature-details{grid-template-columns:1fr 1fr}.sensation-row{grid-template-columns:1fr}.sensation-row small{grid-column:1/3}.extreme-row{grid-template-columns:1fr repeat(3,.8fr);font-size:11px}.wind-summary{align-items:stretch;flex-direction:column}.compass{margin:0 auto}}
@media(max-width:1200px){.weather-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.precipitation-wide{grid-column:1/span 2;grid-row:1}.cumulative-rain-card{grid-column:1/span 2;grid-row:2}.wind-card{grid-column:1;grid-row:3}.ephemeris-card{grid-column:2;grid-row:3}}
@media(max-width:720px){.precipitation-wide,.cumulative-rain-card,.wind-card,.ephemeris-card{grid-column:1;grid-row:auto}.cumulative-rain-canvas{height:260px}}
.precipitation-card .weather-card-heading h2{font-size:22px}.precipitation-card .rain-card-status{font-size:20px}.precipitation-card .rain-card-status>strong{font-size:29px}.precipitation-card .weather-detail-list>div{min-height:42px;font-size:20px}.precipitation-card .weather-detail-list strong{font-size:23px}.precipitation-card #todayRainRow.rain-active{font-size:22px}.precipitation-card #todayRainRow.rain-active strong{font-size:25px}
.precipitation-card .weather-card-heading h2{font-size:20px}.precipitation-card .rain-card-status{font-size:18px}.precipitation-card .rain-card-status>strong{font-size:25px}.precipitation-card .weather-detail-list>div{min-height:37px;font-size:18px;line-height:1}.precipitation-card .weather-detail-list strong{font-size:20px}.precipitation-card #todayRainRow.rain-active{font-size:18px}.precipitation-card #todayRainRow.rain-active strong{font-size:20px}
.wind-card .weather-detail-list>div.gust-row{font-size:18px;line-height:1.1}.wind-card .gust-display>span{font-size:20px}.wind-card .gust-display small{font-size:12px}
@media(max-width:980px){.ephemeris-card{padding:12px}.ephemeris-card .sun-panel,.ephemeris-card .moon-panel{grid-template-columns:48px minmax(0,1fr);gap:6px;padding:7px}.ephemeris-card .sun-image,.ephemeris-card .moon-panel img{width:46px;height:46px}.ephemeris-card .sun-image{font-size:38px}.ephemeris-card .sun-panel-data,.ephemeris-card .moon-panel-data{min-width:0;font-size:12px}.ephemeris-card .sun-panel-data>span,.ephemeris-card .moon-panel-data>span{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px}.ephemeris-card .sun-panel-data b,.ephemeris-card .moon-panel-data b{min-width:0;font-size:12px;text-align:right}.ephemeris-card .sun-panel-data>span:last-child,.ephemeris-card .moon-panel-data>span:last-child{grid-template-columns:1fr}.ephemeris-card .sun-panel-data>span:last-child b,.ephemeris-card .moon-panel-data>span:last-child b{white-space:normal}}
