:root{color-scheme:dark;--disp: "Roboto Serif", Georgia, serif;--head: "Roboto Serif", Georgia, serif;--ui: "Roboto Flex", system-ui, -apple-system, "Segoe UI", sans-serif;--page: #15100c;--page-glow: #2a1b11;--panel: #211812;--panel-2: #1b140f;--raise: #2c2018;--line: #3a2b20;--text: #f4e9d8;--muted: #b8a38c;--accent: #dcaa4c;--accent-ink: #20150b;--accent-glow: rgba(220, 170, 76, .45);--danger: #e2735d;--input: #120d0a;--frame-fill: #5d3216;--frame-edge: #2c170a;--field1: #eaa458;--field2: #c97a30;--field-fill: url(#gField);--field-line: rgba(60, 28, 8, .55);--tri-a: #8c4517;--tri-b: #241914;--bar-fill: var(--frame-fill);--seam: #26130a;--brass1: #ecc874;--brass2: #a47b2b;--hinge-fill: url(#gBrass);--hinge-edge: #6e5019;--hinge-pin: #5a3f12;--screw: #5b4415;--tray: var(--field-fill);--ptlabel: rgba(255, 228, 190, .5);--w1: #fffcf4;--w2: #f1e8d8;--w3: #d6c8b0;--ckw-fill: url(#gW);--ckw-edge: #a99a80;--ckw-ring: rgba(120, 96, 64, .38);--b1: #59504a;--b2: #2d2622;--b3: #161210;--ckb-fill: url(#gB);--ckb-edge: #0a0807;--ckb-ring: rgba(255, 240, 220, .16);--slab-w: #efe5d3;--slab-b: #2b2420;--ckw-inner: #e7dcc8;--ckw-inner-edge: #c9bba1;--ckb-inner: #1e1a17;--ckb-inner-edge: #2c2622;--sw-w: radial-gradient(circle at 38% 32%, #fffcf4, #e9dfcc 60%, #cdbfa6);--sw-b: radial-gradient(circle at 38% 32%, #59504a, #2d2622 60%, #161210);--sw-w-edge: #a99a80;--sw-b-edge: #000;--dest-fill: rgba(255, 238, 180, .3);--dest-stroke: #ffe39c;--sel: #ffe08a;--mark: #dcaa4c;--die-w1: #fffdf6;--die-w2: #e8dcc6;--pip-w: #2a1d13;--die-b1: #3f3631;--die-b2: #1c1714;--pip-b: #f4e9d6}body[data-pieces=lemn]{--w1: #f3d9ae;--w2: #e4c18c;--w3: #c9a26a;--ckw-edge: #a07a46;--ckw-ring: #b88f57;--b1: #7d5434;--b2: #5c3a22;--b3: #3d2513;--ckb-edge: #24150a;--ckb-ring: #3a2312;--slab-w: #e2c08d;--slab-b: #5c3a22;--sw-w: radial-gradient(circle at 38% 32%, #f3d9ae, #e4c18c 60%, #c9a26a);--sw-b: radial-gradient(circle at 38% 32%, #7d5434, #5c3a22 60%, #3d2513);--sw-w-edge: #a07a46;--sw-b-edge: #24150a}body[data-pieces=margine]{--w1: #ffffff;--w2: #fbf6ec;--w3: #e5dac6;--b1: #5d544e;--b2: #4a423d;--b3: #332d29}*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:radial-gradient(1100px 600px at 60% -10%,var(--page-glow),transparent 70%) no-repeat,var(--page);color:var(--text);font-family:var(--ui);font-variant-numeric:lining-nums;-webkit-font-smoothing:antialiased}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}::selection{background:var(--accent);color:var(--accent-ink)}button,input{font:inherit;color:inherit}kbd{font:600 10px var(--ui);padding:2px 5px;border-radius:4px;border:1px solid currentColor;opacity:.6;margin-left:4px;vertical-align:1px}#app{min-height:100dvh;display:flex;flex-direction:column;gap:10px;padding:10px max(16px,env(safe-area-inset-right)) 14px max(16px,env(safe-area-inset-left))}.topbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.brand{display:flex;align-items:baseline;gap:12px;min-width:0}.logo{font-family:var(--disp);font-weight:700;font-size:26px;letter-spacing:.01em}.mode{color:var(--muted);font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tools{display:flex;gap:6px;flex-shrink:0}.tool{display:inline-flex;align-items:center;gap:6px;background:var(--panel);border:1px solid var(--line);border-radius:999px;padding:6px 13px 6px 10px;font-size:13px;font-weight:600;cursor:pointer}.tool:hover{border-color:var(--accent)}.tool[aria-pressed=false]{color:var(--muted)}.ico{width:18px;height:18px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.ico .spk{fill:currentColor;stroke-width:1.4}#btnSound[aria-pressed=true] .off,#btnSound[aria-pressed=false] .on{display:none}.table-area{flex:1;min-height:0;position:relative;display:grid;grid-template-columns:minmax(220px,262px) 1fr;grid-template-rows:auto 1fr auto auto;grid-template-areas:"top board" "side board" "hud board" "bottom board";gap:12px 18px}#cardTop{grid-area:top}.side{grid-area:side}.hud{grid-area:hud}#cardBottom{grid-area:bottom}.board-wrap{grid-area:board;min-height:0;min-width:0;display:flex;align-items:center;justify-content:center;contain:size}#board{display:block;width:100%;height:100%;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}.player{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:12px 14px;background:var(--panel);border:1px solid var(--line);border-radius:14px;transition:border-color .2s,box-shadow .2s}.player.active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent),0 8px 30px -12px var(--accent-glow)}.player.winner{border-color:var(--accent)}.swatch{width:30px;height:30px;border-radius:50%;position:relative}.player[data-seat=w] .swatch{background:var(--sw-w);box-shadow:inset 0 0 0 1px var(--sw-w-edge)}.player[data-seat=b] .swatch{background:var(--sw-b);box-shadow:inset 0 0 0 1px var(--sw-b-edge)}.swatch:after{content:"";position:absolute;inset:7px;border-radius:50%;border:1.5px solid rgba(128,104,72,.4)}.player[data-seat=b] .swatch:after{border-color:#fff0dc2e}.pinfo{min-width:0}.pname{font-weight:700;font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pmeta{color:var(--muted);font-size:12.5px;display:flex;gap:4px 10px;flex-wrap:wrap;margin-top:2px}.presence{color:var(--accent)}.player{position:relative}.player .clock{position:absolute;top:-10px;right:14px;padding:1px 9px;border-radius:999px;background:var(--accent);color:var(--accent-ink);font:700 12px/18px var(--ui);font-variant-numeric:lining-nums tabular-nums;box-shadow:0 2px 8px #0006}.pscore{display:flex;flex-direction:column;align-items:center;min-width:44px}.pscore .lbl{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.pscore .val{font-family:var(--disp);font-weight:700;font-size:28px;line-height:1.1;font-variant-numeric:lining-nums tabular-nums}.pscore .of{font-size:11px;color:var(--muted)}.pscore .of:empty{display:none}.hud{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;height:230px;padding:14px;overflow-y:auto;background:var(--panel-2);border:1px solid var(--line);border-radius:14px}.hud-in{display:contents}.hud:has(#reviewBar:not([hidden])) .dice,.hud:has(#absentBox:not([hidden])) .dice{display:none}.hud .absent,.hud .review-bar{width:100%}.side{display:flex;flex-direction:column;gap:12px;padding:12px 14px;background:var(--panel-2);border:1px solid var(--line);border-radius:14px;min-height:0}.dice{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;min-height:50px;align-items:center}.die{width:48px;height:48px;border-radius:10px;padding:7px;display:grid;grid-template:repeat(3,1fr) / repeat(3,1fr);background:linear-gradient(160deg,var(--die-w1),var(--die-w2));box-shadow:inset 0 -3px #00000029,0 3px 10px #0006;transition:opacity .25s,transform .25s}.die i{width:9px;height:9px;border-radius:50%;place-self:center}.die i.pip{background:var(--pip-w)}.die-b{background:linear-gradient(160deg,var(--die-b1),var(--die-b2))}.die-b i.pip{background:var(--pip-b)}.dice:has(.die:nth-child(3)) .die{width:40px;height:40px;padding:6px}.dice:has(.die:nth-child(3)) .die i{width:7.5px;height:7.5px}.die.used{opacity:.3;transform:scale(.9)}.die.spin{transform:rotate(var(--r, 8deg))}.die.spin:nth-child(2n){--r: -10deg}.status{margin:0;text-align:center;color:var(--muted);font-size:14px;min-height:1.45em;line-height:1.45}.actions{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.btn{font-weight:600;font-size:14px;background:var(--raise);border:1px solid var(--line);border-radius:10px;padding:10px 15px;cursor:pointer;transition:border-color .15s,transform .05s,filter .15s}.btn:hover{border-color:var(--accent)}.btn:active{transform:translateY(1px)}.btn.primary{background:var(--accent);color:var(--accent-ink);border-color:transparent}.btn.primary:hover{filter:brightness(1.08)}.btn.wide{flex:1}.btn:focus-visible,.tool:focus-visible,input:focus-visible,.seg button:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.chat{display:flex;flex-direction:column;gap:6px}.history{flex:1 1 0;min-height:120px;display:flex;flex-direction:column}.hist-list .h-empty{display:block;color:var(--muted);font-size:13px;padding:4px 6px}.hist-head{display:flex;justify-content:space-between;align-items:center;width:100%;background:none;border:0;padding:2px 2px 6px;cursor:pointer;font-weight:700;font-size:14px;color:var(--text)}.hist-chev{width:8px;height:8px;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(45deg) translate(-2px,-2px);transition:transform .15s}.history.collapsed .hist-chev{transform:rotate(-45deg)}.history.collapsed .hist-body{display:none}.history.collapsed{flex:0 0 auto;min-height:0}.hist-body{flex:1 1 0;min-height:0;overflow-y:auto}.hist-list{list-style:none;margin:0;padding:0;font-size:13px}.hist-list li{display:grid;grid-template-columns:22px 12px 30px minmax(0,1fr);gap:8px;align-items:center;padding:4px 6px;border-radius:6px}.hist-list .dot{width:11px;height:11px}.hist-list .h-turn{cursor:pointer}.hist-list .h-turn:hover{background:var(--raise)}.hist-list .h-turn:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.hist-list .n{color:var(--muted);font-size:11px;text-align:right}.hist-list .mv{font-family:ui-monospace,Consolas,monospace;font-size:12px;overflow-wrap:anywhere}.hist-list .h-ev{display:block;color:var(--muted);font-size:12px;padding-left:36px}.hist-list .sel{background:var(--accent);color:var(--accent-ink)}.hist-list .sel .n{color:var(--accent-ink)}.sev{display:inline-block;width:8px;height:8px;border-radius:50%;margin-left:5px;vertical-align:0}.sev.big,.tag.big{background:#e2735d}.sev.mid,.tag.mid{background:#e9a24a}.sev.small,.tag.small{background:#d8c46a}.review-bar{display:flex;flex-direction:column;gap:8px;padding:10px 12px;border:1px solid var(--accent);border-radius:12px;background:var(--panel);font-size:13px;text-align:center}.review-bar .btn{align-self:center;padding:8px 14px}.analysis{display:flex;flex-direction:column;gap:8px;padding-bottom:10px;margin-bottom:8px;border-bottom:1px solid var(--line)}.an-sum{display:flex;gap:14px;align-items:center}.an-acc{font-family:var(--disp);font-weight:700;font-size:32px;line-height:1}.an-acc small{display:block;font:500 11px var(--ui);color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin-top:3px}.an-counts{font-size:13px;line-height:1.5}.an-counts .muted{font-size:12px}.an-bar{height:6px;border-radius:3px;background:var(--input);overflow:hidden}.an-bar i{display:block;height:100%;background:var(--accent);transform-origin:left}.an-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.an-item{display:grid;grid-template-columns:auto 1fr auto;gap:2px 8px;padding:7px 8px;border-radius:8px;border:1px solid transparent;font-size:13px;cursor:pointer;text-align:left;background:none;width:100%;color:var(--text)}.an-item:hover{background:var(--raise)}.an-item.sel{border-color:var(--accent);background:var(--panel)}.an-item .tag{font-size:11px;font-weight:700;padding:1px 7px;border-radius:999px;color:#241509;align-self:start}.an-item .loss{font-weight:700;font-variant-numeric:lining-nums tabular-nums}.an-item .sub{grid-column:1 / -1;color:var(--muted);font-size:12px}.an-item code{font-family:ui-monospace,Consolas,monospace;color:var(--text)}.analysis .actions{justify-content:flex-start}.analysis .actions .btn{padding:8px 12px;font-size:13px;white-space:nowrap}.absent{display:flex;flex-direction:column;gap:10px;padding:12px;border:1px solid var(--accent);border-radius:12px;background:var(--panel)}.absent-text{margin:0;text-align:center;font-size:14px;line-height:1.45}.absent .btn:disabled{opacity:.45;cursor:default}.offer-clock{margin:-4px 0 0;color:var(--accent);font-size:13px;font-variant-numeric:lining-nums tabular-nums}#waitRoomInfo .share{width:100%;margin-top:8px}.chatlog{list-style:none;margin:0;padding:0;max-height:96px;overflow-y:auto;font-size:13px;color:var(--muted)}.chatlog li{padding:2px 0;overflow-wrap:anywhere}.chatlog b{color:var(--text)}.chat input{width:100%}#board .st-field1{stop-color:var(--field1)}#board .st-field2{stop-color:var(--field2)}#board .st-brass1{stop-color:var(--brass1)}#board .st-brass2{stop-color:var(--brass2)}#board .st-w1{stop-color:var(--w1)}#board .st-w2{stop-color:var(--w2)}#board .st-w3{stop-color:var(--w3)}#board .st-b1{stop-color:var(--b1)}#board .st-b2{stop-color:var(--b2)}#board .st-b3{stop-color:var(--b3)}#board .frame{fill:var(--frame-fill)}#board .frame-edge{fill:none;stroke:var(--frame-edge);stroke-width:2;opacity:.6}#board .field{fill:var(--field-fill)}#board .field-line{fill:none;stroke:var(--field-line);stroke-width:2}#board .tri-a{fill:var(--tri-a)}#board .tri-b{fill:var(--tri-b)}#board .bar{fill:var(--bar-fill)}#board .seam{stroke:var(--seam);stroke-width:1}#board .hinge{fill:var(--hinge-fill);stroke:var(--hinge-edge);stroke-width:1.2}#board .hinge-pin{fill:var(--hinge-pin)}#board .screw{fill:var(--screw)}#board .tray{fill:var(--tray);stroke:var(--field-line);stroke-width:1.5}#board .tray-mark{stroke-width:1.2}#board .tray-mark.w{fill:#f1e8d8;stroke:#a99a80}#board .tray-mark.b{fill:#2d2622;stroke:#0a0807}#board .ptlabel{fill:var(--ptlabel);font:600 10px var(--ui);text-anchor:middle}#board .ck-w .ck-body{fill:var(--ckw-fill);stroke:var(--ckw-edge);stroke-width:1.5}#board .ck-w .ck-ring{fill:none;stroke:var(--ckw-ring);stroke-width:1.6}#board .ck-b .ck-body{fill:var(--ckb-fill);stroke:var(--ckb-edge);stroke-width:1.5}#board .ck-b .ck-ring{fill:none;stroke:var(--ckb-ring);stroke-width:1.6}#board .ck-w .ck-inner{fill:var(--ckw-inner);stroke:var(--ckw-inner-edge);stroke-width:1.4}#board .ck-b .ck-inner{fill:var(--ckb-inner);stroke:var(--ckb-inner-edge);stroke-width:1.4}#board .ck-w.selected .ck-body{fill:url(#gGoldW);stroke:#a9771c}#board .ck-w.selected .ck-ring{stroke:#b8862a}#board .ck-w.selected .ck-inner{fill:#ebc660;stroke:#b8862a}#board .ck-b.selected .ck-body{fill:url(#gGoldB);stroke:#3e2a06}#board .ck-b.selected .ck-ring{stroke:#e2b85a}#board .ck-b.selected .ck-inner{fill:#7e5a18;stroke:#d3a547}#board .ck.ghost{opacity:.4;filter:none;pointer-events:none}#board .ck-shadows{opacity:.4;pointer-events:none}#board .ck-shadows circle{fill:#000}#board .ck.ghost.focus{opacity:.9}#board .mark-ghost{pointer-events:none}#board .mark-ghost.played{opacity:.5}#board .mark-ghost.best{opacity:.92}#board .mark-ghost.hint{opacity:.6}#board .mark-arrow{fill:none;stroke-width:4;stroke-linecap:round;pointer-events:none;filter:drop-shadow(0 1px 1.5px rgba(0,0,0,.6))}#board .mark-arrow.played{stroke:#f4ecdd;stroke-dasharray:8 7}#board .mark-arrow.best{stroke:var(--sel)}#board .mark-head.played{fill:#f4ecdd}#board .mark-head.best{fill:var(--sel)}#board .flying{filter:url(#lift);pointer-events:none}#board .dest-zone{fill:var(--dest-fill);stroke:var(--dest-stroke);stroke-width:4;stroke-linejoin:round;animation:pulse 1.4s ease-in-out infinite;pointer-events:none}#board .dest-zone.focus{fill:#ffe08a80;stroke:var(--sel);stroke-width:7;animation:none}#board .slab-w{fill:var(--slab-w);stroke:#00000059}#board .slab-b{fill:var(--slab-b);stroke:#ffffff2e}#board .stackn{font:700 15px var(--ui);text-anchor:middle;pointer-events:none}#board .stackn.on-w{fill:#3a2a1c}#board .stackn.on-b{fill:#f3e8d6}#board .cube-body{fill:#f6efe2;stroke:#8c7a5c;stroke-width:1.5}#board .cube-val{font:800 17px var(--ui);text-anchor:middle;fill:#2a1d13}#board .cube{filter:url(#shadow)}#board .cube.offered .cube-body{fill:#ffe08a;stroke:var(--accent);stroke-width:3;animation:pulse 1.2s ease-in-out infinite}@keyframes pulse{50%{fill-opacity:.55}}.overlay{position:fixed;inset:0;z-index:20;display:grid;place-items:center;padding:16px;background:#080503a8;backdrop-filter:blur(3px);overflow-y:auto}.sheet{width:min(900px,100%);background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:26px;box-shadow:0 30px 90px -20px #000c;display:flex;flex-direction:column;gap:16px}.sheet.small{width:min(420px,100%);text-align:center;align-items:stretch}.sheet h2{font-family:var(--head);font-size:26px;margin:0}.menu-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:16px}.menu-head .tagline{grid-column:1 / -1}.menu-head h1{font-family:var(--disp);font-weight:700;font-size:48px;margin:0;line-height:1}#langSeg button{padding:6px 12px;font-size:13px;letter-spacing:.04em}.tagline{color:var(--muted);margin:8px 0 0;max-width:60ch;line-height:1.5}.name-field{max-width:320px}.menu-opts{display:flex;gap:12px;flex-wrap:wrap;align-items:end}.menu-opts .name-field{flex:1 1 220px}.menu-opts .name-field input{height:41px}select{background:var(--input);color:var(--text);border:1px solid var(--line);border-radius:10px;padding:10px 12px;font-size:15px;min-width:150px}.resign-options{display:flex;flex-direction:column;gap:8px}.resign-options .btn{text-align:left}.modes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.mode-card{background:var(--panel-2);border:1px solid var(--line);border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:12px;min-width:0}.mode-card h2{font-size:20px}.mode-card p{margin:0;color:var(--muted);font-size:14px;line-height:1.45}.mode-card>.btn{margin-top:auto}.row{display:flex;gap:8px;flex-wrap:wrap}.row.center{justify-content:center}.row>input{flex:1;min-width:0}.join input{flex:0 0 132px;text-transform:uppercase;letter-spacing:.2em;font-weight:700;text-align:center}.field{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--muted)}input{background:var(--input);border:1px solid var(--line);border-radius:10px;padding:10px 12px;font-size:15px}input::placeholder{color:var(--muted);opacity:.6}.seg{display:flex;background:var(--input);border:1px solid var(--line);border-radius:10px;padding:3px;gap:2px}.seg button{flex:1 1 0;min-width:0;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:0;background:transparent;border-radius:7px;padding:8px 4px;font-weight:600;font-size:14px;cursor:pointer;color:var(--muted);white-space:nowrap}.seg button[aria-checked=true]{background:var(--accent);color:var(--accent-ink)}#homeSeg{display:grid;grid-template-columns:1fr 1fr}#homeSeg button{padding:8px 18px}#piecesSeg{display:grid;grid-template-columns:1fr 1fr 1fr}#piecesSeg button{padding:8px 12px}.pc{width:14px;height:14px;border-radius:50%;flex-shrink:0}.pc.fildes{background:linear-gradient(90deg,#f4ecdd 50%,#2a2420 50%);box-shadow:inset 0 0 0 1px #6b625b}.pc.lemn{background:linear-gradient(90deg,#e4c18c 50%,#5c3a22 50%);box-shadow:inset 0 0 0 1px #3a2312}.pc.margine{background:linear-gradient(90deg,#fbf6ec 50%,#4a423d 50%);box-shadow:inset 0 0 0 1px #2c2622,inset 0 0 0 3px #d6cab4}@media(max-width:360px){#levelSeg{flex-wrap:wrap}#levelSeg button{flex-basis:calc(50% - 2px)}}.dot{width:12px;height:12px;border-radius:50%;display:inline-block;flex-shrink:0}.dot.w{background:#f4ecdd;box-shadow:inset 0 0 0 1px #a99a80}.dot.b{background:#2a2420;box-shadow:inset 0 0 0 1px #6b625b}.help{color:var(--muted);font-size:14px;line-height:1.55}.help summary{cursor:pointer;color:var(--text);font-weight:600}.help ul{padding-left:20px;margin:10px 0}.help b{color:var(--text)}.check{display:inline-flex;gap:8px;align-items:center;cursor:pointer;color:var(--text)}.check input{appearance:none;-webkit-appearance:none;width:18px;height:18px;margin:0;padding:0;flex-shrink:0;display:grid;place-content:center;background:var(--input);border:1px solid var(--line);border-radius:5px;cursor:pointer}.check:hover input{border-color:var(--accent)}.check input:checked{background:var(--accent);border-color:var(--accent)}.check input:checked:before{content:"";width:9px;height:5px;border:solid var(--accent-ink);border-width:0 0 2px 2px;transform:translateY(-1px) rotate(-45deg)}.check input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.menu-opts .auto-opt{min-height:41px;font-size:14px;font-weight:600}.code{font-family:var(--disp);font-weight:700;font-size:52px;letter-spacing:.18em;color:var(--accent);margin:4px 0 10px}.muted{color:var(--muted);margin:0}#waitRoomInfo p{margin:0;color:var(--muted)}.sheet.small>.btn{align-self:center}.final-score{display:flex;flex-direction:column;gap:6px;padding:12px 16px;background:var(--panel-2);border-radius:12px}.fs-row{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;text-align:left}.fs-row b{font-family:var(--disp);font-size:22px;font-variant-numeric:lining-nums tabular-nums}#goSub{margin:0;color:var(--muted)}.toasts{position:absolute;z-index:15;transform:translateY(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;pointer-events:none}.toasts.docked{position:fixed;left:50%;top:auto;bottom:max(18px,env(safe-area-inset-bottom));width:min(520px,calc(100% - 32px));transform:translate(-50%)}body:has(.overlay:not([hidden])) #toasts{visibility:hidden}#dlgToasts{z-index:30}.toast{max-width:100%;background:#160f0af0;color:#f7ecdb;border:1px solid rgba(220,170,76,.6);padding:11px 18px;border-radius:12px;box-shadow:0 16px 36px -10px #000c,0 0 0 1px #00000059;text-align:center;font-size:15px;font-weight:600;line-height:1.4;animation:toast-in .2s ease-out;transition:opacity .4s,transform .4s}.toast.error{border-color:var(--danger)}.toast.out{opacity:0;transform:translateY(6px)}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}}@media(max-width:860px),(orientation:portrait)and (max-width:1100px){.table-area{grid-template-columns:1fr 1fr;grid-template-rows:auto auto auto auto;grid-template-areas:"top bottom" "board board" "hud hud" "side side";gap:10px;align-content:start}.board-wrap{contain:none}#board{height:auto;aspect-ratio:856 / 660}.player{padding:9px 11px;gap:9px}.pname{font-size:14px}.pscore .val{font-size:22px}.swatch{width:24px;height:24px}.swatch:after{inset:5px}.table-area{grid-template-areas:"top bottom" "board board" "hud hud" "side side";grid-template-rows:auto auto auto auto}.hud{height:auto;flex-direction:row;flex-wrap:wrap;gap:12px;padding:12px;overflow:visible}.hud .status{flex-basis:100%;order:-1}.hud .absent,.hud .review-bar{flex-basis:100%}.side{padding:10px 12px}.side:not(:has(>:not([hidden]))){display:none}.history,.hist-body{flex:none;min-height:0}.hist-body{max-height:45vh}.modes{grid-template-columns:1fr}.menu-head h1{font-size:38px}}@media(max-width:520px){.table-area{grid-template-columns:1fr;grid-template-areas:"top" "board" "hud" "bottom" "side"}.pmeta .pips{display:none}.sheet{padding:20px 16px}.menu-head h1{font-size:32px}.tool{padding:8px 9px}.tool .tlabel{display:none}.logo{font-size:22px}.mode{font-size:12px}}@media(prefers-reduced-motion:reduce){#board .dest-zone{animation:none}.toast{animation:none;transition:none}}
