:root{--map-accent:#e53b36;--map-sky:#a9ddf5}
.map-picker{margin:28px 0 24px;min-width:0}.map-picker legend{display:flex;align-items:center;gap:10px;font-family:'Archivo Black',sans-serif;font-size:20px;width:100%;margin-bottom:14px}.map-step{font-family:'Space Grotesk',sans-serif;font-size:12px;display:inline-grid;place-items:center;border:2px solid #2b2b2b;background:#2b2b2b;color:#fff8e8;width:27px;height:27px;border-radius:50%}.map-picker-hint{font-family:'Space Grotesk',sans-serif;font-size:12px;font-weight:600;margin-left:auto}.map-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.map-option{border:3px solid #2b2b2b;background:#fff8e8;border-radius:12px;position:relative;overflow:hidden;cursor:pointer;box-shadow:3px 4px 0 #2b2b2b;transition:transform .15s,box-shadow .15s}.map-option:hover{transform:translateY(-3px);box-shadow:3px 7px 0 #2b2b2b}.map-option.selected{box-shadow:0 0 0 3px var(--accent),4px 6px 0 #2b2b2b}.map-option:has(:focus-visible){outline:3px solid #2b2b2b;outline-offset:6px}.map-option input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.map-option>img{display:block;width:100%;height:auto;aspect-ratio:1.72;object-fit:cover;border-bottom:3px solid #2b2b2b}.map-option:first-child>img{object-position:center}.map-option-copy{display:block;padding:12px 10px}.map-option strong{font-family:'Archivo Black',sans-serif;font-size:17px;display:block;line-height:1.15}.map-option small{display:block;font-size:11px;font-weight:600;margin-top:5px;line-height:1.4}.map-check{position:absolute;right:8px;top:8px;background:#fff8e8;border:2px solid #2b2b2b;display:grid;place-items:center;width:27px;height:27px;border-radius:50%;font-weight:900}.map-option.selected .map-check{background:var(--accent);color:#fff}.map-selection-note{display:grid;grid-template-columns:auto 1fr;column-gap:14px;row-gap:2px;margin-top:18px;border-left:4px solid var(--map-accent);padding:2px 0 2px 12px;font-size:13px;line-height:1.5}.map-selection-note strong{grid-row:1/3;align-self:center;font-family:'Archivo Black',sans-serif}.map-selection-note small{font-size:11px;opacity:.75}.map-picker:disabled .map-option{cursor:default}.map-picker:disabled .map-option:hover{transform:none}.map-game-badge{position:absolute;left:50%;top:12px;transform:translateX(-50%);z-index:1;border:2px solid #2b2b2b;border-radius:6px;background:#fff8e8e8;padding:5px 12px;font-size:11px;font-weight:800;pointer-events:none;white-space:nowrap}.light-scene.themed{background:radial-gradient(ellipse at 50% 50%,var(--map-sky),var(--theme-ink))}.light-scene.themed .light-island{background-image:var(--cover);background-size:cover;background-position:center;border-radius:0;transform:none;width:100%;height:100%;opacity:.4;box-shadow:none}.themed .light-board{background:var(--theme-ground);border-color:var(--theme-ink);box-shadow:0 9px 0 var(--theme-ink),0 30px 40px #1117}.themed .light-center{background-image:var(--cover);background-size:cover;background-position:center;position:relative;overflow:hidden}.themed .light-center:before{content:'';position:absolute;inset:0;background:linear-gradient(transparent,#ffffff16)}.themed .light-center>strong{font-size:clamp(22px,3vw,40px);padding:10px 20px;background:var(--theme-ink);box-shadow:0 6px 0 var(--map-accent);transform:rotate(-12deg);position:relative}.themed .light-deck{position:relative;font-size:12px;background:var(--theme-paper);color:var(--theme-ink);padding:14px;border:2px solid var(--theme-ink)}.themed .light-tile{background:var(--theme-paper);border-color:var(--theme-ink)}.themed .light-tile .light-pawn{border-radius:50%;width:44px;height:44px;outline:2px solid #2b2b2b;background:var(--theme-paper);bottom:15%}.themed .light-mode{background:var(--theme-paper)}
@media(max-width:640px){.map-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.map-picker legend{font-size:18px}.map-picker-hint{font-size:10px}.map-option-copy{padding:9px}.map-option strong{font-size:16px}.map-selection-note{display:block;font-size:12px}.map-selection-note strong,.map-selection-note small{display:block}.map-selection-note strong{margin-bottom:3px}.map-game-badge{top:66px;font-size:10px}.themed .light-tile .light-pawn{width:28px;height:28px}.themed .light-deck{font-size:9px;padding:8px}.themed .light-center>strong{font-size:20px}}
@media(prefers-reduced-motion:reduce){.map-option{transition:none}}
