.ch{display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,220px);gap:14px;padding:clamp(8px,2vw,16px);align-items:start;color:#F2EEE4}
.ch-board{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));width:min(100%,520px);border:4px solid #3B2414;box-shadow:0 0 0 3px #1B1D33}
.ch-sq{aspect-ratio:1;min-width:0;padding:6%;border:0;cursor:pointer;display:grid;place-items:center;position:relative}
.ch-sq.light{background:#EAD9B5}.ch-sq.dark{background:#9A6B44}
.ch-sq.last.light{background:#E6D27A}.ch-sq.last.dark{background:#B89A45}
.ch-sq.sel{box-shadow:inset 0 0 0 4px #F6C333}
.ch-sq.can::after{content:"";position:absolute;width:24%;height:24%;background:rgba(27,29,51,.55)}
.ch-sq.take{box-shadow:inset 0 0 0 4px #FF5A4E}
.ch-sq.check{background:#FF8A80 !important}
.ch-sq svg{width:100%;height:100%}
.ch-sq:focus-visible{outline:3px solid #2A5BD7;outline-offset:-3px;z-index:1}
.ch-side{display:grid;gap:10px}
.ch-msg{font-family:var(--body);font-weight:600;min-height:3em}
.ch-moves{margin:0;padding:6px 6px 6px 2.2em;max-height:300px;overflow:auto;background:#12142A;border:2px solid #3A3F7A;font-family:var(--body);font-size:.92rem;line-height:1.6}
.ch-promo{display:flex;gap:6px;flex-wrap:wrap;align-items:center;font-family:var(--body)}
.ch-promo[hidden]{display:none}
.ch-promo .table-btn{padding:6px 10px;font-size:.9rem}
@media (max-width:760px){.ch{grid-template-columns:minmax(0,1fr)}.ch-board{margin:0 auto}.ch-moves{max-height:120px}}
