:root,[data-theme=classic]{--bg-1:#0d1a24;--bg-2:#05090f;--mat-1:#12735a;--mat-2:#0a4536;--mat-rim:#78ffd229;--tile-face:#fbf7ee;--tile-face-2:#efe6d2;--tile-edge:#e2d6bb;--tile-back:#1aa37a;--tile-back-2:#0d6b4f;--ink-red:#d81f3a;--ink-green:#0f8a5a;--ink-blue:#1d3f9a;--ink-black:#16161d;--glyph-font:"Noto Serif TC", "Songti TC", "PMingLiU", serif;--glow:none;--accent:#ffb547;--accent-2:#ff6b6b;--accent-ink:#1f1300}[data-theme=jade]{--bg-1:#1a0f12;--bg-2:#070305;--mat-1:#6a1f2b;--mat-2:#3a0d16;--mat-rim:#ffd27833;--tile-face:#239a74;--tile-face-2:#0f5d47;--tile-edge:#0b4636;--tile-back:#e0b54d;--tile-back-2:#9a7420;--ink-red:#ffd877;--ink-green:#fff0bf;--ink-blue:#f2c95e;--ink-black:#fff6d8;--glow:drop-shadow(0 0 1px #ffdc78b3);--accent:#f2c95e;--accent-2:#e07a3a}[data-theme=ink]{--bg-1:#1b1916;--bg-2:#0a0908;--mat-1:#4b4239;--mat-2:#2a241f;--mat-rim:#fff0dc1f;--tile-face:#f5f0e4;--tile-face-2:#e6ddca;--tile-edge:#d6cbb5;--tile-back:#2e2e2e;--tile-back-2:#121212;--ink-red:#c0352c;--ink-green:#2b2b2b;--ink-blue:#1e1e1e;--ink-black:#111;--glyph-font:"Noto Serif TC", "KaiTi", "STKaiti", serif;--accent:#e2563f;--accent-2:#b8322a;--accent-ink:#fff}[data-theme=pastel]{--bg-1:#2a2140;--bg-2:#120d1e;--mat-1:#b79be6;--mat-2:#8468c2;--mat-rim:#ffffff4d;--tile-face:#fffaf6;--tile-face-2:#f9ebe2;--tile-edge:#f2d6df;--tile-back:#ff9ec0;--tile-back-2:#e7729c;--ink-red:#f06a98;--ink-green:#5fb48d;--ink-blue:#6c95e0;--ink-black:#8a62c4;--accent:#ffd27a;--accent-2:#ff9ec0}[data-theme=neon]{--bg-1:#0a0b14;--bg-2:#020205;--mat-1:#161830;--mat-2:#08091a;--mat-rim:#ff3fb473;--tile-face:#1c1d2b;--tile-face-2:#121320;--tile-edge:#2a2c40;--tile-back:#ff3fb4;--tile-back-2:#8a1563;--ink-red:#ff3fb4;--ink-green:#39ffb0;--ink-blue:#2ff3ff;--ink-black:#ffb52e;--glow:drop-shadow(0 0 2px currentColor) drop-shadow(0 0 5px #ff3fb48c);--accent:#2ff3ff;--accent-2:#ff3fb4;--accent-ink:#04121a}:root{--text:#f3f5f8;--muted:#9aa6b8;--glass:#ffffff0f;--glass-strong:#0e121cb8;--line:#ffffff1a;--radius:18px;--win:#ff4d6d;--display:"Outfit", "Inter", system-ui, sans-serif;--grad:linear-gradient(135deg, var(--accent) 0%, var(--accent-2) 100%);--shadow:0 18px 40px #00000073}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:radial-gradient(1200px 700px at 50% -10%, color-mix(in srgb, var(--mat-1) 35%, transparent), transparent 70%), radial-gradient(ellipse at center, var(--bg-1) 0%, var(--bg-2) 100%);color:var(--text);-webkit-font-smoothing:antialiased;background-attachment:fixed;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;overflow-x:hidden}button,input,select{font:inherit;color:inherit}h1,h2,.display{font-family:var(--display);letter-spacing:-.01em}.zh{font-family:var(--glyph-font);opacity:.85}kbd{min-width:1.5em;font-size:.7em;font-family:var(--display);opacity:.85;background:#00000040;border-radius:6px;place-items:center;margin-left:.35em;padding:.05em .4em;font-weight:600;display:inline-grid;box-shadow:inset 0 -1px #ffffff26}.neg{color:#ff8fa3}.pos{color:#7ef0b5}.btn{border:1px solid var(--line);background:var(--glass);cursor:pointer;white-space:nowrap;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:999px;align-items:center;gap:.4em;padding:.6em 1em;font-weight:600;transition:background .15s,transform .12s,box-shadow .2s;display:inline-flex}.btn:hover{background:#ffffff1f;transform:translateY(-1px)}.btn:active{transform:translateY(1px)scale(.98)}.btn:focus-visible,.tile-clickable:focus-visible,.seg button:focus-visible,.theme-card:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.btn-primary{background:var(--grad);color:var(--accent-ink);box-shadow:0 8px 24px color-mix(in srgb, var(--accent) 35%, transparent);border-color:#0000;font-weight:700}.btn-primary:hover{background:var(--grad);filter:brightness(1.06)}.btn-win{color:#fff;background:linear-gradient(135deg,#ff4d6d,#ff8a3d);border-color:#0000;font-weight:800;animation:1s ease-in-out infinite pulse;box-shadow:0 0 #ff4d6d99}.btn-ghost{-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0}.btn-small{padding:.35em .8em;font-size:.82rem}.btn-big{padding:.85em 1.6em;font-size:1.1rem}@keyframes pulse{50%{box-shadow:0 0 0 8px #ff4d6d00}}.tile{--w:44px;--depth:calc(var(--w) * .12);width:var(--w);height:calc(var(--w) * 1.34);margin-bottom:var(--depth);border-radius:calc(var(--w) * .16);background:linear-gradient(160deg, #ffffff8c 0%, #fff0 38%), linear-gradient(180deg, var(--tile-face) 0%, var(--tile-face-2) 100%);box-shadow:inset 0 -2px 0 #0000000f, 0 calc(var(--depth) * .35) 0 var(--tile-edge), 0 var(--depth) 0 var(--tile-back), 0 calc(var(--depth) + 1px) 0 var(--tile-back-2), 0 calc(var(--depth) + 6px) 10px #00000059;-webkit-user-select:none;user-select:none;border:none;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex;position:relative}.tile-svg{width:86%;height:86%;filter:var(--glow)}.tile-glyph{font-family:var(--glyph-font)}.tile-art{object-fit:contain;border-radius:inherit;pointer-events:none;width:100%;height:100%}.tile-index{top:calc(var(--w) * .04);left:calc(var(--w) * .08);font-family:var(--display);font-size:calc(var(--w) * .22);color:var(--ink-blue);opacity:.6;font-weight:700;line-height:1;position:absolute}.tile-tell{right:calc(var(--w) * .06);bottom:calc(var(--w) * .06);width:calc(var(--w) * .15);height:calc(var(--w) * .15);background:var(--grad);box-shadow:0 0 6px var(--accent);border-radius:50%;position:absolute}.tile-down{background:linear-gradient(160deg, #ffffff4d 0%, #fff0 45%), linear-gradient(180deg, var(--tile-back) 0%, var(--tile-back-2) 100%);box-shadow:inset 0 1px 0 #ffffff59, 0 calc(var(--depth) * .6) 0 var(--tile-back-2), 0 var(--depth) 0 var(--tile-face-2), 0 calc(var(--depth) + 5px) 8px #00000059}.tile-back-pattern{border-radius:calc(var(--w) * .1);background:radial-gradient(circle,#ffffff2e 0 18%,#0000 19%);border:1.5px solid #ffffff38;position:absolute;inset:16%}.tile-hand{--w:clamp(36px, 4.8vw, 64px)}.tile-meld{--w:clamp(28px, 3vw, 44px)}.tile-pond{--w:clamp(24px, 2.5vw, 36px)}.tile-mini{--w:clamp(18px, 1.8vw, 26px)}.tile-back{--w:clamp(12px, 1.45vw, 19px)}.tile-clickable{cursor:pointer;transition:transform .18s cubic-bezier(.3,1.5,.5,1)}.tile-clickable:hover{transform:translateY(-6px)}.tile-selected{box-shadow:inset 0 -2px 0 #0000000f, 0 calc(var(--depth) * .35) 0 var(--tile-edge), 0 var(--depth) 0 var(--tile-back), 0 0 0 3px var(--accent), 0 0 22px color-mix(in srgb, var(--accent) 60%, transparent), 0 18px 18px #0006;transform:translateY(-16px)!important}.tile-highlight{box-shadow:inset 0 -2px 0 #0000000f, 0 calc(var(--depth) * .35) 0 var(--tile-edge), 0 var(--depth) 0 var(--tile-back), 0 0 0 2px var(--accent), 0 0 14px color-mix(in srgb, var(--accent) 55%, transparent)}.tile-dim{opacity:.3;filter:saturate(.4)}.pond .tile:last-child{animation:.32s cubic-bezier(.2,1.4,.4,1) drop}@keyframes drop{0%{opacity:0;transform:translateY(-22px)scale(1.25)rotate(-6deg)}}.flip-in>.tile,.flip-in>.drawn-gap>.tile{animation:.45s cubic-bezier(.3,1.3,.5,1) both flip}@keyframes flip{0%{opacity:0;transform:rotateY(90deg)translateY(10px)}}.table{flex-direction:column;height:100dvh;display:flex;position:relative;overflow:hidden}.table-bar{color:var(--muted);align-items:center;gap:1rem;padding:.5rem 1rem;font-size:.85rem;display:flex}.round-info strong{color:var(--text);font-family:var(--display);font-weight:700}.watch-chip{background:var(--grad);color:var(--accent-ink);border-radius:999px;margin-left:auto;padding:.2em .8em;font-weight:700}.table-grid{flex:1;grid-template:"top top top""left mid right"minmax(0,1fr)"bottom bottom bottom"/minmax(170px,1.2fr) minmax(0,3fr) minmax(170px,1.2fr);gap:.6rem;min-height:0;padding:0 1rem .75rem;display:grid}.area-top{grid-area:top;justify-content:center;display:flex}.area-left{grid-area:left;align-items:center;display:flex}.area-right{grid-area:right;justify-content:flex-end;align-items:center;display:flex}.area-mid{background:radial-gradient(ellipse at 50% 40%, #ffffff1a, transparent 60%), radial-gradient(ellipse at center, var(--mat-1) 0%, var(--mat-2) 100%);min-height:0;box-shadow:inset 0 0 0 1px var(--mat-rim), inset 0 20px 60px #00000059, inset 0 -10px 40px #00000040, 0 20px 50px #00000059;border-radius:28px;grid-area:mid;justify-content:center;align-items:center;padding:.75rem;display:flex}.area-bottom{grid-area:bottom;justify-content:center;display:flex}.seat{background:var(--glass-strong);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);max-width:100%;padding:.55rem .7rem .6rem;transition:box-shadow .25s;position:relative}.seat-active:before{content:"";border-radius:calc(var(--radius) + 2px);background:conic-gradient(from var(--spin,0deg), var(--accent), var(--accent-2), transparent 60%, var(--accent));-webkit-mask-composite:xor;pointer-events:none;padding:2px;animation:2.4s linear infinite spin;position:absolute;inset:-2px;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.seat-active{box-shadow:var(--shadow), 0 0 30px color-mix(in srgb, var(--accent) 25%, transparent)}@property --spin{syntax:"<angle>";inherits:false;initial-value:0deg}@keyframes spin{to{--spin:360deg}}.seat-tag{align-items:center;gap:.55rem;margin-bottom:.45rem;display:flex}.seat-id{flex-direction:column;flex:0 auto;min-width:0;line-height:1.2;display:flex}.seat-name{font-family:var(--display);white-space:nowrap;align-items:center;gap:.35rem;font-size:.92rem;font-weight:700;display:inline-flex}.seat-level{color:var(--muted);font-size:.72rem}.seat-meta{align-items:center;gap:.4rem;margin-left:auto;display:inline-flex}.seat-left .seat-tag,.seat-right .seat-tag{flex-wrap:wrap}.seat-left .seat-id,.seat-right .seat-id{flex:1 1 0}.seat-left .seat-meta,.seat-right .seat-meta{margin-left:calc(34px + .55rem)}.seat-money{font-family:var(--display);font-variant-numeric:tabular-nums;font-size:.95rem;font-weight:700}.avatar{width:34px;height:34px;font-family:var(--display);color:#fff;border-radius:50%;flex:none;place-items:center;font-size:.8rem;font-weight:800;display:grid;box-shadow:inset 0 0 0 2px #ffffff40,0 4px 10px #00000059}.avatar-0{background:linear-gradient(135deg,#ffb547,#ff6b6b)}.avatar-1{background:linear-gradient(135deg,#4facfe,#7f5cff)}.avatar-2{background:linear-gradient(135deg,#f857a6,#ff5858)}.avatar-3{background:linear-gradient(135deg,#22d3a6,#2a8cff)}.wind-badge{font-family:var(--glyph-font);color:#14141a;background:#ffffffeb;border-radius:8px;place-items:center;width:1.7em;height:1.7em;font-size:.85rem;font-weight:900;display:inline-grid}.dealer-chip{font-family:var(--glyph-font);color:#fff;background:linear-gradient(135deg,#ff4d6d,#ff8a3d);border-radius:6px;padding:0 .3em;font-size:.72rem;line-height:1.5}.seat-tiles{flex-wrap:wrap;align-items:flex-end;gap:.4rem;display:flex}.seat-hand{flex-wrap:wrap;gap:1px;display:flex}.seat-left .seat-hand,.seat-right .seat-hand{max-width:140px}.melds{flex-wrap:wrap;gap:.4rem;display:flex}.meld{background:#ffffff0d;border-radius:8px;gap:1px;padding:2px 3px 0;display:flex}.flowers{gap:1px;display:flex}.hand-count{font-family:var(--display);color:var(--muted);align-self:center;margin-left:.3rem;font-size:.75rem;font-weight:700}.exposed{background:#00000038;border-radius:14px;flex-direction:column;gap:.4rem;margin-top:.5rem;padding:.45rem;display:flex;box-shadow:inset 0 0 0 1px #ffffff0f}.exposed .meld{animation:.6s cubic-bezier(.2,1.5,.4,1) meld-in}@keyframes meld-in{0%{box-shadow:0 0 0 3px var(--accent), 0 0 26px var(--accent);transform:scale(1.35)}to{transform:none}}.exposure-chips{flex-wrap:wrap;gap:.3rem;display:flex}.chip{border-radius:999px;padding:.2em .6em;font-size:.74rem;font-weight:700;line-height:1.25}.chip-info{background:#ffffff1a}.chip-warn{color:#ffcf7a;background:#ffb5472e;box-shadow:inset 0 0 0 1px #ffb54773}.chip-danger{color:#ff8fa3;background:#ff4d6d33;box-shadow:inset 0 0 0 1px #ff4d6d8c}.seat-note{color:var(--muted);max-width:34ch;margin-top:.35rem;font-family:ui-monospace,SF Mono,monospace;font-size:.7rem}.bubble{background:var(--grad);color:var(--accent-ink);font-family:var(--display);white-space:nowrap;box-shadow:0 10px 26px #00000073, 0 0 24px color-mix(in srgb, var(--accent) 45%, transparent);z-index:5;pointer-events:none;border-radius:999px;padding:.3em .95em;font-size:1.1rem;font-weight:800;animation:.35s cubic-bezier(.2,1.6,.4,1) pop;position:absolute;top:-.9rem;left:50%;transform:translate(-50%)}@keyframes pop{0%{opacity:0;transform:translate(-50%)scale(.4)translateY(8px)}}.ponds{grid-template:".top."1fr"left center right"".bottom."1fr/1fr auto 1fr;gap:.6rem;width:100%;max-width:920px;height:100%;transition:opacity .3s;display:grid}.ponds-hidden{opacity:0}.pond-slot{min-width:0;min-height:0;display:flex}.pond-slot-top{grid-area:top;justify-content:center;align-items:flex-end}.pond-slot-bottom{grid-area:bottom;justify-content:center;align-items:flex-start}.pond-slot-left{grid-area:left;justify-content:flex-end;align-items:center}.pond-slot-right{grid-area:right;justify-content:flex-start;align-items:center}.pond{flex-wrap:wrap;align-content:flex-start;gap:2px;display:flex}.pond-top,.pond-bottom{max-width:calc(9*clamp(24px,2.5vw,36px) + 18px)}.pond-left,.pond-right{max-width:calc(5*clamp(24px,2.5vw,36px) + 10px)}.center-box{aspect-ratio:1;background:#00000052;border-radius:24px;grid-area:center;align-self:center;place-items:center;width:clamp(100px,11vw,144px);display:grid;position:relative;box-shadow:inset 0 0 0 1px #ffffff14,inset 0 6px 20px #00000059}.center-wind{font-family:var(--glyph-font);background:var(--grad);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:clamp(1.2rem,2vw,1.8rem);font-weight:900;position:absolute;top:20%}.wall-count{font-family:var(--display);font-variant-numeric:tabular-nums;text-align:center;margin-top:1.5rem;font-size:clamp(1.3rem,2vw,1.8rem);font-weight:800;line-height:1}.wall-count small{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:.45em;font-weight:600;display:block}.center-seat{font-family:var(--glyph-font);color:#ffffff73;font-size:.85rem;transition:color .2s,transform .25s cubic-bezier(.3,1.5,.5,1);position:absolute}.center-seat.on{color:var(--accent);text-shadow:0 0 12px var(--accent);font-weight:900;transform:scale(1.4)}.center-top{top:6px}.center-bottom{bottom:6px}.center-left{left:8px}.center-right{right:8px}.seat-bottom{width:min(100%,1120px);padding-top:.35rem}.short-notice{z-index:6;color:#ffe2a8;white-space:nowrap;pointer-events:none;background:#140c04e0;border-radius:999px;align-items:center;gap:.5rem;padding:.4rem .8rem;font-size:.95rem;animation:5s forwards short-life;display:flex;position:absolute;top:-2.4rem;left:50%;box-shadow:0 0 0 1.5px #e0a83a}@keyframes short-life{0%{opacity:0;transform:translate(-50%,6px)}6%,85%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%)}}.action-bar{flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem;min-height:54px;padding-bottom:.35rem;display:flex}.prompt{color:var(--muted);align-items:center;gap:.4rem;font-size:1rem;display:inline-flex}.action-turn .prompt{color:var(--text);font-weight:600}.action-claim{box-shadow:0 0 0 2px var(--accent), 0 0 36px color-mix(in srgb, var(--accent) 40%, transparent);background:#00000073;border-radius:20px;gap:.7rem;margin-bottom:.4rem;padding:.6rem .9rem;animation:.25s cubic-bezier(.2,1.5,.4,1) pop-bar}@keyframes pop-bar{0%{opacity:0;transform:scale(.92)}}.claim-prompt{color:var(--text);gap:.7rem;font-size:1.05rem}.btn-call{padding:.7em 1.2em;font-size:1.1rem;font-weight:800}.btn-call kbd{font-size:.8rem}.waits{color:var(--accent);font-weight:600}.mini-kinds{gap:1px;display:inline-flex}.my-row{flex-wrap:wrap;justify-content:center;align-items:flex-end;gap:.9rem;display:flex}.my-row .seat-tag{margin:0 0 .6rem}.my-row .seat-meta{margin-left:0}.my-hand{perspective:600px;gap:3px;min-height:calc(1.5*clamp(36px,4.8vw,64px) + 18px);padding-top:18px;display:flex}.drawn-gap{margin-left:.8rem;display:inline-flex}.bubble-me{top:-1.3rem}.timer-ring{place-items:center;display:inline-grid;position:relative}.timer-ring svg{position:absolute;inset:0}.timer-track{fill:none;stroke:#ffffff1f;stroke-width:4px}.timer-fill{fill:none;stroke:var(--accent);stroke-width:4px;stroke-linecap:round;filter:drop-shadow(0 0 4px var(--accent))}.timer-urgent .timer-fill{stroke:var(--win);filter:drop-shadow(0 0 6px var(--win))}.timer-ring span{font-family:var(--display);font-variant-numeric:tabular-nums;font-size:.8rem;font-weight:700}.intro{z-index:15;cursor:pointer;place-items:center;display:grid;position:absolute;inset:0}.intro-wall{pointer-events:none;width:min(62vmin,520px);height:min(62vmin,520px);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotateX(28deg)}.wall-side{gap:1px;display:flex;position:absolute}.wall-bottom,.wall-top{justify-content:space-between;height:7%;left:6%;right:6%}.wall-bottom{flex-direction:row-reverse;bottom:0}.wall-top{top:0}.wall-left,.wall-right{flex-direction:column;justify-content:space-between;width:5%;top:6%;bottom:6%}.wall-right{flex-direction:column-reverse;right:0}.wall-left{left:0}.wall-stack{background:linear-gradient(180deg, var(--tile-back) 0%, var(--tile-back-2) 100%);box-shadow:0 3px 0 var(--tile-face-2), 0 5px 0 var(--tile-back-2), 0 7px 8px #00000059;border-radius:3px;flex:1;transition:opacity .25s,transform .25s;animation:.5s cubic-bezier(.2,1.4,.4,1) both rise}.wall-side .wall-stack:nth-child(odd){animation-delay:50ms}.wall-stack.gone{opacity:0;transform:translateY(-10px)scale(.6)}.wall-stack.break{box-shadow:0 3px 0 var(--tile-face-2), 0 0 0 2px var(--accent), 0 0 14px var(--accent)}@keyframes rise{0%{opacity:0;transform:translateY(14px)}}.intro-center{z-index:2;flex-direction:column;align-items:center;gap:1rem;display:flex}.dice-tray{perspective:700px;gap:18px;display:flex}.die-hop{will-change:transform}.die{--size:clamp(38px, 5vw, 54px);--half:calc(var(--size) / 2);width:var(--size);height:var(--size);transform-style:preserve-3d;position:relative}.die-face{backface-visibility:hidden;background:radial-gradient(circle at 30% 25%,#fff,#e9e9ef 70%);border-radius:22%;grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(3,1fr);padding:16%;display:grid;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #0000000f,inset 0 -4px 10px #0000001f}.die-face span{display:block}.die-face .pip{background:radial-gradient(circle at 35% 30%,#4a4a58,#111);border-radius:50%;margin:12%}.die-face.red .pip{background:radial-gradient(circle at 35% 30%,#ff6b7d,#c3112c)}.dice-total{font-family:var(--display);text-align:center;opacity:0;text-shadow:0 4px 20px #00000080;font-size:2rem;font-weight:800;line-height:1;transition:opacity .3s,transform .3s;transform:translateY(8px)}.dice-total.shown{opacity:1;transform:none}.dice-total small{letter-spacing:.2em;text-transform:uppercase;color:var(--muted);font-size:.38em;font-weight:600;display:block}.intro-skip{background:var(--glass-strong);border:1px solid var(--line);cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:999px;padding:.4em .9em;font-size:.8rem;position:absolute;bottom:1rem;right:1rem}.fly-block{pointer-events:none;z-index:3;filter:drop-shadow(0 8px 10px #00000073);grid-template-columns:repeat(2,16px);gap:2px;display:grid;position:absolute;top:0;left:0}.fly-1{grid-template-columns:16px}.fly-tile{background:linear-gradient(180deg, var(--tile-back) 0%, var(--tile-back-2) 100%);width:16px;height:22px;box-shadow:0 3px 0 var(--tile-face-2);border-radius:4px}.modal-backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:20;background:#03050a99;place-items:center;padding:16px;animation:.2s fade;display:grid;position:fixed;inset:0}@keyframes fade{0%{opacity:0}}.modal{background:var(--glass-strong);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--line);width:min(780px,100%);max-height:92dvh;box-shadow:var(--shadow);border-radius:24px;padding:1.4rem 1.5rem;animation:.35s cubic-bezier(.2,1.3,.4,1) rise-in;overflow:auto}@keyframes rise-in{0%{opacity:0;transform:translateY(20px)scale(.97)}}.modal h2{margin:0 0 .9rem;font-size:1.5rem}.faan-box{border:1px solid var(--line);background:#ffffff0a;border-radius:16px;margin-bottom:1rem;padding:.7rem 1rem}.faan-list{margin:0;padding:0;list-style:none}.faan-list li{border-bottom:1px solid var(--line);justify-content:space-between;padding:.3rem 0;display:flex}.faan-n{font-family:var(--display);font-variant-numeric:tabular-nums;font-weight:800}.faan-total{font-family:var(--display);background:var(--grad);color:#0000;-webkit-background-clip:text;background-clip:text;margin-top:.6rem;font-size:1.25rem;font-weight:800}.liability-note{color:#ffb4a8;margin-top:.4rem;font-size:.9rem}.reveal-hands{gap:.4rem;margin-bottom:1rem;display:grid}.reveal-row{border:1px solid #0000;border-radius:14px;padding:.45rem .6rem}.reveal-row.winner{background:color-mix(in srgb, var(--accent) 12%, transparent);border-color:color-mix(in srgb, var(--accent) 35%, transparent)}.reveal-name{align-items:center;gap:.45rem;margin-bottom:.3rem;font-size:.88rem;font-weight:600;display:flex}.delta{font-family:var(--display);font-variant-numeric:tabular-nums;margin-left:auto;font-weight:800}.delta.pos{color:#7ef0b5}.delta.neg{color:#ff8fa3}.reveal-tiles{flex-wrap:wrap;align-items:flex-end;gap:.3rem;display:flex}.reveal-tiles>.tile{margin-right:-.25rem}.standings{color:var(--muted);flex-wrap:wrap;gap:1rem;margin-bottom:1rem;font-size:.9rem;display:flex}.menu{max-width:1180px;margin:0 auto;padding:2rem 16px 3rem}.menu-hero{background:radial-gradient(600px 240px at 0% 0%, color-mix(in srgb, var(--accent) 22%, transparent), transparent 70%), radial-gradient(600px 240px at 100% 100%, color-mix(in srgb, var(--mat-1) 55%, transparent), transparent 70%), var(--glass);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:28px;flex-wrap:wrap;align-items:center;gap:1.75rem;margin-bottom:2rem;padding:1.5rem 1.75rem;display:flex}.menu-hero h1{margin:0;font-size:clamp(2rem,5vw,3.2rem);font-weight:800;line-height:1.05}.menu-hero h1 .zh{background:var(--grad);color:#0000;opacity:1;-webkit-background-clip:text;background-clip:text}.lede{color:var(--muted);max-width:52ch;margin:.5rem 0 0}.hero-tiles{gap:6px;display:flex}.hero-tiles .tile{animation:4s ease-in-out infinite float}.hero-tiles .tile:first-child{animation-delay:0s;transform:rotate(-10deg)}.hero-tiles .tile:nth-child(2){animation-delay:.4s}.hero-tiles .tile:nth-child(3){animation-delay:.8s;transform:rotate(10deg)}@keyframes float{50%{translate:0 -8px}}.hero-actions{flex-wrap:wrap;gap:.6rem;margin-left:auto;display:flex}.menu-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem;display:grid}.panel{background:var(--glass);border:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:22px;flex-direction:column;gap:.8rem;padding:1.1rem 1.2rem;display:flex}.quick{gap:1.2rem;margin-bottom:1rem}.quick-row{flex-direction:column;gap:.5rem;display:flex}.quick .seg{max-width:420px}.presets{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.6rem;display:grid}.preset{text-align:left;border:1px solid var(--line);cursor:pointer;background:#ffffff08;border-radius:16px;flex-direction:column;gap:.2rem;padding:.7rem .85rem;transition:transform .15s,border-color .15s;display:flex}.preset:hover{transform:translateY(-2px)}.preset b{font-family:var(--display);font-size:1rem}.preset span{color:var(--muted);font-size:.78rem}.preset.on{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent), 0 10px 30px color-mix(in srgb, var(--accent) 25%, transparent)}.adv-bar{justify-content:space-between;gap:.6rem;margin-bottom:1rem;display:flex}.panel h2{margin:0;font-size:1.1rem;font-weight:700}.panel-wide{grid-column:1/-1}.menu>.stats{margin-top:1rem}.field{flex-direction:column;gap:.35rem;display:flex}.field-label{font-size:.85rem;font-weight:600}.field-hint{color:var(--muted);font-size:.75rem}.field input:not([type=range]){width:100%}.field input[type=range]{accent-color:var(--accent)}.field input:not([type=range]),.field select,.cpu-row input,.cpu-row select{border:1px solid var(--line);background:#ffffff0f;border-radius:12px;min-width:0;padding:.5em .7em}select option{color:#111}.row2{grid-template-columns:1fr 1fr;gap:.6rem;display:grid}.cpu-row{grid-template-columns:minmax(0,1fr) minmax(0,8.5rem);align-items:center;gap:.25rem .4rem;display:grid}.cpu-pos{color:var(--muted);grid-column:1/-1;font-size:.75rem}.level-notes{color:var(--muted);gap:.2rem;margin:0;padding-left:1.1rem;font-size:.75rem;display:grid}.check{align-items:flex-start;gap:.6rem;font-size:.86rem;line-height:1.35;display:flex}.check input[type=checkbox]{width:1.05rem;height:1.05rem;accent-color:var(--accent);flex:none;margin:.12rem 0 0}.seg{background:#00000040;border-radius:999px;flex-wrap:wrap;gap:3px;padding:3px;display:flex}.seg button{cursor:pointer;color:var(--muted);background:0 0;border:none;border-radius:999px;flex:1;padding:.45em .7em;font-size:.84rem;font-weight:600;transition:background .15s,color .15s}.seg button.on{background:var(--grad);color:var(--accent-ink);box-shadow:0 4px 14px color-mix(in srgb, var(--accent) 35%, transparent)}.payout-table{font-variant-numeric:tabular-nums;grid-template-columns:repeat(9,1fr);gap:3px;font-size:.75rem;display:grid}.payout-table span{background:#ffffff0d;border-radius:10px;flex-direction:column;align-items:center;padding:.3em 0;display:flex}.payout-table b{font-family:var(--display);color:var(--accent)}.keys{color:var(--muted);margin:0;font-size:.75rem;line-height:2}.themes{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.8rem;display:grid}.theme-card{text-align:left;border:1px solid var(--line);cursor:pointer;background:#ffffff08;border-radius:18px;flex-direction:column;gap:.35rem;padding:.6rem;transition:transform .15s,border-color .15s;display:flex}.theme-card:hover{transform:translateY(-2px)}.theme-card.on{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent), 0 10px 30px color-mix(in srgb, var(--accent) 25%, transparent)}.theme-felt{background:radial-gradient(ellipse at center, var(--mat-1) 0%, var(--mat-2) 100%);box-shadow:inset 0 0 0 1px var(--mat-rim);border-radius:14px;justify-content:center;gap:2px;padding:.7rem .5rem .9rem;display:flex}.theme-name{font-family:var(--display);font-size:.95rem;font-weight:700}.theme-blurb{color:var(--muted);font-size:.75rem}.stats{flex-flow:wrap;align-items:baseline;gap:1.5rem}.stats h2{width:100%}.stats b{font-family:var(--display);margin-right:.25rem;font-size:1.4rem}.gallery{max-width:1100px;margin:0 auto;padding:1.5rem 16px}.gallery h2{margin:1.2rem 0 .6rem;font-size:1rem}.gallery-row{flex-wrap:wrap;gap:.8rem;display:flex}.gallery figure{flex-direction:column;align-items:center;gap:.3rem;margin:0;display:flex}.gallery figcaption{color:var(--muted);text-align:center;max-width:64px;font-size:.7rem}.gallery .tile-hand{--w:64px}@media (width<=760px){.table-grid{grid-template:"top top""left right""mid mid"minmax(0,1fr)"bottom bottom"/1fr 1fr;gap:.45rem;padding:0 8px 8px}.area-left,.area-right{align-items:stretch}.area-mid{border-radius:20px;padding:.5rem}.seat-left .seat-hand,.seat-right .seat-hand{max-width:none}.avatar{width:28px;height:28px;font-size:.7rem}.tile-hand{--w:clamp(22px, 6.3vw, 40px)}.tile-pond{--w:clamp(16px, 4.4vw, 24px)}.pond-left,.pond-right{max-width:calc(4*clamp(16px,4.4vw,24px) + 8px)}.table-bar{padding:.35rem 8px;font-size:.75rem}.hero-actions{margin-left:0}.menu-hero{padding:1.2rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation-duration:1ms!important}}
