/* Presentation only. Snow layers, keyframes and forecast values are untouched. */
.forecast-overview{margin:24px auto;padding:22px;text-align:left;max-width:1050px;background:linear-gradient(135deg,rgba(13,46,100,.94),rgba(5,22,58,.94));border:1px solid #4779b6;border-radius:20px;color:#e3f2fd;box-shadow:0 12px 28px #04102a44}
.overview-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
.forecast-overview h1{font-size:clamp(1.35rem,3vw,1.7rem);margin:0;font-weight:900}
.overview-kicker{color:#acd7ff;text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;font-weight:800;margin:0 0 5px}
.overview-badge{flex-shrink:0;font-size:.8rem;padding:7px 12px;border:1px solid #6286b5;background:#204776;border-radius:999px}
.overview-status{font-size:.82rem;line-height:1.5;color:#c9e2ff;margin:12px 0}
.forecast-overview #hotspotCards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:15px 0}
.forecast-overview #hotspotCards:empty{display:none}
.overview-city{display:flex;flex-direction:column;gap:7px;text-decoration:none;background:#061b40;border:1px solid #4e76a3;border-radius:12px;padding:14px;min-width:0}
.overview-city strong{font-size:1rem}
.overview-city span{font-size:.88rem;line-height:1.4;color:#e3f2fd}
.overview-city small{font-size:.78rem;line-height:1.4;color:#c4dcf7}
.overview-city:hover{border-color:#bce1ff;background:#153466}
.forecast-overview a,.score-explanation a{color:#bee1ff}
.overview-note{font-size:.84rem;line-height:1.55;color:#d0e6ff;margin:14px 0}
.overview-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #436187;padding-top:13px}
.overview-footer nav{display:flex;flex-wrap:wrap;align-items:center;gap:14px;font-size:.86rem}
.overview-planning{font-weight:800;text-decoration:none;padding:8px 12px;border:1px solid #83b2df;border-radius:999px}
.overview-footer small{font-size:.76rem}
#results{align-items:flex-start}
.day-card{min-width:0}
.score-explanation{text-align:left;margin-top:15px;border-top:1px solid #567398;padding-top:12px;font-size:.86rem;line-height:1.55;overflow-wrap:anywhere}
.score-explanation h4{font-size:.88rem;margin:0 0 8px;color:#d5ebff;font-weight:800}
.score-summary{margin:0 0 10px}
.score-freshness{font-size:.75rem;color:#c3d9ef;margin:10px 0}
.score-freshness:empty{display:none}
.score-details summary,.home-method summary,.planning-details summary,.safety-details summary{cursor:pointer;color:#c8e7ff;font-weight:700;padding:8px 0}
.score-details summary{font-size:.82rem}
.score-technical{font-size:.82rem;line-height:1.65;padding-top:4px}
.score-technical p{margin:8px 0 12px}
.home-method{margin-top:15px;border-top:1px solid #436187}
.home-method[open] summary{margin-bottom:14px}
.home-method h3{margin-top:20px}
.report-fields{padding-left:22px}
.report-fields li{margin-bottom:9px}
.resource-card a{overflow-wrap:anywhere}
.planning-page .page-intro{max-width:740px}
.planning-page .page-intro>p:not(.eyebrow):not(.small){font-size:1.05rem;line-height:1.65}
.planning-grid{align-items:start;margin-bottom:24px}
.planning-grid .resource-card{padding:25px}
.planning-grid .resource-card h2{font-size:1.25rem;line-height:1.35}
.planning-grid .resource-card>p:not(.eyebrow){line-height:1.75}
.planning-details{margin:14px 0;border-top:1px solid #45638c}
.planning-details summary{padding:14px 0;font-size:.95rem;line-height:1.45}
.planning-details[open]{padding-bottom:6px}
.planning-details p,.planning-details li{line-height:1.75}
.planning-checklist{list-style:none;padding-left:0!important}
.planning-checklist li{padding:13px 15px;margin:0 0 12px;border-left:3px solid #83b9ec;background:#071e4e;border-radius:0 9px 9px 0}
.planning-checklist strong{color:#d4edff}
.planning-page #sources{margin-top:24px}
.planning-page footer{margin-top:26px}
.forecast-overview a:focus-visible,summary:focus-visible{outline:3px solid #ffc185;outline-offset:4px;border-radius:5px}
@media(min-width:1300px){body .page-wrap{max-width:1340px}.page-wrap #results{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;align-items:start}#results .day-card{width:100%}}
@media(max-width:650px){.forecast-overview{padding:18px;margin-top:18px}.overview-badge{display:none}.forecast-overview #hotspotCards{grid-template-columns:repeat(2,minmax(0,1fr))}.overview-city{padding:12px}.planning-page .page-intro>p:not(.eyebrow):not(.small){font-size:1rem}.planning-grid .resource-card{padding:22px}}
@media(max-width:359px){.forecast-overview #hotspotCards{grid-template-columns:1fr}}
