/* A low, softly blended landscape; forecast colors stay on the map. */
.map-stage{--horizon-sky:#8dc8ee;--horizon-low:#c0deef;--horizon-photo:url('../images/landscape-day.webp');--horizon-panel:#edf7fbbd;--horizon-stars:0;isolation:isolate;background:linear-gradient(180deg,var(--horizon-sky),var(--horizon-low));transition:background-color .4s}
.map-stage[data-forecast-period="day"]{--horizon-sky:#8dc8ee;--horizon-low:#c0deef;--horizon-photo:url('../images/landscape-day.webp');--horizon-panel:#edf7fbbd;--horizon-stars:0}
.map-stage:is([data-forecast-period="dawn"],[data-forecast-period="dusk"]){--horizon-sky:#29476c;--horizon-low:#eeac79;--horizon-photo:url('../images/landscape-dusk.webp');--horizon-panel:#183451c7;--horizon-stars:0;--ink:#f4f9ff;--muted:#d8e5ef;--line:#d5ebf933;--soft:#d3ecff12;--solid:#244059}
.map-stage[data-forecast-period="dawn"]{--horizon-sky:#536a8b;--horizon-low:#ebc1a4}
.map-stage[data-forecast-period="night"]{--horizon-sky:#081a31;--horizon-low:#153651;--horizon-photo:url('../images/landscape-night.webp');--horizon-panel:#0e2941c9;--horizon-stars:.75;--ink:#f4f9ff;--muted:#c2d6e4;--line:#d5ebf933;--soft:#d3ecff12;--solid:#18394d}
.map-canvas::before{content:"";position:absolute;inset:auto 0 0;height:46%;max-height:250px;z-index:0;pointer-events:none;opacity:.94;background-image:var(--horizon-photo);background-size:cover;background-position:center 16%;background-repeat:no-repeat;mask-image:linear-gradient(180deg,transparent 0,#00000020 18%,#000000b3 55%,#000 88%);-webkit-mask-image:linear-gradient(180deg,transparent 0,#00000020 18%,#000000b3 55%,#000 88%)}
.map-canvas::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;opacity:var(--horizon-stars);transition:opacity .45s;background:radial-gradient(circle at 7% 15%,#e4f1ffb8 0 .8px,transparent 1.5px),radial-gradient(circle at 22% 8%,#e4f1ff90 0 .6px,transparent 1.3px),radial-gradient(circle at 61% 7%,#e4f1ff9c 0 .7px,transparent 1.4px),radial-gradient(circle at 89% 20%,#e4f1ffb8 0 .8px,transparent 1.5px),radial-gradient(circle at 9% 47%,#e4f1ff70 0 .6px,transparent 1.3px),radial-gradient(circle at 82% 51%,#e4f1ff80 0 .6px,transparent 1.3px)}
.map-stage:is([data-forecast-period="dawn"],[data-forecast-period="dusk"]) .map-timeline{color:var(--ink)}
.map-stage:is([data-forecast-period="dawn"],[data-forecast-period="dusk"],[data-forecast-period="night"]) .map-hint{color:#e1edf5;background:#132d46d9;border-color:#d5ebf933}
.map-viewport,.map-timeline{z-index:1}
.map-timeline::before{content:"";position:absolute;inset:-12px -8px;z-index:-1;border-radius:15px;background:var(--horizon-panel);backdrop-filter:blur(6px);pointer-events:none}
@container(max-width:580px){.map-canvas::before{height:34%;max-height:170px}.map-timeline::before{inset:0;border-radius:0}}
@media(prefers-reduced-motion:reduce){.map-stage,.map-canvas::before,.map-canvas::after{transition:none}}
