/* Stargazing guide (scripts/generate-stargazing-guide.mjs): the island map.
   Plain CSS on top of the editorial shell; tailwind.min.css is not loaded. */
.sky-map { margin: 1.4rem 0 0; padding: 14px; border-radius: 14px; background: var(--night); }
.sky-map svg { display: block; width: 100%; max-width: 560px; height: auto; margin: 0 auto; }
.sky-map__island { fill: #22394a; stroke: #6f8ea3; stroke-width: 1.5; stroke-linejoin: round; }
.sky-map__glow { fill: #f6c443; fill-opacity: 0.35; stroke: #f6c443; stroke-opacity: 0.6; stroke-width: 1; }
.sky-map__spot { fill: #ffffff; stroke: var(--night); stroke-width: 2; }
.sky-map__label { fill: #ffffff; font: 700 15px/1 "Nunito Sans", system-ui, sans-serif; paint-order: stroke; stroke: var(--night); stroke-width: 4px; stroke-linejoin: round; }
.sky-map__label--town { fill: #f6c443; font-weight: 800; }
.sky-map__north { fill: #c7d4dd; font: 800 14px/1 "Nunito Sans", system-ui, sans-serif; }
.sky-map__arrow { fill: #c7d4dd; }
.sky-map figcaption { margin-top: 10px; color: #c7d4dd; font-size: .86rem; line-height: 1.45; }
.sky-map figcaption a { color: #ffffff; }
.sky-map__list { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 4px 18px; margin-top: 1rem; }

/* Location photos as card banners: the square originals are cropped to 16:10. */
.spot-card { overflow: hidden; }
.spot-card__photo { display: block; width: calc(100% + 48px); max-width: none; height: auto; aspect-ratio: 16 / 10; margin: -24px -24px 16px; object-fit: cover; }
