:root{--bg:#f3ecdc;--surface:#faf6ec;--well:#e8dfcb;--ink:#1e2430;--muted:#5b6070;--line:#ddd3bd;--felt:#1f4a73;--felt-2:#3d7a8c;--felt-ink:#f3ecdc;--cell:#ffffff1a;--cell-line:#1f4a73;--star:#2c5d86;--rack:#b9c9a4;--tile:#fbfaf5;--tile-ink:#1e2430;--fresh:#ffe6d8;--last:#fbfaf5;--last-ring:#f0a58e;--gold:#f0a58e;--seal:#b8432f;--accent:#1f4a73;--accent-ink:#fff;--link:#1f4a73;--good:#3f6b3a;--bad:#b3261e;--font:"Figtree", system-ui, -apple-system, "Segoe UI", sans-serif;--display:"Shippori Mincho", "Fraunces", Georgia, serif;--r-xs:4px;--r-sm:8px;--r:10px;--r-lg:16px;--r-pill:99px;--shadow-sm:0 2px 6px #0003;--shadow:0 6px 18px #00000045;--shadow-lg:0 8px 24px #0000004d;--z-pop:15;--z-sheet:20;--z-notice:30;--z-popover:35;--z-drag:40;--z-fx:45;--z-bar:60;--gold-ink:#1d1b1a;--pop-red:#c8341f;--pop-yellow:#ffd23f;--text-sm:14px;--text:16px;--text-lg:20px;--text-xl:28px;--space-2xs:2px;--space-xs:4px;--space-sm:8px;--space-md:12px;--space-lg:16px;--space-xl:24px;--space-2xl:32px;--space-3xl:48px;--ease-settle:cubic-bezier(.2,.8,.2,1);--tap:44px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#141a24;--surface:#1d2532;--well:#252f3e;--ink:#f1eadb;--muted:#aab1c0;--line:#2d3848;--felt:#10263d;--felt-2:#1d4552;--felt-ink:#f1eadb;--cell:#ffffff0f;--cell-line:#10263d;--star:#1a3a5a;--rack:#4f5c43;--tile:#f4f1e6;--tile-ink:#1e2430;--fresh:#ffd9c6;--last:#f4f1e6;--last-ring:#f2b29f;--gold:#f2b29f;--seal:#e07a63;--accent:#8fb6dd;--accent-ink:#0f1b2a;--link:#a9c8e8;--good:#a5cf9a;--bad:#f08a74;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#141a24;--surface:#1d2532;--well:#252f3e;--ink:#f1eadb;--muted:#aab1c0;--line:#2d3848;--felt:#10263d;--felt-2:#1d4552;--felt-ink:#f1eadb;--cell:#ffffff0f;--cell-line:#10263d;--star:#1a3a5a;--rack:#4f5c43;--tile:#f4f1e6;--tile-ink:#1e2430;--fresh:#ffd9c6;--last:#f4f1e6;--last-ring:#f2b29f;--gold:#f2b29f;--seal:#e07a63;--accent:#8fb6dd;--accent-ink:#0f1b2a;--link:#a9c8e8;--good:#a5cf9a;--bad:#f08a74;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);margin:0}body{font-family:var(--font);font-size:var(--text);-webkit-font-smoothing:antialiased;line-height:1.45}h1,h2,h3{font-family:var(--display);text-wrap:balance;margin:0;font-weight:800;line-height:1.1}a{color:var(--link)}button{font:inherit;cursor:pointer;color:inherit}button,a,.btn,input,select{touch-action:manipulation}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.muted{color:var(--muted)}.small{font-size:var(--text-sm)}.btn{background:var(--surface);color:var(--ink);border-radius:var(--r);border:0;justify-content:center;align-items:center;gap:6px;min-height:44px;padding:10px 14px;font-weight:650;text-decoration:none;display:inline-flex}.btn.small{min-height:34px;font-size:var(--text-sm);padding:6px 10px}.btn.primary{background:var(--accent);color:var(--accent-ink);font-weight:700}.btn.big{font-size:var(--text);padding:14px 24px}.btn.wide{width:100%}.btn:disabled{opacity:.45;cursor:default}.pill{font-size:var(--text-sm);border-radius:var(--r-pill);background:var(--well);color:var(--ink);letter-spacing:.02em;padding:2px 8px;font-weight:700;display:inline-block}.pill.turn{background:var(--gold);color:var(--gold-ink)}:where(.btn.small,.home,.zbtn){position:relative}:is(.btn.small,.home,.zbtn):after{content:"";inset:min(0px, calc((100% - var(--tap)) / 2));position:absolute}:root{--t-red:#b8432f;--t-blue:#24508a;--t-green:#2f7a4a;--t-ink:#1e2430;--tile-back:#1c3557;--grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.1' numOctaves='2' seed='3'/%3E%3CfeColorMatrix values='0 0 0 0 .11 0 0 0 0 .1 0 0 0 0 .1 0 0 0 1.4 -.55'/%3E%3C/filter%3E%3Crect width='120' height='120' filter='url(%23g)'/%3E%3C/svg%3E")}.tile{--w:42px;--depth:calc(var(--w) * .14);width:var(--w);height:calc(var(--w) * 1.3);box-sizing:border-box;padding:0 0 var(--depth);border-radius:calc(var(--w) * .18);background:var(--mottle,none) 0 0 / 200px, var(--tile-back);background-blend-mode:soft-light;color:var(--tile-ink);box-shadow:var(--state,0 0 #0000), 0 1px 2px #0000002e;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;border:0;flex:none;align-content:center;place-items:center;margin:0;font-family:Georgia,Times New Roman,serif;font-weight:700;line-height:1;transition:transform .14s cubic-bezier(.3,1.5,.5,1);display:inline-grid;position:relative}.tile .face{top:0;left:0;right:0;bottom:var(--depth);border-radius:inherit;background:linear-gradient(170deg, #fff 30%, var(--face-bg,var(--tile)));pointer-events:none;position:absolute;overflow:hidden}.tile .face svg{width:100%;height:100%;display:block}.tile .face:after{content:"";background:var(--paper,var(--grain)) 0 0 / 160px;opacity:.5;mix-blend-mode:multiply;position:absolute;inset:0}.tile .n{color:var(--suit);font-size:calc(var(--w) * .58);visibility:hidden;position:relative}.tile .idx{color:var(--t-ink);font-size:calc(var(--w) * .3);position:absolute;top:5%;left:9%}.tile small{bottom:calc(var(--depth) + 3%);text-align:center;color:var(--suit);opacity:.8;font:700 max(7px, calc(var(--w) * .15))/1 var(--font);letter-spacing:.03em;text-transform:uppercase;margin:0;position:absolute;left:0;right:0}.c-red{--suit:var(--t-red)}.c-blue{--suit:var(--t-blue)}.c-green{--suit:var(--t-green)}.c-ink{--suit:var(--t-ink)}.tile.sm{--w:26px}.tile.sm .trad,.tile.sm .idx,.tile.sm small,.tile.sm .flourish{display:none}.tile.sm .n{visibility:visible}.tile.sm.joker .n{font-size:calc(var(--w) * .5)}.tile.lg{--w:56px}button.tile:not(:disabled){cursor:pointer}.tile.sel{--state:0 0 0 3px var(--gold);z-index:2;transform:translateY(-14%)}.tile.last{--state:0 0 0 3px var(--last-ring)}.tile.swappable{--state:0 0 0 3px var(--accent);animation:1.6s ease-in-out infinite swap-glow}@keyframes swap-glow{50%{transform:translateY(-6%)}}@media (prefers-reduced-motion:reduce){.tile{transition:none}.tile.swappable{animation:none}}:root{--paper:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='f'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' seed='7'/%3E%3CfeColorMatrix values='0 0 0 0 .35  0 0 0 0 .28  0 0 0 0 .18  0 0 0 .8 -.3'/%3E%3C/filter%3E%3Cfilter id='r'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.03 .22' numOctaves='2' seed='3'/%3E%3CfeColorMatrix values='0 0 0 0 .4  0 0 0 0 .32  0 0 0 0 .2  0 0 0 .45 -.18'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23f)'/%3E%3Crect width='300' height='300' filter='url(%23r)'/%3E%3C/svg%3E");--woodgrain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='600' height='400'%3E%3Cfilter id='w'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.003 .06' numOctaves='4' seed='11'/%3E%3CfeColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  0 0 1.6 0 -.75'/%3E%3C/filter%3E%3Crect width='600' height='400' filter='url(%23w)'/%3E%3C/svg%3E");--mottle:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='400' height='400'%3E%3Cfilter id='m'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.008' numOctaves='3' seed='5'/%3E%3CfeColorMatrix values='0 0 0 0 0  0 0 0 0 0  0 0 0 0 .1  0 0 0 1.2 -.55'/%3E%3C/filter%3E%3Crect width='400' height='400' filter='url(%23m)'/%3E%3C/svg%3E");--field-grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' seed='7'/%3E%3CfeColorMatrix values='0 0 0 0 .98 0 0 0 0 .95 0 0 0 0 .86 0 0 0 .8 -.32'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23g)'/%3E%3C/svg%3E");--clouds:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 160' preserveAspectRatio='none'%3E%3Cfilter id='c' x='-20%25' y='-20%25' width='140%25' height='140%25'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.035' numOctaves='3' seed='9'/%3E%3CfeDisplacementMap in='SourceGraphic' scale='22'/%3E%3CfeGaussianBlur stdDeviation='1.2'/%3E%3C/filter%3E%3Cg filter='url(%23c)' fill='%23f2b7a6'%3E%3Cpath d='M-10 120c20-40 60-46 80-30 10-36 60-50 86-22 16-30 64-28 76 6 26-12 56 0 60 26 30-6 56 8 60 30H-10z' opacity='.7'/%3E%3Cpath d='M200 80c10-26 46-34 64-14 14-24 52-20 60 6 22-8 46 4 48 24z' opacity='.5'/%3E%3C/g%3E%3C/svg%3E")}body{background:var(--paper) 0 0 / 300px, var(--bg)}.btn:not(.primary):not(.gold),.note,.call-card,.ending,.card-row,.sheet,.alerts-card,.notice:not(.n-bad){background-image:var(--paper);background-size:300px}.btn.primary{background-image:var(--mottle), var(--woodgrain);background-blend-mode:soft-light, soft-light;background-size:400px,600px 400px}html .table{background:var(--field-grain) 0 0 / 160px, url(/art/field.svg) center / 100% 100%, var(--felt);background-attachment:local,scroll,scroll;box-shadow:inset 0 0 30px #0a142859}html .lobby-new,html .hero{background:var(--field-grain) 0 0 / 160px, url(/art/field.svg) center / 100% 100%, var(--felt);box-shadow:inset 0 0 24px #0a14284d}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .table,:root:not([data-theme=light]) .lobby-new,:root:not([data-theme=light]) .hero{background-image:var(--field-grain), url(/art/field-night.svg)}}:root[data-theme=dark] .table,:root[data-theme=dark] .lobby-new,:root[data-theme=dark] .hero{background-image:var(--field-grain), url(/art/field-night.svg)}html .others li,html .seated li{-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);background:#0f1e3273}html .rack,html .hero-rack{background:var(--paper) 0 0 / 300px, var(--mottle) 0 0 / 400px, var(--rack);background-blend-mode:multiply, multiply, normal;box-shadow:inset 0 0 18px #283c1e40}html .lobby-new h1,html .lobby-new p,html .others li,html .seated li{text-shadow:0 1px 2px #0a142899,0 0 10px #0a142873}:root{--bad-ring:#e0533c}html,body{height:100%}body{overscroll-behavior:none}.center{text-align:center;place-content:center;gap:12px;min-height:100dvh;padding:16px;display:grid}.link{color:var(--link);background:0 0;border:0;padding:4px;text-decoration:underline}a.semantic{color:inherit;text-decoration:none}.lobby{gap:18px;max-width:520px;margin:0 auto;padding:16px 16px 48px;display:grid}.page-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.brand{font-family:var(--display);font-variation-settings:"SOFT" 100, "WONK" 1;font-weight:800;font-size:var(--text-lg);color:var(--ink);text-decoration:none}.lobby-new{border-radius:var(--r-lg);background:var(--felt);color:var(--felt-ink);justify-items:start;gap:10px;padding:20px;display:grid}.lobby-new h1{font-size:var(--text-xl)}.lobby-new .muted{color:color-mix(in srgb, var(--felt-ink) 75%, transparent);margin:0}.open-link{gap:6px;display:grid}.open-link label{font-size:var(--text-sm);font-weight:500}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.open-link input,.open-link .row input,.join input,.linkbox{min-width:0;min-height:44px;font:inherit;border-radius:var(--r-sm);background:var(--well);color:var(--ink);border:0;flex:1;padding:8px 12px}.tabs{gap:4px;display:flex}.tabs button{border-radius:var(--r-pill);color:var(--muted);background:0 0;border:0;align-items:center;gap:6px;padding:8px 14px;font-weight:600;display:inline-flex}.tabs button.on{color:var(--ink);background:var(--well)}.note{border-radius:var(--r);background:var(--surface);font-size:var(--text-sm);margin:0;padding:10px 12px}.note.good{background:color-mix(in srgb, var(--good) 14%, var(--surface))}.steps-list{gap:8px;margin:6px 0 0;padding-left:20px;display:grid}.steps-list li .btn{vertical-align:middle;margin-left:4px}.move-in{border-left:3px solid var(--gold);gap:10px;display:grid}.move-in p{margin:0}.games{gap:8px;margin:0;padding:0;list-style:none;display:grid}.games li{background:var(--surface);border-radius:var(--r);display:grid;position:relative}.games li.turn{background:color-mix(in srgb, var(--gold) 30%, var(--surface))}.games li.over{opacity:.8}.row-link{gap:2px;padding:12px 44px 12px 14px;display:grid}.game-name{font-family:var(--display);font-size:var(--text)}.game-meta{font-size:var(--text-sm);flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px;display:flex}.icon-btn{border-radius:var(--r-sm);width:36px;height:36px;color:var(--muted);background:0 0;border:0;font-size:20px;position:absolute;top:6px;right:6px}.confirm-remove{font-size:var(--text-sm);gap:8px;padding:0 14px 12px;display:grid}.confirm-remove p{margin:0}.btn.danger{color:var(--bad);background:color-mix(in srgb, var(--bad) 10%, var(--surface))}.stack{gap:8px;display:grid}.invite h2,.join h2{font-size:var(--text-lg)}.invite p{margin:0}.next-game{gap:8px;display:grid}.next-game p{margin:0}.game{background:var(--bg);flex-direction:column;height:100dvh;display:flex}.top{padding:8px 12px;padding-top:calc(8px + env(safe-area-inset-top,0px));align-items:center;gap:8px;display:flex}.home{font-size:var(--text-lg);color:var(--ink);padding:4px 8px;text-decoration:none}.seats{scrollbar-width:none;flex:1;gap:6px;margin:0;padding:0;list-style:none;display:flex;overflow-x:auto}.seats li{border-radius:var(--r-pill);background:var(--surface);font-size:var(--text-sm);white-space:nowrap;align-items:center;gap:6px;padding:4px 10px;font-weight:600;display:flex}.seats li.up{background:var(--accent);color:var(--accent-ink)}.seats li.me b{text-underline-offset:3px;text-decoration:underline}.actions .poke{background:var(--gold);color:var(--gold-ink);max-width:60%;font-weight:800;animation:.34s cubic-bezier(.3,1.5,.5,1) poke-in;position:relative;overflow:hidden}.actions .poke span{text-overflow:ellipsis;white-space:nowrap;position:relative;overflow:hidden}.actions .poke:active{transform:scale(.92)}.actions .poke.cooling{background:var(--surface);color:var(--muted)}.actions .poke.cooling:before{content:"";width:calc(100% - var(--cool));background:color-mix(in srgb, var(--gold) 55%, transparent);transition:width .25s linear;position:absolute;inset:0 auto 0 0}@keyframes poke-in{0%{opacity:0;transform:scale(.4)}}@media (prefers-reduced-motion:reduce){.actions .poke{animation:none}}.poke-shot,.poke-pow{z-index:var(--z-fx);pointer-events:none;place-items:center;display:grid;position:fixed}.poke-shot{width:72px;height:72px}.poke-pow{width:140px;height:140px}.poke-pow.big{width:200px;height:200px}:is(.poke-shot,.poke-pow) svg{width:100%;height:100%;fill:var(--fill);position:absolute;inset:0;overflow:visible}:is(.poke-shot,.poke-pow) b{font-family:var(--display);color:var(--ink);text-align:center;font-variation-settings:"SOFT" 100, "WONK" 1;font-weight:800;line-height:1;position:relative}.poke-shot b{font-size:14px;transform:rotate(-8deg)}.poke-shot.ghost{opacity:.45}.poke-shot.ghost.g2{opacity:.22}.poke-pow b{max-width:100px;font-size:20px;transform:rotate(-6deg)}.poke-pow.big b{max-width:150px;font-size:34px}.poke-ring{z-index:var(--z-fx);pointer-events:none;border:3px solid;border-radius:50%;width:24px;height:24px;margin:-12px 0 0 -12px;animation:.76s cubic-bezier(.2,.7,.3,1) backwards poke-ring;position:fixed}@keyframes poke-ring{0%{opacity:.95;transform:scale(.4)}to{opacity:0;border-width:1px;transform:scale(6)}}.count{text-align:center;min-width:20px;font-weight:700}.pool{font-weight:700;font-size:var(--text-sm);border-radius:var(--r-sm);background:var(--gold);color:var(--gold-ink);padding:4px 10px}.fieldframe{flex:1;min-height:160px;margin:0 8px;position:relative}.fieldscroll{border-radius:var(--r-lg);background-color:var(--felt);--field-grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' seed='7'/%3E%3CfeColorMatrix values='0 0 0 0 .98 0 0 0 0 .93 0 0 0 0 .6 0 0 0 .65 -.3'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23g)'/%3E%3C/svg%3E");background-image:var(--field-grain);overscroll-behavior:contain;scrollbar-width:thin;touch-action:none;background-repeat:repeat;background-attachment:local;position:absolute;inset:0;overflow:auto}.field-pan{width:max-content}.field{-webkit-user-select:none;user-select:none;position:relative}.cell{left:calc(3px + var(--x) * (var(--cell-size) + 2px));top:calc(3px + var(--y) * (var(--cell-h) + 2px));width:var(--cell-size);height:var(--cell-h);background:var(--cell);border-radius:calc(var(--cell-size) * .2);position:absolute}.cell[data-k="0,0"]:not(:has(.tile)):after{content:"";aspect-ratio:1;background:var(--star);clip-path:polygon(50% 0,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%);width:50%;margin:auto;position:absolute;inset:0}.zoombar{z-index:5;border-radius:var(--r);background:color-mix(in srgb, var(--surface) 88%, transparent);box-shadow:var(--shadow-sm);gap:2px;padding:4px;display:flex;position:absolute;bottom:8px;right:8px}.zbtn{border-radius:var(--r-sm);min-width:36px;height:36px;color:var(--ink);background:0 0;border:0;font-size:20px;font-weight:500;line-height:1}.zbtn.fitbtn{font-size:var(--text-sm);padding:0 8px}.zbtn:disabled{opacity:.35}.cell.live .tile{cursor:grab}.cell.hl{z-index:3}.cell.hl .tile{animation:2.6s ease-out hl-pulse}@keyframes hl-pulse{12%,55%{outline:3px solid var(--gold);outline-offset:1px;filter:drop-shadow(0 0 8px color-mix(in srgb, var(--gold) 70%, transparent));transform:scale(1.06)}30%{transform:scale(1)}}@media (prefers-reduced-motion:reduce){.cell.hl .tile{outline:3px solid var(--gold);animation:none}}.ghost{z-index:var(--z-drag);width:var(--cell-size);height:calc(var(--cell-size) * 1.3);pointer-events:none;filter:drop-shadow(var(--shadow));position:fixed;translate:-50% -60%}.ghost .tile{transform:scale(1.1)}.dock{padding:10px 12px calc(12px + env(safe-area-inset-bottom,0px));flex:none;gap:10px;display:grid}.status{min-height:1.45em;font-size:var(--text-sm);margin:0}.rack{--cell-size:40px;min-height:calc(var(--cell-size) * 1.3 + 16px);border-radius:var(--r-lg);background:var(--rack);flex-wrap:wrap;align-content:flex-start;gap:4px;padding:8px;display:flex}.rack .slot{width:var(--cell-size);height:calc(var(--cell-size) * 1.3);position:relative}.rack .tile{cursor:pointer}.rack .slot.drop-before:before,.rack .slot.drop-end:before{content:"";background:var(--gold);border-radius:2px;width:3px;position:absolute;top:2px;bottom:2px;left:-4px}.rack .slot.drop-end{width:6px}.actions{align-items:center;gap:8px;display:flex}.grow{flex:1}.join{gap:6px;display:grid}.err{color:var(--bad);font-size:var(--text-sm);margin:0}@media (min-width:900px){.game{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr) 380px;display:grid}.top{grid-column:1/-1}.fieldframe{margin:0 0 12px 12px}.dock{align-content:start}}.solo-offer{border-radius:var(--r);background:var(--surface);gap:6px;margin-top:4px;padding:12px;display:grid}.solo-offer p{margin:0}.achs{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.achs li{border-radius:var(--r);background:var(--well);color:var(--muted);align-items:center;gap:12px;padding:10px 12px;display:flex}.ach-text{gap:2px;min-width:0;display:grid}.ach-earned{align-items:center;gap:10px;display:flex}.achs li.got{background:var(--surface);color:var(--ink)}.toast{z-index:var(--z-notice);left:50%;top:calc(64px + env(safe-area-inset-top,0px));border-radius:var(--r);background:var(--felt);color:var(--felt-ink);box-shadow:var(--shadow);justify-items:center;gap:2px;padding:10px 18px;animation:.35s cubic-bezier(.3,1.5,.5,1) toast-in;display:grid;position:fixed;translate:-50%}.toast b{color:var(--gold);font-family:var(--display)}.eyebrow{font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.08em;opacity:.8;margin:0}@keyframes toast-in{0%{opacity:0;translate:-50% -12px}}@media (prefers-reduced-motion:reduce){.toast{animation:none}}.coach{border-radius:var(--r);background:var(--surface);font-size:var(--text-sm);gap:6px;padding:10px 12px;display:grid}.coach p{margin:0}.coach .row{gap:12px}.coach .btn{background:var(--well)}.btn.help{min-width:34px;font-weight:700}.overlay{z-index:var(--z-sheet);background:#00000073;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.howto{border-radius:var(--r-lg);background:var(--surface);width:min(420px,100%);box-shadow:var(--shadow-lg);gap:12px;padding:20px;display:grid}.howto h2{font-size:var(--text-xl)}.howto p,.howto ul{margin:0}.howto-list{gap:8px;padding-left:20px;display:grid}.howto-row{--cell-size:40px;border-radius:var(--r);background:var(--felt);gap:4px;width:max-content;padding:8px;display:flex}.howto-row .slot{width:var(--cell-size);height:calc(var(--cell-size) * 1.3);position:relative}.bottom-bars{z-index:var(--z-bar);left:0;right:0;bottom:calc(max(env(safe-area-inset-bottom,0px), 16px) + 28px);pointer-events:none;flex-direction:column;align-items:center;gap:8px;padding:0 12px;display:flex;position:fixed}.bottom-bars>*{pointer-events:auto}:is(.update-bar,.install-bar){border-radius:var(--r-lg);color:var(--ink);background:var(--surface);box-shadow:var(--shadow-lg);border:0}.update-bar{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;width:max-content;max-width:100%;padding:8px 10px 8px 14px;animation:.26s cubic-bezier(.3,1.4,.5,1) backwards bar-up;display:flex}@keyframes bar-up{0%{opacity:0;transform:translateY(16px)}}.install-bar{flex-direction:column;gap:10px;width:100%;max-width:440px;padding:14px 16px;animation:.32s cubic-bezier(.3,1.4,.5,1) backwards bar-up;display:flex}.install-bar b{font-family:var(--display)}.install-bar p{font-size:var(--text-sm);color:var(--muted);margin:2px 0 0}.install-bar .install-steps{color:var(--ink)}.install-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.install-actions .link{margin-left:auto}@media (prefers-reduced-motion:reduce){.update-bar,.install-bar{animation:none}}.meter{border-radius:var(--r-pill);background:color-mix(in srgb, var(--line) 70%, transparent);height:18px;position:relative;overflow:hidden}.meter i{border-radius:inherit;background:var(--gold);transition:width .6s cubic-bezier(.3,1.4,.5,1);position:absolute;inset:0 auto 0 0}.meter i.full{background:var(--good)}.meter span{text-align:center;font-size:12px;font-weight:700;line-height:18px;display:block;position:relative}.cue-ghost{z-index:var(--z-fx);pointer-events:none;filter:drop-shadow(0 6px 10px #0000004d)}.howto-row{align-items:center;position:relative}.howto-row .slot{animation:row-in 4.5s calc(var(--row) * .5s) infinite both;animation-delay:calc(var(--row) * .5s + var(--i) * .18s)}@keyframes row-in{0%{opacity:0;transform:translate(40%,30%)rotate(8deg)}12%,85%{opacity:1;transform:none}to{opacity:0;transform:none}}.howto-ok{color:var(--good);animation:ok-in 4.5s calc(var(--row) * .5s + .9s) infinite both;font-size:22px;font-weight:800;position:absolute;top:50%;right:-28px;translate:0 -50%}@keyframes ok-in{0%,8%{opacity:0;scale:.4}14%,70%{opacity:1;scale:1}80%,to{opacity:0}}@media (prefers-reduced-motion:reduce){.howto-row .slot,.howto-ok{animation:none}}.howto-goal{--cell-size:40px;--rise:calc(var(--cell-size) * 1.3 + 30px);border-radius:var(--r);background:var(--felt);gap:12px;width:max-content;padding:10px;display:grid;position:relative}.goal-table,.goal-rack{gap:4px;display:flex}.goal-spot{width:var(--cell-size);height:calc(var(--cell-size) * 1.3);border-radius:var(--r-xs);background:var(--cell)}.goal-rack{border-radius:var(--r-sm);background:var(--rack);margin:-4px;padding:4px}.goal-rack .slot{width:var(--cell-size);height:calc(var(--cell-size) * 1.3);animation:goal-rise 4.2s calc(var(--i) * .3s) both;position:relative}@keyframes goal-rise{0%,6%{transform:none}20%,86%{transform:translateY(calc(-1 * var(--rise)))}to{transform:translateY(calc(-1 * var(--rise)));opacity:0}}.goal-win{text-align:center;border-radius:var(--r-pill);background:var(--gold);width:max-content;max-width:calc(100% - 16px);color:var(--gold-ink);font-weight:700;font-size:var(--text-sm);padding:4px 10px;animation:4.2s both goal-win;position:absolute;bottom:14px;left:50%;translate:-50%}@keyframes goal-win{0%,46%{opacity:0;scale:.6}54%,86%{opacity:1;scale:1}to{opacity:0}}.howto-goal{min-width:calc(4 * var(--cell-size) + 3 * 4px + 20px);justify-items:start}@media (prefers-reduced-motion:reduce){.goal-rack .slot{transform:translateY(calc(-1 * var(--rise)));animation:none}.goal-win{animation:none}}.cue-demo{z-index:var(--z-fx);pointer-events:none;position:fixed;inset:0}.cue-ghost-tile{opacity:0;position:fixed}.cue-ghost-tile .tile{filter:saturate(.85)}.cue-finger{opacity:0;width:0;height:0;position:fixed;top:0;left:0}.cue-finger span{width:34px;height:34px;box-shadow:0 0 0 3px var(--gold), var(--shadow);background:#ffffffe0;border-radius:50%;position:absolute;top:-17px;left:-17px}.cue-label{opacity:0;white-space:nowrap;border-radius:var(--r-pill);background:var(--surface);color:var(--ink);font-size:var(--text-sm);box-shadow:var(--shadow-sm);padding:5px 10px;font-weight:600;position:fixed;transform:translate(-50%,-100%)}.coach-did{color:var(--good);align-items:center;gap:8px;font-weight:600;animation:.45s cubic-bezier(.3,1.5,.5,1) both did-in;display:flex}.coach-did .tick{background:var(--good);width:22px;height:22px;color:var(--bg);border-radius:50%;flex:none;place-items:center;font-size:13px;animation:.5s cubic-bezier(.3,1.8,.5,1) .1s both tick-pop;display:grid}@keyframes did-in{0%{opacity:0;transform:translateY(6px)}}@keyframes tick-pop{0%{transform:scale(0)rotate(-30deg)}}@media (prefers-reduced-motion:reduce){.coach-did,.coach-did .tick{animation:none}}.game{position:relative}.replay-banner{z-index:var(--z-notice);left:50%;top:calc(58px + env(safe-area-inset-top,0px));border-radius:var(--r-pill);white-space:nowrap;background:var(--felt);color:var(--felt-ink);box-shadow:var(--shadow-lg);font-size:var(--text);align-items:center;gap:10px;padding:8px 12px 8px 8px;animation:.35s cubic-bezier(.3,1.5,.5,1) both banner-in;display:flex;position:absolute;translate:-50%}.replay-banner.yours{background:var(--gold);color:var(--gold-ink);padding:12px 22px}.replay-yours{font-family:var(--display);font-size:var(--text-lg)}.replay-avatar{background:var(--gold);width:34px;height:34px;color:var(--gold-ink);font:800 16px/1 var(--display);border-radius:50%;flex:none;place-items:center;animation:1.2s ease-in-out infinite avatar-pulse;display:grid}@keyframes avatar-pulse{50%{box-shadow:0 0 0 6px color-mix(in srgb, var(--gold) 35%, transparent)}}.replay-dots{gap:4px;display:flex}.replay-dots i{background:color-mix(in srgb, var(--felt-ink) 30%, transparent);border-radius:50%;width:7px;height:7px}.replay-dots i.on{background:var(--gold)}.replay-banner .link{color:var(--felt-ink);opacity:.8}@keyframes banner-in{0%{opacity:0;translate:-50% -10px;scale:.9}}.seats li.playing{background:var(--gold);color:var(--gold-ink);animation:1s ease-in-out infinite seat-bob}@keyframes seat-bob{50%{box-shadow:0 4px 0 color-mix(in srgb, var(--gold) 50%, transparent);transform:translateY(-2px)}}.land-ring{border:3px solid var(--gold);pointer-events:none;z-index:5;border-radius:14%;position:absolute;inset:-6%}.draw-chip{z-index:var(--z-fx);background:var(--tile-back,#2f8f6c);width:28px;height:36px;box-shadow:inset 0 0 0 2px #ffffff59, var(--shadow);pointer-events:none;border-radius:6px;position:fixed}@media (prefers-reduced-motion:reduce){.replay-banner,.replay-avatar,.seats li.playing{animation:none}}.actor-tag{z-index:var(--z-fx);pointer-events:none;white-space:nowrap;border-radius:var(--r-pill);background:var(--gold);color:var(--gold-ink);box-shadow:var(--shadow);font-weight:700;font-size:var(--text-sm);align-items:center;gap:6px;padding:3px 10px 3px 3px;display:flex;position:fixed;top:0;left:0}.actor-tag:after{content:"";background:var(--gold);width:10px;height:10px;position:absolute;bottom:-5px;left:50%;translate:-50%;rotate:45deg}.actor-tag i{background:var(--felt);width:22px;height:22px;color:var(--felt-ink);font:800 12px/1 var(--display);border-radius:50%;place-items:center;font-style:normal;display:grid}.replay-skip{z-index:var(--z-notice);right:18px;top:calc(62px + env(safe-area-inset-top,0px));border-radius:var(--r-pill);background:color-mix(in srgb, var(--surface) 92%, transparent);color:var(--ink);font-size:var(--text-sm);box-shadow:var(--shadow-sm);border:0;padding:6px 12px;font-weight:600;position:absolute}.field-notes{z-index:var(--z-notice);pointer-events:none;flex-direction:column;align-items:center;gap:6px;width:max-content;max-width:calc(100% - 24px);display:flex;position:absolute;bottom:60px;left:50%;translate:-50%}.notice{border-radius:var(--r);text-align:center;max-width:100%;color:var(--ink);background:var(--surface);box-shadow:var(--shadow-lg);font-size:var(--text-sm);border:0;align-items:center;gap:8px;padding:8px 14px;animation:.32s cubic-bezier(.3,1.5,.5,1) both notice-in;display:flex}.notice.n-bad{color:#fff;background:#b3261e;font-weight:600}.notice.n-turn{background:var(--gold);color:var(--gold-ink);font:800 var(--text-lg)/1.1 var(--display);padding:10px 22px}.notice.n-ach{color:#f6f1e6;background:#1d1b1a;flex-direction:column;gap:2px}.notice.n-ach b{color:var(--gold);font-family:var(--display)}.notice-avatar{background:var(--gold);width:24px;height:24px;color:var(--gold-ink);font:800 12px/1 var(--display);border-radius:50%;flex:none;place-items:center;display:grid}@keyframes notice-in{0%{opacity:0;transform:translateY(10px)scale(.96)}}.alerts-card{pointer-events:auto;border-radius:var(--r);background:var(--surface);width:min(380px,100vw - 48px);color:var(--ink);box-shadow:var(--shadow-lg);font-size:var(--text-sm);text-align:left;padding:12px 14px;animation:.32s cubic-bezier(.3,1.5,.5,1) both notice-in}.alerts-card p{margin:0 0 10px}.alerts-card-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}@media (prefers-reduced-motion:reduce){.notice,.alerts-card{animation:none}}.ghost-count{border-radius:var(--r-pill);background:var(--accent);min-width:22px;height:22px;color:var(--accent-ink);font:800 12px/1 var(--font);box-shadow:var(--shadow-sm);place-items:center;padding:0 6px;display:grid;position:absolute;top:-8px;right:-8px}.confetti{z-index:var(--z-fx);pointer-events:none;position:fixed;inset:0;overflow:hidden}.confetti i{display:block;position:absolute}.notice.n-party{background:var(--gold);color:var(--gold-ink);padding:12px 24px;animation:.5s cubic-bezier(.3,1.7,.5,1) both party-in}.party{justify-items:center;gap:2px;display:grid}.party b{font:800 var(--text-xl)/1 var(--display);font-variation-settings:"SOFT" 100, "WONK" 1}.party span{font-weight:600}@keyframes party-in{0%{opacity:0;transform:scale(.5)rotate(-6deg)}60%{transform:scale(1.08)rotate(2deg)}}@media (prefers-reduced-motion:reduce){.notice.n-party{animation:none}}.ia-icon{--ivory:#fbf7ee;--sky:#b3c8f3;--coral:#f4a59a;--gold:#f2d34b;--linec:#e2d8bf;--inkc:#1d1b1a;width:30px;height:30px;overflow:visible}.ia-icon .ia-shade{--ivory:#e2d8bf;--sky:#8fabe6;--coral:#ee978b;--gold:#d9b52f;--linec:#c9bd9c}.ia-icon path{fill:var(--ivory);stroke:none}.ia-icon path.sky{fill:var(--sky)}.ia-icon path.red{fill:var(--coral)}.ia-icon path:is(.gold,.spark){fill:var(--gold)}.ia-icon path.solid{fill:var(--inkc)}.ia-icon path.line{fill:none;stroke:var(--linec);stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round}.ia-icon path.gold-line{fill:none;stroke:var(--gold);stroke-width:1.4px;stroke-linecap:round}.ia-icon path:is(.line,.gold-line).on{stroke:var(--inkc)}.ia-q{font:800 20px/1 var(--display);color:var(--muted)}.ach-art{background:var(--well);border-radius:50%;flex:none;place-items:center;width:52px;height:52px;display:grid;position:relative}.ach-face{background:#3f4620;border-radius:50%;place-items:center;width:44px;height:44px;display:grid;overflow:hidden}.ach-face[data-tile=ink]{background:#1d1b1a}.ach-art.got{background:linear-gradient(90deg,#f2d34b 50%,#d9b52f 50%)}.ach-art:not(.got) .ach-face{filter:grayscale()opacity(.5)}.ach-art.secret .ach-face{filter:none;background:var(--surface)}.ach-badge{z-index:2;border-radius:var(--r-pill);font:800 10px/1 var(--font);background:var(--accent);color:var(--accent-ink);padding:2px 5px;position:absolute;bottom:-2px;right:-4px}.ach-art:not(.got) .ach-badge{background:var(--muted);color:var(--bg)}.ach-art.play{animation:.8s cubic-bezier(.3,1.5,.45,1) both medal-drop}.ach-art.play:after{content:"";pointer-events:none;z-index:3;background:linear-gradient(110deg,#0000 30%,#fffc 48%,#0000 62%) 0 0/250% 100% no-repeat;border-radius:50%;animation:.9s ease-in-out .5s both medal-shine;position:absolute;inset:0}@keyframes medal-drop{0%{opacity:0;transform:translateY(-30%)rotateY(90deg)scale(.6)}50%{opacity:1;transform:translateY(4%)rotateY(-15deg)scale(1.08)}75%{transform:rotate(-6deg)}to{transform:none}}@keyframes medal-shine{0%{background-position:120% 0}to{background-position:-40% 0}}.ia-icon[class*=mo-]:not(.mo-blaze):not(.mo-shine){animation-duration:4s;animation-timing-function:ease-in-out;animation-iteration-count:infinite;animation-delay:var(--delay,0s);transform-box:fill-box;transform-origin:50%}.ia-icon.mo-twinkle{animation-name:mo-twinkle;animation-duration:3s}.ia-icon.mo-shine{animation:mo-shine 3.5s ease-in-out infinite var(--delay,0s)}.ia-icon.mo-swing{transform-origin:50% 10%;animation-name:mo-swing}.ia-icon.mo-wave{transform-origin:50% 90%;animation-name:mo-wave}.ia-icon.mo-bob{animation-name:mo-bob;animation-duration:3s}.ia-icon.mo-hop{animation-name:mo-hop;animation-duration:3s}.ia-icon.mo-pulse{animation-name:mo-pulse;animation-duration:3s}.ia-icon.mo-shake{animation-name:mo-shake}.ia-icon.mo-wiggle{animation-name:mo-wiggle}.ia-icon.mo-creep{animation-name:mo-creep;animation-duration:3s}.ia-icon.mo-blaze .ig{transform-box:fill-box;transform-origin:50% 100%;animation:1.4s ease-in-out infinite mo-blaze}.ia-icon.mo-blaze .ig1{animation-delay:-.5s}.ia-icon.mo-blaze .ig2{animation-delay:-.9s}@keyframes mo-twinkle{0%,70%,to{transform:scale(1)rotate(0)}80%{transform:scale(1.14)rotate(12deg)}90%{transform:scale(.94)rotate(-4deg)}}@keyframes mo-shine{0%,to{filter:brightness()}50%{filter:brightness(1.18)drop-shadow(0 0 3px #ffe68ccc)}}@keyframes mo-swing{0%,to{transform:rotate(-5deg)}50%{transform:rotate(5deg)}}@keyframes mo-wave{0%,60%,to{transform:rotate(0)}70%{transform:rotate(-14deg)}80%{transform:rotate(10deg)}90%{transform:rotate(-6deg)}}@keyframes mo-bob{0%,to{transform:translateY(1px)}50%{transform:translateY(-1.5px)}}@keyframes mo-hop{0%,70%,to{transform:translateY(0)}80%{transform:translateY(-3px)scale(1.03,.97)}90%{transform:translateY(0)scale(1.04,.94)}}@keyframes mo-pulse{0%,to{transform:scale(1)}50%{transform:scale(.94)}}@keyframes mo-shake{0%,84%,to{transform:translate(0)}87%{transform:translate(-1px,1px)rotate(-4deg)}90%{transform:translate(1px,-1px)rotate(4deg)}93%{transform:translate(-1px)rotate(-2deg)}}@keyframes mo-wiggle{0%,80%,to{transform:rotate(0)}85%{transform:rotate(-8deg)}90%{transform:rotate(7deg)}95%{transform:rotate(-3deg)}}@keyframes mo-creep{0%,to{transform:translate(-1.5px)}50%{transform:translate(1.5px)}}@keyframes mo-blaze{0%,to{transform:scale(1)}50%{transform:scale(.92,1.08)}}@media (prefers-reduced-motion:reduce){.ia-icon,.ia-icon *,.ach-art.play,.ach-art.play:after{animation:none!important}}.sheet-backdrop{z-index:var(--z-sheet);animation:sheet-fade var(--duration-change,.2s) ease-out;background:#00000059;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{background:var(--surface);width:100%;max-width:520px;max-height:88dvh;color:var(--ink);border-radius:var(--r-lg) var(--r-lg) 0 0;box-shadow:var(--shadow-lg);padding-bottom:env(safe-area-inset-bottom,0px);animation:sheet-up .34s var(--ease-settle);flex-direction:column;display:flex;overflow:hidden}.sheet-wide{max-width:720px}.sheet-full{height:100dvh;max-height:100dvh;padding-top:env(safe-area-inset-top,0px);border-radius:0}.sheet-grip{background:var(--line);border-radius:999px;width:36px;height:4px}.sheet-header{align-items:center;gap:var(--space-sm);padding:var(--space-md) var(--space-lg) 0;display:flex}.sheet-header h2{font-size:var(--text-lg)}.sheet-header .icon-btn{width:var(--tap);height:var(--tap);position:static}.sheet-body{overscroll-behavior-y:contain;min-height:0;padding:var(--space-md) var(--space-lg) var(--space-lg);gap:var(--space-md);flex:1;align-content:start;display:grid;overflow-y:auto}.sheet-body p{margin:0}.sheet-footer{gap:var(--space-sm);padding:var(--space-md) var(--space-lg) calc(var(--space-md) + max(env(safe-area-inset-bottom,0px), 16px));justify-content:flex-end;display:flex}.sheet-footer .btn{min-height:48px}@keyframes sheet-up{0%{transform:translateY(100%)}}@keyframes sheet-fade{0%{opacity:0}}@media (min-width:700px){.sheet-backdrop{padding:var(--space-xl);align-items:center}.sheet{border-radius:var(--r-lg);padding-bottom:0}.sheet-grip{display:none}.sheet-full{border-radius:var(--r-lg);height:auto;max-height:88dvh;padding-top:0}}@media (prefers-reduced-motion:reduce){.sheet,.sheet-backdrop{animation:none}}.lobby{padding-bottom:calc(var(--lobby-dock,76px) + 24px)}.lobby-dock{z-index:var(--z-dock,10);padding:var(--space-sm) max(var(--space-lg), env(safe-area-inset-right,0px)) calc(var(--space-sm) + max(env(safe-area-inset-bottom,0px), 12px)) max(var(--space-lg), env(safe-area-inset-left,0px));background:color-mix(in srgb, var(--bg) 92%, transparent);-webkit-backdrop-filter:blur(10px);position:fixed;bottom:0;left:0;right:0}.lobby-dock-row{gap:var(--space-sm);align-items:center;max-width:520px;margin:0 auto;display:flex}.lobby-dock-row .grow{flex:1}.lobby-dock .btn{min-height:48px}.menu-btn{width:48px;padding:0;font-size:22px;line-height:1}.lobby-menu{z-index:var(--z-popover,35);right:0;bottom:calc(100% + var(--space-sm));width:max-content;max-width:calc(100vw - 32px);padding:var(--space-xs);border-radius:var(--r);background:var(--surface);box-shadow:var(--shadow-lg);animation:.24s cubic-bezier(.3,1.5,.5,1) both notice-in;display:grid;position:absolute}.lobby-menu button,.lobby-menu a{box-sizing:border-box;height:48px;padding:0 var(--space-md);white-space:nowrap;border-radius:var(--r-sm);color:var(--ink);line-height:1.2;font:inherit;text-align:left;background:0 0;border:0;align-items:center;margin:0;font-weight:600;text-decoration:none;display:flex}.lobby-menu :is(button,a):active{background:var(--well)}.lobby-dock .move-in{margin:0 auto var(--space-sm);max-width:520px;box-shadow:var(--shadow-lg)}.data-what{gap:var(--space-sm);justify-items:start;display:grid}.data-what h2,.danger-zone h2{font-size:var(--text-lg)}.data-what ul{gap:var(--space-xs);margin:0;padding-left:20px;display:grid}.data-what .linkbox{width:100%}.danger-zone{gap:var(--space-sm);padding:var(--space-lg);border-radius:var(--r-lg);background:color-mix(in srgb, var(--bad) 7%, var(--surface));justify-items:start;display:grid}.danger-zone p{margin:0}.danger-zone .check{gap:var(--space-sm);align-items:flex-start;display:flex}.danger-zone .confirm-input{min-height:var(--tap);width:12em;font:inherit;border-radius:var(--r-sm);background:var(--well);color:var(--ink);letter-spacing:.08em;border:0;padding:8px 12px;font-size:16px}.danger-zone .stack{gap:var(--space-sm);display:grid}.server-status{font-size:var(--text-sm);color:var(--muted);margin:0}.server-status code{font-size:.95em}.server-status.ok .ss-mark{color:var(--good)}.server-status.down .ss-mark{color:var(--bad)}.ss-mark{width:1.2em;font-weight:800;display:inline-block}.game-title{font-family:var(--display);font-size:var(--text);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.table{border-radius:var(--r-lg);background:linear-gradient(180deg, var(--felt) 0%, var(--felt) 35%, var(--felt-2) 100%);min-height:0;color:var(--felt-ink);flex-direction:column;flex:1;gap:10px;margin:0 8px;padding:10px;display:flex;position:relative;overflow:auto}.others{gap:6px;margin:0;padding:0;list-style:none;display:grid}.others li{border-radius:var(--r);background:#00000024;grid-template-columns:1fr auto;gap:4px 8px;padding:6px 10px;display:grid}.others li.up{background:color-mix(in srgb, var(--gold) 35%, transparent)}.others li.dead{opacity:.6}.others .who{font-size:var(--text-sm);align-items:baseline;gap:6px;display:flex}.others .who .muted{color:color-mix(in srgb, var(--felt-ink) 70%, transparent)}.tag{border-radius:var(--r-pill);background:#ffffff2e;padding:0 6px;font-size:12px;font-weight:700}.others .sets{flex-wrap:wrap;grid-column:1/-1;gap:6px;display:flex}.others .sets:empty{display:none}.set{gap:1px;display:inline-flex}.discards{flex-wrap:wrap;align-content:flex-start;gap:3px;display:flex}.seated{gap:8px;margin:auto 0;padding:0;list-style:none;display:grid}.seated li{border-radius:var(--r);background:#00000024;align-items:baseline;gap:10px;padding:10px 12px;display:flex}.seated li.empty b{opacity:.6;font-weight:500}.seated .muted{color:color-mix(in srgb, var(--felt-ink) 70%, transparent);width:3.5em}.table .notices{justify-items:center;gap:6px;margin-top:auto;display:grid;position:sticky;bottom:0}.table .notice{color:var(--ink);position:static;translate:none}.my-sets{flex-wrap:wrap;gap:6px;display:flex}.rack{border-radius:var(--r);background:var(--rack);flex-wrap:wrap;justify-content:center;gap:4px;min-height:64px;padding:8px 4px;display:flex}.actions .btn .pill{margin-left:2px}.btn.gold{background:var(--gold);color:var(--gold-ink);font-weight:800}.call-card{border-radius:var(--r);background:var(--surface);box-shadow:var(--shadow-sm);gap:8px;padding:10px 12px;animation:.32s cubic-bezier(.3,1.5,.5,1) both notice-in;display:grid}.call-what{align-items:center;gap:10px;display:flex}.call-clock{background:var(--well);border-radius:2px;height:4px;position:relative;overflow:hidden}.call-clock:after{content:"";width:var(--left);background:var(--accent);transition:width .25s linear;position:absolute;inset:0 auto 0 0}.ending{border-radius:var(--r);background:var(--surface);gap:8px;padding:12px;display:grid}.ending p{margin:0}.ending-hand{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.ending-tiles{flex-wrap:wrap;gap:2px;display:flex}.pays{font-size:var(--text-sm);text-align:center;grid-template-columns:repeat(4,1fr);gap:6px;margin:0;padding:0;list-style:none;display:grid}.pays li{border-radius:var(--r-sm);background:var(--well);padding:6px;display:grid}.pays .up{color:var(--good)}.invite.row{flex-wrap:nowrap}.card-key{margin:0 0 8px}.card-cat{font-size:var(--text);margin:14px 0 6px}.card-list{gap:4px;margin:0;padding:0;list-style:none;display:grid}.card-row{border-radius:var(--r-sm);background:var(--well);align-items:baseline;gap:10px;padding:8px 10px;display:flex}.hand-text{font:800 var(--text)/1.2 var(--font);letter-spacing:.06em;flex-wrap:wrap;flex:1;gap:2px 8px;display:flex}.hand-text .g-a{color:var(--s-B)}.hand-text .g-b{color:var(--s-C)}.hand-text .g-c{color:var(--s-D)}.hand-text .op{color:var(--muted);font-weight:500}.card-val{font-size:var(--text-sm);color:var(--muted);white-space:nowrap;font-weight:700}.card-away{font-size:var(--text-sm);white-space:nowrap;font-weight:700}.actions .btn .pill{white-space:nowrap}.tag.seal{background:var(--seal);color:#fff;font-family:var(--display);letter-spacing:.04em;border-radius:3px}.others li,.seated li{background:#ffffff14}.pool{background:var(--gold);color:var(--gold-ink)}.lobby-new{background:linear-gradient(180deg, var(--felt), var(--felt-2))}
