:root{--paper:#f6f1f0;--paper-2:#fcf8f7;--paper-3:#f0e6e6;--tint:#f3e3e6;--line:#e7dbda;--line-2:#dac9c9;--ink:#231a1d;--ink-2:#5c4b4f;--ink-soft:#6e5d61;--accent:#7a2e45;--accent-hi:#8f3a54;--on-accent:#fbf2f3;--pos:#2f6b52;--neg:#a83e32;--neg-hi:#d34c3b;--neg-soft:#f6e3df;--gold:#8a5a2b;--felt:#1a6b55;--felt-2:#0f4438;--rail:#5a3a2e;--felt-ink:#f0e4d6;--felt-dim:#f0e4d699;--tile-face:#f0e7d6;--tile-edge:#c9b896;--ease:cubic-bezier(.22,1,.36,1);--dur:.13s;--dur-view:.32s;--r-sm:10px;--r-md:12px;--r-lg:14px;--r-xl:16px;--r-pill:999px;--t-3xs:9px;--t-2xs:10px;--t-xs:11px;--t-sm:12px;--t-md:13px;--t-lg:14px;--t-xl:15px;--t-base:16px;--s-2:2px;--s-4:4px;--s-6:6px;--s-8:8px;--s-10:10px;--s-12:12px;--s-14:14px;--s-16:16px;--s-18:18px;--s-20:20px;--s-22:22px;--s-24:24px;--s-26:26px;--z-nav:35;--z-backdrop:40;--z-sheet:50;--z-fullsheet:60;--z-confetti:70;--z-tour:75;--z-toast:80;--z-modal:100;--z-skiplink:200;--z-drag:9999;--press:scale(.96);--lift:translateY(2px);--shadow-1:0 1px 2px #3c23280f;--shadow-2:0 2px 6px #3c232814;--shadow-3:0 10px 26px -10px #3c232838}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;padding:0}body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif}a{color:var(--accent);text-underline-offset:3px;text-decoration-thickness:1px}a:hover{color:var(--accent-hi)}a:visited{color:var(--accent)}.wrap,.tour-wrap{z-index:1;max-width:520px;padding:calc(var(--s-18) + env(safe-area-inset-top)) var(--s-16) calc(100px + env(safe-area-inset-bottom));margin:0 auto;position:relative}@supports (padding:max(0px)){.wrap,.tour-wrap{padding-left:max(var(--s-16),env(safe-area-inset-left));padding-right:max(var(--s-16),env(safe-area-inset-right))}}.tnum{font-variant-numeric:tabular-nums}.errnote{font-weight:600;color:var(--neg)!important}.field .errnote{margin:var(--s-8) 0 0}.top{margin-bottom:var(--s-14);justify-content:space-between;align-items:center;display:flex}.top>.brand{order:1}.top #tvBtn{order:2;margin-left:auto}.top .iconbtn{order:3}.brand{align-items:center;gap:var(--s-8);display:flex}.brand-home{font:inherit;font-size:var(--t-xl);letter-spacing:-.01em;color:var(--ink);cursor:pointer;background:0 0;border:0;margin:0;padding:0;font-weight:700;position:relative}.brand-home:after{content:"";position:absolute;inset:-13px -4px}.rolebadge{background:var(--tint);color:var(--accent);font-size:var(--t-3xs);letter-spacing:.08em;padding:var(--s-2) var(--s-6);border-radius:5px;flex:none;font-weight:800;line-height:1.4}.acctname{align-items:center;gap:var(--s-8);display:flex}.mjmark{border-radius:7px;flex:none;display:block}.brand .mjmark{border-radius:6px}.iconbtn{color:var(--ink-soft);padding:var(--s-8) var(--s-10);font-size:var(--t-lg);cursor:pointer;justify-content:center;align-items:center;gap:var(--s-6);background:0 0;border:1px solid #0000;border-radius:11px;font-weight:600;display:inline-flex}.iconbtn:hover{color:var(--ink)}.iconbtn:active{transform:scale(.94)}.titlerow{align-items:flex-start;gap:var(--s-8);display:flex}.titlerow h1{flex:auto;min-width:0}.editbtn{margin-top:var(--s-10);border:1px solid var(--line);border-radius:var(--r-pill);color:var(--ink-soft);cursor:pointer;width:34px;height:34px;transition:color var(--dur) var(--ease),border-color var(--dur) var(--ease);background:0 0;flex:none;justify-content:center;align-items:center;display:inline-flex}.editbtn:hover{color:var(--accent);border-color:var(--line-2)}.editbtn:active{transform:var(--press)}.editbtn:after{content:"";position:absolute;inset:-6px}.editbtn{position:relative}.ghead{margin:var(--s-2) 0 var(--s-6)}#rooms .ghead,#room .ghead,#leaderboard .ghead,#roster .ghead,#seating .ghead{margin-bottom:var(--s-22)}.g-eyebrow{font-size:var(--t-2xs);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft);margin:0;font-weight:700}.ghead h1{letter-spacing:-.028em;margin:var(--s-6) 0 0;color:var(--ink);text-wrap:balance;font-size:clamp(24px,6.6vw,29px);font-weight:700;line-height:1.18}.ghead h1 i{color:var(--accent);font-style:normal}.tray{border-top:1px solid var(--line);margin:0;padding:0}.tray+.tray{border-top:1px solid var(--line)}.tray summary{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:var(--s-10);min-height:52px;font-size:var(--t-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);font-weight:800;list-style:none;display:flex}.tray summary::-webkit-details-marker{display:none}.tray summary:after{content:"›";margin-left:var(--s-8);color:var(--ink-soft);transition:transform .18s var(--ease);font-size:18px;font-weight:700;line-height:1;transform:rotate(90deg)}.tray[open] summary:after{transform:rotate(-90deg)}.tray .tray-count{margin-left:calc(var(--s-4) * -1);font-size:var(--t-xs);color:var(--ink-soft);font-variant-numeric:tabular-nums;font-weight:800}.trayundo{align-items:center;gap:var(--s-6);min-height:34px;padding:0 var(--s-12);background:var(--paper-3);border:1px solid var(--line);border-radius:var(--r-pill);font:inherit;font-size:var(--t-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);cursor:pointer;flex:none;margin-left:auto;font-weight:800;transition:transform .12s;display:inline-flex}.trayundo svg{width:14px;height:14px;display:block}.trayundo:active{transform:scale(.97)}.trayundo:disabled{opacity:.38;cursor:default}.trayundo[hidden]{display:none}.tray>:not(summary){margin-bottom:var(--s-14)}.tray[open]>summary{margin-bottom:var(--s-4)}.roundtools{border-top:1px solid var(--line);margin-top:var(--s-4);padding-top:var(--s-4)}.status{align-items:center;gap:var(--s-12);border:0;border-bottom:1px solid var(--line);padding:var(--s-12) var(--s-2);box-shadow:none;background:0 0;border-radius:0;margin-bottom:0;display:flex}.dealer-tile{background:var(--accent);border:0;border-radius:50%;flex:none;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.dealer-tile .zhuang{color:var(--on-accent);font-weight:700;font-size:var(--t-base);line-height:1}.dealer-tile .lab{display:none}.status .info{flex:1;min-width:0}.status .who{font-weight:700;font-size:var(--t-xl);color:var(--ink);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.status .sub{font-size:var(--t-sm);color:var(--ink-soft);margin-top:var(--s-2);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.dicebtn{padding:var(--s-8) var(--s-10);flex:none}.streakctl{align-items:center;gap:var(--s-6);display:flex}.streakctl button{border:1px solid var(--line-2);background:var(--paper-2);width:44px;height:44px;color:var(--ink);cursor:pointer;border-radius:50%;font-size:18px;font-weight:700;line-height:1}.streakctl button:active{transform:scale(.88)}.streak-val{text-align:center;min-width:22px;color:var(--gold);font-size:17px;font-weight:800}.droundbar{align-items:center;gap:var(--s-12);text-align:left;cursor:pointer;border:0;border-bottom:1px solid var(--line);width:100%;padding:var(--s-12) var(--s-2);color:var(--ink);box-shadow:none;transition:background var(--dur) var(--ease),border-color var(--dur) var(--ease),transform var(--dur) var(--ease);background:0 0;border-radius:0;margin-bottom:0;display:flex}.droundbar:active{transform:scale(.99)}.droundbar .dr-x{font-variant-numeric:tabular-nums;letter-spacing:-.02em;background:var(--paper-3);border:1px solid var(--line);width:38px;height:38px;color:var(--ink-soft);transition:all var(--dur) var(--ease);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:17px;font-weight:800;display:flex}.droundbar .dr-txt{flex-direction:column;flex:auto;min-width:0;display:flex}.droundbar .dr-txt b{font-size:var(--t-xl);font-weight:800}.droundbar .dr-sub{font-size:var(--t-sm);color:var(--ink-soft);margin-top:1px}.droundbar .dr-toggle{border-radius:var(--r-pill);background:var(--line-2);width:48px;height:28px;transition:background var(--dur) var(--ease);flex:none;position:relative}.droundbar .dr-knob{width:22px;height:22px;transition:left var(--dur) var(--ease);box-shadow:var(--shadow-2);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px}.droundbar.on .dr-txt b{color:var(--accent)}.droundbar.on .dr-x{background:var(--accent);color:var(--on-accent);border-color:#0000}.droundbar.on .dr-sub{color:var(--ink-2)}.droundbar.on .dr-toggle{background:var(--accent)}.droundbar.on .dr-knob{left:23px}#game.droundon .mjfelt{--rail:var(--accent);box-shadow:0 0 0 6px var(--accent),  0 0 0 12px #7a2e4557,  0 2px 3px #3c232829, 0 22px 46px -14px #7a2e458c,  inset 0 0 30px #00000042}#game.droundon .mjfelt:before{content:"";border:3px solid var(--accent);pointer-events:none;animation:drpulse 2.4s var(--ease) infinite;border-radius:15%;position:absolute;inset:-16px}@keyframes drpulse{0%,to{opacity:.7;transform:scale(.99)}60%{opacity:0;transform:scale(1.07)}}#game.droundon .mjcore:after{content:"×2";margin-top:var(--s-10);font-size:var(--t-md);letter-spacing:.03em;background:var(--accent);color:var(--on-accent);padding:var(--s-6) var(--s-12);border-radius:var(--r-pill);font-weight:800;line-height:1;box-shadow:0 2px 7px #00000073,0 0 0 2px #fbf2f333}.mjtable{place-items:center;column-gap:var(--s-2);margin:0 0 var(--s-12);grid-template:"tnw.tne"minmax(40px,auto)".tc."minmax(104px,auto)"tsw.tse"minmax(40px,auto)/minmax(68px,1fr) minmax(104px,1.15fr) minmax(68px,1fr);row-gap:0;display:grid;position:relative}.mjfelt{aspect-ratio:1;background:radial-gradient(80% 70% at 34% 26%, #ffffff29, #fff0 62%), linear-gradient(150deg, var(--felt) 0%, var(--felt-2) 100%);width:122%;box-shadow:0 0 0 4px var(--rail), 0 2px 3px #3c232829, 0 20px 38px -16px #1e322880, inset 0 0 30px #00000042;border-radius:12%;grid-area:tc;margin:25.3% 0;transform:rotate(45deg)}.mjwall{border-radius:2px;position:absolute;box-shadow:0 1px 2px #00000057}.mjwall.n,.mjwall.s{background:repeating-linear-gradient(90deg,var(--tile-face) 0 5px,var(--tile-edge) 5px 6px);height:5.2%;left:14%;right:14%}.mjwall.w,.mjwall.e{background:repeating-linear-gradient(0deg,var(--tile-face) 0 5px,var(--tile-edge) 5px 6px);width:5.2%;top:14%;bottom:14%}.mjwall.n{top:9.5%}.mjwall.s{bottom:9.5%}.mjwall.w{left:9.5%}.mjwall.e{right:9.5%}.mjcore{font:inherit;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:1px;padding:0;display:flex;position:absolute;inset:0;transform:rotate(-45deg)}.mjcore:active{opacity:.75}.mjcore:focus-visible{outline:2px solid var(--tile-face);outline-offset:-14px;border-radius:8px}#game.picking .mjcore{pointer-events:none;opacity:0}.mjcore{transition:opacity .2s var(--ease)}.windmove{margin-top:var(--s-2)}#sheetFields .windpick{margin-bottom:var(--s-4)}.mjcore .mjround{color:var(--felt-ink);font-size:40px;font-weight:600;line-height:1}.mjcore .mjlab{font-size:var(--t-xs);letter-spacing:.16em;text-transform:uppercase;color:var(--felt-ink);margin-top:var(--s-6);font-weight:700}.mjcore .mjdiscards{gap:3.var(--s-6);margin-top:var(--s-10);display:flex}.mjcore .mjdiscards i{background:var(--tile-face);border-radius:1.5px;width:8px;height:12px;font-style:normal;display:block;box-shadow:0 1px 2px #0006}.mjcore .mjdiscards i:first-child{transform:rotate(-8deg)}.mjcore .mjdiscards i:nth-child(3){transform:rotate(7deg)}.mjcore .mjdiscards i:nth-child(4){transform:rotate(-4deg)}.mjtable{--seat-pull:28px}.pcard.pos-nw{left:var(--seat-pull);top:var(--seat-pull);grid-area:tnw}.pcard.pos-ne{left:calc(-1 * var(--seat-pull));top:var(--seat-pull);grid-area:tne}.pcard.pos-sw{left:var(--seat-pull);top:calc(-1 * var(--seat-pull));grid-area:tsw}.pcard.pos-se{left:calc(-1 * var(--seat-pull));top:calc(-1 * var(--seat-pull));grid-area:tse}.pcard{z-index:2;width:100%;font:inherit;text-align:center;border-radius:var(--r-md);padding:var(--s-4) var(--s-2) var(--s-6);color:var(--ink);cursor:pointer;transition:transform .2s var(--ease);background:0 0;border:0;flex-direction:column;align-items:center;gap:0;display:flex;position:relative}.pcard:active{transform:scale(.97)}#players .pcard{touch-action:none;-webkit-user-select:none;user-select:none}.pcard.dragging{opacity:.35}.pcard.seat-over{outline:2.5px dashed var(--accent);outline-offset:2px}.pcard-float{z-index:var(--z-drag);pointer-events:none;box-shadow:none;background:0 0;padding:0;position:fixed;transform:translate(-50%,-50%)scale(1.06);width:auto!important}.pcard-float .pscore,.pcard-float .picktag,.pcard-float .pmore{display:none}.pcard-float .pav svg{box-shadow:0 0 0 2px var(--paper),0 6px 16px -4px #3c232873}.pcard-float .pname{background:var(--ink);color:var(--paper);border-radius:var(--r-pill);padding:var(--s-2) var(--s-10);margin-top:var(--s-6);font-size:var(--t-sm)}.pav{flex:none;width:44px;height:44px;position:relative}.pav svg{width:100%;height:100%;box-shadow:0 0 0 2px var(--paper),0 1px 4px #3c232847;border-radius:50%;display:block}.pcard.dealer .pav svg{box-shadow:0 0 0 2.5px var(--accent),0 2px 6px #3c232842}.pwind{min-width:17px;height:17px;padding:0 var(--s-2);font-size:var(--t-2xs);border-radius:var(--r-pill);background:var(--paper-3);color:var(--ink-2);box-shadow:0 0 0 2px var(--paper);justify-content:center;align-items:center;font-weight:800;line-height:1;display:flex;position:absolute;bottom:-2px;right:-4px}.pcard.dealer .pwind{background:var(--accent);color:var(--on-accent)}.pking{background:var(--gold);color:#fff6e4;width:19px;height:19px;box-shadow:0 0 0 2px var(--paper),0 1px 3px #3c23284d;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:-4px;left:-5px}.pking svg{width:12px;height:12px;display:block}.pcard .pname{justify-content:center;align-items:center;gap:var(--s-6);font-size:var(--t-md);margin-top:var(--s-8);max-width:100%;font-weight:700;line-height:1.2;display:flex}.pcard .pname .pn-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.pcard .pyou{font-size:var(--t-3xs);letter-spacing:.06em;text-transform:uppercase;color:var(--on-accent);background:var(--accent);border-radius:var(--r-pill);padding:var(--s-2) var(--s-6);flex:none;font-weight:800;line-height:1.1}.pcard .pscore{letter-spacing:-.035em;font-size:22px;font-weight:800;line-height:1.15}.pscore.pos{color:var(--pos)}.pscore.neg{color:var(--neg)}.pscore.zero{color:var(--ink-soft)}.pcard-add{color:var(--ink-soft);background:0 0;border:0;align-self:start}.pav-ghost{border:2px dashed var(--line-2);color:var(--line-2);background:var(--paper-2);box-sizing:border-box;border-radius:50%;justify-content:center;align-items:center;display:flex}.pav-ghost svg{width:64%;height:64%;box-shadow:none;border-radius:0;transform:translateY(1px)}.pcard-add .pname{color:var(--ink-soft);font-weight:600}.pcard-add.drop-ok .pav-ghost{border-color:var(--accent);color:var(--accent);background:var(--tint)}.pmore{display:none}.pickbar{align-items:flex-end;gap:var(--s-8);margin-bottom:var(--s-14);display:flex}.pickbar .pb-opts{gap:var(--s-8);flex-wrap:wrap;flex:auto;align-items:center;min-width:0;display:flex}.pickbar .pb-lead{font-size:var(--t-2xs);letter-spacing:.07em;text-transform:uppercase;color:var(--ink-soft);margin:var(--s-6) 0 var(--s-4);flex:0 0 100%;font-weight:800}.pickbar button{border:1px solid var(--accent);background:var(--paper-2);color:var(--accent);border-radius:var(--r-pill);padding:0 var(--s-16);min-height:44px;font:inherit;font-size:var(--t-md);cursor:pointer;flex:none;font-weight:700}.pickbar button.pb-cancel{border-color:var(--line-2);color:var(--ink-soft);margin-left:auto}#game.picking .recordbar,#game.picking #modeTab,#game.picking .roundtools,#game.picking .tray,#game.picking .retired,#game.picking .gamefoot,#game.picking .gamebar{opacity:.25;filter:saturate(.4);pointer-events:none;transition:opacity .2s var(--ease),filter .2s var(--ease)}#game.picking:before{content:"";z-index:1;pointer-events:none;animation:scrimIn .28s var(--ease);background:radial-gradient(124% 56% at 50% 44%,#0c080a57 0%,#0c080ab8 60%,#0c080ad6 100%);position:fixed;inset:0}@keyframes scrimIn{0%{opacity:0}to{opacity:1}}#game.picking .ghead{z-index:2;position:relative}#game.picking .mjtable{z-index:2;transition:transform .28s var(--ease);position:relative;transform:scale(1.03)}#game.picking .g-eyebrow{color:#fbf2f3b8}#game.picking .pcard .pname{color:var(--tile-face)}#game.picking .pcard-add,#game.picking .pcard-add .pname{color:#fbf2f3a8}#game.picking .picklegend span,#game.picking .pickbar .pb-lead{color:#fbf2f3b8}body.picking #appTop{pointer-events:none}body.picking #tabBar{opacity:.3;filter:saturate(.4);pointer-events:none;transition:opacity .2s var(--ease),filter .2s var(--ease)}#game.picking .mjfelt{box-shadow:0 0 0 4px var(--rail),0 2px 3px #3c232829, 0 26px 44px -14px #1e322899,inset 0 0 30px #00000042}#game.picking .pcard.pick-on .pav{box-shadow:0 0 0 3.5px var(--accent),0 0 0 6px #7a2e452e,0 2px 10px #7a2e4559;border-radius:50%}#game.picking .pcard.pick-on .pav svg{box-shadow:none}#game.picking .pcard.pick-on .pav:after{content:"";border:2.5px solid var(--accent);pointer-events:none;animation:seatWaiting 1.6s var(--ease) infinite;background:0 0;border-radius:50%;position:absolute;inset:-3.5px}@keyframes seatWaiting{0%{opacity:.55;transform:scale(1)}70%,to{opacity:0;transform:scale(1.5)}}#game.picking .pcard.pick-won{opacity:.92}@media (prefers-reduced-motion:reduce){#game.picking .pcard.pick-on .pav:after{display:none}}.pickbar,.picklegend{z-index:2;position:relative}#game.picking .ghead h1{clip:rect(0,0,0,0);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.pickbubble{z-index:3;pointer-events:none;max-width:min(76%,268px);padding:var(--s-12) var(--s-18) var(--s-14);background:var(--tile-face);color:var(--ink);letter-spacing:-.02em;text-align:center;text-wrap:balance;animation:bubbleIn .24s var(--ease);border-radius:20px;margin:0;font-size:clamp(17px,4.7vw,20px);font-weight:800;line-height:1.2;position:absolute;top:50%;left:50%;transform:translate(-50%,-58%);box-shadow:0 12px 24px -10px #0009,0 2px 4px #00000038}.pickbubble em{color:var(--accent);font-style:normal}.pickbubble .pb-ask{display:block}.pickbubble .pb-hint{margin-top:var(--s-10);padding-top:var(--s-10);font-size:var(--t-sm);letter-spacing:0;color:var(--ink-soft);border-top:1px solid #3c232826;font-weight:700;line-height:1.25;display:block}.pickbubble:after{content:"";border-top:16px solid var(--tile-face);border-right:19px solid #0000;width:0;height:0;position:absolute;bottom:-15px;left:24px}.pickbubble.at-sw:after{border:0;border-top:16px solid var(--tile-face);border-right:19px solid #0000;inset:auto auto -15px 24px}.pickbubble.at-se:after{border:0;border-top:16px solid var(--tile-face);border-left:19px solid #0000;inset:auto 24px -15px auto}.pickbubble.at-nw:after{border:0;border-bottom:16px solid var(--tile-face);border-right:19px solid #0000;inset:-15px auto auto 24px}.pickbubble.at-ne:after{border:0;border-bottom:16px solid var(--tile-face);border-left:19px solid #0000;inset:-15px 24px auto auto}.pickbubble.has-picks{max-width:min(84%,292px)}.pickbubble .pb-picks{align-items:stretch;gap:var(--s-8);margin-top:var(--s-10);padding-top:var(--s-10);border-top:1px solid #3c232826;flex-direction:column;display:flex}.pickbubble .pb-picks button{pointer-events:auto;background:var(--accent);color:var(--on-accent);border-radius:var(--r-pill);padding:0 var(--s-14);min-height:40px;font:inherit;font-size:var(--t-md);letter-spacing:0;cursor:pointer;transition:transform var(--dur) var(--ease);border:0;font-weight:800;box-shadow:0 2px 7px -1px #7a2e4580}.pickbubble .pb-picks button:active{transform:var(--press)}#game.picking-own-win .pickbubble.has-picks{width:min(92%,320px);max-width:320px;padding:var(--s-12) var(--s-16) var(--s-14);animation:bubbleChoicesIn .24s var(--ease)}#game.picking-own-win .pickbubble .pb-choicelead{align-items:center;gap:var(--s-10);margin-top:var(--s-10);color:var(--ink-soft);font-size:var(--t-2xs);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;font-weight:800;line-height:1;display:flex}#game.picking-own-win .pickbubble .pb-choicelead:before,#game.picking-own-win .pickbubble .pb-choicelead:after{content:"";background:#3c232826;flex:auto;height:1px}#game.picking-own-win .pickbubble .pb-picks{gap:var(--s-8);margin-top:var(--s-10);border-top:0;flex-direction:row;padding-top:0}#game.picking-own-win .pickbubble .pb-picks button{min-width:0;min-height:44px;padding:0 var(--s-10);font-size:var(--t-md);flex:1 1 0}@keyframes bubbleIn{0%{opacity:0;transform:translate(-50%,-58%)scale(.9)}to{opacity:1;transform:translate(-50%,-58%)scale(1)}}@keyframes bubbleChoicesIn{0%{opacity:0;transform:translate(-50%,-58%)}to{opacity:1;transform:translate(-50%,-58%)}}.pcard.pick-won .pav svg{box-shadow:0 0 0 3px var(--pos),0 2px 8px #2f6b524d!important}.pcard.pick-fed .pav svg{box-shadow:0 0 0 3px var(--neg),0 2px 8px #b4473a4d!important}#game.picking .pcard.pick-thrower .pav{box-shadow:0 0 0 2px var(--on-accent), 0 0 0 6px var(--neg-hi), 0 0 0 10px #d34c3b42, 0 3px 16px #d34c3b94}#game.picking .pcard.pick-thrower .pav svg{box-shadow:none}#game.picking .pcard.pick-thrower .pav:after{border-color:var(--neg-hi);border-width:3px;animation-name:throwerWaiting}@keyframes throwerWaiting{0%{opacity:.92;transform:scale(1)}72%{opacity:.22;transform:scale(1.44)}to{opacity:0;transform:scale(1.52)}}#game.picking-own-win .pcard.pick-won{cursor:default}#game.picking-own-win .pcard.pick-won:active{transform:none}.picklegend{justify-content:center;gap:var(--s-18);margin:0 0 var(--s-16);display:flex}.picklegend.on{display:flex}.picklegend span{align-items:center;gap:var(--s-6);font-size:var(--t-2xs);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);font-weight:800;display:flex}.picklegend i{border-radius:50%;width:9px;height:9px;display:block}.picklegend .lg-won{background:var(--pos)}.picklegend .lg-fed{background:var(--neg)}.picklegend .lg-dealer{background:var(--accent)}.picktag{font-size:var(--t-2xs);letter-spacing:.09em;text-transform:uppercase;margin-top:var(--s-2);padding:var(--s-2) var(--s-8);border-radius:var(--r-pill);color:var(--on-accent);font-weight:800;line-height:1.35}.picktag.won{background:var(--pos)}.picktag.fed{background:var(--neg)}.picktag.thrower{background:var(--neg);box-shadow:0 1px 5px -1px #a83e328c}.picktag.tap{background:var(--accent);box-shadow:0 1px 5px -1px #7a2e458c}#game.picking .pcard .pscore{display:none}#game.picking-own-win .pickbar{margin:0 0 var(--s-18);justify-content:center;align-items:center}#game.picking-own-win .pickbar .pb-opts:empty{display:none}#game.picking-own-win .pickbar button.pb-cancel{min-width:116px;margin:0}.retired{margin:0 0 var(--s-18)}.retired .rtitle{font-size:var(--t-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);margin:0 0 var(--s-8) var(--s-2);font-weight:800}.retired .rchips{gap:var(--s-8);flex-wrap:wrap;display:flex}.rchip{background:var(--paper-2);border:1px solid var(--line);padding:var(--s-8) var(--s-10);font-size:var(--t-md);color:var(--ink-2);touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab;border-radius:10px;align-items:center;display:inline-flex}.rchip.dragging{opacity:.35}.rchip-float{z-index:var(--z-drag);pointer-events:none;box-shadow:var(--shadow-3);position:fixed;transform:translate(-50%,-50%)scale(1.06)}.rchip b{color:var(--ink);font-weight:700}.rchip .rs{font-variant-numeric:tabular-nums;margin-left:var(--s-8);font-weight:800}.rchip-x{margin-left:var(--s-10);background:var(--neg-soft);border:1px solid var(--neg);color:var(--neg);width:26px;height:26px;font-size:var(--t-xl);cursor:pointer;border-radius:7px;flex:none;padding:0;font-weight:700;line-height:1}.rchip.confirming{background:var(--neg-soft);border-color:var(--neg)}.rm-no{margin-left:var(--s-10);background:var(--paper-3);border:1px solid var(--line);color:var(--ink);padding:var(--s-6) var(--s-10);font-size:var(--t-sm);cursor:pointer;border-radius:7px;font-weight:700}.rm-yes{margin-left:var(--s-6);background:var(--neg);color:#fff;padding:var(--s-6) var(--s-10);font-size:var(--t-sm);cursor:pointer;border:none;border-radius:7px;font-weight:800}.rs.pos{color:var(--pos)}.rs.neg{color:var(--neg)}.rs.zero{color:var(--ink-soft)}.tut-icon{vertical-align:-.2em;flex:none;display:inline-block}.recordbar{margin-bottom:var(--s-18);flex-direction:column;display:flex}.recordrow{align-items:stretch;gap:var(--s-10);display:flex}.record-primary{cursor:pointer;min-height:56px;padding:0 var(--s-10);font:inherit;font-size:var(--t-base);letter-spacing:-.01em;flex:1.7 1 0;justify-content:center;align-items:center;display:inline-flex}.record-secondary{cursor:pointer;min-height:56px;padding:0 var(--s-10);font:inherit;font-size:var(--t-xl);letter-spacing:-.01em;flex:1 1 0;justify-content:center;align-items:center;display:inline-flex}.record-secondary[hidden]{display:none}.picker-list{gap:var(--s-8);display:grid}.picker-option{justify-content:space-between;align-items:center;gap:var(--s-12);width:100%;min-height:52px;padding:var(--s-10) var(--s-12);border:1px solid var(--line);border-radius:var(--r-md);background:var(--paper);color:var(--ink);text-align:left;cursor:pointer;display:flex}.picker-option span{font-weight:800}.picker-option small{color:var(--ink-soft);font-size:var(--t-xs);text-align:right}.hist-list{max-height:280px;overflow-y:auto}.hrow{padding:var(--s-10) var(--s-10);border-radius:10px}.hrow:nth-child(odd){background:var(--paper-3)}.hrow .ht{font-size:var(--t-md);color:var(--ink);align-items:baseline;gap:var(--s-8);font-weight:700;display:flex}.hrow .ht-time{font-size:var(--t-2xs);color:var(--ink-soft);flex:none;margin-left:auto;font-weight:600}.hrow-x{margin-left:var(--s-8);color:var(--ink-soft);font-size:var(--t-xl);cursor:pointer;padding:var(--s-2) var(--s-4);background:0 0;border:none;border-radius:6px;flex:none;font-weight:700;line-height:1;position:relative}.hrow-x:after{content:"";position:absolute;inset:-8px -10px}.hrow-x:first-child{margin-left:auto}.hrow-x.armed{background:var(--neg-soft);border:1px solid var(--neg);color:var(--neg);font-size:var(--t-xs);padding:var(--s-2) var(--s-8)}#game.viewonly .hrow-x{display:none}.hrow .hd{font-size:var(--t-sm);color:var(--ink-2);margin-top:var(--s-2);line-height:1.4}.hrow-photo{align-items:center;gap:var(--s-6);margin-top:var(--s-8);padding:var(--s-6) var(--s-10);border:1px solid var(--line);border-radius:var(--r-pill);background:var(--paper);color:var(--accent);font:inherit;font-size:var(--t-xs);cursor:pointer;font-weight:750;line-height:1;display:inline-flex}.hrow-photo svg{flex:none;width:14px;height:14px}.hrow-photo:active{transform:scale(.97)}.empty{text-align:center;color:var(--ink-soft);font-size:var(--t-md);padding:var(--s-24) var(--s-10)}.backdrop{opacity:0;pointer-events:none;z-index:var(--z-backdrop);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#321c2261;transition:opacity .22s;position:fixed;inset:0}.backdrop.on{opacity:1;pointer-events:auto}.sheet{z-index:var(--z-sheet);background:var(--paper-2);padding:var(--s-24) var(--s-16) calc(var(--s-20) + env(safe-area-inset-bottom));border-top:1px solid var(--line);max-width:520px;max-height:88vh;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;border-radius:22px 22px 0 0;max-height:88dvh;margin:0 auto;transition:transform .36s cubic-bezier(.22,1,.36,1);position:fixed;bottom:0;left:0;right:0;overflow-y:auto;transform:translateY(110%);box-shadow:0 -12px 44px #3c23283d}.sheet:before{content:"";border-radius:var(--r-pill);background:var(--line-2);width:42px;height:4px;position:absolute;top:9px;left:50%;transform:translate(-50%)}.sheet.on{transform:translateY(0)}.sheet.on.tucked{transform:translateY(110%)}.backdrop.on.tucked{opacity:0}.sheet h3{margin:0 0 var(--s-2);color:var(--ink);font-size:18px;font-weight:800}.sheet .hint{font-size:var(--t-md);color:var(--ink-2);margin:0 0 var(--s-14)}.sheet .hint:empty{display:none}.sheet h3,.field{margin-bottom:var(--s-14)}.field label{font-size:var(--t-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:var(--s-8);font-weight:800;display:block}.chips{gap:var(--s-8);flex-wrap:wrap;display:flex}.chip{border:1px solid var(--line-2);background:var(--paper);color:var(--ink);padding:var(--s-10) var(--s-14);font-size:var(--t-lg);cursor:pointer;text-align:center;border-radius:11px;flex:auto;min-width:64px;font-weight:700;transition:transform .12s,background .14s,border-color .14s,box-shadow .14s}.chip:active{transform:scale(.95)}.chip.sel{background:var(--accent);color:var(--on-accent);border-color:var(--accent);box-shadow:0 3px 10px -3px #7a2e4580}.chip.dis{opacity:.3;pointer-events:none}.combochips .chip{gap:var(--s-2);padding:var(--s-10) var(--s-12);flex-direction:column;line-height:1.2;display:flex}.combochips .chip b{font-size:var(--t-lg);font-weight:700}.combochips .chip small{font-size:var(--t-2xs);color:var(--ink-soft);letter-spacing:.02em;font-weight:600}.combochips .chip.sel small{color:#fbf2f3bf}.picked{align-items:center;gap:var(--s-12);background:var(--tint);border-radius:var(--r-pill);padding:var(--s-10) var(--s-10) var(--s-10) var(--s-16);margin:0 0 var(--s-18);display:flex}.picked .pk-txt{min-width:0;font-size:var(--t-lg);color:var(--ink-2);flex:auto;line-height:1.4}.picked .pk-txt b{color:var(--ink);font-weight:700}.picked .pk-txt em{color:var(--accent);font-style:normal;font-weight:700}.picked .pk-change{border:1px solid var(--line-2);background:var(--paper-2);color:var(--ink-2);border-radius:var(--r-pill);padding:0 var(--s-14);min-height:38px;font:inherit;font-size:var(--t-md);cursor:pointer;flex:none;font-weight:700}.pre-faan-capture{align-items:center;gap:var(--s-10);width:100%;margin:0 0 var(--s-16);padding:var(--s-10) var(--s-12);border:1px solid var(--accent);background:var(--tint);color:var(--accent);font:inherit;text-align:left;cursor:pointer;border-radius:14px;display:flex}.pre-faan-capture svg{flex:none;width:24px;height:24px}.pre-faan-capture span{gap:var(--s-2);flex-direction:column;min-width:0;display:flex}.pre-faan-capture b{font-size:var(--t-md);font-weight:800}.pre-faan-capture small{color:var(--ink-soft);font-size:var(--t-2xs);line-height:1.35}.pre-faan-capture:active{transform:scale(.99)}.scan-hand{align-items:center;gap:var(--s-10);width:100%;margin-top:var(--s-10);padding:var(--s-10) var(--s-14);text-align:left;cursor:pointer;border:1px solid var(--line);border-radius:var(--r-lg);color:var(--ink);font-size:var(--t-lg);background:#fff;font-weight:700;display:flex}.scan-hand svg{width:20px;height:20px;color:var(--felt);flex:none}.faanfield{margin-bottom:var(--s-10)}.faan-head{justify-content:space-between;align-items:baseline;gap:var(--s-12);margin-bottom:var(--s-8);display:flex}.faan-title{font-size:var(--t-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);font-weight:800}.faan-head #faanSub{font-size:var(--t-sm);color:var(--ink-soft);text-align:right;font-weight:600}.faan-display{width:100%;height:58px;margin-bottom:var(--s-8);border:1px solid var(--line-2);background:var(--paper);color:var(--ink);font:inherit;letter-spacing:-.02em;border-radius:14px;justify-content:center;align-items:center;font-size:30px;font-weight:800;display:flex}.faanpad{gap:var(--s-8);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.faan-key{border:1px solid var(--line-2);background:var(--paper);min-width:0;min-height:48px;color:var(--ink);font:inherit;cursor:pointer;border-radius:13px;font-size:19px;font-weight:800;line-height:1;transition:transform .12s,background .14s,border-color .14s;box-shadow:0 2px 5px -4px #3c232873}.faan-key:active{transform:scale(.96)}.faan-clear{font-size:var(--t-sm);color:var(--ink-soft)}.faan-back{color:var(--accent);font-size:20px}.note{font-size:var(--t-sm);color:var(--gold);margin:calc(var(--s-4) * -1) 0 var(--s-12);min-height:16px}.sheet:has(>.sheet-actions){padding-bottom:0}.sheet-actions{gap:var(--s-10);margin-top:var(--s-6);background:var(--paper-2);border-top:1px solid var(--line);padding:var(--s-10) 0 calc(var(--s-4) + var(--s-20) + env(safe-area-inset-bottom));display:flex;position:sticky;bottom:0}.capture-sheet{max-height:94vh;max-height:94dvh}.capture-head{justify-content:space-between;align-items:flex-start;gap:var(--s-16);margin-bottom:var(--s-2);display:flex}.capture-head>div{min-width:0}.capture-head span{margin-bottom:var(--s-2);color:var(--accent);font-size:var(--t-2xs);letter-spacing:.13em;font-weight:850;display:block}.capture-head h3{white-space:nowrap;text-overflow:ellipsis;margin:0;overflow:hidden}.capture-head .iconbtn{width:auto;padding:0 var(--s-10);font-size:var(--t-sm);flex:none}.capture-head .iconbtn:disabled{opacity:.4;cursor:default}.capture-privacy{line-height:1.45;margin-top:var(--s-6)!important}.capture-error{margin:var(--s-8) 0 var(--s-12);min-height:0}.capture-empty{text-align:center;padding:var(--s-24) var(--s-18);margin:var(--s-8) 0 var(--s-14);border:1px dashed var(--line-2);color:var(--ink-soft);border-radius:16px;flex-direction:column;align-items:center;display:flex}.capture-empty svg{width:30px;height:30px;margin-bottom:var(--s-10);color:var(--accent)}.capture-empty b{font-size:var(--t-md);color:var(--ink)}.capture-empty span{max-width:32ch;margin-top:var(--s-4);font-size:var(--t-sm);line-height:1.45}.capture-skeleton{height:150px;margin:var(--s-8) 0 var(--s-14)}.capture-pick{justify-content:center;align-items:center;gap:var(--s-10);border:1.5px solid var(--accent);border-radius:var(--r-pill);width:100%;min-height:50px;color:var(--accent);background:var(--paper);font-size:var(--t-lg);cursor:pointer;font-weight:800;display:flex}.capture-pick svg{width:20px;height:20px}.capture-file{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.capture-file:focus-visible+.capture-pick{outline:3px solid var(--gold);outline-offset:3px}.capture-instruction{margin:var(--s-6) 0 var(--s-10);color:var(--ink-2);font-size:var(--t-sm);line-height:1.45}.capture-crop{aspect-ratio:4/3;background:#193c34;border-radius:15px;width:100%;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff1f}.capture-crop canvas{touch-action:none;cursor:grab;width:100%;height:100%;display:block}.capture-crop canvas:active{cursor:grabbing}.capture-decoding{color:#fff;height:100%;font-size:var(--t-sm);place-items:center;font-weight:700;display:grid}.capture-controls{align-items:center;gap:var(--s-10);margin:var(--s-10) var(--s-2) var(--s-16);color:var(--ink-2);font-size:var(--t-xs);grid-template-columns:1fr auto;font-weight:750;display:grid}.capture-controls output{color:var(--accent);font-variant-numeric:tabular-nums}.capture-rotate{justify-content:center;align-items:center;gap:var(--s-8);border:1px solid var(--line-2);border-radius:var(--r-pill);background:var(--paper);min-height:40px;color:var(--ink);font:inherit;cursor:pointer;grid-column:1/-1;display:flex}.capture-rotate svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:17px;height:17px}.capture-source{gap:var(--s-8);margin:0 0 var(--s-12);border:0;grid-template-columns:1fr 1fr;padding:0;display:grid}.capture-source legend{margin-bottom:var(--s-8);color:var(--ink-soft);font-size:var(--t-2xs);letter-spacing:.08em;text-transform:uppercase;grid-column:1/-1;font-weight:800}.capture-source label{align-items:flex-start;gap:var(--s-8);padding:var(--s-10);border:1px solid var(--line);background:var(--paper);cursor:pointer;border-radius:12px;display:flex}.capture-source input{margin-top:var(--s-2);accent-color:var(--accent)}.capture-source span{gap:var(--s-2);flex-direction:column;display:flex}.capture-source b{font-size:var(--t-sm);color:var(--ink)}.capture-source small{font-size:var(--t-2xs);color:var(--ink-soft);line-height:1.3}.capture-consent{align-items:flex-start;gap:var(--s-10);padding:var(--s-12);border:1px solid var(--line-2);background:var(--tint);cursor:pointer;border-radius:13px;display:flex}.capture-consent input{width:18px;height:18px;accent-color:var(--accent);flex:none;margin:1px 0 0}.capture-consent span{gap:var(--s-2);flex-direction:column;display:flex}.capture-consent b{font-size:var(--t-sm);color:var(--ink)}.capture-consent small{font-size:var(--t-2xs);color:var(--ink-2);line-height:1.4}.capture-concealed{gap:var(--s-8);margin:0 0 var(--s-12);padding:var(--s-12);border:1px solid var(--line-2);background:var(--tint);border-radius:13px;grid-template-columns:1fr 1fr;display:grid}.capture-concealed legend{padding:0 var(--s-4);color:var(--ink);font-size:var(--t-sm);font-weight:800}.capture-concealed p{margin:0 0 var(--s-2);color:var(--ink-2);font-size:var(--t-2xs);grid-column:1/-1;line-height:1.4}.capture-concealed label{align-items:center;gap:var(--s-8);padding:var(--s-10);border:1px solid var(--line);background:var(--paper);color:var(--ink);font-size:var(--t-xs);cursor:pointer;border-radius:11px;font-weight:750;display:flex}.capture-concealed input{accent-color:var(--accent);margin:0}.capture-retention{margin:var(--s-8) var(--s-4) var(--s-2);color:var(--ink-soft);font-size:var(--t-2xs);line-height:1.4}.capture-list{gap:var(--s-12);margin:var(--s-8) 0 var(--s-14);display:grid}.capture-card{border:1px solid var(--line);background:var(--paper);border-radius:15px;overflow:hidden}.capture-card img{aspect-ratio:4/3;object-fit:cover;background:var(--paper-3);width:100%;display:block}.capture-meta{align-items:center;gap:var(--s-6) var(--s-10);padding:var(--s-10) var(--s-10) var(--s-4);color:var(--ink-soft);font-size:var(--t-2xs);flex-wrap:wrap;display:flex}.capture-state{padding:var(--s-2) var(--s-6);border-radius:var(--r-pill);background:var(--gold-soft);color:var(--gold);font-weight:800}.capture-state.approved{background:var(--pos-soft);color:var(--pos)}.capture-card-actions{justify-content:flex-end;gap:var(--s-8);padding:var(--s-8) var(--s-10) var(--s-10);display:flex}.capture-card-actions button{min-height:36px;padding:0 var(--s-12);font-size:var(--t-xs);cursor:pointer}.skel{height:64px;margin-bottom:var(--s-10);background:linear-gradient(90deg,var(--paper-3) 25%,var(--line) 50%,var(--paper-3) 75%);background-size:200% 100%;border-radius:13px;animation:1.2s linear infinite skel}@keyframes skel{to{background-position:-200% 0}}.btn-cancel{background:var(--paper-3);border:1px solid var(--line);color:var(--ink);border-radius:var(--r-pill);padding:var(--s-14) var(--s-20);font-size:var(--t-xl);cursor:pointer;flex:none;font-weight:700;transition:transform .12s}.btn-cancel:active{transform:scale(.97)}.btn-apply{background:var(--accent);color:var(--on-accent);border-radius:var(--r-pill);padding:var(--s-14);font-size:var(--t-xl);cursor:pointer;border:none;flex:1;font-weight:800;transition:transform .12s;box-shadow:0 5px 14px -5px #7a2e458c}.btn-apply:active{transform:translateY(2px)}.btn-apply:disabled{opacity:.4;cursor:default;box-shadow:none}.pmrename{gap:var(--s-8);align-items:center;display:flex}.pmrename .nameinput{flex:1}.pmrename .btn-cancel{padding:var(--s-10) var(--s-16);font-size:var(--t-lg);flex:none}.warnreminder{font-size:var(--t-sm);color:#6b4a1e;padding:var(--s-10) var(--s-10);margin:calc(var(--s-4) * -1) 0 var(--s-14);background:#faefd9;border:1px solid #e3c88c;border-radius:10px;line-height:1.35}.dice-wrap{gap:var(--s-18);margin:var(--s-10) 0 var(--s-14);perspective:560px;justify-content:center;display:flex}.die3d{width:62px;height:62px;position:relative}.cube{transform-style:preserve-3d;transition:transform .95s cubic-bezier(.16,.88,.24,1);position:absolute;inset:0}.dface{background:var(--tile-face);padding:var(--s-10);box-shadow:inset 0 0 0 1px var(--tile-edge);backface-visibility:hidden;border-radius:12px;grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(3,1fr);display:grid;position:absolute;inset:0}.dface:first-child{transform:translateZ(31px)}.dface:nth-child(2){transform:rotateY(180deg)translateZ(31px)}.dface:nth-child(3){transform:rotateY(90deg)translateZ(31px)}.dface:nth-child(4){transform:rotateY(-90deg)translateZ(31px)}.dface:nth-child(5){transform:rotateX(90deg)translateZ(31px)}.dface:nth-child(6){transform:rotateX(-90deg)translateZ(31px)}.pip{background:var(--ink);border-radius:50%;place-self:center;width:9px;height:9px}.pip.red{background:var(--neg)}.dice-total{text-align:center;margin:0 0 var(--s-14);font-size:var(--t-md);color:var(--ink-2)}.dice-total b{color:var(--accent);font-variant-numeric:tabular-nums;vertical-align:-4px;margin-left:var(--s-6);font-size:30px;font-weight:800}.dice-result{background:var(--tint);border:1px solid var(--line-2);padding:var(--s-10) var(--s-12);margin:0 0 var(--s-16);text-align:center;font-size:var(--t-lg);color:var(--accent);border-radius:12px;font-weight:700}.dice-result b{color:var(--ink)}.setup{background:var(--paper-2);border:1px solid var(--line);padding:var(--s-18);box-shadow:var(--shadow-1);border-radius:16px}.setup h2{font-size:var(--t-xl);margin:0 0 var(--s-12);color:var(--ink);font-weight:800}.count{gap:var(--s-8);margin-bottom:var(--s-16);display:flex}.count button{border:1px solid var(--line-2);background:var(--paper);color:var(--ink);padding:var(--s-12);font-size:var(--t-xl);cursor:pointer;border-radius:10px;flex:1;font-weight:800}.count button.sel{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.namerow{align-items:center;gap:var(--s-10);margin-bottom:var(--s-10);display:flex}.nameseat{background:var(--paper-3);width:34px;height:34px;font-weight:800;font-size:var(--t-lg);color:var(--accent);border-radius:8px;flex:none;justify-content:center;align-items:center;display:flex}.nameinput{background:var(--paper);border:1px solid var(--line-2);padding:var(--s-10) var(--s-12);color:var(--ink);font-size:var(--t-xl);border-radius:10px;flex:1;font-family:inherit}.nameinput:focus{border-color:var(--accent);outline:none}.nameinput:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 18%,transparent);outline-offset:2px}.dealerpick{font-size:var(--t-sm);color:var(--ink-2);margin:var(--s-14) 0 var(--s-8);letter-spacing:.05em;font-weight:700}.start{background:var(--accent);width:100%;color:var(--on-accent);border-radius:var(--r-pill);padding:var(--s-16);font-size:var(--t-base);cursor:pointer;margin-top:var(--s-16);border:none;font-weight:800;transition:transform .12s;box-shadow:0 6px 18px -6px #7a2e4580}.wrap:has(#login:not(.hidden)){min-height:100vh;min-height:100dvh;padding-bottom:calc(var(--s-18) + env(safe-area-inset-bottom));flex-direction:column;display:flex}.wrap:has(#login:not(.hidden))>#main{flex-direction:column;flex:auto;display:flex}body:has(#login:not(.hidden)){background:var(--paper-2)}.wrap:has(#login:not(.hidden)) #login{flex-direction:column;flex:auto;justify-content:center;display:flex;position:relative}#login .setup{width:100%;max-width:360px;box-shadow:none;background:0 0;border:0;border-radius:0;margin-inline:auto;padding:0}#login .setup h2{letter-spacing:-.02em;text-align:center;margin-bottom:var(--s-16);font-weight:600}#login .field label{letter-spacing:0;text-transform:none;color:var(--ink-soft);font-size:13px;font-weight:500}#login .start,#login .gbtn{border-radius:var(--r-pill);min-height:52px;box-shadow:none;font-size:15px;font-weight:600;transition:background .18s,transform .18s}#login .start{border:1px solid var(--accent)}#login .start:hover{background:var(--accent-hi)}#login .start:active,#login .gbtn:active{transform:scale(.97)}#login .linkbtn,#login .authswap{font-weight:500}.gbtn{justify-content:center;align-items:center;gap:var(--s-10);border:1px solid var(--line-2);width:100%;padding:var(--s-12) var(--s-14);font:inherit;font-size:var(--t-lg);color:#3c4043;cursor:pointer;box-shadow:var(--shadow-1);background:#fff;border-radius:12px;font-weight:700;display:flex}.gbtn:hover{background:#fafafa}.gbtn:active{transform:translateY(1px)}.gbtn svg{flex:none}.offlinenote{margin:0 0 var(--s-14);padding:var(--s-10) var(--s-12);border-radius:var(--r-md);background:var(--paper-3);border:1px solid var(--line);color:var(--ink-2);font-size:var(--t-md);line-height:1.5}.pwfield{align-items:center;display:flex;position:relative}.pwfield .nameinput{padding-right:44px}.pwpeek{width:36px;height:36px;color:var(--ink-soft);cursor:pointer;background:0 0;border:0;border-radius:9px;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.pwpeek:hover,.pwpeek[aria-pressed=true]{color:var(--accent)}.pwpeek:active{transform:translateY(-50%)scale(.94)}.orline{align-items:center;gap:var(--s-10);margin:var(--s-14) 0;color:var(--ink-soft);font-size:var(--t-sm);letter-spacing:.1em;text-transform:uppercase;font-weight:800;display:flex}.orline:before,.orline:after{content:"";background:var(--line);flex:1;height:1px}.authswap{margin-top:var(--s-14);text-align:center;font-size:var(--t-md);color:var(--ink-2)}.linkbtn{font:inherit;color:var(--accent);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;font-weight:800;text-decoration:underline}.linkbtn:hover{color:var(--accent-hi)}#login .note code{background:var(--paper-3);padding:1px var(--s-4);border-radius:4px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.94em}.setpage-head{top:env(safe-area-inset-top);z-index:10;margin:0 calc(var(--s-16) * -1) var(--s-12);padding:var(--s-10) var(--s-16) var(--s-10);background:var(--paper);position:sticky}.setpage-head:after{content:"";background:linear-gradient(180deg,var(--paper),#f6f1f000);pointer-events:none;height:12px;position:absolute;bottom:-12px;left:0;right:0}.setpage-top{justify-content:space-between;align-items:center;display:flex}.setpage-head h2{margin:0;font-size:20px;font-weight:800}.settabs{gap:var(--s-4);margin-top:var(--s-10);background:var(--paper-3);border:1px solid var(--line);padding:var(--s-2);border-radius:12px;display:flex}.settabs button{min-height:36px;font:inherit;font-size:var(--t-md);color:var(--ink-2);cursor:pointer;background:0 0;border:0;border-radius:9px;flex:1 1 0;font-weight:700;transition:background .15s,color .15s,box-shadow .15s}.settabs button[aria-selected=true]{background:var(--paper-2);color:var(--ink);box-shadow:var(--shadow-1)}.setpanel>.setsec:last-child,.setpanel>.setdetails:last-child{margin-bottom:0}.gamefoot{margin-top:var(--s-22);padding-top:var(--s-18);border-top:1px solid var(--line)}.gamefoot .danger.hidden{display:none}.setfine{margin:var(--s-16) 0 0;text-align:center;font-size:var(--t-md)}.setsec{background:var(--paper-2);border:1px solid var(--line);padding:var(--s-16);margin-bottom:var(--s-14);box-shadow:var(--shadow-1);border-radius:16px}.setsec h3{margin:0 0 var(--s-12);font-size:var(--t-sm);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);font-weight:800}.setdetails.plainsec>summary{cursor:default;pointer-events:none}.setdetails.plainsec>summary:after{display:none}.setnote{font-size:var(--t-md);color:var(--ink-2);margin:0 0 var(--s-12);line-height:1.5}.setdetails{padding:0 var(--s-16)}.setdetails summary{cursor:pointer;-webkit-user-select:none;user-select:none;margin:0 calc(var(--s-16) * -1);padding:var(--s-16);justify-content:space-between;align-items:center;gap:var(--s-10);font-size:var(--t-sm);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);font-weight:800;list-style:none;display:flex}.setdetails summary::-webkit-details-marker{display:none}.setdetails summary:after{content:"›";color:var(--accent);transition:transform .18s var(--ease);font-size:18px;font-weight:700;line-height:1;transform:rotate(90deg)}.setdetails[open]{padding-bottom:var(--s-16)}.setdetails[open] summary{margin-bottom:var(--s-14);border-bottom:1px solid var(--line)}.setdetails[open] summary:after{transform:rotate(-90deg)}#settings .setsec,.tour-stage .setsec{box-shadow:none;padding:var(--s-18) 0;background:0 0;border:0;border-radius:0;margin:0}#settings .setpanel>.setsec:not(:last-child),.tour-stage .setpanel>.setsec:not(:last-child){border-bottom:1px solid var(--line)}#settings .setdetails,.tour-stage .setdetails{padding-left:0;padding-right:0}#settings .setdetails summary,.tour-stage .setdetails summary{margin-left:0;margin-right:0;padding-left:0;padding-right:0}.togrow{justify-content:space-between;align-items:center;gap:var(--s-12);display:flex}.togrow+.togrow{margin-top:var(--s-14);padding-top:var(--s-14);border-top:1px solid var(--line)}.togrow .lbl{font-size:var(--t-lg);font-weight:700}.togrow .sub2{font-size:var(--t-sm);color:var(--ink-2);margin-top:var(--s-2)}.language-row{justify-content:space-between;align-items:center;gap:var(--s-18);margin-bottom:var(--s-14);padding-bottom:var(--s-14);border-bottom:1px solid var(--line);display:flex}.language-row label{flex:1;min-width:0}.language-row .lbl{font-size:var(--t-lg);font-weight:700;display:block}.language-row .sub2{font-size:var(--t-sm);color:var(--ink-2);margin-top:var(--s-2);line-height:1.35;display:block}.language-picker{flex:none;width:180px;max-width:100%}.dropdown{position:relative}.dropdown__trigger{align-items:center;gap:var(--s-12);box-sizing:border-box;width:100%;min-height:44px;padding:0 var(--s-16);border:1px solid var(--line-2);background:var(--paper-2);color:var(--ink);font:inherit;font-size:var(--t-md);text-align:left;cursor:pointer;transition:border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease),background var(--dur) var(--ease);border-radius:14px;font-weight:750;display:flex}.dropdown__trigger:hover{border-color:var(--accent);background:#fff}.dropdown__trigger:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 18%,transparent);outline-offset:2px;border-color:var(--accent)}.dropdown--open .dropdown__trigger{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 10%,transparent);background:#fff}.dropdown__value{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.dropdown__chevron{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px;transition:transform var(--dur) var(--ease);flex:0 0 16px;margin-left:auto;overflow:visible}.dropdown--open .dropdown__chevron{transform:rotate(180deg)}.dropdown__menu{z-index:var(--z-backdrop);box-sizing:border-box;width:230px;max-width:calc(100vw - 32px);padding:var(--s-6);border:1px solid var(--line-2);background:var(--paper-2);box-shadow:var(--shadow-3);border-radius:16px;position:absolute;top:calc(100% + 8px);right:0}.dropdown__menu[hidden]{display:none}.dropdown__option{align-items:center;gap:var(--s-12);box-sizing:border-box;width:100%;min-height:44px;padding:var(--s-10) var(--s-10) var(--s-10) var(--s-12);color:var(--ink);font:inherit;font-size:var(--t-md);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:11px;font-weight:700;display:flex}.dropdown__option:hover,.dropdown__option:focus-visible{background:var(--paper-3);outline:0}.dropdown__option.is-selected{background:var(--tint);color:var(--accent);font-weight:800}.dropdown__option-label{flex:1;min-width:0}.dropdown__check{background:var(--accent);width:20px;height:20px;color:var(--on-accent);font-size:var(--t-sm);opacity:0;transition:opacity var(--dur) var(--ease),transform var(--dur) var(--ease);border-radius:50%;flex:0 0 20px;place-items:center;font-weight:900;line-height:1;display:grid;transform:scale(.7)}.dropdown__option.is-selected .dropdown__check{opacity:1;transform:scale(1)}@media (max-width:430px){.language-row{flex-direction:column;align-items:flex-start}.language-picker,.dropdown__menu{width:100%;max-width:none}}.release-about{justify-content:space-between;align-items:center;gap:var(--s-12);display:flex}.release-about .lbl{font-size:var(--t-lg);font-weight:700}.release-about .sub2{font-size:var(--t-sm);color:var(--ink-2);margin-top:var(--s-2);font-variant-numeric:tabular-nums}.release-notes{margin-top:var(--s-14);padding-top:var(--s-14);border-top:1px solid var(--line)}.release-notes>summary{min-height:40px;padding-right:var(--s-24);cursor:pointer;color:var(--accent);font-size:var(--t-lg);align-items:center;font-weight:750;list-style:none;display:flex;position:relative}.release-notes>summary::-webkit-details-marker{display:none}.release-notes>summary:after{content:"›";color:var(--accent);transition:transform var(--dur) var(--ease);font-size:21px;line-height:1;position:absolute;top:50%;right:2px;transform:translateY(-50%)}.release-notes[open]>summary:after{transform:translateY(-50%)rotate(90deg)}.release-entry{padding:var(--s-14) 0 var(--s-2);border-top:1px solid var(--line)}.release-entry:first-child{margin-top:var(--s-4)}.release-entry+.release-entry{margin-top:var(--s-10)}.release-head{justify-content:space-between;align-items:baseline;gap:var(--s-12);display:flex}.release-head h4{font-size:var(--t-xl);color:var(--ink);margin:0}.release-head time{font-size:var(--t-xs);color:var(--ink-soft);white-space:nowrap;font-weight:650}.release-intro{margin:var(--s-6) 0 0;color:var(--ink-2);font-size:var(--t-md);line-height:1.45}.release-entry h5{margin:var(--s-12) 0 var(--s-6);font-size:var(--t-2xs);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft)}.release-entry ul{padding-left:var(--s-18);margin:0}.release-entry li{margin:0 0 var(--s-8);color:var(--ink-2);font-size:var(--t-md);line-height:1.45}.toggle{border-radius:var(--r-pill);background:var(--line-2);cursor:pointer;border:none;flex:none;width:48px;height:28px;position:relative}.toggle.on{background:var(--accent)}.toggle:after{content:"";width:22px;height:22px;box-shadow:var(--shadow-1);background:#fff;border-radius:50%;transition:left .15s;position:absolute;top:3px;left:3px}.toggle.on:after{left:23px}.rule{background:var(--paper);border:1px solid var(--line);padding:var(--s-12);margin-bottom:var(--s-10);border-radius:12px}.rule-top{align-items:center;gap:var(--s-8);margin-bottom:var(--s-10);display:flex}.rule-name{font-size:var(--t-xl);color:var(--ink);background:var(--paper-2);border:1px solid var(--line-2);padding:var(--s-8) var(--s-10);border-radius:8px;flex:1;min-width:0;font-family:inherit;font-weight:800}.rule-name:focus{border-color:var(--accent);outline:none}.rule-name:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 18%,transparent);outline-offset:2px}.rule-name.fixed{background:0 0;border:none;padding:0}.rule-pron{margin-top:var(--s-2);color:var(--ink-2);font-size:var(--t-xs);letter-spacing:.01em;font-weight:700;display:block}.shape-tag{font-size:var(--t-3xs);letter-spacing:.05em;text-transform:uppercase;color:var(--on-accent);background:var(--accent);padding:var(--s-4) var(--s-8);border-radius:6px;flex:none;font-weight:800}.shape-tag.b{background:var(--ink-soft)}.rule-del{background:var(--neg-soft);border:1px solid var(--neg);color:var(--neg);cursor:pointer;border-radius:8px;flex:none;width:32px;height:32px;font-size:17px;font-weight:700;line-height:1}.pts{gap:var(--s-8);flex-wrap:wrap;display:flex}.pt{flex:84px}.pt label{font-size:var(--t-2xs);letter-spacing:.03em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:var(--s-6);font-weight:700;display:block}.pt input{background:var(--paper-2);border:1px solid var(--line-2);width:100%;padding:var(--s-10) var(--s-8);color:var(--ink);font-size:var(--t-base);text-align:center;font-variant-numeric:tabular-nums;border-radius:9px;font-family:inherit;font-weight:800}.pt input:focus{border-color:var(--accent);outline:none}.pt input:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 18%,transparent);outline-offset:2px}.rule-take{font-size:var(--t-sm);color:var(--gold);margin-top:var(--s-10);font-weight:600;line-height:1.35}.seg{gap:var(--s-6);display:flex}.seg button{border:1px solid var(--line-2);background:var(--paper);color:var(--ink);padding:var(--s-10) var(--s-6);font-size:var(--t-sm);cursor:pointer;border-radius:9px;flex:1;font-weight:700}.seg button.sel{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.rulesetseg{margin:var(--s-2) 0 var(--s-14)}.quietseg{background:var(--paper-3);border-radius:var(--r-pill);padding:var(--s-2);gap:0}.quietseg button{color:var(--ink-soft);border-radius:var(--r-pill);font-size:var(--t-md);background:0 0;border:0;min-height:38px;font-weight:700}.quietseg button.sel{background:var(--paper-2);color:var(--ink);box-shadow:var(--shadow-1)}#sheet .note{white-space:pre-line}.addbtn{background:var(--accent);width:100%;color:var(--on-accent);border-radius:var(--r-pill);padding:var(--s-14);font-size:var(--t-xl);cursor:pointer;margin-top:var(--s-16);border:none;font-weight:800;transition:transform .12s;box-shadow:0 5px 14px -5px #7a2e4580}.addbtn:active{transform:translateY(2px)}.addbtn:disabled{opacity:.4;cursor:default;box-shadow:none}.danger{border:1px solid var(--line-2);width:100%;color:var(--neg);border-radius:var(--r-pill);padding:var(--s-12);cursor:pointer;margin-top:var(--s-2);background:0 0;font-weight:700;transition:transform .12s,background .15s}.danger.armed{background:var(--neg);color:#fff;border-color:var(--neg);box-shadow:0 5px 14px -5px #b4473a99}.danger:active{transform:scale(.99)}.pager{justify-content:center;align-items:center;gap:var(--s-6);margin-top:var(--s-14);display:flex}.pgbtn{border:1px solid var(--line-2);background:var(--paper-2);width:44px;height:44px;color:var(--ink);font:inherit;cursor:pointer;border-radius:50%;flex:none;justify-content:center;align-items:center;padding:0;display:flex}.pgbtn svg{display:block}.pgbtn:disabled{opacity:.3;cursor:default}.pgbtn:active:not(:disabled){transform:scale(.94)}.pgcount{text-align:center;min-width:110px;font-size:var(--t-sm);letter-spacing:.06em;color:var(--ink-soft);font-variant-numeric:tabular-nums;font-weight:700}.resume{align-items:center;gap:var(--s-16);text-align:left;background:var(--accent);width:100%;color:var(--on-accent);padding:var(--s-18) var(--s-20);margin:0 0 var(--s-26);cursor:pointer;font:inherit;border:0;border-radius:22px;display:flex;box-shadow:0 8px 24px -10px #7a2e458c}.resume:active{transform:translateY(2px)}.resume .rs-table{flex:none;width:74px}.resume .rs-txt{gap:var(--s-2);flex-direction:column;flex:auto;min-width:0;display:flex}.resume .rs-txt b{letter-spacing:-.02em;font-size:19px;font-weight:700;line-height:1.2}.resume .rs-txt span{font-size:var(--t-md);color:#fbf2f3c7;text-overflow:ellipsis;white-space:nowrap;line-height:1.45;overflow:hidden}.minitable{aspect-ratio:1;width:100%;display:block;position:relative}.minitable .mjfelt{width:70%;box-shadow:0 0 0 3px var(--rail),0 4px 10px -4px #00000080,inset 0 0 14px #00000047;margin:0;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(45deg)}.minitable .mjcore .mjround{font-size:var(--t-xl)}.minitable .mjwall.n,.minitable .mjwall.s{background:repeating-linear-gradient(90deg,var(--tile-face) 0 3px,var(--tile-edge) 3px 3.6px)}.minitable .mjwall.w,.minitable .mjwall.e{background:repeating-linear-gradient(0deg,var(--tile-face) 0 3px,var(--tile-edge) 3px 3.6px)}.roomlist{margin-top:var(--s-2);--room-row:67px;flex-direction:column;gap:0;display:flex}.roomlist.fixed-page{min-height:calc(var(--room-row) * 5)}#gamesList{--room-row:54px}.roomcard{align-items:center;gap:var(--s-10);text-align:left;border:0;border-bottom:1px solid var(--line);width:100%;padding:var(--s-16) var(--s-2);min-height:var(--room-row,67px);color:var(--ink);cursor:pointer;box-shadow:none;background:0 0;border-radius:0;display:flex}.roomlist>:last-child .roomcard,.roomlist>.roomcard:last-child{border-bottom:0}.roomcard:active{opacity:.6;transform:none}.roomcard .rc-main{flex:auto;min-width:0}.roomcard .rc-name{font-weight:600;font-size:var(--t-base);letter-spacing:-.01em;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.roomcard .rc-sub{font-size:var(--t-sm);color:var(--ink-soft);margin-top:var(--s-2);font-weight:600}.roomcard .rc-arrow{color:var(--ink-soft);flex:none;font-size:22px;font-weight:700;line-height:1}.roomrow{align-items:center;gap:var(--s-10);display:flex}.roomlist .roomrow{border-bottom:1px solid var(--line);padding:var(--s-12) var(--s-2);min-height:52px}.roomlist>:last-child .roomrow,.roomlist>.roomrow:last-child,.roomlist .roomrow.confirming{border-bottom:0}#rosterList{gap:0}.roomrow .nameinput{flex:auto;width:auto}.roomrow.confirming{background:var(--neg-soft);border:1px solid var(--neg);padding:var(--s-8) var(--s-10);font-size:var(--t-md);color:var(--neg);border-radius:11px;justify-content:space-between}.roomrow .rm-no,.roomrow .rm-yes{padding:var(--s-8) var(--s-12);font-size:var(--t-md);cursor:pointer;border:none;border-radius:8px;font-weight:700}.roomrow .rm-no{background:var(--paper-3);color:var(--ink)}.roomrow .rm-yes{background:var(--neg);color:#fff}.backlink{align-items:center;gap:var(--s-8);background:var(--paper-2);border:1px solid var(--line);color:var(--ink-2);font-size:var(--t-md);cursor:pointer;min-height:32px;padding:0 var(--s-12) 0 var(--s-10);border-radius:var(--r-pill);margin:0 0 var(--s-14);font-weight:700;display:inline-flex;position:relative}.backlink:after{content:"";position:absolute;inset:-6px 0}.backlink.pressed{background:var(--paper-3);transform:var(--press)}.backlink .bl-arrow{width:16px;height:16px;color:var(--accent);flex:none}.backlink:active{background:var(--paper-3)}.brand-home:focus-visible{border-radius:4px}.windpick{gap:var(--s-8);margin-bottom:var(--s-12);grid-template-columns:repeat(4,1fr);display:grid}.windpick button{justify-content:center;align-items:center;gap:var(--s-2);border:1px solid var(--line-2);border-radius:var(--r-md);background:var(--paper-2);min-height:62px;color:var(--ink);font:inherit;cursor:pointer;flex-direction:column;display:flex}.windpick button b{font-size:19px;font-weight:700;line-height:1}.windpick button span{font-size:var(--t-2xs);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);font-weight:700}.windpick button.sel{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.windpick button.sel span{color:#fbf2f3bf}.field.kingfield{margin-top:var(--s-16);padding-top:var(--s-14);border-top:1px solid var(--line)}.kinghint{font-size:var(--t-sm);color:var(--ink-soft);margin-top:var(--s-2);line-height:1.45}.kingpick{gap:var(--s-8);margin-top:var(--s-10);grid-template-columns:repeat(2,1fr);display:grid}.kingpick button{justify-content:center;align-items:center;gap:var(--s-2);min-height:54px;padding:var(--s-6) var(--s-8);border:1px solid var(--line-2);border-radius:var(--r-md);background:var(--paper-2);color:var(--ink);font:inherit;cursor:pointer;flex-direction:column;display:flex}.kingpick button b{font-size:var(--t-lg);text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-weight:700;line-height:1.15;overflow:hidden}.kingpick button span{font-size:var(--t-2xs);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);font-weight:700}.kingpick button.sel{background:var(--gold);border-color:var(--gold);color:#fff6e4}.kingpick button.sel span{color:#fff6e4c7}.seatslots{gap:var(--s-10);grid-template-columns:1fr 1fr;display:grid}.seatslot{background:var(--paper);border:1.5px dashed var(--line-2);padding:var(--s-10);gap:var(--s-6);border-radius:13px;flex-direction:column;min-height:74px;display:flex;position:relative}.seatslot.over{border-color:var(--accent);background:var(--tint)}.seatslot .slotlab{align-items:center;gap:var(--s-8);font-size:var(--t-2xs);letter-spacing:.1em;color:var(--ink-soft);text-transform:uppercase;font-weight:800;display:flex}.seatslot .slotwind{background:var(--paper-3);width:22px;height:22px;color:var(--ink-2);font-size:var(--t-sm);letter-spacing:0;border-radius:50%;flex:none;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.seatslot .slotwind.is-east{background:var(--accent);color:var(--on-accent)}.seatslot .slotnum{opacity:.7;letter-spacing:.06em;margin-left:auto}.bench{gap:var(--s-8);background:var(--paper);border:1.5px dashed var(--line-2);min-height:46px;padding:var(--s-10);border-radius:13px;flex-wrap:wrap;display:flex}.bench.over{border-color:var(--accent);background:var(--tint)}.pchip{align-items:center;gap:var(--s-8);background:var(--paper-2);color:var(--ink);border:1px solid var(--line-2);padding:var(--s-10) var(--s-12);font-size:var(--t-lg);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;box-shadow:var(--shadow-1);border-radius:11px;font-weight:700;display:inline-flex}.pchip.dealer{outline:2.5px solid var(--accent);outline-offset:-1px}.pchip .zh{color:var(--accent);font-weight:800;font-size:var(--t-sm)}.pchip.dragging{opacity:.35}.pchip-float{z-index:var(--z-drag);pointer-events:none;box-shadow:var(--shadow-3);position:fixed;transform:translate(-50%,-50%)scale(1.04)}.seatslot .empty-slot{color:var(--ink-soft);font-size:var(--t-sm);margin-top:var(--s-2);font-weight:600}.gamebar{align-items:center;gap:var(--s-10);margin-bottom:var(--s-8);display:flex}.gamebar .gmeta{font-size:var(--t-sm);color:var(--ink-soft);text-align:right;flex:auto;font-weight:700}.syncstatus{align-items:center;gap:var(--s-6);min-height:30px;padding:0 var(--s-10);border:1px solid var(--line);border-radius:var(--r-pill);color:var(--ink-2);font-size:var(--t-xs);white-space:nowrap;background:var(--paper-2);flex:none;font-weight:700;display:inline-flex}.syncretry{margin-left:var(--s-6);min-height:30px;padding:0 var(--s-10);border:1px solid var(--accent);border-radius:var(--r-pill);background:var(--paper-2);color:var(--accent);font:inherit;font-size:var(--t-xs);white-space:nowrap;cursor:pointer;flex:none;font-weight:800}.syncretry:active{transform:var(--press)}.syncdot{background:var(--pos);border-radius:50%;width:9px;height:9px;transition:background .2s}.syncdot.saving{background:var(--gold)}.syncdot.offline,.syncdot.error{background:var(--neg)}.syncdot.retry{background:var(--gold)}.syncdot.live{background:var(--pos);animation:2s ease-in-out infinite livepulse}.syncdot.reconnecting{background:var(--gold)}@keyframes livepulse{0%,to{opacity:1}50%{opacity:.35}}.lbrow{align-items:center;gap:var(--s-10);border:0;border-bottom:1px solid var(--line);padding:var(--s-14) var(--s-2);box-shadow:none;background:0 0;border-radius:0;display:flex}.lbrow .lb-rank{width:20px;color:var(--accent);font-weight:800;font-size:var(--t-md);flex:none}.lbrow .lb-medal{text-align:center;flex:none;width:24px;font-size:17px;line-height:1}.lbrow .lb-name{text-overflow:ellipsis;white-space:nowrap;flex:auto;font-weight:700;overflow:hidden}.lbrow .lb-name .mem-you{margin-left:var(--s-8);vertical-align:2px}.lbrow .lb-sub{font-size:var(--t-xs);color:var(--ink-soft);font-weight:600}.lb-sub .gw{color:var(--pos);font-variant-numeric:tabular-nums}.lb-sub .gl{color:var(--neg);font-variant-numeric:tabular-nums}.lbrow .lb-total{font-variant-numeric:tabular-nums;flex:none;font-weight:800}.lbrow .lb-total.pos{color:var(--pos)}.lbrow .lb-total.neg{color:var(--neg)}.lbrow .lb-total.zero{color:var(--ink-soft)}.gamerow{border:0;border-bottom:1px solid var(--line);width:100%;color:var(--ink);background:0 0;border-radius:0;align-items:stretch;gap:0;display:flex}.gamerow .gr-main{flex:auto;min-width:0}.gr-open{align-items:center;gap:var(--s-10);min-width:0;padding:var(--s-10) var(--s-8) var(--s-10) var(--s-12);color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:auto;display:flex}.gr-menu{width:44px;min-height:44px;color:var(--ink-soft);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:0;flex:0 0 44px;font-size:22px;line-height:1}.gamerow .gr-title{font-weight:600;font-size:var(--t-xl)}.gamerow .gr-sub{font-size:var(--t-xs);color:var(--ink-soft);margin-top:var(--s-2);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.gamerow .gr-badge{font-size:var(--t-2xs);letter-spacing:.06em;text-transform:uppercase;padding:var(--s-2) var(--s-8);border-radius:var(--r-pill);flex:none;font-weight:800}.gamerow .gr-badge.active{color:var(--pos);background:#dfeee7;border:1px solid #b9d9cc}.gamerow .gr-badge.ended{background:var(--paper-3);color:var(--ink-soft);border:1px solid var(--line)}.gw{border-radius:11px;position:relative;overflow:hidden}.gw .gamerow{background:var(--paper);touch-action:pan-y;z-index:1;transition:padding-right .22s cubic-bezier(.22,1,.36,1);position:relative}.gw.open .gamerow{padding-right:92px}.gw-del{justify-content:center;align-items:center;gap:var(--s-6);border:1px solid var(--line-2);border-radius:var(--r-pill);background:var(--paper-2);width:38px;height:38px;color:var(--ink-soft);font:inherit;font-size:var(--t-md);cursor:pointer;z-index:2;transition:transform .22s cubic-bezier(.22,1,.36,1), width .18s var(--ease), background .15s, color .15s, border-color .15s;will-change:transform;padding:0;font-weight:700;display:flex;position:absolute;top:50%;right:4px;transform:translate(120%,-50%)}.gw-del .gw-word{white-space:nowrap}.gw-del:hover{color:var(--neg);border-color:var(--neg)}.gw-del.armed{background:var(--neg);border-color:var(--neg);color:#fff;width:88px}.gw.open .gw-del,.gw.hovered .gw-del{transform:translateY(-50%)}.gw.open .gr-menu,.gw.hovered .gr-menu{opacity:0;pointer-events:none}.gw.dragging .gw-del,.gw.dragging .gamerow{transition:none}#game.viewonly .streakctl,#game.viewonly .dicebtn,#game.viewonly .mjtable,#game.viewonly .retired,#game.viewonly .recordbar{opacity:.55;pointer-events:none}#game.viewonly .droundbar{pointer-events:none}#game.watching .streakctl,#game.watching .dicebtn,#game.watching .droundbar{pointer-events:none;opacity:.4}#game.watching .mjtable,#game.watching .retired{pointer-events:none}.sec-label{font-size:var(--t-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);margin:var(--s-24) 0 var(--s-10) var(--s-2);font-weight:800}.sec-label.first{margin-top:var(--s-18)}.navrow{align-items:center;gap:var(--s-12);text-align:left;border:0;border-bottom:1px solid var(--line);width:100%;padding:var(--s-16) var(--s-2);color:var(--ink);cursor:pointer;font-weight:600;font-size:var(--t-xl);background:0 0;border-radius:0;margin-top:0;display:flex}.navrow:active{opacity:.6}.navrow .nav-ic{color:var(--accent);font-size:17px;line-height:1}.navrow .nav-arrow{color:var(--ink-soft);margin-left:auto;font-size:20px;line-height:1}.navrow .nav-count{color:var(--ink-soft);font-weight:700;font-size:var(--t-md);margin-left:auto}.navrow .nav-count+.nav-arrow{margin-left:var(--s-8)}.navgroup{margin-top:var(--s-22);flex-direction:column;gap:0;display:flex}.navgroup .navrow{margin-top:0}.roomfield{margin-top:var(--s-12)}.roomfield .nameinput{width:100%}.room-foot{margin-top:var(--s-26);padding-top:var(--s-18);border-top:1px solid var(--line)}[hidden],.hidden{display:none!important}@keyframes viewIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes scorePop{0%{transform:scale(1)}42%{transform:scale(1.24)}to{transform:scale(1)}}.pscore.pop{animation:.44s cubic-bezier(.3,1.5,.5,1) scorePop;display:inline-block}@keyframes deltaFloat{0%{opacity:0;transform:translate(-50%,8px)scale(.8)}16%{opacity:1;transform:translate(-50%)scale(1)}to{opacity:0;transform:translate(-50%,-46px)scale(1)}}.delta{font-variant-numeric:tabular-nums;pointer-events:none;text-shadow:0 2px 7px #f6f1f0e6;z-index:5;font-size:22px;font-weight:800;animation:1.05s ease-out forwards deltaFloat;position:absolute;top:52%;left:50%}.delta.up{color:var(--pos)}.delta.down{color:var(--neg)}@keyframes ringFlash{0%{opacity:0}30%{opacity:1}to{opacity:0}}.pcard.flash-pos:after,.pcard.flash-neg:after{content:"";border-radius:inherit;pointer-events:none;animation:.7s ease-out ringFlash;position:absolute;inset:-3px}.pcard.flash-pos:after{border:3px solid #2f6b528c}.pcard.flash-neg:after{border:3px solid #b4473a80}@keyframes celebrate{0%{transform:translateY(0)scale(1)}25%{transform:translateY(-5px)scale(1.045)}55%{transform:translateY(0)scale(1)}}.pcard.celebrate{z-index:3;animation:.62s cubic-bezier(.3,1.3,.5,1) celebrate}.pcard.celebrate:before{content:"";pointer-events:none;border:3px solid #7a2e454d;border-radius:15px;animation:.9s ease-out berryRing;position:absolute;inset:0}@keyframes berryRing{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.16)}}@keyframes hrowIn{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:none}}.hrow.fresh{animation:.3s ease-out hrowIn}.iconbtn,.dicebtn,.chip,.count button,.seg button,.streakctl button,.toggle,.navrow,.roomcard,.pcard,.start,.btn-apply,.btn-cancel,.addbtn,.danger,.record-primary,.rule-del,.rchip-x,.gw-del,.backlink,.pchip,.rm-no,.rm-yes{transition:transform var(--dur) var(--ease), background var(--dur) var(--ease), border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease)}.iconbtn:active,.dicebtn:active,.chip:active,.count button:active,.seg button:active,.streakctl button:active,.toggle:active,.navrow:active,.pcard:active,.rule-del:active,.rchip-x:active,.gw-del:active,.rm-no:active,.rm-yes:active,.pchip:active,.backlink:active{transform:var(--press)}.roomcard:active,.start:active,.btn-apply:active,.record-primary:active,.btn-cancel:active,.addbtn:active,.danger:active{transform:var(--lift)}.start,.btn-apply,.btn-cancel,.addbtn,.danger{border-radius:var(--r-pill)}.pcard,.setup,.setsec{border-radius:var(--r-xl)}.chip,.count button,.gw-del,.rule,.pchip,.dice-result,.seatslot,.bench{border-radius:var(--r-md)}.seg:not(.quietseg) button,.nameinput,.rule-name,.pt input,.iconbtn{border-radius:var(--r-sm)}.start,.btn-apply,.btn-cancel,.addbtn,.danger{min-height:52px;padding:0 var(--s-20);font-size:var(--t-xl);justify-content:center;align-items:center;line-height:1;display:inline-flex}.start{font-size:var(--t-base)}.rowbtn{background:var(--paper-3);border:1px solid var(--line);min-height:40px;color:var(--ink);border-radius:var(--r-pill);padding:0 var(--s-14);font:inherit;font-size:var(--t-md);cursor:pointer;flex:none;justify-content:center;align-items:center;font-weight:700;transition:transform .12s;display:inline-flex}.rowbtn:active{transform:scale(.97)}.rowbtn:disabled{opacity:.5;cursor:default}.chip,.count button{justify-content:center;align-items:center;min-height:46px;display:flex}.seg button{min-height:44px}.iconbtn,.dicebtn{min-width:44px;min-height:44px}.start.loading,.danger.loading{pointer-events:none;position:relative;color:#0000!important}.start.loading:after,.danger.loading:after{content:"";width:20px;height:20px;margin:calc(var(--s-10) * -1) 0 0 calc(var(--s-10) * -1);border:2.5px solid #fff6;border-top-color:#fff;border-radius:50%;animation:.6s linear infinite btnspin;position:absolute;top:50%;left:50%}.danger.loading:after{border-color:#b4473a59;border-top-color:var(--neg)}@keyframes btnspin{to{transform:rotate(360deg)}}.viewin{animation:viewIn var(--dur-view) var(--ease) both}.sec-label,.setsec h3,.field label,.rtitle,.tray summary{letter-spacing:.12em}.wrap{padding-bottom:calc(100px + env(safe-area-inset-bottom))}body.hasnav .wrap{padding-bottom:calc(112px + env(safe-area-inset-bottom))}.sec-label{margin-top:var(--s-20)}.navgroup+.sec-label{margin-top:var(--s-22)}.tut-open{align-items:center;gap:var(--s-10);width:100%;margin-bottom:var(--s-16);background:var(--tint);border:1px solid var(--line-2);border-radius:var(--r-md);padding:var(--s-12) var(--s-14);color:var(--ink);cursor:pointer;font-weight:700;font-size:var(--t-lg);text-align:left;display:flex}.tut-open .ti{font-size:18px;line-height:1}.tut-open .ta{color:var(--accent);margin-left:auto;font-weight:800}.tut-open .tsub{font-size:var(--t-sm);color:var(--ink-2);margin-top:var(--s-2);font-weight:600;display:block}.tut-link,.retally{padding:var(--s-6) var(--s-2);margin:var(--s-2) 0 var(--s-10);cursor:pointer;min-height:44px;font-size:var(--t-md);color:var(--accent);text-align:left;background:0 0;border:none;align-items:center;font-weight:700;display:inline-flex}.tut-link:active,.retally:active{opacity:.7}.lb-stale{margin:var(--s-10) var(--s-2) 0;font-size:var(--t-sm);color:var(--ink-soft);font-weight:600;line-height:1.45}.lb-stale .linkbtn{font-size:var(--t-sm)}.retally:disabled{color:var(--ink-soft);cursor:default}.playpick{gap:var(--s-10);margin:var(--s-4) 0 var(--s-6);display:flex}.playpick .pp-opt{min-height:76px;padding:var(--s-12) var(--s-10);cursor:pointer;border:1.5px solid var(--line-2);background:var(--paper);font:inherit;color:var(--ink);justify-content:center;align-items:center;gap:var(--s-2);transition:border-color .16s var(--ease),transform .12s var(--ease);border-radius:16px;flex-direction:column;flex:1 1 0;display:flex}.playpick .pp-opt:active{transform:scale(.98)}.playpick .pp-opt:hover{border-color:var(--accent)}.playpick .pp-top{font-size:var(--t-xl);letter-spacing:-.01em;color:var(--accent);font-weight:800}.playpick .pp-sub{font-size:var(--t-2xs);letter-spacing:.05em;text-transform:uppercase;color:var(--ink-soft);text-align:center;font-weight:700}#landing{color:var(--ink);padding:0}#landing .lp{background:var(--paper-2);border:1px solid var(--line);border-radius:36px;padding:0 30px;display:block;overflow:hidden}#landing .lp-nav{justify-content:space-between;align-items:center;gap:var(--s-24);min-height:110px;padding:var(--s-20) var(--s-10);display:flex}#landing .lp-brand{align-items:center;gap:var(--s-12);color:var(--ink);letter-spacing:-.035em;font-size:17px;font-weight:600;text-decoration:none;display:flex}#landing .lp-brand .mjmark{width:64px;height:64px}#landing .lp-brand-sub,#login .lp-brand-sub{letter-spacing:.12em;color:var(--ink-soft);margin-top:var(--s-4);font-size:12px;font-weight:400;display:block}#landing .lp-nav-links{align-items:center;gap:var(--s-4);padding:var(--s-6);background:var(--paper);border:1px solid var(--line);border-radius:999px;display:flex}#landing .lp-nav-links a{color:var(--ink-2);padding:var(--s-12) var(--s-20);white-space:nowrap;border-radius:999px;font-size:14px;text-decoration:none}#landing .lp-nav-links .lp-nav-open{background:var(--tint);gap:var(--s-20);align-items:center;display:flex}#landing .lp-nav-links a:hover{background:var(--accent);color:#fff}#landing .lp-hero{isolation:isolate;background:var(--paper);border-radius:28px;place-items:center;height:min(720px,100svh - 180px);min-height:610px;padding:70px 28px 96px;display:grid;position:relative;overflow:hidden}#landing .lp-hero:before{content:"";z-index:-2;background:radial-gradient(at 100% 0,#bdd1c2 0%,#d8e2d8 19%,#0000 57%),radial-gradient(at 0 110%,#dfb6c1 0%,#eddae0 22%,#0000 52%);position:absolute;inset:0}body:has(#login:not(.hidden)):before{content:"";z-index:-2;background:radial-gradient(at 100% 0,#bdd1c2 0%,#d8e2d8 19%,#0000 57%),radial-gradient(at 0 110%,#dfb6c1 0%,#eddae0 22%,#0000 52%);position:absolute;inset:0}#landing .lp-hero:after{content:"";z-index:-1;opacity:.17;background-image:radial-gradient(#7a2e45 .6px,#0000 .8px);background-size:37px 37px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000 30%,#000);mask-image:linear-gradient(#0000 30%,#000)}body:has(#login:not(.hidden)):after{content:"";z-index:-1;opacity:.17;background-image:radial-gradient(#7a2e45 .6px,#0000 .8px);background-size:37px 37px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000 30%,#000);mask-image:linear-gradient(#0000 30%,#000)}#landing .lp-hero-copy{text-align:center;z-index:1;width:100%;position:relative}#landing .lp-eyebrow{align-items:center;gap:var(--s-10);border:1px solid var(--line-2);background:var(--paper-2);padding:var(--s-8) var(--s-16);color:var(--accent);border-radius:999px;margin:0 0 32px;font-size:13px;display:inline-flex}#landing .lp-eyebrow>span:first-child{background:var(--felt);border-radius:50%;width:7px;height:7px;box-shadow:0 0 12px #0000}#landing .lp-title{letter-spacing:-.065em;color:var(--ink);margin:0;font-size:clamp(48px,6.7vw,100px);font-weight:450;line-height:1.08}#landing .lp-title i{color:var(--accent);font-style:normal}#landing .lp-sub{max-width:650px;margin:var(--s-24) auto 0;color:var(--ink-2);font-size:clamp(16px,1.4vw,20px);line-height:1.6}#landing .lp-acts{justify-content:center;gap:var(--s-12);flex-direction:row;margin:34px 0 0;display:flex}#landing .lp-acts button{border:1px solid var(--line-2);width:auto;min-width:144px;padding:var(--s-16) var(--s-26);cursor:pointer;min-height:52px;box-shadow:none;white-space:nowrap;border-radius:999px;margin:0;font-family:inherit;font-size:15px;font-weight:600;line-height:1.3;transition:background .18s,transform .18s}#landing .lp-acts .start{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}#landing .lp-acts .lp-alt{background:var(--paper-2);color:var(--accent)}#landing .lp-acts .start:hover{background:var(--accent-hi)}#landing .lp-acts .lp-alt:hover{background:var(--tint)}#landing .lp-acts button:active{transform:scale(.97)}#landing a:focus-visible,#landing button:focus-visible,#login a:focus-visible,#login button:focus-visible{outline:3px solid var(--accent);outline-offset:5px}#landing .lp-orbit{align-items:center;gap:var(--s-16);color:var(--felt);z-index:0;font-size:18px;display:flex;position:absolute}#landing .lp-orbit img{object-fit:contain;opacity:.8;width:42px;height:58px;transform:rotate(-9deg)}#landing .lp-orbit:before{content:"";background:var(--line-2);width:170px;height:1px;position:absolute;top:30px;right:calc(100% + 16px)}#landing .lp-orbit-east{top:15%;left:8%}#landing .lp-orbit-south{top:15%;right:8%}#landing .lp-orbit-west{bottom:19%;left:5%}#landing .lp-orbit-north{bottom:19%;right:5%}#landing .lp-orbit-south:before,#landing .lp-orbit-north:before{left:calc(100% + 16px);right:auto}#landing .lp-hero-bottom{justify-content:space-between;align-items:center;display:flex;position:absolute;bottom:27px;left:30px;right:30px}#landing .lp-scroll{align-items:center;gap:var(--s-12);color:var(--ink-2);font-size:13px;text-decoration:none;display:flex}#landing .lp-scroll>span:first-child{background:var(--paper-2);color:var(--accent);border-radius:50%;place-items:center;width:34px;height:34px;font-size:20px;display:grid}#landing .lp-winds{color:var(--felt);letter-spacing:.25em;font-size:14px}#landing .lp-features{scroll-margin-top:24px}#landing .lp-points{padding:42px var(--s-20);grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;margin:0;list-style:none;display:grid}#landing .lp-points li{color:var(--ink-soft);margin:0;padding:0;font-size:14px;line-height:1.65}#landing .lp-points li:before{display:none}#landing .lp-points li b{margin:0 0 var(--s-10);color:var(--ink);font-size:16px;font-weight:500;display:block}#landing .lp-footer{border-top:1px solid var(--line);padding:var(--s-24) var(--s-20) 30px;justify-content:space-between;align-items:center;gap:30px;display:flex}#landing .lp-foot{color:var(--ink-soft);text-align:left;margin:0;font-size:12px;line-height:1.65}#landing .lp-foot+.lp-foot{text-align:right;max-width:380px;margin:0}#landing .lp-ref{color:var(--accent);font-weight:500}@media (min-width:1100px){#landing .lp-nav-links{margin-right:calc(50% - 245px)}}@media (max-width:700px){.wrap:has(#landing:not(.hidden)){padding:var(--s-10) max(var(--s-10),env(safe-area-inset-left))}#landing .lp{padding:0 var(--s-12);border-radius:26px}#landing .lp-nav{padding:var(--s-16) var(--s-2);gap:var(--s-8);min-height:96px}#landing .lp-brand{gap:var(--s-8);font-size:15px}#landing .lp-brand-sub{font-size:11px}#landing .lp-nav-links{padding:var(--s-4);gap:0}#landing .lp-nav-links a{padding:var(--s-12) var(--s-12);font-size:12px}#landing .lp-nav-links a:first-child,#landing .lp-nav-open,#landing .lp-nav-links .lp-nav-open{display:none}#landing .lp-hero{height:calc(100svh - 134px);min-height:540px;max-height:690px;padding:100px var(--s-18) 95px;border-radius:20px}#landing .lp-eyebrow{margin-bottom:var(--s-24);padding:var(--s-8) var(--s-12);font-size:11px}#landing .lp-title{letter-spacing:-.06em;font-size:clamp(43px,11vw,72px)}#landing .lp-title i{display:block}#landing .lp-sub{margin-top:var(--s-20);max-width:36ch;font-size:15px;line-height:1.55}#landing .lp-acts{gap:var(--s-8);margin-top:var(--s-26);flex-wrap:wrap}#landing .lp-acts button{padding:var(--s-14) var(--s-18);min-width:100px;min-height:48px;font-size:13px}#landing .lp-orbit img{width:27px;height:38px}#landing .lp-orbit{gap:var(--s-8);font-size:13px}#landing .lp-orbit-east,#landing .lp-orbit-south{top:6%}#landing .lp-orbit-west,#landing .lp-orbit-north{display:none}#landing .lp-hero-bottom{bottom:22px;left:20px;right:20px}#landing .lp-winds{font-size:12px}#landing .lp-points{gap:var(--s-26);padding:32px var(--s-12);grid-template-columns:1fr}#landing .lp-footer{padding:var(--s-24) var(--s-12);display:block}#landing .lp-foot+.lp-foot{margin-top:var(--s-12);text-align:left}}@media (prefers-reduced-motion:no-preference){#landing:not(.hidden) .lp-hero-copy{animation:.65s ease-out both lp-arrive}@keyframes lp-arrive{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}}body:has(#landing:not(.hidden)){background:var(--paper-2)}.wrap:has(#landing:not(.hidden)){max-width:none;padding:0}#landing .lp{border:0;border-radius:0;padding:0;overflow:visible}#landing .lp-nav{max-width:1440px;padding:var(--s-22) 48px;margin:auto}#landing .lp-hero{border-radius:0}#landing .lp-hero:before{background:radial-gradient(at 100% 30%,#bdd1c2 0%,#d8e2d8 19%,#0000 57%),radial-gradient(at 0 75%,#dfb6c1 0%,#eddae0 22%,#0000 52%);-webkit-mask-image:linear-gradient(#0000,#000 18% 72%,#0000);mask-image:linear-gradient(#0000,#000 18% 72%,#0000)}body:has(#login:not(.hidden)):before{background:radial-gradient(at 100% 30%,#bdd1c2 0%,#d8e2d8 19%,#0000 57%),radial-gradient(at 0 75%,#dfb6c1 0%,#eddae0 22%,#0000 52%);-webkit-mask-image:linear-gradient(#0000,#000 18% 72%,#0000);mask-image:linear-gradient(#0000,#000 18% 72%,#0000)}#landing .lp-hero{background:var(--paper-2)}body:has(#login:not(.hidden)):before{position:fixed}body:has(#login:not(.hidden)):after{position:fixed}#landing .lp-features,#landing .lp-footer{max-width:1340px;margin-left:auto;margin-right:auto}#landing .lp-points{padding:42px 36px}#landing .lp-footer{padding:var(--s-24) 36px 30px}@media (max-width:700px){.wrap:has(#landing:not(.hidden)){padding:0}#landing .lp{border-radius:0;padding:0}#landing .lp-nav{padding:var(--s-18) var(--s-22)}#landing .lp-hero{border-radius:0}#landing .lp-points{padding:32px var(--s-24)}#landing .lp-footer{padding:var(--s-24)}}@media (min-width:701px){#landing .lp-nav{grid-template-columns:1fr auto 1fr;display:grid}#landing .lp-brand{justify-self:start}#landing .lp-nav-links{grid-column:2;justify-self:center;margin-right:0}}@media (min-width:701px) and (max-width:1000px){#landing .lp-brand>span{display:none}}#loginBack{background:var(--paper);min-height:40px;color:var(--ink-2);margin:0;font-size:14px;font-weight:500;position:absolute;top:0;left:0}#loginBack:hover{background:var(--accent);color:#fff}#loginBack:hover .bl-arrow{color:#fff}.authbrand{justify-content:center;align-items:center;gap:var(--s-12);margin:0 0 var(--s-18);display:flex}.authbrand-name{letter-spacing:-.035em;color:var(--ink);margin:0;font-size:17px;font-weight:600}@media (max-height:640px){.authbrand{margin-top:34px}}#profEmpty b{color:var(--ink-2);font-weight:700}.friendrow{align-items:center;gap:var(--s-14);border:0;border-bottom:1px solid var(--line);width:100%;padding:var(--s-16) var(--s-2);font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border-radius:0;margin:0;display:flex}.roomlist>.friendrow:last-child{border-bottom:0}.friendrow:active{transform:var(--press)}.fr-name{font-size:var(--t-base);color:var(--ink);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:700;overflow:hidden}.fr-face{flex:none;width:38px;height:38px;display:block}.fr-face svg{border-radius:50%;width:100%;height:100%;display:block}.fr-face.sm{width:30px;height:30px}.fr-face.lg{width:46px;height:46px}.reqrow{gap:var(--s-10)}.reqrow .mem-name{flex:auto}.req-state{font-size:var(--t-2xs);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);flex:none;font-weight:800}.prof-head{align-items:center;gap:var(--s-12);margin-top:var(--s-6);display:flex}.danger-quiet{color:var(--neg);border-color:var(--neg-soft);flex:none}.friendshead{margin:var(--s-2) 0 var(--s-2);gap:var(--s-10)}.friendshead .sec-label{flex:auto;align-items:center;min-width:0;display:flex}.addfriend{background:var(--tint);color:var(--accent);border-color:#0000;flex:none;font-weight:800}.fr-count{margin-left:var(--s-10);min-width:20px;height:20px;padding:0 var(--s-6);background:var(--paper-3);color:var(--ink-soft);border-radius:var(--r-pill);font-size:var(--t-xs);letter-spacing:0;flex:none;justify-content:center;align-items:center;font-weight:800;display:inline-flex}.fr-count:empty{display:none}.settabs button{min-width:0;padding-left:var(--s-4);padding-right:var(--s-4)}.tour{z-index:var(--z-tour);pointer-events:none;position:fixed;inset:0}.tour-spot{box-shadow:0 0 0 9999px #231a1d8c, 0 0 0 2px var(--accent);transition:top .18s var(--ease),left .18s var(--ease),width .18s var(--ease),height .18s var(--ease);pointer-events:none;border-radius:16px;position:fixed}.tour-card{left:50%;bottom:calc(20px + env(safe-area-inset-bottom));background:var(--paper-2);width:min(440px,100vw - 32px);padding:var(--s-20) var(--s-20) var(--s-16);pointer-events:auto;gap:var(--s-6);border-radius:22px;flex-direction:column;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 18px 44px -12px #231a1d80}.tour-card.above{bottom:auto;top:calc(20px + env(safe-area-inset-top))}.tour-stage{overscroll-behavior:contain;background:var(--paper);pointer-events:none;isolation:isolate;position:fixed;inset:0;overflow-y:auto}.tour-stage .tour-wrap{padding-bottom:calc(190px + env(safe-area-inset-bottom))}.tour-stage [id^=tm-]{scroll-margin:18px 0 200px}.tour-stage *{cursor:default!important}.tour-stage input{pointer-events:none}.tour-open,.tour-open body{overflow:hidden}.tour-count{font-size:var(--t-2xs);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft);margin:0;font-weight:700}.tour-card h3{margin:var(--s-2) 0 0;letter-spacing:-.025em;color:var(--ink);font-size:21px;font-weight:700;line-height:1.2}.tour-body{font-size:var(--t-lg);color:var(--ink-2);margin:0;line-height:1.55}.tour-actions{align-items:center;gap:var(--s-8);margin-top:var(--s-10);display:flex}.tour-skip{padding:var(--s-10) var(--s-2);cursor:pointer;font:inherit;font-size:var(--t-md);color:var(--ink-soft);background:0 0;border:0;min-height:44px;margin-right:auto;font-weight:600}.tour-back{border:1px solid var(--line-2);border-radius:var(--r-pill);padding:0 var(--s-16);cursor:pointer;min-height:44px;font:inherit;font-size:var(--t-md);color:var(--ink-2);background:0 0;font-weight:700}.tour-next{background:var(--accent);border-radius:var(--r-pill);color:var(--on-accent);padding:0 var(--s-22);cursor:pointer;min-height:44px;font:inherit;font-size:var(--t-lg);border:0;font-weight:700}.tour-next:active,.tour-back:active{transform:translateY(2px)}#toast{z-index:var(--z-toast);background:var(--ink);border:1px solid var(--ink);max-width:min(440px,88vw);color:var(--paper);font-size:var(--t-md);padding:var(--s-10) var(--s-16);opacity:0;pointer-events:none;transition:opacity .22s var(--ease), transform .22s var(--ease);border-radius:12px;font-weight:600;line-height:1.4;position:fixed;top:10px;left:50%;transform:translate(-50%,-16px);box-shadow:0 8px 28px #3c232859}#toast.on{opacity:1;transform:translate(-50%)}#toast-act{z-index:calc(var(--z-toast) + 1);align-items:center;gap:var(--s-10);background:var(--ink);border:1px solid var(--ink);width:max-content;max-width:min(440px,92vw);color:var(--paper);font-size:var(--t-md);padding:var(--s-10) var(--s-10) var(--s-10) var(--s-16);opacity:0;transition:opacity .22s var(--ease), transform .22s var(--ease);border-radius:12px;font-weight:600;line-height:1.4;display:flex;position:fixed;top:10px;left:50%;transform:translate(-50%,-16px);box-shadow:0 8px 28px #3c232859}#toast-act.on{opacity:1;transform:translate(-50%)}.toast-act-msg{white-space:nowrap;text-overflow:ellipsis;flex:auto;min-width:0;overflow:hidden}.toast-act-go{min-height:32px;padding:0 var(--s-14);background:var(--paper);border:1px solid var(--paper);color:var(--ink);font-weight:800;font-size:var(--t-md);cursor:pointer;border-radius:9px;flex:none}.toast-act-go:active{transform:scale(.96)}.toast-act-x{width:30px;height:30px;color:var(--paper);opacity:.7;cursor:pointer;background:0 0;border:0;border-radius:9px;flex:none;font-size:18px;line-height:1}.toast-act-x:active{opacity:1}.confetti{pointer-events:none;z-index:var(--z-confetti);position:fixed;inset:0}.confetti .cf{background:var(--tile-face);width:17px;height:23px;padding:1.var(--s-6);opacity:0;border-radius:3px;animation:1.15s cubic-bezier(.15,.8,.3,1) forwards cfFly;position:absolute;box-shadow:0 1px 3px #3c23284d}@keyframes cfFly{0%{opacity:0;transform:translate(-50%,-50%)scale(.4)}12%{opacity:1}to{opacity:0;transform:translate(calc(-50% + var(--dx)), calc(-50% + var(--dy) + 90px)) rotate(var(--rot)) scale(1)}}.tutsheet{z-index:var(--z-fullsheet);background:var(--paper);max-width:520px;transition:transform var(--dur-view) var(--ease);flex-direction:column;margin:0 auto;display:flex;position:fixed;inset:0;transform:translateY(100%)}.tutsheet.on{transform:none}.tut-head{justify-content:space-between;align-items:center;gap:var(--s-10);padding:var(--s-16) var(--s-16) var(--s-12);border-bottom:1px solid var(--line);background:var(--paper-2);flex:none;display:flex}.tut-head h3{color:var(--ink);margin:0;font-size:18px;font-weight:800}.tut-head .cjk2{color:var(--on-accent);font-weight:800;font-size:var(--t-sm);background:var(--accent);padding:var(--s-2) var(--s-8);margin-left:var(--s-8);border-radius:6px}.tut{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:var(--s-18) var(--s-16) calc(40px + env(safe-area-inset-bottom));flex:auto;overflow-y:auto}.tut h2,.tut h4{font-size:var(--t-sm);letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin:var(--s-26) 0 var(--s-10);font-weight:800}.tut h2:first-child,.tut h4:first-child{margin-top:0}.tut p{font-size:var(--t-lg);color:var(--ink-2);margin:0 0 var(--s-10);line-height:1.55}.tut p b{color:var(--ink)}.tut .lead{font-size:var(--t-lg);color:var(--ink)}.tut ul{margin:0 0 var(--s-12);padding-left:var(--s-20)}.tut li{font-size:var(--t-md);color:var(--ink-2);margin-bottom:var(--s-6);line-height:1.5}.tut .tilerow{gap:var(--s-6);margin:var(--s-2) 0 var(--s-8);flex-wrap:wrap;display:flex}.tut .tlabel{font-size:var(--t-sm);color:var(--ink-soft);margin:var(--s-8) 0 var(--s-4);font-weight:700}.tut .mtile{background:var(--tile-face);border:1px solid var(--tile-edge);width:40px;height:54px;padding:var(--s-2);box-shadow:var(--shadow-1);border-radius:6px}.tut .mtile img{object-fit:contain;width:100%;height:100%;display:block}.tut table{border-collapse:collapse;width:100%;margin:0 0 var(--s-12);font-variant-numeric:tabular-nums}.tut th,.tut td{text-align:left;padding:var(--s-8) var(--s-10);font-size:var(--t-md);border-bottom:1px solid var(--line)}.tut th{font-size:var(--t-2xs);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);font-weight:800}.tut td.n,.tut th.n{text-align:right;color:var(--accent);white-space:nowrap;font-weight:800}.tut .cjk2{color:var(--on-accent);font-weight:800;font-size:var(--t-xs);background:var(--accent);padding:var(--s-2) var(--s-6);margin-left:var(--s-4);white-space:nowrap;border-radius:5px}.tut .pron{color:var(--ink-2);font-size:var(--t-xs);white-space:nowrap;letter-spacing:.01em;font-weight:700}.tut tr:nth-child(odd) td{background:var(--paper-2)}.tut .tier{font-size:var(--t-2xs);letter-spacing:.05em;text-transform:uppercase;color:var(--on-accent);background:var(--accent);padding:var(--s-2) var(--s-6);border-radius:5px;font-weight:800}.tut .ex{background:var(--paper-2);border:1px solid var(--line);border-radius:var(--r-md);padding:var(--s-12) var(--s-14);margin:0 0 var(--s-12)}.tut .ex .eh{font-size:var(--t-lg);color:var(--ink);margin-bottom:var(--s-4);font-weight:800}.tut .ex .em{font-size:var(--t-md);color:var(--ink-2);line-height:1.5}.tut .ex .er{margin-top:var(--s-8);font-size:var(--t-md);color:var(--accent);font-weight:800}.tut .ex .er .pos{color:var(--pos)}.tut .ex .er .neg{color:var(--neg)}.tut .callout{background:var(--tint);border:1px solid var(--line-2);border-radius:var(--r-md);padding:var(--s-10) var(--s-12);margin:0 0 var(--s-12);font-size:var(--t-md);color:var(--ink);line-height:1.5}.tut .pat{background:var(--paper-2);border:1px solid var(--line);border-radius:var(--r-md);padding:var(--s-10) var(--s-12);margin:0 0 var(--s-10)}.tut .tier.shut{color:var(--ink-soft);box-shadow:inset 0 0 0 1px var(--line);background:0 0}.tut .pat-top{align-items:center;gap:var(--s-8);margin-bottom:var(--s-8);display:flex}.tut .pat-name{font-size:var(--t-lg);color:var(--ink);flex:auto;font-weight:800}.tut .pat-faan{font-size:var(--t-md);color:var(--accent);font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:800}.tut .pat .tilerow{margin:0}.tut .pat .mtile{width:30px;height:41px}.tut .meld{gap:var(--s-2);margin:0 var(--s-10) var(--s-6) 0;display:inline-flex}.tut .meld.pair{opacity:.95}.tut .pat-ex{font-size:var(--t-xs);color:var(--ink-soft);margin-top:var(--s-2)}.tut .printline{margin:var(--s-14) 0 0;font-size:var(--t-sm);color:var(--ink-soft);text-align:center}.tut .pat-ex b{color:var(--ink-2);font-weight:700}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.quietseg button:focus-visible,.pickbar button:focus-visible,.record-primary:focus-visible,.start:focus-visible,.btn-apply:focus-visible,.btn-cancel:focus-visible,.addbtn:focus-visible,.danger:focus-visible,.faan-key:focus-visible,.streakctl button:focus-visible{outline-offset:3px}.skiplink{z-index:var(--z-skiplink);background:var(--accent);color:var(--on-accent);font-size:var(--t-md);padding:var(--s-10) var(--s-16);border-radius:0 0 var(--r-md) 0;font-weight:700;text-decoration:none;position:absolute;top:0;left:-9999px}.skiplink:focus{left:0}.skiplink:focus-visible{outline:2px solid var(--ink);outline-offset:-4px}#main:focus{outline:none}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (min-width:520px){.mjtable{--seat-pull:40px}}@media (max-width:360px){.status{gap:var(--s-8);padding:var(--s-10)}.dealer-tile{width:40px;height:50px}.status .info{min-width:54px}.mjtable{column-gap:var(--s-2);--seat-pull:19px;grid-template-columns:minmax(64px,1fr) minmax(88px,1fr) minmax(64px,1fr)}.pav{width:38px;height:38px}.pcard .pscore{font-size:21px}}#bootBar{height:3px;z-index:var(--z-drag);background:linear-gradient(90deg, transparent, var(--accent), transparent);background-repeat:no-repeat;background-size:60% 100%;transition:opacity .25s;animation:1.1s ease-in-out infinite bootbar;position:fixed;top:0;left:0;right:0}#bootBar.gone{opacity:0;pointer-events:none}@keyframes bootbar{0%{background-position:-60% 0}to{background-position:160% 0}}.memrow{padding:var(--s-6) 0;justify-content:flex-start}#modList,#membersList{gap:var(--s-2)}.mem-name{color:var(--ink);font-weight:700;font-size:var(--t-lg);align-items:center;gap:var(--s-8);flex:auto;min-width:0;display:flex}.codebtn{font-variant-numeric:tabular-nums;letter-spacing:.08em;align-items:center;gap:var(--s-6);font-weight:800;display:inline-flex}.mem-you{font-size:var(--t-3xs);letter-spacing:.06em;text-transform:uppercase;color:var(--on-accent);background:var(--accent);padding:var(--s-2) var(--s-8);border-radius:5px;flex:none;font-weight:800}.mem-hand{background:var(--paper-3);border:1px solid var(--line);color:var(--ink);padding:var(--s-6) var(--s-10);font-size:var(--t-sm);cursor:pointer;border-radius:8px;flex:none;font-weight:700}.mem-hand:disabled{opacity:.5;cursor:default}.acctdel{margin-top:var(--s-16);padding-top:var(--s-14);border-top:1px solid var(--line)}.acctdel .setnote{margin:var(--s-8) 0 var(--s-12)}.btn-danger{background:var(--neg);color:#fff;border-radius:var(--r-pill);min-height:40px;padding:0 var(--s-16);font:inherit;font-size:var(--t-md);cursor:pointer;border:1px solid #0000;flex:none;justify-content:center;align-items:center;font-weight:800;line-height:1;transition:transform .12s,background .15s,color .15s;display:inline-flex}.btn-danger:active{transform:scale(.97)}.btn-danger:disabled{background:var(--neg-soft);border-color:var(--neg-soft);color:var(--neg);opacity:.72;cursor:default}#delAcctErr:empty{display:none}.claimfind{margin:0 0 var(--s-10)}.claimfind .nameinput{width:100%}.claimlist{gap:var(--s-6);overscroll-behavior:contain;max-height:min(46vh,340px);margin:0 0 var(--s-14);padding:var(--s-2);flex-direction:column;display:flex;overflow-y:auto}.claimrow{align-items:baseline;gap:var(--s-10);text-align:left;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);width:100%;padding:var(--s-10) var(--s-12);cursor:pointer;color:var(--ink);font:inherit;font-size:var(--t-lg);display:flex}.claimrow:hover{border-color:var(--line-2)}.claimrow:active{transform:var(--press)}.claimrow.on{background:var(--tint);border-color:var(--accent);color:var(--accent)}.claimrow-name{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;font-weight:700;overflow:hidden}.claimrow-at{font-size:var(--t-sm);color:var(--ink-soft);flex:none;font-weight:600}.claimrow.on .claimrow-at{color:var(--accent)}#claimNone,#claimNoMatch{margin:0 0 var(--s-14)}.claimtag{background:var(--paper-3);border:1px solid var(--line);color:var(--ink-soft);padding:var(--s-6) var(--s-10);font-size:var(--t-sm);cursor:pointer;text-overflow:ellipsis;white-space:nowrap;border-radius:8px;flex:none;max-width:38vw;font-weight:800;overflow:hidden}.claimtag.on{background:var(--tint);border-color:var(--accent);color:var(--accent)}.claimtag.static{cursor:default}.claimtag:disabled{opacity:.5;cursor:default}.invrow{align-items:baseline;gap:var(--s-12);background:var(--paper-2);border:1px solid var(--line);padding:var(--s-10) var(--s-12);border-radius:11px;display:flex}.invcode{font:inherit;letter-spacing:.18em;color:var(--ink);padding:var(--s-6) var(--s-10);margin:calc(var(--s-6) * -1) calc(var(--s-10) * -1);cursor:pointer;text-align:left;font-variant-numeric:tabular-nums;align-items:center;gap:var(--s-6);background:0 0;border:1px solid #0000;border-radius:9px;font-size:22px;font-weight:800;display:inline-flex}.invcode:hover{border-color:var(--line-2)}.invcode:active{background:var(--paper-3);transform:var(--press)}.copymark{opacity:.45;flex:none;margin-left:-.1em}.invcode:active .copymark,.codebtn:active .copymark{opacity:.9}.inv-meta{font-size:var(--t-sm);color:var(--ink-soft);text-align:right;margin-left:auto}.codeinput{text-transform:uppercase;letter-spacing:.18em;font-size:20px;font-weight:800}@media (prefers-reduced-motion:reduce){*{transition-duration:.001ms!important;animation-duration:.001ms!important}}#demoBar{align-items:center;gap:var(--s-12);padding:var(--s-10) var(--s-16);background:var(--accent);color:var(--on-accent);font-size:var(--t-md);letter-spacing:-.01em;font-weight:600;display:flex}#demoBar.hidden{display:none}#demoBar span{flex:auto}#demoBar button{font:inherit;cursor:pointer;background:var(--on-accent);color:var(--accent);border-radius:var(--r-pill);padding:var(--s-6) var(--s-14);transition:transform var(--dur) var(--ease);border:0;flex:none;font-weight:700}#demoBar button:active{transform:var(--press)}.demo-open{margin:var(--s-14) auto 0;min-height:44px;padding:0 var(--s-14);display:block}@media (min-width:0){.tabbar{z-index:var(--z-nav);max-width:none;padding:var(--s-6) max(var(--s-4),calc((100% - 520px) / 2)) calc(var(--s-6) + env(safe-area-inset-bottom));background:color-mix(in srgb, var(--paper) 88%, transparent);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--line);align-items:stretch;display:flex;position:fixed;bottom:0;left:0;right:0}.tabitem{justify-content:center;align-items:center;gap:var(--s-2);min-width:0;min-height:48px;padding:var(--s-4) var(--s-2);cursor:pointer;font:inherit;font-size:var(--t-2xs);letter-spacing:.01em;color:var(--ink-soft);background:0 0;border:0;flex-direction:column;flex:1 1 0;font-weight:700;transition:color .12s;display:flex}.tabitem svg{width:22px;height:22px;display:block}.tabitem span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.tabitem.sel{color:var(--accent)}.tabitem.sel svg{stroke-width:2.4px}.tabitem:active{opacity:.6}}.faan-set{width:4.6em;padding:var(--s-4) var(--s-8);border:1px solid var(--line);background:var(--paper);color:inherit;font:inherit;font-variant-numeric:tabular-nums;text-align:center;appearance:textfield;border-radius:8px}.faan-set::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.faan-set::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.faan-set.moved{border-color:var(--accent);color:var(--accent);font-weight:700}.faan-was{margin-left:var(--s-6);color:var(--ink-soft);font-size:var(--t-2xs);font-variant-numeric:tabular-nums;text-decoration:line-through}#reference .tut{max-height:none;padding:0 0 var(--s-8);flex:none;overflow:visible}:root{--btn-lift:0 5px 14px -5px #7a2e4580}.start,.addbtn,.btn-apply,.record-primary{background:var(--accent);color:var(--on-accent);border-radius:var(--r-pill);box-shadow:var(--btn-lift);border:none;font-weight:800;transition:transform .12s,box-shadow .15s,opacity .15s}.start:active,.addbtn:active,.btn-apply:active,.record-primary:active{transform:translateY(2px)}.start:disabled,.addbtn:disabled,.btn-apply:disabled,.record-primary:disabled{opacity:.4;cursor:default;box-shadow:none;transform:none}.record-secondary,.lp-alt{background:var(--paper-2);border:1.5px solid var(--accent);color:var(--accent);border-radius:var(--r-pill);box-shadow:none;font-weight:800;transition:transform .12s,opacity .15s}.record-secondary:active,.lp-alt:active{transform:scale(.97)}.record-secondary:disabled,.lp-alt:disabled{opacity:.4;cursor:default}.btn-cancel,.rowbtn,.trayundo{background:var(--paper-3);border:1px solid var(--line);color:var(--ink);border-radius:var(--r-pill);box-shadow:none;font-weight:700;transition:transform .12s,opacity .15s}.btn-cancel:active,.rowbtn:active,.trayundo:active{transform:scale(.97)}.btn-cancel:disabled,.rowbtn:disabled,.trayundo:disabled{opacity:.4;cursor:default}.danger,.danger-quiet{border:1px solid var(--line-2);color:var(--neg);border-radius:var(--r-pill);box-shadow:none;background:0 0;font-weight:700}.danger.armed,.btn-danger,.rm-yes{background:var(--neg);border-color:var(--neg);color:#fff;font-weight:800}#confirmSheet .sheet-actions{margin-top:var(--s-18)}#confirmSheet .confirm-go{min-height:48px;font-size:var(--t-xl);flex:auto}#confirmSheet .btn-cancel{padding:var(--s-14) var(--s-20)}#confirmSheet #confirmBody{margin-top:var(--s-6)}#confirmSheet .field{margin-top:var(--s-16)}.trashbtn{color:var(--neg);margin-left:var(--s-8)}.trashbtn:hover{border-color:var(--neg-soft);background:var(--neg-soft)}#profile .you-id{align-items:center;gap:var(--s-14);margin:var(--s-6) 0 32px;display:flex}#profile .you-face{flex:none;width:64px;height:64px}#profile .you-face svg{width:100%;height:100%;box-shadow:0 0 0 1px var(--line);border-radius:50%;display:block}#profile .you-who{flex:auto;min-width:0}#profile .you-who h1{letter-spacing:-.028em;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:clamp(23px,6.2vw,27px);font-weight:700;line-height:1.15;overflow:hidden}#profile .you-sub{margin:var(--s-4) 0 0;font-size:var(--t-2xs);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}#profile .you-unfriend{min-height:32px;padding:0 var(--s-12);border-radius:var(--r-pill);border:1px solid var(--line-2);color:var(--neg);font:inherit;font-size:var(--t-sm);white-space:nowrap;cursor:pointer;background:0 0;flex:none;font-weight:700;transition:transform .12s,background .15s}#profile .you-unfriend:hover{background:var(--neg-soft)}#profile .you-unfriend:active{transform:scale(.97)}#profile .you-net{letter-spacing:-.055em;color:var(--ink);font-size:clamp(56px,16vw,74px);font-weight:800;line-height:.92}#profile .you-net.pos{color:var(--pos)}#profile .you-net.neg{color:var(--neg)}#profile .you-netlab{margin:var(--s-10) 0 0;font-size:var(--t-2xs);letter-spacing:.15em;text-transform:uppercase;color:var(--ink-soft);font-weight:700}#profile .you-flow{margin-top:var(--s-26)}#profile .yf-bar{border-radius:var(--r-pill);background:var(--paper-3);height:6px;display:flex;overflow:hidden}#profile .yf-up{background:var(--pos)}#profile .yf-down{background:var(--neg)}#profile .yf-legend{margin-top:var(--s-10);font-size:var(--t-md);color:var(--ink-soft);justify-content:space-between;font-weight:600;display:flex}#profile .yf-legend b{font-weight:800}#profile .yf-w b{color:var(--pos)}#profile .yf-l b{color:var(--neg)}#profile .you-stats{gap:var(--s-4);margin:32px 0 var(--s-6);padding-top:var(--s-24);border-top:1px solid var(--line);grid-template-columns:repeat(4,1fr);display:grid}#profile .you-stat{min-width:0}#profile .ys-n{letter-spacing:-.035em;color:var(--ink);font-size:clamp(22px,6.6vw,27px);font-weight:800;line-height:1}#profile .ys-n.pos{color:var(--pos)}#profile .ys-n.neg{color:var(--neg)}#profile .ys-l{margin-top:var(--s-6);font-size:var(--t-2xs);letter-spacing:.07em;text-transform:uppercase;color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}#profile .you-sec{margin:36px 0 var(--s-4);font-size:var(--t-2xs);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);font-weight:800}#profile .you-room{align-items:baseline;gap:var(--s-12);padding:var(--s-16) 0;border-bottom:1px solid var(--line);display:flex}#profile .you-rooms .you-room:last-child{border-bottom:0}#profile .yr-name{min-width:0;font-size:var(--t-base);color:var(--ink);text-overflow:ellipsis;white-space:nowrap;flex:auto;font-weight:700;overflow:hidden}#profile .yr-games{font-size:var(--t-sm);color:var(--ink-soft);flex:none;font-weight:600}#profile .yr-total{letter-spacing:-.02em;color:var(--ink-2);flex:none;font-size:17px;font-weight:800}#profile .yr-total.pos{color:var(--pos)}#profile .yr-total.neg{color:var(--neg)}#profile .you-note{margin:var(--s-18) 0 0;font-size:var(--t-sm);color:var(--ink-soft);line-height:1.55}.tv-overlay{z-index:var(--z-modal);color:var(--ink);background:var(--paper);opacity:0;transition:opacity .28s;position:fixed;inset:0;overflow:auto}.tv-overlay.on{opacity:1}.tv-overlay:fullscreen{width:100%;height:100%}#tvOverlayBody{min-height:100%}.tv-stage{isolation:isolate;max-width:1600px;min-height:100dvh;padding:max(var(--s-22),env(safe-area-inset-top)) max(var(--s-24),env(safe-area-inset-right)) max(var(--s-18),env(safe-area-inset-bottom)) max(var(--s-24),env(safe-area-inset-left));flex-direction:column;margin:0 auto;display:flex;position:relative}.tv-head{justify-content:space-between;align-items:center;gap:var(--s-24);display:flex}.tv-brand{align-items:center;gap:var(--s-14);min-width:0;display:flex}.tv-mark{border-radius:14px;flex:none;width:50px;height:50px}.tv-kicker,.tv-brand h1,.tv-room,.tv-game{margin:0}.tv-kicker{color:var(--ink-soft);font-size:var(--t-xs);letter-spacing:.18em;text-transform:uppercase;font-weight:800}.tv-brand h1{margin-top:var(--s-2);letter-spacing:-.035em;color:var(--ink);font-size:clamp(23px,3vw,42px);line-height:1}.tv-head-actions{align-items:center;gap:var(--s-10);display:flex}.tv-live{align-items:center;gap:var(--s-8);padding:var(--s-10) var(--s-14);border:1px solid var(--line-2);border-radius:var(--r-pill);color:var(--ink-2);font-size:var(--t-xs);letter-spacing:.16em;font-weight:900;display:inline-flex}.tv-live i{background:var(--pos);width:9px;height:9px;box-shadow:0 0 0 6px color-mix(in srgb,var(--pos) 14%,transparent);border-radius:50%;animation:1.8s ease-in-out infinite tvPulse}@keyframes tvPulse{50%{opacity:.5;transform:scale(.82)}}.tv-control{min-width:46px;height:46px;padding:0 var(--s-14);border-radius:var(--r-pill);border:1px solid var(--line-2);background:var(--paper-2);color:var(--ink);font:inherit;font-size:var(--t-sm);justify-content:center;align-items:center;gap:var(--s-8);cursor:pointer;font-weight:750;display:inline-flex}.tv-control:hover{background:var(--paper-3)}.tv-control:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.tv-control svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;width:18px;height:18px}.tv-close{width:46px;padding:0}.tv-board{min-height:0;margin-top:clamp(var(--s-24),4vh,54px);flex-direction:column;flex:1;display:flex}.tv-context{justify-content:space-between;align-items:flex-end;gap:var(--s-26);margin-bottom:var(--s-18);display:flex}.tv-room{text-overflow:ellipsis;white-space:nowrap;letter-spacing:-.04em;font-size:clamp(25px,4vw,58px);font-weight:800;overflow:hidden}.tv-game{margin-top:var(--s-6);color:var(--ink-soft);font-size:clamp(12px,1.3vw,18px);font-weight:650}.tv-round-state{justify-content:flex-end;align-items:center;gap:var(--s-10);flex-wrap:wrap;display:flex}.tv-round-state>span{align-items:center;gap:var(--s-8);min-height:38px;padding:var(--s-8) var(--s-12);border-radius:var(--r-pill);background:var(--paper-3);color:var(--ink-2);font-size:clamp(11px,1.1vw,15px);font-weight:750;display:inline-flex}.tv-round-state b{color:var(--gold);font-size:1.3em}.tv-round-state .tv-double{background:var(--accent);color:var(--on-accent)}.tv-round-state .tv-ended{background:var(--paper-3);color:var(--ink)}.tv-players{gap:var(--s-10);flex:1;grid-template-rows:repeat(4,minmax(76px,1fr));min-height:0;margin:0;padding:0;list-style:none;display:grid}.tv-player{align-items:center;gap:clamp(var(--s-12),2vw,28px);min-height:0;padding:clamp(var(--s-10),1.7vh,var(--s-20)) clamp(var(--s-16),2.6vw,36px);border:1px solid var(--line);background:var(--paper-2);border-radius:clamp(16px,2vw,26px);grid-template-columns:clamp(36px,4vw,62px) clamp(50px,6vw,84px) minmax(0,1fr) auto;display:grid}.tv-player.rank-1{border-color:color-mix(in srgb,var(--gold) 48%,var(--line));background:linear-gradient(90deg,var(--tint),var(--paper-2) 55%);box-shadow:0 20px 55px -36px color-mix(in srgb,var(--gold) 65%,transparent)}.tv-rank{color:var(--ink-soft);text-align:center;font-variant-numeric:tabular-nums;font-size:clamp(22px,3vw,44px);font-weight:850}.rank-1 .tv-rank{color:var(--gold)}.tv-avatar{width:clamp(50px,6vw,84px);height:clamp(50px,6vw,84px)}.tv-avatar svg{width:100%;height:100%;display:block}.tv-person{gap:var(--s-6);flex-direction:column;min-width:0;display:flex}.tv-person>strong{text-overflow:ellipsis;white-space:nowrap;letter-spacing:-.035em;font-size:clamp(20px,3vw,43px);font-weight:800;line-height:1;overflow:hidden}.tv-person>span{align-items:center;gap:var(--s-10);color:var(--ink-soft);font-size:clamp(11px,1.2vw,17px);font-weight:750;display:flex}.tv-dealer{padding:var(--s-4) var(--s-8);border-radius:var(--r-pill);background:var(--accent);color:var(--on-accent);letter-spacing:.1em;font-size:.7em}.tv-score{text-align:right;letter-spacing:-.065em;min-width:4.2ch;color:var(--ink);font-size:clamp(34px,6vw,88px);font-weight:850;line-height:.9}.tv-score.pos{color:var(--pos)}.tv-score.neg{color:var(--neg)}.tv-score.zero{color:var(--ink)}.tv-foot{justify-content:space-between;gap:var(--s-24);margin-top:var(--s-18);color:var(--ink-soft);font-size:var(--t-2xs);letter-spacing:.1em;text-transform:uppercase;font-weight:750;display:flex}@media (max-width:620px){.tv-stage{padding-left:var(--s-16);padding-right:var(--s-16)}.tv-mark{border-radius:11px;width:40px;height:40px}.tv-kicker{font-size:var(--t-3xs)}.tv-brand h1{font-size:21px}.tv-head-actions{gap:var(--s-6)}.tv-live{padding:var(--s-8) var(--s-10);font-size:var(--t-3xs)}.tv-control{width:40px;min-width:40px;height:40px;padding:0}.tv-control span{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.tv-board{margin-top:var(--s-24)}.tv-context{margin-bottom:var(--s-14);display:block}.tv-round-state{margin-top:var(--s-12);justify-content:flex-start}.tv-player{gap:var(--s-10);padding:var(--s-10) var(--s-12);border-radius:16px;grid-template-columns:30px 48px minmax(0,1fr) auto}.tv-avatar{width:48px;height:48px}.tv-person>strong{font-size:20px}.tv-score{font-size:34px}.tv-foot span:last-child{display:none}}@media (prefers-reduced-motion:reduce){.tv-overlay{transition:none}.tv-live i{animation:none}}.facephoto{object-fit:cover;background:var(--line);border-radius:50%;width:100%;height:100%;display:block}.pav .facephoto{box-shadow:0 0 0 2px var(--paper),0 1px 4px #3c232847}.pcard.dealer .pav .facephoto{box-shadow:0 0 0 2.5px var(--accent),0 2px 6px #3c232842}.pcard-float .pav .facephoto{box-shadow:0 0 0 2px var(--paper),0 6px 16px -4px #3c232873}#game.picking .pcard.pick-on .pav .facephoto,#game.picking .pcard.pick-thrower .pav .facephoto{box-shadow:none}.pcard.pick-won .pav .facephoto{box-shadow:0 0 0 3px var(--pos),0 2px 8px #2f6b524d!important}.pcard.pick-fed .pav .facephoto{box-shadow:0 0 0 3px var(--neg),0 2px 8px #b4473a4d!important}#profile .you-face .facephoto{box-shadow:0 0 0 1px var(--line)}#profile .you-face{position:relative}.facebadge{width:var(--badge,26px);height:var(--badge,26px);background:var(--accent);color:var(--paper);border:2px solid var(--paper);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:transform .12s,background .15s;display:flex;position:absolute;bottom:-2px;right:-2px;box-shadow:0 1px 3px #3c232847}.facebadge svg{width:52%;height:52%;display:block}.facebadge svg [data-punch]{fill:var(--accent);stroke:var(--accent)}.facebadge:hover svg [data-punch]{fill:var(--accent-hi);stroke:var(--accent-hi)}.facebadge:hover{background:var(--accent-hi)}.facebadge:active{transform:scale(.92)}.facebadge:disabled{opacity:.55;cursor:default;transform:none}.edit-face{align-items:center;gap:var(--s-16);margin:var(--s-4) 0 var(--s-22);display:flex}.edit-face-pic{flex:none;width:72px;height:72px;position:relative}.edit-face-pic svg,.edit-face-pic .facephoto{width:100%;height:100%;box-shadow:0 0 0 1px var(--line);border-radius:50%;display:block}.edit-face-pic .facebadge{--badge:30px;bottom:-1px;right:-1px}.edit-face-do{align-items:center;gap:var(--s-8);flex-wrap:wrap;min-width:0;display:flex}.edit-face-busy{font-size:var(--t-md);color:var(--ink-soft);font-weight:650}.crop-stage{aspect-ratio:1;width:100%;margin:var(--s-2) 0 0;border-radius:var(--r-md);touch-action:none;background:#2a2124;position:relative;overflow:hidden}.crop-stage canvas{cursor:grab;width:100%;height:100%;display:block}.crop-stage canvas:active{cursor:grabbing}.crop-stage canvas:focus-visible{outline:none}.crop-stage:focus-within{box-shadow:0 0 0 3px var(--accent)}.crop-mask{pointer-events:none;outline-offset:-2px;border-radius:50%;outline:2px solid #f6f1f0eb;position:absolute;inset:0;box-shadow:0 0 0 9999px #140e1094}.crop-tools{align-items:center;gap:var(--s-14);margin:var(--s-16) 0 0;display:flex}.crop-zoom{align-items:center;gap:var(--s-10);flex:auto;min-width:0;display:flex}.crop-zoom span{font-size:var(--t-xl);color:var(--ink-soft);font-weight:700;line-height:1}.crop-zoom input[type=range]{min-width:0;accent-color:var(--accent);flex:auto;height:24px}.crop-rotate{border:1px solid var(--line-2);width:38px;height:38px;color:var(--ink);cursor:pointer;background:0 0;border-radius:50%;flex:none;justify-content:center;align-items:center;padding:0;transition:transform .12s,background .15s;display:flex}.crop-rotate svg{width:18px;height:18px;display:block}.crop-rotate:hover{background:var(--line)}.crop-rotate:active{transform:scale(.94)}#cropHint{margin-top:var(--s-10)}.edit-face-do .editpic{min-height:32px;padding:0 var(--s-14);border-radius:var(--r-pill);border:1px solid var(--line-2);color:var(--ink);font:inherit;font-size:var(--t-sm);white-space:nowrap;cursor:pointer;background:0 0;flex:none;font-weight:700;transition:transform .12s,background .15s}.edit-face-do .editpic:hover{background:var(--line)}.edit-face-do .editpic:active{transform:scale(.97)}.edit-face-do .editpic:disabled{opacity:.5;cursor:default;transform:none}.edit-face-do .editpic.drop{color:var(--neg)}.edit-face-do .editpic.drop:hover{background:var(--neg-soft)}.linkseat{margin:var(--s-2) 0 var(--s-14);padding:var(--s-12) var(--s-12) var(--s-12);background:var(--tint);gap:var(--s-10);border-radius:14px;flex-direction:column;display:flex}.ls-q{font-size:var(--t-md);font-weight:700;line-height:1.4}.ls-s{margin-top:calc(var(--s-6) * -1);color:var(--ink-2);font-size:var(--t-sm);line-height:1.45}.ls-chips{gap:var(--s-6);flex-wrap:wrap;display:flex}.ls-chip{appearance:none;background:var(--paper-2);border:1px solid var(--line-2);border-radius:var(--r-pill);padding:0 var(--s-12);min-height:38px;font:inherit;font-size:var(--t-md);color:var(--ink);cursor:pointer;font-weight:700}.ls-chip:active{transform:scale(.97)}.ls-chip:disabled{opacity:.5;cursor:default}.ls-chip:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.ls-chip.none{color:var(--ink-soft);border-style:dashed;font-weight:500}.linkseat .note{margin:0}.unlinkedline{margin:var(--s-10) var(--s-2) 0;color:var(--gold);font-size:var(--t-sm);font-weight:700}@keyframes adm-pulse{0%,to{opacity:1}50%{opacity:.25}}.capture-take{justify-content:center;align-items:center;gap:var(--s-10);width:100%;min-height:50px;margin-top:var(--s-14);border:1.5px solid var(--accent);border-radius:var(--r-pill);background:var(--paper);color:var(--accent);font:inherit;font-size:var(--t-lg);cursor:pointer;font-weight:800;display:flex}.capture-take svg{width:20px;height:20px}.capture-take:disabled{opacity:.45;cursor:default}:root #sheet.record-page,:root .flow-page{z-index:var(--z-sheet);background:var(--paper-2);width:100%;max-width:none;height:100dvh;max-height:none;box-shadow:none;opacity:0;transition:opacity .18s var(--ease);padding:max(var(--s-24),env(safe-area-inset-top)) max(var(--s-16),calc((100vw - 560px) / 2)) 0;overscroll-behavior:contain;border:0;border-radius:0;margin:0;position:fixed;inset:0;overflow-y:auto;transform:none}:root #sheet.record-page.on,:root .flow-page.on{opacity:1}:root #sheet.record-page{filter:none}:root #sheet.record-page:before{display:none}:root #sheet.record-page.tucked{visibility:hidden;transform:none}:root #sheet.record-page #sheetCancel{display:none}#sheet.record-page .record-head{align-items:center;gap:var(--s-12);margin-bottom:var(--s-14);display:flex}#sheet.record-page .record-head h3{margin:0}.record-back{margin:0;display:none}#sheet.record-page .record-back{display:inline-flex}:root #sheet.record-page .scan-hand{margin:var(--s-16) 0 0;justify-content:center;gap:var(--s-12);min-height:60px;font-size:var(--t-lg);background:var(--accent);color:var(--on-accent);border-color:var(--accent)}:root #sheet.record-page .scan-hand svg{width:26px;height:26px;color:inherit}.scan-hand-hint{margin:var(--s-10) 0 0;text-align:center;font-size:var(--t-sm);color:var(--ink-soft)}.record-divider{align-items:center;gap:var(--s-12);margin:var(--s-20) 0;color:var(--ink-soft);font-size:var(--t-sm);display:flex}.record-divider:before,.record-divider:after{content:"";background:var(--line);flex:1;height:1px}:root #sheet.record-page .pre-faan-capture{margin-top:var(--s-16);background:var(--paper);border-color:var(--line);color:var(--ink)}
