.formation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.formation[hidden]{display:none}.formation h3{font-size:1.5rem;margin:12px 0}.formation.observed{border-color:#81b7a5}.challenge-entry{border-top:1px solid var(--line,#435067);padding-top:16px;margin-top:18px}.challenge-entry label{display:block;margin:10px 0;font-size:.9rem}.challenge-entry input:not([type=checkbox]),.challenge-entry textarea,.lunar-filters input,.lunar-filters select,#map-zoom{width:100%;background:var(--bg,#101e30);color:inherit;border:1px solid #63748a;border-radius:8px;padding:10px;font:inherit;box-sizing:border-box}.challenge-entry input[type=checkbox]{width:19px;height:19px;vertical-align:middle;accent-color:#caa96e}.lunar-filters{display:grid;grid-template-columns:2fr 1fr 1fr;gap:18px}.lunar-filters label{display:grid;gap:8px}#challenge-progress{width:100%;height:18px;accent-color:#caa96e}#progress-text{font-size:1.5rem;font-weight:700}#import-challenge{max-width:220px;font-size:.85rem}.lunar-map-scroll{overflow:auto;max-height:600px;border:1px solid #63748a;border-radius:18px;background:#0b1626}.lunar-map-scroll:focus-visible{outline:3px solid #d4b376}#lunar-map{width:100%;height:auto;display:block;max-width:none}#lunar-map .map-name{display:none;font-size:10px;fill:#fff;paint-order:stroke;stroke:#0b1626;stroke-width:3px}#lunar-map.with-labels .map-name{display:block}#lunar-map .formation-point{fill:#d3b37a;stroke:#101e30;stroke-width:1.5}#lunar-map .observed .formation-point{fill:#86d4b5}#lunar-map a:focus circle,#lunar-map a:hover circle{fill:#fff;stroke:#e8b45f;stroke-width:4}.formation:target{outline:2px solid #d3b37a;scroll-margin-top:20px}.formation:focus{outline:3px solid #d3b37a}#map-tools label{display:flex;align-items:center;gap:10px}#map-tools select{width:auto}.formation-grid .card{min-width:0}details>summary{cursor:pointer;font-size:1.15rem;padding:10px}body.night #lunar-map .formation-point{fill:#b44}body.night #lunar-map .observed .formation-point{fill:#e88}@media(max-width:960px){.formation-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.formation-grid,.lunar-filters{grid-template-columns:1fr}.lunar-map-scroll{max-height:420px}#lunar-map{min-width:600px}.formation h3{font-size:1.3rem}}@media print{.lunar-map-scroll,#map-tools,#formation-filters,#challenge-tools .actions,details,.portal-explore{display:none!important}.formation-grid{display:block}.formation{break-inside:avoid;margin:10px 0;padding:12px;border:1px solid #888}.formation textarea,.formation input{color:#000!important;background:white!important}.formation p{margin:4px 0}.challenge-entry{margin:0;padding:0}.formation a{font-size:10px}}

body.night #lunar-map rect{fill:#170000}body.night #lunar-map path{stroke:#602929}body.night #lunar-map text{fill:#dc7f7f}body.night .lunar-map-scroll{background:#170000}body.night .challenge-entry input:not([type=checkbox]),body.night .challenge-entry textarea,body.night .lunar-filters input,body.night .lunar-filters select,body.night #map-zoom{background:#190000;border-color:#854040}

/* The full lunar disk fits the viewport at the default zoom. */
.lunar-map-scroll{max-width:760px;max-height:none;margin:0 auto;background:#050a12}#lunar-map{min-width:0}#lunar-map .moon-direction{fill:#d7c29d;font-size:23px;font-weight:600}#lunar-map .moon-limb{fill:none}#lunar-map.hide-markers [data-marker]{visibility:hidden}body.night #lunar-map image{filter:sepia(1) saturate(3) hue-rotate(315deg) brightness(.55)}
