@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/archivo-vietnamese-500-normal-k0drYPZA.woff2) format("woff2"),url(/assets/archivo-vietnamese-500-normal-7W3lD2kQ.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/archivo-latin-ext-500-normal-RFhg4CpD.woff2) format("woff2"),url(/assets/archivo-latin-ext-500-normal-D7mXw3Kz.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Archivo;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/archivo-latin-500-normal-CGugC8dq.woff2) format("woff2"),url(/assets/archivo-latin-500-normal-pkzA7jw9.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/archivo-vietnamese-700-normal-nuAQAQa7.woff2) format("woff2"),url(/assets/archivo-vietnamese-700-normal-Bz2vkKqq.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/archivo-latin-ext-700-normal-DD_nkw6b.woff2) format("woff2"),url(/assets/archivo-latin-ext-700-normal-CgyfnKjw.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Archivo;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/archivo-latin-700-normal-D9cHMWGj.woff2) format("woff2"),url(/assets/archivo-latin-700-normal-lT5TFe7H.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/archivo-vietnamese-800-normal-DHDgv4cm.woff2) format("woff2"),url(/assets/archivo-vietnamese-800-normal-BKe5Z8rz.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/archivo-latin-ext-800-normal-BC6piDwP.woff2) format("woff2"),url(/assets/archivo-latin-ext-800-normal-B9NTbsU1.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Archivo;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/archivo-latin-800-normal-cB6v3kRN.woff2) format("woff2"),url(/assets/archivo-latin-800-normal-DZa_k145.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:900;src:url(/assets/archivo-vietnamese-900-normal-CTaGUQkG.woff2) format("woff2"),url(/assets/archivo-vietnamese-900-normal-BsRv4e8b.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:900;src:url(/assets/archivo-latin-ext-900-normal-BTaU-39F.woff2) format("woff2"),url(/assets/archivo-latin-ext-900-normal-DtTSfqvf.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Archivo;font-style:normal;font-display:swap;font-weight:900;src:url(/assets/archivo-latin-900-normal-D5FQlLQC.woff2) format("woff2"),url(/assets/archivo-latin-900-normal-b9gKmcX7.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-sans-latin-ext-400-normal-BtiwyxMk.woff2) format("woff2"),url(/assets/dm-sans-latin-ext-400-normal-BjWJ59Pq.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-sans-latin-400-normal-CW0RaeGs.woff2) format("woff2"),url(/assets/dm-sans-latin-400-normal-BwCSEQnW.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/dm-sans-latin-ext-500-normal-BJfUCQsA.woff2) format("woff2"),url(/assets/dm-sans-latin-ext-500-normal-DR84L5F-.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/dm-sans-latin-500-normal-B9HHJjqV.woff2) format("woff2"),url(/assets/dm-sans-latin-500-normal-Dr3UlScf.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/dm-sans-latin-ext-700-normal-CJIcxD6K.woff2) format("woff2"),url(/assets/dm-sans-latin-ext-700-normal-BLI3TTWz.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:DM Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/dm-sans-latin-700-normal-DvUfVpUG.woff2) format("woff2"),url(/assets/dm-sans-latin-700-normal-CUSSCpQX.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color-scheme:light;--table: radial-gradient(130% 95% at 50% -12%, #fcfbf9 0%, #f1efea 50%, #e3dfd7 100%);--surface: #ffffff;--ink: #14161a;--muted: #6e7480;--hairline: #e2dfd8;--accent: #2e6be6;--accent-hover: #1b4fb8;--warn: #e8a33d;--bust: #e8384f;--success: #3f8f5b;--life: #f0616b;--card-shadow: 0 12px 26px rgba(20, 22, 26, .2);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--radius-pill: 999px;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 3rem;--space-8: 4rem;--shadow-sm: 0 2px 5px rgba(20, 22, 26, .16);--shadow-md: 0 10px 24px rgba(20, 22, 26, .18);--shadow-lg: 0 24px 60px rgba(20, 22, 26, .16);--font-display: "Archivo", system-ui, sans-serif;--font-ui: "DM Sans", system-ui, -apple-system, sans-serif;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.375rem;--text-2xl: 1.75rem;--text-3xl: 2.25rem;--text-4xl: 3rem;--focus-ring: 0 0 0 3px rgba(46, 107, 230, .35);--player-1: #2e6be6;--player-2: #0fa3a3;--player-3: #e8a33d;--player-4: #7a5af8;--player-5: #e85d75;--player-6: #3f8f5b}:root[data-theme=dark]{color-scheme:dark;--table: radial-gradient(130% 95% at 50% -12%, #1c1e24 0%, #16181d 50%, #101116 100%);--surface: #1b1d22;--ink: #f3f1ec;--muted: #9a9ca3;--hairline: #34363c;--accent: #5b8cf0;--accent-hover: #7ba5f5;--warn: #e8a33d;--bust: #f0576e;--success: #5fb37d;--life: #ff7a83;--card-shadow: 0 12px 26px rgba(0, 0, 0, .5);--shadow-sm: 0 2px 5px rgba(0, 0, 0, .4);--shadow-md: 0 10px 24px rgba(0, 0, 0, .5);--shadow-lg: 0 24px 60px rgba(0, 0, 0, .6);--focus-ring: 0 0 0 3px rgba(91, 140, 240, .4)}@keyframes fromBottom{0%{transform:translateY(260px) scale(.86) rotate(-8deg);opacity:0}to{transform:none;opacity:1}}@keyframes fromTop{0%{transform:translateY(-240px) scale(.86) rotate(8deg);opacity:0}to{transform:none;opacity:1}}@keyframes fromLeft{0%{transform:translate(-380px,-120px) scale(.86) rotate(-14deg);opacity:0}to{transform:none;opacity:1}}@keyframes fromRight{0%{transform:translate(380px,-120px) scale(.86) rotate(14deg);opacity:0}to{transform:none;opacity:1}}@keyframes slamIn{0%{transform:scale(2.1) rotate(-14deg);opacity:0}55%{transform:scale(.9) rotate(3deg);opacity:1}78%{transform:scale(1.06) rotate(-1deg)}to{transform:none;opacity:1}}@keyframes totalPop{0%{transform:scale(1)}40%{transform:scale(1.14)}to{transform:scale(1)}}@keyframes bustShake{0%,to{transform:translate(0)}15%{transform:translate(-9px)}30%{transform:translate(8px)}45%{transform:translate(-6px)}60%{transform:translate(5px)}75%{transform:translate(-3px)}}@keyframes bannerIn{0%{transform:translateY(10px) scale(.96);opacity:0}to{transform:none;opacity:1}}@keyframes thinkDot{0%,to{opacity:.25;transform:translateY(0)}50%{opacity:1;transform:translateY(-3px)}}@keyframes ringPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.08);opacity:.3}}@keyframes screen-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes seatHit{0%,to{transform:translate(0)}12%{transform:translate(-7px)}28%{transform:translate(6px)}44%{transform:translate(-4px)}60%{transform:translate(3px)}78%{transform:translate(-2px)}}@keyframes scrimIn{0%{opacity:0}to{opacity:1}}@keyframes drawnBump{0%,to{transform:translateY(0)}35%{transform:translateY(-5px)}}@keyframes cardDeal{0%{opacity:0;transform:translateY(16px) scale(.6) rotate(-8deg)}60%{opacity:1}to{opacity:1;transform:translateY(0) scale(1) rotate(0)}}@keyframes countPop{0%{transform:scale(1)}30%{transform:scale(1.22);color:var(--accent)}to{transform:scale(1)}}@keyframes handDeal{0%{opacity:0;transform:translate(var(--fan-x, 0px),calc(var(--fan-y, 0px) + 26px)) rotate(var(--fan-rotate, 0deg)) scale(.9)}55%{opacity:1}to{opacity:1;transform:translate(var(--fan-x, 0px),var(--fan-y, 0px)) rotate(var(--fan-rotate, 0deg)) scale(1)}}@keyframes drawFly{0%{transform:translate(calc(var(--fx) - 50%),calc(var(--fy) - 50%)) scale(.9) rotate(0);opacity:0}8%{transform:translate(calc(var(--fx) - 50%),calc(var(--fy) - 50%)) scale(1.06) rotate(-3deg);opacity:1}78%{transform:translate(calc(var(--tx) - 50%),calc(var(--ty) - 50%)) scale(.6) rotate(-11deg);opacity:1}to{transform:translate(calc(var(--tx) - 50%),calc(var(--ty) - 50%)) scale(.42) rotate(-13deg);opacity:0}}@keyframes bombFlash{0%{opacity:0}8%{opacity:1}to{opacity:0}}@keyframes bombRingOut{0%{transform:translate(-50%,-50%) scale(.15);opacity:.95}to{transform:translate(-50%,-50%) scale(3.4);opacity:0}}@keyframes bombRingOut2{0%{transform:translate(-50%,-50%) scale(.15);opacity:.7}to{transform:translate(-50%,-50%) scale(2.4);opacity:0}}@keyframes bombWord{0%{transform:scale(3.2) rotate(-8deg);opacity:0;letter-spacing:40px}18%{transform:scale(1) rotate(-3deg);opacity:1;letter-spacing:4px}70%{transform:scale(1) rotate(-3deg);opacity:1;letter-spacing:4px}to{transform:scale(1.5) rotate(-3deg);opacity:0;letter-spacing:26px}}@keyframes bombSub{0%,22%{opacity:0;transform:translateY(14px)}40%{opacity:1;transform:none}72%{opacity:1}to{opacity:0}}@keyframes screenShake{0%,to{transform:translateZ(0) rotate(0)}12%{transform:translate3d(-14px,5px,0) rotate(-.6deg)}26%{transform:translate3d(12px,-4px,0) rotate(.5deg)}40%{transform:translate3d(-9px,3px,0) rotate(-.35deg)}56%{transform:translate3d(7px,-2px,0) rotate(.25deg)}74%{transform:translate3d(-4px,2px,0) rotate(-.15deg)}88%{transform:translate3d(2px,-1px,0)}}@keyframes lifeFlashPulse{0%{opacity:0}15%{opacity:1}to{opacity:0}}@keyframes stampIn{0%{transform:rotate(-8deg) scale(3.4);opacity:0}55%{transform:rotate(-8deg) scale(.92);opacity:1}to{transform:rotate(-8deg) scale(1);opacity:1}}@keyframes glowPulse{0%,to{opacity:.35}50%{opacity:.85}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}@keyframes lifeFillOut{0%,6%{opacity:1;color:var(--life)}14%{opacity:1;color:var(--bust)}24%,to{opacity:0}}@keyframes lifeRise{0%{transform:translateY(0) scale(1);opacity:0}8%{opacity:1}30%,to{transform:translate(var(--loss-x, 0px),var(--loss-rise, -70px)) scale(2.3);opacity:1}}@keyframes lifeHalfL{0%,34%{transform:none;opacity:1}80%{opacity:.9}to{transform:translate(-9px,16px) rotate(-28deg);opacity:0}}@keyframes lifeHalfR{0%,34%{transform:none;opacity:1}80%{opacity:.9}to{transform:translate(9px,16px) rotate(28deg);opacity:0}}@keyframes lifeMinus{0%,33%{opacity:0;transform:translate(-50%,6px)}45%{opacity:1;transform:translate(-50%,-6px)}80%{opacity:1}to{opacity:0;transform:translate(-50%,-26px)}}@keyframes lossRing{0%,33%{transform:scale(1);opacity:0}36%{opacity:1}75%,to{transform:scale(1.75);opacity:0}}.card-face{container-type:inline-size;position:relative;display:block;width:calc(clamp(64px,12.5vh,104px) * var(--card-scale, 1));aspect-ratio:104 / 148;border-radius:calc(14px * var(--card-scale, 1));box-shadow:var(--card-shadow);overflow:hidden;flex-shrink:0;font-family:var(--font-display);-webkit-user-select:none;user-select:none;background:radial-gradient(65% 55% at 50% 42%,color-mix(in srgb,var(--card-accent) 22%,transparent) 0%,transparent 70%),#100b0f;border:calc(1.6px * var(--card-scale, 1)) solid color-mix(in srgb,var(--card-accent) 80%,transparent)}.card-face--sm{width:calc(clamp(38px,5vh,52px) * var(--card-scale, 1))}.card-face--lg{width:calc(clamp(70px,13.5vh,116px) * var(--card-scale, 1))}.deck-stack__top .card-face,.discard__card .card-face{width:100%;height:100%;aspect-ratio:auto}.card-face__hairline{position:absolute;top:8cqw;right:8cqw;bottom:8cqw;left:8cqw;border-radius:9cqw;border:max(1px,1.2cqw) solid color-mix(in srgb,var(--card-accent) 40%,transparent);pointer-events:none}.card-face__hairline--back{border-color:#ffffff24}.card-face__corner{position:absolute;top:8cqw;left:11cqw;font-weight:800;font-size:12cqw;line-height:1;letter-spacing:-.02em;color:var(--card-accent)}.card-face__numeral{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-weight:900;letter-spacing:-.06em;color:var(--card-accent)}.card-face__center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5cqw;padding:9cqw 4cqw}.card-face__glyph{font-weight:900;line-height:1;letter-spacing:-.05em;color:var(--card-accent)}.card-face__icon{width:38cqw;height:38cqw;color:var(--card-accent)}.card-face__word{font-weight:800;font-size:11cqw;line-height:1.05;text-align:center;text-transform:uppercase;letter-spacing:.08em;color:#ffffffeb;-webkit-hyphens:none;hyphens:none}.card-face__back-mark{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:#ffffffd9}.card-face__back-mark svg{width:48cqw;height:auto}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font-ui);font-size:var(--text-base);color:var(--ink);background:var(--table);background-attachment:fixed;-webkit-font-smoothing:antialiased}h1,h2,h3,p{margin:0}button{font-family:inherit;font-size:inherit;color:inherit}input{font-family:inherit;font-size:inherit}:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:var(--radius-sm)}.tabular{font-variant-numeric:tabular-nums}.icon{width:1em;height:1em;flex-shrink:0}.status-icon{width:14px;height:14px;flex-shrink:0}.app{position:relative;min-height:100%;display:flex;flex-direction:column;align-items:center;padding:clamp(12px,2.4vh,22px) clamp(14px,4vw,28px) clamp(24px,6vh,48px);overflow-x:hidden}.app-brand{display:flex;align-items:center;gap:var(--space-3);align-self:flex-start;margin-bottom:var(--space-5)}.app-topbar{display:flex;align-items:center;justify-content:space-between;width:100%;max-width:30rem;margin-bottom:var(--space-4)}.app-brand__mark{width:40px;height:40px;flex-shrink:0}.app-brand__name{font-family:var(--font-display);font-size:var(--text-lg);font-weight:900;letter-spacing:-.02em}.app-brand__name span{color:var(--accent)}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:var(--radius-pill);border:1px solid var(--hairline);background:var(--surface);color:var(--muted);cursor:pointer;transition:color .12s ease,border-color .12s ease,transform .12s ease}.theme-toggle:hover{color:var(--ink);border-color:var(--ink)}.theme-toggle:active{transform:scale(.94)}.theme-toggle .icon{width:18px;height:18px}.screen{position:relative;width:100%;max-width:30rem;animation:screen-in .26s cubic-bezier(.16,1,.3,1)}.error-banner{display:flex;align-items:center;gap:var(--space-3);width:100%;max-width:30rem;background:var(--surface);color:var(--bust);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);border:1px solid var(--bust);box-shadow:var(--shadow-sm);margin-bottom:var(--space-4);cursor:pointer;font-size:var(--text-sm);font-weight:600;text-align:left}.error-banner svg{flex-shrink:0}.conn-banner{display:flex;align-items:center;gap:var(--space-3);width:100%;max-width:30rem;background:var(--surface);color:var(--muted);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);border:1px solid var(--hairline);box-shadow:var(--shadow-sm);margin-bottom:var(--space-4);font-size:var(--text-sm);font-weight:600;text-align:left}.conn-banner--stuck{color:var(--bust);border-color:var(--bust)}.conn-banner__dot{width:9px;height:9px;flex-shrink:0;border-radius:var(--radius-pill);background:var(--warn);animation:connPulse 1.2s ease-in-out infinite}.conn-banner--stuck .conn-banner__dot{background:var(--bust);animation:none}@keyframes connPulse{0%,to{opacity:.35;transform:scale(.85)}50%{opacity:1;transform:scale(1)}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:.8rem 1.4rem;border-radius:var(--radius-md);border:none;font-family:var(--font-ui);font-size:var(--text-sm);font-weight:700;letter-spacing:.02em;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,background .12s ease,border-color .12s ease,opacity .12s ease,color .12s ease}.btn:active:not(:disabled){transform:scale(.97)}.btn:disabled{cursor:not-allowed;opacity:.45}.btn--primary{background:var(--ink);color:var(--surface);box-shadow:var(--shadow-sm)}.btn--primary:hover:not(:disabled){background:var(--accent)}.btn--secondary{background:var(--surface);color:var(--ink);border:1px solid var(--ink)}.btn--secondary:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.btn--ghost{background:transparent;color:var(--muted);padding:.5rem .75rem}.btn--ghost:hover:not(:disabled){color:var(--bust);background:color-mix(in srgb,var(--bust) 12%,transparent)}.btn--full{width:100%}.btn--sm{padding:.45rem .85rem;font-size:var(--text-xs)}.field{display:flex;flex-direction:column;gap:var(--space-2)}.field label{font-size:var(--text-sm);font-weight:600;color:var(--muted)}.field__hint{margin:0;font-size:var(--text-xs);color:var(--accent)}.input[aria-invalid=true]{border-color:var(--accent)}.input{width:100%;padding:.8rem 1rem;border-radius:var(--radius-md);border:1px solid var(--hairline);background:var(--surface);color:var(--ink);transition:border-color .12s ease}.input::placeholder{color:var(--muted)}.input:focus-visible{border-color:var(--accent)}.input--code{text-transform:uppercase;letter-spacing:.18em;font-weight:700;text-align:center;font-family:var(--font-display)}.home,.lobby{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);padding:var(--space-6) var(--space-5);display:flex;flex-direction:column;gap:var(--space-5)}.home__hero{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);text-align:center}.home__hero-art{width:96px;height:96px}.home__title{font-family:var(--font-display);font-size:var(--text-3xl);font-weight:900;letter-spacing:-.03em}.home__subtitle{color:var(--muted);font-size:var(--text-sm);max-width:26rem}.home__tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-1);padding:var(--space-1);border-radius:calc(var(--radius-md) + var(--space-1));background:var(--table);border:1px solid var(--hairline)}.home__tab{min-height:44px;padding:0 var(--space-3);border:none;border-radius:var(--radius-md);background:transparent;color:var(--muted);font-family:var(--font-ui);font-size:var(--text-sm);font-weight:700;cursor:pointer;transition:background .12s ease,color .12s ease}.home__tab:hover{color:var(--ink)}.home__tab:focus-visible{outline:none;box-shadow:var(--focus-ring)}.home__tab[aria-selected=true]{background:var(--ink);color:var(--surface);box-shadow:var(--shadow-sm)}.home__panel{display:flex;flex-direction:column;gap:var(--space-4)}.home__panel-hint{color:var(--muted);font-size:var(--text-sm)}.lobby__header{display:flex;flex-direction:column;gap:var(--space-2);align-items:center;text-align:center}.lobby__code-label{font-size:var(--text-xs);font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.lobby__code{font-family:var(--font-display);font-size:var(--text-4xl);font-weight:900;letter-spacing:.12em;color:var(--ink)}.lobby__hint{color:var(--muted);font-size:var(--text-sm)}.lobby__share{margin-top:var(--space-2)}.lobby__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.lobby__actions{display:flex;flex-direction:column;gap:var(--space-3)}.lobby__bot-row{display:flex;gap:var(--space-2)}.lobby__waiting{text-align:center;color:var(--muted);font-size:var(--text-sm);padding:var(--space-2) 0}.lobby__tag{font-size:var(--text-xs);font-weight:700;padding:.15rem .55rem;border-radius:var(--radius-pill);white-space:nowrap;display:inline-flex;align-items:center;gap:.25rem}.lobby__tag--bot{background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent)}.lobby__tag--offline{background:color-mix(in srgb,var(--muted) 14%,transparent);color:var(--muted)}.seat{position:relative;display:flex;flex-direction:column;align-items:center;gap:8px;width:132px;margin-top:var(--arc, 0px);--loss-rise: -70px;padding:20px 4px 6px;border:1.5px solid transparent;border-radius:14px;background:transparent;transition:opacity .3s ease,transform .2s ease,border-color .3s ease,background .3s ease}.seat--hit{z-index:3;animation:seatHit .5s ease .5s both}.seat--active{transform:scale(1.06);z-index:2;border-color:var(--warn);background:color-mix(in srgb,var(--warn) 8%,transparent)}.seat__flag{position:absolute;top:-9px;left:50%;transform:translate(-50%);z-index:3;font-size:9px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:2px 7px;border-radius:var(--radius-pill);white-space:nowrap;background:var(--muted);color:var(--surface)}.seat--active .seat__flag{background:var(--warn);color:var(--ink);animation:flagPulse 1.4s ease-in-out infinite}.seat--next .seat__flag{background:var(--accent);color:#fff}@keyframes flagPulse{0%,to{transform:translate(-50%) scale(1);opacity:.9}50%{transform:translate(-50%) scale(1.08);opacity:1}}.flow-chevron{align-self:center;margin-top:clamp(20px,4vh,34px);font-size:22px;line-height:1;color:var(--hairline);font-weight:700;-webkit-user-select:none;user-select:none}.flow-chevron--live{color:var(--accent);animation:chevronNudge 1s ease-in-out infinite}.flow-chevron--rev.flow-chevron--live{animation-name:chevronNudgeRev}@keyframes chevronNudge{0%,to{transform:translate(0);opacity:.6}50%{transform:translate(3px);opacity:1}}@keyframes chevronNudgeRev{0%,to{transform:translate(0);opacity:.6}50%{transform:translate(-3px);opacity:1}}.flow-dir{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius-pill);padding:5px 10px;white-space:nowrap}.flow-dir .icon{width:14px;height:14px;animation:flowSpin .5s ease}.flow-dir--rev{color:var(--accent);border-color:var(--accent)}.flow-dir--rev .icon{transform:scaleX(-1);animation:flowSpinRev .5s ease}@keyframes flowSpin{0%{transform:rotate(-180deg)}to{transform:rotate(0)}}@keyframes flowSpinRev{0%{transform:scaleX(-1) rotate(-180deg)}to{transform:scaleX(-1) rotate(0)}}.deck-count{display:inline-flex;align-items:center;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius-pill);padding:5px 12px;white-space:nowrap}.seat--offline{opacity:.4}.seat--eliminated{opacity:.45}.seat--eliminated .seat__name{text-decoration:line-through}.seat__avatar-wrap{position:relative;width:clamp(44px,6.4vh,58px);height:clamp(44px,6.4vh,58px)}.seat__avatar{width:100%;height:100%;border-radius:50%;overflow:hidden}.seat--active .seat__avatar-wrap:before{content:"";position:absolute;top:-22px;right:-22px;bottom:-22px;left:-22px;border-radius:50%;background:radial-gradient(50% 50% at 50% 50%,color-mix(in srgb,var(--accent) 35%,transparent) 0%,transparent 70%);animation:glowPulse 1.6s ease-in-out infinite;z-index:-1}.seat--active .seat__avatar-wrap:after,.seat--next .seat__avatar-wrap:after{content:"";position:absolute;top:-5px;right:-5px;bottom:-5px;left:-5px;border-radius:50%;border:2px solid var(--accent);pointer-events:none}.seat--active .seat__avatar-wrap:after{border-color:var(--ink);animation:ringPulse 1.4s ease-in-out infinite}.seat--eliminated .seat__avatar{filter:grayscale(1)}.seat__out{position:absolute;top:-10px;right:-10px;bottom:-10px;left:-10px;display:grid;place-items:center;z-index:5;pointer-events:none}.seat__out-badge{font-family:var(--font-display);font-weight:900;font-size:13px;letter-spacing:.1em;color:var(--bust);border:2px solid var(--bust);border-radius:6px;padding:1px 7px;background:color-mix(in srgb,var(--surface) 75%,transparent);animation:stampIn .4s cubic-bezier(.2,.9,.3,1.5) both}.avatar{position:relative;display:block;width:100%;height:100%;border-radius:50%}.avatar svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block}.avatar--0{background:linear-gradient(140deg,#8b6dff,#5433e0)}.avatar--1{background:linear-gradient(140deg,#22c3d6,#0e8fa6)}.avatar--2{background:linear-gradient(140deg,#f7b24c,#e8742d)}.avatar--3{background:linear-gradient(140deg,#ff7db0,#e64c8c)}.avatar--4{background:linear-gradient(140deg,#62a8f7,#2e6be6)}.avatar--5{background:linear-gradient(140deg,#55c98a,#2f9e5e)}.seat__status{position:absolute;right:-2px;bottom:-2px;width:18px;height:18px;border-radius:50%;background:var(--surface);border:2px solid var(--surface);color:var(--muted);display:grid;place-items:center}.seat__status .icon{width:11px;height:11px}.seat__name-row{display:flex;align-items:center;gap:6px;max-width:100%}.seat__name{font-size:var(--text-sm);font-weight:700;letter-spacing:-.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:84px}.seat__count{min-width:18px;height:18px;border-radius:9px;background:var(--ink);color:var(--surface);font-size:10px;font-weight:700;display:grid;place-items:center;padding:0 5px}.lives{position:relative;display:flex;gap:3px;align-items:center}.lives__heart{position:relative;width:clamp(17px,3vh,22px);height:clamp(17px,3vh,22px);color:var(--life);display:block;filter:drop-shadow(0 1px 1px rgba(20,22,26,.25))}.lives__heart svg{width:100%;height:100%;display:block}.lives__heart--spent{color:var(--hairline);filter:none}.lives__heart--losing{z-index:3}.seat .lives__heart--losing{--loss-x: calc(var(--loss-k, 0) * (100% + var(--pip-gap, 3px)))}.lives__fill{position:absolute;top:0;right:0;bottom:0;left:0;color:var(--life);animation:lifeFillOut 1.5s ease both}.life-shatter{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;animation:lifeRise 1.5s cubic-bezier(.2,.8,.2,1) both}.life-shatter__half{position:absolute;top:0;right:0;bottom:0;left:0;color:var(--bust)}.life-shatter__half--l{clip-path:polygon(0 0,54% 0,44% 38%,57% 58%,47% 100%,0 100%);animation:lifeHalfL 1.5s ease-in both}.life-shatter__half--r{clip-path:polygon(54% 0,100% 0,100% 100%,47% 100%,57% 58%,44% 38%);animation:lifeHalfR 1.5s ease-in both}.life-shatter__minus{position:absolute;left:50%;top:calc(var(--loss-rise, -70px) - 28px);font-family:var(--font-display);font-weight:900;font-size:20px;line-height:1;color:var(--bust);white-space:nowrap;pointer-events:none;margin-left:var(--loss-x, 0px);animation:lifeMinus 1.5s ease-out both}.loss-ring{position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border-radius:50%;border:2.5px solid var(--bust);opacity:0;pointer-events:none;animation:lossRing 1.5s ease-out both}@media (prefers-reduced-motion: reduce){.life-shatter,.life-shatter__minus,.loss-ring{display:none}.lives__fill{animation:none;opacity:0}.seat--hit,.you-row--hit{animation:none}}.seat__cardcount{font-size:var(--text-xs);font-weight:600;color:var(--muted)}.seat__cards{display:flex;height:clamp(20px,3.8vh,30px);align-items:center;padding-left:6px}.seat__card-back{width:clamp(13px,2.4vh,18px);height:clamp(19px,3.4vh,27px);border-radius:4px;background:linear-gradient(140deg,#46579d,#29356b);box-shadow:inset 0 0 0 1px #ffffff38,-1px 0 3px #0000004d;margin-left:-6px}:root[data-theme=dark] .seat__card-back{background:linear-gradient(140deg,#5a6bb8,#35427f);box-shadow:inset 0 0 0 1px #ffffff4d,-1px 0 3px #00000080}.draw-flight-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;pointer-events:none}.draw-flight{position:fixed;left:0;top:0;z-index:1;animation:drawFly .9s cubic-bezier(.22,.7,.25,1) both;will-change:transform,opacity}.draw-flight .card-face{box-shadow:0 16px 34px #00000080;outline:2px solid rgba(255,255,255,.14);outline-offset:-2px}.seat--drew .seat__cards{animation:drawnBump .5s ease}.seat__card-back--dealt{animation:cardDeal .42s cubic-bezier(.16,1,.3,1) both}.seat--drew .seat__cardcount{animation:countPop .6s ease}.seat__think{height:14px;display:flex;gap:5px;align-items:center}.seat__think span{width:6px;height:6px;border-radius:50%;background:var(--warn);animation:thinkDot 1s ease-in-out infinite}.seat__think span:nth-child(2){animation-delay:.16s}.seat__think span:nth-child(3){animation-delay:.32s}.seat--row{flex-direction:row;width:100%;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);background:color-mix(in srgb,var(--ink) 3%,var(--surface));border:1px solid var(--hairline)}.seat--row .seat__avatar-wrap{width:32px;height:32px}.seat--row .seat__avatar{box-shadow:none}.seat--row .seat__name{text-align:left;max-width:none;margin-right:auto}.seat--row .seat__name:has(+.status-icon){margin-right:6px}.seat--row .status-icon{margin-right:auto}.table-viewport{position:relative;width:100%;max-width:72rem}.table{--card-scale: 1;position:relative;display:flex;flex-direction:column;gap:clamp(12px,3vh,26px);min-height:calc(100vh - 6rem)}.table--shake{animation:screenShake .55s cubic-bezier(.3,.8,.3,1) both}.table__header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3)}.table__brand{display:flex;align-items:center;gap:12px}.table__logo{width:44px;height:44px;border-radius:var(--radius-md);flex-shrink:0}.table__wordmark{font-family:var(--font-display);font-weight:900;font-size:20px;letter-spacing:-.02em;line-height:1}.table__tagline{font-size:var(--text-xs);color:var(--muted);letter-spacing:.14em;text-transform:uppercase;margin-top:4px}.table__header-actions{display:flex;align-items:center;gap:var(--space-2)}.table__scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;display:grid;place-items:center;padding:var(--space-4);background:color-mix(in srgb,var(--ink) 45%,transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:scrimIn .25s ease both}.table__banner{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);background:var(--surface);border:1px solid var(--warn);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);padding:var(--space-6) var(--space-7);text-align:center;animation:bannerIn .35s ease both}.table__banner-avatar{width:60px;height:60px;border-radius:50%;overflow:hidden;box-shadow:0 0 0 3px var(--warn)}.table__banner-title{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:900;letter-spacing:-.02em}.table__banner-wait{font-size:var(--text-sm);color:var(--muted)}.table__banner .btn--primary{margin-top:var(--space-2)}.opponents{display:flex;justify-content:center;align-items:flex-start;gap:clamp(12px,2.4vw,30px);flex-wrap:wrap}.table__middle{flex:1 1 auto;display:flex;align-items:center;justify-content:center;gap:clamp(18px,4vw,46px);min-height:0}.deck-stack{display:flex;flex-direction:column;align-items:center;gap:10px}.deck-stack__cards{position:relative;width:calc(clamp(80px,13.8vh,116px) * var(--card-scale));height:calc(clamp(114px,19.6vh,164px) * var(--card-scale))}.deck-stack__shadow{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--radius-md)}.deck-stack__shadow--1{transform:translate(6px,6px);background:color-mix(in srgb,var(--ink) 18%,transparent)}.deck-stack__shadow--2{transform:translate(3px,3px);background:#1b2340}.deck-stack__top{position:absolute;top:0;right:0;bottom:0;left:0}.deck-stack__top .card-face{width:100%;height:100%}.micro-label{font-size:var(--text-xs);letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.discard{position:relative;width:calc(clamp(94px,15.4vh,130px) * var(--card-scale));height:calc(clamp(126px,21vh,176px) * var(--card-scale))}.discard__card{position:absolute;left:7px;top:6px;width:calc(clamp(80px,13.8vh,116px) * var(--card-scale));height:calc(clamp(114px,19.6vh,164px) * var(--card-scale))}.discard__card .card-face{width:100%;height:100%}.discard__empty{position:absolute;left:7px;top:6px;width:calc(clamp(78px,13.6vh,114px) * var(--card-scale));height:calc(clamp(112px,19.4vh,162px) * var(--card-scale));border-radius:var(--radius-md);border:2px dashed var(--hairline);display:grid;place-items:center;text-align:center;color:var(--muted);font-size:var(--text-xs);padding:var(--space-3)}.total{display:flex;flex-direction:column;align-items:center;gap:10px}.total__box{min-width:calc(clamp(96px,16vh,128px) * var(--card-scale));padding:calc(clamp(10px,2vh,18px) * var(--card-scale)) calc(22px * var(--card-scale));border-radius:var(--radius-lg);background:var(--surface);border:2px solid var(--hairline);display:grid;place-items:center}.total__box--warn{border-color:var(--warn)}.total__box--bust{border-color:var(--bust)}.total__value{font-family:var(--font-display);font-weight:900;font-size:calc(clamp(38px,7vh,60px) * var(--card-scale));line-height:.9;letter-spacing:-.06em;color:var(--ink)}.total__box--warn .total__value{color:var(--warn)}.total__box--bust .total__value{color:var(--bust)}.message-region{min-height:clamp(30px,5vh,46px);display:flex;align-items:center;justify-content:center}.message-pill{display:flex;align-items:center;gap:var(--space-2);padding:10px 22px;border:none;border-radius:var(--radius-pill);background:var(--ink);color:var(--surface);font-family:var(--font-ui);font-weight:700;font-size:var(--text-sm);text-align:center;cursor:pointer;animation:bannerIn .3s ease both}.message-pill--bust{background:var(--bust)}.message-pill .btn{padding:.35rem .9rem}.message-pill__action{background:var(--surface);color:var(--ink);border:none;border-radius:var(--radius-pill);font-weight:700;font-size:var(--text-xs);padding:.4rem .9rem;cursor:pointer}.bomb-blast{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;pointer-events:none;display:grid;place-items:center;overflow:hidden}.bomb-blast__flash{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(52% 46% at 50% 48%,#ff3c5652,#ff3c5600 62%),radial-gradient(120% 90% at 50% 50%,#0000 42%,#78000e80);animation:bombFlash 1.5s ease-out both}.bomb-blast__ring{position:absolute;left:50%;top:48%;width:min(420px,80vw);height:min(420px,80vw);border-radius:50%}.bomb-blast__ring--a{border:4px solid rgba(255,92,108,.85);animation:bombRingOut .85s cubic-bezier(.15,.75,.3,1) both}.bomb-blast__ring--b{border:2px solid rgba(255,180,110,.7);animation:bombRingOut2 1.05s .12s cubic-bezier(.15,.75,.3,1) both}.bomb-blast__text{position:relative;text-align:center;padding:0 20px}.bomb-blast__word{font-family:var(--font-display);font-weight:900;font-size:clamp(56px,14vw,140px);line-height:.9;color:#fff;text-shadow:0 0 60px rgba(255,60,86,.9),0 14px 40px rgba(0,0,0,.7);animation:bombWord 1.5s cubic-bezier(.15,.8,.25,1) both}.bomb-blast__sub{margin-top:10px;font-size:clamp(11px,1.6vw,14px);font-weight:700;letter-spacing:.22em;color:#ffc2ca;animation:bombSub 1.5s ease both}.life-flash{position:fixed;top:0;right:0;bottom:0;left:0;z-index:45;pointer-events:none;background:radial-gradient(120% 90% at 50% 50%,#ff3c5000 45%,#ff2e4557);animation:lifeFlashPulse .5s cubic-bezier(.1,.8,.3,1) both}.hand-section{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding-bottom:clamp(8px,2vh,20px)}.you-row{--loss-rise: -40px;display:flex;align-items:center;gap:var(--space-3);padding:6px 14px 6px 6px;border-radius:var(--radius-pill);border:1.5px solid transparent;transition:border-color .2s ease,background .2s ease}.you-row--hit{animation:seatHit .5s ease .5s both}.you-row--active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent)}.you-row--next{border-color:var(--hairline)}.you-row__avatar{position:relative;width:34px;height:34px;flex-shrink:0}.you-row__avatar-clip{display:block;width:100%;height:100%;border-radius:50%;overflow:hidden}.you-row--active .you-row__avatar-clip{box-shadow:0 0 0 2px var(--accent)}.you-row__name{font-size:var(--text-sm);font-weight:700}.you-row__count{font-size:var(--text-xs);font-weight:600;color:var(--muted)}.you-row__turn{font-size:var(--text-xs);font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.you-row__turn--active{color:var(--accent)}.you-row__turn--next{color:var(--ink)}.hand{position:relative;width:100%;max-width:100%;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:none}.hand::-webkit-scrollbar{display:none}.hand--overflow{touch-action:pan-x;cursor:grab;-webkit-user-select:none;user-select:none;-webkit-mask-image:linear-gradient(90deg,transparent,#000 14px,#000 calc(100% - 14px),transparent);mask-image:linear-gradient(90deg,transparent,#000 14px,#000 calc(100% - 14px),transparent)}.hand__track{position:relative;height:100%}.hand__probe{position:absolute;visibility:hidden;pointer-events:none}.hand-slot{position:absolute;background:none;border:none;padding:0;margin:0;cursor:pointer;border-radius:var(--radius-md);transform:translate(var(--fan-x, 0px),var(--fan-y, 0px)) rotate(var(--fan-rotate, 0deg));transform-origin:bottom center;transition:transform .18s ease,filter .18s ease}.hand--scrolling .hand-slot{transition:none}.hand--dragging,.hand--dragging .hand-slot{cursor:grabbing}.hand--dragging .hand-slot:hover:not(:disabled){transform:translate(var(--fan-x, 0px),var(--fan-y, 0px)) rotate(var(--fan-rotate, 0deg))}.hand-slot:hover:not(:disabled){transform:translate(var(--fan-x, 0px),calc(var(--fan-y, 0px) - 22px)) rotate(var(--fan-rotate, 0deg)) scale(1.04);z-index:5}.hand-slot--drawn{animation:handDeal .5s cubic-bezier(.16,1,.3,1) both;z-index:6}.hand-slot:disabled{cursor:not-allowed}.hand--idle .hand-slot .card-face{filter:saturate(.7)}.hand-slot--unplayable .card-face{filter:saturate(.45) brightness(.9)}@media (max-width: 820px),(max-height: 900px){.app{padding:8px 12px 16px}.table-viewport{flex:1;display:flex;flex-direction:column;min-height:0}.table{--card-scale: .84;flex:1;min-height:0;justify-content:space-between;gap:clamp(4px,1.6vh,14px)}.table__middle{min-height:0;flex:0 1 auto;gap:clamp(10px,3.5vw,40px)}.message-region{min-height:clamp(22px,3.5vh,38px)}.table__tagline{display:none}.table__logo{width:38px;height:38px}.table__wordmark{font-size:17px;white-space:nowrap}.opponents .seat{width:clamp(62px,20vw,96px);gap:4px;margin-top:0!important}.seat--active{transform:none}.seat__avatar-wrap{width:clamp(38px,11vw,52px);height:clamp(38px,11vw,52px)}.seat__name{font-size:var(--text-xs);max-width:72px}.lives{gap:0;--pip-gap: -3px}.lives__heart{width:clamp(12px,3.4vw,16px);height:clamp(12px,3.4vw,16px);margin-left:-3px}.lives__heart:first-child{margin-left:0}.seat__cards{height:20px;padding-left:5px}.seat__card-back{width:clamp(11px,3.2vw,14px);height:clamp(16px,4.6vw,21px);margin-left:-5px}.seat__cardcount{font-size:11px}.seat__flag{font-size:8px;padding:1px 5px;top:-7px}.opponents .seat{padding-top:18px;--loss-rise: -56px}.opponents{gap:clamp(4px,2vw,14px)}.flow-chevron{margin-top:clamp(12px,3vh,22px);font-size:15px}.flow-dir{padding:5px 9px}.you-row{flex-wrap:wrap;justify-content:center;gap:4px 10px;padding:4px 12px 4px 4px}.hand-section{padding-bottom:clamp(18px,4vh,32px)}}@media (max-height: 850px){.table{--card-scale: .76}}@media (max-height: 720px){.table{--card-scale: .64}}@media (max-height: 610px){.table{--card-scale: .54}}@media (max-width: 560px){.app{padding:8px 10px 16px}.table__wordmark,.table__tagline{display:none}.flow-dir{padding:6px;font-size:0;gap:0}.flow-dir .icon{width:15px;height:15px}}@media (max-width: 380px){.opponents .seat{width:clamp(58px,27vw,72px)}.seat__cards{display:none}.opponents{gap:2px}.lives{--pip-gap: -4px}.lives__heart{margin-left:-4px}}.rules-eyebrow{margin:0;font-size:var(--text-xs);font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.rules-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;flex-shrink:0;border:none;border-radius:var(--radius-md);background:color-mix(in srgb,var(--ink) 7%,var(--surface));color:var(--ink);cursor:pointer}.rules-icon-btn:hover{background:color-mix(in srgb,var(--ink) 12%,var(--surface))}.rules-icon-btn .icon{width:18px;height:18px}.app-topbar__actions{display:flex;align-items:center;gap:var(--space-2)}.rules-btn{display:inline-flex;align-items:center;gap:6px;height:38px;padding:0 14px;border-radius:var(--radius-pill);border:1px solid var(--hairline);background:var(--surface);color:var(--ink);font-family:var(--font-ui);font-size:var(--text-sm);font-weight:700;cursor:pointer;transition:border-color .12s ease,color .12s ease,background .12s ease}.rules-btn:hover{border-color:var(--ink)}.rules-btn--on{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,var(--surface))}.rules-btn .icon{width:17px;height:17px}.home__rules{display:flex;align-items:center;gap:14px;width:100%;min-height:64px;padding:12px 16px;border-radius:var(--radius-lg);border:1px solid var(--hairline);background:var(--surface);color:var(--ink);font-family:var(--font-ui);text-align:left;cursor:pointer;transition:border-color .12s ease}.home__rules:hover{border-color:var(--accent)}.home__rules-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;flex-shrink:0;border-radius:10px;background:color-mix(in srgb,var(--accent) 14%,var(--surface));color:var(--accent)}.home__rules-icon .icon{width:22px;height:22px}.home__rules-copy{display:flex;flex-direction:column;gap:2px;flex:1}.home__rules-title{font-size:var(--text-base);font-weight:700}.home__rules-sub{font-size:13px;color:var(--muted)}.home__rules-chevron{width:18px;height:18px;color:var(--muted)}.rules-page{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;overflow-y:auto;overscroll-behavior:contain;background:var(--table);background-color:var(--surface);color:var(--ink);animation:scrimIn .2s ease both}.rules-page__bar{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:12px max(16px,calc((100% - 1040px)/2));border-bottom:1px solid var(--hairline);background:color-mix(in srgb,var(--surface) 88%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.rules-page__back{min-height:44px;border-color:var(--hairline)}.rules-page__back .icon{width:16px;height:16px}.rules-page__brand{font-family:var(--font-display);font-weight:900;font-size:var(--text-lg);letter-spacing:.04em}.rules-page__body{max-width:1040px;margin:0 auto;padding:56px 16px 80px;display:flex;flex-direction:column;gap:64px;box-sizing:content-box}.rules-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:48px}.rules-hero__copy{display:flex;flex-direction:column;gap:16px;max-width:600px}.rules-hero__title{margin:0;font-family:var(--font-display);font-weight:900;font-size:clamp(2.25rem,5.5vw,4rem);line-height:.98;letter-spacing:-.03em}.rules-hero__lede{margin:0;font-size:var(--text-lg);line-height:1.55;color:var(--muted)}.rules-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:340px;flex-shrink:0;margin:0}.rules-fact{display:flex;flex-direction:column;gap:4px;padding:16px 18px;border-radius:var(--radius-lg);border:1px solid var(--hairline);background:var(--surface)}.rules-fact__value{font-family:var(--font-display);font-weight:900;font-size:30px;line-height:1}.rules-fact__value--life{color:var(--life)}.rules-fact dd{margin:0;font-size:13px;color:var(--muted)}.rules-section{display:flex;flex-direction:column;gap:24px}.rules-section__head{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:8px 14px}.rules-section__title{display:flex;align-items:baseline;gap:14px;margin:0;font-family:var(--font-display);font-weight:800;font-size:var(--text-2xl);letter-spacing:-.02em}.rules-section__index{font-size:15px;color:var(--accent)}.rules-section__aside{font-size:15px;color:var(--muted)}.rules-grid{display:grid;gap:16px}.rules-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.rules-grid--wilds{grid-template-columns:repeat(5,minmax(0,1fr))}.rules-tile{display:flex;flex-direction:column;gap:10px;padding:24px;border-radius:var(--radius-xl);border:1px solid var(--hairline);background:var(--surface)}.rules-tile__art{display:flex;align-items:center;justify-content:center;gap:14px;height:150px;margin-bottom:6px;border-radius:14px;background:color-mix(in srgb,var(--ink) 4%,var(--surface))}.rules-tile__title{margin:0;font-size:var(--text-lg);font-weight:700}.rules-tile__text{margin:0;font-size:15px;line-height:1.5;color:var(--muted)}.rules-page .card-face{width:92px}.rules-page .card-face--sm{width:60px}.rules-fan .card-face:nth-child(1){transform:rotate(-8deg) translateY(6px);margin-right:-42px}.rules-fan .card-face:nth-child(2){position:relative;z-index:1;transform:translateY(-12px);box-shadow:0 0 0 3px var(--accent),var(--card-shadow)}.rules-fan .card-face:nth-child(3){transform:rotate(8deg) translateY(6px);margin-left:-42px}.rules-total{display:inline-flex;align-items:baseline;gap:8px;padding:8px 16px;border-radius:var(--radius-pill);border:1px solid var(--hairline);background:var(--surface)}.rules-total--warn{border:1.5px solid var(--warn)}.rules-total__label{font-size:var(--text-xs);font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.rules-total__value{font-family:var(--font-display);font-weight:900;font-size:26px}.rules-total--warn .rules-total__value{color:color-mix(in srgb,var(--warn) 70%,var(--ink))}.rules-op{font-family:var(--font-display);font-weight:800;font-size:22px;color:var(--muted)}.rules-result{font-family:var(--font-display);font-weight:900;font-size:40px}.rules-nope{display:flex;flex-direction:column;align-items:center;gap:8px}.rules-nope__card{opacity:.45}.rules-nope__label{display:inline-flex;align-items:center;gap:4px;font-size:var(--text-xs);font-weight:700;color:var(--bust)}.rules-nope__label .icon{width:13px;height:13px}.rules-tag{align-self:flex-start;padding:5px 10px;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--bust) 12%,var(--surface));color:var(--bust);font-size:var(--text-xs);font-weight:700;letter-spacing:.1em;text-transform:uppercase}.rules-banner{display:flex;align-items:center;gap:28px;padding:24px 28px;border-radius:var(--radius-xl);background:color-mix(in srgb,var(--ink) 92%,var(--surface));color:color-mix(in srgb,var(--surface) 80%,var(--ink))}.rules-banner p{margin:0;font-size:var(--text-base);line-height:1.5}.rules-banner strong{color:var(--surface)}.rules-banner__hearts{display:flex;gap:6px;flex-shrink:0}.rules-heart{width:26px;height:26px;color:var(--life)}.rules-heart--spent{color:color-mix(in srgb,var(--surface) 45%,var(--ink))}.rules-wild{gap:12px;padding:20px}.rules-wild .rules-tile__title{font-size:var(--text-base)}.rules-wild .rules-tile__text{font-size:var(--text-sm)}.rules-wild--bomb{border-color:color-mix(in srgb,var(--bust) 45%,var(--hairline))}.rules-wild__count{margin-top:auto;font-size:var(--text-xs);color:var(--muted)}.rules-deck{gap:20px;padding:28px 32px}.rules-deck__row{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;margin:0;padding:0;list-style:none}.rules-deck__item{display:flex;flex-direction:column;align-items:center;gap:10px}.rules-deck__count{font-family:var(--font-display);font-weight:800}@media (max-width: 900px){.rules-hero{flex-direction:column;align-items:stretch}.rules-facts{width:auto;grid-template-columns:repeat(4,minmax(0,1fr))}.rules-grid--3{grid-template-columns:minmax(0,1fr)}.rules-grid--wilds{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 560px){.rules-page__body{padding-top:32px;gap:48px}.rules-page__brand{font-size:var(--text-base)}.rules-facts,.rules-grid--wilds{grid-template-columns:repeat(2,minmax(0,1fr))}.rules-tile{padding:18px}.rules-banner{flex-direction:column;align-items:flex-start;gap:14px;padding:20px}.rules-deck{padding:20px}.rules-deck__row{justify-content:flex-start}.rules-page .card-face--sm{width:52px}.rules-btn{width:38px;padding:0;justify-content:center}.rules-btn__label{display:none}}.rules-drawer-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80}.rules-drawer-scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:color-mix(in srgb,#000 35%,transparent);animation:scrimIn .2s ease both}.rules-drawer{position:absolute;top:12px;right:12px;bottom:12px;width:min(420px,calc(100% - 24px));display:flex;flex-direction:column;overflow:hidden;border-radius:var(--radius-xl);background:var(--surface);color:var(--ink);box-shadow:var(--shadow-lg);animation:rulesDrawerIn .24s cubic-bezier(.2,.8,.2,1) both}@keyframes rulesDrawerIn{0%{transform:translate(24px);opacity:0}}.rules-drawer__handle{display:none}.rules-drawer__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:18px 16px 14px 24px;border-bottom:1px solid var(--hairline)}.rules-drawer__title{margin:2px 0 0;font-family:var(--font-display);font-weight:800;font-size:var(--text-xl)}.rules-tabs{display:none;gap:6px;padding:0 20px 14px}.rules-tab{flex:1;height:40px;border-radius:var(--radius-pill);border:1px solid var(--hairline);background:var(--surface);color:var(--ink);font-family:var(--font-ui);font-size:var(--text-sm);font-weight:700;cursor:pointer}.rules-tab--on{border-color:var(--ink);background:var(--ink);color:var(--surface)}.rules-drawer__body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:20px 24px 24px;display:flex;flex-direction:column;gap:24px}.rules-drawer__panel{display:flex;flex-direction:column;gap:12px}.rules-drawer__label{margin:0;font-size:var(--text-xs);font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.rules-drawer__label--bust{color:var(--bust)}.rules-steps{display:flex;flex-direction:column;gap:10px;margin:0 0 12px;padding:0;list-style:none;counter-reset:step}.rules-steps li{display:flex;align-items:flex-start;gap:12px;font-size:15px;line-height:1.45;counter-increment:step}.rules-steps li:before{content:counter(step);display:flex;align-items:center;justify-content:center;width:24px;height:24px;flex-shrink:0;border-radius:50%;background:color-mix(in srgb,var(--accent) 14%,var(--surface));color:var(--accent);font-size:13px;font-weight:800}.rules-lose{display:flex;flex-direction:column;gap:8px;padding:16px;border-radius:14px;background:color-mix(in srgb,var(--bust) 8%,var(--surface))}.rules-lose p{margin:0;font-size:var(--text-sm);line-height:1.45}.rules-lose__coda{color:var(--muted)}.rules-wild-list{display:flex;flex-direction:column;gap:12px;margin:0;padding:0;list-style:none}.rules-wild-list__item{display:flex;align-items:center;gap:14px}.rules-wild-list__item .card-face{width:44px}.rules-wild-list__name{display:block;font-size:15px;font-weight:700}.rules-wild-list__text{display:block;font-size:13px;line-height:1.4;color:var(--muted)}.rules-drawer__full{display:flex;align-items:center;justify-content:center;gap:8px;min-height:54px;border:none;border-top:1px solid var(--hairline);background:var(--surface);color:var(--accent);font-family:var(--font-ui);font-size:15px;font-weight:700;cursor:pointer}.rules-drawer__full:hover{background:color-mix(in srgb,var(--accent) 8%,var(--surface))}.rules-drawer__full .icon{width:16px;height:16px}@media (max-width: 560px){.rules-drawer{top:auto;left:0;right:0;bottom:0;width:auto;max-height:82vh;height:640px;border-radius:22px 22px 0 0;animation-name:rulesSheetIn}@keyframes rulesSheetIn{0%{transform:translateY(40px);opacity:0}}.rules-drawer__handle{display:block;width:40px;height:5px;margin:8px auto 0;border-radius:var(--radius-pill);background:var(--hairline)}.rules-drawer__head{padding:8px 12px 12px 20px;border-bottom:none}.rules-drawer__head .rules-eyebrow{display:none}.rules-tabs{display:flex}.rules-drawer__body{padding:4px 20px 16px}.rules-drawer__panel--off,.rules-drawer__label--wide-only{display:none}}@media (prefers-reduced-motion: reduce){.rules-page,.rules-drawer,.rules-drawer-scrim{animation:none}}
