.play-page{max-width:1200px;padding:48px 5vw;margin:auto}.play-page h1{font-size:clamp(35px,4.5vw,60px)}.play-lead{max-width:700px;color:var(--muted)}.play-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:32px;margin-top:38px}.play-toolbar{display:flex;justify-content:space-between;align-items:center;font-size:12px;margin-bottom:12px}.play-page button{border:1px solid #b8c2b1;background:white;border-radius:4px;padding:9px 12px;font-size:12px;color:var(--ink)}#play-board{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-template-rows:repeat(7,minmax(50px,1fr));gap:8px;padding:12px;border:1px solid #bfcab7;border-radius:5px;aspect-ratio:1;position:relative;background:#e7ecdf}#play-board.show-grid{background-image:linear-gradient(#adbca366 1px,transparent 1px),linear-gradient(90deg,#adbca366 1px,transparent 1px);background-size:calc(100% / 7) calc(100% / 7)}#play-board .block{min-width:0;text-align:left;overflow:hidden;border:1px solid #b8c2b1;padding:16px;display:flex;flex-direction:column;justify-content:center;gap:8px;border-radius:3px}#play-board .block strong{font:700 clamp(13px,2vw,26px)/1.1 var(--serif);overflow-wrap:anywhere}#play-board .block span{font-size:9px;line-height:1.5}#play-board .block.selected{outline:3px solid #b75e27;outline-offset:1px;z-index:2}#play-board .block[data-tone="0"]{background:#faf8f1;color:#222b26}#play-board .block[data-tone="1"]{background:#d2e0c6;color:#222b26}#play-board .block[data-tone="2"]{background:#222b26;color:#fff}#play-board .block[data-tone="3"]{background:#f3cf70;color:#222b26}.play-controls{padding:24px;background:#e9eedf;align-self:start;border-radius:5px}.play-controls h2{font-size:28px;letter-spacing:-.5px}.play-controls label{font-size:12px}.play-controls input{width:100%;padding:10px;margin:7px 0 15px;border:1px solid #acb6a4;border-radius:3px;font-size:13px}.play-controls button{display:block;width:100%;margin-bottom:10px}.play-controls hr{border:0;border-top:1px solid #c4cebc;margin:20px 0}.play-controls a{font-size:12px}#play-status{font-size:11px;min-height:36px}.play-bottom{border-top:1px solid var(--line);margin-top:40px;padding-top:35px;max-width:800px}.play-bottom h2{font-size:34px}.play-bottom p{color:var(--muted);font-size:14px}@media(max-width:780px){.play-layout{grid-template-columns:1fr;gap:15px}.play-page{padding-top:30px}#play-board{grid-template-rows:repeat(7,minmax(34px,1fr));gap:5px;padding:8px}#play-board .block{padding:9px}#play-board .block span{font-size:8px}.play-controls{padding:20px}.play-controls h2{font-size:25px;margin-bottom:12px}}
