/* V1.16. Equal decorative side rail and yellow same-stack doubles guidance. */
#gameBoard { --side-rail:48px; --center-rail:64px; }
#gameBoard .board-grid { grid-template-columns:var(--side-rail) minmax(0,1fr) var(--center-rail) minmax(0,1fr) var(--side-rail); }
#gameBoard .board-balance-rail { grid-column:1;grid-row:1 / span 2;background:linear-gradient(270deg,var(--rail),var(--rail-hi));border-right:1px solid #ffffff08;pointer-events:none; }
#gameBoard .left-quadrant { grid-column:2; }
#gameBoard .right-quadrant { grid-column:4; }
#gameBoard .top-quadrant { grid-row:1; }
#gameBoard .bottom-quadrant { grid-row:2; }
#gameBoard .bar-column { grid-column:3; }
#gameBoard .bearoff-tray { grid-column:5; }
#gameBoard .point.group-destination::after { background:#ffcf3f;box-shadow:0 0 0 6px #ffcc3324,0 0 25px #ffd33fa6; }
#gameBoard .group-label { position:absolute;z-index:22;left:50%;top:calc(50% + 22px);transform:translateX(-50%);display:grid;justify-items:center;gap:1px;pointer-events:none;background:#251c08f2;border:1px solid #ffd34f88;color:#ffe889;border-radius:9px;padding:4px 5px;font-size:8px;white-space:nowrap;line-height:1.15; }
#gameBoard .group-label b { font-size:12px; }
#gameBoard.board-inverted .group-label { transform:translateX(-50%) rotate(180deg); }
#gameBoard .bearoff-tray.group-destination { box-shadow:none;background:linear-gradient(90deg,var(--rail),#64511d); }
#gameBoard .bearoff-tray.group-destination::after { content:attr(data-group-count);display:grid;place-items:center;font-size:12px;font-weight:900;width:23px;height:23px;background:#ffcf3f;color:#201903;box-shadow:0 0 14px #f8cc4277;animation:offCountGlow 1.45s ease-in-out infinite; }
#gameBoard.board-inverted .bearoff-tray.group-destination::after { transform:rotate(180deg); }
#modalCard[data-kind="group-move"] { width:min(480px,100%);padding:28px; }
.group-eyebrow { color:#ffdb66; }
.group-route { display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;font-weight:800;font-size:15px;margin:0 0 12px; }
.group-route span { color:#aab3c5;font-weight:500;font-size:12px; }
.group-quantity-options { display:grid;grid-template-columns:repeat(var(--choices),minmax(0,1fr));gap:8px; }
.group-quantity-options button { display:grid;gap:4px;align-content:center;text-align:center;padding:12px 4px;min-height:86px;border-radius:14px;border:1px solid #ffd34f65;background:linear-gradient(150deg,#ffd34f1c,#ffd34f08);color:#ffe9a2;cursor:pointer; }
.group-quantity-options button:first-child { border-color:#b9e48955;color:#dff8c5;background:#ace05b0a; }
.group-quantity-options button:hover { background:#ffd34f24;border-color:#ffd34f; }
.group-quantity-options button:focus-visible { outline:2px solid #ffe79a;outline-offset:3px; }
.group-quantity-options strong { font-size:16px; }
.group-quantity-options span { font-size:11px; }
.group-quantity-options small { font-size:10px;color:#d3c69b; }
#modalCard #modalContent .group-help { text-align:center;color:#aab3c5;font-size:12px;margin:14px 0; }
.group-cancel { width:100%;min-height:44px; }
.group-move-overlay .ai-source-ring,.group-move-overlay .ai-target-ring { border-color:#ffda55;box-shadow:0 0 18px #ffcf4080; }
.group-move-overlay .ai-route path { stroke:#ffdb69; }
.group-move-overlay .ai-move-caption { background:#211b0bf5;border-color:#ffcf4077;color:#ffefbf; }
@media(max-width:960px) { #gameBoard { --side-rail:28px;--center-rail:36px; } }
@media(max-width:560px) { #gameBoard { --side-rail:24px;--center-rail:32px; } #modalCard[data-kind="group-move"] { padding:24px 16px 18px; } }
body.match-focus-mobile.match-focus-landscape #gameBoard { --side-rail:24px;--center-rail:30px; }
@media(max-height:480px) { #modalCard[data-kind="group-move"] { padding:18px 24px; } #modalCard[data-kind="group-move"] h2 { margin:8px 0; } #modalCard[data-kind="group-move"] .modal-intro { font-size:12px;margin-bottom:12px; } .group-quantity-options button { min-height:68px;padding:7px 4px; } #modalCard #modalContent .group-help { margin:8px 0; } }
@media(prefers-reduced-motion:reduce) { #gameBoard .bearoff-tray.group-destination::after { animation:none; } }
