@font-face{font-family:Limelight;src:url(/fonts/limelight.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Josefin Sans;src:url(/fonts/josefin-var.woff2)format("woff2-variations");font-weight:100 700;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/inter-var.woff2)format("woff2-variations");font-weight:100 900;font-display:swap}:root{--bg-0:#06070a;--lacquer:#0b0d12;--lacquer-2:#12151c;--panel:#10131ab8;--panel-solid:#12151c;--ink:#eef2f7;--muted:#8e97a6;--metal-rgb:185, 196, 210;--gold:#b9c4d2;--gold-2:#fff;--gold-3:#6b7787;--gold-glow:rgba(var(--metal-rgb), .35);--line:rgba(var(--metal-rgb), .18);--line-strong:rgba(var(--metal-rgb), .44);--green-felt:#0d4a37;--green-felt-2:#052a1e;--primary:#b9c4d2;--primary-2:#e8eef5;--on-primary:#0b0e13;--oxblood:#8f2d3c;--jade:#35a37f;--cyan:#6fb3c9;--pink:#c96f86;--danger:#c0505c;--radius:4px;--shadow:0 24px 60px #000000b8;--glass:blur(16px) saturate(1.05);--font-display:"Limelight", "Josefin Sans", Georgia, serif;--font-caps:"Josefin Sans", system-ui, sans-serif;--font-body:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}html{overflow-x:hidden}body{font-family:var(--font-body);color:var(--ink);background:var(--bg-0);-webkit-font-smoothing:antialiased;overflow-x:hidden}h1,h2,h3{font-family:var(--font-caps);letter-spacing:.14em;text-transform:uppercase;margin:0 0 .4em;font-weight:400}.bg{z-index:-1;background:radial-gradient(120% 90% at 50% -20%, #171b24 0%, var(--lacquer) 45%, var(--bg-0) 100%);position:fixed;inset:0;overflow:hidden}.bg-rays{background:repeating-conic-gradient(from 0deg, rgba(var(--metal-rgb), .075) 0deg 2.6deg, transparent 2.6deg 9deg);will-change:transform;width:150vmax;height:150vmax;animation:220s linear infinite rays;position:absolute;top:-42vmax;left:50%;transform:translate(-50%);-webkit-mask-image:radial-gradient(closest-side,#000 12%,#0000008c 42%,#0000 72%);mask-image:radial-gradient(closest-side,#000 12%,#0000008c 42%,#0000 72%)}@keyframes rays{to{transform:translate(-50%)rotate(360deg)}}.bg-lattice{background-image:repeating-linear-gradient(45deg, rgba(var(--metal-rgb), .05) 0 1px, transparent 1px 46px), repeating-linear-gradient(-45deg, rgba(var(--metal-rgb), .05) 0 1px, transparent 1px 46px);position:absolute;inset:0;-webkit-mask-image:radial-gradient(90% 70% at 50% 30%,#000,#0000 85%);mask-image:radial-gradient(90% 70% at 50% 30%,#000,#0000 85%)}.bg-suits{position:absolute;inset:0}.floater{color:rgba(var(--metal-rgb), .42);text-shadow:0 0 40px var(--gold-glow);will-change:transform;-webkit-user-select:none;user-select:none;line-height:1;animation-name:bob;animation-timing-function:ease-in-out;animation-iteration-count:infinite;position:absolute}.floater.red{color:#8f2d3c99}@keyframes bob{0%,to{transform:translateY(0)rotate(-6deg)}50%{transform:translateY(-36px)rotate(7deg)}}.bg-vignette{pointer-events:none;background:radial-gradient(125% 125% at 50% 38%,#0000 46%,#000000c7 100%);position:absolute;inset:0}@media (prefers-reduced-motion:reduce){.bg-rays,.floater{animation:none!important}}.app{flex-direction:column;min-height:100%;display:flex}.app-main{flex:1;width:100%;max-width:1080px;margin:0 auto;padding:26px 18px 56px}.app-main-table{max-width:1320px;padding:12px 14px 18px}.boot{height:100vh;color:var(--muted);letter-spacing:.04em;place-items:center;display:grid}.center{text-align:center}.muted{color:var(--muted)}.panel,.auth-card,.topbar,.seat-badge,.team-score,.phase-pill,.tabs,.trump-reveal-box{background:var(--panel);-webkit-backdrop-filter:var(--glass);border:1px solid var(--line)}.panel{border-radius:var(--radius);box-shadow:var(--shadow);padding:28px;animation:.5s cubic-bezier(.22,1,.36,1) both rise-in;position:relative}.panel:before{content:"";background:linear-gradient(90deg, transparent, var(--gold), transparent);height:1px;position:absolute;inset:0 0 auto}@keyframes rise-in{0%{opacity:0;transform:translateY(16px)scale(.99)}to{opacity:1;transform:none}}.topbar{z-index:30;border-top:none;border-left:none;border-right:none;justify-content:space-between;align-items:center;padding:13px 22px;display:flex;position:sticky;top:0}.topbar-left,.topbar-right{align-items:center;gap:11px;display:flex}.logo{font-family:var(--font-display);letter-spacing:.1em;text-transform:uppercase;background:linear-gradient(100deg, var(--gold-3), var(--gold), var(--gold-2), var(--gold), var(--gold-3));color:#0000;background-size:250%;-webkit-background-clip:text;background-clip:text;padding-left:.1em;font-size:1.32rem;font-weight:400;animation:9s linear infinite shimmer}@keyframes shimmer{to{background-position:250%}}.topbar-user{font-family:var(--font-caps);letter-spacing:.16em;text-transform:uppercase;font-size:.78rem;font-weight:500}.conn-dot{width:7px;height:7px;transform:rotate(45deg)}.conn-dot.on{background:var(--jade);box-shadow:0 0 10px var(--jade);animation:2.4s ease-in-out infinite blip}.conn-dot.off{background:var(--oxblood)}@keyframes blip{50%{opacity:.4}}.tabs{border-radius:var(--radius);width:fit-content;max-width:100%;box-shadow:var(--shadow);flex-wrap:wrap;gap:0;margin:0 auto 30px;padding:5px;display:flex}.tab{color:var(--muted);cursor:pointer;font-family:var(--font-caps);letter-spacing:.18em;text-transform:uppercase;background:0 0;border:none;border-radius:2px;align-items:center;gap:8px;padding:11px 22px;font-size:.76rem;font-weight:500;transition:color .2s,background .2s,transform .1s;display:inline-flex;position:relative}.tab+.tab:before{content:"";background:var(--line);width:1px;height:56%;position:absolute;top:22%;left:0}.tab.on+.tab:before,.tab:hover+.tab:before{opacity:0}.tab-ic{opacity:.55;font-size:.9rem}.tab-short{display:none}.tab.on .tab-ic{opacity:1}.tab:hover:not(.on){color:var(--ink);background:rgba(var(--metal-rgb), .08)}.tab.on{color:var(--on-primary);background:linear-gradient(150deg, var(--gold-3), var(--gold) 45%, var(--gold-2) 55%, var(--gold-3));font-weight:600;box-shadow:0 6px 20px #00000080}.tab:active{transform:scale(.97)}.tab:focus-visible{outline:2px solid var(--gold-2);outline-offset:-2px}.foil{background:linear-gradient(100deg, var(--gold-3), var(--gold), var(--gold-2), var(--gold), var(--gold-3));color:#0000;background-size:250%;-webkit-background-clip:text;background-clip:text;animation:9s linear infinite shimmer}.deco-frame{border:1px solid var(--line-strong);background:var(--panel);-webkit-backdrop-filter:var(--glass);position:relative}.deco-frame:before{content:"";border:1px solid rgba(var(--metal-rgb), .22);pointer-events:none;position:absolute;inset:5px}.deco-frame:after{content:"";pointer-events:none;background:linear-gradient(var(--gold), var(--gold)) 0 0 / 1px 18px no-repeat, linear-gradient(var(--gold), var(--gold)) 0 0 / 18px 1px no-repeat, linear-gradient(var(--gold), var(--gold)) 100% 0 / 1px 18px no-repeat, linear-gradient(var(--gold), var(--gold)) 100% 0 / 18px 1px no-repeat, linear-gradient(var(--gold), var(--gold)) 0 100% / 1px 18px no-repeat, linear-gradient(var(--gold), var(--gold)) 0 100% / 18px 1px no-repeat, linear-gradient(var(--gold), var(--gold)) 100% 100% / 1px 18px no-repeat, linear-gradient(var(--gold), var(--gold)) 100% 100% / 18px 1px no-repeat;opacity:.85;position:absolute;inset:0}.deco-rule{color:var(--gold);letter-spacing:.28em;text-transform:uppercase;font-size:.7rem;font-family:var(--font-caps);align-items:center;gap:12px;display:flex}.deco-rule:before,.deco-rule:after{content:"";background:linear-gradient(90deg, transparent, var(--line-strong), transparent);flex:1;height:1px}.deco-band{background:repeating-linear-gradient(135deg, var(--gold) 0 1px, transparent 1px 8px);opacity:.5;height:8px}.caps{font-family:var(--font-caps);text-transform:uppercase;letter-spacing:.22em;font-weight:500}.btn{border:1px solid var(--line-strong);background:rgba(var(--metal-rgb), .07);color:var(--ink);border-radius:var(--radius);cursor:pointer;font-family:var(--font-caps);text-transform:uppercase;letter-spacing:.18em;padding:12px 20px;font-size:.84rem;font-weight:500;transition:transform 80ms,filter .2s,background .2s,box-shadow .2s,border-color .2s}.btn:hover:not(:disabled){background:rgba(var(--metal-rgb), .16);border-color:var(--gold);transform:translateY(-1px)}.btn:active:not(:disabled){transform:translateY(1px)scale(.99)}.btn:disabled{opacity:.35;cursor:not-allowed}.btn:focus-visible{outline:2px solid var(--gold-2);outline-offset:2px}.btn-primary{background:linear-gradient(150deg, var(--gold-3) 0%, var(--gold) 38%, var(--gold-2) 52%, var(--gold) 66%, var(--gold-3) 100%);border-color:var(--gold-2);color:var(--on-primary);font-weight:600;position:relative;overflow:hidden;box-shadow:0 10px 30px #0000008c,inset 0 1px #ffffff73}.btn-primary:hover:not(:disabled){filter:brightness(1.08);background:linear-gradient(150deg, var(--gold-3) 0%, var(--gold) 38%, var(--gold-2) 52%, var(--gold) 66%, var(--gold-3) 100%)}.btn-primary:after{content:"";background:linear-gradient(100deg,#0000,#ffffff8c,#0000);width:60%;height:100%;animation:5.5s ease-in-out infinite sheen;position:absolute;top:0;left:-120%;transform:skew(-18deg)}@keyframes sheen{0%,60%{left:-120%}to{left:160%}}.btn-ghost{border-color:var(--line);background:0 0}.btn-danger-ghost{color:#d98d96;background:0 0;border-color:#b4434f73}.btn-sm{letter-spacing:.14em;padding:8px 14px;font-size:.74rem}.btn-lg{padding:15px 30px;font-size:.92rem}.btn-block{width:100%}.mode-hero{border-radius:var(--radius);background:var(--panel);max-width:880px;-webkit-backdrop-filter:var(--glass);border:1px solid var(--line-strong);box-shadow:var(--shadow);grid-template-columns:1.05fr .95fr;align-items:center;gap:18px;margin:26px auto;padding:42px 46px;animation:.5s cubic-bezier(.22,1,.36,1) both rise-in;display:grid;position:relative;overflow:hidden}.mode-hero:before{content:"";border:1px solid rgba(var(--metal-rgb), .2);pointer-events:none;position:absolute;inset:6px}.mode-hero:after{content:"";background:radial-gradient(closest-side, rgba(var(--metal-rgb), .16), transparent);pointer-events:none;width:60%;height:95%;position:absolute;top:-40%;right:-18%}.mode-head{align-items:center;gap:11px;margin-bottom:12px;display:flex}.mode-glyph{isolation:isolate;width:44px;height:44px;color:var(--on-primary);place-items:center;margin-right:6px;font-size:1.25rem;line-height:1;display:grid;position:relative}.mode-glyph:before{content:"";z-index:-1;background:linear-gradient(150deg, var(--gold-3), var(--gold) 45%, var(--gold-2) 55%, var(--gold-3));border-radius:3px;position:absolute;inset:4px;transform:rotate(45deg);box-shadow:0 8px 22px #00000080,inset 0 1px #fff6}.mode-kicker{font-family:var(--font-caps);letter-spacing:.3em;text-transform:uppercase;color:var(--gold);font-size:.68rem;font-weight:500}.mode-title{font-family:var(--font-display);letter-spacing:.05em;margin:0 0 12px;font-size:clamp(1.7rem,5.2vw,2.4rem);font-weight:400;line-height:1.15}.mode-desc{color:var(--muted);max-width:410px;margin:0 0 16px;line-height:1.65}.mode-chips{flex-wrap:wrap;gap:8px;margin-bottom:22px;display:flex}.chip{font-family:var(--font-caps);letter-spacing:.16em;text-transform:uppercase;color:var(--gold-2);background:rgba(var(--metal-rgb), .08);border:1px solid var(--line);border-radius:2px;padding:6px 13px;font-size:.66rem;font-weight:500}.mode-cta{flex-direction:column;align-items:flex-start;gap:12px;display:flex}.cta-divider{font-family:var(--font-caps);letter-spacing:.24em;text-transform:uppercase;color:var(--muted);align-items:center;gap:10px;width:100%;max-width:280px;font-size:.64rem;display:flex}.cta-divider:before,.cta-divider:after{content:"";background:var(--line-strong);flex:1;height:1px}.mode-hero-art{z-index:1;place-items:center;display:grid}.deco-fan{width:calc(var(--deco-w,86px) * 2.6);height:calc(var(--deco-w,86px) * 1.95);filter:drop-shadow(0 24px 30px #00000073);position:relative}.deco-fan-slot{margin-left:calc(var(--deco-w,86px) / -2);transform-origin:50% 150%;transform:rotate(var(--rot,0deg)) translateY(var(--ty,0px));transition:transform .35s cubic-bezier(.22,1,.36,1);position:absolute;bottom:4%;left:50%}.deco-fan-slot .card{--card-w:var(--deco-w,86px)}.mode-hero:hover .deco-fan-slot{transform:rotate(calc(var(--rot,0deg) * 1.25)) translateY(calc(var(--ty,0px) * 1.15))}.auth-wrap{place-items:center;min-height:100vh;padding:24px 20px 48px;display:grid}.auth-card{border-radius:var(--radius);width:100%;max-width:460px;box-shadow:var(--shadow);text-align:center;padding:0 0 30px;animation:.55s cubic-bezier(.22,1,.36,1) both rise-in;position:relative;overflow:hidden}.auth-card-band{background:repeating-linear-gradient(135deg, var(--gold) 0 1px, transparent 1px 9px);opacity:.55;height:10px}.auth-inner{padding:26px 34px 0}.auth-crest{place-items:center;margin-bottom:6px;display:grid;position:relative}.auth-crest:before{content:"";background:repeating-conic-gradient(from 0deg, rgba(var(--metal-rgb), .16) 0deg 2deg, transparent 2deg 8deg);pointer-events:none;width:260px;height:260px;position:absolute;top:-70px;-webkit-mask-image:radial-gradient(closest-side,#000 5%,#0000 68%);mask-image:radial-gradient(closest-side,#000 5%,#0000 68%)}.auth-fan{place-items:center;margin:2px 0 12px;display:grid;position:relative}.brand-mark{letter-spacing:.7em;color:var(--gold);opacity:.9;padding-left:.7em;font-size:1.05rem;position:relative}.brand-title{font-family:var(--font-display);letter-spacing:.07em;text-transform:uppercase;background:linear-gradient(100deg, var(--gold-3), var(--gold), var(--gold-2), var(--gold), var(--gold-3));color:#0000;background-size:250%;-webkit-background-clip:text;background-clip:text;margin:12px 0 8px;padding-left:.07em;font-size:clamp(2.6rem,11vw,3.7rem);line-height:1;animation:9s linear infinite shimmer;position:relative}.brand-sub{color:var(--muted);font-family:var(--font-caps);letter-spacing:clamp(.12em,.7vw,.24em);text-transform:uppercase;text-wrap:balance;margin-bottom:22px;font-size:clamp(.6rem,2.9vw,.74rem);position:relative}.auth-tabs{border:1px solid var(--line);border-radius:var(--radius);background:#00000059;margin-bottom:20px;padding:4px;display:flex}.auth-tab{color:var(--muted);cursor:pointer;font-family:var(--font-caps);letter-spacing:.2em;text-transform:uppercase;background:0 0;border:none;border-radius:2px;flex:1;padding:11px;font-size:.76rem;font-weight:500;transition:all .25s}.auth-tab:hover:not(.on){color:var(--ink)}.auth-tab.on{background:linear-gradient(150deg, var(--gold-3), var(--gold) 45%, var(--gold-2) 55%, var(--gold-3));color:var(--on-primary);font-weight:600;box-shadow:0 4px 14px #00000080}.auth-form{text-align:left;flex-direction:column;gap:15px;display:flex}.auth-form label{font-family:var(--font-caps);letter-spacing:.22em;text-transform:uppercase;color:var(--gold);opacity:.85;flex-direction:column;gap:7px;font-size:.68rem;display:flex}.auth-form input,.code-input{border:1px solid var(--line);border-bottom:2px solid var(--line-strong);border-radius:var(--radius);color:var(--ink);font-family:var(--font-body);background:#00000057;padding:13px 14px;font-size:.96rem;transition:border-color .2s,box-shadow .2s,background .2s}.auth-form input::placeholder{color:#9d947f99}.auth-form input:focus,.code-input:focus{border-color:var(--gold);border-bottom-color:var(--gold-2);box-shadow:0 4px 18px -6px var(--gold-glow);background:#00000080;outline:none}.auth-aux{justify-content:flex-end;margin-top:-6px;display:flex}.auth-link{cursor:pointer;color:var(--muted);font-family:var(--font-caps);letter-spacing:.16em;text-transform:uppercase;background:0 0;border:none;border-bottom:1px solid #0000;padding:0;font-size:.7rem;transition:color .2s,border-color .2s}.auth-link:hover{color:var(--gold-2);border-bottom-color:var(--gold)}.auth-or{color:var(--gold);font-family:var(--font-caps);letter-spacing:.3em;text-transform:uppercase;opacity:.75;align-items:center;gap:14px;margin:20px 0;font-size:.64rem;display:flex}.auth-or:before,.auth-or:after{content:"";background:linear-gradient(90deg, transparent, var(--line-strong), transparent);flex:1;height:1px}.auth-or span{align-items:center;gap:8px;display:inline-flex}.btn-google{border-radius:var(--radius);color:#1f1b16;width:100%;font-family:var(--font-caps);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;background:#f4ecdd;border:1px solid #f4ecdd80;justify-content:center;align-items:center;gap:12px;padding:13px 20px;font-size:.8rem;font-weight:600;transition:transform 80ms,box-shadow .2s,background .2s;display:flex}.btn-google:hover:not(:disabled){background:#fff;transform:translateY(-1px);box-shadow:0 10px 26px #00000073}.btn-google:active:not(:disabled){transform:translateY(1px)}.btn-google:disabled{opacity:.45;cursor:not-allowed}.btn-google svg{flex:none;width:18px;height:18px}.auth-error{border:1px solid #b4434f80;border-left:3px solid var(--danger);color:#e2a3aa;border-radius:var(--radius);background:#b4434f29;padding:11px 13px;font-size:.86rem;animation:.4s shake}.auth-note{border:1px solid #2e8b6b73;border-left:3px solid var(--jade);color:#9fd3bf;border-radius:var(--radius);text-align:left;background:#2e8b6b24;padding:11px 13px;font-size:.86rem;line-height:1.5}.auth-back{margin-top:18px}.auth-legal{color:var(--muted);opacity:.75;margin-top:18px;font-size:.72rem;line-height:1.6}@keyframes shake{25%{transform:translate(-5px)}75%{transform:translate(5px)}}.avatar{font-family:var(--font-caps);letter-spacing:.06em;color:var(--ink);border-radius:50%;flex:none;place-items:center;font-weight:600;display:grid;box-shadow:inset 0 0 0 1px #ffffff8c,0 4px 12px #00000073}.tag{text-transform:uppercase;vertical-align:middle;border-radius:6px;margin-left:6px;padding:2px 6px;font-size:.6rem;font-weight:700}.tag-you{background:rgba(var(--metal-rgb), .28);color:var(--gold-2)}.tag-host{color:var(--gold);background:#c4d1e638}.tag-bot{color:#b6dcea;background:#6fb3c938}.lobby{max-width:780px;margin:0 auto}.lobby-hero{text-align:center;margin-bottom:28px}.lobby-kicker{letter-spacing:2.5px;text-transform:uppercase;color:var(--gold);margin-bottom:12px;font-size:.72rem;font-weight:800}.room-code{cursor:pointer;background:0 0;border:none;gap:7px;padding:0;display:inline-flex}.code-ch{width:44px;height:54px;color:var(--gold);border:1px solid var(--line-strong);background:#00000052;border-radius:12px;place-items:center;font-size:1.55rem;font-weight:800;transition:transform .12s,border-color .2s;display:grid;box-shadow:inset 0 1px #ffffff0f,0 6px 16px #00000059}.room-code:hover .code-ch{border-color:var(--gold);transform:translateY(-2px)}.lobby-status{color:var(--muted);margin-top:12px;font-size:.88rem;font-weight:600}.lobby-progress{justify-content:center;gap:6px;margin-top:8px;display:flex}.lp-dot{background:#ffffff1f;border-radius:50%;width:8px;height:8px;transition:background .3s,box-shadow .3s}.lp-dot.on{background:#34d399;box-shadow:0 0 8px #34d399}.lobby-teams{grid-template-columns:1fr auto 1fr;align-items:start;gap:14px;display:grid}.lobby-vs{letter-spacing:1px;color:var(--muted);border:1px solid var(--line-strong);background:#ffffff0d;border-radius:50%;align-self:center;place-items:center;width:38px;height:38px;font-size:.8rem;font-weight:800;display:grid}.team-col{flex-direction:column;gap:14px;display:flex}.team-banner{text-transform:uppercase;letter-spacing:1px;border-radius:11px;align-items:center;gap:7px;padding:8px 13px;font-size:.76rem;font-weight:800;display:flex}.team-banner em{text-transform:none;letter-spacing:0;color:var(--muted);margin-left:auto;font-size:.72rem;font-style:normal;font-weight:600}.team-banner-a{color:var(--cyan);background:#6fb3c91a;border:1px solid #6fb3c952}.team-banner-b{color:var(--pink);background:#fb718514;border:1px solid #fb718547}.team-a{color:var(--cyan)}.team-b{color:var(--pink)}.seat-card{border:1px solid var(--line);background:#0000003d;border-radius:16px;align-items:center;min-height:84px;padding:16px 14px 14px;transition:transform .15s,border-color .2s,box-shadow .2s;display:flex;position:relative}.seat-card.filled{border-color:var(--line-strong)}.seat-card.you{border-color:var(--line-strong);box-shadow:0 0 0 1px rgba(var(--metal-rgb), .4), 0 0 22px var(--gold-glow)}.seat-card.empty{border-style:dashed;animation:3s ease-in-out infinite seat-breathe}@keyframes seat-breathe{50%{border-color:#ffffff52}}.seat-card:hover{transform:translateY(-2px)}.seat-no{letter-spacing:1px;text-transform:uppercase;color:var(--muted);background:var(--panel-solid);border:1px solid var(--line);border-radius:999px;padding:1px 8px;font-size:.6rem;font-weight:700;position:absolute;top:-9px;left:12px}.seat-occupant{align-items:center;gap:12px;display:flex}.seat-name{font-weight:600}.seat-tags{margin-top:3px}.seat-tags .tag{margin-left:0;margin-right:6px}.seat-actions{align-items:center;gap:10px;display:flex}.seat-empty-mark{color:var(--muted);opacity:.55;font-size:1.1rem}.lobby-controls{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;margin-top:28px;display:flex}.join-box{gap:8px;display:flex}.code-input{text-align:center;letter-spacing:5px;text-transform:uppercase;width:170px;font-weight:700}.ranked-layout{grid-template-columns:1.1fr .9fr;align-items:start;gap:18px;display:grid}.ranked-layout .mode-hero{grid-template-columns:1fr;max-width:none;margin:0;padding:32px 34px}.ranked-layout .mode-hero-art{margin-top:18px}.leaderboard h3{margin-bottom:14px}.lb-podium{grid-template-columns:repeat(3,1fr);align-items:end;gap:10px;margin-bottom:16px;display:grid}.lb-step{text-align:center;flex-direction:column;align-items:center;gap:5px;min-width:0;display:flex}.lb-medal{font-size:1.1rem}.lb-name{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.82rem;font-weight:700;overflow:hidden}.lb-wins{color:var(--muted);font-size:.72rem}.lb-wins i{font-style:normal}.lb-bar{border:1px solid var(--line-strong);border-bottom:none;border-radius:8px 8px 0 0;width:100%}.lb-rank-0 .lb-bar{background:linear-gradient(180deg, rgba(var(--metal-rgb), .35), rgba(var(--metal-rgb), .04));border-color:rgba(var(--metal-rgb), .5);height:58px}.lb-rank-1 .lb-bar{background:linear-gradient(#c8d2e647,#c8d2e608);height:40px}.lb-rank-2 .lb-bar{background:linear-gradient(#cd7f324d,#cd7f320a);border-color:#cd7f3273;height:28px}.lb-empty{visibility:hidden}.lb-table{border-collapse:collapse;width:100%;font-size:.92rem}.lb-table th,.lb-table td{text-align:left;border-bottom:1px solid var(--line);padding:9px 10px}.lb-table th{color:var(--muted);text-transform:uppercase;font-size:.76rem}.lb-table th:nth-child(n+3),.lb-table td:nth-child(n+3){text-align:right;font-variant-numeric:tabular-nums}.lb-table td.lb-cell-name{align-items:center;gap:8px;display:flex}.lb-table tr.lb-top td{font-weight:700}.leaderboard-page{max-width:760px;margin:0 auto}.lb-page-head{text-align:center;margin-bottom:18px}.lb-page-head h2{font-family:var(--font-display), Georgia, serif;letter-spacing:.06em;margin-bottom:6px;font-size:clamp(1.6rem,5vw,2.3rem)}.lb-mode-toggle{border-radius:var(--radius);border:1px solid var(--line);background:rgba(var(--metal-rgb), .06);gap:2px;margin-top:14px;padding:4px;display:inline-flex}.lb-mode{color:var(--muted);cursor:pointer;font-family:var(--font-caps);letter-spacing:.12em;text-transform:uppercase;background:0 0;border:none;border-radius:2px;padding:8px 20px;font-size:.8rem;font-weight:600;transition:color .2s,background .2s}.lb-mode:hover:not(.on){color:var(--ink)}.lb-mode.on{color:var(--on-primary);background:linear-gradient(150deg, var(--gold-3), var(--gold) 45%, var(--gold-2) 55%, var(--gold-3))}.card{--card-w:68px;width:var(--card-w);height:calc(var(--card-w) * 1.4);border-radius:calc(var(--card-w) * .13);-webkit-user-select:none;user-select:none;background:linear-gradient(150deg,#fff 0%,#f2f5fb 55%,#e6eaf3 100%);border:1px solid #c7cedd;flex:none;padding:0;position:relative;overflow:hidden;box-shadow:0 5px 13px #080e1c6b,inset 0 1px #ffffffe6,inset 0 0 0 1px #ffffff8c}.card-sm{--card-w:50px}.card-red{color:#d11f3c}.card-black{color:#18222f}.card-idx{z-index:2;flex-direction:column;align-items:center;font-weight:800;line-height:.86;display:flex;position:absolute}.card-idx b{font-size:calc(var(--card-w) * .2);letter-spacing:-.03em}.card-idx i{font-size:calc(var(--card-w) * .18);font-style:normal;font-weight:900}.card-idx.ten b{font-size:calc(var(--card-w) * .16);letter-spacing:-.08em}.card-idx.tl{top:6%;left:7%}.card-idx.br{bottom:6%;right:7%;transform:rotate(180deg)}.card-face{position:absolute;inset:0}.card-face .pip{font-size:calc(var(--card-w) * .23);line-height:1;position:absolute;transform:translate(-50%,-50%)}.card-face .pip.flip{transform:translate(-50%,-50%)rotate(180deg)}.card-face .pip.ace{font-size:calc(var(--card-w) * .62);filter:drop-shadow(0 2px 4px #00000029)}.court-face{border-radius:calc(var(--card-w) * .08);background:linear-gradient(160deg,#00000004,#00000012);border:1px solid;flex-direction:column;justify-content:space-between;align-items:center;display:flex;position:absolute;inset:11% 15%}.court-letter{font-size:calc(var(--card-w) * .6);letter-spacing:-.05em;font-weight:800;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.court-suit{font-size:calc(var(--card-w) * .22);padding:5% 0}.court-suit.flip{transform:rotate(180deg)}.card-back{background:radial-gradient(120% 90% at 30% 18%,#ffffff24,#0000 46%),repeating-linear-gradient(115deg,#00000024 0 3px,#0000 3px 7px),linear-gradient(160deg,#b02a41,#741329 58%,#4c0d1c);border-color:#3c0a16;place-items:center;display:grid}.card-back-emblem{border-radius:calc(var(--card-w) * .07);color:#e6ecf4;width:62%;height:74%;font-family:var(--font-display), Georgia, serif;font-weight:400;font-size:calc(var(--card-w) * .4);text-shadow:0 1px 4px #00000080;border:1px solid #e2e9f28c;place-items:center;display:grid;box-shadow:inset 0 0 0 2px #3c0a168c,inset 0 0 18px #00000059}.card-playable{cursor:pointer;transition:transform .16s cubic-bezier(.22,1,.36,1),box-shadow .16s}.card-disabled{opacity:.5}.card-hl{box-shadow:0 0 0 3px var(--gold), 0 14px 30px #0000008c}.your-hand .card{animation:.45s cubic-bezier(.22,1,.36,1) both deal-in}.your-hand .hand-slot:first-child .card{animation-delay:20ms}.your-hand .hand-slot:nth-child(2) .card{animation-delay:70ms}.your-hand .hand-slot:nth-child(3) .card{animation-delay:.12s}.your-hand .hand-slot:nth-child(4) .card{animation-delay:.17s}.your-hand .hand-slot:nth-child(5) .card{animation-delay:.22s}.your-hand .hand-slot:nth-child(6) .card{animation-delay:.27s}.your-hand .hand-slot:nth-child(7) .card{animation-delay:.32s}.your-hand .hand-slot:nth-child(8) .card{animation-delay:.37s}@keyframes deal-in{0%{opacity:0;transform:translateY(40px)rotate(-8deg)scale(.8)}to{opacity:1;transform:none}}.table-stage{border-radius:var(--radius);background:radial-gradient(85% 62% at 50% 26%, rgba(var(--metal-rgb), .13), transparent 62%), radial-gradient(140% 115% at 50% 24%, #12634a 0%, var(--green-felt) 38%, var(--green-felt-2) 74%, #041c12 100%);border:1px solid var(--line-strong);flex-direction:column;gap:8px;min-height:calc(100dvh - 118px);padding:14px 14px 8px;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 0 150px #0000009e,inset 0 1px #ffffff24,0 30px 80px #0009}.table-stage:before{content:"";border:1px solid rgba(var(--metal-rgb), .22);pointer-events:none;z-index:1;border-radius:2px;position:absolute;inset:7px}.stage-top{z-index:3;justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.phase-pill{border-radius:var(--radius);font-family:var(--font-caps);letter-spacing:.16em;text-transform:uppercase;color:var(--gold);text-align:center;align-self:flex-start;align-items:center;gap:8px;margin-top:6px;padding:9px 16px;font-size:.72rem;font-weight:500;display:flex}.team-dot{width:8px;height:8px;display:inline-block;transform:rotate(45deg)}.team-dot.team-a{background:var(--cyan)}.team-dot.team-b{background:var(--pink)}.stage-felt{flex:1;min-height:250px;position:relative}.felt-mark{color:#96beff0e;pointer-events:none;-webkit-user-select:none;user-select:none;width:min(44vw,320px);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.felt-mark svg{width:100%;height:auto;display:block}.op{z-index:2;flex-direction:column;align-items:center;gap:4px;display:flex;position:absolute}.op-top{flex-direction:column-reverse;top:-6px;left:50%;transform:translate(-50%)}.op-left{gap:clamp(18px,3vw,34px);top:50%;left:4px;transform:translateY(-50%)}.op-right{gap:clamp(18px,3vw,34px);top:50%;right:4px;transform:translateY(-50%)}.fan-wrap{transition:filter .3s}.fan-turn{filter:drop-shadow(0 0 16px #e4ce8c8c)}.fan{--fan-w:clamp(34px, 5.2vw, 52px);width:calc(var(--fan-w) * 3.2);height:calc(var(--fan-w) * 2.2);position:relative}.fan-card{transform-origin:50% 145%;transform:translateX(-50%) rotate(var(--rot,0deg));position:absolute;bottom:0;left:50%}.fan-card .card{--card-w:var(--fan-w);box-shadow:0 3px 8px #00000073,inset 0 0 0 1px #ffffff14}.op-top .fan{transform:rotate(180deg)}.op-left .fan{transform:rotate(90deg)}.op-right .fan{transform:rotate(-90deg)}.name-plate{border:1px solid var(--line);-webkit-backdrop-filter:blur(8px);z-index:2;background:#070c1cad;border-radius:999px;align-items:center;gap:7px;padding:5px 12px;font-size:.85rem;font-weight:600;transition:box-shadow .3s,border-color .3s;display:flex}.name-plate.turn{border-color:var(--gold);animation:1.8s ease-in-out infinite turn-glow}.name-plate.won{border-color:var(--gold);box-shadow:0 0 0 2px var(--gold), 0 0 30px #c4d1e68c;animation:1.5s both seat-won}.name-plate-name{text-overflow:ellipsis;white-space:nowrap;max-width:130px;overflow:hidden}.tag-trump{background:rgba(var(--metal-rgb), .18);color:var(--gold-2)}@keyframes turn-glow{0%,to{box-shadow:0 0 0 2px #c4d1e666,0 0 18px #c4d1e640}50%{box-shadow:0 0 0 2px #c4d1e6cc,0 0 34px #c4d1e68c}}.table-center{z-index:4;place-items:center;display:grid;position:absolute;inset:28% 30%}.trump-badge{border:1px solid var(--gold);text-align:center;z-index:3;background:#070b16d9;border-radius:12px;padding:7px 13px;animation:.45s cubic-bezier(.22,1.3,.36,1) both badge-in;position:absolute;bottom:12px;left:12px;box-shadow:0 0 22px #c4d1e640}@keyframes badge-in{0%{opacity:0;transform:translateY(14px)scale(.7)}to{opacity:1;transform:none}}.trump-badge .trump-label{letter-spacing:1px;text-transform:uppercase;color:var(--muted);font-size:.58rem;display:block}.trump-suit{font-size:1.6rem}.trump-badge.red .trump-suit{color:#ff5d77}.trump-badge.black .trump-suit{color:#fff}.trump-suit-name{color:var(--muted);font-size:.66rem;display:block}.trick-slot{position:absolute}.trick-slot .card{--card-w:clamp(58px, 8vw, 78px);animation-duration:.42s;animation-timing-function:cubic-bezier(.22,1,.36,1);animation-fill-mode:both;box-shadow:0 8px 18px #00000073}.trick-top .card{animation-name:toss-top}.trick-bottom .card{animation-name:toss-bottom}.trick-left .card{animation-name:toss-left}.trick-right .card{animation-name:toss-right}@keyframes toss-top{0%{opacity:0;transform:translateY(-130px)rotate(-9deg)scale(.85)}to{opacity:1;transform:rotate(-3deg)}}@keyframes toss-bottom{0%{opacity:0;transform:translateY(130px)rotate(9deg)scale(.85)}to{opacity:1;transform:rotate(3deg)}}@keyframes toss-left{0%{opacity:0;transform:translate(-170px)rotate(-11deg)scale(.85)}to{opacity:1;transform:rotate(-4deg)}}@keyframes toss-right{0%{opacity:0;transform:translate(170px)rotate(11deg)scale(.85)}to{opacity:1;transform:rotate(4deg)}}.trick-top{top:-2%;left:50%;transform:translate(-50%)}.trick-bottom{bottom:-2%;left:50%;transform:translate(-50%)}.trick-left{top:50%;left:-18%;transform:translateY(-50%)}.trick-right{top:50%;right:-18%;transform:translateY(-50%)}.turn-banner{text-align:center;min-height:24px}.your-turn{color:var(--gold);font-weight:700;animation:1.6s ease-in-out infinite pulse-text}@keyframes pulse-text{50%{opacity:.55}}.result-text{background:linear-gradient(90deg, var(--gold), var(--gold-2));color:#0000;-webkit-background-clip:text;background-clip:text;font-size:1.3rem;font-weight:800}.controls{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;display:flex}.stage-you{z-index:3;flex-direction:column;align-items:center;gap:8px;display:flex}.your-hand{--spread:1;justify-content:center;align-items:flex-end;min-height:118px;padding:4px 12px 16px;display:flex}.hand-slot{transform:rotate(calc(var(--rot,0deg) * var(--spread))) translateY(calc(var(--ty,0px) * var(--spread)));transform-origin:50% 170%;margin:0 -9px;position:relative}.hand-slot:has(.card-playable){cursor:pointer}.hand-slot:hover{z-index:40!important}.hand-slot:hover .card-playable{box-shadow:0 20px 34px #00000080}.hand-card-motion{will-change:transform}.hand-card-motion:active{cursor:grabbing}@keyframes fade-in{0%{opacity:0}}@keyframes reveal-pop{0%{opacity:0;transform:scale(.7)rotate(-6deg)}to{opacity:1;transform:none}}.trump-cine{z-index:6;pointer-events:none;perspective:900px;place-items:center;display:grid;position:absolute;inset:0}.trump-cine-inner{flex-direction:column;align-items:center;gap:12px;animation:5s cubic-bezier(.45,0,.2,1) both trump-cine;display:flex}.trump-cine-card .card{--card-w:clamp(96px, 14vw, 130px);box-shadow:0 26px 60px #000000a6, 0 0 0 3px var(--gold), 0 0 44px rgba(var(--metal-rgb), .5)}.trump-cine-label{letter-spacing:2.5px;text-transform:uppercase;color:var(--gold);border:1px solid rgba(var(--metal-rgb), .45);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#070b16cc;border-radius:999px;padding:5px 14px;font-size:.72rem;font-weight:800}@keyframes trump-cine{0%{opacity:0;transform:scale(.3)rotateY(100deg)}9%{opacity:1;transform:scale(1.12)rotateY(-6deg)}14%{transform:scale(1)rotateY(0)}82%{opacity:1;transform:scale(1)}to{opacity:0;transform:translate(max(-44vw,-420px),36vh)scale(.2)rotate(-14deg)}}.searching{max-width:460px;margin:44px auto}.spinner{border:4px solid #ffffff1f;border-top-color:var(--primary-2);border-right-color:var(--cyan);border-radius:50%;width:46px;height:46px;margin:0 auto 16px;animation:.85s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.toast{color:#fff;box-shadow:var(--shadow);z-index:60;cursor:pointer;background:linear-gradient(135deg,#ef4444,#b91c1c);border-radius:12px;padding:12px 42px 12px 17px;font-size:.9rem;font-weight:600;animation:.3s cubic-bezier(.22,1,.36,1) both toast-in;position:fixed;top:76px;left:50%;transform:translate(-50%)}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,-14px)}}.toast-x{opacity:.85;position:absolute;top:50%;right:13px;transform:translateY(-50%)}.rules-hero{text-align:center;max-width:640px;margin:0 auto 24px}.rules-hero h2{font-size:1.9rem}.rules-hero p{line-height:1.65}.rules-grid{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.rules-card{background:var(--panel);-webkit-backdrop-filter:var(--glass);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:18px;padding:20px 22px;animation:.5s cubic-bezier(.22,1,.36,1) both rise-in}.rules-card h3{color:var(--gold);align-items:center;gap:9px;margin:0 0 10px;font-size:1.02rem;display:flex}.rules-glyph{width:30px;height:30px;color:var(--on-primary);background:linear-gradient(150deg, var(--gold-3), var(--gold) 45%, var(--gold-2) 55%, var(--gold-3));border-radius:2px;flex:none;place-items:center;font-size:.9rem;display:grid;box-shadow:0 5px 14px #00000080}.rules-card ul{margin:0;padding-left:18px;font-size:.92rem;line-height:1.7}.rules-card li+li{margin-top:6px}.ball-counter{border:1px solid var(--line);min-width:132px;-webkit-backdrop-filter:var(--glass);background:#080d1e9e;border-radius:16px;flex-direction:column;align-items:center;gap:3px;padding:8px 12px 7px;transition:border-color .3s,box-shadow .3s;display:flex}.ball-counter.mine{border-color:var(--line-strong)}.ball-counter.won{border-color:var(--gold);box-shadow:0 0 30px rgba(var(--metal-rgb), .35)}.bc-head{font-family:var(--font-caps);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:6px;font-size:.72rem;font-weight:600;display:flex}.bc-label{white-space:nowrap}.bc-points{color:var(--muted);border:1px solid var(--line);background:#ffffff12;border-radius:999px;padding:1px 7px;font-size:.66rem;font-weight:700}.bc-stage{perspective:420px;width:118px;height:76px;position:relative}.bc-pair{transform-style:preserve-3d;animation:.8s cubic-bezier(.3,1.3,.4,1) both bc-flip;position:absolute;inset:0}@keyframes bc-flip{0%{opacity:0;transform:rotateY(180deg)scale(.7)}to{opacity:1;transform:none}}.bc-card{border-radius:6px;width:44px;height:62px;position:absolute;top:7px}.bc-six{color:#18222f;background:linear-gradient(150deg,#fff,#e9edf6);border:1px solid #c9cfdd;left:16px;transform:rotate(-7deg);box-shadow:0 4px 10px #00000073}.bc-six.red{color:#d11f3c}.bc-six-idx{font-size:.56rem;font-weight:800;line-height:1;position:absolute;top:3px;left:4px}.bc-six-idx i{text-align:center;font-size:.5rem;font-style:normal;display:block}.bc-pips{grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(2,1fr);grid-auto-flow:column;display:grid;position:absolute;inset:16% 20% 9%}.bc-pips i{opacity:0;place-items:center;font-size:.64rem;font-style:normal;transition:opacity .3s,transform .35s cubic-bezier(.3,1.5,.5,1);display:grid;transform:scale(.4)}.bc-pips i.on{opacity:1;transform:scale(1)}.bc-cover{z-index:2;transform:rotate(9deg) translateX(calc(var(--reveal,0) * 48px));background:radial-gradient(120% 90% at 30% 18%,#ffffff24,#0000 46%),repeating-linear-gradient(115deg,#00000024 0 3px,#0000 3px 7px),linear-gradient(160deg,#b02a41,#741329 58%,#4c0d1c);border:1px solid #3c0a16;place-items:center;transition:transform .6s cubic-bezier(.3,1.2,.4,1);display:grid;left:16px;box-shadow:0 5px 12px #00000080}.bc-mono{color:var(--gold-2);text-shadow:0 1px 4px #00000080;font-family:Georgia,Times New Roman,serif;font-size:1.15rem;font-weight:700}.team-b .bc-six{left:auto;right:16px;transform:rotate(7deg)}.team-b .bc-pips{direction:rtl}.team-b .bc-cover{transform:rotate(-9deg) translateX(calc(var(--reveal,0) * -48px));left:auto;right:16px}.bc-banked{z-index:3;color:var(--gold-2);border:1px solid rgba(var(--metal-rgb), .45);background:#0a0d12c7;border-radius:999px;padding:2px 7px;font-size:.6rem;font-weight:800;position:absolute;top:-3px;left:2px}.team-b .bc-banked{left:auto;right:2px}.bc-pop{z-index:4;color:#ffd97a;text-shadow:0 0 14px #ffd97acc;pointer-events:none;font-size:1rem;font-weight:800;animation:1.9s both bc-pop;position:absolute;top:6px;right:0}.team-b .bc-pop{left:0;right:auto}@keyframes bc-pop{0%{opacity:0;transform:translateY(8px)scale(.6)}18%{opacity:1;transform:translateY(0)scale(1.15)}70%{opacity:1;transform:translateY(-4px)scale(1)}to{opacity:0;transform:translateY(-14px)scale(.9)}}.bc-count{color:var(--gold);font-size:1.15rem;font-weight:800;line-height:1}.bc-of{color:var(--muted);margin-left:2px;font-size:.7rem;font-weight:600}@keyframes seat-won{0%{transform:scale(1)}22%{transform:scale(1.09)}to{transform:scale(1)}}.table-center.gathering.to-top{--sweep-x:0px;--sweep-y:-160px}.table-center.gathering.to-bottom{--sweep-x:0px;--sweep-y:160px}.table-center.gathering.to-left{--sweep-x:-230px;--sweep-y:0px}.table-center.gathering.to-right{--sweep-x:230px;--sweep-y:0px}.trick-slot.resolved .card{animation:1.5s cubic-bezier(.5,0,.2,1) both trick-sweep}@keyframes trick-sweep{0%{opacity:1;transform:translate(0)scale(1)}28%{opacity:1;transform:translate(0)scale(1.05)}to{transform:translate(var(--sweep-x,0), var(--sweep-y,0)) scale(.5) rotate(9deg);opacity:0}}.trick-take-banner{z-index:4;border:1px solid var(--line-strong);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);pointer-events:none;background:#070b16d1;border-radius:999px;align-items:center;gap:8px;padding:8px 17px;font-size:.92rem;font-weight:700;animation:.5s cubic-bezier(.22,1,.36,1) both take-pop;display:flex;position:absolute;top:33%;left:50%}.trick-take-banner.take-a{border-color:#6fb3c9a6;box-shadow:0 0 28px #6fb3c980}.trick-take-banner.take-b{border-color:#fb718599;box-shadow:0 0 28px #fb718580}@keyframes take-pop{0%{opacity:0;transform:translate(-50%,-30%)scale(.8)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}.round-splash{z-index:45;pointer-events:none;place-items:center;display:grid;position:fixed;inset:0}.round-splash-card{background:var(--panel-solid);border:1px solid var(--gold);text-align:center;box-shadow:0 0 50px #c4d1e64d, var(--shadow);border-radius:18px;padding:22px 30px;animation:.45s cubic-bezier(.22,1,.36,1) both reveal-pop}.round-splash-kicker{letter-spacing:2px;text-transform:uppercase;color:var(--muted);margin-bottom:8px;font-size:.7rem}.round-splash-balls{justify-content:center;align-items:center;gap:10px;margin-top:12px;font-size:.9rem;font-weight:700;display:flex}.round-splash-next{color:var(--muted);margin-top:12px;font-size:.78rem}.round-splash-melds{flex-wrap:wrap;justify-content:center;gap:6px;margin-top:12px;display:flex}.meld-chip{border:1px solid var(--line);background:#070c1c99;border-radius:999px;align-items:center;gap:5px;padding:3px 9px;font-size:.74rem;font-weight:700;display:inline-flex}.meld-chip.meld-a{border-color:color-mix(in srgb, var(--team-a,#5cc9d6) 60%, transparent)}.meld-chip.meld-b{border-color:color-mix(in srgb, var(--team-b,#e08aa0) 60%, transparent)}.meld-chip .meld-suit.red{color:#ff5d77}.meld-chip .meld-trump{color:var(--gold)}.meld-chip .meld-val{color:var(--gold-2)}.name-plate-wrap{flex-direction:column;align-items:center;gap:4px;display:flex}.name-plate-melds{flex-wrap:wrap;justify-content:center;gap:4px;max-width:220px;display:flex}.name-plate-melds .meld-chip{padding:2px 7px;font-size:.68rem}.trump-mini{letter-spacing:.02em;border:1px solid var(--gold);background:#070b16d9;border-radius:999px;align-items:center;gap:5px;padding:3px 10px;font-size:.72rem;font-weight:700;animation:.4s cubic-bezier(.22,1.3,.36,1) both badge-in;display:inline-flex;box-shadow:0 0 16px #c4d1e638}.trump-mini-suit{font-size:1.05rem;line-height:1}.trump-mini.red .trump-mini-suit{color:#ff5d77}.trump-mini.black .trump-mini-suit{color:#fff}.trump-mini-name{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:.62rem}.meld-controls{flex-wrap:wrap}.meld-btn{background:linear-gradient(180deg, rgba(var(--metal-rgb,196, 209, 230), .22), rgba(var(--metal-rgb,196, 209, 230), .1));border:1px solid var(--gold);color:var(--gold-2);font-weight:700;animation:.4s cubic-bezier(.22,1.3,.36,1) both badge-in;box-shadow:0 0 18px #c4d1e640}.meld-btn:hover{filter:brightness(1.1)}.meld-btn .red{color:#ff5d77}.meld-row{align-items:center;gap:6px;display:inline-flex}.meld-row-who{color:var(--muted);font-size:.74rem;font-weight:700}.match-over{z-index:70;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#03060eb8;place-items:center;animation:.3s fade-in;display:grid;position:fixed;inset:0;overflow:hidden}.match-over-card{z-index:2;text-align:center;background:var(--panel-solid);border:1px solid var(--line-strong);max-width:430px;box-shadow:var(--shadow);border-radius:24px;padding:34px 40px;animation:.5s cubic-bezier(.22,1,.36,1) both reveal-pop;position:relative}.match-over-card.win-a{box-shadow:0 0 60px #6fb3c959, var(--shadow);border-color:#6fb3c9a6}.match-over-card.win-b{box-shadow:0 0 60px #fb718559, var(--shadow);border-color:#fb718599}.trophy{filter:drop-shadow(0 8px 20px #00000080);font-size:3.6rem;animation:4s ease-in-out infinite bob}.match-over-card h2{margin:6px 0 4px;font-size:1.7rem}.match-over-score{justify-content:center;align-items:center;gap:12px;margin:10px 0;font-size:1.12rem;font-weight:800;display:flex}.match-over .controls{margin-top:20px}.confetti{z-index:1;pointer-events:none;position:absolute;inset:0}.confetti-bit{opacity:.9;border-radius:2px;width:9px;height:14px;animation:3s linear infinite confetti-fall;position:absolute;top:-14px}.confetti-bit.c0{background:var(--gold)}.confetti-bit.c1{background:var(--cyan)}.confetti-bit.c2{background:var(--pink)}.confetti-bit.c3{background:var(--primary-2)}.confetti-bit.c4{background:#34d399}.confetti-bit.c5{background:var(--gold-2)}.confetti-bit:nth-child(3n){animation-duration:3.7s}.confetti-bit:nth-child(3n+1){width:7px;height:11px;animation-duration:2.3s}.confetti-bit:nth-child(2n){animation-delay:.5s}.confetti-bit:nth-child(5n){animation-delay:1s}.confetti-bit:nth-child(4n){border-radius:50%;animation-delay:1.5s}@keyframes confetti-fall{0%{opacity:0;transform:translateY(-20px)rotate(0)}10%{opacity:.95}to{opacity:.35;transform:translateY(105vh)rotate(560deg)}}@media (width>=1100px){.your-hand .card{--card-w:76px}}@media (width<=1000px){.name-plate-name{max-width:92px}.felt-mark{width:min(40vw,250px)}}@media (width<=760px){.topbar{gap:8px;padding:10px 12px}.topbar-left,.topbar-right{gap:8px;min-width:0}.logo{letter-spacing:.06em;padding-left:.06em;font-size:1.05rem}.topbar-user{letter-spacing:.1em;text-overflow:ellipsis;white-space:nowrap;max-width:84px;font-size:.68rem;overflow:hidden}.topbar .btn-sm{letter-spacing:.1em;padding:7px 10px;font-size:.64rem}.ranked-layout,.rules-grid,.lobby-teams{grid-template-columns:1fr}.lobby-vs{display:none}.mode-hero{text-align:center;grid-template-columns:1fr;margin:14px auto;padding:28px 22px 30px}.mode-head,.mode-chips{justify-content:center}.mode-desc{margin-left:auto;margin-right:auto}.mode-cta{align-items:center}.mode-title{font-size:1.7rem}.mode-hero-art{margin-top:16px}.deco-fan{--deco-w:62px!important}.code-ch{width:36px;height:46px;font-size:1.25rem}.tabs{grid-template-columns:repeat(6,1fr);gap:2px;width:100%;max-width:100%;margin-bottom:20px;padding:4px;display:grid}.tab{letter-spacing:.03em;flex-direction:column;justify-content:center;gap:4px;min-width:0;padding:9px 1px;font-size:.54rem}.tab-full{display:none}.tab-short{display:inline}.tab-ic{opacity:.7;font-size:.95rem}.tab+.tab:before{display:none}.app-main{padding:12px 8px 36px}.table-stage{border-radius:var(--radius);gap:4px;min-height:calc(100dvh - 96px);padding:8px 8px 4px}.phase-pill{margin-top:2px;padding:6px 9px;font-size:.68rem}.ball-counter{border-radius:12px;min-width:0;padding:5px 7px}.bc-head{letter-spacing:.06em;gap:4px;font-size:.6rem}.your-hand{padding-bottom:8px}.bc-points{display:none}.bc-stage{width:86px;height:58px}.bc-card{width:33px;height:46px;top:5px}.bc-six{left:11px}.bc-cover{transform:rotate(9deg) translateX(calc(var(--reveal,0) * 36px));left:11px}.team-b .bc-six,.team-b .bc-cover{left:auto;right:11px}.team-b .bc-cover{transform:rotate(-9deg) translateX(calc(var(--reveal,0) * -36px))}.bc-pips i{font-size:.5rem}.bc-count{font-size:.92rem}.fan{--fan-w:clamp(24px, 6.5vw, 34px)}.op-left{left:-8px}.op-right{right:-8px}.op-left .name-plate-name,.op-right .name-plate-name{max-width:64px}.name-plate{gap:5px;padding:4px 9px;font-size:.72rem}.stage-felt{min-height:200px}.table-center{inset:26% 24%}.trick-left{left:-12%}.trick-right{right:-12%}.your-hand{--spread:.55;min-height:96px;padding-bottom:10px}.your-hand .card{--card-w:clamp(52px, 14.5vw, 64px)}.hand-slot{margin:0 -12px}.felt-mark{width:46vw}}@media (width<=420px){.topbar-user{display:none}.brand-mark{letter-spacing:.5em;padding-left:.5em;font-size:.9rem}.auth-inner{padding:22px 20px 0}.auth-card{padding-bottom:24px}}@media (prefers-reduced-motion:reduce){.panel,.auth-card,.your-hand .card,.trick-slot .card,.trick-slot.resolved .card,.name-plate.turn,.name-plate.won,.bc-pair,.bc-pop,.trump-cine-inner,.trump-badge,.trick-take-banner,.confetti-bit,.trophy,.your-turn,.btn-primary:after,.hero-emoji,.logo,.brand-mark,.conn-dot.on{animation:none!important}}
