@font-face{font-family:Anybody Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:50% 150%;src:url(../media/anybody-vietnamese-wdth-normal.2v1-64m5l5g-9.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Anybody Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:50% 150%;src:url(../media/anybody-latin-ext-wdth-normal.0jf1gi9ubzoy9.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Anybody Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:50% 150%;src:url(../media/anybody-latin-wdth-normal.3ndalnrfuajpq.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--felt:#2e1a63;--felt-hi:#3f2884;--felt-lo:#22114b;--chalk:#f6f1ff;--lilac:#b7a6e8;--ink:#1b0f38;--paper:#fffdf8;--red:#f2483f;--yellow:#ffc233;--green:#1fb47a;--blue:#2e7cf6;--focus:#ffe58a;--font:"Anybody Variable", ui-rounded, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--t-xs:13px;--t-sm:15px;--t-md:17px;--t-lg:21px;--t-xl:27px;--t-2xl:34px;--gutter:16px;--safe-b:env(safe-area-inset-bottom,0px)}*{box-sizing:border-box}html,body{background:var(--felt);color:var(--chalk);font-family:var(--font);font-size:var(--t-md);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;margin:0;font-weight:430;line-height:1.45}body{min-height:100dvh;overflow-x:hidden}body:before{content:"";pointer-events:none;opacity:.5;z-index:0;background-image:repeating-linear-gradient(45deg,#ffffff05 0 2px,#0000 2px 6px),repeating-linear-gradient(-45deg,#0000000d 0 2px,#0000 2px 6px),radial-gradient(120% 80% at 50% 40%,#0000 40%,#0f05288c);position:fixed;inset:0}button,input{font:inherit;color:inherit}button{cursor:pointer;-webkit-user-select:none;user-select:none}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}a{color:var(--chalk)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.wordmark{letter-spacing:-.03em;color:var(--paper);text-shadow:.035em .035em 0 var(--blue), .07em .07em 0 var(--green), .105em .105em 0 var(--yellow), .14em .14em 0 var(--red);margin:0;font-weight:900;font-stretch:150%;line-height:.82;display:inline-block}.wordmark.small{text-shadow:.05em .05em 0 var(--blue), .1em .1em 0 var(--red);font-size:30px}h1,h2,h3{letter-spacing:-.01em;margin:0;font-weight:820;font-stretch:112%;line-height:1.1}.lead{color:var(--lilac);font-size:var(--t-md);max-width:34ch;margin:0}.muted{color:var(--lilac)}.small{font-size:var(--t-sm)}.plus{font-family:ui-rounded,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-weight:800;font-stretch:100%;line-height:0}.card .plus{margin-right:.02em;font-weight:900}.btn{min-height:52px;font-size:var(--t-md);letter-spacing:.005em;background:var(--felt-hi);color:var(--chalk);touch-action:manipulation;border:0;border-radius:14px;justify-content:center;align-items:center;gap:8px;padding:0 20px;font-weight:760;font-stretch:112%;transition:transform 80ms,background .15s,opacity .15s;display:inline-flex}.btn:active:not(:disabled){transform:translateY(1px)scale(.98)}.btn:disabled{opacity:.38;cursor:default}.btn-primary{background:var(--chalk);color:var(--ink);box-shadow:0 3px #9b87d6}.btn-primary:active:not(:disabled){box-shadow:0 1px #9b87d6}.btn-ghost{color:var(--lilac);background:0 0;min-height:44px;padding:0 12px}.btn-block{width:100%}.btn-sm{min-height:40px;font-size:var(--t-sm);border-radius:11px;padding:0 14px}.field{gap:6px;display:grid}.field label{font-size:var(--t-sm);color:var(--lilac);font-weight:560}.input{background:var(--felt-lo);width:100%;min-height:52px;color:var(--chalk);font-size:var(--t-md);border:2px solid #0000;border-radius:14px;outline:none;padding:0 16px;font-weight:600}.input::placeholder{color:#8a78c2;font-weight:450}.input:focus{border-color:var(--chalk)}.input.code{text-transform:uppercase;letter-spacing:.3em;text-align:center;font-weight:860;font-stretch:130%}.error-text{color:#ffb3ad;font-size:var(--t-sm);margin:0}.card{--w:72px;--c:var(--ink);--num:var(--paper);--num-shadow:#1b0f388c;width:var(--w);height:calc(var(--w) * 1.5);font-size:var(--w);background:var(--paper);-webkit-user-select:none;user-select:none;border-radius:.13em;flex:none;padding:.045em;position:relative;box-shadow:0 .015em #1b0f384d,0 .05em .12em #0c042061}.card[data-color=red]{--c:var(--red)}.card[data-color=yellow]{--c:var(--yellow);--num:var(--ink);--num-shadow:#fffdf8d9}.card[data-color=green]{--c:var(--green)}.card[data-color=blue]{--c:var(--blue)}.card-face{background:var(--c);width:100%;height:100%;color:var(--num);border-radius:.095em;position:relative;overflow:hidden}.card[data-kind=wild] .card-face,.card[data-kind=draw4] .card-face{background:radial-gradient(circle at 78% 82%, transparent 0 .33em, #ffffff0f .33em .335em, transparent .34em), var(--ink)}.card-index{letter-spacing:-.02em;text-shadow:.045em .055em 0 var(--num-shadow);font-size:.3em;font-weight:900;font-stretch:118%;line-height:1;position:absolute;top:.06em;left:.085em}.card-index svg{width:.92em;height:.92em;filter:drop-shadow(.045em .055em 0 var(--num-shadow));display:block}.card-big{letter-spacing:-.05em;text-shadow:.035em .04em 0 var(--num-shadow);font-size:1.04em;font-weight:900;font-stretch:126%;line-height:1;position:absolute;bottom:-.2em;right:-.07em}.card-big svg{width:.86em;height:.86em;filter:drop-shadow(.035em .04em 0 var(--num-shadow));margin:0 .04em .16em 0;display:block}.card[data-kind=draw2] .card-big,.card[data-kind=draw4] .card-big{font-size:.74em;bottom:-.1em;right:-.04em}.card[data-kind=draw4] .card-big{color:var(--paper);text-shadow:.04em .04em 0 var(--blue), .08em .08em 0 var(--red)}.card[data-kind=wild] .card-big svg{filter:none;width:.92em;height:.92em;margin:0 .02em .12em 0}.card .underline{text-underline-offset:.08em;text-decoration:underline;text-decoration-thickness:.07em}.card-back .card-face{background:repeating-linear-gradient(135deg,#ffffff0d 0 .04em,#0000 .04em .11em),#4b2fa6;place-items:center;display:grid}.card-back .back-mark{letter-spacing:-.03em;color:var(--paper);text-shadow:.05em .05em 0 var(--blue), .1em .1em 0 var(--red);font-size:.34em;font-weight:900;font-stretch:150%;transform:rotate(-24deg)}.card.mini{--w:15px;box-shadow:none;border-radius:3px;padding:1.5px}.card.mini .card-face{border-radius:2px}.card.mini .back-mark{display:none}.page{z-index:1;width:100%;max-width:520px;padding:calc(env(safe-area-inset-top,0px) + 28px) var(--gutter) calc(var(--safe-b) + 32px);margin:0 auto;position:relative;overflow-x:clip}.stack{gap:var(--gap,16px);display:grid}.row{align-items:center;gap:10px;display:flex}.spread{justify-content:space-between}.rule{border:0;border-top:1px solid #b7a6e838;width:100%;margin:6px 0}.home-hero{gap:18px;padding-top:8px;display:grid}.home-hero .wordmark{font-size:clamp(96px,34vw,168px)}.hero-fan{height:150px;margin:2px 0 6px;position:relative}@media (max-width:350px){.hero-fan>div{transform:scale(.86)}}.hero-fan .card{--w:74px;transform-origin:50% 120%;position:absolute;top:10px}.banner{background:var(--felt-lo);border-left:4px solid var(--yellow);font-size:var(--t-sm);border-radius:14px;padding:14px 16px}.banner strong{font-weight:760}.join-row{grid-template-columns:1fr auto;gap:10px;display:grid}.or{color:var(--lilac);font-size:var(--t-sm);grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;display:grid}.or:before,.or:after{content:"";border-top:1px solid #b7a6e840}.code-block{gap:4px;display:grid}.code-letters{letter-spacing:.04em;white-space:nowrap;color:var(--paper);text-shadow:.04em .04em 0 var(--blue), .08em .08em 0 var(--red);font-size:min(17.5vw,92px);font-weight:900;font-stretch:125%;line-height:.95}.players{margin:0;padding:0;list-style:none}.players li{border-bottom:1px solid #b7a6e829;align-items:center;gap:12px;min-height:56px;display:flex}.players li:last-child{border-bottom:0}.avatar{width:36px;height:36px;font-weight:860;font-stretch:120%;font-size:var(--t-sm);color:var(--ink);background:var(--av,var(--lilac));border-radius:50%;flex:none;place-items:center;display:grid}.player-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:650;overflow:hidden}.tag{background:var(--felt-hi);color:var(--lilac);font-size:var(--t-xs);vertical-align:2px;border-radius:999px;margin-left:8px;padding:2px 8px;font-weight:650;display:inline-block}.icon-btn{width:40px;height:40px;color:var(--lilac);background:0 0;border:0;border-radius:12px;place-items:center;display:grid}.icon-btn:active{background:var(--felt-hi)}.rules-list{gap:14px;margin:0;padding:0;list-style:none;display:grid}.rules-list h3{font-size:var(--t-md);margin-bottom:2px}.rules-list p{color:var(--lilac);font-size:var(--t-sm);max-width:60ch;margin:0}details.rules>summary{cursor:pointer;justify-content:space-between;align-items:center;min-height:48px;font-weight:760;font-stretch:112%;list-style:none;display:flex}details.rules>summary::-webkit-details-marker{display:none}details.rules>summary:after{content:"+";color:var(--lilac);font-size:24px}details.rules[open]>summary:after{content:"–"}.sticky-foot{margin:24px calc(-1 * var(--gutter)) 0;padding:28px var(--gutter) calc(var(--safe-b) + 16px);background:linear-gradient(#22114b00,#22114bf5 45%);position:sticky;bottom:0}.page:has(.sticky-foot){padding-bottom:0}.table{z-index:1;min-height:100dvh;padding-top:env(safe-area-inset-top,0px);grid-template-rows:auto auto 1fr auto;grid-template-columns:minmax(0,1fr);display:grid;position:relative;overflow-x:clip}.table>.topbar,.table>.opponents,.table>.center,.dock-inner{width:100%;min-width:0;max-width:760px;margin-inline:auto}.dock,.hand{min-width:0}.topbar{padding:10px var(--gutter) 4px;justify-content:space-between;align-items:center;gap:8px;display:flex}.room-pill{background:var(--felt-lo);color:var(--lilac);font-size:var(--t-sm);letter-spacing:.08em;border:0;border-radius:999px;padding:6px 12px;font-weight:700}.opponents{padding:8px var(--gutter) 6px;scrollbar-width:none;align-items:stretch;gap:4px;display:flex;overflow-x:auto}.opponents::-webkit-scrollbar{display:none}.opponents.centered>:first-child{margin-left:auto}.opponents.centered>:last-child{margin-right:auto}.flow{color:var(--lilac);opacity:.6;flex:none;align-self:center;font-size:18px;font-weight:900}.seat{background:var(--felt-lo);border:2px solid #0000;border-radius:16px;flex:none;grid-template-columns:minmax(0,1fr);grid-template-areas:"who""hand";align-items:center;gap:4px 6px;min-width:0;padding:7px 8px 6px;transition:border-color .2s,background .2s;display:grid;position:relative}.seat.turn{border-color:var(--chalk);background:var(--felt-hi)}.seat-who{grid-area:who;align-items:center;gap:6px;min-width:0;display:flex}.seat .avatar{width:22px;height:22px;font-size:12px}.seat .avatar svg{width:14px;height:14px}.seat-name{min-width:0;line-height:1.15;font-size:var(--t-sm);text-overflow:ellipsis;white-space:nowrap;font-weight:720;font-stretch:90%;overflow:hidden}.seat-meta{color:var(--lilac);margin-left:6px;font-size:11px;font-weight:600}.seat-hand{grid-area:hand;align-items:flex-end;padding:0 5px;display:flex}.seat-num{background:var(--chalk);min-width:22px;color:var(--ink);text-align:center;border-radius:999px;padding:2px 6px 1px;font-size:13px;font-weight:880;font-stretch:118%;line-height:1.1;position:absolute;bottom:6px;right:6px;box-shadow:0 1px 3px #0c042066}.seat.solo{grid-template-columns:auto auto auto;grid-template-areas:"who hand num";column-gap:12px;padding:8px 14px 8px 10px}.seat.solo .avatar{width:30px;height:30px;font-size:var(--t-sm)}.seat.solo .avatar svg{width:18px;height:18px}.seat.solo .seat-name{max-width:9ch;font-stretch:100%}.seat.solo .seat-meta{margin-left:0;display:block}.seat.solo .seat-num{min-width:0;color:var(--chalk);box-shadow:none;font-size:var(--t-md);background:0 0;grid-area:num;align-self:end;padding:0 0 2px;font-weight:860;line-height:1;position:static}.fan{flex:none;transition:transform .25s;display:block;position:relative}.seat.turn .fan{transform:translateY(-2px)}.fan .card{--w:var(--back-w,18px);transform-origin:50% 100%;border-radius:3px;padding:1.5px;transition:left .25s,transform .25s;position:absolute;bottom:0;box-shadow:-1px 0 2px #0c042059}.fan .card .card-face{border-radius:2px}.fan .back-mark{display:none}.fan .card.fresh{animation:.24s cubic-bezier(.2,.9,.3,1.3) both fan-in}@keyframes fan-in{0%{opacity:0;scale:.4}}.seat .badge{white-space:nowrap;background:var(--chalk);color:var(--ink);border-radius:999px;padding:1px 7px;font-size:11px;font-weight:860;font-stretch:120%;position:absolute;top:-8px;left:50%;transform:translate(-50%)}.seat .badge.exposed{background:var(--red);color:var(--paper)}.center{padding:8px var(--gutter);align-content:center;justify-items:center;gap:14px;min-height:250px;display:grid}.piles{justify-content:center;align-items:center;gap:clamp(18px,6vw,40px);display:flex}.draw-pile{color:var(--lilac);font-size:var(--t-xs);background:0 0;border:0;justify-items:center;gap:6px;padding:0;font-weight:650;display:grid;position:relative}.draw-pile .card{--w:clamp(64px, min(20vw, 11dvh), 104px);box-shadow:.04em .04em 0 -.005em var(--paper), .04em .04em 0 .005em #1b0f3866, .08em .08em 0 -.005em var(--paper), .08em .08em 0 .005em #1b0f3866, 0 .12em .2em #0c042073}.draw-pile:disabled{cursor:default}.draw-pile.live .card{outline:3px solid var(--chalk);outline-offset:4px}.discard{--pile-w:clamp(92px, min(30vw, 16dvh), 150px);width:var(--pile-w);height:calc(var(--pile-w) * 1.5);position:relative}.discard .card{--w:var(--pile-w);position:absolute;inset:0}.discard .card.top{animation:.22s cubic-bezier(.2,.9,.3,1.2) land}.discard{-webkit-tap-highlight-color:transparent;transition:transform .15s}.discard.live{cursor:pointer}.discard.live .color-ring,.discard.target .color-ring{animation:.9s ease-in-out infinite alternate ring-pulse}.discard.target .color-ring{border-style:dashed;border-color:var(--chalk)}.discard.hot{transform:scale(1.05)}.discard.hot .color-ring{border-color:var(--chalk);box-shadow:0 0 0 4px #ffffff29,0 0 34px #ffffff59}.discard.nope .color-ring{border-color:var(--red);border-style:dashed}@keyframes ring-pulse{to{opacity:1;transform:scale(1.04)}}.discard .placed{z-index:10;transition:transform .2s cubic-bezier(.2,.8,.3,1);position:absolute;inset:0}.discard .placed .card{box-shadow:0 .04em .16em #0c042080}.discard .placed.waiting{transform:translate(12px,-18px)}.discard .placed.waiting .card:last-child{box-shadow:0 0 0 3px var(--chalk), 0 .08em .3em #0c04208c;animation:1.2s ease-in-out infinite alternate hover-bob}@keyframes hover-bob{to{translate:0 -3px}}.waiting-pill{border:2px dashed var(--chalk);font-size:var(--t-xs);border-radius:999px;padding:1px 10px;font-weight:760}@keyframes land{0%{transform:translateY(-26px) scale(1.12) rotate(var(--rot,0deg));opacity:.4}}.color-ring{border:4px solid var(--ring,transparent);opacity:.9;border-radius:22px;position:absolute;inset:-10px}.pile-caption{font-size:var(--t-sm);color:var(--chalk);align-items:center;gap:8px;font-weight:700;display:flex}.swatch{background:var(--sw);border-radius:50%;width:14px;height:14px;box-shadow:0 0 0 2px #ffffffd9}.stack-count{justify-items:center;gap:2px;min-width:84px;display:grid}.stack-count .num{font-size:calc(46px + var(--grow,0) * 1px);letter-spacing:-.04em;color:var(--paper);text-shadow:.04em .04em 0 var(--blue), .08em .08em 0 var(--green), .12em .12em 0 var(--yellow), .16em .16em 0 var(--red);font-weight:900;font-stretch:140%;line-height:.9;animation:.3s cubic-bezier(.2,.9,.3,1.4) pop}.stack-count .label{font-size:var(--t-xs);color:var(--lilac);text-align:center;max-width:11ch;font-weight:650}@keyframes pop{0%{transform:scale(.6)}}.log{text-align:center;width:100%;max-width:420px;min-height:46px;font-size:var(--t-sm);gap:2px;display:grid}.log p{margin:0}.log .older{color:var(--lilac);opacity:.7;font-size:var(--t-xs)}.notice{margin:0 var(--gutter) 8px;background:var(--felt-lo);font-size:var(--t-sm);border-radius:14px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px 10px 14px;display:flex}.notice.alert{background:var(--red);color:var(--paper)}.notice.alert .btn{background:var(--paper);color:var(--ink)}.dock{background:linear-gradient(to top, var(--felt-lo) 75%, #22114b00);padding:6px 0 calc(var(--safe-b) + 10px);position:sticky;bottom:0}.status{padding:0 var(--gutter);min-height:24px;font-size:var(--t-md);text-align:center;font-weight:700}.status .hint{font-size:var(--t-sm);color:var(--lilac);font-weight:500;display:block}.hand{padding:26px var(--gutter) 10px;scrollbar-width:none;overscroll-behavior-x:contain;align-items:flex-end;display:flex;overflow:auto hidden}.hand::-webkit-scrollbar{display:none}.hand.fits{justify-content:center}.slot{touch-action:pan-x;-webkit-touch-callout:none;cursor:grab;background:0 0;border:0;border-radius:10px;flex:none;padding:0;transition:transform .14s;position:relative}.slot+.slot{margin-left:var(--overlap,6px)}.slot .card{--w:var(--hand-w,72px)}.slot.dim{transform:translateY(6px)}.slot.dim .card:after{content:"";border-radius:inherit;background:#22114b9e;position:absolute;inset:0}.slot.follower .card:after{content:"";border-radius:inherit;background:#22114b47;position:absolute;inset:0}.slot.can-add{transform:translateY(-10px)}.slot.can-add .card{box-shadow:0 0 0 3px var(--chalk), 0 0 16px #ffe58a80;animation:.9s ease-in-out infinite alternate beckon}@keyframes beckon{to{box-shadow:0 0 0 3px var(--focus), 0 0 24px #ffe58acc}}.slot.lifted .card{opacity:.16}.slot.selected{transform:translateY(-18px)}.slot.selected .card{box-shadow:0 0 0 3px var(--chalk), 0 .08em .2em #0c042080}.slot .order{background:var(--chalk);min-width:22px;height:22px;color:var(--ink);z-index:3;border-radius:999px;place-items:center;padding:0 6px;font-size:12px;font-weight:900;display:grid;position:absolute;top:-12px;left:2px}.slot.new .card{animation:.35s ease-out dealt}@keyframes dealt{0%{opacity:0;transform:translateY(-30px)}}.actions{padding:2px var(--gutter) 0;grid-template-columns:auto auto 1fr 1.3fr;align-items:center;gap:8px;display:grid}.actions.watching{grid-template-columns:auto;justify-content:end}.chat-btn{background:var(--felt-hi);width:48px;height:52px;color:var(--chalk);touch-action:manipulation;border:0;border-radius:14px;place-items:center;transition:transform 80ms;display:grid}.chat-btn:active{transform:scale(.94)}.vio-btn{border:3px solid var(--chalk);width:66px;height:66px;color:var(--chalk);letter-spacing:-.02em;touch-action:manipulation;background:0 0;border-radius:50%;font-size:17px;font-weight:900;font-stretch:140%;transition:transform .1s,background .15s;transform:rotate(-9deg)}.vio-btn.armed{background:var(--chalk);color:var(--ink)}.vio-btn.urgent{background:var(--red);border-color:var(--paper);color:var(--paper);animation:.8s ease-in-out infinite throb}.vio-btn:active{transform:rotate(-9deg)scale(.92)}@keyframes throb{50%{transform:rotate(-9deg)scale(1.08)}}.stamp{z-index:60;pointer-events:none;font-size:clamp(80px,26vw,150px);animation:.9s cubic-bezier(.2,.9,.3,1.2) forwards stamp;position:fixed;top:42%;left:50%}@keyframes stamp{0%{opacity:0;transform:translate(-50%,-50%)rotate(-14deg)scale(2.2)}25%{opacity:1;transform:translate(-50%,-50%)rotate(-9deg)scale(1)}75%{opacity:1}to{opacity:0;transform:translate(-50%,-50%)rotate(-9deg)scale(1)}}.secret{z-index:65;pointer-events:none;background:var(--paper);width:max-content;max-width:min(84vw,480px);color:var(--ink);letter-spacing:-.01em;text-align:center;box-shadow:6px 6px 0 var(--blue), 12px 12px 0 var(--green), 18px 18px 0 var(--yellow), 24px 24px 0 var(--red);border-radius:18px;padding:16px 22px 18px;font-size:clamp(34px,11vw,60px);font-weight:900;font-stretch:125%;line-height:1.05;animation:3.8s cubic-bezier(.2,.9,.3,1.25) forwards secret;position:fixed;top:38%;left:50%}.secret.long{font-size:clamp(22px,6.4vw,34px);font-stretch:112%;line-height:1.15}@keyframes secret{0%{opacity:0;transform:translate(-50%,-50%)rotate(-10deg)scale(.3)}10%{opacity:1;transform:translate(-50%,-50%)rotate(-3deg)scale(1.08)}18%{transform:translate(-50%,-50%)rotate(-4deg)scale(1)}86%{opacity:1;transform:translate(-50%,-50%)rotate(-4deg)scale(1)}to{opacity:0;transform:translate(-50%,-60%)rotate(-4deg)scale(.96)}}.ghost{z-index:80;height:calc(var(--hand-w) * 1.5);pointer-events:none;will-change:transform;position:fixed;top:0;left:0}.ghost .card{--w:var(--hand-w);box-shadow:0 0 0 3px var(--chalk), 0 .16em .4em #0c04208c;transition:box-shadow .15s;position:absolute;top:0}.ghost.hot .card{box-shadow:0 0 0 3px var(--chalk), 0 0 0 8px #ffffff38, 0 .2em .45em #0c04208c}.ghost.nope .card{box-shadow:0 0 0 3px var(--red), 0 .16em .4em #0c04208c}body.dragging,body.dragging *{-webkit-user-select:none;user-select:none;cursor:grabbing!important}.flyer{z-index:45;pointer-events:none;will-change:transform;position:fixed}.flyer .card{--w:var(--fly-w);box-shadow:0 .06em .22em #0c042073}.chat-emojis{grid-template-columns:repeat(8,minmax(0,1fr));gap:6px;margin-bottom:14px;display:grid}.chat-emoji{aspect-ratio:1;background:var(--felt-lo);touch-action:manipulation;border:0;border-radius:14px;place-items:center;font-size:26px;line-height:1;transition:transform 80ms;display:grid}.chat-lines{flex-wrap:wrap;gap:8px;display:flex}.chat-line{background:var(--felt-hi);color:var(--chalk);font-size:var(--t-sm);touch-action:manipulation;border:0;border-radius:999px;padding:10px 14px;font-weight:700;transition:transform 80ms}.chat-emoji:active,.chat-line:active{transform:scale(.94)}.bubble{z-index:58;background:var(--paper);width:max-content;max-width:min(64vw,220px);color:var(--ink);font-size:var(--t-sm);text-align:center;pointer-events:none;border-radius:16px;padding:8px 13px 9px;font-weight:760;line-height:1.2;animation:3.6s cubic-bezier(.2,.9,.3,1.3) forwards bubble;position:fixed;box-shadow:0 6px 18px #0c042066}.bubble.below{transform-origin:50% 0;translate:-50%}.bubble.above{transform-origin:50% 100%;translate:-50% -100%}.bubble:after{content:"";left:calc(50% + var(--tail,0px));background:var(--paper);border-radius:2px;width:12px;height:12px;position:absolute;transform:translate(-50%)rotate(45deg)}.bubble.below:after{top:-5px}.bubble.above:after{bottom:-5px}.bubble-emoji{vertical-align:-.08em;font-size:1.25em;line-height:0}.bubble-name{color:#6b5ca5;font-size:11px;font-weight:700;display:block}.bubble.big{box-shadow:none;filter:drop-shadow(0 4px 8px #0c042073);background:0 0;padding:0;font-size:44px;line-height:1}.bubble.big:after{display:none}@keyframes bubble{0%{opacity:0;scale:.4}8%{opacity:1;scale:1.08}14%{scale:1}84%{opacity:1}to{opacity:0}}.setting{background:var(--felt-lo);border-radius:16px;justify-content:space-between;align-items:center;gap:12px;padding:12px 12px 12px 16px;display:flex}.setting-text{gap:1px;display:grid}.setting-label{font-weight:760;font-stretch:112%}.stepper{align-items:center;gap:4px;display:flex}.step{background:var(--felt-hi);width:44px;height:44px;color:var(--chalk);touch-action:manipulation;border:0;border-radius:12px;place-items:center;font-size:24px;font-weight:800;line-height:1;transition:transform 80ms;display:grid}.step:disabled{opacity:.35;cursor:default}.step:active:not(:disabled){transform:scale(.92)}.step-value{text-align:center;min-width:2.2ch;font-size:var(--t-xl);font-weight:900;font-stretch:125%;line-height:1}.scrim{z-index:50;background:#0c042099;place-items:end center;animation:.15s fade;display:grid;position:fixed;inset:0}@keyframes fade{0%{opacity:0}}.sheet{background:var(--felt);width:100%;max-width:560px;max-height:88dvh;padding:22px var(--gutter) calc(var(--safe-b) + 22px);border-radius:24px 24px 0 0;animation:.22s cubic-bezier(.2,.9,.3,1) rise;overflow-y:auto;box-shadow:0 -10px 40px #00000059}@keyframes rise{0%{opacity:.6;transform:translateY(40px)}}.sheet-head{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.colors{grid-template-columns:1fr 1fr;gap:12px;display:grid}.color-btn{background:var(--sw);min-height:92px;color:var(--paper);font-size:var(--t-lg);border:0;border-radius:18px;font-weight:860;font-stretch:120%;box-shadow:inset 0 -5px #0000002e}.color-btn.yellow{color:var(--ink)}.color-btn .have{font-size:var(--t-xs);opacity:.85;font-weight:600;display:block}.toast{left:50%;top:calc(env(safe-area-inset-top,0px) + 12px);z-index:70;background:var(--paper);max-width:min(92vw,460px);color:var(--ink);font-size:var(--t-sm);border-radius:14px;padding:12px 16px;font-weight:650;animation:.2s drop;position:fixed;transform:translate(-50%);box-shadow:0 10px 30px #00000059}.toast.error{background:#ffe1de}@keyframes drop{0%{opacity:0;transform:translate(-50%,-12px)}}.result-title{font-size:clamp(34px,10vw,48px);font-weight:900;font-stretch:130%;line-height:1}.result-row{border-bottom:1px solid #b7a6e829;grid-template-columns:1fr auto;align-items:center;gap:8px 12px;padding:10px 0;display:grid}.result-cards{flex-wrap:wrap;grid-column:1/-1;gap:4px;display:flex}.result-cards .card{--w:30px;border-radius:5px;padding:2px}.result-cards .card .card-face{border-radius:4px}.result-cards .card .card-big{display:none}.result-cards .card .card-index{font-size:.42em}.wins{font-weight:860;font-stretch:118%}.center-msg{text-align:center;min-height:100dvh;padding:var(--gutter);place-items:center;display:grid}@media (min-width:700px){:root{--gutter:24px}.slot .card{--w:var(--hand-w,84px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}
