/* Acceso y exploración: controles legibles fuera del tablero. */
.entry,.explorer{grid-column:1/-1}
.entry{padding:clamp(18px,4vw,30px);display:grid;gap:16px}
.entry h2,.explorer h2{font-size:clamp(23px,4vw,32px);line-height:1.15;max-width:28ch}
.entry p{margin:0;max-width:66ch}
.entry-copy{display:grid;gap:10px}
.quick-hint{color:var(--ink-soft);font-size:15px}
.entry-actions{display:flex;gap:10px;flex-wrap:wrap}
.entry-note{font-size:14px;color:var(--ink-soft)}
.entry .setup{display:grid;gap:16px;border-top:1px solid var(--ink-soft);padding-top:18px;max-width:700px}
.setup h3{font-family:var(--display);font-weight:400;margin:0;font-size:22px}
.setup-options{display:flex;flex-wrap:wrap;gap:8px}
.setup-options button{font:inherit;border:2px solid var(--ink);border-radius:3px;background:var(--paper);color:var(--ink);padding:8px 12px;min-height:44px;min-width:44px;cursor:pointer}
.setup-options button[aria-pressed=true]{background:var(--ink);color:var(--paper)}
.setup-options button:focus-visible,.place-card:focus-visible,.place-source:focus-visible{outline:3px solid var(--maya);outline-offset:3px}
.setup .srow{align-items:start;flex-direction:column;gap:8px}
.setup .prow{display:grid;grid-template-columns:26px minmax(0,1fr) minmax(100px,auto);gap:8px}
.setup .prow .btn{width:auto;font-size:14px;padding:10px 8px;overflow-wrap:anywhere}
.setup .prow input{width:100%;min-height:44px}
.hdr-acts .btn,.hdr-acts .seg button,.entry .btn,.turn-panel .btn,.sheet .btn,.board-welcome .btn{min-height:44px}
.turn-panel{display:flex;flex-direction:column;gap:14px;scroll-margin-top:12px}
.turn-panel h2{margin:0}
.turn-panel .c-top{flex-wrap:wrap}
.turn-panel .die{width:42px;height:42px;padding:5px}
.turn-panel .acts{margin-top:0}
.turn-panel .btn{font-size:16px}
.board-welcome{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px;min-width:0;min-height:100%;width:100%}
.board-welcome img{width:min(70%,200px);height:clamp(65px,26cqi,180px);object-fit:contain}
.board-welcome h2{font-family:var(--display);font-weight:400;font-size:clamp(13px,4cqi,24px);line-height:1.1;margin:0;overflow-wrap:anywhere}
.board-welcome p{overflow-wrap:anywhere;max-width:100%;margin:0;font-size:clamp(11px,3cqi,16px)}
.board-welcome .btn{font-size:clamp(11px,3cqi,15px);padding:6px 10px}
.place-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:12px}
.place-card{display:flex;align-items:center;gap:12px;text-align:left;padding:14px;border:2px solid var(--ink);background:var(--paper-2);color:var(--ink);font:inherit;min-width:0;cursor:pointer}
.place-card img{width:76px;height:76px;object-fit:contain;flex:none}
.place-card span{min-width:0}
.place-card b{font-size:20px;font-weight:700;display:block;overflow-wrap:anywhere}
.place-card small{color:var(--ink-soft);display:block;font-size:14px;margin-top:4px}
.place-story{font-size:18px;line-height:1.5}
.place-location{font-size:15px}
.place-source{color:var(--maya);text-decoration:underline;min-height:44px;display:flex;align-items:center}
.game-details{border-top:1px solid var(--ink-soft);padding-top:12px}
.game-details summary{font-size:17px;min-height:44px}
.game-details p{margin-block:8px}
@media(max-width:959px){.board{justify-self:center}.side{grid-column:1/-1}.turn-panel{border-top:5px solid var(--maya)}}
@media(max-width:380px){.entry-actions .btn{width:100%}.entry,.explorer{padding:16px}.setup .prow{grid-template-columns:26px minmax(0,1fr) 100px}.board-welcome{gap:4px}.board-welcome img{height:65px}}

.board.solo{grid-column:1/-1;justify-self:center}
