.wrap{max-width:820px}.stage{padding:12px}.turnbar{--tb-msg-lines:2;--tb-st-lines:1;--tb-rt:0;--tb-st-rt:0}.message{font-size:14px;margin:0;height:49px;min-height:49px;line-height:24.5px}.seats{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin:8px 0}.seat{font-size:13px;border:1px solid var(--line);padding:6px;background:var(--surface)}.seat.active{outline:2px solid var(--accent)}.board-scroll{overflow:auto;max-width:100%;margin:auto}.board{display:grid;grid-template-columns:repeat(9,1fr);width:100%;max-width:520px;aspect-ratio:1;margin:auto;background:#f5eee0;border:2px solid #887453}.board.zoom{width:520px;max-width:none}.cell{position:relative;border:0;border-right:1px solid #b7ab94;border-bottom:1px solid #b7ab94;padding:0;background:transparent;aspect-ratio:1;cursor:pointer;min-width:0}.cell svg{display:block;width:100%;height:100%}.cell.selected{background:#cce0ee}.cell.target{background:#d9e9cf;outline:2px solid #2e7d4f;outline-offset:-2px}.cell .dot{position:absolute;width:6px;height:6px;background:#2e7d4f;border-radius:50%;left:calc(50% - 3px);top:calc(50% - 3px)}.cell:focus-visible{outline:3px solid #2f5d8a;outline-offset:-3px}.hands{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:8px 0}.hand{font-size:12px;padding:5px;border:1px solid var(--line);min-width:0}.hand button{display:inline-flex;align-items:center;min-width:44px;min-height:44px;background:var(--surface);color:var(--ink);border:1px solid var(--line-strong);margin:2px;padding:2px}.hand button.selected{outline:2px solid var(--accent)}.destinations{display:flex;flex-wrap:wrap;gap:6px;max-height:140px;overflow:auto;margin:8px 0}.actions,.utility{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}.field{display:flex;justify-content:space-between;gap:12px;margin:8px 0}.field select{max-width:68%;min-height:44px}.ad-gap{height:160px}.article img{width:100%;height:auto}.article table{width:100%;border-collapse:collapse}.article td,.article th{border:1px solid var(--line);padding:8px}.log{font-size:13px;max-height:120px;overflow:auto}#result{padding:10px;background:var(--surface)}@media(max-width:640px){.turnbar{--tb-msg-lines:3}.message{height:73.5px;min-height:73.5px}.stage{padding:8px}.seats{grid-template-columns:repeat(2,1fr)}.hands{grid-template-columns:repeat(2,1fr)}.utility .btn{padding-inline:10px}}
