.dm{gap:10px;min-width:0;max-width:900px;margin:0 auto;display:grid;position:relative}.dm-modes,.dm-diffs,.dm-actions{gap:8px;width:100%;display:grid}.dm-modes,.dm-actions{grid-template-columns:1fr 1fr 1fr}.dm-modes{grid-template-columns:1fr 1fr}.dm-diffs{grid-template-columns:repeat(3,minmax(0,1fr))}.dm-modes .btn,.dm-diffs .btn,.dm-actions .btn{white-space:normal;text-align:center;width:100%;min-width:0;min-height:52px;padding-inline:8px;line-height:1.15}.dm-modes .btn[aria-pressed=true],.dm-diffs .btn[aria-pressed=true]{background:var(--primary);color:var(--primary-text)}.dm .btn:disabled{opacity:.45;cursor:default}.dm-score{text-align:center;background:var(--surface-2);border-radius:14px;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;padding:8px 10px;display:grid}.dm-score span{color:var(--muted);font-size:.85rem;font-weight:700;display:block}.dm-score strong{font-variant-numeric:tabular-nums;font-size:1.7rem;line-height:1.05;display:block}.dm-score-mid strong{font-size:1rem}.dm-seats{grid-template-columns:1fr 1.15fr 1fr;gap:8px;display:grid}.dm-seats.dm-seats-one{grid-template-columns:1fr}.dm-seat{background:var(--surface-2);text-align:center;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;min-height:44px;padding:4px;display:flex}.dm-seat span{color:var(--muted);font-size:.85rem;font-weight:700;line-height:1.1}.dm-seat b{font-variant-numeric:tabular-nums;font-size:1.3rem;line-height:1.1}.dm-seat small{color:var(--muted);font-size:.75rem;font-weight:700}.dm-seats-one .dm-seat{flex-direction:row;gap:8px}.dm-seat-on{outline:3px solid var(--accent);background:#fff6d8}.dm-seat-pass{background:#f8d4d4}.dm-ends{grid-template-columns:1fr auto 1fr;gap:8px;display:grid}.dm-end,.dm-monte{background:var(--surface-2);text-align:center;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;min-height:44px;padding:2px 8px;display:flex}.dm-end small,.dm-monte small{color:var(--muted);font-size:.85rem;font-weight:800;line-height:1.1}.dm-end b,.dm-monte b{font-variant-numeric:tabular-nums;font-size:1.4rem;line-height:1}.dm-end-l{box-shadow:inset 0 0 0 3px var(--accent)}.dm-end-r{box-shadow:inset 0 0 0 3px var(--primary)}.dm-end.dm-hot,.dm-monte.dm-hot{background:#fff6d8}.dm-status{text-align:center;min-height:1.4em;margin:0;font-weight:800}.dm-table{box-sizing:border-box;touch-action:pan-y;background:radial-gradient(circle at 50% 18%,#2f9a72,#14614c 74%);border-radius:16px;justify-content:center;align-items:safe center;min-height:240px;max-height:380px;padding:8px;display:flex;overflow:hidden auto;box-shadow:inset 0 0 0 3px #0000001f}.dm-board{flex:none;min-height:40px;position:relative}.dm-empty{color:#fff;text-align:center;text-shadow:0 1px 2px #00000059;margin:22px 8px;font-weight:800}.dm-tile{box-sizing:border-box;background:linear-gradient(#fffef9,#fff3dc);border:2px solid #1a1a1a;border-radius:10px;flex-direction:column;display:flex;position:relative}.dm-tile.dm-h{flex-direction:row}.dm-half{flex:1 1 0;align-self:stretch;min-width:0;min-height:0;position:relative}.dm-tile:not(.dm-h) .dm-half{width:100%}.dm-tile.dm-h .dm-half{height:100%}.dm-split{background:#1a1a1a;flex:none}.dm-tile:not(.dm-h) .dm-split{height:2px;margin:1px 14%}.dm-tile.dm-h .dm-split{width:2px;margin:14% 1px}.dm-pips{width:92%;height:92%;display:block;position:absolute;top:4%;left:4%}.dm-pips circle{fill:#141414}.dm-table-tile{border-width:1.5px;border-radius:6px;padding:1px;position:absolute}.dm-cap-l{box-shadow:inset 4px 0 0 var(--accent)}.dm-cap-r{box-shadow:inset -5px 0 0 var(--primary)}.dm-cap-both{box-shadow:inset 0 0 0 3px var(--accent)}.dm-table-tile.dm-v.dm-cap-l{box-shadow:inset 0 5px 0 var(--accent)}.dm-table-tile.dm-v.dm-cap-r{box-shadow:inset 0 -5px 0 var(--primary)}.dm-table-tile{z-index:1}.dm-bridge{z-index:0;background:#fff6e4;border-radius:6px;width:12px;position:absolute}.dm-hot{outline:4px solid var(--accent);outline-offset:2px;z-index:2}.dm-fresh{outline-offset:2px;z-index:2;outline:3px solid #fff;animation:.45s dm-pop}@keyframes dm-pop{0%{transform:scale(.72)}to{transform:none}}.dm-mark{z-index:1;pointer-events:none;border-radius:50%;place-items:center;width:18px;height:18px;font-size:.7rem;font-weight:800;line-height:1;display:grid;position:absolute}.dm-mark-l{background:var(--accent);color:#3b2a00;top:-7px;left:-7px}.dm-mark-r{color:var(--primary);border:2px solid var(--primary);background:#fff;top:-7px;right:-7px}.dm-hand{flex-wrap:wrap;justify-content:center;gap:8px;min-height:96px;display:flex}.dm-hand-tile{cursor:pointer;touch-action:manipulation;width:calc(20% - 6.4px);min-width:48px;max-width:72px;height:108px;font:inherit;color:inherit;flex:0 0 calc(20% - 6.4px);padding:4px 3px;box-shadow:0 2px #d5ccb8}.dm-dim{opacity:.38}.dm-sel{outline:3px solid var(--accent);outline-offset:2px;opacity:1;transform:translateY(-6px)}.dm-hinted{outline:3px solid var(--primary);outline-offset:2px}.dm-choose{gap:8px;display:grid}.dm-choose p{display:none}.dm-choose-btns{grid-template-columns:1fr 1fr;gap:8px;display:grid}.dm-choose .btn{flex-direction:column;gap:2px;width:100%;min-height:64px;line-height:1.1}.dm-choose .btn small{font-size:.95rem;font-weight:800}.dm-choose .dm-suggested{outline:3px solid var(--accent);outline-offset:2px}.dm-note{text-align:center;color:var(--muted);margin:0;font-size:.9rem}.dm-dock{gap:8px;display:grid}.dm-overlay{z-index:30;text-align:center;background:#fffcf5f7;border-radius:12px;align-content:center;justify-items:center;gap:12px;padding:18px 14px;display:grid;position:fixed;inset:0;overflow:auto}.dm-sum-title{margin:0;font-size:1.45rem;font-weight:800;line-height:1.2}.dm-sum-msg{max-width:36ch;margin:0}.dm-sum-score{margin:0;font-size:1.15rem;font-weight:800}.dm-overlay .btn{min-width:min(100%,280px);min-height:56px}@media (width<=600px){.dm{gap:8px}.dm-table{min-height:220px;max-height:300px}.dm-modes .btn,.dm-diffs .btn,.dm-actions .btn{font-size:.92rem}.dm-score strong{font-size:1.5rem}.dm-hand-tile{height:100px}}@media (prefers-reduced-motion:reduce){.dm-sel{transform:none}.dm-fresh{animation:none}}
