:root{--red: #ef4444;--blue: #4f9bff;--green: #2fb866;--yellow: #facc15;--accent: #df1b00;--page: #eef2fb;--card: #ffffff;--ink: #2b3a55;--quiet: #7b88a1;--shadow: 0 4px 0 rgba(43, 58, 85, .12);--radius: 18px}:root[data-theme=dark]{--page: #171b28;--card: #222838;--ink: #eef2fb;--quiet: #8b97ae}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{height:100%;margin:0;overscroll-behavior:none}body{background:var(--page);color:var(--ink);font:600 16px/1.35 system-ui,-apple-system,Segoe UI,sans-serif;user-select:none;touch-action:manipulation}#app{height:100%}.page{height:100%;display:flex;flex-direction:column;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);overflow:hidden}.app-header{display:flex;align-items:center;gap:12px;padding:14px 16px;min-height:56px}.back-btn{width:40px;height:40px;border:0;border-radius:50%;background:var(--card);color:var(--ink);font-size:26px;line-height:1;box-shadow:var(--shadow);cursor:pointer}.header-title{margin:0;font-size:20px;letter-spacing:.04em;text-transform:uppercase}.logo{text-align:center;margin:8px 0 20px}.logo-mark{font-size:34px;letter-spacing:.1em;color:var(--accent)}.logo-tag{font-size:13px;letter-spacing:.08em;color:var(--quiet);font-weight:500;margin-top:4px}.mode-grid,.game-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;grid-auto-rows:max-content;padding:0 16px 16px;overflow-y:auto;flex:1;align-content:start}.mode-tile{border:0;border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow);padding:20px 12px;cursor:pointer;color:var(--ink)}.tile-big{font-size:40px;line-height:1}.tile-sub{font-size:13px;letter-spacing:.08em;margin-top:6px}.tile-note{font-size:11px;color:var(--quiet);margin-top:8px;font-weight:500}.mode-1P .tile-big{color:var(--red)}.mode-2P .tile-big{color:var(--blue)}.mode-3P .tile-big{color:var(--green)}.mode-4P .tile-big{color:var(--yellow)}.mode-2v2 .tile-big{font-size:30px}.share-card{margin:0 16px 12px;padding:14px;border:0;border-radius:var(--radius);background:#2b9d3a;color:#fff;font:inherit;font-size:15px;cursor:pointer}.session-strip{display:flex;justify-content:space-evenly;align-items:center;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:var(--card);box-shadow:0 -2px #2b3a550f}.session-cell{display:flex;align-items:center;gap:8px}.session-avatar{width:26px;height:26px;border-radius:50%;background:var(--seat)}.session-score{font-size:22px}.seat-red{--seat: var(--red);color:var(--seat)}.seat-blue{--seat: var(--blue);color:var(--seat)}.seat-green{--seat: var(--green);color:var(--seat)}.seat-yellow{--seat: var(--yellow);color:var(--seat)}.game-tile{border:0;padding:0;border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow);overflow:hidden;position:relative;cursor:pointer;display:flex;flex-direction:column}.game-art{aspect-ratio:1 / 1;background:#cfd9f0 center / cover no-repeat}.game-label{padding:8px 10px;font-size:13px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink);text-align:left}.ribbon{position:absolute;top:8px;right:-26px;transform:rotate(35deg);background:var(--accent);color:#fff;font-size:11px;padding:3px 28px}.more-coming{margin:0 16px 12px;color:var(--quiet);text-align:center;white-space:pre-line}.info-hero{padding:0 20px 16px}.info-title{margin:0 0 8px;font-size:24px;text-transform:uppercase}.info-desc{margin:0;color:var(--quiet);font-weight:500}.info-body{flex:1;display:grid;place-items:center;padding:16px}.seating{position:relative;width:min(70vw,300px);aspect-ratio:9 / 16;border:3px solid var(--quiet);border-radius:22px}.seat-dot{width:42px;height:42px;border-radius:50%;background:var(--seat);color:#fff;display:grid;place-items:center;font-size:13px;font-weight:700}.difficulty{display:grid;justify-items:center;gap:10px}.bot-face{width:72px;height:72px;border-radius:50%;background:var(--yellow);display:grid;place-items:center;font-size:22px;color:#2b3a55}.difficulty[data-level=easy] .bot-face{background:var(--green)}.difficulty[data-level=hard] .bot-face{background:var(--red)}.difficulty-name{font-size:26px;letter-spacing:.06em}.difficulty-row{display:flex;gap:8px}.difficulty-step{width:54px;height:14px;border:0;border-radius:7px;background:var(--quiet);opacity:.4;cursor:pointer}.difficulty-step[data-level=easy]{background:var(--green)}.difficulty-step[data-level=medium]{background:var(--yellow)}.difficulty-step[data-level=hard]{background:var(--red)}.difficulty-hint{font-size:12px;color:var(--quiet);font-weight:500}.row{display:flex;gap:12px;justify-content:center;padding:16px}.btn{border:0;border-radius:999px;padding:14px 34px;font:inherit;font-size:18px;cursor:pointer;box-shadow:var(--shadow);color:#fff}.btn-play{background:var(--yellow);color:#2b3a55;min-width:190px}.btn-go{background:#2b9d3a}.btn-quiet{background:var(--quiet)}.stage{padding:0}.play-area{position:relative;flex:1;overflow:hidden;transition:background-color .22s ease;background:var(--page)}.play-area.turn-red{background:color-mix(in srgb,var(--red) 16%,var(--page))}.play-area.turn-blue{background:color-mix(in srgb,var(--blue) 16%,var(--page))}.play-area.turn-green{background:color-mix(in srgb,var(--green) 16%,var(--page))}.play-area.turn-yellow{background:color-mix(in srgb,var(--yellow) 16%,var(--page))}.play-area.locked{pointer-events:none}.hud-layer{position:absolute;inset:0;pointer-events:none;z-index:5}.hud-layer>*{pointer-events:auto}.score-pill{min-width:52px;padding:6px 14px;border-radius:999px;background:#222e47;color:var(--seat, #fff);font-size:20px;text-align:center;transition:opacity .18s ease;font-weight:700}.score-pill.dim{opacity:.45}.score-pill.bump{animation:bump .26s ease}@keyframes bump{50%{scale:1.25}}.goal-chip{position:absolute;top:10px;left:50%;transform:translate(-50%);background:#222e47;color:#fff;padding:4px 14px;border-radius:999px;font-size:12px}.turn-banner{position:absolute;top:50%;left:50%;translate:-50% -50%;font-size:26px;letter-spacing:.08em;color:#fff;text-shadow:0 2px 0 rgba(0,0,0,.25);animation:fade .9s ease forwards}@keyframes fade{0%{opacity:0}25%{opacity:1}to{opacity:0}}.countdown{position:absolute;inset:0;display:grid;place-items:center;font-size:96px;color:#fff;text-shadow:0 4px 0 rgba(0,0,0,.2);animation:pop .7s ease forwards}@keyframes pop{0%{transform:scale(.6);opacity:0}30%{transform:scale(1);opacity:1}to{opacity:0}}.toast{position:absolute;left:50%;bottom:96px;translate:-50% 0;background:#222e47;color:#fff;padding:10px 16px;border-radius:12px;font-size:14px;max-width:80%;text-align:center}.toast.anchored{bottom:auto;translate:-50% 0}.victory{position:absolute;inset:0;display:grid;place-items:center;gap:12px;align-content:center;background:color-mix(in srgb,var(--seat, var(--quiet)) 22%,var(--page))}.medal{width:96px;height:96px;border-radius:50%;background:var(--seat, var(--quiet));color:#fff;display:grid;place-items:center;font-size:40px}.victory-label{font-size:30px;text-align:center;white-space:pre-line;letter-spacing:.06em}.gameover{position:absolute;inset:20% 10% auto;background:var(--card);border-radius:var(--radius);padding:24px;text-align:center;box-shadow:var(--shadow)}.gameover-title{font-size:26px;margin-bottom:10px}.gameover-body{color:var(--quiet);font-weight:500;margin-bottom:18px}.quit-btn{position:absolute;right:10px;top:50%;translate:0 -50%;width:40px;height:40px;border:0;border-radius:50%;background:#ffffffd9;color:var(--quiet);font-size:22px;line-height:1;cursor:pointer;overflow:hidden}.quit-ring{position:absolute;inset:0;border-radius:50%;background:conic-gradient(var(--accent) 0turn,transparent 0turn);opacity:0;transition:opacity .12s}.quit-btn.holding .quit-ring{opacity:.35;animation:fill 1s linear forwards}@keyframes fill{to{background:conic-gradient(var(--accent) 1turn,transparent 0turn)}}.ttt{position:absolute;inset:0;margin:auto;width:min(58vw,40vh);height:min(58vw,40vh)}.ttt-board{position:absolute;inset:0;width:100%;height:100%;display:block;overflow:visible}.ttt-bar{stroke:#000;stroke-width:.1625}.ttt-hits{position:absolute;inset:0;display:grid;grid-template:repeat(3,1fr) / repeat(3,1fr)}.ttt-cell{border:0;background:none;padding:0;cursor:pointer}.ttt-cell.taken{cursor:default}.ttt-ink{fill:none;stroke:#000;stroke-width:.275;stroke-linecap:round;stroke-linejoin:round}.ttt-fill{fill:none;stroke:var(--seat);stroke-width:.1;stroke-linecap:round;stroke-linejoin:round}.ttt-mark.win{animation:ttt-win .46s ease 2 alternate;transform-box:fill-box;transform-origin:center}@keyframes ttt-win{to{transform:scale(1.22)}}.dab-panel{--gap: min(calc(92vw / (var(--n) + .5)), calc(58vh / (var(--n) + .5)));--hit: max(20px, calc(var(--gap) * .32));position:absolute;inset:0;margin:auto;width:calc(var(--gap) * (var(--n) + .5));height:calc(var(--gap) * (var(--n) + .5));border-radius:calc(var(--gap) * .375);background:#eae2d6}.dab{position:absolute;inset:calc(var(--gap) * .75)}.dab-dot,.dab-line,.dab-box{position:absolute;left:calc(var(--c) * var(--gap));top:calc(var(--r) * var(--gap))}.dab-dot{width:calc(var(--gap) * .3125);height:calc(var(--gap) * .3125);margin:calc(var(--gap) * -.15625) 0 0 calc(var(--gap) * -.15625);border-radius:50%;background:#000}.dab-box{width:var(--gap);height:var(--gap);display:grid;place-items:center;font-size:calc(var(--gap) * .34);color:#fff;border:calc(var(--gap) * .13) solid transparent;border-radius:calc(var(--gap) * .24);background:transparent;background-clip:padding-box;transition:background-color .18s ease}.dab-box.claimed{background:var(--seat);background-clip:padding-box}.dab-line{border:0;padding:0;background:transparent;cursor:pointer}.dab-line:after{content:"";position:absolute;inset:0;margin:auto;border-radius:calc(var(--gap) * .086);background:#fff}.dab-line.drawn{cursor:default}.dab-line.drawn:after{background:var(--seat)}.dab-h{width:var(--gap);height:var(--hit);margin-top:calc(var(--hit) / -2)}.dab-h:after{width:calc(var(--gap) * .688);height:calc(var(--gap) * .172)}.dab-v{width:var(--hit);height:var(--gap);margin-left:calc(var(--hit) / -2)}.dab-v:after{width:calc(var(--gap) * .172);height:calc(var(--gap) * .688)}.mem{--cell: min(calc(92vw / (var(--cols) + 2)), calc(76vh / (var(--rows) + 2)));position:absolute;inset:0;margin:auto;width:calc(var(--cell) * (var(--cols) + 2));height:calc(var(--cell) * (var(--rows) + 2));border:calc(var(--cell) * .3) solid #000;border-radius:calc(var(--cell) * .45);background:#33272f}.mem-board{position:absolute;inset:0;margin:auto;width:calc(var(--cell) * var(--cols));height:calc(var(--cell) * var(--rows))}.mem-card{position:absolute;left:calc(var(--x) * var(--cell));top:calc(var(--y) * var(--cell));width:var(--cell);height:var(--cell);border:0;background:none;padding:calc(var(--cell) * .11);cursor:pointer;perspective:700px;rotate:var(--tilt)}.mem-inner{position:relative;display:block;width:100%;height:100%;transform-style:preserve-3d;transition:transform .3s ease}.mem-card.up .mem-inner{transform:rotateY(180deg)}.mem-face{position:absolute;inset:0;display:grid;place-items:center;border:calc(var(--cell) * .062) solid #fff;border-radius:16%;backface-visibility:hidden;box-shadow:0 calc(var(--cell) * .06) 0 #0000004d}.mem-back{background:#f2a63d}.mem-front{background:var(--card);transform:rotateY(180deg);font-size:calc(var(--cell) * .4);line-height:1}.mem-card.matched .mem-front{background:color-mix(in srgb,var(--seat) 30%,var(--card))}.mem-card.matched{cursor:default}.darts{--board: min(84vw, 62vh);--stripe: calc(var(--board) / 6);position:absolute;inset:0;overflow:hidden;background:repeating-linear-gradient(90deg,#c9b79a 0 var(--stripe),#d4c3a8 var(--stripe) calc(var(--stripe) * 2))}.darts-floor{position:absolute;inset:83.1% 0 0;border-top:1.4vh solid #5f4030;background:repeating-conic-gradient(from 180deg at 50% -200%,#7d5236 0deg 6.667deg,#8d5f3f 6.667deg 13.333deg)}.darts-wash{position:absolute;inset:0;background:var(--seat, transparent);opacity:.12;transition:background-color .22s ease}.darts-rig{position:absolute;left:50%;top:46%;translate:-50% -50%;width:var(--board);aspect-ratio:3.5 / 3.55}.darts-rig svg{width:100%;height:100%;display:block}.darts-num{fill:#fff;font-size:.2px;font-weight:800;text-anchor:middle;dominant-baseline:central}.darts-track{fill:#ffffff54;transition:fill .16s linear}.darts-track.on{fill:#2f3a46}.darts-tick{fill:#fff}.darts-mark{fill:#fff;opacity:0}.darts-mark.live{opacity:1}.hammer{position:absolute;inset:0;display:grid;place-items:center}.hammer-rig{height:min(74vh,640px);aspect-ratio:350 / 890;transition:transform .56s cubic-bezier(.4,0,.2,1)}.hammer-rig svg{width:100%;height:100%;display:block;overflow:visible}.hammer-num{fill:#6d2f4a;font-size:38px;font-weight:800;text-anchor:middle;dominant-baseline:central}.hammer-hundred{fill:#22301f;font-size:22px;font-weight:800;text-anchor:middle;dominant-baseline:central}.hammer-puck{transition:transform .52s cubic-bezier(.2,.85,.3,1)}.hammer-bell.ring{animation:hammer-ring .38s ease 2;transform-box:fill-box;transform-origin:center}@keyframes hammer-ring{0%,to{transform:rotate(0) scale(1)}30%{transform:rotate(-9deg) scale(1.06)}70%{transform:rotate(9deg) scale(1.06)}}.hammer-mallet{transform-box:fill-box;transform-origin:50% 90%}.hammer-mallet.swing{animation:hammer-swing .42s ease}@keyframes hammer-swing{0%{transform:rotate(0)}40%{transform:rotate(-38deg)}to{transform:rotate(0)}}.hammer-btn{width:min(22vw,92px);height:min(22vw,92px);border:5px solid #000;border-radius:50%;background:var(--seat);color:#fff;font-weight:800;font-size:17px;letter-spacing:.06em;box-shadow:var(--shadow);cursor:pointer}.hammer-btn:disabled{opacity:.3;cursor:default}.potato{position:absolute;inset:0;display:grid;place-items:center;background:#171417}.potato svg{width:min(84vw,58vh);height:min(84vw,58vh);display:block}.potato-ball{will-change:transform}.potato.hot .potato-ball{animation:potato-shake .22s linear infinite}@keyframes potato-shake{0%,to{translate:0 0}25%{translate:3px -2px}75%{translate:-3px 2px}}.potato-fire{transform-box:fill-box;transform-origin:center;animation:potato-flicker .9s ease-in-out infinite}@keyframes potato-flicker{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.08);opacity:.9}}.potato.boom{animation:potato-boom .3s ease 2}@keyframes potato-boom{0%,to{background:#171417}50%{background:#5c2620}}.potato-btn{width:min(24vw,100px);height:min(24vw,100px);border:5px solid #000;border-radius:50%;background:var(--seat);box-shadow:var(--shadow);cursor:pointer}.potato-btn:disabled{opacity:.28;cursor:default}.rope{position:absolute;inset:0;display:grid;place-items:center;background:#6f8f5a;overflow:hidden}.rope svg{height:min(88vh,250vw);width:auto;display:block}.rope-line{stroke:#c89b5c;stroke-width:15;stroke-linecap:round}.rope-btn{width:min(26vw,108px);height:min(26vw,108px);border:0;border-radius:50%;background:var(--seat);color:#fff;font:inherit;font-size:clamp(14px,4vw,20px);letter-spacing:.06em;box-shadow:var(--shadow);cursor:pointer}.rope-btn:disabled{opacity:.28;cursor:default}.rope-btn:active:not(:disabled){transform:scale(.94)}.rope.strain svg{animation:rope-judder .14s linear infinite}@keyframes rope-judder{0%,to{translate:0 0}50%{translate:2px 0}}@media (prefers-reduced-motion: reduce){.rope.strain svg{animation:none}}.math{position:absolute;inset:0;background:#2f5b58;overflow:hidden}.math:before{content:"";position:absolute;left:8%;right:8%;top:50%;height:3px;border-radius:2px;background:#ffffff29}.math-row{position:absolute;left:0;right:0;display:grid;place-items:center;padding:0 6vw}.math-bottom{top:62%}.math-top{top:30%;transform:rotate(180deg)}.math-line{font-size:clamp(26px,8.5vw,62px);font-weight:800;letter-spacing:.03em;color:#fff;text-align:center;white-space:nowrap;transition:color .14s linear}.math.right .math-line{color:#b6efbe}.math.wrong .math-line{color:#f6b3aa}.math-btn{width:min(24vw,100px);height:min(24vw,100px);border:5px solid #000;border-radius:50%;background:var(--seat);box-shadow:var(--shadow);cursor:pointer}.math-btn:disabled{opacity:.3;cursor:default}.floe{position:absolute;inset:0;display:grid;place-items:center;background:#24485c;overflow:hidden}.floe-board{--cell: min(calc(84vw / var(--cols)), calc(58vh / var(--rows)));position:relative;width:calc(var(--cell) * var(--cols));height:calc(var(--cell) * var(--rows))}.floe-tile,.floe-skater{position:absolute;left:calc(var(--c) * var(--cell));top:calc(var(--r) * var(--cell));width:var(--cell);height:var(--cell)}.floe-tile{padding:calc(var(--cell) * .04);background:#e8f1f4;background-clip:content-box;border-radius:calc(var(--cell) * .22);transition:background-color .16s linear,opacity .26s ease}.floe-tile.cracked{background-color:#8fb9cc}.floe-tile.gone{background-color:transparent}.floe-skater{border-radius:50%;background:var(--seat);border:calc(var(--cell) * .06) solid #12212b;transform:scale(.62);transition:left .19s ease,top .19s ease,transform .32s ease,opacity .32s ease;pointer-events:none}.floe-skater.under{transform:scale(.2);opacity:0}.floe-pad{display:grid;grid-template:repeat(3,1fr) / repeat(3,1fr);width:min(30vw,124px);height:min(30vw,124px)}.floe-key{border:3px solid #12212b;border-radius:28%;background:var(--seat);cursor:pointer;padding:0}.floe-key:active{filter:brightness(.85)}.floe-up{grid-area:1 / 2}.floe-left{grid-area:2 / 1}.floe-right{grid-area:2 / 3}.floe-down{grid-area:3 / 2}.pizza{position:absolute;inset:0;display:grid;place-items:center;background:#8c4a37;overflow:hidden}.pizza-rig{--pie: min(52vw, 32vh);display:grid;justify-items:center;gap:calc(var(--pie) * .1);transition:transform .52s cubic-bezier(.4,0,.2,1)}.pizza-card,.pizza-pie{position:relative;width:var(--pie);height:var(--pie);border-radius:50%;border:calc(var(--pie) * .045) solid #12100e;background:#f2b33d;box-shadow:inset 0 0 0 calc(var(--pie) * .05) #e0592f}.pizza-card{background:#f7c766}.pizza-card{display:none}.pizza.showing .pizza-card{display:block}.pizza.showing .pizza-pie{display:none}.pizza.right .pizza-card,.pizza.wrong .pizza-card{display:block}.pizza-slot{position:absolute;width:calc(var(--pie) * .2);height:calc(var(--pie) * .2);translate:-50% -50%;border-radius:50%;background:#0000001f}.pizza-slot.filled{background:var(--fill);border:calc(var(--pie) * .022) solid #12100e}.pizza-tray{display:grid;grid-template-columns:repeat(6,1fr);gap:calc(var(--pie) * .05);padding:calc(var(--pie) * .05);border-radius:999px;background:#e8e2dc;border:calc(var(--pie) * .035) solid #12100e}.pizza-topping{width:calc(var(--pie) * .17);height:calc(var(--pie) * .17);border-radius:50%;border:calc(var(--pie) * .022) solid #12100e;background:var(--fill);cursor:pointer;padding:0}.pizza-topping:disabled{opacity:.35;cursor:default}.pizza-bell{border:calc(var(--pie) * .03) solid #12100e;border-radius:999px;padding:calc(var(--pie) * .05) calc(var(--pie) * .16);background:#f2e4cc;color:#12100e;font:inherit;font-size:clamp(13px,3.4vw,18px);letter-spacing:.08em;cursor:pointer}.pizza-bell:disabled{opacity:.35;cursor:default}.pizza.right .pizza-bell{background:#b6efbe}.pizza.wrong .pizza-bell{background:#f6b3aa}.page.stage.solo{display:flex;flex-direction:column;background:#2b2438}.solo-top{display:flex;align-items:center;gap:12px;padding:10px 14px}.solo-heading{flex:1;text-align:center}.solo-difficulty{display:inline-block;padding:2px 12px;border-radius:999px;background:#ffffff1f;color:#d9d2e4;font-size:11px;letter-spacing:.12em}.solo-level{font-size:26px;color:#fff;letter-spacing:.02em;margin-top:2px}.solo-back,.solo-restart{width:44px;height:44px;flex:0 0 auto;border:0;border-radius:50%;font-size:24px;line-height:1;cursor:pointer}.solo-back{background:#fff;color:#7a5c86}.solo-restart{background:#ffffff24;color:#e8e0f0}.solo-play{position:relative;flex:1;overflow:hidden}.solo-bar{position:relative;display:flex;align-items:center;justify-content:center;gap:18px;padding:12px 16px calc(14px + env(safe-area-inset-bottom))}.solo-assist{position:relative;min-width:78px;padding:10px 14px;border:0;border-radius:16px;background:#f2b33d;color:#2b2438;font:inherit;font-size:14px;letter-spacing:.06em;cursor:pointer}.solo-assist:disabled{opacity:.32;cursor:default}.solo-cost:not(:empty){position:absolute;top:-8px;right:-8px;min-width:22px;height:22px;border-radius:999px;background:#2b2438;color:#f2b33d;font-size:12px;line-height:22px;text-align:center}.solo-wallet{position:absolute;right:16px;padding:6px 14px;border-radius:999px;background:#ffffff1f;color:#f2b33d;font-size:15px}.solo-done{position:absolute;inset:26% 12% auto;display:grid;justify-items:center;gap:10px;padding:26px 20px;border-radius:22px;background:#3a3150;box-shadow:0 10px #00000040}.solo-done-title{font-size:28px;color:#fff}.solo-done-sub{font-size:15px;color:#f2b33d}.solo-done-score{font-size:44px;color:#fff;line-height:1}.solo-best{font-size:11px;letter-spacing:.12em;color:#f2b33d;min-height:14px}.slide{position:absolute;inset:0;display:grid;place-items:center}.slide-grid{--cell: min(calc(82vw / var(--size)), calc(48vh / var(--size)));position:relative;width:calc(var(--cell) * var(--size));height:calc(var(--cell) * var(--size));border-radius:calc(var(--cell) * .16);background:#00000038}.slide-tile{position:absolute;left:calc(var(--c) * var(--cell));top:calc(var(--r) * var(--cell));width:var(--cell);height:var(--cell);margin:0;padding:calc(var(--cell) * .05);background:#f2b33d;background-clip:content-box;border:0;border-radius:calc(var(--cell) * .2);color:#2b2438;font:inherit;font-size:calc(var(--cell) * .42);font-weight:800;cursor:pointer;transition:left .15s ease,top .15s ease,background-color .2s linear}.slide-tile.home,.slide-grid.solved .slide-tile{background:#8fc98f}.sort{position:absolute;inset:0;display:grid;place-items:center;padding:2vh 4vw}.sort-rack{--tube: min(calc(88vw / (var(--cols) * 1.3)), calc(52vh / (var(--rows) * 2.2)));display:grid;grid-template-columns:repeat(var(--cols),var(--tube));justify-content:center;align-items:end;gap:calc(var(--tube) * .5) calc(var(--tube) * .28)}.sort-tube{display:flex;flex-direction:column;width:var(--tube);padding:calc(var(--tube) * .1);gap:calc(var(--tube) * .04);border:calc(var(--tube) * .09) solid #12100e;border-top:0;border-radius:0 0 calc(var(--tube) * .5) calc(var(--tube) * .5);background:#ffffff12;cursor:pointer;transition:transform .14s ease}.sort-tube.picked{transform:translateY(calc(var(--tube) * -.22))}.sort-tube.done{border-color:#8fc98f}.sort-seg{height:calc(var(--tube) * .5);border-radius:calc(var(--tube) * .08);background:transparent}.sort-seg.ink{background:var(--ink)}.solo-offer{position:absolute;inset:24% 10% auto;z-index:10;display:grid;justify-items:center;padding:22px 18px 14px;border-radius:22px;background:#3a3150;box-shadow:0 10px #00000040}.solo-offer .row{padding:8px 0 0;flex-wrap:wrap}.solo-offer .btn{font-size:15px;padding:12px 20px;min-width:0}.solo-offer .btn:disabled{opacity:.35;cursor:default}.solo-offer-title{font-size:22px;color:#fff}.solo-offer-sub{margin-top:4px;font-size:13px;font-weight:500;color:#c4bad6;text-align:center}.solo-offer.loading .solo-offer-choices{display:none}.page.party{background:#241f33}.imp{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;gap:14px;padding:calc(10px + env(safe-area-inset-top)) 18px calc(16px + env(safe-area-inset-bottom));color:#fff;overflow:hidden}.imp-bar{display:flex;align-items:center;width:100%;gap:10px}.imp-bar-title{flex:1;text-align:center;font-size:21px;letter-spacing:.04em}.imp-icon{width:40px;height:40px;flex:0 0 auto;border:0;border-radius:50%;background:#ffffff1f;color:#fff;font-size:20px;line-height:1;cursor:pointer}.imp-ghost{background:none;pointer-events:none}.imp-players{width:100%;display:grid;gap:8px;overflow-y:auto}.imp-player{display:flex;align-items:center;gap:10px;padding:8px 10px 8px 16px;border-radius:14px;background:var(--who)}.imp-name{flex:1;min-width:0;border:0;background:none;color:#fff;font:inherit;font-size:17px;padding:6px 0}.imp-name:focus{outline:2px solid rgba(255,255,255,.6);border-radius:6px}.imp-drop{width:32px;height:32px;flex:0 0 auto;border:0;border-radius:50%;background:#00000038;color:#fff;font-size:18px;line-height:1;cursor:pointer}.imp-add{width:100%;padding:12px;border:2px dashed rgba(255,255,255,.3);border-radius:14px;background:none;color:#cfc6e0;font:inherit;font-size:14px;letter-spacing:.08em;cursor:pointer}.imp-foot{flex:1}.imp-scroll{width:100%;overflow-y:auto;display:grid;gap:8px;align-content:start}.imp-row{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:14px;background:#ffffff14}.imp-row-label{flex:1;font-size:15px;font-weight:600}.imp-heading{margin-top:8px;font-size:12px;letter-spacing:.14em;color:#a79bc0;text-transform:uppercase}.imp-stepper{display:flex;align-items:center;gap:12px}.imp-step{width:32px;height:32px;border:0;border-radius:50%;background:#ffffff29;color:#fff;font-size:19px;line-height:1;cursor:pointer}.imp-step:disabled{opacity:.3;cursor:default}.imp-step-value{min-width:20px;text-align:center;font-size:17px}.imp-toggle{width:52px;height:30px;flex:0 0 auto;border:0;border-radius:999px;background:#fff3;cursor:pointer;position:relative;transition:background-color .16s ease}.imp-toggle:after{content:"";position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:50%;background:#fff;transition:translate .16s ease}.imp-toggle.on{background:#4fae5c}.imp-toggle.on:after{translate:22px 0}.imp-reveal{background:var(--who)}.imp-whose{margin-top:6vh;font-size:17px;letter-spacing:.06em;opacity:.9}.imp-card{flex:1;width:100%;max-height:52vh;display:grid;place-content:center;gap:12px;margin:8px 0;border:0;border-radius:26px;background:#00000042;color:#fff;font:inherit;cursor:pointer;padding:20px}.imp-cover{font-size:19px;letter-spacing:.1em;opacity:.85}.imp-word{font-size:clamp(30px,10vw,54px);text-align:center;word-break:break-word}.imp-card.imp-is{background:#1b1622}.imp-card.imp-is .imp-word{color:#ff6b5a}.imp-cat{font-size:13px;letter-spacing:.1em;color:#d8cfe6;text-align:center}.imp-title{margin-top:8vh;font-size:30px;letter-spacing:.1em}.imp-body{max-width:34ch;text-align:center;font-weight:500;font-size:15px;line-height:1.5;color:#cfc6e0}.imp-votes{width:100%;flex:1;overflow-y:auto;display:grid;grid-template-columns:repeat(2,1fr);gap:8px;align-content:start}.imp-vote{padding:14px 10px;border:3px solid transparent;border-radius:14px;background:var(--who);color:#fff;font:inherit;font-size:15px;cursor:pointer;overflow:hidden;text-overflow:ellipsis}.imp-vote.picked{border-color:#fff}.imp-stamp{margin-top:10vh;padding:10px 24px;border:5px solid currentColor;border-radius:14px;font-size:clamp(26px,9vw,44px);letter-spacing:.08em;rotate:-7deg}.imp-caught .imp-stamp{color:#6fd47f}.imp-escaped .imp-stamp{color:#ff6b5a}.imp-reveal-word{margin-top:18px;font-size:22px}.imp-reveal-who{font-size:16px;color:#cfc6e0}.mole{position:absolute;inset:0;display:grid;place-items:center;background:#5a3a30;overflow:hidden;touch-action:none}.mole-field{--hole: min(19vw, 11vh);position:relative;width:88%;height:84%}.mole-hole{position:absolute;width:var(--hole);height:var(--hole);translate:-50% -50%;border-radius:50%;background:#34211c;box-shadow:inset 0 calc(var(--hole) * .1) 0 #00000073,0 0 0 calc(var(--hole) * .12) #00000029;overflow:hidden}.mole-guy{position:absolute;left:6%;width:88%;height:100%;bottom:-100%;transition:bottom .13s ease-out}.mole-art{width:100%;height:100%;display:block}.mole-guy.up{bottom:-6%}.mole-guy.bonk{transition:bottom 90ms ease-in}.ludo{--cell: min(calc(94vw / 15), 4vh );--line: #2b3a55;position:absolute;inset:0;margin:auto;width:calc(var(--cell) * 15);height:calc(var(--cell) * 15);background:#fff;outline:max(3px,calc(var(--cell) * .12)) solid #000}.ludo-cell,.ludo-yard,.ludo-lock,.ludo-centre{position:absolute;left:calc(var(--c) * var(--cell));top:calc(var(--r) * var(--cell))}.ludo-cell,.ludo-lock{width:var(--cell);height:var(--cell);display:grid;place-items:center}.ludo-cell{background:#fff;box-shadow:inset 0 0 0 .5px var(--line)}.ludo-cell.home,.ludo-cell.start{background:var(--seat)}.ludo-cell.idle{background:#dfe3ea}.ludo-star{width:72%;height:72%}.ludo-star-shape{fill:#c9cfdb;stroke:var(--line);stroke-width:.1;stroke-linejoin:round}.ludo-cell.start .ludo-star-shape{fill:#fff}.ludo-yard{width:calc(var(--cell) * 6);height:calc(var(--cell) * 6);background:var(--seat);box-shadow:inset 0 0 0 .5px var(--line)}.ludo-yard.idle{background:#3c465c}.ludo-pad{position:absolute;inset:calc(var(--cell) * .9);background:#fff;border:max(2px,calc(var(--cell) * .08)) solid #000;border-radius:calc(var(--cell) * .7)}.ludo-yard.idle .ludo-pad{background:#4b566e;border-color:#262c3a}.ludo-spot{position:absolute;left:calc(var(--x) * var(--cell));top:calc(var(--y) * var(--cell));width:calc(var(--cell) * .92);height:calc(var(--cell) * .92);translate:-50% -50%;border-radius:50%;background:color-mix(in srgb,var(--seat) 28%,#fff)}.ludo-yard.idle .ludo-spot{background:#5b6680}.ludo-centre{width:calc(var(--cell) * 3);height:calc(var(--cell) * 3)}.ludo-centre-art{display:block;width:100%;height:100%}.ludo-tri{fill:var(--seat);stroke:#000;stroke-width:.05;stroke-linejoin:round}.ludo-lock{z-index:1;pointer-events:none}.ludo-padlock{width:72%;height:72%}.ludo-shackle{fill:none;stroke:#000;stroke-width:1.1}.ludo-lock-body{fill:#fff;stroke:#000;stroke-width:.8;stroke-linejoin:round}.ludo-piece{position:absolute;left:calc(var(--x) * var(--cell));top:calc(var(--y) * var(--cell));width:calc(var(--cell) * .78);height:calc(var(--cell) * .78);translate:-50% -50%;padding:0;border:max(2px,calc(var(--cell) * .09)) solid #000;border-radius:50%;background:radial-gradient(circle,#fff 0 22%,transparent 23%),var(--seat);box-shadow:inset 0 calc(var(--cell) * -.08) 0 #00000038;transition:left .12s ease,top .12s ease,scale .12s ease;z-index:2;cursor:default}.ludo-piece.stacked{scale:.74}.ludo-piece.walking{z-index:4}.ludo-piece.movable{z-index:3;cursor:pointer;outline:max(2px,calc(var(--cell) * .08)) solid #fff;animation:ludo-hop .48s ease-in-out infinite alternate}@keyframes ludo-hop{to{translate:-50% -72%}}.ludo-die{width:64px;height:64px;padding:8px;display:grid;grid-template:repeat(3,1fr) / repeat(3,1fr);border:4px solid #000;border-radius:14px;background:#fff;opacity:.45;cursor:pointer;z-index:3;transition:opacity .15s ease}.ludo-die.live{opacity:1;box-shadow:0 0 0 6px var(--seat);animation:ludo-pulse .8s ease-in-out infinite alternate}@keyframes ludo-pulse{to{box-shadow:0 0 0 11px color-mix(in srgb,var(--seat) 40%,transparent)}}.ludo-die.rolling{animation:ludo-shake .14s linear infinite}@keyframes ludo-shake{25%{rotate:-12deg}75%{rotate:12deg}}.ludo-pip{margin:2px;border-radius:50%}.ludo-pip.on{background:#000}.cb{--cell: min(calc(88vw / var(--n)), calc(48vh / var(--n)));position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:calc(var(--cell) * .7);touch-action:none;user-select:none}.cb-board{width:calc(var(--cell) * var(--n));height:calc(var(--cell) * var(--n));display:grid;grid-template:repeat(var(--n),1fr) / repeat(var(--n),1fr);background:#1f1a2b;outline:calc(var(--cell) * .12) solid #1f1a2b;border-radius:6px}.cb-cell{margin:2px;border-radius:5px;background:#ffffff0f}.cb-cell.alt{background:#ffffff24}.cb-cell.full,.cb-cell.ghost,.cb-cell.hint,.cb-sq{background:var(--ink);border:2px solid #000;box-shadow:inset 0 -3px #00000038}.cb-cell.ghost{opacity:.55}.cb-cell.will-clear:not(.full):not(.ghost){background:#ffffff38}.cb-cell.will-clear.full{filter:brightness(1.3)}.cb-cell.hint{animation:cb-blink .4s ease-in-out 4 alternate}.cb-cell.clearing{animation:cb-pop .32s ease-out}@keyframes cb-pop{0%{background:#fff}to{scale:.2;opacity:0}}@keyframes cb-blink{to{opacity:.25}}.cb-tray{display:flex;justify-content:space-around;width:calc(var(--cell) * (var(--n) + .6))}.cb-slot{width:calc(var(--cell) * 2.8);height:calc(var(--cell) * 2.8);display:grid;place-items:center;touch-action:none;cursor:grab}.cb-slot.lifted .cb-mini{opacity:.2}.cb-slot.hinted .cb-mini{animation:cb-blink .4s ease-in-out 4 alternate}.cb-mini{--size: calc(var(--cell) * .5);display:grid;grid-template-rows:repeat(var(--rows),var(--size));grid-template-columns:repeat(var(--cols),var(--size))}.cb-mini .cb-sq{margin:1px;border-radius:3px}.cb-mini.dead{opacity:.35}.cb-drag{position:absolute;z-index:5;pointer-events:none;display:grid;grid-template-rows:repeat(var(--rows),var(--cell));grid-template-columns:repeat(var(--cols),var(--cell))}.cb-drag .cb-sq{margin:2px;border-radius:5px}.bm{position:absolute;inset:0}.bm-canvas{display:block;touch-action:none;cursor:crosshair}.nuts{position:absolute;inset:0;display:grid;place-items:center;padding:2vh 4vw}.nuts-rack{--bolt: min(calc(88vw / (var(--cols) * 1.3)), calc(54vh / (var(--rows) * 2.1)));display:grid;grid-template-columns:repeat(var(--cols),var(--bolt));justify-content:center;align-items:end;gap:calc(var(--bolt) * .6) calc(var(--bolt) * .3)}.nuts-bolt{position:relative;width:var(--bolt);height:calc(var(--bolt) * 1.9);padding:0;border:0;background:none;cursor:pointer}.nuts-rod{position:absolute;left:50%;bottom:calc(var(--bolt) * .1);width:calc(var(--bolt) * .22);height:calc(var(--bolt) * 1.45);translate:-50% 0;background:repeating-linear-gradient(to bottom,#c9ced8 0 calc(var(--bolt) * .05),#9aa1ae calc(var(--bolt) * .05) calc(var(--bolt) * .09));border:3px solid #000;border-radius:calc(var(--bolt) * .06) calc(var(--bolt) * .06) 0 0}.nuts-base{position:absolute;left:0;right:0;bottom:0;height:calc(var(--bolt) * .18);background:#c9ced8;border:3px solid #000;border-radius:999px}.nuts-bolt.done .nuts-base{background:#8fc98f}.nuts-stack{position:absolute;left:0;right:0;bottom:calc(var(--bolt) * .12);display:flex;flex-direction:column-reverse}.nuts-nut{display:block;width:100%;height:calc(var(--bolt) * .4);transition:translate .14s ease}.nuts-nut.lifted{translate:0 calc(var(--bolt) * -.34)}.nuts-body{stroke:#000;stroke-width:4}.nuts-facet{fill:none;stroke:#0000004d;stroke-width:3}.nuts-mark{fill:#ffffffeb;stroke:#000;stroke-width:1.4}.nuts-q{fill:#fff;font:700 26px system-ui,sans-serif;text-anchor:middle}.sn{position:absolute;inset:0;overflow:hidden}.sn-canvas{display:block;touch-action:none}.sn-boost{position:absolute;right:18px;bottom:18px;width:76px;height:76px;border:4px solid #000;border-radius:22px;background:#ffffff29;color:#fff;font-size:38px;line-height:1;rotate:-90deg;touch-action:none;cursor:pointer}.sn-boost.on{background:#f3a712;color:#000}.cc{position:absolute;inset:0;overflow:hidden}.cc-canvas{display:block;touch-action:none}.cc-btn{position:absolute;width:70px;height:70px;border:4px solid #000;border-radius:50%;background:var(--seat);color:#000;font-size:26px;line-height:1;touch-action:none;cursor:pointer;z-index:3}.cc-btn.back{width:58px;height:58px;font-size:20px}.cc-btn.on{filter:brightness(1.25);scale:.92}.fg{--tile: min( calc((92vw - 24px)/4) , 96px);position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:8px 4vw}.fg-bands,.fg-grid{width:calc(var(--tile) * 4 + 24px)}.fg-bands{display:grid;gap:8px}.fg-band{padding:8px 10px;border:3px solid #000;border-radius:12px;background:var(--band);color:#1b1b1f;text-align:center;animation:fg-in .26s ease}@keyframes fg-in{0%{scale:.9;opacity:0}}.fg-band-name{font-size:15px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.fg-band-words{font-size:13px;font-weight:600}.fg-hint{color:#f2b33d;font-size:13px;text-align:center}.fg-grid{display:grid;grid-template-columns:repeat(4,var(--tile));gap:8px}.fg-grid.shake{animation:fg-shake .32s ease}@keyframes fg-shake{25%{translate:-6px 0}75%{translate:6px 0}}.fg-word{height:calc(var(--tile) * .78);padding:0 2px;border:0;border-radius:10px;background:#ece6d9;color:#1b1b1f;font:inherit;font-weight:700;font-size:min(15px,calc(var(--tile) * 1.55 / var(--len)));letter-spacing:.02em;cursor:pointer;overflow-wrap:anywhere}.fg-word.picked{background:#4b4560;color:#fff}.fg-dots{display:flex;align-items:center;gap:8px;color:#c4bad6;font-size:13px}.fg-dots-label{margin-right:4px}.fg-dot{width:12px;height:12px;border-radius:50%;background:#ffffff26}.fg-dot.on{background:#c4bad6}.fg-actions{display:flex;gap:10px}.fg-btn{padding:10px 16px;border:2px solid #c4bad6;border-radius:999px;background:transparent;color:#fff;font:inherit;font-size:14px;cursor:pointer}.fg-submit:not(:disabled){background:#fff;color:#2b2438;border-color:#fff}.fg-btn:disabled{opacity:.4;cursor:default}.fg-again{margin-top:6px}.wb{--cell: min(calc(92vw / 11), calc(52vh / 11));position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:10vh 0 11vh;transition:rotate .3s ease}.wb.flip{rotate:180deg}.wb.loading:after{content:"Loading words…";position:absolute;inset:0;display:grid;place-items:center;background:#0000008c;color:#fff}.wb-board{display:grid;grid-template:repeat(11,var(--cell)) / repeat(11,var(--cell));background:#2b3a55;border:3px solid #000;gap:1px}.wb-cell{position:relative;padding:0;border:0;background:#e9e4d8;display:grid;place-items:center;cursor:pointer}.wb-cell[data-bonus="2L"]{background:#b9dcf2}.wb-cell[data-bonus="3L"]{background:#4f9bff}.wb-cell[data-bonus="2W"]{background:#f6c3a8}.wb-cell[data-bonus="3W"]{background:#e4572e}.wb-cell.centre{background:#f3d36b}.wb-bonus{font-size:calc(var(--cell) * .32);font-weight:700;color:#0000008c}.wb-cell[data-bonus="3L"] .wb-bonus,.wb-cell[data-bonus="3W"] .wb-bonus{color:#fff}.wb-tile{position:relative;width:100%;height:100%;display:grid;place-items:center;background:#fbf3df;border:2px solid #000;border-radius:4px;box-sizing:border-box}.wb-cell.new .wb-tile{background:#ffe08a}.wb-letter{font-size:calc(var(--cell) * .55);font-weight:800;color:#1b1b1f;line-height:1}.wb-value{position:absolute;right:2px;bottom:0;font-size:calc(var(--cell) * .26);font-weight:700;color:#1b1b1f}.wb-info{font-size:13px;color:var(--ink)}.wb-rack{display:flex;gap:6px;min-height:48px;align-items:center}.wb-rack-tile{--cell: 44px;width:44px;height:44px;padding:0;border:0;background:none;cursor:pointer}.wb-rack-tile.sel .wb-tile{background:#ffe08a;translate:0 -6px}.wb-rack-tile.used{visibility:hidden}.wb-thinking{color:var(--quiet);font-size:14px}.wb-actions{display:flex;gap:8px}.wb-btn{padding:9px 14px;border:2px solid #000;border-radius:999px;background:var(--card);color:var(--ink);font:inherit;font-size:14px;cursor:pointer}.wb-play:not(:disabled){background:#2b9d3a;color:#fff}.wb-btn:disabled{opacity:.45;cursor:default}.wb-cover{position:absolute;inset:0;z-index:4;display:grid;place-content:center;gap:8px;text-align:center;background:#2b3a55;color:#fff;cursor:pointer}.wb-cover[hidden]{display:none}.wb-cover-title{font-size:30px;letter-spacing:.06em}.wb-cover-sub{font-size:15px;color:#c9d2e4;padding:0 24px}.dc.dc-team{background:var(--who)}.dc-rules{font-size:14px;color:#cfc6e0}.dc-big{font-size:clamp(34px,12vw,64px);letter-spacing:.04em;text-align:center}.dc-light{color:#ffffffd9}.dc-scores{display:flex;gap:10px;width:100%;max-width:360px}.dc-score{flex:1;padding:10px;border:3px solid #000;border-radius:14px;background:var(--team);text-align:center}.dc-score-name{font-size:13px;letter-spacing:.06em}.dc-score-value{font-size:30px}.dc-top{display:flex;align-items:baseline;justify-content:space-between;width:100%}.dc-clock{font-size:44px;font-variant-numeric:tabular-nums}.dc-count{font-size:16px}.dc-bar{width:100%;height:8px;border-radius:999px;background:#00000040;overflow:hidden}.dc-bar-fill{height:100%;width:100%;background:#fff}.dc-card{flex:1;width:100%;display:grid;place-content:center;gap:12px;padding:18px;border:4px solid #000;border-radius:26px;background:#fbf7ef;color:#1b1b1f;text-align:center}.dc-deck{font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:#6b6378}.dc-word{font-size:clamp(30px,10vw,52px);line-height:1.1;word-break:break-word}.dc-answers{display:flex;gap:12px;width:100%}.dc-skip,.dc-got{flex:1;padding:18px 0;border:4px solid #000;border-radius:18px;font:inherit;font-size:20px;letter-spacing:.06em;cursor:pointer}.dc-skip{background:#ffffffb3;color:#1b1b1f}.dc-got{flex:1.6;background:#2b9d3a;color:#fff}.dc-log{width:100%;flex:1;overflow-y:auto;display:grid;gap:4px;align-content:start}.dc-log-row{padding:6px 10px;border-radius:10px;background:#0000002e;font-size:15px;color:#ffffffb3}.dc-log-row.got{color:#fff;background:#0000004d}.dc-choice{display:flex;gap:6px}.dc-opt{min-width:42px;padding:6px 10px;border:0;border-radius:999px;background:#ffffff24;color:#fff;font:inherit;cursor:pointer}.dc-opt.on{background:#fff;color:#241f33}.sol{--w: min(calc((94vw - 24px) / 7), 66px);--h: calc(var(--w) * 1.4);position:absolute;inset:0;display:flex;flex-direction:column;gap:8px;padding:8px 3vw}.sol-table{flex:1;min-height:0;display:flex;flex-direction:column;gap:12px}.sol-top,.sol-cols{display:grid;grid-template-columns:repeat(7,var(--w));gap:4px;justify-content:center}.sol-stock{grid-column:1;cursor:pointer}.sol-waste{grid-column:2 / span 2;position:relative;height:var(--h)}.sol-homes{grid-column:4 / span 4;display:grid;grid-template-columns:repeat(4,var(--w));gap:4px}.sol-slot{position:relative;width:var(--w);height:var(--h);box-sizing:border-box;border:2px dashed rgba(255,255,255,.18);border-radius:6px}.sol-waste.sol-slot{width:auto;border:0}.sol-home:before{content:attr(data-suit);position:absolute;inset:0;display:grid;place-items:center;color:#fff3;font-size:calc(var(--w) * .5)}.sol-slot .sol-card{position:absolute;inset:-2px}.sol-waste .sol-card{inset:auto;left:calc(var(--fan) * var(--w) * .32);top:0}.sol-cols{flex:1;min-height:0;container-type:size}.sol-col{--down: calc(var(--h) * .12);--up: min(calc(var(--h) * .3), calc((100cqh - var(--h) - var(--downs) * var(--down)) / max(1, var(--ups))));position:relative}.sol-card{position:relative;width:var(--w);height:var(--h);box-sizing:border-box;border:2px solid #000;border-radius:6px;background:#fbf7ef;color:#1b1b1f;cursor:pointer}.sol-card.in-col{position:absolute;left:0;top:calc(var(--down-before) * var(--down) + var(--up-before) * var(--up))}.sol-card.red{color:#d6402b}.sol-card.back{background:repeating-linear-gradient(45deg,#5b3f8c 0 6px,#6f52a3 6px 12px);cursor:default}.sol-stock .sol-card.back{cursor:pointer}.sol-card.hinted{outline:3px solid #f3a712;outline-offset:1px;z-index:2}.sol-idx{position:absolute;top:2px;left:3px;font-size:calc(var(--w) * .27);font-weight:800;line-height:1}.sol-suit{font-size:1.3em;margin-left:1px;vertical-align:-.08em}.sol-pip{position:absolute;inset:0;display:grid;place-items:center;padding-top:calc(var(--w) * .22);font-size:calc(var(--w) * .52);font-weight:800}.sol-empty{width:var(--w);height:var(--h);box-sizing:border-box;border:2px dashed rgba(255,255,255,.18);border-radius:6px}.sol-recycle{display:grid;place-items:center;height:100%;color:#ffffff80;font-size:26px}.sol-bar{display:flex;justify-content:space-between;align-items:center}.sol-new{padding:8px 14px;border:2px solid rgba(255,255,255,.3);border-radius:999px;background:none;color:#e8e0f0;font:inherit;cursor:pointer}.sol-finish[hidden]{display:none}.sdk{position:absolute;inset:0;display:grid;place-items:center;padding:8px 3vw;container-type:size}.sdk-in{--board: min(100cqw, calc((100cqh - 96px) / (1 + 1.2 / var(--n))), 470px);--cell: calc(var(--board) / var(--n));display:flex;flex-direction:column;align-items:center;gap:10px}.sdk-clock{color:#ffffffb3;font-size:15px;letter-spacing:.08em;font-variant-numeric:tabular-nums}.sdk-board{display:grid;grid-template-columns:repeat(var(--n),1fr);width:var(--board);height:var(--board);box-sizing:border-box;border:3px solid #000;border-radius:8px;overflow:hidden;background:#fbf7ef}.sdk-cell{position:relative;display:grid;place-items:center;min-width:0;padding:0;border:0;border-right:1px solid #c9bfae;border-bottom:1px solid #c9bfae;background:none;color:#1b1b1f;font:800 calc(var(--cell) * .58) / 1 system-ui,-apple-system,"Segoe UI",sans-serif;cursor:pointer}.sdk-cell.sdk-br{border-right:3px solid #000}.sdk-cell.sdk-bb{border-bottom:3px solid #000}.sdk-cell.peer{background:#efe5d0}.sdk-cell.same{background:#f6d98a}.sdk-cell.sel{background:#f3b94a}.sdk-cell.mine{color:#2f63c4}.sdk-cell.wrong{color:#d6402b}.sdk-notes{position:absolute;inset:1px;display:grid;grid-template-columns:repeat(var(--note-cols, 3),1fr);font-size:calc(var(--cell) * .25);font-weight:700;line-height:1;color:#6b6275}.sdk-notes span{display:grid;place-items:center}.sdk-notes span.hit{color:#000;background:#f6d98a;border-radius:3px}.sdk-pad{display:grid;grid-template-columns:repeat(var(--n),1fr);gap:3px;width:var(--board)}.sdk-key{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;height:calc(var(--cell) * 1.2);padding:0;border:2px solid #000;border-radius:8px;background:#fbf7ef;color:#1b1b1f;font:800 calc(var(--cell) * .55) / 1 system-ui,-apple-system,"Segoe UI",sans-serif;cursor:pointer}.sdk-key small{font-size:calc(var(--cell) * .22);color:#7a6f86;margin-top:2px}.sdk-key.done{opacity:.3}.sdk-tools{display:flex;gap:10px}.sdk-tool{padding:8px 18px;border:2px solid rgba(255,255,255,.3);border-radius:999px;background:none;color:#e8e0f0;font:inherit;cursor:pointer}.sdk-tool.on{background:#fff;border-color:#fff;color:#241f33}.hw{--right: #3a86c8;--near: #d6589c;--miss: #4b4560;position:absolute;inset:0;display:grid;place-items:center;padding:8px 2vw;container-type:size}.hw-in{--cell: min(calc((100cqw - 40px) / var(--len)), calc((100cqh - 230px) / 6), 60px);display:flex;flex-direction:column;align-items:center;gap:18px;width:100%}.hw.loading .hw-in{opacity:.4}.hw-grid{display:grid;gap:6px}.hw-row{display:grid;grid-template-columns:repeat(var(--len),var(--cell));gap:6px}.hw-row.shake{animation:hw-shake .32s ease}@keyframes hw-shake{25%{translate:-6px 0}50%{translate:6px 0}75%{translate:-3px 0}}.hw-cell{position:relative;display:grid;place-items:center;width:var(--cell);height:var(--cell);box-sizing:border-box;border:2px solid rgba(255,255,255,.16);border-radius:8px;color:#fff;font-size:calc(var(--cell) * .52);font-weight:800}.hw-cell.typed{border-color:#ffffff8c}.hw-cell.ghost{color:#ffffff59;border-style:dashed}.hw-cell.right,.hw-cell.near,.hw-cell.miss{border:2px solid #000}.hw-cell.right{background:var(--right)}.hw-cell.near{background:var(--near)}.hw-cell.miss{background:var(--miss)}.hw-cell.right:after{content:"";position:absolute;left:22%;right:22%;bottom:9%;height:3px;border-radius:2px;background:#fff}.hw-cell.near:after{content:"";position:absolute;top:10%;right:10%;width:7px;height:7px;border-radius:50%;background:#fff}.hw-keys{display:flex;flex-direction:column;gap:6px;width:100%;max-width:500px}.hw-keyrow{display:flex;justify-content:center;gap:4px}.hw-key{flex:0 1 calc((100% - 36px)*.1);height:52px;min-width:0;padding:0;border:0;border-radius:6px;background:#e8e0f0;color:#241f33;font:800 17px/1 system-ui,-apple-system,Segoe UI,sans-serif;cursor:pointer}.hw-key.wide{flex-basis:calc((100% - 36px) / 10 * 1.55);font-size:12px}.hw-key.right{background:var(--right);color:#fff}.hw-key.near{background:var(--near);color:#fff}.hw-key.miss{background:var(--miss);color:#ffffff8c}.arc{position:absolute;inset:0;overflow:hidden;touch-action:none;background:#8ccf86}.arc svg{position:absolute;inset:0;width:100%;height:100%}.arc-sky{fill:#a9dcf0}.arc-hill.far{fill:#7fb7a8}.arc-hill.near{fill:#4c9f70}.arc-grass{fill:#8ccf86}.arc-lane{stroke:#eef8e8;stroke-width:.8;fill:none}.arc-leg{stroke:#000;stroke-width:1.6;stroke-linecap:round}.arc-boss{fill:#d9b46a;stroke:#000;stroke-width:.6}.arc-ring{stroke:#000;stroke-width:.12}.arc-x{fill:#000}.arc-wind-pill{fill:#2b2438b8}.arc-wind-arrow{stroke:#fff;stroke-width:1.1;fill:none;stroke-linecap:round;stroke-linejoin:round}.arc-wind-text{fill:#fff;font:800 5px system-ui,sans-serif;text-anchor:middle}.arc-round{fill:#2b2438bf;font:800 3.4px system-ui,sans-serif;letter-spacing:.08em;text-anchor:middle}.arc-sight{pointer-events:none}.arc-steady{pointer-events:none;fill:none;stroke:var(--seat);stroke-width:.5;stroke-dasharray:1.2 1;opacity:.9}.arc-cross{fill:none;stroke:var(--seat);stroke-width:.55;stroke-linecap:round}.arc-shaft{stroke:#3b2a1e;stroke-width:1;stroke-linecap:round}.arc-fletch{stroke:var(--seat);stroke-width:1.2;stroke-linecap:round}.arc-hit{stroke:#000;stroke-width:.3}.arc-hit-shine{fill:#ffffffb3}.arc-hint{position:absolute;left:50%;bottom:22%;translate:-50% 0;padding:8px 14px;border-radius:999px;background:#2b2438b8;color:#fff;font-size:14px;white-space:nowrap;pointer-events:none}.arc-hint[hidden]{display:none}.dh{position:absolute;inset:0;overflow:hidden;background:#17131f}.dh-canvas{display:block;touch-action:none}.golf{position:absolute;inset:0;overflow:hidden;background:#a9dcf0}.golf-canvas{display:block;touch-action:none}.tp{--cell: min(calc((94vw - 8px) / 9), 46px);position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;gap:8px;padding:6px 3vw 10px}.tp-stage{color:#ffffffb3;font-size:13px;letter-spacing:.12em}.tp-scroll{flex:1;min-height:0;overflow-y:auto;border:3px solid #000;border-radius:8px;background:#fbf7ef}.tp-grid{display:grid;grid-template-columns:repeat(9,var(--cell))}.tp-cell{height:var(--cell);padding:0;border:0;border-right:1px solid #e3dccd;border-bottom:1px solid #e3dccd;background:none;color:#1b1b1f;font:700 calc(var(--cell) * .6) / 1 system-ui,-apple-system,"Segoe UI",sans-serif;cursor:pointer}.tp-cell:nth-child(9n){border-right:0}.tp-cell.gone{color:#d4ccbb;cursor:default}.tp-cell.sel{background:#f3b94a}.tp-cell.hint{animation:tp-blink .45s ease-in-out 4 alternate}@keyframes tp-blink{to{background:#2bb3a6;color:#fff}}.tp-add{padding:9px 18px;border:2px solid rgba(255,255,255,.3);border-radius:999px;background:none;color:#e8e0f0;font:inherit;cursor:pointer}.tp-add:disabled{opacity:.35;cursor:default}.sg{position:absolute;inset:0;display:grid;place-items:center;padding:8px 3vw;container-type:size}.sg-in{--board: min(100cqw, calc(100cqh - 110px) , 480px);--cell: calc(var(--board) / var(--n));display:flex;flex-direction:column;align-items:center;gap:12px}.sg-top{display:flex;justify-content:space-between;width:var(--board);color:#ffffffbf;font-size:15px;letter-spacing:.06em;font-variant-numeric:tabular-nums}.sg-board{display:grid;grid-template-columns:repeat(var(--n),1fr);width:var(--board);height:var(--board);box-sizing:border-box;border-radius:6px;overflow:hidden;touch-action:none}.sg-cell{display:grid;place-items:center;box-sizing:border-box;color:#2b2438;font:800 calc(var(--cell) * .62) / 1 system-ui,-apple-system,"Segoe UI",sans-serif;cursor:pointer;user-select:none}.sg-cell.cross{color:#2b243873;font-size:calc(var(--cell) * .5);font-weight:600}.sg-cell.clash{color:#d6402b}.sg-cell.hinted{animation:sg-pop .4s ease-out 2}@keyframes sg-pop{50%{scale:1.12}}.sg-rules{max-width:var(--board);color:#fff9;font-size:13px;text-align:center}.so{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;gap:10px;padding:6px 3vw 12px}.so-hearts{color:#e4572e;font-size:26px;letter-spacing:6px;line-height:1}.so-board{flex:1;min-height:0;width:100%;container-type:size;display:grid;place-items:center}.so-board svg{width:min(100cqw,calc(100cqh * (var(--cols) + .5) / (var(--rows) + .5)));aspect-ratio:calc(var(--cols) + .5) / calc(var(--rows) + .5);background:#fbf7ef;border:3px solid #000;border-radius:10px;box-sizing:border-box;touch-action:manipulation}.so-arrow{cursor:pointer;transition:transform .42s ease-in,opacity .42s ease-in}.so-line{fill:none;stroke:#2b2438;stroke-width:.17;stroke-linecap:round;stroke-linejoin:round}.so-head{fill:#2b2438;stroke:#2b2438;stroke-width:.06;stroke-linejoin:round}.so-arrow.leaving{opacity:0;pointer-events:none}.so-arrow.bump{animation:so-bump .36s ease}.so-arrow.bump .so-line{animation:so-red .7s ease}.so-arrow.bump .so-head{animation:so-red-fill .7s ease}@keyframes so-bump{40%{transform:translate(var(--bx),var(--by))}}@keyframes so-red{0%,60%{stroke:#e4572e}}@keyframes so-red-fill{0%,60%{fill:#e4572e;stroke:#e4572e}}.so-arrow.hinted .so-line{stroke:#2bb3a6}.so-arrow.hinted .so-head{fill:#2bb3a6;stroke:#2bb3a6}.so-again{position:absolute;left:50%;top:50%;translate:-50% -50%}.sol.spd{--w: min( calc((96vw - 18px)*.1) , 54px);padding:8px 2vw}.spd .sol-cols.spd-cols{grid-template-columns:repeat(10,var(--w));gap:2px}.spd .sol-idx{font-size:calc(var(--w) * .3);left:2px}.spd-top{display:flex;justify-content:space-between;align-items:center;height:calc(var(--h) * .75)}.spd-stock{position:relative;width:calc(var(--w) + 20px);height:var(--h);cursor:pointer;scale:.75;transform-origin:left top}.spd-stock .sol-card{position:absolute;left:calc(var(--k) * 5px);top:0;cursor:pointer}.spd-runs{display:flex;gap:4px}.spd-run{display:grid;place-items:center;width:calc(var(--w) * .62);height:calc(var(--w) * .85);box-sizing:border-box;border:2px dashed rgba(255,255,255,.18);border-radius:5px;color:#1b1b1f;font-size:calc(var(--w) * .4);font-weight:800}.spd-run.done{border:2px solid #000;background:#fbf7ef}.spd-run.red{color:#d6402b}.tt{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:10px 3vw 14px;container-type:size}.tt-field{--t: min(calc(94cqw / var(--cols)), calc((100cqh - 130px) / var(--rows)), 66px);position:relative;width:calc(var(--t) * var(--cols));height:calc(var(--t) * var(--rows));margin:auto 0}.tt-tile{position:absolute;left:calc(var(--x) * var(--t));top:calc(var(--y) * var(--t));width:var(--t);height:var(--t);padding:calc(var(--t) * .12);box-sizing:border-box;border:2px solid #000;border-radius:9px;background:#fbf7ef;box-shadow:0 4px #b9ad98;cursor:pointer}.tt-tile.under{background:#8f8798;box-shadow:0 4px #5e566a;cursor:default}.tt-tile.under .tt-icon{opacity:.45}.tt-tile.hinted{outline:3px solid #2bb3a6;outline-offset:2px}.tt-icon{display:block;width:100%;height:100%;overflow:visible}.tt-icon path{stroke:#000;stroke-width:2.4;stroke-linejoin:round}.tt-tray{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;width:min(94cqw,400px);padding:8px;box-sizing:border-box;border:3px solid #000;border-radius:12px;background:#4b3a63}.tt-tray.tight{background:#7a2f3a}.tt-slot{aspect-ratio:1;padding:12%;border-radius:7px;background:#ffffff1f}.tt-slot:has(.tt-icon){background:#fbf7ef}.tt-again{position:absolute;left:50%;top:45%;translate:-50% -50%;z-index:50}.yz{position:absolute;inset:0;display:flex;flex-direction:column;gap:10px;padding:58px 4vw 12px;background:#241f33;color:#e8e0f0}.yz-sheet{flex:1;min-height:0;overflow-y:auto}.yz-sheet table{width:100%;border-collapse:collapse;font-size:14px}.yz-sheet th{padding:4px 6px;font-size:13px;letter-spacing:.08em}.yz-sheet th.now{text-decoration:underline 3px;text-underline-offset:4px}.yz-sheet td{padding:3px 6px;border-bottom:1px solid rgba(255,255,255,.08)}.yz-sheet td:first-child{color:#ffffffbf}.yz-sheet td:not(:first-child){width:22%;text-align:center;font-weight:800}.yz-sheet td.offer{color:#ffffff73;font-style:italic;cursor:pointer;background:#ffffff0d}.yz-sheet td.offer:hover{color:#fff}.yz-sheet tr.sub td{font-size:12px;color:#f2b33d}.yz-sheet tr.sum td{border-top:2px solid rgba(255,255,255,.4);font-size:16px;color:#fff}.yz-dice{display:flex;justify-content:center;gap:10px}.yz-die{display:grid;grid-template:repeat(3,1fr) / repeat(3,1fr);width:min(15vw,58px);aspect-ratio:1;padding:7px;box-sizing:border-box;border:3px solid #000;border-radius:12px;background:#fbf7ef;cursor:pointer;transition:translate .12s ease}.yz-die.idle{opacity:.4}.yz-die.held{translate:0 -8px;border-color:var(--seat);box-shadow:0 0 0 3px var(--seat)}.yz-die span{display:grid;place-items:center}.yz-die span.pip:before{content:"";width:72%;aspect-ratio:1;border-radius:50%;background:#1b1b1f}.yz-bottom{display:flex;height:104px;align-items:flex-start}.yz-roll{max-width:42%;padding:12px 16px;font-size:15px}.yz-roll:disabled{opacity:.4}.ch{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:58px 3vw 72px;background:#241f33;container-type:size}.ch-board{--b: min(100cqw, calc(100cqh - 76px) , 560px);position:relative;display:grid;grid-template:repeat(8,1fr) / repeat(8,1fr);width:var(--b);height:var(--b);border:3px solid #000;border-radius:6px;overflow:hidden;box-sizing:content-box}.ch-board.thinking{cursor:progress}.ch-sq{position:relative;display:grid;place-items:center;cursor:pointer}.ch-sq.light{background:#efe6d6}.ch-sq.dark{background:#9c89b8}.ch-sq.last:before{content:"";position:absolute;inset:0;background:#f3b94a73}.ch-sq.sel:before{content:"";position:absolute;inset:0;background:#2bb3a68c}.ch-sq.check:before{content:"";position:absolute;inset:0;background:radial-gradient(circle,#e4572ef2 0 35%,#e4572e00 75%)}.ch-sq.to:after{content:"";position:absolute;width:30%;height:30%;border-radius:50%;background:#241f3359}.ch-sq.take:after{content:"";position:absolute;inset:4%;border-radius:50%;border:4px solid rgba(36,31,51,.4)}.ch-piece{position:relative;z-index:1;width:88%;height:88%}.ch-piece .body{stroke:#000;stroke-width:2;stroke-linejoin:round}.ch-piece.w .body{fill:#fbf7ef}.ch-piece.b .body{fill:#3d3352}.ch-piece .detail{fill:none;stroke:#000;stroke-width:2;stroke-linecap:round}.ch-piece.b .detail{stroke:#fbf7ef}.ch-piece.w .detail[d^="M 19.5"]{fill:#000;stroke:none}.ch-piece.b .detail[d^="M 19.5"]{fill:#fbf7ef;stroke:none}.ch-piece.flip{rotate:180deg}.ch-piece.mini{width:20px;height:20px}.ch-bar{display:flex;align-items:center;gap:1px;min-height:26px;width:var(--b, 100%);color:#e8e0f0;font-size:14px}.ch-foot{display:flex;align-items:center;justify-content:space-between;width:min(100cqw,calc(100cqh - 76px),560px)}.ch-foot .ch-bar{width:auto}.ch.flip-top>.ch-bar-1{rotate:180deg;width:min(100cqw,calc(100cqh - 76px),560px)}.ch>.ch-bar-1{width:min(100cqw,calc(100cqh - 76px),560px)}.ch-lead{margin-left:6px;font-weight:800}.ch-undo{padding:6px 14px;border:2px solid rgba(255,255,255,.3);border-radius:999px;background:none;color:#e8e0f0;font:inherit;cursor:pointer}.ch-undo:disabled{opacity:.35}.ch-undo[hidden]{display:none}.ch-picker{position:absolute;left:50%;top:50%;translate:-50% -50%;z-index:5;display:flex;gap:6px;padding:8px;border:3px solid #000;border-radius:12px;background:#fbf7ef}.ch-picker[hidden]{display:none}.ch-pick{width:calc(var(--b) / 7);height:calc(var(--b) / 7);padding:0;border:2px solid #000;border-radius:8px;background:#efe6d6;cursor:pointer}.ch-pick .ch-piece{width:90%;height:90%}.lc{position:absolute;inset:0;display:flex;flex-direction:column;padding:6px 2vw 10px}.lc-table{position:relative;flex:1;min-height:0}.lc-card{--cw: 58px;position:relative;flex:none;width:var(--cw);height:calc(var(--cw) * 1.45);box-sizing:border-box;border:3px solid #000;border-radius:9px;background:var(--ink, #2b2438);color:#fff;cursor:pointer}.lc-card.back{background:repeating-linear-gradient(-45deg,#5b3f8c 0 6px,#6f52a3 6px 12px);cursor:default}.lc-card.wild{background:#2b2438}.lc-corner{position:absolute;top:3px;left:5px;font:800 calc(var(--cw) * .24) / 1 system-ui,sans-serif}.lc-face{position:absolute;left:50%;top:50%;translate:-50% -50%;display:grid;place-items:center;width:calc(var(--cw) * .66);aspect-ratio:1;border-radius:50%;background:#fbf7ef;color:var(--ink, #2b2438);font:800 calc(var(--cw) * .36) / 1 system-ui,sans-serif}.lc-card.wild .lc-face{background:conic-gradient(#e4572e 0 25%,#f3b94a 0 50%,#4c9f70 0 75%,#3a86c8 0);color:#fff;text-shadow:0 0 3px #000,0 0 2px #000;border:2px solid #000}.lc-bot{position:absolute;display:flex;flex-direction:column;align-items:center;gap:4px;color:#ffffffbf;font-size:13px}.lc-bot.now .lc-name{color:#f3b94a;font-weight:800}.lc-top{top:6px;left:50%;translate:-50% 0}.lc-left{left:2px;top:34%}.lc-right{right:2px;top:34%}.lc-backs{display:flex}.lc-backs .lc-card{--cw: 22px;border-width:2px;border-radius:4px}.lc-backs .lc-card+.lc-card{margin-left:-14px}.lc-centre{position:absolute;left:50%;top:52%;translate:-50% -50%;display:flex;align-items:center;gap:16px}.lc-centre .lc-card{--cw: 70px}.lc-deck{cursor:pointer;box-shadow:3px 3px #1b1630,6px 6px #120f20}.lc-colour{display:grid;place-items:center;width:34px;height:34px;border:3px solid #000;border-radius:50%;background:var(--ink);color:#fff;font-size:20px;font-weight:800}.lc-hand{display:flex;justify-content:center;padding:14px 0 4px;min-height:100px}.lc-hand .lc-card+.lc-card{margin-left:min(-6px,calc((96vw - var(--count) * 58px) / max(1,var(--count) - 1)))}.lc-hand .lc-card.live{translate:0 -12px;box-shadow:0 0 0 3px #fff}.lc-hand .lc-card.dim{filter:brightness(.55)}.lc-picker{position:absolute;left:50%;top:40%;translate:-50% -50%;z-index:5;display:grid;grid-template-columns:repeat(2,64px);gap:10px;padding:14px;border:3px solid #000;border-radius:14px;background:#fbf7ef}.lc-picker[hidden],.lc-pass[hidden]{display:none}.lc-pick{height:64px;border:3px solid #000;border-radius:12px;cursor:pointer}.lc-pass{align-self:center;padding:7px 18px;border:2px solid rgba(255,255,255,.35);border-radius:999px;background:none;color:#e8e0f0;font:inherit;cursor:pointer}.pool{position:absolute;inset:0;overflow:hidden;background:#241f33}.pool-canvas{display:block;touch-action:none}.ah{position:absolute;inset:0;overflow:hidden;background:#241f33}.ah-canvas{display:block;touch-action:none}.cr{position:absolute;inset:0;overflow:hidden;background:#241f33}.cr-canvas{display:block;touch-action:none}.fr{position:absolute;inset:0;display:grid;place-items:center;padding:90px 3vw;container-type:size}.fr-grid{--cell: min(calc((100cqw - 8px) / 7.3), calc((100cqh - 8px) / 6.3), 64px);display:grid;grid-template-columns:repeat(7,var(--cell));padding:calc(var(--cell) * .12);border:3px solid #000;border-radius:14px;background:#3a86c8}.fr-col{display:grid;grid-template-rows:repeat(6,var(--cell));padding:0;border:0;background:none;cursor:pointer;border-radius:8px}.fr-col:hover{background:#ffffff1a}.fr-hole{position:relative;margin:12%;border-radius:50%;background:#241f33;box-shadow:inset 0 3px #00000073}.fr-hole.full:after{content:"";position:absolute;inset:0;border:2px solid #000;border-radius:50%;background:var(--disc);box-shadow:inset 0 -4px #00000038}.fr-hole.drop:after{animation:fr-fall calc(.12s + var(--fall) * 45ms) cubic-bezier(.5,0,1,1)}@keyframes fr-fall{0%{translate:0 calc(var(--fall) * -100% * 1.3)}}.fr-hole.win:after{box-shadow:0 0 0 4px #fff}.bg{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:70px 2vw 76px;background:#241f33;container-type:size}.bg-board{width:min(100cqw,calc((100cqh - 60px) * 15 / 13));aspect-ratio:15 / 13;border:3px solid #000;border-radius:8px;background:#6b4a2f;box-sizing:border-box}.bg-felt{fill:#efe2c4}.bg-mid{fill:#6b4a2f}.bg-tray{fill:#4a3322}.bg-traytap{fill:transparent;cursor:pointer}.bg-point{cursor:pointer;stroke:#00000059;stroke-width:.03}.bg-point.a{fill:#c96f4a}.bg-point.b{fill:#5b4a7a}.bg-target{fill:#2bb3a6;stroke:#000;stroke-width:.05;pointer-events:none}.bg-chk{stroke:#000;stroke-width:.07;cursor:pointer}.bg-chk.s0,.bg-offchk.s0{fill:var(--red)}.bg-chk.s1,.bg-offchk.s1{fill:var(--blue)}.bg-chk.can{stroke:#fff;stroke-width:.1}.bg-chk.picked{stroke:#2bb3a6;stroke-width:.16}.bg-count{fill:#fff;font:800 .42px system-ui,sans-serif;text-anchor:middle;pointer-events:none}.bg-offchk{stroke:#000;stroke-width:.04}.bg-offtarget{fill:#2bb3a659;stroke:#2bb3a6;stroke-width:.08;cursor:pointer}.bg-dice{display:flex;gap:8px}.bg-die{display:grid;place-items:center;width:40px;height:40px;border:3px solid #000;border-radius:9px;color:#fff;font-size:22px;font-weight:800}.bg-die.s0{background:var(--red)}.bg-die.s1{background:var(--blue)}.bg-die.used{opacity:.35}.bg-bar{display:flex;gap:12px;align-items:center;min-height:48px}.bg-roll[hidden],.bg-undo[hidden]{display:none}.bg-undo{padding:8px 16px;border:2px solid rgba(255,255,255,.3);border-radius:999px;background:none;color:#e8e0f0;font:inherit;cursor:pointer}.bb{position:absolute;inset:0;overflow:hidden;background:#a9dcf0}.bb.flip{rotate:180deg}.bb-canvas{display:block;touch-action:none}.bv{position:absolute;inset:0;overflow:hidden;background:#1f1a2b}.bv-canvas{display:block;touch-action:none}.dr{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:8px 3vw;container-type:size}.dr-board{--cell: min(calc(92cqw / var(--cols)), calc((100cqh - 210px) / var(--rows)), 72px);display:grid;grid-template-columns:repeat(var(--cols),var(--cell));grid-template-rows:repeat(var(--rows),var(--cell))}.dr-cell{position:relative;display:grid;place-items:center;box-sizing:border-box;cursor:pointer}.dr-cell.void{background:none;cursor:default}.dr-tag{position:absolute;top:2px;left:3px;z-index:2;padding:0 4px;border-radius:6px;background:#fbf7ef;color:#2b2438;font:800 calc(var(--cell) * .24) / 1.2 system-ui,sans-serif;pointer-events:none}.dr-tag.ok{background:#2bb3a6;color:#fff}.dr-tag.bad{background:#e4572e;color:#fff}.dr-piece{position:relative;z-index:1;margin:3px;border:3px solid #000;border-radius:10px;pointer-events:none}.dr-pips{display:grid;grid-template:repeat(3,1fr) / repeat(3,1fr);width:56%;aspect-ratio:1}.dr-pips span{display:grid;place-items:center}.dr-pips span.pip:before{content:"";width:66%;aspect-ratio:1;border-radius:50%;background:#1b1b1f}.dr-key{color:#fff9;font-size:12px;white-space:pre}.dr-tray{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;max-width:94cqw;min-height:56px;padding:22px 0}.dr-domino{display:grid;grid-template-columns:1fr 1fr;width:84px;height:44px;padding:3px;border:3px solid #000;border-radius:9px;background:#fbf7ef;cursor:pointer;transition:rotate .12s ease}.dr-domino>.dr-pips{width:80%;justify-self:center;align-self:center}.dr-domino>.dr-pips:first-child{border-right:2px solid rgba(0,0,0,.35)}.dr-domino.picked{outline:3px solid #2bb3a6;outline-offset:2px}.dr-domino.picked[data-turn="1"]{rotate:90deg}.dr-domino.picked[data-turn="2"]{rotate:180deg}.dr-domino.picked[data-turn="3"]{rotate:270deg}.dr-turn{padding:7px 16px;border:2px solid rgba(255,255,255,.35);border-radius:999px;background:none;color:#e8e0f0;font:inherit;cursor:pointer}.dr-turn[hidden]{display:none}.mc{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;gap:12px;padding:8px 3vw 10px;container-type:size}.mc-top{color:#ffffffb3;font-size:15px;letter-spacing:.06em;font-variant-numeric:tabular-nums}.mc-grid{--cell: min(calc(92cqw / 5), calc((100cqh - 290px)/5) , 72px);display:grid;grid-template-columns:repeat(5,var(--cell));grid-template-rows:repeat(5,var(--cell));border:3px solid #000;background:#000;gap:2px}.mc-cell{position:relative;display:grid;place-items:center;background:#fbf7ef;color:#1b1b1f;font:800 calc(var(--cell) * .55) / 1 system-ui,sans-serif;cursor:pointer}.mc-cell.block{background:#1b1b1f;cursor:default}.mc-cell.word{background:#cfe6f7}.mc-cell.at{background:#f3b94a}.mc-cell.wrong{color:#d6402b}.mc-num{position:absolute;top:2px;left:3px;font-size:calc(var(--cell) * .22);font-weight:700;color:#4b4560}.mc-cluebar{display:flex;align-items:center;gap:6px;width:min(94cqw,460px);min-height:52px;padding:4px;border-radius:12px;background:#cfe6f7;color:#1b1b1f}.mc-clue{flex:1;font-size:15px;font-weight:700;line-height:1.25;cursor:pointer}.mc-step{width:36px;height:40px;border:0;border-radius:8px;background:#00000014;font-size:22px;font-weight:800;color:#1b1b1f;cursor:pointer}.mc-keys{display:flex;flex-direction:column;gap:6px;width:min(100cqw,500px)}.mc-keyrow{display:flex;justify-content:center;gap:4px}.mc-key{flex:0 1 calc((100% - 36px)*.1);height:46px;min-width:0;padding:0;border:0;border-radius:6px;background:#e8e0f0;color:#241f33;font:800 17px/1 system-ui,sans-serif;cursor:pointer}.mc-key.wide{flex-basis:calc((100% - 36px) / 10 * 1.5)}.ng{position:absolute;inset:0;display:grid;place-items:center;padding:8px 3vw;container-type:size}.ng-in{--band-r: calc(var(--kr) * .62 + .3);--band-c: calc(var(--kc) * .62 + .3);--cell: min(calc((100cqw - 12px) / (var(--n) + var(--band-r))), calc((100cqh - 84px) / (var(--n) + var(--band-c))), 48px);display:flex;flex-direction:column;align-items:center;gap:14px}.ng-grid{display:grid;grid-template-columns:calc(var(--band-r) * var(--cell)) repeat(var(--n),var(--cell));grid-template-rows:calc(var(--band-c) * var(--cell)) repeat(var(--n),var(--cell));padding:6px;border-radius:12px;background:#fbf7ef;touch-action:none}.ng-rowclue{display:flex;align-items:center;justify-content:flex-end;padding-right:calc(var(--cell) * .22);color:#1b1b1f;font:800 calc(var(--cell) * .46) / 1 system-ui,-apple-system,"Segoe UI",sans-serif;white-space:nowrap;word-spacing:calc(var(--cell) * .08)}.ng-colclue{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding-bottom:calc(var(--cell) * .16);color:#1b1b1f;font:800 calc(var(--cell) * .46) / 1.32 system-ui,-apple-system,"Segoe UI",sans-serif}.ng-rowclue.met,.ng-colclue.met{color:#b9ae99}.ng-cell{position:relative;border-right:1px solid #c9bfae;border-bottom:1px solid #c9bfae;cursor:pointer}.ng-cell.ng-r5{border-right:2px solid #000}.ng-cell.ng-b5{border-bottom:2px solid #000}.ng-cell.fill{background:#2b2438}.ng-cell.cross:after{content:"";position:absolute;inset:26%;background:linear-gradient(45deg,transparent 43%,#a3967f 43%,#a3967f 57%,transparent 57%),linear-gradient(-45deg,transparent 43%,#a3967f 43%,#a3967f 57%,transparent 57%)}.ng-grid.done .ng-cell{border-color:transparent}.ng-grid.done .ng-cell.cross:after{display:none}.ng-frame{border:3px solid #000;margin:-2px;border-radius:3px;pointer-events:none}.ng-tools{display:flex;gap:6px;padding:4px;border-radius:999px;background:#ffffff1f}.ng-tool{position:relative;width:64px;height:46px;border:0;border-radius:999px;background:none;cursor:pointer}.ng-tool.on{background:#fbf7ef}.ng-tool:before{content:"";position:absolute;inset:12px 21px}.ng-t-fill:before{background:#e8e0f0;border-radius:3px}.ng-t-fill.on:before{background:#2b2438}.ng-t-cross:before{background:linear-gradient(45deg,transparent 42%,#e8e0f0 42%,#e8e0f0 58%,transparent 58%),linear-gradient(-45deg,transparent 42%,#e8e0f0 42%,#e8e0f0 58%,transparent 58%)}.ng-t-cross.on:before{background:linear-gradient(45deg,transparent 42%,#2b2438 42%,#2b2438 58%,transparent 58%),linear-gradient(-45deg,transparent 42%,#2b2438 42%,#2b2438 58%,transparent 58%)}.orc{position:absolute;inset:0;overflow:hidden;background:#241f33}.orc-canvas{display:block;touch-action:none}.pp{position:absolute;inset:0;display:grid;place-items:center;padding:8px 3vw;container-type:size}.pp-board{--size: min(100cqw, calc(100cqh - 16px) , 480px);display:grid;grid-template-columns:repeat(var(--n),1fr);gap:3px;width:var(--size);height:var(--size);padding:6px;border-radius:14px;background:#1b1724}.pp-cell{min-width:0;padding:0;border:0;border-radius:8px;background:#342c44;cursor:pointer;overflow:hidden}.pp-spin{width:100%;height:100%;transition:transform .16s ease-out}.pp-spin svg{display:block;width:100%;height:100%}.pp-out{fill:none;stroke:#000;stroke-width:30}.pp-core{fill:none;stroke:#a59cb6;stroke-width:18;transition:stroke .2s}.pp-out-fill{fill:#000}.pp-core-fill{fill:#a59cb6;transition:fill .2s}.pp-pump{fill:#f3b94a}.pp-cell.lit .pp-core{stroke:#43b0f1}.pp-cell.lit .pp-core-fill{fill:#43b0f1}.rt{position:absolute;inset:0;overflow:hidden;background:#1b1724}.rt-canvas{display:block;touch-action:none}.hf{position:absolute;inset:0;display:grid;place-items:center;padding:60px 12px 104px;background:#182338;container-type:size}.hf.flip{rotate:180deg}.hf-in{--big: min(100cqw, calc((100cqh - 112px) / 1.48), 440px);display:flex;flex-direction:column;align-items:center;gap:8px}.hf.placing .hf-in{--big: min(100cqw, calc(100cqh - 120px) , 440px)}.hf-title{color:var(--who);font-size:20px;font-weight:900;letter-spacing:.04em}.hf-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:2px;padding:4px;border-radius:12px;background:#0d1426}.hf-big{width:var(--big);height:var(--big)}.hf-small{width:calc(var(--big) * .46);height:calc(var(--big) * .46);gap:1px;padding:3px;border-radius:8px}.hf-small[hidden],.hf-label[hidden],.hf-tools[hidden]{display:none}.hf-cell{position:relative;min-width:0;padding:0;border:0;border-radius:4px;background:#2d5f9e;cursor:pointer}.hf-small .hf-cell{border-radius:2px;cursor:default}.hf-cell.water{background:#244f86}.hf-cell.ship{background:#c9c2d6;border-radius:2px;box-shadow:inset 0 0 0 2px #000}.hf-cell.ship.end-l{border-top-left-radius:50%;border-bottom-left-radius:50%}.hf-cell.ship.end-r{border-top-right-radius:50%;border-bottom-right-radius:50%}.hf-cell.ship.end-t{border-top-left-radius:50%;border-top-right-radius:50%}.hf-cell.ship.end-b{border-bottom-left-radius:50%;border-bottom-right-radius:50%}.hf-cell.ship.sel{background:#f3b94a}.hf-cell.ship.sunk{background:#3a3446}.hf-cell.ship.shown{background:#8a83a0}.hf-cell.hit:after,.hf-cell.sunk:after{content:"";position:absolute;inset:24%;border-radius:50%;background:#e8613c;box-shadow:0 0 0 2px #000}.hf-cell.miss:after,.hf-cell.water:after{content:"";position:absolute;inset:39%;border-radius:50%;background:#ffffffbf}.hf-cell.water:after{inset:44%;background:#ffffff40}.hf-cell.last{outline:3px solid #fff;outline-offset:-3px;z-index:1}.hf-status{min-height:21px;color:#e8e0f0;font-size:15px;text-align:center}.hf-label{color:#ffffff8c;font-size:12px;letter-spacing:.08em;text-transform:uppercase}.hf-tools{display:flex;gap:10px}.hf-btn{padding:10px 24px;border:2px solid rgba(255,255,255,.35);border-radius:999px;background:none;color:#e8e0f0;font:inherit;font-weight:800;cursor:pointer}.hf-btn.hf-go{border-color:#000;background:var(--who);color:#fff}.hf-cover{position:absolute;inset:0;z-index:4;display:grid;place-content:center;gap:8px;text-align:center;background:var(--who);color:#fff;cursor:pointer}.hf-cover[hidden]{display:none}.hf-cover-title{font-size:28px;font-weight:900;letter-spacing:.05em;padding:0 20px}.hf-cover-sub{font-size:15px;padding:0 24px}.bf{position:absolute;inset:0;overflow:hidden;background:#241f33}.bf-canvas{display:block;touch-action:none}.wh{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;gap:10px;padding:12px 16px;color:#e8e0f0;container-type:size}.wh.loading:after{content:"Loading words…";margin:auto;color:#ffffffb3}.wh-top{display:flex;flex-direction:column;gap:6px;width:min(100%,420px)}.wh-bar-text{font-size:14px;text-align:center;color:#ffffffbf}.wh-bar{height:10px;overflow:hidden;border-radius:999px;background:#ffffff1f}.wh-bar-fill{height:100%;border-radius:999px;background:#f3b94a;transition:width .3s}.wh-entry{display:flex;align-items:center;min-height:44px;color:#fff;font-size:32px;font-weight:900;letter-spacing:.06em}.wh-entry span.mid{color:#f3b94a}.wh-note{padding:3px 12px;border-radius:999px;background:#ffffff24;font-size:15px;font-weight:800;opacity:0}.wh-note.good{background:#2bb3a3;color:#fff}.wh-note.show{animation:wh-note 1.6s ease forwards}@keyframes wh-note{0%{opacity:0;transform:translateY(4px)}10%,75%{opacity:1;transform:none}to{opacity:0}}.wh-flower{--d: min(76cqw, 280px, 38cqh);--t: calc(var(--d) * .3);position:relative;flex:none;width:var(--d);height:var(--d)}.wh-letter{position:absolute;left:50%;top:50%;width:var(--t);height:var(--t);margin:calc(var(--t) / -2) 0 0 calc(var(--t) / -2);padding:0;border:3px solid #000;border-radius:50%;background:#fbf7ef;color:#1b1b1f;font:900 calc(var(--t) * .42) / 1 system-ui,-apple-system,"Segoe UI",sans-serif;translate:calc(var(--x, 0) * var(--d) * .35) calc(var(--y, 0) * var(--d) * .35);cursor:pointer}.wh-letter:active{scale:.93}.wh-letter.wh-mid{background:#f3b94a}.wh-tools{display:flex;gap:10px}.wh-btn{padding:10px 18px;border:2px solid rgba(255,255,255,.35);border-radius:999px;background:none;color:#e8e0f0;font:inherit;font-weight:800;cursor:pointer}.wh-btn.wh-enter{border-color:#fbf7ef;background:#fbf7ef;color:#241f33}.wh-found{display:flex;flex:1;flex-wrap:wrap;align-content:flex-start;gap:6px;width:min(100%,420px);min-height:0;padding:8px;overflow-y:auto;border-radius:12px;background:#ffffff0f}.wh-found span{padding:4px 10px;border-radius:999px;background:#ffffff1f;font-size:14px}.wh-found span.all{background:#f3b94a;color:#241f33}.ff{position:absolute;inset:0;overflow:hidden;background:#241f33}.ff-canvas{display:block;touch-action:none}.ff-btn{position:absolute;z-index:3;width:84px;height:84px;border:4px solid #000;border-radius:50%;background:var(--seat);color:#000;font:900 16px/1 system-ui,-apple-system,Segoe UI,sans-serif;letter-spacing:.04em;touch-action:none;cursor:pointer}.ff-btn.on{filter:brightness(1.25);scale:.92}.tw{position:absolute;inset:0;overflow:hidden;background:#241f33}.tw-canvas{display:block;touch-action:none}.tw-btn{position:absolute;z-index:3;width:84px;height:84px;border:4px solid #000;border-radius:50%;background:var(--seat);color:#000;font:900 16px/1 system-ui,-apple-system,Segoe UI,sans-serif;letter-spacing:.04em;touch-action:none;cursor:pointer}.tw-btn.on{filter:brightness(1.25);scale:.92}.esc{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:12px;container-type:size}.esc-moves{color:#fffc;font-size:15px;font-variant-numeric:tabular-nums}.esc-frame{--size: min( calc(100cqw - 40px) , calc(100cqh - 80px) , 420px);position:relative;padding:8px;border:4px solid #000;border-radius:16px;background:#3a3446}.esc-board{display:grid;grid-template-columns:repeat(6,1fr);grid-template-rows:repeat(6,1fr);gap:5px;width:var(--size);height:var(--size);touch-action:none}.esc-exit{position:absolute;right:-4px;top:calc(8px + (var(--size) + 5px) * 2 / 6);width:12px;height:calc((var(--size) - 25px) / 6);background:#241f33}.esc-block{border:3px solid #000;border-radius:12px;background:#7fb3d5;box-shadow:inset 0 -5px #0000002e;cursor:grab;touch-action:none;transition:translate .12s ease-out}.esc-block.v{background:#c39bd3}.esc-block.long.h{background:#5f97bd}.esc-block.long.v{background:#a77fbb}.esc-block.gold{background:#f3b94a}.esc-block.held{transition:none;filter:brightness(1.1);z-index:1}.esc-block.out{translate:220% 0;opacity:0;transition:translate .5s ease-in,opacity .5s ease-in}.mp{position:absolute;inset:0;display:grid;place-items:center;padding:12px;touch-action:none;container-type:size}.mp-board{--size: min( calc(100cqw - 24px) , calc(100cqh - 24px) , 460px);position:relative;display:grid;grid-template-columns:repeat(var(--n),1fr);width:var(--size);height:var(--size);border:4px solid #000;border-radius:10px;overflow:hidden;background:#1b1724}.mp-cell{background:#1f1a2c;box-shadow:inset 0 0 0 1px #ffffff0a;transition:background .15s}.mp-cell.wall{background:#6a6185;box-shadow:inset 0 -5px #00000047,inset 0 0 0 1px #0000004d}.mp-cell.on{background:var(--paint)}.mp-board.done .mp-cell.on{filter:brightness(1.12)}.mp-ball{position:absolute;left:0;top:0;width:calc(100% / var(--n));height:calc(100% / var(--n));transition:translate linear;pointer-events:none}.mp-ball:after{content:"";position:absolute;inset:16%;border:3px solid #000;border-radius:50%;background:#fbf7ef}.ast{position:absolute;inset:0;overflow:hidden;background:#5d8fc9}.ast-canvas{display:block;touch-action:none}.ast-label{position:absolute;top:100px;left:0;right:0;text-align:center;font-size:20px;font-weight:900;text-shadow:0 2px 0 #000;pointer-events:none}.ast-tools{position:absolute;bottom:112px;left:0;right:0;display:flex;justify-content:center;gap:12px}.ast-btn{min-width:110px;padding:12px 18px;border:3px solid #000;border-radius:999px;background:#fbf7ef;color:#1b1b1f;font:inherit;font-weight:900;cursor:pointer}.ast-btn.ast-drop{background:#f3b94a}.ast-btn:disabled{opacity:.4}.snk{position:absolute;inset:0;overflow:hidden;background:#f4e1d2}.snk-canvas{display:block;touch-action:none}.snk-tools{position:absolute;bottom:18px;left:0;right:0;display:flex;justify-content:center;gap:12px}.cp{position:absolute;inset:0;overflow:hidden;background:#241f33}.cp-canvas{display:block;touch-action:none}.ts{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:92px 12px;background:#241f33;container-type:size}.ts-card{--d: min(62cqw, calc((100cqh - 24px) / 3.1));position:relative;flex:none;width:var(--d);height:var(--d);border:5px solid var(--ring, #000);border-radius:50%;background:#fbf7ef;box-shadow:0 0 0 3px #000;transition:opacity .15s}.ts-middle{--ring: #f3b94a}.ts-seat1{rotate:180deg}.ts-card.locked{opacity:.4}.ts-sym{position:absolute;padding:0;border:0;border-radius:50%;background:none;translate:-50% -50%;cursor:pointer}.ts-sym svg{display:block;width:100%;height:100%}.ts-sym.right{background:#2bb3a373;box-shadow:0 0 0 3px #2bb3a3}.ts-sym.wrong{background:#e8613c59}.mf{position:absolute;inset:0;display:grid;place-items:center;padding:58px 10px 100px;background:#241f33;color:#e8e0f0}.mf.flip{rotate:180deg}.mf-in{display:flex;flex-direction:column;gap:8px;width:min(100%,440px)}.mf-top{display:flex;align-items:center;gap:10px;min-height:52px}.mf-mine{display:flex;align-items:center;gap:6px;padding:3px 10px 3px 3px;border:2px solid var(--who);border-radius:12px;font-size:12px;line-height:1.2}.mf-mine svg{width:44px;height:41px}.mf-note{flex:1;font-size:14px}.mf-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.mf-face{display:flex;flex-direction:column;align-items:center;padding:3px 0 2px;border:2px solid #000;border-radius:10px;background:#fbf7ef;color:#1b1b1f;font:700 11px/1.1 system-ui,-apple-system,Segoe UI,sans-serif;cursor:default;transition:opacity .2s,filter .2s}.mf-face svg{width:100%;max-height:54px}.mf-face.down{opacity:.22;filter:grayscale(1)}.mf-face.pickable:not(.down){cursor:pointer;box-shadow:0 0 0 3px var(--who)}.mf-face.secret{opacity:1;filter:none;box-shadow:0 0 0 4px #f3b94a}.mf-questions{display:flex;flex-wrap:wrap;gap:5px;justify-content:center}.mf-q{padding:6px 10px;border:2px solid rgba(255,255,255,.3);border-radius:999px;background:none;color:#e8e0f0;font:700 13px/1 system-ui,-apple-system,Segoe UI,sans-serif;cursor:pointer}.mf-q:disabled{opacity:.3;cursor:default}.mf-q.mf-guess{border-color:#f3b94a;color:#f3b94a}.mf-q.mf-guess.on{background:#f3b94a;color:#241f33}.hs{position:absolute;inset:0;overflow:hidden;background:#f6c9a0}.hs-canvas{display:block;touch-action:none}.th{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:8px;padding:56px 10px 104px;background:#241f33;container-type:size}.th-table{--cardh: min(calc((100cqh - 260px) / var(--rows)), 84px);display:grid;grid-template-columns:repeat(3,1fr);gap:6px;width:min(100%,420px)}.th-card{height:var(--cardh);padding:4px;border:3px solid #000;border-radius:10px;background:#fbf7ef;cursor:pointer;transition:transform .1s}.th-card svg{display:block;width:100%;height:100%}.th-card.picked{box-shadow:0 0 0 4px var(--who);transform:translateY(-3px)}.th-card.right{background:#c9f0e2}.th-card.wrong{background:#f8d0c4}.th-info{color:#ffffffbf;font-size:14px}.th-buzz{min-width:150px;padding:12px 22px;border:4px solid #000;border-radius:999px;background:var(--seat);color:#000;font:900 18px/1 system-ui,-apple-system,Segoe UI,sans-serif;letter-spacing:.06em;cursor:pointer}.th-buzz[hidden]{visibility:hidden;display:block}.th-buzz0{align-self:flex-start;margin-left:8px}.th-buzz1{align-self:flex-end;margin-right:8px;rotate:180deg}.th-buzz:disabled{opacity:.35}.th-buzz.live{opacity:1;box-shadow:0 0 0 4px #fff}.lu{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:12px;container-type:size}.lu-status{color:#ffffffbf;font-size:14px}.lu-board{--size: min( calc(100cqw - 24px) , calc(100cqh - 60px) , 460px);position:relative;display:grid;grid-template-columns:repeat(var(--n),1fr);width:var(--size);height:var(--size);border:4px solid #000;border-radius:10px;overflow:hidden;background:#1b1724;touch-action:none}.lu-cell{box-shadow:inset 0 0 0 1px #ffffff12}.lu-lines{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.lu-board.done{box-shadow:0 0 0 4px #2bb3a3}.sol.fc{--w: min( calc((94vw - 28px)/8) , 60px)}.fc .sol-top,.fc .sol-cols{grid-template-columns:repeat(8,var(--w))}.fc-gap{width:var(--w)}.sol-card.nope{animation:fc-nope .3s}@keyframes fc-nope{25%{translate:-3px 0}75%{translate:3px 0}}.mg{position:absolute;inset:0;overflow:hidden;background:#2b5d3e}.mg-canvas{display:block;touch-action:none}.ms{position:absolute;inset:0;overflow:hidden;background:#241f33}.ms-canvas{display:block;touch-action:none}.ms-btn{position:absolute;z-index:3;width:84px;height:84px;border:4px solid #000;border-radius:50%;background:var(--seat);color:#000;font:900 20px/1 system-ui,-apple-system,Segoe UI,sans-serif;touch-action:none;cursor:pointer}.ms-btn.on{filter:brightness(1.25);scale:.92}.dom{position:absolute;inset:0;display:flex;flex-direction:column;gap:10px;padding:10px 12px;color:#e8e0f0;background:#2b5d3e}.dom-top{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between;font-size:13px}.dom-bot{display:flex;flex-direction:column;gap:4px;padding:4px 8px;border-radius:10px}.dom-bot.on{background:#ffffff24}.dom-backs{display:flex;flex-wrap:wrap;gap:2px;max-width:150px}.dom-back{width:10px;height:20px;border:2px solid #000;border-radius:3px;background:#6b5b4b}.dom-bone{padding:4px 10px;border-radius:999px;background:#00000040}.dom-line{flex:1;min-height:0;display:flex;flex-wrap:wrap;align-content:center;justify-content:center;gap:2px;overflow-y:auto}.dom-empty{color:#fff9}.dom-tile svg{display:block}.dom-tile svg rect{fill:#fbf7ef;stroke:#000;stroke-width:1.4}.dom-tile svg path{stroke:#000;stroke-width:1.2}.dom-tile svg circle{fill:#1b1b1f}.dom-tile:not(.up) svg{width:46px;height:23px}.dom-tile.up svg{width:34px;height:68px}.dom-end{padding:0 10px;border:3px solid #000;border-radius:8px;background:#f3b94a;font:900 18px/1 system-ui,sans-serif;cursor:pointer}.dom-note{min-height:20px;text-align:center;font-size:14px}.dom-hand{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;min-height:72px}.dom-tile.mine{cursor:pointer;opacity:.55;transition:transform .1s}.dom-tile.mine.fits{opacity:1}.dom-tile.mine.chosen{transform:translateY(-6px)}.dom-draw{align-self:center;padding:10px 22px;border:3px solid #000;border-radius:999px;background:#fbf7ef;color:#1b1b1f;font:inherit;font-weight:900;cursor:pointer}.dom-draw[hidden]{display:none}.hh{position:absolute;inset:0;overflow:hidden;background:#4d79b8}.hh-canvas{display:block;touch-action:none}.ps{position:absolute;inset:0;overflow:hidden;background:#241f33}.ps-canvas{display:block;touch-action:none}.rise{position:absolute;inset:0;overflow:hidden;background:#4d79b8}.rise-canvas{display:block;touch-action:none}.wds{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:10px 8px;color:#e8e0f0;container-type:size}.wds-theme{font-size:15px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#f3b94a}.wds-board{--cell: min(calc((100cqw - 20px) / var(--n)), calc((100cqh - 176px) / var(--n)), 46px);position:relative;width:calc(var(--cell) * var(--n));height:calc(var(--cell) * var(--n));border-radius:10px;background:#fbf7ef;box-shadow:0 0 0 3px #000;touch-action:none;cursor:pointer}.wds.done .wds-board{box-shadow:0 0 0 3px #000,0 0 0 9px #f3b94a8c}.wds-board.miss{animation:wds-shake .28s}@keyframes wds-shake{25%{translate:-5px 0}75%{translate:5px 0}}.wds-marks{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.wds-marks line{stroke-linecap:round;stroke-width:.8}.wds-found{opacity:.6}.wds-marks .wds-live{stroke:#2b243833}.wds-grid{position:relative;display:grid;grid-template-columns:repeat(var(--n),var(--cell));grid-auto-rows:var(--cell);pointer-events:none}.wds-cell{display:grid;place-items:center;border-radius:50%;color:#1b1b1f;font:800 calc(var(--cell) * .56) / 1 system-ui,-apple-system,"Segoe UI",sans-serif}.wds-cell.anchor{background:#2b243829;box-shadow:inset 0 0 0 2px #2b2438}.wds-cell.hint{animation:wds-blink .6s ease-in-out infinite alternate}@keyframes wds-blink{to{background:#f2b33dcc}}.wds-words{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 8px;max-width:440px}.wds-word{padding:3px 10px;border-radius:999px;background:#ffffff1a;font-size:14px;font-weight:800;letter-spacing:.05em}.wds-word.found{background:var(--mark);color:#1b1b1f;text-decoration:line-through;text-decoration-thickness:2px}.fsd{position:absolute;inset:0;overflow:hidden;background:#120f1c}.fsd-canvas{display:block;touch-action:none}.fsd-btn{position:absolute;z-index:3;width:84px;height:84px;border:4px solid #000;border-radius:50%;background:var(--seat);color:#000;font:900 16px/1 system-ui,-apple-system,Segoe UI,sans-serif;letter-spacing:.04em;touch-action:none;cursor:pointer}.fsd-btn.on{filter:brightness(1.25);scale:.92}.ssl{position:absolute;inset:0;overflow:hidden;background:#1b1726}.ssl-canvas{display:block;touch-action:none}.tcl{position:absolute;inset:0;overflow:hidden;background:#1b1726}.tcl-canvas{display:block;touch-action:none}.tcl-pad{position:absolute;z-index:3;width:132px;height:132px;margin:-66px 0 0 -66px;border:4px solid #000;border-radius:50%;background:#ffffff14;box-shadow:inset 0 0 0 7px color-mix(in srgb,var(--seat) 40%,transparent);touch-action:none;transition:opacity .2s}.tcl-pad.wait{opacity:.4}.tcl-knob{position:absolute;left:50%;top:50%;width:56px;height:56px;margin:-28px 0 0 -28px;border:4px solid #000;border-radius:50%;background:var(--seat);pointer-events:none}.mc.cw .mc-grid{--cell: min(calc(96cqw / var(--n)), calc((100cqh - 270px) / var(--n)), 44px);grid-template-columns:repeat(var(--n),var(--cell));grid-template-rows:repeat(var(--n),var(--cell));gap:1px;border-width:2px}.mc.cw .mc-num{top:1px;left:2px;font-size:max(7px,calc(var(--cell) * .27))}.ee{position:absolute;inset:0;overflow:hidden;background:#241f33}.ee-canvas{display:block;touch-action:none}.tbl{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:space-between;align-items:center;gap:8px;padding:96px 8px;background:#241f33}.tbl-seat{display:flex;flex-direction:column;gap:6px;width:min(100%,440px)}.tbl-seat.flip{rotate:180deg}.tbl-prizes{display:flex;flex-wrap:wrap;justify-content:center;gap:4px}.tbl-prize{padding:4px 9px;border-radius:999px;background:#ffffff1f;color:#e8e0f0;font:800 12px/1 system-ui,-apple-system,Segoe UI,sans-serif}.tbl-prize.gone{opacity:.35;text-decoration:line-through}.tbl-prize.mine{opacity:1;background:var(--seat);color:#000;text-decoration:none}.tbl-ticket{display:grid;grid-template-columns:repeat(9,1fr);gap:2px;padding:4px;border-radius:10px;background:#000}.tbl-cell{position:relative;display:grid;place-items:center;aspect-ratio:1 / 1.05;border-radius:4px;background:#fbf7ef;color:#1b1b1f;font:800 clamp(14px,4.4vw,20px) / 1 system-ui,-apple-system,"Segoe UI",sans-serif;cursor:pointer;touch-action:manipulation}.tbl-cell.blank{background:#3a3446;cursor:default}.tbl-cell.on:after{content:"";position:absolute;inset:10%;border-radius:50%;background:var(--seat);opacity:.55}.tbl-cell.nope{animation:tbl-shake .25s}@keyframes tbl-shake{25%{translate:-3px 0}75%{translate:3px 0}}.tbl-caller{display:flex;align-items:center;justify-content:center;gap:28px}.tbl-call{display:flex;flex-direction:column;align-items:center;gap:6px}.tbl-call.flip{rotate:180deg}.tbl-ball{display:grid;place-items:center;width:72px;height:72px;border:4px solid #000;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff,#f3b94a 60%,#c98a3d);color:#1b1b1f;font:900 30px/1 system-ui,-apple-system,Segoe UI,sans-serif}.tbl-ball.pop{animation:tbl-pop .35s}@keyframes tbl-pop{0%{scale:.6}70%{scale:1.08}to{scale:1}}.tbl-recent{min-height:14px;color:#fff9;font:700 12px/1 system-ui,-apple-system,Segoe UI,sans-serif;letter-spacing:.04em;white-space:pre}.bwl{position:absolute;inset:0;overflow:hidden;background:#241f33}.bwl-canvas{display:block;touch-action:none}.mnf{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:8px;container-type:size}.mnf-left{color:#ffffffb3;font:700 14px/1 system-ui,-apple-system,Segoe UI,sans-serif}.mnf-grid{--cell: min(calc((100cqw - 16px) / var(--cols)), calc((100cqh - 120px) / var(--rows)), 44px);display:grid;grid-template-columns:repeat(var(--cols),var(--cell));grid-auto-rows:var(--cell);gap:2px;padding:4px;border-radius:10px;background:#000;touch-action:none}.mnf-cell{position:relative;display:grid;place-items:center;border-radius:4px;background:#8a7fb0;box-shadow:inset 0 -3px #00000040;color:#1b1b1f;font:900 calc(var(--cell) * .55) / 1 system-ui,-apple-system,"Segoe UI",sans-serif;cursor:pointer;user-select:none;-webkit-touch-callout:none}.mnf-cell.open{background:#fbf7ef;box-shadow:none;cursor:default}.mnf-cell.n1{color:#4d79b8}.mnf-cell.n2{color:#2f8f4e}.mnf-cell.n3{color:#d6402b}.mnf-cell.n4{color:#6b3fa0}.mnf-cell.n5{color:#9c4a1a}.mnf-cell.n6{color:#2bb3a3}.mnf-cell.n7{color:#1b1b1f}.mnf-cell.n8{color:#7b88a1}.mnf-cell.flag:before{content:"";position:absolute;left:34%;top:22%;width:3px;height:56%;border-radius:2px;background:#1b1b1f}.mnf-cell.flag:after{content:"";position:absolute;left:calc(34% + 3px);top:22%;width:36%;height:32%;background:#ef4444;clip-path:polygon(0 0,100% 50%,0 100%)}.mnf-cell.mine{background:#fbf7ef;box-shadow:none}.mnf-cell.mine:after{content:"";width:46%;height:46%;border-radius:50%;background:#1b1b1f;box-shadow:0 0 0 2px #fbf7ef,0 0 0 4px #1b1b1f}.mnf-cell.boom{background:#ef4444}.mnf-cell.boom:after{box-shadow:0 0 0 2px #ef4444,0 0 0 4px #1b1b1f}.mnf-cell.wrong{background:#f7c2b8}.mnf-tools{display:flex;gap:6px;padding:4px;border-radius:999px;background:#ffffff1f}.mnf-tool{min-width:84px;height:42px;border:0;border-radius:999px;background:none;color:#e8e0f0;font:800 15px/1 system-ui,-apple-system,Segoe UI,sans-serif;cursor:pointer}.mnf-tool.on{background:#fbf7ef;color:#2b2438}.dbl{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;container-type:size}.dbl-board{--cell: min(calc((100cqw - 40px) / var(--n)), calc((100cqh - 120px) / var(--n)), 96px);--gap: calc(var(--cell) * .1);position:relative;width:calc(var(--cell) * var(--n) + var(--gap) * (var(--n) + 1));height:calc(var(--cell) * var(--n) + var(--gap) * (var(--n) + 1));border-radius:14px;background:#000;touch-action:none}.dbl-slot,.dbl-tile{position:absolute;left:calc(var(--gap) + var(--c) * (var(--cell) + var(--gap)));top:calc(var(--gap) + var(--r) * (var(--cell) + var(--gap)));width:var(--cell);height:var(--cell);border-radius:10px}.dbl-slot{background:#3a3446}.dbl-tile{z-index:1;display:grid;place-items:center;background:var(--tile);box-shadow:inset 0 -4px #0003;font-weight:900;font-family:system-ui,-apple-system,Segoe UI,sans-serif;transition:left .11s ease-out,top .11s ease-out}.dbl-tile.going{z-index:0}.dbl-tile.new{animation:dbl-in .16s ease-out}.dbl-tile.bump{animation:dbl-bump .16s ease-out}@keyframes dbl-in{0%{scale:.3;opacity:0}}@keyframes dbl-bump{50%{scale:1.12}}.dbl-hint{color:#ffffff8c;font:700 13px/1 system-ui,-apple-system,Segoe UI,sans-serif}.ptr{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:12px;container-type:size}.ptr-status{color:#ffffffbf;font-size:14px}.ptr-board{--size: min( calc(100cqw - 24px) , calc(100cqh - 60px) , 460px);position:relative;display:grid;grid-template-columns:repeat(var(--n),1fr);width:var(--size);height:var(--size);border:4px solid #000;border-radius:10px;overflow:hidden;background:#fbf7ef;touch-action:none}.ptr-cell{box-shadow:inset 0 0 0 1px #0000001f}.ptr-cell.hole{background:#2b2438;box-shadow:none}.ptr-lines{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.ptr-board.done{box-shadow:0 0 0 4px #2bb3a3}.whl{position:absolute;inset:0;overflow:hidden;background:#1b1726}.whl-canvas{display:block;touch-action:none}.whl-bar{position:absolute;z-index:3;left:8px;bottom:14px;display:flex;gap:10px}.whl-bar.top{inset:14px 8px auto auto;rotate:180deg}.whl-btn{width:84px;height:76px;border:4px solid #000;border-radius:18px;background:var(--seat);color:#000;font:900 30px/1 system-ui,-apple-system,Segoe UI,sans-serif;touch-action:none;cursor:pointer}.whl-btn.on{filter:brightness(1.25);scale:.94}.sps{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:space-between;align-items:center;padding:44px 16px 14px;background:#241f33}.sps-side{display:flex;gap:8px;align-self:flex-start;min-height:78px}.sps-side.flip{align-self:flex-end;rotate:180deg}.sps-btn{width:64px;height:64px;padding:6px;border:4px solid #000;border-radius:50%;background:#fbf7ef;touch-action:none;cursor:pointer}.sps-btn svg{display:block;width:100%;height:100%}.sps-btn:active{scale:.92}.sps-middle{display:flex;flex-direction:column;align-items:center;gap:22px}.sps-meet{display:flex;flex-direction:column;align-items:center;gap:6px}.sps-meet.flip{rotate:180deg}.sps-hand{width:112px;height:112px}.sps-hand svg{display:block;width:100%;height:100%}.sps-hand.shake{animation:sps-shake .55s ease-in-out infinite}@keyframes sps-shake{0%,to{translate:0 0}50%{translate:0 -14px}}.sps-hand.won{scale:1.1;filter:drop-shadow(0 0 10px var(--seat))}.sps-call{min-height:28px;color:#fff;font:900 26px/1 system-ui,-apple-system,Segoe UI,sans-serif;letter-spacing:.04em}.sps-note{min-height:16px;color:#ffffffb3;font:700 14px/1 system-ui,-apple-system,Segoe UI,sans-serif}.dgf{position:absolute;inset:0;overflow:hidden;background:#1b1726}.dgf-canvas{display:block;touch-action:none}.dgf-bar{position:absolute;z-index:3;left:8px;bottom:14px;display:flex;gap:10px}.dgf-bar.top{inset:14px 8px auto auto;rotate:180deg}.dgf-btn{width:88px;height:76px;border:4px solid #000;border-radius:18px;background:var(--seat);color:#000;font:900 16px/1 system-ui,-apple-system,Segoe UI,sans-serif;letter-spacing:.04em;touch-action:none;cursor:pointer}.dgf-btn.fire{background:#fbf7ef}.dgf-btn.on{filter:brightness(1.25);scale:.94}.play-area:has(.dgf) .quit-btn{inset:auto auto 32px 200px;translate:none}.hfh{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:12px;container-type:size}.hfh-rules{max-width:360px;color:#ffffffa6;font:600 12px/1.3 system-ui,-apple-system,Segoe UI,sans-serif;text-align:center}.hfh-board{--cell: min(calc((100cqw - 24px) / var(--n)), calc((100cqh - 90px) / var(--n)), 56px);position:relative;display:grid;grid-template-columns:repeat(var(--n),var(--cell));grid-auto-rows:var(--cell);gap:2px;border:3px solid #000;border-radius:8px;background:#000}.hfh-board.done{box-shadow:0 0 0 4px #2bb3a3}.hfh-cell{position:relative;display:grid;place-items:center;background:#fbf7ef;cursor:pointer}.hfh-cell.given{background:#e8e0f0;cursor:default}.hfh-cell.sun:after{content:"";width:60%;height:60%;border:3px solid #000;border-radius:50%;background:#f2b33d;box-sizing:border-box}.hfh-cell.moon:after{content:"";position:absolute;width:58%;height:58%;border:3px solid #000;border-radius:50%;background:#4d79b8;box-sizing:border-box}.hfh-cell.moon:before{content:"";position:absolute;z-index:1;left:44%;top:14%;width:42%;height:42%;border-radius:50%;background:inherit}.hfh-cell.bad:after{border-color:#d6402b;box-shadow:0 0 0 3px #d6402b}.hfh-sign{position:absolute;z-index:2;left:calc(var(--c) * (var(--cell) + 2px) - 10px);top:calc(var(--r) * (var(--cell) + 2px) - 10px);display:grid;place-items:center;width:18px;height:18px;border:2px solid #000;border-radius:50%;background:#fbf7ef;color:#1b1b1f;font:900 12px/1 system-ui,-apple-system,Segoe UI,sans-serif;pointer-events:none}.cgs{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:12px;container-type:size}.cgs-board{--cell: min(calc((100cqw - 24px) / var(--n)), calc((100cqh - 140px) / var(--n)), 72px);display:grid;grid-template-columns:repeat(var(--n),var(--cell));grid-auto-rows:var(--cell);border:4px solid #000;border-radius:6px;background:#fbf7ef}.cgs-board.done{box-shadow:0 0 0 4px #2bb3a3}.cgs-cell{position:relative;display:grid;place-items:center;box-sizing:border-box;border-top:1px solid #c9bfae;border-left:1px solid #c9bfae;cursor:pointer}.cgs-cell.et{border-top:3px solid #000}.cgs-cell.el{border-left:3px solid #000}.cgs-cell.fixed{background:#e8e0f0;cursor:default}.cgs-cell.at{background:#f3b94a}.cgs-num{color:#1b1b1f;font:800 calc(var(--cell) * .48) / 1 system-ui,-apple-system,"Segoe UI",sans-serif}.cgs-cell.clash .cgs-num{color:#d6402b}.cgs-label{position:absolute;left:3px;top:2px;color:#1b1b1f;font:800 calc(var(--cell) * .2) / 1 system-ui,-apple-system,"Segoe UI",sans-serif}.cgs-label.miss{color:#d6402b}.cgs-pad{display:flex;flex-wrap:wrap;justify-content:center;gap:6px}.cgs-key{width:48px;height:52px;border:0;border-radius:10px;background:#e8e0f0;color:#241f33;font:800 22px/1 system-ui,-apple-system,Segoe UI,sans-serif;cursor:pointer}.cgs-key.erase{background:#ffffff26;color:#fff}.ctg{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;gap:12px;padding:18px 16px;overflow-y:auto}.ctg-head{color:#ffffffb3;font:700 15px/1 system-ui,-apple-system,Segoe UI,sans-serif}.ctg-list{display:flex;flex-direction:column;gap:8px;width:min(100%,360px)}.ctg-word{padding:12px;border-radius:12px;background:#fbf7ef;color:#1b1b1f;font:900 20px/1 system-ui,-apple-system,Segoe UI,sans-serif;letter-spacing:.04em;text-align:center;animation:ctg-in .22s ease-out}.ctg-word.hidden{background:#ffffff14;color:#ffffff4d;animation:none}@keyframes ctg-in{0%{opacity:0;translate:0 6px}}.ctg-form{display:flex;gap:8px;width:min(100%,360px)}.ctg.miss .ctg-form{animation:ctg-shake .28s}@keyframes ctg-shake{25%{translate:-6px 0}75%{translate:6px 0}}.ctg-input{flex:1;min-width:0;height:48px;padding:0 12px;border:3px solid #000;border-radius:12px;background:#fff;color:#1b1b1f;font:700 17px/1 system-ui,-apple-system,Segoe UI,sans-serif}.ctg-go{flex:0 0 auto;width:auto;min-width:0;height:48px;padding:0 18px}.ctg-more{border:0;background:none;color:#f3b94a;font:800 14px/1 system-ui,-apple-system,Segoe UI,sans-serif;cursor:pointer}.ctg-more:disabled{opacity:.35;cursor:default}.ctg-status{max-width:360px;min-height:40px;color:#ffffffb3;font:600 14px/1.3 system-ui,-apple-system,Segoe UI,sans-serif;text-align:center}.ctg-answer{margin-top:4px;color:#fff;font:900 22px/1.2 system-ui,-apple-system,Segoe UI,sans-serif}.ctg-answer.got{color:#2bb3a3}.ctg-sub{color:#ffffffb3;font:700 14px/1.2 system-ui,-apple-system,Segoe UI,sans-serif}.dmh{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:12px;container-type:size}.dmh-grid{--cell: min(calc((100cqw - 24px - (var(--cols) - 1) * 6px) / var(--cols)), calc((100cqh - 150px - (var(--rows) - 1) * 6px) / var(--rows)), 58px);display:grid;grid-template-columns:repeat(var(--cols),var(--cell));grid-auto-rows:var(--cell);gap:6px}.dmh-grid.done .dmh-cell.on{background:#bfe8e2}.dmh-cell{position:relative;display:grid;place-items:center;border-radius:9px;background:#3a3446;color:#fbf7ef;font:900 calc(var(--cell) * .5) / 1 system-ui,-apple-system,"Segoe UI",sans-serif;cursor:pointer;user-select:none}.dmh-cell.on{background:#fbf7ef;color:#1b1b1f}.dmh-cell.twice{background:#f7c2b8}.dmh-cell.first{box-shadow:0 0 0 3px #f3b94a}.dmh-cell.jr{border-top-right-radius:0;border-bottom-right-radius:0}.dmh-cell.jl{border-top-left-radius:0;border-bottom-left-radius:0}.dmh-cell.jd{border-bottom-left-radius:0;border-bottom-right-radius:0}.dmh-cell.ju{border-top-left-radius:0;border-top-right-radius:0}.dmh-cell.jr:after,.dmh-cell.jd:after{content:"";position:absolute;background:inherit}.dmh-cell.jr:after{top:0;right:-6px;bottom:0;width:6px}.dmh-cell.jd:after{left:0;right:0;bottom:-6px;height:6px}.dmh-set{display:flex;flex-wrap:wrap;justify-content:center;gap:5px;max-width:380px}.dmh-chip{padding:3px 7px;border-radius:6px;background:#ffffff1a;color:#ffffffbf;font:800 12px/1 system-ui,-apple-system,Segoe UI,sans-serif}.dmh-chip.got{background:#2bb3a3;color:#1b1b1f}.dmh-chip.twice{background:#ef4444;color:#fff}.cfl{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:12px;container-type:size}.cfl-count{color:#fffc;font:800 17px/1 system-ui,-apple-system,Segoe UI,sans-serif}.cfl-count.low{color:#f3b94a}.cfl-board{--cell: min(calc((100cqw - 24px) / var(--n)), calc((100cqh - 150px) / var(--n)), 34px);display:grid;grid-template-columns:repeat(var(--n),var(--cell));grid-auto-rows:var(--cell);overflow:hidden;border:4px solid #000;border-radius:10px}.cfl-board.done{box-shadow:0 0 0 4px #fbf7ef}.cfl-cell{transition:background .16s}.cfl-cell.pop{animation:cfl-pop .26s ease-out}@keyframes cfl-pop{40%{filter:brightness(1.35)}}.cfl-pad{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}.cfl-pick{width:50px;height:50px;border:4px solid #000;border-radius:50%;background:var(--c);cursor:pointer}.cfl-pick:active{scale:.92}.ntr{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:12px;container-type:size}.ntr-status{color:#ffffffbf;font-size:14px}.ntr-board{--size: min( calc(100cqw - 24px) , calc(100cqh - 60px) , 460px);position:relative;display:grid;grid-template-columns:repeat(var(--n),1fr);width:var(--size);height:var(--size);overflow:hidden;border:4px solid #000;border-radius:10px;background:#fbf7ef;touch-action:none}.ntr-board.done{box-shadow:0 0 0 4px #2bb3a3}.ntr-cell{box-shadow:inset 0 0 0 1px #0000001a}.ntr-lines{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.ntr-fill{fill:#2bb3a3;opacity:.25}.ntr-trail{fill:none;stroke:#2bb3a3;stroke-width:.32;stroke-linecap:round;stroke-linejoin:round}.ntr-wall{stroke:#000;stroke-width:.12;stroke-linecap:round}.ntr-dot{fill:#1b1b1f}.ntr-dot.on{fill:#2bb3a3;stroke:#000;stroke-width:.06}.ntr-num{fill:#fff;font:900 .36px/1 system-ui,-apple-system,Segoe UI,sans-serif;text-anchor:middle}.stb{position:absolute;inset:0;overflow:hidden;background:#1b1726}.stb-canvas{display:block;touch-action:none}.stb-bar{position:absolute;z-index:3;left:8px;bottom:14px;display:flex;gap:10px}.stb-bar.top{inset:14px 8px auto auto;rotate:180deg}.stb-btn{width:88px;height:76px;border:4px solid #000;border-radius:18px;background:var(--seat);color:#000;font:900 16px/1 system-ui,-apple-system,Segoe UI,sans-serif;letter-spacing:.04em;touch-action:none;cursor:pointer}.stb-btn.throw{background:#fbf7ef}.stb-btn.on{filter:brightness(1.25);scale:.94}.play-area:has(.stb) .quit-btn{inset:auto auto 32px 200px;translate:none}.rmc{position:absolute;inset:0;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;align-items:center;padding:100px 12px;background:#2b211c;color:#fff}.rmc-place{display:flex;flex-direction:column;align-items:center;gap:6px}.rmc.two .rmc-place.far{rotate:180deg}.rmc-name{font-size:15px;font-weight:900;letter-spacing:.08em;color:var(--who)}.rmc-total{font-size:18px;font-weight:800}.rmc-chit{width:112px;height:100px;padding:6px;border:3px solid #000;border-radius:10px;display:grid;place-items:center;align-content:center;gap:2px;background:var(--who);color:#fff;cursor:pointer;font:inherit}.rmc-chit span{font-size:44px;font-weight:900}.rmc-chit.open{background:#fbf7ef;color:#1b1b1f}.rmc-chit svg{width:60px;height:48px}.rmc-chit b{font-size:13px;font-weight:900;letter-spacing:.06em}.rmc-chit i{font-size:12px;font-style:normal;font-weight:700;color:#6b6478}.rmc-chit.pickable{outline:4px dashed #fff;outline-offset:4px}.rmc-chit.picked{outline:4px solid #ffd76a;outline-offset:4px}.rmc-middle{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%}.rmc-middle .rmc-chit{width:92px;height:92px}.rmc-info{flex:1;display:flex;flex-direction:column;gap:14px;text-align:center;font-size:15px;line-height:1.35}.rmc-say b{color:#ffd76a}.rmc-say.far{display:none;rotate:180deg;order:-1}.rmc.two .rmc-say.far{display:block}.rmc-cover{position:absolute;inset:0;z-index:4;display:grid;place-content:center;justify-items:center;gap:12px;text-align:center;background:var(--who);color:#fff}.rmc-cover[hidden]{display:none}.rmc-cover.flip{rotate:180deg}.rmc-cover-title{font-size:28px;font-weight:900;letter-spacing:.05em;padding:0 20px}.rmc-cover-sub{font-size:15px;padding:0 24px}.rmc-peek{width:160px;height:150px;display:grid;place-items:center;align-content:center;gap:6px;border:3px dashed rgba(255,255,255,.6);border-radius:12px}.rmc-peek:not(:empty){border:3px solid #000;background:#fbf7ef;color:#1b1b1f}.rmc-peek svg{width:100px;height:80px}.rmc-peek b{font-size:18px;font-weight:900;letter-spacing:.06em}.rmc-hold{touch-action:none;user-select:none;-webkit-user-select:none}.rmc-done[hidden]{display:none}.play-area:has(.rmc) .quit-btn{inset:auto auto 14px 14px;translate:none}.tnt{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:12px;container-type:size}.tnt-rules{max-width:360px;color:#ffffffa6;font:600 12px/1.3 system-ui,-apple-system,Segoe UI,sans-serif;text-align:center}.tnt-frame{--cell: min(calc((100cqw - 40px) / (var(--n) + .8)), calc((100cqh - 110px) / (var(--n) + .8)), 52px);display:grid;grid-template-columns:calc(var(--cell) * .8) auto;grid-template-rows:calc(var(--cell) * .8) auto;gap:4px}.tnt-clues{display:grid;gap:2px}.tnt-clues.top{grid-template-columns:repeat(var(--n),var(--cell));padding:0 3px}.tnt-clues.left{grid-template-rows:repeat(var(--n),var(--cell));padding:3px 0}.tnt-clue{display:grid;place-items:center;color:#fff;cursor:pointer;font:800 calc(var(--cell) * .45) / 1 system-ui,-apple-system,"Segoe UI",sans-serif}.tnt-clue.met{color:#ffffff59}.tnt-clue.over{color:#ff6b5a}.tnt-board{display:grid;grid-template-columns:repeat(var(--n),var(--cell));grid-auto-rows:var(--cell);gap:2px;border:3px solid #000;border-radius:8px;background:#000;overflow:hidden}.tnt-board.done{box-shadow:0 0 0 4px #2bb3a3}.tnt-cell{display:grid;place-items:center;background:#fbf7ef;cursor:pointer}.tnt-cell svg{width:86%;height:86%}.tnt-cell.grass{background:#bfe3a5}.tnt-cell.bad{background:#f6c3bb}.utl{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:12px;container-type:size}.utl-rules{max-width:360px;color:#ffffffa6;font:600 12px/1.3 system-ui,-apple-system,Segoe UI,sans-serif;text-align:center}.utl-board{width:min(calc(100cqw - 24px),calc(100cqh - 100px),520px);aspect-ratio:1;border:3px solid #000;border-radius:12px;background:#fbf7ef;touch-action:none}.utl-board line{stroke:#1b1b1f;stroke-width:.9;stroke-linecap:round}.utl-board line.bad{stroke:#e2453c}.utl-board circle{fill:#4f9bff;stroke:#000;stroke-width:.8;cursor:grab}.utl-board circle.held{fill:#ffd76a}.utl-board.done{box-shadow:0 0 0 4px #2bb3a3}.utl-board.done line{stroke:#2bb3a3}.utl-status{color:#fffc;font:700 15px/1 system-ui,-apple-system,Segoe UI,sans-serif}.wtr{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:12px;container-type:size;font-family:system-ui,-apple-system,Segoe UI,sans-serif}.wtr-theme{display:flex;flex-direction:column;align-items:center;gap:2px;color:#fff;font-size:22px;font-weight:900}.wtr-theme small{font-size:11px;font-weight:800;letter-spacing:.14em;color:#ffffff8c}.wtr-slots{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;max-width:360px}.wtr-slot{display:flex;align-items:center;gap:3px;height:24px;padding:0 9px;border-radius:12px;background:#ffffff1f;color:#1b1b1f;font-size:12px;font-weight:800;letter-spacing:.06em}.wtr-slot i{width:7px;height:7px;border-radius:50%;background:#ffffff8c}.wtr-said{min-height:20px;color:#fff;font-size:16px;font-weight:800;letter-spacing:.08em}.wtr-said.good{color:#9be38a}.wtr-said.near{color:#ffd76a}.wtr-said.bad{color:#ff8a7a}.wtr-board{--cell: min(calc((100cqw - 24px) / var(--cols)), calc((100cqh - 170px) / var(--rows)), 60px);position:relative;display:grid;grid-template-columns:repeat(var(--cols),var(--cell));grid-auto-rows:var(--cell);touch-action:none;user-select:none;-webkit-user-select:none}.wtr-lines{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.wtr-lines polyline{fill:none;stroke-width:.3;stroke-linecap:round;stroke-linejoin:round}.wtr-cell{position:relative;display:grid;place-items:center;margin:calc(var(--cell) * .1);border-radius:50%;background:#fbf7ef;color:#1b1b1f;font-size:calc(var(--cell) * .42);font-weight:900;line-height:1}.wtr-cell.traced{background:#ffd76a}.wtr-cell.ringed{outline:3px dashed #ffd76a;outline-offset:2px}.wtr-board.done .wtr-cell{box-shadow:0 0 0 2px #000}.utt{position:absolute;inset:0;display:grid;place-items:center;container-type:size}.utt-big{--size: min( calc(100cqw - 16px) , calc(100cqh - 150px) );width:var(--size);height:var(--size);display:grid;grid-template:repeat(3,1fr) / repeat(3,1fr);gap:calc(var(--size) * .03);padding:calc(var(--size) * .02);box-sizing:border-box;border-radius:14px;background:#000}.utt-small{position:relative;display:grid;grid-template:repeat(3,1fr) / repeat(3,1fr);gap:2px;border-radius:6px;overflow:hidden;background:#8f8798;outline:4px solid var(--live, transparent)}.utt-cell{border:0;padding:0;display:grid;place-items:center;background:#fbf7ef;cursor:pointer}.utt-small:not(.live) .utt-cell{background:#cfc8bd;cursor:default}.utt-cell svg{width:80%;height:80%}.utt-cell.last{box-shadow:inset 0 0 0 3px #ffd76a}.utt-cover{position:absolute;inset:0;display:none;place-items:center;background:#fbf7ef99;pointer-events:none}.utt-cover.shown{display:grid}.utt-cover svg{width:84%;height:84%}.play-area:has(.utt) .quit-btn{top:auto;bottom:14px;right:50%;translate:50% 0}.ckr{position:absolute;inset:0;display:grid;place-items:center;padding:58px 8px 72px;container-type:size}.ckr-board{--b: min(100cqw, 100cqh, 560px);display:grid;grid-template:repeat(8,1fr) / repeat(8,1fr);width:var(--b);height:var(--b);border:3px solid #000;border-radius:6px;overflow:hidden}.ckr-board.thinking{cursor:progress}.ckr-sq{position:relative;display:grid;place-items:center}.ckr-sq.light{background:#efe6d6}.ckr-sq.dark{background:#7f6a9c;cursor:pointer}.ckr-sq.last{background:#9a7f6a}.ckr-sq.sel{background:#2bb3a6}.ckr-sq.must{box-shadow:inset 0 0 0 3px #ffd76a}.ckr-sq.to:after{content:"";position:absolute;width:30%;height:30%;border-radius:50%;background:#ffffffb3}.ckr-piece{width:100%;height:100%}.ckr-piece.gone{opacity:.35}.play-area:has(.ckr) .quit-btn{top:auto;bottom:14px;right:50%;translate:50% 0}.snd{position:absolute;inset:0;overflow:hidden;background:#18241f;touch-action:none}.snd-canvas{display:block}.play-area:has(.snd) .quit-btn{inset:auto auto 14px 14px;translate:none}.mdr{--cell: min( calc((100cqw - 24px)/5) , calc((100cqh - 110px) / (var(--rows) + 1)), 70px);position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:12px;container-type:size;font-family:system-ui,-apple-system,Segoe UI,sans-serif}.mdr-head{display:flex;align-items:center;justify-content:space-between;width:calc(var(--cell) * 5);min-height:44px}.mdr-combo{color:#ffd76a;font-size:20px;font-weight:900;letter-spacing:.04em;opacity:0}.mdr-combo.pop{animation:mdr-pop .9s ease forwards}@keyframes mdr-pop{0%{opacity:0;scale:.6}20%{opacity:1;scale:1.15}70%{opacity:1;scale:1}to{opacity:0;scale:1}}.mdr-next{display:flex;align-items:center;gap:8px;color:#fff9}.mdr-next small{font-size:11px;font-weight:800;letter-spacing:.12em}.mdr-board{position:relative;width:calc(var(--cell) * 5);height:calc(var(--cell) * (var(--rows) + 1));border:3px solid #000;border-radius:12px;background:#2a2440;overflow:hidden;touch-action:none}.mdr-lane{position:absolute;top:var(--cell);bottom:0;left:calc(var(--c) * var(--cell));width:var(--cell);border-left:1px solid rgba(255,255,255,.06)}.mdr-lane.aimed{background:#ffffff14}.mdr-tile{position:absolute;left:0;top:0;width:calc(var(--cell) - 8px);height:calc(var(--cell) - 8px);margin:4px;display:grid;place-items:center;box-sizing:border-box;border:3px solid #000;border-radius:10px;background:var(--tile);color:#1b1b1f;font-size:calc(var(--cell) * .38);font-weight:900;transform:translate(calc(var(--c) * var(--cell)),calc((var(--rows) - var(--r)) * var(--cell)));transition:transform .14s ease-in,opacity .14s}.mdr-tile[data-digits="3"]{font-size:calc(var(--cell) * .31)}.mdr-tile[data-digits="4"]{font-size:calc(var(--cell) * .25)}.mdr-tile.ghost{--r: var(--rows);opacity:.9;transition:transform 80ms}.mdr-tile.ghost[hidden]{display:none}.mdr-tile.gone{opacity:0}.mdr-tile.grow{animation:mdr-grow .24s ease}@keyframes mdr-grow{50%{scale:1.15}}.mdr-tile.small{position:static;width:42px;height:42px;margin:0;transform:none;font-size:15px}.tkb{position:absolute;inset:0;overflow:hidden;background:#211d2c;touch-action:none}.tkb-canvas{display:block}.tkb-fire{position:absolute;right:10px;bottom:26px;width:78px;height:78px;border:4px solid #000;border-radius:50%;background:var(--seat);color:#fff;font:900 16px/1 system-ui,-apple-system,Segoe UI,sans-serif;letter-spacing:.06em;box-shadow:0 5px #000;touch-action:none;cursor:pointer}.tkb-fire.on{translate:0 3px;box-shadow:0 2px #000}.tkb-fire.top{inset:26px auto auto 10px;rotate:180deg}.play-area:has(.tkb) .quit-btn{top:auto;bottom:14px;right:50%;translate:50% 0}.bfl{--cell: min(calc((100cqw - 24px) / var(--cols)), calc((100cqh - 90px) / var(--rows)), 60px);position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:12px;container-type:size}.bfl-status{color:#ffffffbf;font:700 14px/1 system-ui,-apple-system,Segoe UI,sans-serif}.bfl-board{position:relative;display:grid;grid-template-columns:repeat(var(--cols),var(--cell));grid-auto-rows:var(--cell);touch-action:none;user-select:none;-webkit-user-select:none}.bfl-cell{margin:3px;border:3px solid #000;border-radius:9px;background:#e6dccb;box-shadow:inset 0 -5px #0000002e;transition:background .12s}.bfl-cell.hole{visibility:hidden}.bfl-cell.filled{background:#43b0f1}.bfl-cell.start{background:#2b7fc0}.bfl-cell.end{background:#ffd76a}.bfl-line{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.bfl-line polyline{fill:none;stroke:#1b1b1f;stroke-width:.12;stroke-linecap:round;stroke-linejoin:round;opacity:.55}.bfl-board.done .bfl-cell:not(.hole){background:#2bb3a6}.ppg{position:absolute;inset:0;overflow:hidden;background:#1d2a3a;touch-action:none}.ppg-canvas{display:block}.play-area:has(.ppg) .quit-btn{inset:auto auto 14px 14px;translate:none}.sds{position:absolute;inset:0;overflow:hidden;background:#1f4d3a;color:#fff;font-family:system-ui,-apple-system,Segoe UI,sans-serif}.sds-seat{position:absolute;display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 10px;border-radius:10px;background:#00000047;font-size:12px;white-space:nowrap}.sds-seat b{font-size:13px;letter-spacing:.08em}.sds-seat.team b{color:#ffd76a}.sds-seat.lit{background:#ffd76a;color:#1b1b1f}.sds-seat.lit b{color:#1b1b1f}.sds-seat.north{top:104px;left:50%;translate:-50% 0}.sds-seat.west{top:176px;left:8px}.sds-seat.east{top:176px;right:8px}.sds-seat.south{top:462px;left:50%;translate:-50% 0}.sds-table{position:absolute;top:170px;left:50%;width:230px;height:240px;translate:-50% 0}.sds-slot{position:absolute;width:52px;height:74px}.sds-slot.north{top:0;left:50%;translate:-50% 0}.sds-slot.south{bottom:0;left:50%;translate:-50% 0}.sds-slot.west{left:0;top:50%;translate:0 -50%}.sds-slot.east{right:0;top:50%;translate:0 -50%}.sds-card{flex:0 0 52px;width:52px;height:74px;box-sizing:border-box;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:1px;padding:4px 0 0 5px;border:2px solid #000;border-radius:7px;background:#fbf7ef;color:#1b1b1f;box-shadow:0 2px #00000059;transition:translate .12s}.sds-card b{font-size:18px;font-weight:900;line-height:1;letter-spacing:-.04em}.sds-card i{font-size:20px;font-style:normal;line-height:1}.sds-card.red{color:#d6402b}.sds-card.won{box-shadow:0 0 0 4px #ffd76a}.sds-status{position:absolute;top:428px;left:0;right:0;text-align:center;font-size:15px;font-weight:800}.sds-hand{position:absolute;left:8px;right:8px;bottom:96px;height:84px;display:flex;justify-content:center;align-items:flex-end}.sds-hand .sds-card+.sds-card{margin-left:min(4px,calc((100% - 52px)/max(1,calc(var(--n) - 1)) - 52px))}.sds-hand .sds-card.can{translate:0 -10px;cursor:pointer}.sds-hand .sds-card.cannot{filter:brightness(.72)}.sds-panel{position:absolute;top:150px;left:12px;right:12px;display:flex;flex-direction:column;align-items:center;gap:10px;padding:16px;border:3px solid #000;border-radius:16px;background:#241f33}.sds-panel[hidden]{display:none}.sds-title{font-size:20px;font-weight:900}.sds-sub{font-size:13px;color:#ffffffbf;text-align:center}.sds-bids{display:grid;grid-template-columns:repeat(5,52px);gap:8px}.sds-bid{height:44px;border:2px solid #000;border-radius:10px;background:#fbf7ef;color:#1b1b1f;font:800 16px / 1 inherit;cursor:pointer}.sds-bid.guess{background:#ffd76a}.sds-line{display:grid;grid-template-columns:1fr auto;gap:2px 10px;width:100%;padding:8px 10px;border-radius:10px;background:#ffffff0f;font-size:13px}.sds-line b{grid-column:1 / -1;font-size:14px}.sds-line .up{color:#9be38a;font-weight:800}.sds-line .down{color:#ff8a7a;font-weight:800}.sds-line small{color:#fff9}.play-area:has(.sds) .quit-btn{inset:auto auto 14px 14px;translate:none}.tns{position:absolute;inset:0;overflow:hidden;background:#2e6b4a;touch-action:none}.tns-canvas{display:block}.tns-swing{position:absolute;right:10px;bottom:26px;width:78px;height:78px;border:4px solid #000;border-radius:50%;background:var(--seat);color:#fff;font:900 15px/1 system-ui,-apple-system,Segoe UI,sans-serif;letter-spacing:.04em;box-shadow:0 5px #000;touch-action:none;cursor:pointer}.tns-swing.on{translate:0 3px;box-shadow:0 2px #000}.tns-swing.top{inset:26px auto auto 10px;rotate:180deg}.tns-call{position:absolute;left:8px;top:36%;display:flex;flex-direction:column;gap:2px;padding:6px 10px;border-radius:10px;background:#00000073;color:#fff;font-family:system-ui,-apple-system,Segoe UI,sans-serif}.tns-call b{font-size:16px;font-weight:900}.tns-call small{font-size:11px;color:#ffffffb3}.crc{position:absolute;inset:0;overflow:hidden;background:#5b8c3a;touch-action:none}.crc-canvas{display:block}.crc-chomp{position:absolute;right:10px;bottom:26px;width:78px;height:78px;border:4px solid #000;border-radius:50%;background:var(--seat);color:#fff;font:900 14px/1 system-ui,-apple-system,Segoe UI,sans-serif;letter-spacing:.03em;box-shadow:0 5px #000;touch-action:none;cursor:pointer}.crc-chomp.on{translate:0 3px;box-shadow:0 2px #000}.crc-chomp.top{inset:26px auto auto 10px;rotate:180deg}.play-area:has(.crc) .quit-btn{inset:auto auto 14px 14px;translate:none}.rfx{position:absolute;inset:0;display:flex;flex-direction:column;font-family:system-ui,-apple-system,Segoe UI,sans-serif}.rfx-half{position:relative;flex:1;display:grid;place-items:center;background:color-mix(in srgb,var(--seat) 28%,#1b1726);touch-action:none;cursor:pointer;transition:background .15s}.rfx-half.won{background:color-mix(in srgb,var(--seat) 70%,#1b1726)}.rfx-half.top .rfx-note{rotate:180deg}.rfx-half.bot{cursor:default}.rfx-note{color:#fff;font-size:28px;font-weight:900;letter-spacing:.03em}.rfx-lamp{position:absolute;top:50%;left:50%;translate:-50% -50%;width:176px;height:176px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border:6px solid #000;border-radius:50%;background:#3a3346;box-shadow:0 6px #000;pointer-events:none;text-align:center}.rfx-lamp.wait{background:#e2453c}.rfx-lamp.decoy{background:#f2c94c}.rfx-lamp.go{background:#2fb866}.rfx-lamp b{color:#fff;font-size:24px;font-weight:900;letter-spacing:.06em;padding:0 12px}.rfx-lamp.done b{font-size:17px}.rfx-lamp.decoy b{color:#1b1b1f}.rfx-lamp b.flip{rotate:180deg}.rfx.one .rfx-lamp b.flip{display:none}.slc{position:absolute;inset:0;overflow:hidden;background:#3d7a4a;touch-action:none}.slc-canvas{display:block}.tgp{position:absolute;inset:0;overflow:hidden;background:#2a2140;touch-action:none}.tgp-canvas{display:block}.tgp-fire{position:absolute;right:10px;bottom:26px;width:78px;height:78px;border:4px solid #000;border-radius:50%;background:var(--seat);color:#fff;font:900 16px/1 system-ui,-apple-system,Segoe UI,sans-serif;letter-spacing:.06em;box-shadow:0 5px #000;touch-action:none;cursor:pointer}.tgp-fire.on{translate:0 3px;box-shadow:0 2px #000}.tgp-fire.top{inset:26px auto auto 10px;rotate:180deg}.play-area:has(.tgp) .quit-btn{inset:auto auto 14px 14px;translate:none}.arm{position:absolute;inset:0;overflow:hidden;background:#2f5a35;touch-action:none}.arm-canvas{display:block}.cbk{--p: 36px;position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:10px;font-family:system-ui,-apple-system,Segoe UI,sans-serif}.cbk-rows{display:flex;flex-direction:column;gap:3px}.cbk-row{display:flex;align-items:center;gap:6px;padding:3px 8px;border-radius:10px;background:#ffffff0d}.cbk-n{width:18px;color:#ffffff80;font-size:12px;font-weight:800;text-align:right}.cbk-peg{width:var(--p);height:var(--p);box-sizing:border-box;display:grid;place-items:center;padding:0;border:3px solid #000;border-radius:50%;background:var(--peg);color:#0000008c;font-size:calc(var(--p) * .45);line-height:1;cursor:pointer}.cbk-peg.small{width:calc(var(--p) * .62);height:calc(var(--p) * .62);border-width:2px;font-size:calc(var(--p) * .3);cursor:default}.cbk-peg.empty{background:#ffffff14;border-color:#ffffff40}.cbk-peg.hinted{box-shadow:0 0 0 3px #ffd76a}.cbk-dots{display:grid;grid-template-columns:repeat(3,8px);gap:3px;width:30px;margin-left:4px}.cbk-dots i{width:8px;height:8px;box-sizing:border-box;border-radius:50%}.cbk-dots i.exact{background:#fbf7ef}.cbk-dots i.near{border:2px solid #fbf7ef}.cbk-now{display:flex;align-items:center;gap:12px}.cbk-slots{display:flex;gap:8px}.cbk-check{min-width:0;padding:10px 16px;font-size:15px}.cbk-check:disabled{opacity:.4}.cbk-palette{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;max-width:370px}.cdy{position:absolute;inset:0;overflow:hidden;background:#3a2a4a;touch-action:none}.cdy-canvas{display:block}.edw{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:12px;color:#fff;font-family:system-ui,-apple-system,Segoe UI,sans-serif}.edw-par{font-size:13px;color:#ffffffa6}.edw-chain{min-height:20px;max-width:360px;font-size:15px;font-weight:800;letter-spacing:.04em;text-align:center}.edw-word{min-height:34px;font-size:28px;font-weight:900;letter-spacing:.1em}.edw-box{position:relative;width:min(290px,calc(100vw - 70px));aspect-ratio:1}.edw-box:before{content:"";position:absolute;inset:4%;border:4px solid #fbf7ef;border-radius:6px}.edw.done .edw-box:before{border-color:#2bb3a6}.edw-lines{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}.edw-lines polyline{fill:none;stroke-linecap:round;stroke-linejoin:round}.edw-lines polyline.played{stroke:#ffd76a73;stroke-width:1.4}.edw-lines polyline.making{stroke:#ffd76a;stroke-width:2.2}.edw-letter{position:absolute;width:46px;height:46px;translate:-50% -50%;display:grid;place-items:center;padding:0;border:3px solid #000;border-radius:50%;background:#fbf7ef;color:#1b1b1f;font:900 20px/1 system-ui,-apple-system,Segoe UI,sans-serif;cursor:pointer}.edw-letter.s0{left:calc(25% + var(--k) * 25%);top:4%}.edw-letter.s1{left:96%;top:calc(25% + var(--k) * 25%)}.edw-letter.s2{left:calc(75% - var(--k) * 25%);top:96%}.edw-letter.s3{left:4%;top:calc(75% - var(--k) * 25%)}.edw-letter.used{background:#cfe9c5}.edw-letter.now{background:#ffd76a}.edw-letter.last{box-shadow:0 0 0 4px #fbf7ef}.edw-keys{display:flex;gap:12px}.edw-key{min-width:0;padding:12px 20px;font-size:16px}.edw-key:not(.btn-play){background:#4a4258}.flt{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:12px;container-type:size}.flt-status{color:#fffc;font:800 15px/1 system-ui,-apple-system,Segoe UI,sans-serif}.flt-board{--cell: min(calc((100cqw - 24px) / var(--n)), calc((100cqh - 80px) / var(--n)), 76px);display:grid;grid-template-columns:repeat(var(--n),var(--cell));grid-auto-rows:var(--cell);gap:6px;perspective:700px}.flt-tile{position:relative;padding:0;border:0;background:none;cursor:pointer;transform-style:preserve-3d;transition:transform .26s ease}.flt-tile.down{transform:rotateY(180deg)}.flt-tile span{position:absolute;inset:0;border:3px solid #000;border-radius:12px;backface-visibility:hidden}.flt-tile .sun{background:radial-gradient(circle,#ff9f2e 0 24%,transparent 25%),#ffd76a}.flt-tile .moon{background:radial-gradient(circle at 58% 42%,#2c3a6b 0 20%,transparent 21%),radial-gradient(circle at 48% 50%,#e9e4da 0 26%,transparent 27%),#2c3a6b;transform:rotateY(180deg)}.flt-tile.hinted span{box-shadow:0 0 0 4px #fbf7ef}.flt-board.done .sun{box-shadow:0 0 14px #ffd76a}.hrt{position:absolute;inset:0;overflow:hidden;background:#4a1f2e;color:#fff;font-family:system-ui,-apple-system,Segoe UI,sans-serif}.hrt-seat{position:absolute;display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 10px;border-radius:10px;background:#00000047;font-size:12px;white-space:nowrap}.hrt-seat b{font-size:13px;letter-spacing:.08em}.hrt-seat.lit{background:#ffd76a;color:#1b1b1f}.hrt-seat.north{top:104px;left:50%;translate:-50% 0}.hrt-seat.west{top:176px;left:8px}.hrt-seat.east{top:176px;right:8px}.hrt-seat.south{top:462px;left:50%;translate:-50% 0}.hrt-table{position:absolute;top:170px;left:50%;width:230px;height:240px;translate:-50% 0}.hrt-slot{position:absolute;width:52px;height:74px}.hrt-slot.north{top:0;left:50%;translate:-50% 0}.hrt-slot.south{bottom:0;left:50%;translate:-50% 0}.hrt-slot.west{left:0;top:50%;translate:0 -50%}.hrt-slot.east{right:0;top:50%;translate:0 -50%}.hrt-card{flex:0 0 52px;width:52px;height:74px;box-sizing:border-box;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:1px;padding:4px 0 0 5px;border:2px solid #000;border-radius:7px;background:#fbf7ef;color:#1b1b1f;box-shadow:0 2px #00000059;transition:translate .12s}.hrt-card b{font-size:18px;font-weight:900;line-height:1;letter-spacing:-.04em}.hrt-card i{font-size:20px;font-style:normal;line-height:1}.hrt-card.red{color:#d6402b}.hrt-card.won{box-shadow:0 0 0 4px #ffd76a}.hrt-status{position:absolute;top:428px;left:12px;right:12px;text-align:center;font-size:15px;font-weight:800}.hrt-pass{position:absolute;bottom:196px;left:50%;translate:-50% 0;min-width:0;padding:10px 22px;font-size:16px}.hrt-pass[hidden]{display:none}.hrt-pass:disabled{opacity:.45}.hrt-hand{position:absolute;left:8px;right:8px;bottom:96px;height:84px;display:flex;justify-content:center;align-items:flex-end}.hrt-hand .hrt-card+.hrt-card{margin-left:min(4px,calc((100% - 52px)/max(1,calc(var(--n) - 1)) - 52px))}.hrt-hand .hrt-card.can{translate:0 -10px;cursor:pointer}.hrt-hand .hrt-card.cannot{filter:brightness(.72)}.hrt-hand .hrt-card.picked{translate:0 -14px;box-shadow:0 0 0 3px #ffd76a}.hrt-panel{position:absolute;top:150px;left:12px;right:12px;display:flex;flex-direction:column;align-items:stretch;gap:8px;padding:16px;border:3px solid #000;border-radius:16px;background:#241f33}.hrt-panel[hidden]{display:none}.hrt-panel .btn{align-self:center}.hrt-title{font-size:20px;font-weight:900;text-align:center}.hrt-line{display:grid;grid-template-columns:1fr auto 52px;gap:10px;padding:8px 12px;border-radius:10px;background:#ffffff0f;font-size:15px}.hrt-line span:last-child{text-align:right;font-weight:900}.hrt-line.low{background:#9be38a2e}.play-area:has(.hrt) .quit-btn{inset:auto auto 14px 14px;translate:none}.ljr{position:absolute;inset:0;overflow:hidden;background:#bfe3f2;touch-action:none}.ljr-canvas{display:block}.mgr{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:12px;color:#fff;font-family:system-ui,-apple-system,Segoe UI,sans-serif}.mgr-rules{font-size:12px;color:#ffffffa6}.mgr-grid{--c: min(48px, calc((100vw - 40px) / 7));display:grid;grid-template-columns:repeat(7,var(--c));grid-auto-rows:var(--c);gap:4px}.mgr-num,.mgr-op,.mgr-ans{display:grid;place-items:center;font-weight:900;font-size:calc(var(--c) * .46)}.mgr-num{border:3px solid #000;border-radius:9px;background:#fbf7ef;color:#1b1b1f}.mgr-num.gap{background:#e8e0f0;cursor:pointer}.mgr-num.placed{background:#ffd76a}.mgr-num.selected{box-shadow:0 0 0 3px #2bb3a6}.mgr-op{color:#ffffffd9}.mgr-ans{border-radius:9px;background:#ffffff1f}.mgr-ans.wrong{background:#e2453c}.mgr-grid.done .mgr-num{background:#9be38a}.mgr-tray{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;max-width:360px;min-height:52px}.mgr-tile{width:50px;height:50px;border:3px solid #000;border-radius:10px;background:#ffd76a;color:#1b1b1f;font:900 22px/1 system-ui,-apple-system,Segoe UI,sans-serif;cursor:pointer}.mgr-tile.used{opacity:.25;cursor:default}.mzr{position:absolute;inset:0;overflow:hidden;background:#2c3a5a;touch-action:none}.mzr-canvas{display:block}.play-area:has(.mzr) .quit-btn{inset:auto auto 14px 14px;translate:none}.npt{position:absolute;inset:0;overflow-y:auto;background:#26324d;color:#fff;font-family:system-ui,-apple-system,Segoe UI,sans-serif}.npt-cover{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;gap:14px;padding:24px;text-align:center;background:var(--who)}.npt-cover-title{font-size:34px;font-weight:900}.npt-cover-sub{max-width:300px;font-size:16px;font-weight:600;line-height:1.35}.npt-start{margin-top:10px}.npt-round{font-size:13px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#ffffffbf}.npt-panel{display:flex;flex-direction:column;align-items:center;gap:10px;width:min(100% - 32px,330px);margin:0 auto;padding:100px 0 110px}.npt-head{display:flex;flex-direction:column;align-items:center;gap:6px}.npt-letter{display:grid;place-items:center;width:64px;height:64px;border:4px solid #000;border-radius:16px;background:#ffd76a;color:#1b1b1f;font-size:40px;font-weight:900}.npt-timer{width:100%;height:8px;border-radius:4px;overflow:hidden;background:#ffffff26}.npt-timer-bar{height:100%;background:var(--who);transition:width .2s linear}.npt-timer-bar.low{background:#ffd76a}.npt-who{font-size:15px;font-weight:800;color:var(--who)}.npt-row{display:flex;align-items:center;gap:8px;width:100%}.npt-tag{flex:0 0 64px;font-size:13px;font-weight:800;text-transform:uppercase;color:#fffc}.npt-input{flex:1;min-width:0;height:46px;padding:0 12px;border:3px solid #000;border-radius:12px;background:#fff;color:#1b1b1f;font:700 17px/1 system-ui,-apple-system,Segoe UI,sans-serif}.npt-input:focus{outline:3px solid var(--who);outline-offset:1px}.npt-done,.npt-next{margin-top:6px}.npt-table{display:grid;grid-template-columns:64px 1fr 1fr;gap:6px;width:100%;align-items:center}.npt-col{font-size:14px;font-weight:900;text-align:center}.npt-cell{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:0;height:52px;padding:4px 6px;border:3px solid #000;border-radius:12px;background:#fbf7ef;color:#1b1b1f;font:inherit;cursor:pointer}.npt-answer{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:800}.npt-pts{font-size:12px;font-weight:800;color:#2b7a3a}.npt-cell.unknown{background:#fff1c9}.npt-cell.unknown .npt-pts{color:#8a5d00}.npt-cell.out{border-color:transparent;background:#ffffff1f;color:#ffffff8c;cursor:default}.npt-cell.out .npt-pts{color:#ff9b8f}.npt-cell.struck{background:#d9d4cb}.npt-cell.struck .npt-answer{text-decoration:line-through;opacity:.6}.npt-cell.struck .npt-pts{color:#b3261e}.npt-sum{font-size:18px;font-weight:900;text-align:center}.npt-hint{font-size:12px;text-align:center;color:#ffffffa6}.play-area:has(.npt) .quit-btn{inset:auto auto 14px 14px;translate:none}.pch{--cell: min( calc((100cqw - 24px)/5) , calc((100cqh - 100px) / 7), 72px);position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:12px;container-type:size;color:#fff;font-family:system-ui,-apple-system,Segoe UI,sans-serif}.pch-head{display:flex;align-items:center;justify-content:space-between;width:calc(var(--cell) * 5);min-height:46px}.pch-goal{display:flex;align-items:center;gap:8px;color:#ffffffb3}.pch-goal small{font-size:11px;font-weight:800;letter-spacing:.12em}.pch-sum{padding:6px 12px;border:3px solid #000;border-radius:999px;background:var(--tile);color:#1b1b1f;font-size:18px;font-weight:900}.pch-sum[hidden]{display:none}.pch-count{font-size:14px;font-weight:800;color:#fffc}.pch-count.low{color:#ffd76a}.pch-board{position:relative;width:calc(var(--cell) * 5);height:calc(var(--cell) * 7);border:3px solid #000;border-radius:12px;background:#2a2440;overflow:hidden;isolation:isolate;touch-action:none}.pch-line{position:absolute;inset:0;z-index:1;width:100%;height:100%;pointer-events:none}.pch-line polyline{fill:none;stroke:#ffffffd9;stroke-width:.14;stroke-linecap:round;stroke-linejoin:round}.pch-tile{position:absolute;left:0;top:0;width:calc(var(--cell) - 10px);height:calc(var(--cell) - 10px);margin:5px;display:grid;place-items:center;box-sizing:border-box;border:3px solid #000;border-radius:50%;background:var(--tile);color:#1b1b1f;font-size:calc(var(--cell) * .36);font-weight:900;transition:transform .18s ease-in,opacity .16s,scale .12s}.pch-tile[data-digits="3"]{font-size:calc(var(--cell) * .29)}.pch-tile[data-digits="4"]{font-size:calc(var(--cell) * .24)}.pch-tile.on{scale:1.12;box-shadow:0 0 0 3px #fff}.pch-tile.gone{opacity:0}.pch-tile.grow{animation:pch-grow .26s ease}@keyframes pch-grow{50%{scale:1.2}}.pch-tile.small{position:static;width:44px;height:44px;margin:0;font-size:15px;transition:none}.pch-board.done .pch-tile{opacity:.5}.pgs{--cell: min(calc((100cqw - 24px) / 7), calc((100cqh - 100px) / 7), 54px);position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:12px;container-type:size;color:#fff;font-family:system-ui,-apple-system,Segoe UI,sans-serif}.pgs-head{display:flex;align-items:baseline;justify-content:space-between;width:calc(var(--cell) * 7)}.pgs-goal{font-size:16px;font-weight:900}.pgs-count{font-size:14px;font-weight:800;color:#ffffffbf}.pgs-board{position:relative;width:calc(var(--cell) * 7);height:calc(var(--cell) * 7);touch-action:none}.pgs-wood{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.pgs-wood path{fill:#d39a5c;stroke:#000;stroke-width:.07;stroke-linejoin:round}.pgs-holes circle{fill:#6b4423}.pgs-mark,.pgs-peg{position:absolute;left:0;top:0;width:var(--cell);height:var(--cell);display:grid;place-items:center}.pgs-mark:after{content:"";width:46%;height:46%;border-radius:50%}.pgs-mark.land:after{box-shadow:0 0 0 4px #fff}.pgs-mark.hint:after{box-shadow:0 0 0 4px #ffd76a;animation:pgs-pulse .9s ease-in-out infinite}@keyframes pgs-pulse{50%{scale:1.25}}.pgs-peg{transition:transform .17s ease-out,opacity .2s,scale .12s;pointer-events:none}.pgs-peg:after{content:"";width:68%;height:68%;box-sizing:border-box;border:3px solid #000;border-radius:50%;background:radial-gradient(circle at 35% 32%,rgba(255,255,255,.55) 0 14%,transparent 15%),#2bb3a6}.pgs-peg.picked{scale:1.12}.pgs-peg.picked:after{background:radial-gradient(circle at 35% 32%,rgba(255,255,255,.55) 0 14%,transparent 15%),#ffd76a}.pgs-peg.gone{opacity:0;scale:.4}.pgs-board.done .pgs-peg:after{background:#9be38a}.pnk{position:absolute;inset:0;overflow:hidden;background:#2f8a3e;touch-action:none}.pnk-canvas{display:block}.pnb{position:absolute;inset:0;overflow:hidden;background:#1d2440;touch-action:none}.pnb-canvas{display:block}.play-area:has(.pnb) .score-pill{pointer-events:none}.play-area:has(.ludo) .quit-btn,.play-area:has(.wb) .quit-btn,.play-area:has(.yz) .quit-btn,.play-area:has(.ch) .quit-btn,.play-area:has(.pool) .quit-btn,.play-area:has(.cr) .quit-btn,.play-area:has(.bg) .quit-btn,.play-area:has(.fsd) .quit-btn,.play-area:has(.tcl) .quit-btn,.play-area:has(.ee-solo) .quit-btn{top:auto;bottom:14px;right:50%;translate:50% 0}.header-gap{flex:1}.set-list{flex:1;overflow-y:auto;padding:0 16px 16px;display:grid;gap:8px;align-content:start}.set-row{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow)}.set-label{flex:1;font-size:15px}.set-heading{margin-top:10px;font-size:11px;letter-spacing:.14em;color:var(--quiet);text-transform:uppercase}.set-note{color:var(--quiet);font-size:13px;font-weight:500;padding:0 4px}.set-switch{width:52px;height:30px;flex:0 0 auto;border:0;border-radius:999px;background:#7b88a159;position:relative;cursor:pointer;transition:background-color .16s ease}.set-switch:after{content:"";position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #0000004d;transition:translate .16s ease}.set-switch.on{background:#2b9d3a}.set-switch.on:after{translate:22px 0}.fav{position:absolute;top:6px;left:6px;width:32px;height:32px;border:0;border-radius:50%;background:#00000059;color:#fff;font-size:17px;line-height:1;cursor:pointer;padding:0}.fav.on{color:var(--yellow)}.stats{display:flex;justify-content:center;gap:10px;padding:0 16px}.stats-cell{flex:1;max-width:120px;padding:10px 6px;text-align:center;border-radius:14px;background:var(--card);box-shadow:var(--shadow)}.stats-value{font-size:22px}.stats-label{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--quiet);font-weight:500;margin-top:2px}
