.practice-settings{margin-block:1rem;padding:.85rem 1rem;border:1px solid color-mix(in srgb,var(--table-line,#7d6847) 45%,transparent);border-radius:12px;background:color-mix(in srgb,var(--table-paper,#fff9ed) 82%,transparent)}.practice-settings summary{cursor:pointer;font-weight:700}.practice-settings .setting{display:grid;gap:.4rem;margin-block:1rem}.practice-settings select{width:100%;min-height:44px}.difficulty-scale{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin:-.35rem 0 .8rem}.difficulty-scale span{height:5px;border-radius:9px;background:color-mix(in srgb,var(--table-line,#7d6847) 38%,transparent)}.difficulty-scale span:nth-child(2){background:color-mix(in srgb,var(--table-ink,#24382c) 48%,var(--table-paper,#fff9ed))}.difficulty-scale span:nth-child(3){background:color-mix(in srgb,var(--table-ink,#24382c) 70%,var(--table-paper,#fff9ed))}.difficulty-scale span:nth-child(4){background:var(--table-ink,#24382c)}
.bot-dialog{width:min(560px,calc(100vw - 28px));max-height:calc(100svh - 28px);overflow:auto}.bot-dialog .practice-settings{padding:0;border:0;background:none}.bot-dialog .dialog-actions{display:flex;flex-wrap:wrap;gap:10px}.bot-dialog .dialog-actions .button{flex:1;min-height:46px}.bot-dialog .setting{font-weight:700}.bot-dialog select{font-weight:400}.bot-dialog h2{padding-right:20px}.bot-dialog select:focus-visible{outline:3px solid var(--table-line,#5a513d);outline-offset:3px}
:root{--camp-1:#a82e42;--camp-2:#24659c;--camp-3:#247647;--camp-4:#9b690e;--camp-5:#78539f;--camp-6:#167b83}
[data-camp="1"]{--camp:var(--camp-1)}[data-camp="2"]{--camp:var(--camp-2)}[data-camp="3"]{--camp:var(--camp-3)}[data-camp="4"]{--camp:var(--camp-4)}[data-camp="5"]{--camp:var(--camp-5)}[data-camp="6"]{--camp:var(--camp-6)}
.group-roster{display:flex;flex-wrap:wrap;gap:8px;width:100%}.group-player{padding:8px 10px;border:2px solid var(--camp);border-radius:9px;background:#fffaf0;color:#29251f;font-size:.85rem}.group-player.is-turn{outline:2px solid var(--table-line,#493627);outline-offset:2px;font-weight:700}
.group-piece{position:relative!important;border:3px solid var(--camp);border-radius:50%;box-shadow:0 0 0 1px #fff!important}.group-piece .piece-image{width:100%;height:100%;object-fit:contain}.group-camp-badge{position:absolute;bottom:-4px;right:-5px;z-index:3;min-width:17px;height:17px;display:grid;place-items:center;background:var(--camp);color:#fff;font:bold 11px/1 sans-serif;border:1px solid #fff;border-radius:50%;text-shadow:none}
.board.star.group-board .group-piece{border-width:1.5px}
.board.star.group-board .group-camp-badge{min-width:0;width:clamp(11px,1.15vw,16px);height:clamp(11px,1.15vw,16px);bottom:-2px;right:-2px;font-size:clamp(8px,.8vw,11px)}
.group-board .group-goal{box-shadow:inset 0 0 0 2px var(--goal-camp)}.group-board .group-yard{border:2px dashed var(--goal-camp);border-radius:12%;background:var(--table-light,#ecd9ad)}
.group-board .side-3 .piece{transform:none}.group-board .piece-badge{top:-7px;bottom:auto}.group-board .square{overflow:visible}
.board.ludo.group-board .group-piece{width:82%;height:90%;display:grid;place-items:center;border-radius:35%;border-width:2px;z-index:2}.board.ludo.group-board .group-goal::after{content:"";position:absolute;inset:1px;border:2px solid var(--goal-camp);pointer-events:none;z-index:1}.board.ludo.group-board .group-yard{border-color:var(--goal-camp)}
.board-frame{position:relative}.move-visual{position:absolute;inset:0;pointer-events:none;z-index:8}.move-visual>svg{width:100%;height:100%;overflow:visible}.move-ghost{position:absolute;display:grid;place-items:center}.move-ghost .piece{width:85%;height:85%;display:grid;place-items:center}.move-route{fill:none;stroke:var(--table-ink,#24382c);stroke-width:.065;stroke-linecap:round;stroke-dasharray:1;animation:trace-route .7s ease-out both;filter:drop-shadow(0 0 .06px white)}@keyframes trace-route{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}@media(prefers-reduced-motion:reduce){.move-visual{display:none}}
.action-station{width:100%;max-width:min(100%,calc(100svh - 245px));margin-inline:auto;position:relative}
.action-dock{position:relative;z-index:6;background:var(--table-paper,#fff9ed);color:var(--table-ink,#24382c);border:1px solid var(--table-line,#7d6847);border-radius:0 0 12px 12px;padding:10px;box-shadow:0 5px 16px #0003}
.action-dock .hand{margin:0;padding:0;gap:6px}.action-dock .hand:empty,.action-dock .special-actions:empty{display:none}
.action-dock .dojo-cards{width:100%;gap:5px}.action-dock .dojo-card{padding:5px;min-width:0}.action-dock .dojo-card svg{max-height:65px}.action-dock .dojo-card strong{font-size:.72rem}
.action-dock p{font-size:.8rem;margin:6px 0}.action-dock button{min-height:40px}.action-dock .maze-controls{gap:5px}
.replay-panel{margin-top:12px}.replay-buttons{display:flex;align-items:center;gap:6px;margin-block:12px}.replay-buttons input{flex:1;min-width:20px}.replay-buttons button{padding:8px;min-width:40px}
#game-app[data-replaying=true] .board{outline:3px solid var(--table-line,#7d6847)}
.pyramid-hotspot{cursor:pointer}.pyramid-hotspot:focus{outline:none}.pyramid-hotspot:focus .model-target,.pyramid-hotspot:hover .model-target{stroke:var(--table-ink,#24382c);stroke-width:4}
.model-target{fill:transparent;stroke:transparent}.model-linked{outline:3px solid var(--table-ink,#24382c);outline-offset:-3px}
.stack-inspector{width:100%}.stack-inspector li{margin-block:6px}.stack-inspector select{max-width:100%}
@media(max-width:600px){.action-station{max-width:100%}.action-dock .dojo-card strong{font-size:.65rem}.action-dock .dojo-card svg{max-height:48px}}
@media(min-width:720px) and (max-height:600px){.action-station{max-width:min(100%,calc(100svh + 240px));display:grid;grid-template-columns:minmax(0,calc(100svh - 70px)) minmax(190px,1fr);align-items:start}.action-dock{position:static;border-radius:0 12px 12px 0}.action-dock .dojo-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:720px) and (max-height:450px){.action-dock{padding:7px}.action-dock .dojo-card svg{max-height:44px;margin:0 auto}.action-dock .dojo-card strong{font-size:11px;line-height:1.25}.action-dock .dojo-card{padding:4px}.action-dock .dojo-cards{gap:4px}}
