:root{--cream:#fbf4e6;--cream-2:#f1e3c9;--ink:#3a281c;--ink-2:#6f5643;--ink-3:#9a7f68;--wood:#d9b27c;--red:#d84a34;--red-d:#a82f21;--teal:#2f7470;--gold:#ffcf6e;--glass:#1a110b9e;--glass-2:#1a110bc7;--line:#3a281c24;--safe-t:env(safe-area-inset-top,0px);--safe-b:env(safe-area-inset-bottom,0px);--safe-l:env(safe-area-inset-left,0px);--safe-r:env(safe-area-inset-right,0px);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:PingFang SC,HarmonyOS Sans SC,MiSans,Microsoft YaHei UI,Microsoft YaHei,Noto Sans SC,system-ui,sans-serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{overscroll-behavior:none;background:#150f0b;height:100%;margin:0;overflow:hidden}#app{-webkit-user-select:none;user-select:none;position:fixed;inset:0;overflow:hidden}#scene{touch-action:none;outline:none;width:100%;height:100%;display:block;position:absolute;inset:0}#app:after{content:"";pointer-events:none;background:radial-gradient(120% 90% at 50% 52%,#0000 55%,#0805038c 100%);position:absolute;inset:0}#ui{z-index:2;pointer-events:none;position:absolute;inset:0}.boot{z-index:10;background:radial-gradient(80% 70% at 50% 45%,#2b1e15,#120c08);place-items:center;transition:opacity .5s;display:grid;position:absolute;inset:0}.boot.hide{opacity:0;pointer-events:none}.boot-card{color:#f6e5c8;justify-items:center;gap:18px;display:grid}.boot-title{letter-spacing:4px;text-shadow:0 2px #000;font-size:28px;font-weight:900}.boot-bar{background:#ffffff1a;border-radius:6px;width:200px;height:6px;overflow:hidden}.boot-bar i{background:linear-gradient(90deg,#e3c79b,#d84a34);border-radius:6px;width:40%;height:100%;animation:1.1s ease-in-out infinite bootbar;display:block}.boot-text{color:#b89e84;font-size:13px}@keyframes bootbar{0%{transform:translate(-110%)}to{transform:translate(260%)}}.screen{padding:calc(16px + var(--safe-t)) calc(16px + var(--safe-r)) calc(16px + var(--safe-b)) calc(16px + var(--safe-l));pointer-events:auto;-webkit-backdrop-filter:blur(3px);background:#0c07046b;justify-content:center;align-items:center;display:none;position:absolute;inset:0;overflow-y:auto}.screen.on{animation:.22s both fadein;display:flex}.screen.soft{-webkit-backdrop-filter:none;background:#0c070433}@keyframes fadein{0%{opacity:0}to{opacity:1}}.panel{width:min(420px,100%);color:var(--ink);background:radial-gradient(120% 60% at 50% 0%, #ffffff8c, transparent 60%), linear-gradient(180deg, var(--cream), var(--cream-2));border-radius:24px;margin:auto;padding:24px 22px 22px;animation:.28s cubic-bezier(.2,.9,.3,1.2) both pop;position:relative;box-shadow:0 26px 60px #00000080,inset 0 0 0 1px #ffffff80,inset 0 -4px #7850281f}@keyframes pop{0%{opacity:0;transform:translateY(10px)scale(.97)}to{opacity:1;transform:none}}.panel h2{letter-spacing:1px;margin:0 0 4px;font-size:22px;font-weight:900}.panel .sub{color:var(--ink-2);margin:0 0 18px;font-size:13.5px;line-height:1.6}.panel .back{position:absolute;top:14px;left:14px}.logo{text-align:center;justify-items:center;gap:6px;margin:2px 0 18px;display:grid}.logo svg{filter:drop-shadow(0 6px 10px #50280a40);width:74px;height:74px}.logo .name{letter-spacing:3px;color:var(--ink);text-shadow:0 1px #fff;font-size:30px;font-weight:900}.logo .name b{color:var(--red)}.logo .en{letter-spacing:4px;color:var(--ink-3);font-size:11px;font-weight:700}.btn{appearance:none;width:100%;min-height:50px;font:inherit;letter-spacing:.5px;cursor:pointer;pointer-events:auto;border:0;border-radius:16px;outline:none;justify-content:center;align-items:center;gap:10px;padding:10px 16px;font-size:16.5px;font-weight:800;transition:transform 80ms,box-shadow 80ms,filter .15s;display:flex}.btn:disabled{filter:grayscale(.6)opacity(.6);cursor:default}.btn svg{flex:none;width:22px;height:22px}.btn-primary{color:#fff;box-shadow:0 5px 0 var(--red-d), 0 10px 18px #c93d2b52;text-shadow:0 1px #0003;background:linear-gradient(#ec644b,#c93d2b)}.btn-primary:not(:disabled):active{box-shadow:0 1px 0 var(--red-d), 0 4px 10px #c93d2b4d;transform:translateY(4px)}.btn-wood{color:#4a3020;background:linear-gradient(#f3dcb0,#dcb27a);box-shadow:0 5px #b0824e,0 10px 18px #78502838}.btn-wood:not(:disabled):active{transform:translateY(4px);box-shadow:0 1px #b0824e}.btn-ghost{color:var(--ink-2);background:0 0;min-height:42px;font-size:15px;font-weight:700}.btn-ghost:active{background:#0000000d}.btn-small{border-radius:12px;width:auto;min-height:38px;padding:6px 14px;font-size:14px}.stack{gap:14px;display:grid}.row{gap:10px;display:flex}.row>*{flex:1}.mode-btn{appearance:none;width:100%;font:inherit;text-align:left;cursor:pointer;color:var(--ink);background:linear-gradient(#fffaf0,#f4e6cc);border:0;border-radius:18px;align-items:center;gap:14px;padding:12px 14px;transition:transform 80ms,box-shadow 80ms;display:flex;box-shadow:0 4px #d9c29d,0 8px 16px #5a3c1e24,inset 0 0 0 1px #966e462e}.mode-btn:active{transform:translateY(3px);box-shadow:0 1px #d9c29d,inset 0 0 0 1px #966e462e}.mode-btn .ic{color:#fff;border-radius:14px;flex:none;place-items:center;width:46px;height:46px;display:grid}.mode-btn .ic svg{width:26px;height:26px}.mode-btn .t{font-size:17px;font-weight:900}.mode-btn .d{color:var(--ink-2);margin-top:2px;font-size:12.5px}.mode-btn .chev{color:var(--ink-3);width:18px;height:18px;margin-left:auto}.ic-red{background:linear-gradient(#ee6a50,#c93d2b)}.ic-teal{background:linear-gradient(#46958f,#2a6460)}.ic-ink{background:linear-gradient(#5a4a3e,#2f241c)}.field{height:46px;box-shadow:0 0 0 1px var(--line) inset, 0 2px 4px #0000000a inset;background:#ffffffb3;border-radius:14px;align-items:center;gap:10px;padding:0 12px;display:flex}.field label{color:var(--ink-2);white-space:nowrap;font-size:13px;font-weight:700}.field input{min-width:0;font:inherit;color:var(--ink);background:0 0;border:0;outline:none;flex:1;font-size:16px;font-weight:700}.field input::placeholder{color:var(--ink-3);font-weight:500}.footer-links{flex-wrap:wrap;justify-content:center;gap:2px;margin-top:6px;display:flex}.footer-links .btn-ghost{gap:6px;width:auto;padding:6px 10px;font-size:14px}.footer-links .btn svg{width:19px;height:19px}.levels{gap:10px;display:grid}.level{appearance:none;font:inherit;text-align:left;cursor:pointer;color:var(--ink);box-shadow:0 0 0 1.5px var(--line) inset;background:#ffffffa6;border:0;border-radius:16px;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:12px 14px;transition:box-shadow .15s,background .15s;display:grid}.level .dots{gap:4px;display:flex}.level .dots i{background:#e2cfae;border-radius:50%;width:9px;height:9px}.level .dots i.on{background:var(--red)}.level .t{font-size:16px;font-weight:900}.level .d{color:var(--ink-2);font-size:12.5px}.level .check{border-radius:50%;width:22px;height:22px;box-shadow:inset 0 0 0 2px #d7c2a0}.level.sel{box-shadow:0 0 0 2px var(--red) inset, 0 6px 14px #c8462826;background:#fff}.level.sel .check{background:var(--red);box-shadow:0 0 0 4px #fff inset, 0 0 0 2px var(--red)}.wait{text-align:center;justify-items:center;gap:12px;display:grid}.spinner{width:86px;height:86px;margin:6px 0 4px;position:relative}.spinner:before{content:"";border:3px dashed #d84a3480;border-radius:50%;animation:6s linear infinite spin;position:absolute;inset:0}.spinner .pk{border-radius:50%;width:28px;height:28px;margin:-14px;position:absolute;top:50%;left:50%;box-shadow:0 3px #00000040,0 6px 10px #0003}.spinner .pk.a{background:radial-gradient(circle at 35% 30%,#4a413a,#141110);animation:1.6s ease-in-out infinite orbit}.spinner .pk.b{background:radial-gradient(circle at 35% 30%,#f7e4bf,#cda46c);animation:1.6s ease-in-out infinite reverse orbit}@keyframes spin{to{transform:rotate(360deg)}}@keyframes orbit{0%{transform:translate(-22px)}50%{transform:translate(22px)}to{transform:translate(-22px)}}.wait .big{font-size:20px;font-weight:900}.wait .mono{font-variant-numeric:tabular-nums;color:var(--ink-2);font-size:14px}.room-code{letter-spacing:6px;color:var(--red);box-shadow:0 0 0 1px var(--line) inset;-webkit-user-select:all;user-select:all;background:#ffffffb3;border-radius:14px;padding:4px 12px;font-size:34px;font-weight:900}.link-box{width:100%;box-shadow:0 0 0 1px var(--line) inset;background:#ffffffbf;border-radius:14px;align-items:center;gap:8px;padding:6px 6px 6px 12px;display:flex}.link-box input{min-width:0;font:inherit;color:var(--ink-2);background:0 0;border:0;outline:none;flex:1;font-size:13px}.versus{text-align:center;justify-items:center;gap:16px;display:grid}.versus .tag{letter-spacing:3px;color:var(--red);font-size:13px;font-weight:800}.vs-row{grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;width:100%;display:grid}.plate{word-break:break-all;justify-items:center;gap:8px;min-width:0;font-size:15px;font-weight:800;display:grid}.plate .pn{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;line-height:1.35;display:-webkit-box;overflow:hidden}.plate .av{border-radius:50%;width:54px;height:54px;box-shadow:0 4px #0003,0 0 0 3px #fff}.av-me{background:radial-gradient(circle at 35% 30%,#f37a60,#b5321f)}.av-op{background:radial-gradient(circle at 35% 30%,#5aa8a1,#22524e)}.vs{color:var(--ink-3);font-size:26px;font-style:italic;font-weight:900}.count-big{color:var(--red);text-shadow:0 3px #00000014;font-size:54px;font-weight:900;line-height:1;animation:1s infinite beat}@keyframes beat{0%{opacity:.6;transform:scale(1.25)}30%{opacity:1;transform:scale(1)}to{transform:scale(1)}}.result{text-align:center}.result .badge{color:#fff;border-radius:50%;place-items:center;width:84px;height:84px;margin:0 auto 8px;display:grid;box-shadow:0 6px #00000026,0 12px 24px #0003}.result .badge svg{width:46px;height:46px}.result.win .badge{background:linear-gradient(#ffd36e,#e5a02c)}.result.lose .badge{background:linear-gradient(#8b7b6e,#5b4c40)}.result.draw .badge{background:linear-gradient(#6fb0aa,#2f7470)}.result h2{margin-bottom:6px;font-size:30px}.result.win h2{color:var(--red)}.stats{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:8px;margin:14px 0 18px;display:grid}.stats div{box-shadow:0 0 0 1px var(--line) inset;background:#fff9;border-radius:14px;padding:10px 6px}.stats b{font-size:20px;font-weight:900;display:block}.stats span{color:var(--ink-2);font-size:12px;line-height:1.35;display:block}.result .status{min-height:20px;color:var(--ink-2);margin:-6px 0 12px;font-size:13.5px}.result .note{color:var(--teal);margin:-8px 0 12px;font-size:13px;font-weight:800}.result .note:empty{display:none}.result .note b{color:var(--red);font-size:15px}.winner-name{border-top:1px solid var(--line);text-align:left;margin:18px 0;padding:14px 0 0}.winner-name-title{margin-bottom:10px;font-size:16px;font-weight:800;display:block}.winner-name-row{align-items:stretch;gap:8px;display:flex}.winner-name-row .field{flex:1;min-width:0}.winner-name .btn{width:auto}.winner-name-row .btn{border-radius:14px;flex-shrink:0;min-height:46px;padding:10px 12px;font-size:14px}.winner-name input::placeholder{color:var(--ink-2)}.winner-name .field:focus-within{outline:2px solid var(--teal);outline-offset:2px}.winner-name input{caret-color:var(--teal);-webkit-user-select:text;user-select:text}.winner-name input::selection{background:var(--wood);color:var(--ink)}.winner-name button:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.winner-name-foot{color:var(--ink-2);justify-content:space-between;align-items:center;gap:8px;font-size:12px;line-height:1.5;display:flex}.winner-name-foot .btn{white-space:nowrap;min-height:44px;padding:8px 0 8px 8px;font-size:12px}#winner-name-feedback{color:var(--red-d);margin:0 0 8px;font-size:13px;line-height:1.5}#winner-name-feedback:empty{display:none}.winner-name-done{color:var(--teal);overflow-wrap:anywhere;margin:0 0 12px;font-size:14px;font-weight:700}.confetti{pointer-events:none;border-radius:24px;position:absolute;inset:0;overflow:hidden}.confetti i{border-radius:2px;width:8px;height:12px;animation:2.4s ease-in forwards fall;position:absolute;top:-12px}@keyframes fall{to{opacity:0;transform:translateY(520px)rotate(720deg)}}.rules{color:var(--ink);gap:10px;margin:0;padding:0;font-size:14px;line-height:1.6;list-style:none;display:grid}.rules li{grid-template-columns:26px 1fr;gap:8px;display:grid}.rules li i{color:#fff;background:var(--red);border-radius:8px;place-items:center;width:24px;height:24px;font-size:13px;font-style:normal;font-weight:900;display:grid}.hud{pointer-events:none;color:#f8ecd8;display:none;position:absolute;inset:0}.hud.on{display:block}.hud-top{top:calc(10px + var(--safe-t));left:calc(10px + var(--safe-l));right:calc(10px + var(--safe-r));justify-content:space-between;align-items:center;gap:8px;display:flex;position:absolute}.hud-bottom{bottom:calc(12px + var(--safe-b));left:calc(10px + var(--safe-l));right:calc(10px + var(--safe-r));justify-content:center;align-items:center;display:flex;position:absolute}.icon-btn{pointer-events:auto;appearance:none;cursor:pointer;color:#f6e7cf;background:var(--glass);-webkit-backdrop-filter:blur(8px);border:0;border-radius:14px;flex:none;place-items:center;width:42px;height:42px;display:grid;box-shadow:inset 0 0 0 1px #ffffff14,0 4px 12px #00000040}.icon-btn:active{transform:scale(.94)}.icon-btn svg{width:22px;height:22px}.chip{background:var(--glass);-webkit-backdrop-filter:blur(8px);border-radius:999px;align-items:center;gap:8px;min-width:0;max-width:62vw;padding:5px 6px;transition:box-shadow .25s,background .25s;display:flex;box-shadow:inset 0 0 0 1px #ffffff14,0 4px 14px #00000040}.chip .av{border-radius:50%;flex:none;width:28px;height:28px;box-shadow:0 0 0 2px #ffffffd9}.chip .nm{white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:14px;font-weight:800;overflow:hidden}.chip .st{color:#d3bfa4;white-space:nowrap;font-size:11px}.chip .meta{min-width:0;line-height:1.2;display:grid}.chip .cnt{font-variant-numeric:tabular-nums;background:#ffffff1a;border-radius:999px;align-items:center;gap:5px;margin-left:4px;padding:4px 10px 4px 7px;font-size:15px;font-weight:900;display:flex}.chip .cnt i{background:radial-gradient(circle at 35% 30%,#f7e4bf,#b98d5e);border-radius:50%;width:12px;height:12px}.chip.active{box-shadow:0 0 0 2px var(--gold) inset, 0 0 22px #ffc45a66;background:#3c2012c7}.chip.off .av{filter:grayscale()brightness(.7)}.score{color:#e9d6b8;white-space:nowrap;padding:0 6px;font-size:12px;font-weight:800}.turn{top:calc(60px + var(--safe-t));background:var(--glass);-webkit-backdrop-filter:blur(8px);white-space:nowrap;border-radius:999px;align-items:center;gap:10px;padding:5px 14px 5px 5px;font-size:14px;font-weight:800;transition:background .3s,opacity .3s;display:flex;position:absolute;left:50%;transform:translate(-50%);box-shadow:0 4px 14px #00000040}.turn.mine{color:#fff;background:linear-gradient(90deg,#de5038f2,#ba3725f2)}.turn.hidden{opacity:0}.turn .ring{width:32px;height:32px;position:relative}.turn .ring>svg{position:absolute;inset:0;transform:rotate(-90deg)}.turn .ring circle{fill:none;stroke-width:3.2px}.turn .ring .bg{stroke:#ffffff2e}.turn .ring .fg{stroke:#fff1d6;stroke-linecap:round;transition:stroke .3s}.turn.urgent .ring .fg{stroke:var(--gold)}.turn .ring span{font-variant-numeric:tabular-nums;place-items:center;font-size:12px;display:grid;position:absolute;inset:0}.turn .ring span svg{width:15px;height:15px}.turn .lbl{letter-spacing:1px;font-variant-numeric:tabular-nums;min-width:42px;font-size:16px;font-weight:900}.turn.urgent{color:#fff;background:linear-gradient(90deg,#de5038f2,#ba3725f2);animation:1s ease-in-out infinite urgent}.turn.urgent .ring span{color:var(--gold)}.turn .ot-tag{color:#4a2a10;letter-spacing:1px;background:linear-gradient(#ffd36e,#f0a63a);border-radius:999px;order:3;padding:2px 8px;font-size:12px;font-weight:900;display:none}.turn.ot{background:linear-gradient(90deg,#7a4a16f0,#563210f0);padding-right:6px;box-shadow:inset 0 0 0 1.5px #ffcf6ea6,0 4px 14px #00000040}.turn.ot .ot-tag{display:inline-block}.turn.ot .ring .fg{stroke:var(--gold)}@keyframes urgent{0%,to{transform:translate(-50%)scale(1)}50%{transform:translate(-50%)scale(1.07)}}.bigcount{color:#fff7e6;text-shadow:0 6px #7832148c,0 14px 40px #00000080;opacity:0;pointer-events:none;white-space:nowrap;z-index:6;font-size:min(26vw,150px);font-weight:900;line-height:1;position:absolute;top:44%;left:50%;transform:translate(-50%,-50%)scale(.6)}.bigcount.go{color:#ffd36e;font-size:min(18vw,110px)}.bigcount.info,.bigcount.warn{letter-spacing:2px;font-size:min(9vw,52px)}.bigcount.warn{color:#ff9b80}.bigcount.show{animation:.8s cubic-bezier(.2,.9,.3,1.2) forwards bigpop}.bigcount.go.show,.bigcount.info.show,.bigcount.warn.show{animation-duration:1.1s}@keyframes bigpop{0%{opacity:0;transform:translate(-50%,-50%)scale(1.8)}18%{opacity:1;transform:translate(-50%,-50%)scale(1)}70%{opacity:1;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-50%)scale(.85)}}.chip .cnt{position:relative}.chip .cnt.bump-good{animation:.6s bumpgood}.chip .cnt.bump-bad{animation:.6s bumpbad}@keyframes bumpgood{0%{background:#ffffff1a;transform:scale(1)}30%{color:#fff;background:#5fd27ad9;transform:scale(1.35)}to{background:#ffffff1a;transform:scale(1)}}@keyframes bumpbad{0%{background:#ffffff1a;transform:scale(1)}30%{color:#fff;background:#f05036e6;transform:scale(1.35)}to{background:#ffffff1a;transform:scale(1)}}.chip .cnt .delta{pointer-events:none;text-shadow:0 1px 2px #00000080;font-size:14px;font-weight:900;animation:.9s ease-out forwards deltafly;position:absolute;top:-6px;right:-4px}.chip.me .cnt .delta{top:-14px}.chip .cnt .delta.good{color:#7ff0a0}.chip .cnt .delta.bad{color:#ff9078}@keyframes deltafly{0%{opacity:0;transform:translateY(6px)scale(.8)}20%{opacity:1;transform:translateY(0)scale(1.1)}to{opacity:0;transform:translateY(-22px)scale(1)}}.chip.danger .cnt{animation:1.1s ease-in-out infinite danger;box-shadow:0 0 0 2px #ffcf6ee6}@keyframes danger{50%{box-shadow:0 0 0 2px #ffcf6e33,0 0 16px #ffc85a99}}.chip.danger .cnt.bump-good{animation:.6s bumpgood,1.1s ease-in-out .6s infinite danger}.chip.danger .cnt.bump-bad{animation:.6s bumpbad,1.1s ease-in-out .6s infinite danger}.power{left:50%;bottom:calc(70px + var(--safe-b));background:var(--glass-2);-webkit-backdrop-filter:blur(8px);opacity:0;border-radius:14px;align-items:center;gap:10px;width:min(280px,76vw);padding:8px 12px;font-size:13px;font-weight:800;transition:opacity .15s,transform .15s;display:flex;position:absolute;transform:translate(-50%)translateY(6px)}.power.on{opacity:1;transform:translate(-50%)}.power .bar{background:#ffffff24;border-radius:6px;flex:1;height:10px;position:relative;overflow:hidden}.power .bar i{clip-path:inset(0 calc(100% - var(--p,0%)) 0 0 round 6px);background:linear-gradient(90deg,#5fd27a,#ffd24a 55%,#ff5136);border-radius:6px;position:absolute;inset:0}.power .pct{text-align:right;font-variant-numeric:tabular-nums;width:42px}.power.max .pct{color:#ff8a6e}.toast{color:#fff3dc;letter-spacing:1px;opacity:0;pointer-events:none;white-space:nowrap;z-index:5;background:#160e09d1;border-radius:18px;padding:12px 22px;font-size:18px;font-weight:900;transition:opacity .2s,transform .25s cubic-bezier(.2,.9,.3,1.3);position:absolute;top:40%;left:50%;transform:translate(-50%,-50%)scale(.92);box-shadow:0 10px 30px #00000059}.toast.show{opacity:1;transform:translate(-50%,-50%)scale(1)}.toast.mine{background:linear-gradient(#e85c44f2,#be3826f2)}.notice{top:calc(104px + var(--safe-t));color:#3a281c;white-space:nowrap;z-index:4;background:#f6c35b;border-radius:12px;align-items:center;gap:8px;padding:8px 14px;font-size:13.5px;font-weight:800;display:none;position:absolute;left:50%;transform:translate(-50%);box-shadow:0 6px 18px #0000004d}.notice.on{display:flex}.notice .dot{background:#b5321f;border-radius:50%;width:8px;height:8px;animation:1s infinite blink}@keyframes blink{50%{opacity:.2}}.hint{left:50%;top:calc(104px + var(--safe-t));background:var(--glass-2);color:#fbeed6;text-align:center;white-space:pre-line;opacity:0;pointer-events:none;border-radius:12px;width:max-content;max-width:min(440px,92vw);padding:7px 14px;font-size:12.5px;line-height:1.5;transition:opacity .3s;position:absolute;transform:translate(-50%)}.hint.on{opacity:1}.hint:first-line{color:#ffd98a;font-weight:800}@media (min-width:900px) and (min-aspect-ratio:4/3){.chip{max-width:320px}.hud-bottom{justify-content:center}}@media (min-width:980px) and (min-aspect-ratio:13/10){.hint{top:50%;left:auto;right:calc(20px + var(--safe-r));text-align:left;max-width:min(260px,50vw - 34.5vh - 36px);padding:12px 16px;font-size:13.5px;line-height:1.7;transform:translateY(-50%)}}@media (orientation:landscape) and (max-height:480px){[data-screen=menu] .panel{width:min(760px,100%);padding:14px 18px 10px}[data-screen=menu] .logo{grid-auto-flow:column;justify-content:center;align-items:center;gap:12px;margin:0 0 10px}[data-screen=menu] .logo svg{width:40px;height:40px}[data-screen=menu] .logo .name{font-size:22px}[data-screen=menu] .logo .en{display:none}[data-screen=menu] .stack{grid-template-columns:repeat(3,1fr);gap:10px}[data-screen=menu] .stack .field{grid-column:1/-1;height:40px}[data-screen=menu] .mode-btn{text-align:center;flex-direction:column;gap:6px;padding:10px 8px}[data-screen=menu] .mode-btn .chev{display:none}[data-screen=menu] .footer-links{margin-top:2px}}@media (orientation:landscape) and (max-height:520px){.hud-top{top:calc(8px + var(--safe-t))}.chip.opp{top:calc(58px + var(--safe-t));left:calc(10px + var(--safe-l));max-width:30vw;position:fixed}.hud-bottom{left:calc(10px + var(--safe-l));right:auto;bottom:calc(8px + var(--safe-b))}.chip.me{max-width:30vw}.turn{top:calc(8px + var(--safe-t))}.notice{top:calc(52px + var(--safe-t))}.hint{top:50%;left:auto;right:calc(10px + var(--safe-r));text-align:left;max-width:min(210px,27vw);transform:translateY(-50%)}.power{left:auto;right:calc(10px + var(--safe-r));bottom:calc(10px + var(--safe-b));width:min(240px,30vw);transform:translateY(6px)}.power.on{transform:none}}@media (max-height:560px){.panel{padding:18px}.logo svg{width:52px;height:52px}.logo .name{font-size:24px}}.streak{left:50%;bottom:calc(64px + var(--safe-b));color:#4a2a10;letter-spacing:1px;opacity:0;pointer-events:none;white-space:nowrap;z-index:4;background:linear-gradient(#ffd36e,#f0a63a);border-radius:999px;padding:5px 14px;font-size:15px;font-weight:900;position:absolute;transform:translate(-50%)translateY(8px)scale(.8);box-shadow:0 6px 18px #0000004d,inset 0 0 0 2px #ffffff59}.streak b{font-size:19px}.streak.hot{color:#fff6e8;background:linear-gradient(#ff8a5c,#e0472c)}.streak.show{animation:1.6s cubic-bezier(.2,.9,.3,1.3) forwards streakpop}@keyframes streakpop{0%{opacity:0;transform:translate(-50%)translateY(10px)scale(.6)}15%{opacity:1;transform:translate(-50%)translateY(0)scale(1.12)}30%{transform:translate(-50%)translateY(0)scale(1)}80%{opacity:1;transform:translate(-50%)translateY(-4px)scale(1)}to{opacity:0;transform:translate(-50%)translateY(-14px)scale(.96)}}.power.on~.streak{bottom:calc(118px + var(--safe-b))}.ping{top:calc(62px + var(--safe-t));right:calc(12px + var(--safe-r));background:var(--glass);font-variant-numeric:tabular-nums;color:#bfe9c4;border-radius:999px;align-items:center;gap:4px;padding:3px 8px;font-size:11px;font-weight:800;display:none;position:absolute}.ping.on{display:flex}.ping svg{width:13px;height:13px}.ping[data-q=ok]{color:#ffe08a}.ping[data-q=bad]{color:#ff9a80}.guide-path{opacity:0;pointer-events:none;z-index:2;width:100%;height:100%;position:fixed;inset:0;overflow:visible}.guide-path polyline{fill:none;stroke:#ffecbee6;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:.1 9;filter:drop-shadow(0 1px 2px #00000073)}.guide-path circle{fill:none;stroke:#ff8c64f2;stroke-width:2.5px}.guide-hand{opacity:0;pointer-events:none;transform-origin:19px 5px;z-index:3;filter:drop-shadow(0 6px 8px #00000059);will-change:transform, opacity;width:48px;height:48px;margin:-5px 0 0 -19px;position:fixed;top:0;left:0}.guide-hand svg{fill:#fffaf0;stroke:#3a281c;stroke-width:2.4px;stroke-linejoin:round;width:48px;height:48px}.guide-hand .ripple{opacity:0;border:3px solid #ffd678f2;border-radius:50%;width:34px;height:34px;margin:-17px 0 0 -17px;transition:opacity .2s,transform .25s;position:absolute;top:5px;left:19px;transform:scale(.4)}.guide-hand.pressed .ripple{opacity:1;transform:scale(1)}.guide-hand.pulling .ripple{border-color:#ff7850f2}.settings{gap:10px;display:grid}.setting{box-shadow:0 0 0 1.5px var(--line) inset;cursor:pointer;background:#ffffffa6;border-radius:16px;align-items:center;gap:14px;padding:12px 14px;transition:opacity .2s;display:flex}.setting .txt{flex:1;gap:3px;min-width:0;display:grid}.setting .txt b{font-size:15.5px;font-weight:900}.setting .txt small{color:var(--ink-2);font-size:12.5px;line-height:1.5}.setting.muted{opacity:.5;cursor:default}.switch{appearance:none;cursor:pointer;background:#d9c6a6;border-radius:999px;flex:none;width:50px;height:30px;margin:0;transition:background .2s;position:relative;box-shadow:inset 0 1px 3px #0000002e}.switch:after{content:"";background:#fff;border-radius:50%;width:24px;height:24px;transition:transform .2s cubic-bezier(.3,.7,.4,1.2);position:absolute;top:3px;left:3px;box-shadow:0 2px 4px #00000040}.switch:checked{background:var(--red)}.switch:checked:after{transform:translate(20px)}.switch:disabled{cursor:default}.switch:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.board-panel{width:min(460px,100%)}.tabs{background:#3a281c14;border-radius:14px;grid-template-columns:1fr 1fr;gap:4px;margin:0 0 12px;padding:4px;display:grid}.tabs button{appearance:none;font:inherit;color:var(--ink-2);cursor:pointer;background:0 0;border:0;border-radius:11px;padding:8px 0;font-size:14.5px;font-weight:800}.tabs button.on{color:var(--ink);background:#fff;box-shadow:0 2px 6px #50321426}.board-body{overscroll-behavior:contain;max-height:min(50vh,430px);margin:0 -6px;padding:2px 6px;overflow-y:auto}.board-state{text-align:center;color:var(--ink-2);justify-items:center;gap:10px;padding:34px 0;font-weight:800;display:grid}.board-state small{color:var(--ink-3);font-size:12.5px;font-weight:600}.board-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.board-list li{box-shadow:0 0 0 1px var(--line) inset;background:#fff9;border-radius:14px;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;column-gap:10px;padding:8px 12px 8px 8px;display:grid}.board-list .rk{font-variant-numeric:tabular-nums;width:30px;height:30px;color:var(--ink-2);background:#3a281c12;border-radius:10px;grid-row:1/3;place-items:center;font-size:14px;font-weight:900;display:grid}.board-list .r1 .rk{color:#5a3a08;background:linear-gradient(#ffd36e,#e5a02c)}.board-list .r2 .rk{color:#3e3a33;background:linear-gradient(#ece8e0,#b9b2a6)}.board-list .r3 .rk{color:#4a2610;background:linear-gradient(#f0b98a,#c47c45)}.board-list .who{align-items:baseline;gap:6px;min-width:0;display:flex}.board-list .who b{white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:15px;font-weight:900;overflow:hidden}.board-list .who i{color:var(--ink-3);flex:none;font-size:11px;font-style:normal;font-weight:700}.board-list .wn{white-space:nowrap;text-align:right;color:var(--ink-2);grid-area:1/3/3;font-size:12px;font-weight:800}.board-list .wn b{font-variant-numeric:tabular-nums;color:var(--red);margin-right:2px;font-size:20px;font-weight:900}.board-list .rt{color:var(--ink-3);grid-column:2;font-size:11.5px;font-weight:700}.board-list li.me{box-shadow:0 0 0 2px var(--red) inset, 0 6px 14px #c8462826;background:#fff}.board-me{color:var(--ink-2);background:#3a281c12;border-radius:14px;align-items:center;gap:10px;margin-top:12px;padding:10px 12px;font-size:13.5px;font-weight:700;display:flex}.board-me:empty{display:none}.board-me .av{border-radius:50%;flex:none;width:22px;height:22px}.board-me .t{min-width:0}.board-me b{color:var(--red);font-size:16px}
