/* National forecast atlas. Scoped so local pages and the European chart keep their styles. */
.national{--atlas-bg:#102e42;--atlas-line:#ffffff20;--atlas-muted:#a5c4d5;background:var(--atlas-bg);color:#f1f8fc;border:1px solid #22495e;border-radius:22px;padding:0 24px 20px;box-shadow:0 18px 50px #0a34451a;scroll-margin-top:20px}
.national-topline{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:21px 0 6px;font-size:10px;letter-spacing:1.8px;color:#b8d3e1;font-weight:650}
.national-topline b{color:#4d8daa;margin:0 10px;font-weight:400}.national-topline a{font-size:11px;letter-spacing:0;font-weight:500;text-decoration:none;color:#a9d9f3}.national-topline a:hover{text-decoration:underline}
.national .forecast-controls{padding:0;border-bottom:1px solid var(--atlas-line);gap:20px}.national .day-tabs{gap:14px}.national .day-tabs button{color:#b7cbd5;padding:20px 16px 17px;border:0;border-bottom:3px solid transparent;border-radius:0;min-width:112px;background:transparent;text-align:left}.national .day-tabs button strong{font-size:19px;font-weight:650;letter-spacing:-.4px}.national .day-tabs button span{font-size:11px;color:#8fb1c5;margin-top:5px}.national .day-tabs button[aria-pressed=true]{background:transparent;color:#90d8ff;border-bottom-color:#72cbf7}.national .day-tabs button[aria-pressed=true] span{color:#c3eaff}.national .day-tabs button:hover{background:#ffffff05;color:#fff}.national-coverage{font-size:11px;color:var(--atlas-muted)}
.national-toolbar{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:18px 0}.national .period-tabs{gap:8px;margin:0}.national .period-tabs button{display:flex;align-items:center;gap:9px;border-radius:24px;border:1px solid #436078;background:#1a3b50;color:#d1e4ee;padding:10px 17px;font-size:13px;font-weight:600}.national .period-tabs button span{margin:0;font-size:10px;font-weight:400;color:#98b8cb}.national .period-tabs button[aria-pressed=true]{background:#187abd;border-color:#71c9fb;color:#fff;box-shadow:inset 0 1px 0 #ffffff26}.national .period-tabs button[aria-pressed=true] span{color:#d0eaff}
.sky-tabs{display:flex;gap:5px}.sky-tabs button{border-radius:7px;padding:9px 12px;font-size:11px;color:#94b9cb;background:transparent}.sky-tabs button[aria-pressed=true]{background:#ffffff12;color:#edf8ff}.sky-tabs button:hover{color:#fff;background:#ffffff0b}
.national .forecast-body{display:grid;grid-template-columns:minmax(0,3.25fr) minmax(190px,1fr);gap:16px;align-items:stretch}.national .map-column{border:0;align-self:stretch}.national .map-surface{border:1px solid #7bbad23d;border-radius:17px;isolation:isolate;background:#368bb9;height:100%}.national #italy-map{width:100%;height:auto;max-height:none;display:block}.national .context-country{fill:none;stroke:#a5c9d8;stroke-opacity:.3;stroke-width:.6}.national .region{fill:none;stroke:#9ec7d6;stroke-opacity:.48;stroke-width:.65}.national .sea-label{fill:#b5e3f3;opacity:.52;font-size:9px;letter-spacing:3px;font-style:normal}.national .country-label{fill:#aacbd7;opacity:.52;font-size:9px;letter-spacing:2.5px}
.national .map-caption{position:absolute;top:19px;left:21px;display:block;background:none;padding:0;border-radius:0;color:#fff;letter-spacing:0;pointer-events:none}.national .map-caption .map-tag{font-size:8px;letter-spacing:2px;background:none;color:#b5e3f6;padding:0;display:block;width:auto;height:auto;border-radius:0}.national .map-caption h2{font-size:22px;letter-spacing:-.6px;font-weight:650;margin:4px 0 5px;text-shadow:0 2px 10px #10394b}.national .map-caption #map-date{display:block;font-size:10px;color:#d4eafa}.national .map-tools{top:19px;right:18px;border:1px solid #afd8ee40;border-radius:9px;box-shadow:0 3px 15px #102e4320}.national .map-tools button{background:#123b54dc;color:#d7eefb;border-color:#80a7bc40;width:33px;height:34px}.national .map-tools button:hover{background:#23678e}.national .map-tools button:disabled{opacity:.65}
.national .map-stamp{color:#f4fbff;opacity:.9;bottom:35px;left:23px}.national .map-stamp .brand-mark{font-size:48px}.national .map-stamp>span:last-child{font-size:7px;letter-spacing:1.9px}.national .map-stamp strong{font-size:11px;font-weight:600;letter-spacing:2px}.national-source{position:absolute;bottom:39px;right:18px;font-size:7px;letter-spacing:1px;color:#d2e9f5}.national .map-credit{bottom:11px;right:18px;font-size:7px;color:#bcdfef}.national .map-loading{background:#205976;color:#e4f5ff}
.national .marker-name{font-size:10px;font-weight:550;fill:#e7f5fe;stroke:#164965;stroke-width:3;letter-spacing:.2px}.national .marker-link{stroke:#c2e0ed;opacity:.23}.national .marker-dot{fill:#c2e0ed;opacity:.6}.national .marker .hit-area{fill:#77cdff;stroke:none}.national .marker[aria-pressed=true] .hit-area{fill-opacity:.14;stroke:#a3dfff;stroke-width:.8;stroke-dasharray:none}.national .marker:hover .hit-area,.national .marker:focus-visible .hit-area{fill-opacity:.25;stroke:#d9f1ff;stroke-width:1.5}.national .numeric-marker{stroke:#ffffffb8;stroke-width:1.2}.national .numeric-label{fill:#10334c;font-size:15px;font-weight:700}.national .numeric-unit{fill:#2c5065;font-size:8px}.national .uncertainty-dot{fill:#ffd369;stroke:#466879;stroke-width:1}
.national .map-catalog{padding:0;border:0;margin:0;min-width:0;display:flex;flex-direction:column}.catalog-heading{display:none}.national #map-cards{display:grid;grid-template-rows:repeat(3,minmax(0,1fr));gap:12px;flex:1}.national .map-card{display:block;position:relative;isolation:isolate;width:100%;height:100%;min-height:0;border:1px solid #77b5d24f;border-radius:16px;background:#3b8fbb;padding:0;margin:0;overflow:hidden;text-align:left}.national .map-card .mini-map{width:100%;height:100%;position:absolute;inset:0;display:block;background:#3186b3}.national .map-card>div{position:absolute;inset:0;padding:13px 13px 11px;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(180deg,#082d4980,transparent 25%,transparent 65%,#092d4cdf)}.national .map-card strong{font-size:clamp(12px,1.25vw,18px);font-weight:650;color:#fff;letter-spacing:-.3px;align-self:flex-end;background:#103d58d9;padding:7px 9px;border:1px solid #b2d8ef70;border-radius:7px;box-shadow:0 3px 10px #13354920}.national .map-card small{font-size:9px;color:#f0f8fc;margin:0;line-height:1.5;letter-spacing:.15px}.national .map-card>span:last-child{display:none}.national .map-card:hover{border-color:#c9eeff;filter:brightness(1.08)}.national .map-card[aria-pressed=true]{outline:2px solid #82d3ff;outline-offset:-2px}.national .map-card[aria-pressed=true] strong{background:#167bbb;border-color:#b6e6ff}.catalog-note{font-size:9px;line-height:1.6;color:#9ec2d5;margin:10px 3px 0}.national .mini-map .mini-land,.national .mini-map .mini-context{fill:none;stroke:#afcddc;stroke-opacity:.35;stroke-width:1.2}.national .mini-value{font:700 16px -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;fill:#12374e;text-anchor:middle}.national .mini-wind{stroke:#f3fbff;stroke-width:2.7;fill:none;stroke-linecap:round;stroke-linejoin:round}
.national-timebar{display:flex;gap:22px;align-items:center;padding:20px 0 17px;margin-top:2px;border-bottom:1px solid var(--atlas-line)}.national #play-evolution{flex:none;background:#224b64;border:1px solid #4e758b;color:#e2f4ff;border-radius:8px;padding:11px 13px;font-size:11px}.national #play-evolution[aria-pressed=true]{background:#177cbb;border-color:#83d2ff}.national .timeline-control{margin:0;flex:1;display:flex;gap:18px;align-items:center}.national .timeline-control input{accent-color:#82d1fc;cursor:pointer;height:20px;min-width:40px;flex:1}.national .timeline-control output{font-size:10px;color:#c1e4f6;min-width:160px}.national-timezone{font-size:9px;color:#8aaec3}.national .map-legend{padding:17px 0 8px;gap:10px 22px}.national .legend-item{color:#c4d9e6;font-size:10px}.national .scale-legend{color:#c4d9e6;font-size:11px}.national .map-footnote{color:#98b8ca;font-size:10px;padding:0;line-height:1.8;max-width:800px}.national-comparison{border-top:1px solid var(--atlas-line);margin-top:17px;padding-top:15px}.national-comparison summary{font-size:11px;color:#b2d4e7;cursor:pointer;display:flex;justify-content:space-between;align-items:center;list-style:none}.national-comparison summary::-webkit-details-marker{display:none}.national-comparison summary>span{font-size:16px}.national-comparison[open] summary>span{transform:rotate(45deg)}.national-comparison>p{font-size:11px;color:#9dbed1}.national .evolution-card{border:1px solid #4c7990;background:#163c53;border-radius:10px;color:#deeff8}.national .evolution-card .mini-map{height:180px;background:#398dba}.national .evolution-card[aria-pressed=true]{border-color:#8edbff}.national .evolution-card>span small{color:#a9c9da}
.national-detail{background:#fff;border:1px solid #dce6ec;border-radius:16px;margin-top:20px;padding:25px 28px}.detail-topline{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-bottom:22px;border-bottom:1px solid #e2ebef}.detail-topline h2{font-size:23px;font-weight:550;letter-spacing:-.6px;margin:0}.national-detail .city-picker{padding:0;border:0;min-width:240px}.national-detail .city-picker>span{font-size:8px;margin-bottom:7px}.national-detail .city-picker select{font-size:12px;padding:10px 12px}.detail-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:42px}.national-detail .city-detail{padding-top:24px}.national-detail .city-detail h2{font-size:30px}.national-detail .weather-hero{margin:15px 0 13px}.national-detail .next-days{border:0;border-left:1px solid #e3ecf0;padding:0 0 0 32px;margin-top:24px}.national-detail .next-days h3{font-size:13px}.national-detail .source-note{display:block;margin-top:24px;padding:17px}.national-detail .source-note p{font-size:11px}.national-detail .source-note button{font-size:11px}.national-detail .weather-numbers{max-width:500px}.national-detail .weather-numbers strong{font-size:21px}.national-detail .weather-numbers small{font-size:8px}.national-detail .outlook-day{gap:16px;padding:14px 0}.national-detail .outlook-day>span:first-child{font-size:11px;width:72px}.national-detail .outlook-day>span:last-child{font-size:11px}.national-detail .source-row p{font-size:11px}
@media(min-width:1450px){.national .map-caption h2{font-size:25px}}
@media(max-width:1000px){.national{padding:0 18px 18px}.national .forecast-body{grid-template-columns:minmax(0,3fr) minmax(165px,1fr);gap:12px}.national .period-tabs button{padding:9px 12px;font-size:12px}.national .period-tabs button span{display:none}.national .day-tabs button{min-width:100px}.national .map-card>div{padding:10px}.national .map-card strong{font-size:13px}.national .map-caption h2{font-size:19px}.national .map-caption #map-date{font-size:9px}.national-source{font-size:6px;bottom:26px}.national-timebar{gap:15px}.national-timezone{display:none}.national-coverage{font-size:10px}.national .map-stamp{bottom:37px}.national .map-stamp strong{font-size:9px}.national .map-stamp .brand-mark{font-size:40px}}
@media(max-width:700px){.national{padding:0 12px 16px;border-radius:16px}.national-topline{font-size:8px;letter-spacing:1.2px;padding-top:17px}.national-topline a{font-size:9px}.national-topline b{margin:0 5px}.national .forecast-controls{display:block}.national .day-tabs{gap:5px;justify-content:flex-start}.national .day-tabs button{flex:1;min-width:0;padding:18px 10px 13px}.national .day-tabs button strong{font-size:16px}.national .day-tabs button span{font-size:10px}.national-coverage{display:none}.national-toolbar{padding:14px 0;flex-wrap:wrap;gap:11px}.national .period-tabs{flex:1;gap:6px}.national .period-tabs button{flex:1;justify-content:center;font-size:11px;padding:9px 10px}.sky-tabs{gap:0}.sky-tabs button{padding:8px;font-size:10px}.national .forecast-body{display:block}.national .map-surface{border-radius:12px}.national .map-caption{top:13px;left:14px}.national .map-caption h2{font-size:18px;margin:3px 0 4px}.national .map-caption #map-date{font-size:8px}.national .map-caption .map-tag{font-size:7px}.national .map-tools{right:12px;top:12px}.national .map-tools button{width:29px;height:29px}.national .map-catalog{display:block;margin-top:12px}.national #map-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:none;gap:8px}.national .map-card{height:auto;aspect-ratio:.87;border-radius:10px}.national .map-card>div{padding:6px;background:linear-gradient(180deg,#092d4990,transparent 35%,transparent 60%,#092d4cee)}.national .map-card strong{font-size:10px;padding:5px;letter-spacing:-.3px;align-self:flex-start;border-radius:5px}.national .map-card small{font-size:8px;line-height:1.4}.catalog-note{font-size:8px;margin:7px 0 0}.catalog-note br{display:none}.national .marker-name{font-size:12px;stroke-width:4}.national .sea-label{font-size:11px;letter-spacing:2px}.national .map-stamp{left:13px;bottom:27px;gap:7px}.national .map-stamp .brand-mark{font-size:32px}.national .map-stamp>span:last-child{font-size:5px;letter-spacing:1.1px}.national .map-stamp strong{font-size:8px;letter-spacing:1.4px}.national-source{font-size:5px;letter-spacing:.4px;bottom:18px;left:15px;right:auto}.national .map-credit{bottom:7px;font-size:5px;right:10px}.national-timebar{padding:14px 0 12px;gap:10px;align-items:flex-start}.national #play-evolution{font-size:10px;padding:10px 9px;max-width:110px;line-height:1.5;text-align:left}.national .timeline-control{flex-wrap:wrap;gap:1px;padding-top:1px}.national .timeline-control input{flex-basis:100%;width:100%;height:20px;margin:0}.national .timeline-control output{min-width:0;font-size:9px;width:100%;text-align:left}.national .map-legend{gap:8px 12px;padding-top:13px}.national .legend-item{font-size:9px;gap:3px}.national .map-footnote{font-size:9px;line-height:1.7}.national-comparison summary{font-size:10px}.national .evolution-maps{gap:7px}.national .evolution-card .mini-map{height:130px}.national .evolution-card>span{display:block;font-size:10px;padding:7px}.national .evolution-card>span small{display:block;font-size:8px;margin-top:4px}.national-detail{padding:20px 18px}.detail-topline{display:block;padding-bottom:18px}.detail-topline h2{font-size:22px}.national-detail .city-picker{min-width:0;margin-top:20px}.national-detail .city-picker select{max-width:none}.detail-grid{display:block}.national-detail .next-days{padding:18px 0 0;border-left:0;border-top:1px solid #e3ecf0}.national-detail .weather-hero strong{font-size:23px}.national-detail .outlook-day>span:first-child{width:70px}}
@media(max-width:390px){.sky-tabs{width:100%;justify-content:flex-end;margin-top:-4px}.national .map-card strong{font-size:9px}.national-topline a{font-size:8px}.national .map-caption h2{font-size:16px}.national .map-caption #map-date{font-size:7px}}

@media(max-width:700px){.national .map-caption{position:relative;top:auto;left:auto;padding:12px 13px 0;background:#153e55;display:flex;align-items:center;gap:9px;flex-wrap:wrap;padding-bottom:10px}.national .map-caption .map-tag{display:none}.national .map-caption h2{font-size:14px;letter-spacing:-.2px;margin:0}.national .map-caption #map-date{font-size:8px;color:#c7e5f5;margin-left:auto}.national .map-tools{top:53px}.national .map-caption{pointer-events:auto}.national .numeric-label{font-size:17px}}

/* Weather symbols are informational; pointer input reaches the region beneath. */
.national #city-markers,.national #city-markers *{pointer-events:none;user-select:none;-webkit-user-select:none}

/* Five forecast days remain readable without horizontal page overflow. */
.national .day-tabs{min-width:0;overflow-x:auto;flex-wrap:nowrap}.national .day-tabs button{flex-shrink:0}
@media(max-width:700px){.national .day-tabs{gap:0}.national .day-tabs button{flex:1 0 20%;padding:16px 3px 12px}.national .day-tabs button strong{font-size:14px;white-space:nowrap}.national .day-tabs button span{font-size:9px;white-space:nowrap}}

/* Distinct extrema, with explicit labels rather than a period mean. */
#italy-map .extreme-tag{font-size:7px;fill:#526579;font-weight:700}#italy-map .extreme-low,#italy-map .extreme-high{font-size:14px;font-weight:750;paint-order:stroke;stroke:none}.extreme-low,.mini-low{fill:#12639d}.extreme-high,.mini-high{fill:#b44425}.mini-map .mini-extreme{font-size:16px;font-weight:750;text-anchor:middle}.temperature-extremes{display:flex;justify-content:center;gap:14px}.temperature-extremes span{display:flex;flex-direction:column}.temperature-extremes strong{white-space:nowrap}.temp-low{color:#5cc9f5!important}.temp-high{color:#ffb078!important}.weather-numbers:has(.temperature-extremes){grid-template-columns:1.6fr 1fr 1fr}.weather-numbers .temperature-extremes strong{font-size:24px}

.national .map-back-forecast{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:44px;margin:0 0 10px;border:1px solid #80cce8;border-radius:10px;background:#174965;color:#e9f8ff;font:inherit;font-size:12px;font-weight:600;cursor:pointer}.national .map-back-forecast:hover{background:#23678e}.national .map-back-forecast:focus-visible{outline:2px solid #b3eaff;outline-offset:3px}.national .map-back-forecast[hidden]{display:none}
