.pf-face{flex:none}.pf-face *{transform-box:fill-box}.pf-face .pf-skin{fill:var(--pf-skin)}.pf-face .pf-skin-sh{fill:var(--pf-skin-sh)}.pf-face .pf-hair{fill:var(--pf-hair)}.pf-face .pf-lip{fill:var(--pf-lip)}.pf-face .skin-line{fill:none;stroke:var(--pf-skin-sh);stroke-width:1.8;stroke-linecap:round}.pf-face .brow{transform-origin:center;transition:transform .22s ease}.pf-face .lid{fill:var(--pf-skin);transform-origin:top;transform:scaleY(0);transition:transform .2s ease}.pf-face .eyes{transform-origin:center;transition:transform .2s ease}.pf-face .iris,.pf-face .pupil{transition:transform .2s ease}.pf-face .m{opacity:0;transition:opacity .18s ease}.pf-face .m-neutral{opacity:1}.pf-face .tear{opacity:0;fill:#5bb7e6}.pf-face .spark{opacity:0;fill:#ffd54a}.pf-face .sweat{opacity:0;fill:#7ec8f0}.pf-face .anger{opacity:0;transform-origin:center}.pf-face .pf-bg{fill:color-mix(in srgb,var(--ink-soft) 16%,var(--panel-solid))}.pf-face .pf-ring{fill:none;stroke:var(--ink-soft);stroke-width:3}.pf-face[data-team=A] .pf-bg{fill:color-mix(in srgb,var(--team-a) 18%,var(--panel-solid))}.pf-face[data-team=A] .pf-ring{stroke:var(--team-a)}.pf-face[data-team=B] .pf-bg{fill:color-mix(in srgb,var(--team-b) 18%,var(--panel-solid))}.pf-face[data-team=B] .pf-ring{stroke:var(--team-b)}.pf-face .fwrap{animation:pf-bob 3.6s ease-in-out infinite}.pf-face.idle .lid,.pf-face.thinking .lid,.pf-face.sad .lid{animation:pf-blink 4.4s infinite}.pf-face.thinking .fwrap{animation:pf-sway 3.2s ease-in-out infinite}.pf-face.thinking .iris,.pf-face.thinking .pupil{animation:pf-look 3.2s ease-in-out infinite}.pf-face.happy .m-neutral,.pf-face.triumphant .m-neutral,.pf-face.sad .m-neutral,.pf-face.confident .m-neutral,.pf-face.surprised .m-neutral,.pf-face.sly .m-neutral,.pf-face.rage .m-neutral,.pf-face.wink-left .m-neutral,.pf-face.wink-right .m-neutral{opacity:0}.pf-face.happy .m-smile{opacity:1}.pf-face.happy .brow{transform:translateY(-2px)}.pf-face.happy .lid{transform:scaleY(.22)}.pf-face.happy .fwrap{animation:pf-bounce 1.1s ease-in-out infinite}.pf-face.triumphant .m-laugh{opacity:1}.pf-face.triumphant .brow{transform:translateY(-3px)}.pf-face.triumphant .fwrap{animation:pf-bounce-big .9s ease-in-out infinite}.pf-face.triumphant .s1{animation:pf-twinkle 1.3s ease-in-out infinite}.pf-face.triumphant .s2{animation:pf-twinkle 1.3s ease-in-out .4s infinite}.pf-face.triumphant .s3{animation:pf-twinkle 1.3s ease-in-out .8s infinite}.pf-face.sad .m-frown{opacity:1}.pf-face.sad .bl{transform:rotate(-15deg)}.pf-face.sad .br{transform:rotate(15deg)}.pf-face.sad .iris,.pf-face.sad .pupil{transform:translateY(2px)}.pf-face.sad .tear{opacity:1;animation:pf-tear 2.6s ease-in infinite}.pf-face.sad .fwrap{animation:pf-sink 3.8s ease-in-out infinite}.pf-face.confident .m-smirk{opacity:1}.pf-face.confident .bl{transform:translateY(2px) rotate(12deg)}.pf-face.confident .br{transform:translateY(2px) rotate(-12deg)}.pf-face.confident .lid{transform:scaleY(.42)}.pf-face.confident .fwrap{animation:pf-shake 1.8s ease-in-out infinite}.pf-face.surprised .m-o{opacity:1}.pf-face.surprised .eyes{transform:scale(1.18)}.pf-face.surprised .brow{transform:translateY(-5px)}.pf-face.surprised .sweat{opacity:1;animation:pf-bead 2.4s ease-in infinite}.pf-face.surprised .fwrap{animation:pf-startle 2.2s ease-in-out infinite}.pf-face.sly .m-smirk{opacity:1}.pf-face.sly .lid{transform:scaleY(.5)}.pf-face.sly .br{transform:translateY(-3px)}.pf-face.sly .bl{transform:translateY(1px)}.pf-face.sly .fwrap{animation:pf-lean 3s ease-in-out infinite}.pf-face.rage .m-rage{opacity:1}.pf-face.rage .bl{transform:translateY(3px) rotate(20deg)}.pf-face.rage .br{transform:translateY(3px) rotate(-20deg)}.pf-face.rage .anger{opacity:1;animation:pf-anger .5s ease-in-out infinite}.pf-face.rage .fwrap{animation:pf-rage .34s ease-in-out infinite}.pf-face.wink-left .m-smile,.pf-face.wink-right .m-smile{opacity:1}.pf-face.wink-left .eL .lid,.pf-face.wink-right .eR .lid{animation:pf-wink 2.6s ease-in-out infinite}.pf-face.wink-left .fwrap{animation:pf-tilt-l 3s ease-in-out infinite}.pf-face.wink-right .fwrap{animation:pf-tilt-r 3s ease-in-out infinite}@keyframes pf-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}@keyframes pf-sway{0%,to{transform:rotate(-2.5deg)}50%{transform:rotate(2.5deg)}}@keyframes pf-bounce{0%,to{transform:translateY(0)}40%{transform:translateY(-6px)}}@keyframes pf-bounce-big{0%,to{transform:translateY(0) rotate(0)}30%{transform:translateY(-9px) rotate(-3deg)}60%{transform:translateY(-2px) rotate(3deg)}}@keyframes pf-sink{0%,to{transform:translateY(0)}50%{transform:translateY(3px)}}@keyframes pf-shake{0%,70%,to{transform:translate(0) rotate(0)}78%{transform:translate(-2px) rotate(-1.5deg)}86%{transform:translate(2px) rotate(1.5deg)}94%{transform:translate(-1px)}}@keyframes pf-startle{0%,82%,to{transform:translateY(0)}88%{transform:translateY(-5px)}94%{transform:translateY(-1px)}}@keyframes pf-lean{0%,to{transform:rotate(-1.5deg)}50%{transform:rotate(2deg)}}@keyframes pf-rage{0%,to{transform:translate(0)}25%{transform:translate(-1.6px)}75%{transform:translate(1.6px)}}@keyframes pf-tilt-l{0%,to{transform:rotate(0)}50%{transform:rotate(-3deg)}}@keyframes pf-tilt-r{0%,to{transform:rotate(0)}50%{transform:rotate(3deg)}}@keyframes pf-blink{0%,93%,to{transform:scaleY(0)}95%,97%{transform:scaleY(1)}}@keyframes pf-wink{0%,20%{transform:scaleY(0)}30%,55%{transform:scaleY(1)}65%,to{transform:scaleY(0)}}@keyframes pf-look{0%,to{transform:translate(-1.5px,-1px)}50%{transform:translate(1.5px,1px)}}@keyframes pf-tear{0%{opacity:0;transform:translateY(0)}20%{opacity:1}80%{opacity:1;transform:translateY(18px)}to{opacity:0;transform:translateY(20px)}}@keyframes pf-bead{0%{opacity:0;transform:translateY(0)}25%{opacity:1}85%{opacity:1;transform:translateY(11px)}to{opacity:0;transform:translateY(13px)}}@keyframes pf-twinkle{0%,to{opacity:0;transform:scale(.5)}50%{opacity:1;transform:scale(1)}}@keyframes pf-anger{0%,to{transform:scale(1);opacity:.85}50%{transform:scale(1.3);opacity:1}}.pf-face.pf-voice-live .mouth{transform-origin:center top;transform:scaleY(calc(1 + var(--talk, 0) * 1.7)) scaleX(calc(1 + var(--talk, 0) * .15));transition:transform .05s linear}.pf-face.pf-voice-live .m-neutral path:last-child{stroke-width:calc(1.4 + var(--talk, 0) * 3)}.pf-photo.pf-voice-live{transform:scale(calc(1 + var(--talk, 0) * .13));transition:transform .06s linear}@media(prefers-reduced-motion:reduce){.pf-face *{animation:none!important}.pf-face.pf-voice-live .mouth,.pf-photo.pf-voice-live{transition:none}}.pf-face.pf-interactive .eye{cursor:pointer}.pf-face.pf-interactive .eye .eye-hit{transition:fill .15s ease}.pf-face.pf-interactive .eye:hover .eye-hit{fill:#e2bb5e38}.pf-face.pf-interactive .eye:hover{filter:drop-shadow(0 0 4px #e2bb5e)}.pf-face.pf-interactive .eye:focus{outline:none}.pf-face.pf-interactive .eye:focus .eye-hit{fill:#e2bb5e59}.pf-photo{display:inline-block;border-radius:50%;overflow:hidden;box-shadow:0 2px 6px #00000059;border:2px solid color-mix(in srgb,var(--primary) 35%,transparent);background:var(--bg-1)}.pf-photo[data-team=A]{border-color:color-mix(in srgb,var(--team-a) 60%,transparent)}.pf-photo[data-team=B]{border-color:color-mix(in srgb,var(--team-b) 60%,transparent)}.pf-photo img{width:100%;height:100%;object-fit:cover;display:block}:root{--primary: #14b8a6;--primary-deep: #0d9488;--primary-darker: #134e4a;--primary-ink: #ffffff;--accept: var(--primary-deep);--accept-deep: var(--primary-darker);--accept-ink: var(--primary-ink);--danger: #f43f5e;--danger-deep: #e11d48;--danger-darker: #9f1239;--danger-ink: #ffffff;--warn: #fbbf24;--warn-deep: #b45309;--warn-darker: #92400e;--warn-ink: #422006;--info: #6366f1;--info-deep: #4338ca;--info-darker: #312e81;--info-ink: #ffffff;--team-a: #0369a1;--team-a-deep: #075985;--team-a-ink: #ffffff;--team-b: #c2410c;--team-b-deep: #9a3412;--team-b-ink: #ffffff;--felt-0: var(--primary);--felt-1: var(--primary-deep);--rail-0: var(--primary-darker);--rail-1: #042f2e;--wood-0: var(--bg-1);--wood-1: var(--bg-2);--wood-grain: rgba(0, 0, 0, .04);--glow: rgba(20, 184, 166, .18);--bg-0: #fefcfb;--bg-1: #f5f3ef;--bg-2: #ebe9e3;--panel: rgba(254, 252, 251, .96);--panel-solid: #ffffff;--panel-grad: linear-gradient(180deg, #ffffff, var(--bg-1));--ink: #1f2937;--ink-soft: #475569;--ink-faint: #64748b;--ink-decorative: #94a3b8;--line: #e2e8f0;--line-strong: #cbd5e1;--shout-truco: var(--info);--shout-retruco: var(--warn-deep);--shout-vale-nueve: var(--team-b);--shout-vale-juego: var(--danger-deep);--tier-novato: var(--info);--tier-basico: var(--primary);--tier-basico-deep: var(--primary-deep);--tier-avanzado: var(--info);--tier-avanzado-deep: var(--info-deep);--tier-maestro: #a855f7;--tier-maestro-deep: #7e22ce;--rank-prestige: var(--team-b);--rank-elite: var(--danger-deep);--rank-magic: var(--tier-maestro);--flag-yellow: #ffcd00;--flag-blue: #00247d;--flag-red: #cf142b;--flag-star: #ffffff;--btn-shadow-offset: 3px;--btn-shadow-color: var(--line-strong);--btn-radius: 12px;--btn-radius-sm: 10px;--scrim-strong: rgba(0, 0, 0, .6);--scrim-soft: rgba(0, 0, 0, .32);--vignette: rgba(0, 0, 0, .78);--hot-spec: rgba(255, 255, 255, .22);--radius: 16px;--radius-sm: 12px;--radius-lg: 22px;--shadow: 0 8px 22px rgba(40, 40, 40, .1);--shadow-soft: 0 4px 14px rgba(40, 40, 40, .08);--shadow-lift: 0 12px 28px rgba(40, 40, 40, .14);color:var(--ink);background:var(--bg-0);color-scheme:light;font-family:Nunito,"Baloo 2",Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}:root[data-theme=dark]{color-scheme:dark;--primary: #2dd4bf;--primary-deep: #14b8a6;--primary-darker: #0f766e;--primary-ink: #042f2e;--accept: var(--primary-deep);--accept-deep: var(--primary-darker);--accept-ink: var(--primary-ink);--danger: #fb7185;--danger-deep: #e11d48;--danger-darker: #9f1239;--danger-ink: #ffffff;--warn: #fcd34d;--warn-deep: #fbbf24;--warn-darker: #92400e;--warn-ink: #422006;--info: #818cf8;--info-deep: #4f46e5;--info-darker: #3730a3;--info-ink: #ffffff;--team-a: #38bdf8;--team-a-deep: #0369a1;--team-a-ink: #ffffff;--team-b: #fb923c;--team-b-deep: #c2410c;--team-b-ink: #ffffff;--felt-0: #0f766e;--felt-1: #134e4a;--rail-0: #042f2e;--rail-1: #020617;--wood-0: var(--bg-0);--wood-1: var(--bg-1);--wood-grain: rgba(0, 0, 0, .35);--glow: rgba(45, 212, 191, .14);--bg-0: #0f172a;--bg-1: #1e293b;--bg-2: #334155;--panel: rgba(30, 41, 59, .92);--panel-solid: #1e293b;--panel-grad: linear-gradient(180deg, #233149, #1a2438);--ink: #f1f5f9;--ink-soft: #cbd5e1;--ink-faint: #94a3b8;--ink-decorative: #64748b;--line: rgba(255, 255, 255, .08);--line-strong: rgba(255, 255, 255, .18);--btn-shadow-color: rgba(0, 0, 0, .45);--shadow: 0 14px 34px rgba(0, 0, 0, .45);--shadow-soft: 0 8px 22px rgba(0, 0, 0, .32), 0 1px 0 rgba(255, 255, 255, .04) inset;--shadow-lift: 0 16px 36px rgba(0, 0, 0, .45)}*{box-sizing:border-box}body{margin:0}*{scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--primary) 40%,transparent) transparent}*::-webkit-scrollbar{width:8px;height:8px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--primary) 35%,transparent);border-radius:999px;border:2px solid transparent;background-clip:padding-box}*::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--primary) 55%,transparent);background-clip:padding-box}*::-webkit-scrollbar-corner{background:transparent}button,input{font:inherit}.app{min-height:100svh;padding:18px;background:radial-gradient(ellipse 60% 55% at 12% 0%,color-mix(in srgb,var(--primary) 16%,transparent),transparent 70%),radial-gradient(ellipse 55% 50% at 92% 18%,color-mix(in srgb,var(--info) 12%,transparent),transparent 72%),radial-gradient(ellipse 70% 50% at 50% 110%,color-mix(in srgb,var(--warn) 10%,transparent),transparent 70%),var(--bg-0);background-attachment:fixed;color:var(--ink);transition:background-color .3s ease}.table-shell{position:relative;display:flex;flex-direction:column;gap:16px;min-height:calc(100svh - 36px);max-width:1180px;margin:0 auto;padding:18px;border-radius:18px}.app--ingame{padding:0;min-height:100svh;max-height:100svh;width:100%;max-width:100vw;overflow:hidden;overflow-x:hidden;overflow-y:hidden}html,body{overflow-x:hidden}body:has(.app--ingame){overflow:hidden;position:fixed;top:0;right:0;bottom:0;left:0;width:100%}.table-shell--ingame{gap:0;padding:6px 10px 10px;min-height:100svh;max-height:100svh;max-width:1200px;margin:0 auto;border-radius:0}.table-shell--ingame .table-area>.felt{aspect-ratio:3 / 2;width:auto;height:100%;max-width:100%;margin:0 auto;justify-self:center}.ingame-menu{position:fixed;top:8px;right:8px;display:flex;gap:6px;align-items:center;z-index:60}.ingame-menu-btn{min-height:30px;min-width:30px;padding:4px 10px;font-size:.78rem;border-radius:999px;border:1px solid color-mix(in srgb,var(--ink-soft) 25%,transparent);background:transparent;color:var(--ink);cursor:pointer;display:inline-flex;align-items:center;gap:4px}.ingame-menu-btn:hover{background:color-mix(in srgb,var(--primary) 24%,transparent)}.btn.ingame-menu-leave{--btn-ink: var(--danger);border:1px solid color-mix(in srgb,var(--danger) 40%,transparent)}.btn.ingame-menu-leave:hover:not(:disabled){background:color-mix(in srgb,var(--danger) 14%,transparent);filter:none}.ingame-menu-code{font-weight:700;font-family:ui-monospace,SFMono-Regular,monospace;font-size:.72rem;letter-spacing:.05em}.voice-btn{min-height:32px;min-width:32px;padding:4px 8px;border-radius:999px;border:1px solid color-mix(in srgb,var(--ink-soft) 25%,transparent);background:transparent;color:var(--ink);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:4px;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease;-webkit-tap-highlight-color:transparent}.voice-btn:hover:not(:disabled){background:color-mix(in srgb,var(--primary) 24%,transparent)}.voice-btn:disabled{cursor:default;opacity:.7}.voice-btn-on{border-color:color-mix(in srgb,var(--primary) 60%,transparent);background:color-mix(in srgb,var(--primary) 22%,transparent);color:color-mix(in srgb,var(--primary) 45%,var(--ink));font-weight:700}.voice-btn-muted{border-color:color-mix(in srgb,var(--danger) 45%,transparent);background:color-mix(in srgb,var(--danger) 16%,transparent);color:color-mix(in srgb,var(--danger) 50%,var(--ink))}.voice-btn-connecting{animation:voice-pulse 1s ease-in-out infinite}.voice-btn.voice-speaking{box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 55%,transparent),0 0 12px color-mix(in srgb,var(--primary) 45%,transparent)}.voice-count{font-size:.7rem;font-weight:800;font-variant-numeric:tabular-nums;min-width:12px;text-align:center}@keyframes voice-pulse{0%,to{opacity:.55}50%{opacity:1}}.nameplate-voice{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;color:var(--primary);flex-shrink:0}.nameplate-voice.muted{color:var(--danger)}.nameplate-voice.speaking{color:var(--primary);animation:voice-mic-bounce .6s ease-in-out infinite}@keyframes voice-mic-bounce{0%,to{transform:scale(1);opacity:.8}50%{transform:scale(1.25);opacity:1}}.nameplate.speaking .nameplate-avatar{box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 85%,transparent),0 0 22px color-mix(in srgb,var(--primary) 70%,transparent);border-radius:50%}.nameplate.in-voice .nameplate-avatar{transition:box-shadow .18s ease}.nameplate.speaking .nameplate-avatar:before,.nameplate.speaking .nameplate-avatar:after{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:50%;border:2.5px solid color-mix(in srgb,var(--primary) 80%,transparent);pointer-events:none;z-index:-1;animation:voice-sonar 1.5s ease-out infinite}.nameplate.speaking .nameplate-avatar:after{animation-delay:.75s}.nameplate[data-team=A].speaking .nameplate-avatar:before,.nameplate[data-team=A].speaking .nameplate-avatar:after{border-color:color-mix(in srgb,var(--team-a) 80%,transparent)}.nameplate[data-team=B].speaking .nameplate-avatar:before,.nameplate[data-team=B].speaking .nameplate-avatar:after{border-color:color-mix(in srgb,var(--team-b) 80%,transparent)}@keyframes voice-sonar{0%{transform:scale(1);opacity:.9;border-width:3px}to{transform:scale(1.7);opacity:0;border-width:.5px}}@media(prefers-reduced-motion:reduce){.nameplate.speaking .nameplate-avatar:before,.nameplate.speaking .nameplate-avatar:after{animation:none;display:none}}.table-shell{background:color-mix(in srgb,var(--bg-1) 86%,transparent);backdrop-filter:blur(20px) saturate(1.2);-webkit-backdrop-filter:blur(20px) saturate(1.2);border:1px solid var(--line);box-shadow:0 1px 2px #2828280f,0 12px 32px #2828282e}:root[data-theme=dark] .table-shell{background:color-mix(in srgb,var(--panel-solid) 82%,transparent);border-color:var(--line-strong);box-shadow:var(--shadow)}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:8px 18px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel-grad);box-shadow:var(--shadow);position:relative}.brand{margin-right:auto}.brand h1{margin:0;font-size:clamp(1.4rem,2.6vw,1.85rem);font-weight:900;font-style:normal;letter-spacing:-.01em;color:var(--primary-deep);line-height:1.1;display:inline-flex;align-items:center;gap:10px}.brand-logo{-webkit-text-fill-color:initial;background:none;font-style:normal;font-size:1.25em;line-height:1;display:inline-flex;align-items:center}.brand-logo-img{display:block;height:clamp(40px,7vw,56px);width:auto;filter:drop-shadow(0 2px 4px rgba(0,0,0,.08))}.eyebrow{margin:0 0 4px;color:var(--primary-deep);font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}@media(max-width:540px){.topbar{flex-wrap:wrap;gap:8px;padding:8px 10px}.brand-logo-img{height:38px}.auth-login-btn{margin-left:auto;padding-left:10px;padding-right:10px}.auth-login-label{display:none}}@media(max-width:540px){.ingame-menu{left:8px;justify-content:flex-end;flex-wrap:wrap;row-gap:6px}.ingame-menu .lang-picker{display:none}.voice-btn{min-height:30px;min-width:30px}.ingame-menu-code{display:inline-block;max-width:10ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}.sound-toggle{min-height:40px;min-width:40px;padding:6px 10px;font-size:1.1rem;line-height:1;flex:none}.sound-toggle[aria-pressed=false]{opacity:.6}.nameplate-score{font-size:1.5rem;font-weight:900;line-height:1;letter-spacing:.02em;color:var(--team);text-shadow:0 1px 0 rgba(0,0,0,.4),0 0 16px color-mix(in srgb,var(--team) 35%,transparent);--team: var(--ink-soft);display:inline-flex;align-items:baseline;gap:2px;pointer-events:auto;font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.nameplate-score[data-team=A]{--team: var(--team-a)}.nameplate-score[data-team=B]{--team: var(--team-b)}.nameplate-score small{font-size:.62rem;font-weight:700;color:var(--ink-faint);text-shadow:none;margin-left:1px}.nameplate-score.pulsing{animation:scorePulse .6s ease-out}@keyframes scorePulse{0%{transform:scale(1)}35%{transform:scale(1.22)}to{transform:scale(1)}}.nameplate-captain{flex:none;font-size:.66rem;font-weight:900;color:var(--primary);font-style:italic;line-height:1}.nameplate-you{flex:none;font-size:.58rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--primary);line-height:1}.nameplate-remove-bot{flex:none;min-height:22px!important;width:22px;padding:0!important;font-size:.85rem;line-height:1;display:inline-flex;align-items:center;justify-content:center}.member-thinking{flex:none;display:inline-flex;gap:2px;align-items:center}.member-thinking span{width:4px;height:4px;border-radius:50%;background:currentColor;opacity:.75;animation:dot-bounce 1.1s ease-in-out infinite}.member-thinking span:nth-child(2){animation-delay:.15s}.member-thinking span:nth-child(3){animation-delay:.3s}@keyframes dot-bounce{0%,to{opacity:.25;transform:translateY(0)}50%{opacity:1;transform:translateY(-2px)}}.nameplate.nameplate-empty{border:1px dashed color-mix(in srgb,var(--ink-soft) 38%,transparent);border-radius:14px;padding:16px 14px;background:color-mix(in srgb,var(--panel-solid) 30%,transparent);min-width:150px;display:flex;flex-direction:column;align-items:center;gap:10px;color:var(--ink-faint);text-align:center;pointer-events:auto}.nameplate-add-bot{display:inline-flex;align-items:center;gap:8px;font-size:.84rem;font-weight:700;color:var(--primary-deep);padding:8px 14px;border:1px solid color-mix(in srgb,var(--primary) 50%,transparent);border-radius:999px;background:color-mix(in srgb,var(--primary) 12%,transparent);pointer-events:auto}.nameplate-add-bot:hover{background:color-mix(in srgb,var(--primary) 22%,transparent)}.nameplate-sit-here{display:inline-flex;align-items:center;gap:6px;font-size:.8rem;font-weight:700;color:var(--warn-deep);padding:6px 12px;border:1px solid color-mix(in srgb,var(--warn) 55%,transparent);border-radius:999px;background:color-mix(in srgb,var(--warn) 14%,transparent);pointer-events:auto;margin-bottom:4px}.nameplate-sit-here:hover{background:color-mix(in srgb,var(--warn) 24%,transparent)}.seat-picker-banner{position:absolute;top:12px;left:50%;transform:translate(-50%);z-index:20;display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 18px;border-radius:12px;background:color-mix(in srgb,var(--panel-solid) 95%,transparent);border:1px solid color-mix(in srgb,var(--warn) 55%,transparent);box-shadow:var(--shadow-lift);max-width:min(420px,90vw);text-align:center;pointer-events:auto}.seat-picker-banner-title{margin:0;font-size:.96rem;font-weight:800;color:var(--ink);letter-spacing:.01em}.seat-picker-banner-hint{margin:0 0 4px;font-size:.8rem;color:var(--ink-soft);line-height:1.3}.nameplate-waiting{font-size:.8rem;font-weight:600}.add-bot-icon{font-size:1.05rem;line-height:1}.nameplate.won .nameplate-score{animation:winnerGlow 1.4s ease-in-out infinite}.table-waiting-hint{margin:0;max-width:480px;text-align:center;line-height:1.4;font-size:.88rem;font-weight:600;letter-spacing:0;color:var(--ink);background:var(--panel-solid);border:2px solid var(--line-strong);border-radius:var(--radius-sm);padding:10px 16px;box-shadow:var(--shadow-soft);text-shadow:none}.table-waiting-hint strong{color:var(--primary-deep);letter-spacing:.04em}.table-waiting-code{display:inline-flex;align-items:center;gap:6px;margin:0 2px;padding:2px 8px;font-family:inherit;font-weight:900;letter-spacing:.04em;color:var(--warn-deep);background:color-mix(in srgb,var(--warn) 22%,transparent);border:1px solid color-mix(in srgb,var(--warn-deep) 40%,transparent);border-radius:8px;cursor:pointer;min-height:0;pointer-events:auto;transition:background .15s ease,transform .1s ease}.table-waiting-code:hover{background:color-mix(in srgb,var(--warn) 34%,transparent)}.table-waiting-code:active{transform:scale(.97)}.table-waiting-code-icon{font-size:.78rem;opacity:.8}.lobby{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;width:min(100%,860px);margin:auto}.lobby-card{display:grid;gap:16px;align-content:start;padding:24px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel-grad);box-shadow:var(--shadow)}.lobby-section{display:grid;gap:12px}.lobby-section+.lobby-section{border-top:1px solid var(--line);padding-top:18px}.lobby-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.lobby-section-head h3{margin:0;font-size:.95rem}.lobby-hint{margin:0;color:var(--ink-soft);font-size:.82rem;line-height:1.35}.primary-btn{width:100%;min-height:50px;font-size:1.05rem;font-weight:900}.create-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.create-actions button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:56px;padding:8px 6px;text-align:center;line-height:1.2}.create-actions button small{font-size:.7rem;font-weight:600;opacity:.72}.target-hint{margin-left:auto;color:var(--ink-soft);font-size:.78rem}.target-select{display:flex;align-items:center;gap:8px}.target-label{color:var(--ink-soft);font-size:.82rem;font-weight:700}.target-option{min-width:56px;min-height:40px;padding:6px 14px;font-weight:900}.target-option.active{box-shadow:inset 0 1px #ffffff8c,0 0 0 1px var(--primary-deep),0 0 14px color-mix(in srgb,var(--primary) 45%,transparent)}.lobby-actions{display:grid;gap:10px}.join-code{display:flex;gap:8px}.join-code input{flex:1;min-width:0}.join-code button{flex:none}.lobby-list-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.quick-play{margin-top:14px;padding-top:14px;border-top:1px solid var(--line);display:grid;gap:8px}.lobby-list-head h3{margin:0;font-size:1.05rem}.muted{margin:0;color:var(--ink-faint);font-size:.82rem;font-weight:600}.room-list{list-style:none;margin:0;padding:0;display:grid;gap:8px;max-height:360px;overflow-y:auto}.room-list li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#ffffff08}.room-info{display:grid;gap:2px;min-width:0;flex:1}.room-status{flex:none;padding:3px 9px;border-radius:999px;font-size:.66rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.room-status.waiting{color:var(--team-a);background:color-mix(in srgb,var(--team-a) 16%,transparent);border:1px solid color-mix(in srgb,var(--team-a) 40%,transparent)}.room-status.playing{color:var(--ink-faint);background:#ffffff0a;border:1px solid var(--line)}.leave-btn{min-height:40px;padding:6px 14px;font-size:.84rem;flex:none}.room-info strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.room-list li button{flex:none;min-height:38px;padding:8px 16px}.room-list-skeleton{pointer-events:none}.room-skeleton{display:flex;flex-direction:column;gap:8px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#ffffff05}.skel-line{display:block;height:12px;border-radius:6px;background:linear-gradient(90deg,color-mix(in srgb,var(--ink-soft) 12%,transparent) 25%,color-mix(in srgb,var(--ink-soft) 22%,transparent),color-mix(in srgb,var(--ink-soft) 12%,transparent) 75%);background-size:200% 100%;animation:skelShimmer 1.4s ease-in-out infinite}.skel-line-title{width:55%;height:14px}.skel-line-meta{width:80%;height:10px}@keyframes skelShimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media(prefers-reduced-motion:reduce){.skel-line{animation:none}}.room-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:22px 16px;text-align:center;border:1px dashed var(--line-strong);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--primary) 4%,transparent)}.room-empty-icon{font-size:1.7rem;line-height:1;filter:grayscale(.15) opacity(.95)}.room-empty-title{margin:0;font-size:.92rem;font-weight:800;color:var(--ink);letter-spacing:.01em}.room-empty-hint{margin:0;max-width:32ch;font-size:.8rem;line-height:1.4;color:var(--ink-soft)}.room-empty-hint strong{color:var(--primary);font-weight:800}@media(max-width:900px){.lobby{grid-template-columns:1fr}}@media(max-width:540px){.lobby{gap:12px}.lobby-card{padding:16px;gap:14px;border-radius:var(--radius);box-shadow:var(--shadow-soft)}.lobby-section{gap:14px}.lobby-section+.lobby-section{padding-top:16px}.lobby-section-head h3{font-size:1.05rem;font-weight:800;letter-spacing:-.005em}.lobby-section-head .muted{font-size:.74rem;font-weight:600}.name-row input{min-height:44px;font-size:1rem;padding:8px 12px}.name-row .dice{min-height:44px;min-width:44px}.target-select{flex-wrap:wrap;gap:6px;row-gap:8px}.target-label{width:auto;min-width:64px;flex:none;white-space:nowrap;font-size:.78rem;color:var(--ink-faint);text-transform:uppercase;letter-spacing:.06em}.target-hint{font-size:.74rem;color:var(--ink-faint)}.create-actions{gap:8px}.create-actions button{min-height:60px;font-size:.95rem;font-weight:800;letter-spacing:.01em;padding:10px 8px}.create-actions button small{font-size:.66rem;opacity:.78}.join-code{gap:8px}.join-code input{min-height:44px;font-size:1rem;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;letter-spacing:.08em;text-transform:uppercase}.join-code button{min-height:44px;padding:10px 18px}.learn-cta{width:100%;min-height:52px;font-size:.98rem;font-weight:800}.lobby-list-head h3{font-size:1.05rem}.room-list{max-height:40svh}.room-list li{flex-direction:column;align-items:stretch;gap:10px;padding:12px 14px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--primary) 4%,transparent);border-color:color-mix(in srgb,var(--primary) 18%,transparent)}.room-list li .room-info{width:100%}.room-info strong{font-size:1rem;font-weight:800}.room-info .muted{font-size:.76rem;font-variant-numeric:tabular-nums}.room-list li .room-status{align-self:flex-start}.room-list li button{width:100%;min-height:44px;font-size:.92rem}.quick-play{margin-top:12px;padding-top:14px;gap:10px}.quick-play button{min-height:56px;font-size:1.05rem;font-weight:800;letter-spacing:.01em;box-shadow:var(--shadow-lift)}.quick-play .lobby-hint{font-size:.78rem;line-height:1.4;text-align:center}.lobby-list .muted:only-of-type{padding:24px 16px;text-align:center;border:1px dashed var(--line);border-radius:var(--radius-sm);background:#00000014}}.room-code{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:6px 12px;font-size:.82rem}.room-code-label{color:var(--ink-faint);font-size:.66rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.room-code-value{font-weight:900;letter-spacing:.04em;color:var(--primary)}.room-code-copy{opacity:.7}label{display:grid;gap:8px;color:var(--ink-soft);font-weight:700;font-size:.9rem}.name-row{display:flex;gap:8px}.name-row input{flex:1;min-width:0}.name-label{flex:1;min-width:0;display:flex;align-items:center;gap:8px;min-height:44px;padding:8px 14px;border:1px solid color-mix(in srgb,var(--primary) 35%,transparent);border-radius:10px;background:color-mix(in srgb,var(--primary) 18%,transparent);font-weight:700;font-size:1rem;color:var(--ink)}.name-label:before{content:"✓";font-size:.78rem;color:var(--primary-deep);flex:none}.lobby-card>label{color:var(--ink);font-size:.95rem}.dice{flex:none;min-width:48px;font-size:1.2rem;padding:0 12px}input{width:100%;border:1px solid var(--line-strong);border-radius:10px;background:var(--panel-solid);color:var(--ink);padding:13px;transition:border-color .15s ease,box-shadow .15s ease}input:focus-visible{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 25%,transparent)}button{border:2px solid var(--line);border-radius:var(--btn-radius);background:var(--bg-1);color:var(--ink);cursor:pointer;font-weight:700;min-height:40px;padding:0 18px;letter-spacing:.01em;box-shadow:0 var(--btn-shadow-offset) 0 0 var(--line-strong),inset 0 1px #ffffff38;margin-bottom:var(--btn-shadow-offset);transition:transform .08s cubic-bezier(.34,1.56,.64,1),box-shadow .08s ease,filter .15s ease,background-color .15s ease}button:hover:not(:disabled){filter:brightness(1.04)}button:active:not(:disabled){transform:translateY(var(--btn-shadow-offset));box-shadow:0 0 0 0 var(--line-strong),inset 0 1px #ffffff1f}button:disabled{cursor:not-allowed;opacity:.45;filter:grayscale(.2)}button.ghost{background:transparent;color:var(--ink);border:0;box-shadow:none;margin-bottom:0}button.ghost:hover:not(:disabled){background:color-mix(in srgb,var(--ink) 8%,transparent)}button.danger{background:var(--danger);border-color:transparent;color:var(--danger-ink);box-shadow:0 var(--btn-shadow-offset) 0 0 var(--danger-deep),inset 0 1px #ffffff38}button.danger:active:not(:disabled){box-shadow:0 0 0 0 var(--danger-deep),inset 0 1px #ffffff1f}button.accept{background:var(--accept);border-color:transparent;color:var(--accept-ink);box-shadow:0 var(--btn-shadow-offset) 0 0 var(--accept-deep),inset 0 1px #ffffff38}button.accept:active:not(:disabled){box-shadow:0 0 0 0 var(--accept-deep),inset 0 1px #ffffff1f}.board{display:flex;flex:1;min-height:0;align-items:stretch}.play-area{display:flex;flex-direction:column;gap:0;flex:1;min-width:0}.table-area{display:grid;flex:1;min-height:0;grid-template-rows:144px minmax(0,1fr) 0px;grid-template-columns:180px minmax(0,1fr) 180px;grid-template-areas:".    name-top    ." "name-left felt name-right" ".    name-bottom .";align-items:center;justify-items:center;column-gap:0;row-gap:0}.table-area>.felt{grid-area:felt;width:100%;height:100%}.nameplate-cell{display:flex;flex-direction:column;align-items:center;gap:10px;max-width:220px}.nameplate-cell-top{grid-area:name-top}.nameplate-cell-bottom{grid-area:name-bottom}.nameplate-cell-right{grid-area:name-right}.nameplate-cell-left{grid-area:name-left;align-self:stretch;display:grid;grid-template-rows:1fr auto 1fr;justify-items:center;align-items:start;row-gap:8px}.nameplate-cell-left>.nameplate{grid-row:2}.nameplate-cell-left>.event-log{grid-row:3;align-self:start;width:100%}.felt{position:relative;flex:1;display:grid;align-content:stretch;gap:16px;min-height:320px;transform-origin:center;will-change:transform;border:8px solid transparent;border-radius:22px;padding:14px;isolation:isolate;background:radial-gradient(70% 50% at 50% 10%,rgba(255,255,255,.08),transparent 60%),radial-gradient(120% 90% at 50% 50%,var(--felt-0),var(--felt-1) 80%) padding-box,linear-gradient(180deg,var(--rail-0),var(--rail-1)) border-box;box-shadow:inset 0 -3px #0000001f,inset 0 1px #ffffff2e,var(--shadow)}.felt:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;border-radius:inherit;background:url(/sun-bleached.png) center / cover no-repeat;opacity:.04;mix-blend-mode:overlay;z-index:0}:root[data-theme=dark] .felt:before{opacity:.12}.felt>*{position:relative;z-index:1}@keyframes felt-thump{0%{transform:translateY(0)}10%{transform:translateY(-14px)}22%{transform:translateY(6px)}38%{transform:translateY(-7px)}55%{transform:translateY(3px)}72%{transform:translateY(-2px)}to{transform:translateY(0)}}.felt-shake{animation:felt-thump .62s cubic-bezier(.22,1.4,.36,1) both}@keyframes card-bounce{0%{transform:translateY(0) rotate(calc(var(--seat-rot, 0deg) + var(--fan-rot, 0deg)))}18%{transform:translateY(-18px) rotate(calc(var(--seat-rot, 0deg) + var(--fan-rot, 0deg) + 1.5deg))}35%{transform:translateY(4px) rotate(calc(var(--seat-rot, 0deg) + var(--fan-rot, 0deg)))}55%{transform:translateY(-6px) rotate(calc(var(--seat-rot, 0deg) + var(--fan-rot, 0deg) - .8deg))}to{transform:translateY(0) rotate(calc(var(--seat-rot, 0deg) + var(--fan-rot, 0deg)))}}.felt-shake .played-stack>*{animation:card-bounce .62s cubic-bezier(.22,1.4,.36,1) both}.felt-shake .played-stack>*:nth-child(2){animation-delay:40ms}.felt-shake .played-stack>*:nth-child(3){animation-delay:80ms}@media(prefers-reduced-motion:reduce){.felt-shake,.felt-shake .played-stack>*{animation:none}}.truco-shout{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);z-index:9999;pointer-events:none;font-family:inherit;font-weight:900;letter-spacing:.04em;color:var(--shout-truco);text-shadow:0 0 18px rgba(0,0,0,.55),0 6px 24px rgba(0,0,0,.4),0 0 4px color-mix(in srgb,currentColor 60%,transparent);animation:trucoShout 1.7s cubic-bezier(.16,1.2,.3,1) both;white-space:nowrap;-webkit-text-stroke:1px rgba(0,0,0,.35)}.truco-shout.level-truco{font-size:clamp(3rem,9vw,6rem);color:var(--shout-truco)}.truco-shout.level-retruco{font-size:clamp(3.6rem,11vw,7.5rem);color:var(--shout-retruco)}.truco-shout.level-vale-nueve{font-size:clamp(4.2rem,13vw,9rem);color:var(--shout-vale-nueve)}.truco-shout.level-vale-juego{font-size:clamp(5rem,16vw,11rem);color:var(--shout-vale-juego)}@keyframes trucoShout{0%{opacity:0;transform:translate(-50%,-50%) scale(.2) rotate(-8deg)}18%{opacity:1;transform:translate(-50%,-50%) scale(1.18) rotate(3deg)}32%{transform:translate(-50%,-50%) scale(.94) rotate(-1.5deg)}46%{transform:translate(-50%,-50%) scale(1.05) rotate(1deg)}60%{transform:translate(-50%,-50%) scale(1) rotate(0)}75%{opacity:1;transform:translate(-50%,-50%) scale(1) rotate(0)}to{opacity:0;transform:translate(-50%,-50%) scale(1.08) rotate(0)}}@media(prefers-reduced-motion:reduce){.truco-shout{animation:none;opacity:1}}.event-log{display:flex;flex-direction:column;gap:6px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#00000038;min-height:0;max-height:240px;overflow-y:auto}.event-log-title{margin:0;font-size:.65rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint)}.event-log ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:4px}.event-log li{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:6px;row-gap:2px;font-size:.78rem;line-height:1.3;padding:2px 0;animation:eventLogLife 10s ease-out forwards}@keyframes eventLogLife{0%{opacity:0;transform:translate(-4px)}3%{opacity:1;transform:translate(0)}70%{opacity:1}to{opacity:0}}.event-log-symbol{flex:0 0 18px;text-align:center;font-size:.9rem}.event-log-name{flex:0 0 auto;font-weight:800;white-space:nowrap}.event-log li.team-A .event-log-name{color:var(--team-a-deep)}.event-log li.team-B .event-log-name{color:var(--team-b-deep)}.event-log-text{flex:1 1 100%;margin-left:24px;color:var(--ink-soft);word-break:normal;overflow-wrap:anywhere}.hand-result{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:4;display:flex;flex-direction:column;align-items:stretch;gap:6px;text-align:center;pointer-events:none;animation:actionToastIn .22s ease-out;padding:14px 20px;background:var(--panel-solid);border:2px solid var(--line-strong);border-radius:var(--radius-sm);box-shadow:var(--shadow-lift);max-width:min(560px,calc(100% - 32px))}.hand-result-line{margin:0;font-size:1.05rem;font-weight:700;color:var(--ink);line-height:1.35;animation:handResultLine .34s cubic-bezier(.16,1,.3,1) both;font-variant-numeric:tabular-nums}.hand-result-line:nth-child(1){animation-delay:.05s}.hand-result-line:nth-child(2){animation-delay:.18s}.hand-result-line:nth-child(3){animation-delay:.31s}.hand-result-forfeit-notice{margin:0 0 6px;padding:8px 12px;font-size:.86rem;font-weight:700;color:var(--warn-deep);background:color-mix(in srgb,var(--warn) 18%,transparent);border:1px solid color-mix(in srgb,var(--warn) 40%,transparent);border-radius:8px;line-height:1.3}@keyframes handResultLine{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.hand-result-line{animation:none}}.hand-result-line.team-A{color:var(--team-a-deep)}.hand-result-line.team-B{color:var(--team-b-deep)}.hand-result-actions{pointer-events:auto;display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:14px}.hand-result-actions>.muted{margin-right:auto}.hand-result-actions button{min-width:140px}.played-card.revealed{outline:2px solid color-mix(in srgb,var(--primary) 60%,transparent);outline-offset:2px;border-radius:8px;animation:revealCard .32s ease-out}.played-card.hidden-card{opacity:.5;filter:grayscale(.4)}@keyframes revealCard{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.table-center{position:absolute;left:12px;top:12px;display:flex;gap:6px;padding:5px 7px;border-radius:999px;background:#00000038;z-index:1;pointer-events:none}.felt[data-vira-pos=left-top] .table-center{left:auto;right:12px}.table-waiting{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;z-index:1;pointer-events:none;font-size:1.1rem;font-weight:800;color:var(--primary-ink);letter-spacing:.04em;text-shadow:0 1px 2px rgba(0,0,0,.35),0 2px 12px rgba(0,0,0,.25)}.table-waiting-line{display:inline-flex;align-items:center;gap:12px}.table-waiting-dots{display:inline-flex;gap:6px}.table-waiting-dots>span{width:10px;height:10px;border-radius:50%;background:var(--warn);box-shadow:0 1px 4px #00000059;animation:waitingPulse 1.2s ease-in-out infinite}.table-waiting-dots>span:nth-child(2){animation-delay:.2s}.table-waiting-dots>span:nth-child(3){animation-delay:.4s}@keyframes waitingPulse{0%,to{opacity:.3;transform:scale(1)}50%{opacity:1;transform:scale(1.4)}}.round-pip{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;font-size:.68rem;font-weight:900;color:var(--ink);background:#00000047;border:1px solid rgba(255,255,255,.14)}.round-pip.pending{color:transparent}.round-pip.tie{background:var(--ink-faint);color:var(--ink)}.round-pip.team-A{background:var(--team-a)}.round-pip.team-B{background:var(--team-b)}.table-play{display:grid;grid-template-areas:". top ." "left center right" ". bottom .";grid-template-columns:minmax(230px,1fr) minmax(24px,.12fr) minmax(230px,1fr);grid-template-rows:minmax(150px,1fr) auto minmax(150px,1fr);align-items:stretch;min-height:460px;position:relative;z-index:1}.seat-play{display:grid;justify-items:center;gap:6px;min-width:0}.seat-pos-bottom{align-self:end;grid-area:bottom;--seat-rot: 0deg;--enter-x: 0px;--enter-y: 80px}@media(min-width:901px){.table-shell--ingame .seat-pos-bottom{margin-bottom:64px}}.seat-pos-top{align-self:start;grid-area:top;--seat-rot: 180deg;--enter-x: 0px;--enter-y: -80px}.seat-pos-left{align-self:center;grid-area:left;justify-self:start;--seat-rot: 90deg;--enter-x: -80px;--enter-y: 0px}.seat-pos-right{align-self:center;grid-area:right;justify-self:end;--seat-rot: -90deg;--enter-x: 80px;--enter-y: 0px}@keyframes turnPulse{0%,to{opacity:.4}50%{opacity:1}}@keyframes winnerGlow{0%,to{box-shadow:0 0 0 1px var(--team) inset}50%{box-shadow:0 0 0 1px var(--team) inset,0 0 24px color-mix(in srgb,var(--team) 50%,transparent)}}.nameplate{z-index:6;display:flex;flex-direction:column;align-items:center;--team: var(--ink-soft);pointer-events:none;height:140px;justify-content:flex-end}.nameplate.nameplate-empty{justify-content:center;padding:10px 14px}.nameplate[data-team=A]{--team: var(--team-a)}.nameplate[data-team=B]{--team: var(--team-b)}.nameplate-avatar{position:relative;z-index:2;pointer-events:auto;line-height:0}.nameplate-bot-badge{position:absolute;top:-2px;right:-4px;font-size:.9rem;line-height:1;filter:drop-shadow(0 1px 2px rgba(0,0,0,.6));pointer-events:none}.nameplate-pill{position:relative;z-index:1;pointer-events:auto;margin-top:-20px;padding:22px 12px 4px;border-radius:14px;font-size:.78rem;font-weight:800;letter-spacing:.01em;line-height:1.1;color:var(--ink);background:var(--panel-solid);border:2px solid var(--line-strong);box-shadow:var(--shadow-soft),inset 0 1px #ffffff38;display:inline-flex;align-items:center;gap:8px;max-width:170px;transition:background .25s ease,box-shadow .25s ease,color .25s ease}.nameplate-dot{width:9px;height:9px;flex:none;border-radius:50%;background:var(--team);box-shadow:0 0 7px color-mix(in srgb,var(--team) 70%,transparent)}.nameplate-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:130px;display:inline-block}.nameplate.offline{opacity:.5;filter:grayscale(1)}.nameplate.in-mazo{opacity:.6}.nameplate-mazo{flex:none;font-size:.56rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--danger, #c0392b);border:1px solid currentColor;border-radius:999px;padding:0 .32em;line-height:1.4}.nameplate-off{flex:none;font-size:.82rem}.nameplate.on-turn .nameplate-pill{color:var(--primary-ink);background:linear-gradient(180deg,color-mix(in srgb,var(--primary) 50%,var(--bg-0)) 0%,var(--primary) 55%,var(--primary-deep) 100%);border-color:var(--primary-deep);animation:plateGlow 1.5s ease-in-out infinite}.nameplate.on-turn .nameplate-dot{background:var(--ink);box-shadow:none}@keyframes plateGlow{0%,to{box-shadow:inset 0 1px #ffffff8c,0 0 0 1px var(--primary),0 0 14px color-mix(in srgb,var(--primary) 38%,transparent),0 8px 16px #00000080}50%{box-shadow:inset 0 1px #ffffff8c,0 0 0 1px var(--primary),0 0 26px color-mix(in srgb,var(--primary) 66%,transparent),0 8px 16px #00000080}}.played-stack{display:flex;flex-wrap:nowrap;justify-content:center;align-items:center;gap:0;min-height:150px}.seat-pos-bottom .played-card:not(:first-child),.seat-pos-top .played-card:not(:first-child){margin-left:-60px}.seat-pos-left .played-stack,.seat-pos-right .played-stack{flex-direction:column;align-items:center;justify-content:center;width:150px;min-height:210px}.seat-pos-left .played-card:not(:first-child),.seat-pos-right .played-card:not(:first-child){margin-top:-86px}.played-card{display:grid;place-items:center;width:110px;min-height:162px;border-radius:9px;padding:0;cursor:grab;touch-action:none;transform:translate(var(--drag-x, 0px),var(--drag-y, 0px)) rotate(calc(var(--seat-rot, 0deg) + var(--fan-rot, 0deg)));transition:transform .16s ease;animation:playCard .36s cubic-bezier(.2,.72,.2,1.02)}.played-card.dragging{z-index:20;cursor:grabbing;transition:none;filter:drop-shadow(0 14px 22px rgba(0,0,0,.55))}@keyframes playCard{0%{opacity:0;transform:translate(var(--enter-x, 0px),var(--enter-y, 0px)) scale(1.14) rotate(calc(var(--seat-rot, 0deg) + var(--fan-rot, 0deg)))}70%{opacity:1}to{opacity:1;transform:translate(0) scale(1) rotate(calc(var(--seat-rot, 0deg) + var(--fan-rot, 0deg)))}}.played-card:nth-child(1){--fan-rot: -7deg}.played-card:nth-child(2){--fan-rot: 1deg}.played-card:nth-child(3){--fan-rot: 8deg}.played-card.empardada-hidden{--fan-rot: 0deg;z-index:0;pointer-events:none}.played-card.empardada-cover{--fan-rot: 0deg;z-index:1;cursor:default;pointer-events:none}.played-card.tapado-own .card-image{opacity:.7;outline:2px dashed color-mix(in srgb,var(--primary) 75%,transparent);outline-offset:-2px}.seat-pos-bottom .played-card.empardada-cover,.seat-pos-top .played-card.empardada-cover,.seat-pos-bottom .played-card.empardada-hidden,.seat-pos-top .played-card.empardada-hidden{margin-left:-110px}.seat-pos-left .played-card.empardada-cover,.seat-pos-right .played-card.empardada-cover,.seat-pos-left .played-card.empardada-hidden,.seat-pos-right .played-card.empardada-hidden{margin-top:-162px}.seat-pos-top .played-card.empardada-cover,.seat-pos-top .played-card.empardada-hidden{margin-left:-92px}.seat-pos-left .played-card.empardada-cover,.seat-pos-right .played-card.empardada-cover,.seat-pos-left .played-card.empardada-hidden,.seat-pos-right .played-card.empardada-hidden{margin-top:-136px}.seat-pos-top .played-card,.seat-pos-left .played-card,.seat-pos-right .played-card{width:92px;min-height:136px}@keyframes dropIn{0%{opacity:0}to{opacity:1}}.played-card .card-image{box-shadow:0 8px 16px #0006}.mazo-clip{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden;border-radius:18px;z-index:3}.mazo{position:absolute;width:92px;height:160px;filter:drop-shadow(0 12px 18px rgba(0,0,0,.5));animation:dropIn .3s ease;pointer-events:auto}.mazo-pos-bottom-left{bottom:-100px;left:-22px}.mazo-pos-right-bottom{bottom:-100px;right:-22px}.mazo-pos-top-right{top:-100px;right:-22px}.mazo-pos-left-top{top:-100px;left:-22px}.deck-stack{position:absolute;left:0;width:92px;height:138px;z-index:2}.mazo-pos-bottom-left .deck-stack,.mazo-pos-right-bottom .deck-stack{bottom:0}.mazo-pos-top-right .deck-stack,.mazo-pos-left-top .deck-stack{top:0}.deck-back{position:absolute;top:0;left:0;width:92px;height:auto;border-radius:8px;box-shadow:0 1px #ffffff14 inset,0 4px 10px #0006}.deck-back:nth-child(1){transform:translate(-3px,3px) rotate(-3deg)}.deck-back:nth-child(2){transform:translate(1px,-1px) rotate(1.5deg)}.deck-back:nth-child(3){transform:translate(0)}.vira-peek{position:absolute;left:50%;width:88px;transform:translate(-50%) rotate(-5deg);z-index:1}.mazo-pos-bottom-left .vira-peek{bottom:60px;transform:translate(-50%) rotate(35deg)}.mazo-pos-right-bottom .vira-peek{bottom:60px;transform:translate(-50%) rotate(-35deg)}.mazo-pos-top-right .vira-peek{top:60px;transform:translate(-50%) rotate(215deg)}.mazo-pos-left-top .vira-peek{top:60px;transform:translate(-50%) rotate(145deg)}.mazo-pos-bottom-left .deck-stack{transform:rotate(-55deg);transform-origin:50% 50%}.mazo-pos-right-bottom .deck-stack{transform:rotate(55deg);transform-origin:50% 50%}.mazo-pos-top-right .deck-stack{transform:rotate(-55deg);transform-origin:50% 50%}.mazo-pos-left-top .deck-stack{transform:rotate(55deg);transform-origin:50% 50%}.vira-peek .card-image{width:88px;height:auto;border-radius:7px;box-shadow:0 0 0 2px var(--primary-deep),0 8px 16px #0000008c}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:20px;background:#0408069e;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .18s ease;overscroll-behavior:contain}.modal-overlay.modal-overlay-subtle{background:#04080652;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.pass-confirm{width:min(360px,92vw);padding:18px 20px 16px;border-radius:14px;background:var(--panel-solid);border:1px solid var(--line);box-shadow:var(--shadow);text-align:center}.pass-confirm-title{margin:0 0 6px;font-size:1.02rem;font-weight:800;color:var(--ink)}.pass-confirm-detail{margin:0 0 14px;font-size:.86rem;color:var(--ink-soft);line-height:1.4}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.wait-toast{position:fixed;top:max(14px,env(safe-area-inset-top,0px));left:50%;transform:translate(-50%);z-index:90;display:flex;align-items:center;gap:10px;max-width:min(440px,calc(100% - 20px));padding:10px 14px;border-radius:14px;font-size:.88rem;font-weight:600;color:var(--ink);background:var(--panel-grad);border:1px solid color-mix(in srgb,var(--team-b) 55%,transparent);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:fadeIn .2s ease}@media(min-width:901px){.wait-toast{left:14px;transform:none}}.wait-icon{flex:0 0 auto;filter:grayscale(1);font-size:1.15rem;line-height:1}.wait-toast-body{display:flex;flex-direction:column;gap:1px;min-width:0;line-height:1.3}.wait-toast-line{display:block;overflow-wrap:break-word;word-break:break-word}.wait-toast-meta{display:block;font-size:.78rem;font-weight:500;color:var(--ink-soft)}.flor-forfeit-toast{position:fixed;top:70px;left:50%;transform:translate(-50%);z-index:92;display:flex;align-items:flex-start;gap:12px;max-width:min(440px,calc(100% - 28px));padding:12px 16px;border-radius:14px;background:var(--panel-grad);border:1px solid color-mix(in srgb,var(--danger) 60%,transparent);box-shadow:0 14px 28px #00000073,0 0 0 1px color-mix(in srgb,var(--danger) 30%,transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:fadeIn .22s ease;color:var(--ink)}.flor-forfeit-icon{font-size:1.5rem;line-height:1;filter:grayscale(1) opacity(.6);margin-top:2px}.flor-forfeit-body{display:flex;flex-direction:column;gap:3px;font-size:.82rem;line-height:1.38}.flor-forfeit-body strong{font-size:.92rem;color:color-mix(in srgb,var(--danger) 35%,var(--ink))}.wait-secs{font-weight:900;color:var(--team-b);font-variant-numeric:tabular-nums}.action-toast{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:95;display:flex;flex-direction:column;align-items:center;gap:2px;max-width:min(440px,calc(100% - 28px));padding:8px 16px;border-radius:14px;font-size:.92rem;text-align:center;color:var(--ink);background:var(--panel-grad);border:1px solid var(--line);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:actionToastCenterIn .22s ease-out}@keyframes actionToastCenterIn{0%{opacity:0;transform:translate(-50%,calc(-50% - 12px))}to{opacity:1;transform:translate(-50%,-50%)}}.action-toast.team-A{border-color:color-mix(in srgb,var(--team-a) 60%,transparent);box-shadow:0 12px 28px #00000059,0 0 0 2px color-mix(in srgb,var(--team-a) 20%,transparent)}.action-toast.team-B{border-color:color-mix(in srgb,var(--team-b) 60%,transparent);box-shadow:0 12px 28px #00000059,0 0 0 2px color-mix(in srgb,var(--team-b) 20%,transparent)}.action-toast-name{font-weight:800;color:var(--ink)}.action-toast.team-A .action-toast-name{color:var(--team-a)}.action-toast.team-B .action-toast-name{color:var(--team-b)}.action-toast-text{font-weight:600;white-space:normal;overflow-wrap:break-word;word-break:break-word;line-height:1.3}@keyframes actionToastIn{0%{opacity:0;transform:translate(-50%,-10px)}to{opacity:1;transform:translate(-50%)}}.copy-notice{position:fixed;bottom:26px;left:50%;transform:translate(-50%);z-index:95;display:flex;align-items:center;gap:8px;padding:10px 18px;border-radius:999px;font-size:.9rem;font-weight:600;color:var(--ink);background:var(--panel-grad);border:1px solid color-mix(in srgb,var(--team-a) 50%,transparent);box-shadow:var(--shadow);animation:actionToastIn .18s ease-out}.copy-notice span{color:var(--team-a);font-weight:900}@keyframes modalPop{0%{opacity:0;transform:translateY(14px) scale(.94)}to{opacity:1;transform:none}}.result-banner{position:relative;width:min(94%,580px);max-height:90svh;overflow-y:auto;padding:26px 28px;text-align:center;border-radius:var(--radius-lg);background:var(--panel-grad);border:1px solid var(--line-strong);border-top:4px solid var(--team);box-shadow:var(--shadow),0 30px 70px #0009;animation:modalPop .24s ease;--team: var(--primary)}.result-banner.team-A{--team: var(--team-a)}.result-banner.team-B{--team: var(--team-b)}.result-eyebrow{margin:0 0 6px;color:var(--ink-faint);font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.result-title{margin:0;font-size:1.45rem;font-weight:900;color:var(--team);line-height:1.2;letter-spacing:-.005em}.result-detail{margin:10px 0 0;color:var(--ink-soft);font-size:.9rem;font-variant-numeric:tabular-nums}.result-detail strong{color:var(--ink);font-weight:800}.result-banner.game-over{padding:32px 28px 28px;box-shadow:var(--shadow),0 30px 70px #0009,0 0 80px color-mix(in srgb,var(--team) 28%,transparent)}.result-banner.game-over:before{content:"";position:absolute;top:-8px;left:50%;transform:translate(-50%);width:60%;height:80px;background:radial-gradient(ellipse at top,color-mix(in srgb,var(--team) 45%,transparent) 0%,transparent 70%);pointer-events:none;opacity:.6}.result-banner.game-over .result-title{font-size:1.95rem;text-shadow:0 2px 14px color-mix(in srgb,var(--team) 35%,transparent)}.result-banner.game-over .result-eyebrow{color:var(--team);opacity:.85}.showdown{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px}.reveal{padding:10px;border-radius:12px;border:1px solid var(--line);border-left:3px solid var(--team);background:#ffffff08;--team: var(--ink-soft)}.reveal[data-team=A]{--team: var(--team-a)}.reveal[data-team=B]{--team: var(--team-b)}.reveal.ready{border-left-color:var(--primary);box-shadow:0 0 0 1px color-mix(in srgb,var(--primary) 50%,transparent)}.reveal.ready .reveal-name,.reveal.ready .reveal-team{color:var(--primary-deep)}.continue-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:14px;margin-top:18px}.continue-row button{min-width:140px}@media(max-width:720px){.result-banner{padding:22px 18px;width:min(96%,580px)}.result-eyebrow{font-size:.7rem}.result-title{font-size:1.3rem}.result-banner.game-over{padding:28px 18px 22px}.result-banner.game-over .result-title{font-size:1.65rem}.continue-row{flex-direction:column;align-items:stretch;gap:10px;margin-top:16px}.continue-row button{min-width:0;width:100%;min-height:48px}.continue-row .muted{text-align:center;padding-bottom:4px}}@media(max-width:480px){.hand-result{padding:12px 16px;max-width:calc(100% - 16px);gap:8px}.hand-result-line{font-size:.96rem}.hand-result-actions{margin-top:10px;flex-direction:column;gap:8px}.hand-result-actions button{min-width:0;width:100%;min-height:44px}.hand-result-actions .muted{font-size:.72rem}}.reveal-head{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:8px}.reveal-name{font-weight:800;font-size:.84rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reveal-team{flex:none;font-size:.64rem;font-weight:800;letter-spacing:.04em;color:var(--team)}.reveal-cards{display:flex;gap:5px;justify-content:center}.reveal-card{width:48px;height:auto;border-radius:5px;box-shadow:0 3px 8px #0006}.reveal-values{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin-top:9px}.reveal-chip{padding:3px 9px;border-radius:999px;font-size:.72rem;font-weight:700;color:var(--ink-soft);background:#ffffff0d;border:1px solid var(--line)}.reveal-chip.flor{color:var(--warn-deep);border-color:color-mix(in srgb,var(--warn) 40%,transparent)}.reveal-chip.win{color:var(--warn-ink);background:linear-gradient(180deg,color-mix(in srgb,var(--warn) 50%,var(--bg-0)),var(--warn));border-color:var(--primary-deep)}@media(max-width:480px){.showdown{grid-template-columns:1fr}}.hand{position:relative;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:12px;padding:6px 12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel-grad);box-shadow:var(--shadow);height:120px;flex:none}.hand.my-turn{border-color:var(--primary);animation:handTurnGlow 1.8s ease-in-out infinite}@keyframes handTurnGlow{0%,to{box-shadow:var(--shadow),0 0 0 1px var(--primary),0 -2px 18px -6px color-mix(in srgb,var(--primary) 45%,transparent)}50%{box-shadow:var(--shadow),0 0 0 1px var(--primary),0 -3px 32px -2px color-mix(in srgb,var(--primary) 78%,transparent)}}@media(prefers-reduced-motion:reduce){.hand.my-turn{animation:none;box-shadow:var(--shadow),0 0 0 1px var(--primary),0 -2px 22px -4px color-mix(in srgb,var(--primary) 60%,transparent)}}.mazo-card{opacity:.72}.hand .actions{overflow:visible}.hand .cards{flex-wrap:nowrap!important;gap:0!important;justify-content:center;position:relative}.hand .cards .card-wrap{position:relative;height:70px;overflow:visible;display:flex;flex-direction:column;align-items:center;z-index:4;margin-left:-54px;transition:transform .18s ease,z-index 0s .18s}.hand .cards .card-wrap:first-child{margin-left:0}.hand .cards .card-wrap:hover,.hand .cards .card-wrap:focus-within{transform:translateY(-12px);z-index:10;transition:transform .18s ease,z-index 0s}.hand .cards .card-wrap>.card{position:relative;top:-100px;margin-bottom:-100px}.hand .cards .card-wrap>.card:after{content:"";position:absolute;left:0;right:0;top:-32px;height:32px}.hand .cards .card-wrap:before{content:"";position:absolute;left:50%;top:-8px;width:110%;height:26px;transform:translate(-50%);background:radial-gradient(50% 100% at 50% 0%,rgba(0,0,0,.55),transparent 80%);pointer-events:none;z-index:-1}.hand .cards .card-wrap.dragging>.card{top:0;margin-bottom:0}.hand .cards .card-wrap .pass-card{position:absolute;bottom:8px;left:50%;transform:translate(-50%);opacity:0;pointer-events:none;transition:opacity .15s ease,background .15s ease,color .15s ease;z-index:11;font-size:.7rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:4px 10px;min-height:22px;min-width:0;background:var(--panel-solid);color:var(--ink);border:1px solid var(--line-strong);border-radius:999px;box-shadow:var(--shadow-soft)}.hand .cards .card-wrap:hover .pass-card,.hand .cards .card-wrap:focus-within .pass-card{opacity:1;pointer-events:auto}.hand .cards .card-wrap .pass-card:hover{background:var(--primary-deep);color:var(--primary-ink);border-color:var(--primary-deep);transform:translate(-50%)}@media(hover:none){.hand .cards .card-wrap .pass-card{opacity:.92;pointer-events:auto;touch-action:manipulation}}.hand .cards{flex:1;min-width:0;justify-content:center}@media(min-width:1100px){.hand .cards{position:absolute;left:50%;transform:translate(-50%);flex:none;width:max-content}}.hand .actions{flex:none;min-width:0;max-width:360px}.hand .actions .action-group-free{flex-wrap:wrap;max-width:100%}.hand .actions .btn-default,.hand .actions .btn-split-group{--btn-bg: var(--accept);--btn-ink: var(--accept-ink);--btn-shadow: var(--accept-deep)}.hand .actions .btn-destructive{--btn-bg: var(--panel-solid);--btn-ink: var(--danger);--btn-shadow: color-mix(in srgb, var(--danger) 35%, var(--panel-solid))}.hand-me-dock{display:flex;flex-direction:column;align-items:center;gap:6px;padding:6px 14px 6px 10px;flex:none;border-right:1px solid color-mix(in srgb,var(--line) 70%,transparent)}.hand-me-dock-avatar .pf-face{width:64px!important;height:64px!important}.hand-me-dock-score{font-size:1.1rem;font-weight:800;color:var(--ink);line-height:1}.hand-me-dock-score small{font-size:.7rem;color:var(--ink-faint);font-weight:600;margin-left:2px}.hand-me-dock-score[data-team=A]{color:var(--team-a, var(--team-b))}.hand-me-dock-score[data-team=B]{color:var(--team-b, var(--team-a))}.hand-me-dock-chicos{margin-left:6px;font-size:.65rem;color:var(--ink-faint);font-weight:600;border:1px solid var(--line);padding:1px 5px;border-radius:4px}.hand-me-dock-avatar{display:grid;place-items:center}.hand-me-dock-name{font-size:.72rem;color:var(--ink-soft);font-weight:600;text-align:center;max-width:80px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hand-me-dock-name small{color:var(--ink-faint);margin-left:2px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;font-family:inherit;font-weight:700;font-size:.92rem;line-height:1;letter-spacing:.01em;cursor:pointer;-webkit-user-select:none;user-select:none;text-transform:none;border:0;border-radius:var(--btn-radius);min-height:40px;padding:0 18px;background:var(--btn-bg, var(--bg-1));color:var(--btn-ink, var(--ink));box-shadow:0 var(--btn-shadow-offset) 0 0 var(--btn-shadow, var(--btn-shadow-color)),inset 0 1px #ffffff38;transition:transform .08s cubic-bezier(.34,1.56,.64,1),box-shadow .08s ease,background-color .15s ease,color .15s ease,filter .15s ease;margin-bottom:var(--btn-shadow-offset)}.btn:focus-visible{outline:3px solid color-mix(in srgb,var(--info) 60%,transparent);outline-offset:2px}.btn:disabled,.btn[aria-disabled=true]{opacity:.45;cursor:not-allowed;pointer-events:none;filter:grayscale(.2)}.btn-default{--btn-bg: var(--bg-1);--btn-ink: var(--ink)}.btn-accept{--btn-bg: var(--accept);--btn-ink: var(--accept-ink)}.btn-destructive{--btn-bg: var(--danger-deep);--btn-ink: var(--danger-ink)}.btn-secondary{--btn-bg: var(--info-deep);--btn-ink: var(--info-ink)}.btn-outline{--btn-bg: var(--panel-solid);--btn-ink: var(--ink)}.btn-ghost{--btn-bg: transparent;--btn-ink: var(--ink);--btn-shadow: transparent;margin-bottom:var(--btn-shadow-offset)}.btn-ghost:hover:not(:disabled):not([aria-disabled=true]){background:color-mix(in srgb,var(--ink) 8%,transparent);filter:none}.btn-link{--btn-bg: transparent;--btn-ink: var(--info-deep);--btn-shadow: transparent;padding:0;min-height:auto;margin-bottom:0;font-weight:700}.btn-link:hover:not(:disabled):not([aria-disabled=true]){text-decoration:underline;filter:none}.btn-sm{min-height:34px;padding:0 14px;font-size:.8rem;border-radius:var(--btn-radius-sm)}.btn-lg{min-height:48px;padding:0 26px;font-size:1rem;--btn-shadow-offset: 5px}.btn-icon{min-height:40px;width:40px;padding:0;border-radius:999px}.btn-arcade,.btn{--btn-frame: var(--ink);--btn-outline-light: var(--bg-0);--btn-focus: var(--primary);position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;font-family:inherit;font-weight:700;font-size:.92rem;line-height:1;letter-spacing:.01em;cursor:pointer;-webkit-user-select:none;user-select:none;text-transform:none;border:0;border-radius:9999px;min-height:40px;background-color:var(--btn-frame);color:var(--btn-ink, var(--ink));isolation:isolate;transform:translate(-4px,-4px);outline:2px solid transparent;outline-offset:5px;transition:transform .15s ease,box-shadow .15s ease,filter .12s ease;box-shadow:.5px .5px 0 0 var(--btn-frame),1px 1px 0 0 var(--btn-frame),1.5px 1.5px 0 0 var(--btn-frame),2px 2px 0 0 var(--btn-frame),2.5px 2.5px 0 0 var(--btn-frame),3px 3px 0 0 var(--btn-frame),0 0 0 2px var(--btn-outline-light),.5px .5px 0 2px var(--btn-outline-light),1px 1px 0 2px var(--btn-outline-light),1.5px 1.5px 0 2px var(--btn-outline-light),2px 2px 0 2px var(--btn-outline-light),2.5px 2.5px 0 2px var(--btn-outline-light),3px 3px 0 2px var(--btn-outline-light),3.5px 3.5px 0 2px var(--btn-outline-light),4px 4px 0 2px var(--btn-outline-light)}.btn-arcade:before,.btn:before{content:"";position:absolute;top:1px;right:1px;bottom:1px;left:1px;border:2px solid rgba(255,255,255,.3);border-radius:9999px;background-color:var(--btn-bg, var(--primary));background-image:radial-gradient(rgba(255,255,255,.1) 18%,transparent 20%),radial-gradient(rgba(255,255,255,.14) 18%,transparent 20%);background-position:0 0,4px 4px;background-size:8px 8px;animation:arcade-dots .5s infinite linear;transition:background-color .12s ease;pointer-events:none;z-index:-1}.btn-arcade:hover:not(:disabled):not([aria-disabled=true]):before,.btn:hover:not(:disabled):not([aria-disabled=true]):before{background-color:color-mix(in srgb,var(--btn-bg, var(--primary)) 88%,var(--ink))}.btn-arcade:active:not(:disabled):not([aria-disabled=true]),.btn:active:not(:disabled):not([aria-disabled=true]){transform:translate(0);box-shadow:0 0 0 2px var(--btn-outline-light)}.btn-arcade:active:not(:disabled):not([aria-disabled=true]):before,.btn:active:not(:disabled):not([aria-disabled=true]):before{background-color:color-mix(in srgb,var(--btn-bg, var(--primary)) 80%,var(--ink))}.btn-arcade:focus-visible,.btn:focus-visible{outline-color:var(--btn-focus);outline-style:dashed}.btn-arcade:disabled,.btn-arcade[aria-disabled=true],.btn:disabled,.btn[aria-disabled=true]{cursor:not-allowed;opacity:.5;filter:grayscale(.3)}.btn-ghost,.btn-link{background:transparent;box-shadow:none;transform:none;isolation:auto}.btn-ghost:before,.btn-link:before{display:none}.btn-ghost:hover:not(:disabled):not([aria-disabled=true]),.btn-link:hover:not(:disabled):not([aria-disabled=true]){transform:none;box-shadow:none}.btn-arcade-accept{--btn-bg: var(--primary);--btn-ink: var(--ink)}.btn-arcade-destructive{--btn-bg: var(--danger-deep);--btn-ink: var(--danger-ink)}.btn-arcade-warn{--btn-bg: var(--warn);--btn-ink: var(--warn-ink)}:root[data-theme=dark] .btn-arcade,:root[data-theme=dark] .btn-arcade-accept{--btn-ink: var(--primary-ink)}:root[data-theme=dark] .btn,:root[data-theme=dark] .btn-arcade,:root[data-theme=dark] .btn-split-group{--btn-frame: var(--rail-1)}@keyframes arcade-dots{0%{background-position:0 0,4px 4px}to{background-position:8px 0,12px 4px}}.btn-split-group{--btn-bg: var(--bg-1);--btn-ink: var(--ink);--btn-frame: var(--ink);--btn-outline-light: var(--bg-0);--btn-focus: var(--warn);position:relative;display:inline-flex;align-items:stretch;min-height:40px;border:0;border-radius:9999px;background-color:var(--btn-frame);isolation:isolate;transform:translate(-4px,-4px);outline:2px solid transparent;outline-offset:5px;transition:transform .15s ease,box-shadow .15s ease;margin:0;overflow:hidden;box-shadow:.5px .5px 0 0 var(--btn-frame),1px 1px 0 0 var(--btn-frame),1.5px 1.5px 0 0 var(--btn-frame),2px 2px 0 0 var(--btn-frame),2.5px 2.5px 0 0 var(--btn-frame),3px 3px 0 0 var(--btn-frame),0 0 0 2px var(--btn-outline-light),.5px .5px 0 2px var(--btn-outline-light),1px 1px 0 2px var(--btn-outline-light),1.5px 1.5px 0 2px var(--btn-outline-light),2px 2px 0 2px var(--btn-outline-light),2.5px 2.5px 0 2px var(--btn-outline-light),3px 3px 0 2px var(--btn-outline-light),3.5px 3.5px 0 2px var(--btn-outline-light),4px 4px 0 2px var(--btn-outline-light)}.btn-split-group:before{content:"";position:absolute;top:1px;right:1px;bottom:1px;left:1px;border:2px solid rgba(255,255,255,.3);border-radius:9999px;background-color:var(--btn-bg);background-image:radial-gradient(rgba(255,255,255,.1) 18%,transparent 20%),radial-gradient(rgba(255,255,255,.14) 18%,transparent 20%);background-position:0 0,4px 4px;background-size:8px 8px;animation:arcade-dots .5s infinite linear;pointer-events:none;z-index:-1}.btn-split-group:hover:not(:has(:disabled)):before{background-color:color-mix(in srgb,var(--btn-bg, var(--primary)) 88%,var(--ink))}.btn-split-group:has(>.btn:active){transform:translate(0);box-shadow:0 0 0 2px var(--btn-outline-light)}.btn-split-group:has(>.btn:active):before{background-color:color-mix(in srgb,var(--btn-bg, var(--primary)) 80%,var(--ink))}.btn-split-group:focus-within{outline-color:var(--btn-focus);outline-style:dashed}.btn-split-group>.btn{border:0;border-radius:0;background:transparent;box-shadow:none;min-height:36px;margin-bottom:0;color:var(--ink);transform:none;isolation:auto}.btn-split-group>.btn:before{display:none}.btn-split-group>.btn:hover:not(:disabled):not([aria-disabled=true]),.btn-split-group>.btn:active{transform:none;box-shadow:none}.btn-split-group>.btn+.btn{border-left:1px solid color-mix(in srgb,var(--ink-faint) 28%,transparent)}.btn-split-group>.btn:hover:not(:disabled){background:color-mix(in srgb,var(--primary) 18%,transparent)}.btn-split-group>.btn.active,.btn-split-group>.btn[aria-expanded=true]{background:color-mix(in srgb,var(--primary) 28%,transparent)}.btn-split-group>.btn:focus-visible{outline-offset:-2px}.btn-split-toggle{width:34px;padding:0;font-size:.78rem;color:var(--ink-soft)}.lang-picker{position:relative;display:inline-flex}.lang-picker-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:110;min-width:160px;background:var(--panel-solid);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow-lift);padding:4px;display:flex;flex-direction:column;gap:2px;animation:actionToastIn .14s ease-out}.lang-picker-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;border:0;background:transparent;color:var(--ink);font-weight:600;font-size:.92rem;cursor:pointer;text-align:left;transition:background .12s ease}.lang-picker-item:hover{background:color-mix(in srgb,var(--ink) 8%,transparent)}.lang-picker-item.active{background:color-mix(in srgb,var(--primary) 20%,transparent);color:var(--primary-deep)}.nameplate-cell-bottom{display:none}.rank-help-btn{position:absolute;top:8px;right:8px;width:32px;height:32px;min-width:32px;min-height:32px;box-sizing:border-box;padding:0;margin:0;display:grid;place-items:center;border-radius:50%;aspect-ratio:1 / 1;border:1px solid color-mix(in srgb,var(--ink-soft) 30%,transparent);background:color-mix(in srgb,var(--ink-soft) 10%,transparent);cursor:pointer;font-size:1rem;line-height:1;color:var(--ink);z-index:5;transition:background .15s ease,border-color .15s ease,transform .1s ease}.rank-help-btn:hover:not(:disabled){background:color-mix(in srgb,var(--primary) 28%,transparent);border-color:color-mix(in srgb,var(--primary) 55%,transparent)}.rank-help-btn:active:not(:disabled){transform:scale(.95)}.rank-help-btn:disabled{opacity:.35;cursor:not-allowed}.actions{display:flex;flex-wrap:wrap;justify-content:center;align-items:stretch;gap:12px;width:100%}.action-group{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;padding:9px 12px}.action-group-envidos{padding-top:14px;padding-bottom:14px}.action-label{width:100%;text-align:center;color:var(--ink-faint);font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.action-group .btn{min-height:40px}.action-group>button:not(.btn){display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 13px;font-size:.9rem;border-radius:8px;border:1px solid color-mix(in srgb,var(--ink-soft) 25%,transparent);background:color-mix(in srgb,var(--ink-soft) 14%,transparent);color:var(--ink);transition:background .15s ease,border-color .15s ease,transform .08s ease;cursor:pointer}.action-group>button:not(.btn):hover:not(:disabled){background:color-mix(in srgb,var(--primary) 28%,transparent);border-color:color-mix(in srgb,var(--primary) 45%,transparent)}.action-group>button:not(.btn):disabled{opacity:.5;cursor:not-allowed}.action-group>button.accept:not(.btn){background:color-mix(in srgb,var(--primary) 65%,transparent);border-color:color-mix(in srgb,var(--primary) 60%,transparent);color:var(--warn-ink);font-weight:700}.action-group>button.danger:not(.btn){background:color-mix(in srgb,var(--team-b) 60%,transparent);border-color:color-mix(in srgb,var(--team-b) 50%,transparent);color:var(--team-b-ink);font-weight:700}.action-group>button.ghost:not(.btn){background:transparent;box-shadow:none}.action-group>button.ghost:not(.btn):hover:not(:disabled){background:color-mix(in srgb,var(--primary) 18%,transparent)}.custom-bet{display:inline-flex;align-items:stretch;gap:6px}.custom-bet input{width:58px;min-height:40px;padding:8px;text-align:center;border-radius:8px}.points-picker{display:inline-flex;align-items:center;gap:8px;animation:actionToastIn .16s ease-out}.points-stepper{display:inline-flex;align-items:stretch;isolation:isolate;border:1px solid color-mix(in srgb,var(--ink-soft) 25%,transparent);border-radius:8px;overflow:hidden}button.points-step{width:34px;min-height:38px;padding:0;margin:0;background:transparent;background-color:transparent;border:0;border-radius:0;color:var(--ink);font-size:1.15rem;font-weight:700;cursor:pointer;transition:background .15s ease,color .15s ease;transform:none;box-shadow:none;isolation:auto;outline:0;outline-offset:0}button.points-step:before{display:none}button.points-step+.points-input,.points-input+button.points-step{border-left:1px solid color-mix(in srgb,var(--ink-soft) 25%,transparent)}button.points-step:hover:not(:disabled):not([aria-disabled=true]){background:color-mix(in srgb,var(--primary) 22%,transparent);color:var(--primary-deep);transform:none;box-shadow:none}button.points-step:focus-visible{outline:2px solid color-mix(in srgb,var(--primary) 70%,transparent);outline-offset:-2px;z-index:3}.points-input{border:0;border-radius:0;background:transparent;z-index:1}.points-step:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.points-input{width:52px;min-height:38px;padding:0;text-align:center;border:0;background:transparent;color:var(--ink);font-weight:700;font-size:1rem;-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.points-input::-webkit-outer-spin-button,.points-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.points-submit{min-height:40px;padding:6px 14px;font-weight:800}.points-cap{font-size:.72rem;letter-spacing:.06em;text-transform:uppercase}.action-group button.active{background:color-mix(in srgb,var(--primary) 30%,transparent);border-color:var(--primary);color:var(--primary-deep)}.cards{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.card-wrap{display:grid;justify-items:center;gap:14px}.card{display:grid;place-items:center;width:118px;aspect-ratio:.68;background:transparent;border:0;padding:0;box-shadow:none;border-radius:9px;transition:transform .1s cubic-bezier(.4,0,.2,1),filter .12s ease;touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}.card:hover:not(:disabled,[aria-disabled=true]){transform:translateY(-8px) scale(1.02);filter:drop-shadow(0 14px 18px rgba(0,0,0,.5))}.card:active:not(:disabled,[aria-disabled=true]){transform:translateY(-10px) scale(.98);filter:drop-shadow(0 16px 22px rgba(0,0,0,.4));transition:transform .06s cubic-bezier(.4,0,.2,1),filter .08s ease}.card-wrap.dragging>.card{cursor:grabbing;filter:drop-shadow(0 18px 28px rgba(0,0,0,.55));opacity:.95}.card-wrap.returning>.card{transition:transform .24s cubic-bezier(.5,1.6,.55,1)!important}.card-wrap>.card{touch-action:none;cursor:grab}.card-wrap>.card[aria-disabled=true]{cursor:not-allowed}.felt.drop-enabled{transition:box-shadow .18s ease,outline-color .18s ease;outline:2px dashed transparent;outline-offset:-10px}.felt.drag-target{outline-color:color-mix(in srgb,var(--primary) 70%,transparent);box-shadow:inset 0 0 80px color-mix(in srgb,var(--primary) 22%,transparent),inset 0 0 50px #0000002e,inset 0 1px #ffffff29,inset 0 -1px #0003,0 0 0 1px color-mix(in srgb,var(--primary) 50%,transparent),var(--shadow)}.card-image{display:block;width:100%;height:auto;border-radius:8px;pointer-events:none;-webkit-user-select:none;user-select:none;box-shadow:0 8px 18px #00000052}.pass-card{min-height:36px;padding:6px 12px;font-size:.78rem;background:#ffffff0f;color:var(--ink-soft);border:1px solid var(--line-strong);box-shadow:none}.empardada-hint{position:absolute;top:16px;left:50%;transform:translate(-50%);z-index:4;max-width:min(440px,80%);text-align:center;font-size:.84rem;color:var(--ink);background:color-mix(in srgb,var(--primary) 18%,var(--panel-solid));border:1px solid color-mix(in srgb,var(--primary) 45%,transparent);border-radius:999px;padding:8px 16px;line-height:1.3;box-shadow:0 6px 14px #0000002e;pointer-events:none}.empardada-hint em{font-style:normal;font-weight:800;color:var(--primary-deep)}.empardada-card{position:relative;cursor:pointer}.hand .cards.cards-empardada>.card-wrap{margin-left:16px}.hand .cards.cards-empardada>.card-wrap:first-child{margin-left:0}.empardada-card .card:active:not(:disabled){transform:translateY(-4px) scale(1.02);filter:drop-shadow(0 0 14px color-mix(in srgb,var(--primary) 60%,transparent))}.empardada-card-lower .card{opacity:.45;filter:grayscale(.5);cursor:not-allowed}.empardada-card-lower .card:active{transform:none;filter:grayscale(.5)}.empardada-hint-matar-tapado{display:flex;align-items:center;gap:12px;text-align:left;pointer-events:auto;border-radius:16px;max-width:min(440px,calc(100% - 24px))}.empardada-hint-matar-tapado>span{min-width:0}.empardada-hint-cancel{flex:0 0 auto;min-height:28px!important;padding:4px 10px!important;font-size:.7rem!important}.pair-pass-3rd{display:block;margin-top:6px;font-size:.7rem;padding:4px 8px;min-height:0;line-height:1.3;font-weight:700;color:var(--ink-soft);border:1px dashed color-mix(in srgb,var(--ink-soft) 50%,transparent);background:transparent}.pair-pass-3rd:hover{color:var(--ink);background:color-mix(in srgb,var(--ink-soft) 18%,transparent)}.error-toast{position:fixed;top:max(14px,env(safe-area-inset-top,0px));left:50%;transform:translate(-50%);z-index:110;display:flex;align-items:center;gap:10px;max-width:min(440px,calc(100% - 20px));padding:10px 12px 10px 16px;border-radius:12px;background:var(--danger);color:var(--danger-ink);font-weight:600;box-shadow:var(--shadow);animation:actionToastIn .22s ease-out}.error-toast-text{flex:1;min-width:0;font-size:.9rem;line-height:1.35;overflow-wrap:break-word}.error-toast-close{flex:none;width:28px;height:28px;padding:0;border:0;border-radius:999px;background:#ffffff24;color:var(--danger-ink);font-size:1.25rem;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.error-toast-close:hover{background:#ffffff3d}@media(max-width:900px){.hand{flex-direction:column;height:auto;min-height:120px}.hand .actions{justify-content:center;width:100%}.nameplate-avatar .pf-face{width:72px!important;height:72px!important}.nameplate-pill{max-width:130px;margin-top:-20px;padding:24px 10px 5px;font-size:.74rem}.nameplate-text{max-width:96px}.nameplate-score{font-size:1.2rem}}@media(max-width:720px){.learn-header{display:flex;flex-wrap:wrap}.learn-header>button,.learn-header>.learn-title{justify-self:auto;text-align:left}.app{padding:0}.table-shell{min-height:100svh;padding:0;gap:12px;border-radius:0}.teams-panel{flex-wrap:wrap}.felt{border-radius:14px;padding:12px}.table-play{grid-template-columns:minmax(100px,1fr) minmax(16px,.1fr) minmax(100px,1fr);grid-template-rows:minmax(74px,1fr) auto minmax(74px,1fr);min-height:220px}.played-card{width:88px;min-height:130px}.seat-pos-top .played-card,.seat-pos-left .played-card,.seat-pos-right .played-card{width:72px;min-height:106px}.seat-pos-bottom .played-card:not(:first-child),.seat-pos-top .played-card:not(:first-child){margin-left:-48px}.seat-pos-left .played-stack,.seat-pos-right .played-stack{width:118px;min-height:172px}.seat-pos-left .played-card:not(:first-child),.seat-pos-right .played-card:not(:first-child){margin-top:-70px}.played-card span{font-size:.6rem}.mazo{width:72px;height:128px}.mazo-pos-bottom-left{bottom:-68px;left:-16px}.mazo-pos-right-bottom{bottom:-68px;right:-16px}.mazo-pos-top-right{top:-68px;right:-16px}.mazo-pos-left-top{top:-68px;left:-16px}.deck-stack{width:72px;height:108px}.deck-back{width:72px}.vira-peek{width:70px}.mazo-pos-bottom-left .vira-peek,.mazo-pos-right-bottom .vira-peek{bottom:35px}.mazo-pos-top-right .vira-peek,.mazo-pos-left-top .vira-peek{top:35px}.vira-peek .card-image{width:70px}.card{width:30%;min-width:94px;max-width:128px}.nameplate-avatar .pf-face{width:60px!important;height:60px!important}.nameplate-pill{max-width:110px;margin-top:-18px;padding:22px 9px 4px;border-radius:11px;font-size:.68rem;gap:5px}.nameplate-text{max-width:78px}.nameplate-bot-badge{font-size:.72rem}.table-area{column-gap:4px;row-gap:2px}.felt{min-height:240px}}.learn-cta{margin-top:4px;width:100%;min-height:42px;font-weight:700}.learn-home,.lesson-runner{width:min(100%,720px);margin:0 auto;display:grid;gap:16px}.learn-header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;min-height:44px}.learn-header>.learn-title{grid-column:2;text-align:center}.learn-header>.learn-back{grid-column:1;justify-self:start}body[data-learn-scrolled="1"] .learn-header{padding-left:56px}.learn-back{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;min-height:44px;padding:0;font-size:1.25rem;line-height:1;background:transparent;border:0;border-radius:999px;color:var(--ink);cursor:pointer;transition:background .18s ease,border-color .18s ease,box-shadow .18s ease}.learn-back:hover,.learn-back:focus-visible{background:color-mix(in srgb,var(--primary) 14%,transparent)}body[data-learn-scrolled="1"] .learn-back{position:fixed;top:max(10px,env(safe-area-inset-top,0px));left:max(10px,env(safe-area-inset-left,0px));z-index:80;background:color-mix(in srgb,var(--panel-solid) 88%,transparent);border:1px solid var(--line-strong);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:var(--shadow-soft)}body[data-learn-scrolled="1"] .learn-back:hover,body[data-learn-scrolled="1"] .learn-back:focus-visible{background:color-mix(in srgb,var(--primary) 18%,var(--panel-solid));border-color:color-mix(in srgb,var(--primary) 50%,transparent)}.learn-title h2{margin:0;font-size:1.25rem}.lesson-path{list-style:none;padding:28px 0 20px;margin:0;display:flex;flex-direction:column-reverse;align-items:center;gap:36px;position:relative}.lesson-node{position:relative;display:grid;justify-items:center;gap:6px;width:min(220px,80%);transform:translate(calc(var(--lane, 0) * 100px));text-align:center}.lesson-path-wrap{position:relative;width:100%;isolation:isolate}.path-curves{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;z-index:-1;overflow:visible}.path-curves path{fill:none;stroke:color-mix(in srgb,var(--ink-soft) 65%,transparent);stroke-width:3;stroke-linecap:round;stroke-dasharray:2 10}.node-pointer{position:absolute;bottom:-32px;font-size:.72rem;font-weight:800;color:var(--primary-deep);letter-spacing:.06em;text-transform:uppercase;animation:pointer-bounce 1.4s ease-in-out infinite;pointer-events:none}@keyframes pointer-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(4px)}}.node-disc{width:88px;height:88px;border-radius:22px;transform:rotate(45deg);background:var(--panel-grad);border:3px solid color-mix(in srgb,var(--ink-soft) 35%,transparent);cursor:pointer;display:grid;place-items:center;box-shadow:var(--shadow);transition:transform .18s ease,box-shadow .18s ease,filter .18s ease;position:relative;z-index:1;padding:0}.node-disc:hover{transform:rotate(45deg) translateY(-3px) scale(1.04)}.node-disc:active{transform:rotate(45deg) translateY(0) scale(.98)}.node-icon{display:block;transform:rotate(-45deg);font-size:2.2rem;line-height:1}.lesson-node.done .node-disc{background:linear-gradient(135deg,var(--primary),var(--primary-deep));border-color:var(--primary-deep);color:var(--primary-ink)}.lesson-node.done .node-icon{font-size:2.4rem;font-weight:900}.lesson-node.next .node-disc{background:linear-gradient(135deg,var(--primary),var(--primary-deep));border-color:var(--primary-deep);color:var(--primary-ink);animation:node-pulse 1.8s ease-in-out infinite}.lesson-node.locked .node-disc{background:color-mix(in srgb,var(--ink-soft) 22%,var(--panel-solid));border-color:color-mix(in srgb,var(--ink-soft) 50%,var(--panel-solid));box-shadow:none;cursor:not-allowed;filter:grayscale(.4);opacity:1}.lesson-node.locked .node-disc:hover{transform:rotate(45deg)}.lesson-node.locked .node-icon{font-size:1.6rem;opacity:.85}@keyframes node-pulse{0%,to{box-shadow:0 0 color-mix(in srgb,var(--primary) 55%,transparent),var(--shadow)}50%{box-shadow:0 0 0 14px color-mix(in srgb,var(--primary) 0%,transparent),var(--shadow)}}.node-title,.node-blurb{position:relative;z-index:1;background:color-mix(in srgb,var(--bg-0) 96%,transparent);box-shadow:0 1px 3px #00000040;width:fit-content;margin-left:auto;margin-right:auto;max-width:100%}.node-title{margin-top:14px;margin-bottom:0;font-size:.92rem;font-weight:800;line-height:1.25;padding:4px 10px;border-radius:8px}.node-blurb{font-size:.76rem;color:var(--ink-soft);line-height:1.35;max-width:200px;padding:4px 10px;border-radius:8px}.lesson-goal{position:relative;display:grid;justify-items:center;gap:8px;margin-bottom:8px;text-align:center}.goal-medal{width:84px;height:84px;display:grid;place-items:center;font-size:2.6rem;border-radius:50%;background:radial-gradient(circle at 30% 25%,color-mix(in srgb,var(--warn) 70%,var(--bg-0)) 0%,var(--warn) 35%,var(--warn-deep) 100%);box-shadow:0 0 0 6px var(--bg-1),0 12px 24px #00000059,inset 0 2px 4px #fff6;filter:grayscale(.7) opacity(.65);transition:filter .4s ease;position:relative;z-index:2}.lesson-goal.achieved .goal-medal{filter:grayscale(0) opacity(1);animation:trophy-shine 2.4s ease-in-out infinite}@keyframes trophy-shine{0%,to{box-shadow:0 0 0 6px var(--bg-1),0 12px 24px #00000059,inset 0 2px 4px #fff6,0 0 0 6px color-mix(in srgb,var(--primary) 55%,transparent)}50%{box-shadow:0 0 0 6px var(--bg-1),0 12px 24px #00000059,inset 0 2px 4px #fff6,0 0 0 24px color-mix(in srgb,var(--primary) 0%,transparent)}}.goal-text{margin:0;font-size:.92rem;font-weight:800;letter-spacing:.02em;color:var(--ink-soft)}.lesson-goal.achieved .goal-text{color:var(--primary-deep)}@media(max-width:540px){.lesson-node{transform:translate(calc(var(--lane, 0) * 50px))}}.lesson-progress{height:6px;border-radius:4px;background:color-mix(in srgb,var(--ink-soft) 22%,transparent);overflow:hidden}.lesson-progress-fill{height:100%;background:linear-gradient(90deg,var(--primary),var(--primary-deep));transition:width .25s ease}.lesson-content{min-height:280px;padding:22px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel-grad);box-shadow:var(--shadow)}.lesson-content h3{margin:0 0 12px;font-size:1.1rem}.lesson-content p{line-height:1.55}.lesson-foot{display:flex;gap:10px;justify-content:space-between}.lesson-foot button:not(.ghost){min-width:160px;font-weight:800}.card-row{display:flex;align-items:flex-end;justify-content:center;gap:10px;flex-wrap:wrap;margin:16px 0 6px}.card-slot{display:grid;justify-items:center;gap:6px}.card-slot .card-thumb{width:78px;border-radius:8px;box-shadow:var(--shadow)}.card-row.size-md .card-thumb{width:92px}.card-row.size-lg .card-thumb{width:108px}.card-tag{font-size:.72rem;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.06em}.card-slot.vira .card-thumb{outline:2px solid var(--primary);outline-offset:2px}.caption{margin-top:8px;text-align:center;font-size:.88rem;color:var(--ink-soft)}.quiz-options{list-style:none;padding:0;margin:14px 0 0;display:grid;gap:8px}.quiz-option{display:flex;align-items:center;gap:10px;width:100%;padding:12px 14px;text-align:left;background:transparent;border:1px solid var(--line);border-radius:10px;color:var(--ink);cursor:pointer;transition:background .15s ease,border-color .2s ease}.quiz-option:not(:disabled):hover{background:color-mix(in srgb,var(--ink-soft) 12%,transparent)}.quiz-mark{display:grid;place-items:center;width:22px;height:22px;font-weight:900}.quiz-option.correct{background:color-mix(in srgb,var(--accept) 22%,transparent);border-color:var(--accept)}.quiz-option.wrong{background:color-mix(in srgb,var(--danger) 22%,transparent);border-color:var(--danger)}.quiz-option.muted{opacity:.55}.quiz-feedback{margin-top:14px;padding:12px 14px;border-radius:10px;line-height:1.45;background:color-mix(in srgb,var(--ink-soft) 10%,transparent);border:1px solid var(--line)}.quiz-feedback.right{background:color-mix(in srgb,var(--accept) 14%,transparent);border-color:color-mix(in srgb,var(--accept) 45%,var(--line))}.quiz-feedback.wrong{background:color-mix(in srgb,var(--danger) 14%,transparent);border-color:color-mix(in srgb,var(--danger) 45%,var(--line))}.pick-vira{display:flex;align-items:center;gap:8px;margin:14px 0 6px}.pick-vira .card-thumb{width:70px;border-radius:8px;outline:2px solid var(--primary);outline-offset:2px}.pick-hand{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;margin:14px 0 0}.pick-card{padding:6px;background:transparent;border:2px solid transparent;border-radius:12px;cursor:pointer;transition:transform .15s ease,border-color .2s ease}.pick-card:not(:disabled):hover{transform:translateY(-4px)}.pick-card .card-thumb{width:96px;border-radius:8px;display:block}.pick-card.correct{border-color:var(--accept)}.pick-card.wrong{border-color:var(--danger)}.pick-card.muted{opacity:.45}.recap-pips{display:flex;justify-content:center;gap:12px;margin:16px 0}.recap-pip{display:grid;place-items:center;width:56px;height:56px;border-radius:50%;font-weight:900;font-size:1.3rem;color:var(--ink);background:color-mix(in srgb,var(--ink-soft) 18%,transparent)}.recap-pip.team-A{background:var(--team-a)}.recap-pip.team-B{background:var(--team-b);color:#fff}.recap-pip.tie{background:var(--ink-soft);color:var(--bg-0)}.recap-pip.pending{outline:2px dashed color-mix(in srgb,var(--ink-soft) 50%,transparent)}.recap-winner{text-align:center;margin:4px 0 6px}.tip-callout{display:flex;gap:12px;align-items:flex-start;margin:18px 0 0;padding:12px 14px;border-left:4px solid var(--primary);border-radius:0 10px 10px 0;background:color-mix(in srgb,var(--primary) 14%,transparent)}.tip-callout p{margin:0;line-height:1.5;font-size:.92rem}.tip-icon{font-size:1.4rem;line-height:1.4;flex-shrink:0}.step-ladder .ladder-vira{display:flex;align-items:center;gap:10px;margin:14px 0 8px}.step-ladder .ladder-vira .card-thumb{width:64px;border-radius:8px;outline:2px solid var(--primary);outline-offset:2px}.ladder-strip{display:flex;flex-direction:column;gap:8px;margin:12px 0 4px;padding:4px 0 8px}.ladder-marker{display:block;font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);text-align:center;padding:4px 0}.ladder-marker.start{color:var(--primary-deep)}.ladder-rung{display:grid;grid-template-columns:28px 60px 1fr;align-items:center;gap:12px;padding:8px 10px;background:color-mix(in srgb,var(--ink-soft) 8%,transparent);border-radius:10px;text-align:left;min-width:0}.ladder-rank{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--primary);color:var(--warn-ink);font-weight:900;font-size:.85rem;box-shadow:0 2px 6px #00000040}.ladder-card{width:60px;border-radius:8px;box-shadow:var(--shadow);display:block}.ladder-text{display:flex;flex-direction:column;gap:2px;min-width:0}.ladder-label{font-size:.92rem;font-weight:800;line-height:1.2}.ladder-note{font-size:.78rem;color:var(--ink-soft);line-height:1.3}@media(max-width:540px){.ladder-rung{grid-template-columns:24px 50px 1fr;gap:10px;padding:6px 8px}.ladder-card{width:50px}.ladder-label{font-size:.85rem}.ladder-note{font-size:.72rem}}.ranking-modal{width:min(420px,100%);max-height:88vh;display:flex;flex-direction:column;background:var(--panel-grad);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;animation:modalPop .18s ease}.ranking-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px 16px 10px;border-bottom:1px solid var(--line)}.ranking-modal-head h3{margin:0;font-size:1.05rem}.ranking-modal-head .muted{margin:2px 0 0;font-size:.78rem}.ranking-modal-close{width:32px;height:32px;padding:0;border-radius:50%;border:1px solid color-mix(in srgb,var(--ink-soft) 30%,transparent);background:transparent;color:var(--ink);font-size:.9rem;cursor:pointer;flex-shrink:0;display:grid;place-items:center}.ranking-modal-close:hover{background:color-mix(in srgb,var(--ink-soft) 15%,transparent)}.ranking-modal-vira{display:flex;align-items:center;gap:10px;padding:10px 16px;border-bottom:1px solid var(--line)}.ranking-modal-vira .card-thumb{width:48px;border-radius:8px;outline:2px solid var(--primary);outline-offset:2px}.ranking-modal-body{padding:8px 14px 14px;overflow-y:auto;-webkit-overflow-scrolling:touch}.ranking-modal-body .ladder-strip{margin:4px 0}.pick-played{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;margin:16px 0 4px;padding:12px;border-radius:12px;background:color-mix(in srgb,var(--ink-soft) 8%,transparent);border:1px dashed color-mix(in srgb,var(--ink-soft) 40%,transparent)}.pick-played:empty{display:none}.played-context{display:grid;justify-items:center;gap:4px;min-width:70px}.played-who{font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft)}.played-context .card-thumb{width:60px;border-radius:6px;box-shadow:var(--shadow)}.played-context.passed .card-thumb{opacity:.7}.retry-row{display:flex;justify-content:center;margin-top:16px}.retry-btn{padding:10px 22px;background:var(--danger);color:var(--danger-ink);border:0;border-radius:var(--btn-radius);font-weight:800;font-size:.95rem;cursor:pointer;box-shadow:0 var(--btn-shadow-offset) 0 0 var(--danger-deep),inset 0 1px #ffffff38;margin-bottom:var(--btn-shadow-offset);transition:transform .08s ease,box-shadow .08s ease}.retry-btn:active{transform:translateY(var(--btn-shadow-offset));box-shadow:0 0 0 0 var(--danger-deep)}.retry-btn:hover{transform:translateY(-1px)}:root{--tier-basico: var(--warn);--tier-basico-deep: var(--warn-deep)}.lesson-node.track-avanzado.next .node-disc{background:linear-gradient(135deg,var(--tier-avanzado),var(--tier-avanzado-deep));border-color:var(--tier-avanzado-deep);color:#fff;animation:node-pulse-avanzado 1.8s ease-in-out infinite}.lesson-node.track-maestro.next .node-disc{background:linear-gradient(135deg,var(--tier-maestro),var(--tier-maestro-deep));border-color:var(--tier-maestro-deep);color:#fff;animation:node-pulse-maestro 1.8s ease-in-out infinite}@keyframes node-pulse-avanzado{0%,to{box-shadow:0 0 color-mix(in srgb,var(--tier-avanzado) 55%,transparent),var(--shadow)}50%{box-shadow:0 0 0 14px color-mix(in srgb,var(--tier-avanzado) 0%,transparent),var(--shadow)}}@keyframes node-pulse-maestro{0%,to{box-shadow:0 0 color-mix(in srgb,var(--tier-maestro) 55%,transparent),var(--shadow)}50%{box-shadow:0 0 0 14px color-mix(in srgb,var(--tier-maestro) 0%,transparent),var(--shadow)}}.lesson-node.track-avanzado.done .node-disc{background:linear-gradient(135deg,var(--tier-avanzado),var(--tier-avanzado-deep));border-color:var(--tier-avanzado-deep)}.lesson-node.track-maestro.done .node-disc{background:linear-gradient(135deg,var(--tier-maestro),var(--tier-maestro-deep));border-color:var(--tier-maestro-deep)}.lesson-node.track-avanzado:not(.done):not(.locked) .node-disc{border-color:color-mix(in srgb,var(--tier-avanzado) 50%,transparent)}.lesson-node.track-maestro:not(.done):not(.locked) .node-disc{border-color:color-mix(in srgb,var(--tier-maestro) 50%,transparent)}.lesson-node.next .node-pointer{color:var(--tier-basico-deep)}.lesson-node.track-avanzado.next .node-pointer{color:var(--tier-avanzado-deep)}.lesson-node.track-maestro.next .node-pointer{color:var(--tier-maestro-deep)}.checkpoint-band{display:flex;align-items:center;gap:14px;width:min(100%,380px);padding:12px 18px;margin:4px 0;border-radius:16px;border:2px dashed color-mix(in srgb,var(--ink-soft) 35%,transparent);background:color-mix(in srgb,var(--ink-soft) 8%,var(--bg-1));position:relative;z-index:2}.checkpoint-band.complete{border-style:solid;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 18%,var(--bg-1)),color-mix(in srgb,var(--primary-deep) 12%,var(--bg-1)));border-color:color-mix(in srgb,var(--primary) 60%,transparent);box-shadow:0 6px 18px color-mix(in srgb,var(--primary-deep) 24%,transparent)}.checkpoint-band.complete.to-avanzado{background:linear-gradient(135deg,color-mix(in srgb,var(--tier-avanzado) 22%,var(--bg-1)),color-mix(in srgb,var(--tier-avanzado-deep) 16%,var(--bg-1)));border-color:color-mix(in srgb,var(--tier-avanzado) 60%,transparent);box-shadow:0 6px 18px color-mix(in srgb,var(--tier-avanzado-deep) 24%,transparent)}.checkpoint-band.complete.to-maestro{background:linear-gradient(135deg,color-mix(in srgb,var(--tier-maestro) 22%,var(--bg-1)),color-mix(in srgb,var(--tier-maestro-deep) 16%,var(--bg-1)));border-color:color-mix(in srgb,var(--tier-maestro) 60%,transparent);box-shadow:0 6px 18px color-mix(in srgb,var(--tier-maestro-deep) 24%,transparent)}.checkpoint-medal{font-size:2rem;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3));flex-shrink:0}.checkpoint-band.locked .checkpoint-medal{opacity:.55;filter:grayscale(.8)}.checkpoint-text{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.checkpoint-title{font-size:1rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.checkpoint-band.locked .checkpoint-title{color:var(--ink-soft)}.checkpoint-band.complete.to-avanzado .checkpoint-title{color:var(--tier-avanzado-deep)}.checkpoint-band.complete.to-maestro .checkpoint-title{color:var(--tier-maestro-deep)}.checkpoint-sub{font-size:.78rem;color:var(--ink-soft);line-height:1.3}.celebration-overlay{background:#080604b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.celebration-modal{width:min(440px,90vw);padding:32px 28px 24px;border-radius:22px;background:var(--panel-grad);border:2px solid color-mix(in srgb,var(--primary) 60%,transparent);box-shadow:0 24px 60px #0000008c,inset 0 1px 2px #ffffff1a;text-align:center;position:relative;animation:celebration-pop .45s cubic-bezier(.34,1.56,.64,1)}.celebration-modal.track-basico{border-color:color-mix(in srgb,var(--tier-basico) 70%,transparent)}.celebration-modal.track-avanzado{border-color:color-mix(in srgb,var(--tier-avanzado) 70%,transparent)}.celebration-modal.track-maestro{border-color:color-mix(in srgb,var(--tier-maestro) 70%,transparent)}@keyframes celebration-pop{0%{transform:scale(.7);opacity:0}60%{transform:scale(1.05);opacity:1}to{transform:scale(1);opacity:1}}.celebration-medal{font-size:4.5rem;line-height:1;margin-bottom:12px;filter:drop-shadow(0 6px 14px rgba(0,0,0,.4));animation:medal-shine 1.6s ease-in-out infinite}@keyframes medal-shine{0%,to{transform:rotate(-3deg) scale(1)}50%{transform:rotate(3deg) scale(1.06)}}.celebration-title{margin:0 0 8px;font-size:1.4rem;font-weight:900;letter-spacing:.01em}.celebration-modal.track-basico .celebration-title{color:var(--tier-basico-deep)}.celebration-modal.track-avanzado .celebration-title{color:var(--tier-avanzado)}.celebration-modal.track-maestro .celebration-title{color:var(--tier-maestro)}.celebration-sub{margin:0 0 18px;color:var(--ink-soft);line-height:1.5;font-size:.94rem}.celebration-next{display:grid;gap:4px;padding:12px 14px;margin-bottom:20px;border-radius:12px;background:color-mix(in srgb,var(--ink-soft) 10%,transparent);border:1px solid color-mix(in srgb,var(--ink-soft) 25%,transparent)}.celebration-next-label{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-soft)}.celebration-next-track{font-size:.92rem;font-weight:700}.celebration-cta{width:100%;padding:12px 20px;border-radius:12px;font-size:1rem;font-weight:800;border:none;cursor:pointer;color:var(--warn-ink);background:linear-gradient(180deg,var(--primary),var(--primary-deep));box-shadow:var(--shadow);transition:transform .15s ease}.celebration-modal.track-avanzado .celebration-cta{background:linear-gradient(180deg,var(--tier-avanzado),var(--tier-avanzado-deep));color:#fff}.celebration-modal.track-maestro .celebration-cta{background:linear-gradient(180deg,var(--tier-maestro),var(--tier-maestro-deep));color:#fff}.celebration-cta:hover{transform:translateY(-2px)}.drill-cta{display:grid;gap:4px;padding:14px 18px;border-radius:14px;border:2px solid color-mix(in srgb,var(--primary) 60%,transparent);background:linear-gradient(180deg,color-mix(in srgb,var(--primary) 24%,transparent),color-mix(in srgb,var(--primary-deep) 14%,transparent));color:var(--ink);cursor:pointer;font-size:1.05rem;font-weight:800;text-align:center;transition:transform .15s ease,box-shadow .15s ease;box-shadow:var(--shadow)}.drill-cta:hover{transform:translateY(-2px);box-shadow:0 14px 28px #00000059}.drill-cta-sub{font-size:.78rem;font-weight:600;color:var(--ink-soft);letter-spacing:.02em}.drill-next{padding:12px 28px;font-weight:800;min-width:180px}.node-stars{position:relative;z-index:1;display:flex;gap:2px;justify-content:center;margin:-8px auto 6px;background:color-mix(in srgb,var(--bg-0) 96%,transparent);box-shadow:0 1px 3px #00000040;padding:2px 8px;border-radius:8px;width:fit-content;max-width:100%}.node-star{font-size:1.05rem;color:color-mix(in srgb,var(--ink-soft) 40%,transparent);line-height:1}.node-star.filled{color:var(--primary);text-shadow:0 0 6px color-mix(in srgb,var(--primary) 60%,transparent)}.streak-chip{align-self:center;display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:999px;font-weight:800;width:max-content;margin:0 auto;animation:streak-pop .3s ease}@keyframes streak-pop{0%{transform:scale(.85);opacity:0}to{transform:scale(1);opacity:1}}.streak-chip.tier-mid{background:color-mix(in srgb,var(--rank-prestige) 28%,transparent);border:1px solid var(--rank-prestige);color:var(--rank-prestige)}.streak-chip.tier-hi{background:color-mix(in srgb,var(--rank-elite) 28%,transparent);border:1px solid var(--rank-elite);color:var(--rank-elite);animation:streak-pop .3s ease,streak-pulse 1.4s ease-in-out infinite}.streak-chip.tier-max{background:linear-gradient(135deg,color-mix(in srgb,var(--rank-elite) 38%,transparent),color-mix(in srgb,var(--rank-magic) 28%,transparent));border:1px solid var(--rank-elite);color:var(--bg-0);text-shadow:0 0 6px rgba(255,255,255,.6);animation:streak-pop .3s ease,streak-pulse .9s ease-in-out infinite}@keyframes streak-pulse{0%,to{box-shadow:0 0 color-mix(in srgb,var(--rank-elite) 50%,transparent)}50%{box-shadow:0 0 0 8px color-mix(in srgb,var(--rank-elite) 0%,transparent)}}.learn-header>.hint-btn{grid-column:3;justify-self:end;font-size:.85rem;font-weight:700;padding:6px 12px;border-radius:999px;border:1px solid color-mix(in srgb,var(--primary) 60%,transparent);background:color-mix(in srgb,var(--primary) 12%,transparent);color:var(--ink);cursor:pointer;white-space:nowrap;transition:background .15s ease,transform .12s ease}.learn-header>.hint-btn:not(:disabled):hover{background:color-mix(in srgb,var(--primary) 24%,transparent);transform:translateY(-1px)}.learn-header>.hint-btn:disabled{opacity:.4;cursor:default}.step-trick-winner .trick-vira{display:flex;align-items:center;gap:8px;margin:14px 0 6px}.step-trick-winner .trick-vira .card-thumb{width:64px;border-radius:8px;outline:2px solid var(--primary);outline-offset:2px}.trick-table{display:flex;flex-wrap:wrap;justify-content:center;gap:18px;margin:18px 0 4px;padding:18px;border-radius:14px;background:radial-gradient(ellipse at center,color-mix(in srgb,var(--felt-1) 70%,transparent) 0%,color-mix(in srgb,var(--felt-1) 40%,transparent) 70%,transparent 100%),color-mix(in srgb,var(--ink-soft) 6%,transparent);border:1px dashed color-mix(in srgb,var(--ink-soft) 30%,transparent)}.trick-slot{position:relative;padding:8px 8px 10px;background:transparent;border:2px solid transparent;border-radius:12px;cursor:pointer;display:grid;justify-items:center;gap:6px;transition:transform .15s ease,border-color .2s ease}.trick-slot:not(:disabled):hover{transform:translateY(-4px)}.trick-slot .card-thumb{width:108px;border-radius:8px;display:block;box-shadow:var(--shadow)}.trick-slot.correct{border-color:var(--accept);background:color-mix(in srgb,var(--accept) 18%,transparent)}.trick-slot.wrong{border-color:var(--danger);background:color-mix(in srgb,var(--danger) 18%,transparent)}.trick-slot.muted{opacity:.45}.trick-badge{position:absolute;top:-10px;right:-10px;font-size:.72rem;font-weight:800;padding:4px 8px;border-radius:999px;background:var(--accept);color:#fff;box-shadow:var(--shadow)}@media(max-width:540px){.trick-slot .card-thumb{width:88px}.trick-table{gap:14px;padding:14px}}.scenario-context{display:grid;gap:12px;margin:16px 0 6px;padding:12px;border-radius:12px;background:color-mix(in srgb,var(--ink-soft) 6%,transparent);border:1px solid color-mix(in srgb,var(--ink-soft) 18%,transparent)}.scenario-vira{display:flex;align-items:center;gap:8px}.scenario-vira .card-thumb{width:56px;border-radius:8px;outline:2px solid var(--primary);outline-offset:2px}.scenario-hand{display:grid;gap:6px}.scenario-hand-row{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end}.scenario-hand-card{width:76px;border-radius:8px;box-shadow:var(--shadow)}.scenario-setup{margin:10px 0 4px;font-style:italic;color:var(--ink-soft);font-size:.92rem}.score-chip{display:inline-flex;align-items:baseline;gap:8px;padding:6px 12px;border-radius:999px;background:linear-gradient(180deg,color-mix(in srgb,var(--primary) 28%,transparent),color-mix(in srgb,var(--primary-deep) 22%,transparent));border:1px solid color-mix(in srgb,var(--primary) 60%,transparent);font-weight:800;width:max-content}.score-pair{display:inline-flex;align-items:baseline;gap:6px}.score-num{font-size:1.2rem;font-variant-numeric:tabular-nums}.score-sep{opacity:.6}.score-target{font-size:.78rem;font-weight:700;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.04em}@media(max-width:540px){.scenario-hand-card{width:64px}}.hand-events{list-style:none;padding:0;margin:16px 0 12px;display:grid;gap:6px;border-radius:12px;overflow:hidden;background:color-mix(in srgb,var(--ink-soft) 8%,transparent);border:1px solid color-mix(in srgb,var(--ink-soft) 18%,transparent)}.hand-event{display:grid;grid-template-columns:32px 1fr auto;align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid color-mix(in srgb,var(--ink-soft) 12%,transparent)}.hand-event:last-child{border-bottom:none}.hand-event-step{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:color-mix(in srgb,var(--ink-soft) 18%,transparent);color:var(--ink);font-weight:800;font-size:.82rem}.hand-event-label{line-height:1.35;font-size:.94rem}.hand-event-points{font-weight:800;font-size:.92rem;white-space:nowrap;padding:4px 10px;border-radius:999px;background:color-mix(in srgb,var(--ink-soft) 14%,transparent);color:var(--ink-soft)}.hand-event-points.scored{background:color-mix(in srgb,var(--primary) 24%,transparent);color:var(--primary-deep);border:1px solid color-mix(in srgb,var(--primary) 55%,transparent)}.score-question{margin:8px 0 10px;font-weight:800;font-size:1.02rem}.score-options{list-style:none;padding:0;margin:0;display:flex;gap:10px;flex-wrap:wrap}.score-chip-btn{min-width:64px;padding:12px 18px;border-radius:12px;border:1px solid var(--line);background:transparent;color:var(--ink);font-weight:900;font-size:1.15rem;font-variant-numeric:tabular-nums;cursor:pointer;transition:background .15s ease,border-color .2s ease,transform .12s ease}.score-chip-btn:not(:disabled):hover{background:color-mix(in srgb,var(--ink-soft) 14%,transparent);transform:translateY(-1px)}.score-chip-btn.correct{background:color-mix(in srgb,var(--accept) 22%,transparent);border-color:var(--accept)}.score-chip-btn.wrong{background:color-mix(in srgb,var(--danger) 22%,transparent);border-color:var(--danger)}.score-chip-btn.muted{opacity:.45}.reconnect-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:grid;place-items:center;padding:24px;background:#0806049e;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);animation:reconnectFadeIn .18s ease-out}@keyframes reconnectFadeIn{0%{opacity:0}to{opacity:1}}.reconnect-card{display:flex;align-items:center;gap:16px;max-width:420px;padding:18px 22px;background:var(--panel-grad);border:1px solid color-mix(in srgb,var(--primary) 35%,transparent);border-radius:14px;box-shadow:0 14px 40px #0000008c,0 0 0 1px #0006}.reconnect-spinner{flex:none;width:28px;height:28px;border-radius:50%;border:3px solid color-mix(in srgb,var(--primary) 22%,transparent);border-top-color:var(--primary);animation:reconnectSpin .9s linear infinite}@keyframes reconnectSpin{to{transform:rotate(360deg)}}.reconnect-text{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.reconnect-text strong{font-size:1rem;color:var(--ink)}.reconnect-text span{font-size:.8rem;color:var(--ink-soft);line-height:1.35}@media(max-width:480px){.reconnect-card{flex-direction:column;align-items:stretch;text-align:center;padding:16px;gap:12px}.reconnect-spinner{margin:0 auto}}@media(max-width:900px)and (orientation:portrait){.app{padding:6px}.table-shell{padding:8px;gap:6px;min-height:0}.topbar{padding:4px 8px;gap:6px}.brand h1{font-size:1rem;gap:4px}.room-code{min-height:32px;padding:3px 7px;gap:4px;font-size:.74rem}.room-code-label{display:none}.leave-btn{padding:5px 8px;font-size:.74rem}.sound-toggle{min-height:32px;min-width:32px;padding:3px 6px;font-size:.95rem}.board{flex:0 1 auto}.play-area{flex:1;align-self:stretch}.table-area{display:grid;flex:0 0 auto;width:100%;grid-template-rows:auto auto auto;column-gap:8px;row-gap:6px}.table-area[data-mode="1v1"]{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr);grid-template-areas:".     opp-n .    " "felt  felt  felt " ".     me    .    "}.table-area[data-mode="2v2"]{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr);grid-template-areas:"opp-l opp-n opp-r" "felt felt felt" ".     me    .   "}.nameplate-cell-top{grid-area:opp-n}.nameplate-cell-left{grid-area:opp-l}.nameplate-cell-right{grid-area:opp-r}.nameplate-cell-bottom{grid-area:me;display:flex}.hand-me-dock{display:none}.app--ingame{padding:0!important}.table-shell--ingame{display:grid!important;grid-template-rows:auto 1fr auto;grid-template-areas:"topbar" "board" "hand";padding:0!important;max-width:100%!important;border-radius:0;gap:0;min-height:100dvh;max-height:100dvh;overflow:hidden}.table-shell--ingame .board{grid-area:board;display:flex;flex-direction:column;min-height:0;padding-top:48px}.table-shell--ingame .play-area{flex:1;min-height:0;padding:0;display:flex;flex-direction:column}.table-area[data-mode="1v1"]{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto auto auto;grid-template-areas:".    opp-n ." "felt felt  felt" "me   .     .";gap:4px 0}.table-area[data-mode="2v2"]{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto auto auto;grid-template-areas:"opp-l opp-n opp-r" "felt  felt  felt" "me    .     .";gap:4px 0}.table-shell--ingame .table-area>.felt{width:100%!important;max-height:calc(100dvh - 340px);height:auto!important;aspect-ratio:1 / 1!important;margin:0!important;justify-self:stretch!important;align-self:start!important;grid-area:felt}.table-shell--ingame .hand{grid-area:hand;position:relative;left:auto;right:auto;bottom:auto;margin:0;border-radius:0;border-left:0;border-right:0;border-bottom:0;height:auto;min-height:0;flex-direction:column;justify-content:flex-start;gap:0;padding:4px 6px calc(6px + env(safe-area-inset-bottom,0px));z-index:auto}.nameplate-cell-bottom{grid-area:me;display:flex!important;justify-content:flex-start;align-items:center;padding:2px 6px;pointer-events:auto}.nameplate-cell-bottom .nameplate{flex-direction:row;align-items:center;gap:6px;background:var(--panel-solid);border:1px solid var(--line-strong);border-radius:999px;padding:2px 10px 2px 2px;box-shadow:var(--shadow-soft);height:auto!important;min-height:0}.nameplate-cell-bottom .nameplate-avatar .pf-face{width:28px!important;height:28px!important}.nameplate-cell-bottom .nameplate-pill{background:transparent;border:0;box-shadow:none;padding:0;margin:0;font-size:.72rem;font-weight:700;color:var(--ink)}.nameplate-cell-bottom .nameplate-score{font-size:.82rem;font-weight:800}.table-shell--ingame .table-area>.felt{width:100%!important;height:auto!important;aspect-ratio:1 / 1!important;align-self:start!important;margin:0!important;justify-self:stretch!important}.table-shell--ingame .hand .cards{flex:none;margin:0;padding:0}.table-shell--ingame .hand .cards .card-wrap{height:64px;overflow:hidden;border-radius:9px 9px 0 0}.table-shell--ingame .hand .cards{margin-bottom:6px}.table-shell--ingame .hand .cards .card-wrap>.card{top:0;margin-bottom:0;-webkit-mask-image:linear-gradient(to bottom,#000 38px,transparent 63px);mask-image:linear-gradient(to bottom,#000 38px,transparent 63px)}.table-shell--ingame .hand .cards .card-wrap:before{display:none}.table-shell--ingame .hand .cards .card-wrap:hover,.table-shell--ingame .hand .cards .card-wrap:focus-within{transform:none}.table-shell--ingame .hand .cards .card-wrap .pass-card{display:none}.table-shell--ingame .hand .cards .card-wrap .card{touch-action:none}.card-picker-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;border:0;padding:0;background:#02061780}.card-picker{position:absolute;left:50%;bottom:calc(100% + 12px);transform:translate(-50%);z-index:90;display:flex;flex-direction:column;align-items:center;gap:12px;animation:cardPickerIn .16s ease-out}.card-picker>.card-image{width:140px;height:auto;border-radius:10px;box-shadow:0 18px 44px #0000008c}.card-picker-actions{display:flex;flex-direction:column;align-items:stretch;gap:8px;width:156px}.card-picker-actions .btn-ghost{background:color-mix(in srgb,var(--panel-solid) 75%,transparent);border:1px solid var(--line-strong);color:var(--ink-soft)}@keyframes cardPickerIn{0%{opacity:0;transform:translate(-50%) translateY(10px) scale(.94)}}.hand .actions .btn-split-group>.btn:first-child{padding-left:16px;padding-right:6px}.hand .actions .btn-split-toggle{width:30px}.table-shell--ingame .hand .actions{flex:none;width:100%;max-width:100%;margin:0;padding:0;justify-content:center}.table-shell--ingame .hand .actions .action-group-free{flex-wrap:nowrap;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none}.table-shell--ingame .hand .actions .action-group-free::-webkit-scrollbar{display:none}.table-shell--ingame .hand .actions .action-group-free>*{flex:none}.table-shell--ingame .action-group-envidos{flex-wrap:nowrap;padding:8px 4px;gap:4px;width:100%}.table-shell--ingame .action-group-envidos .envidos-back{width:26px!important;height:26px!important;min-height:26px!important}.table-shell--ingame .action-group-envidos .btn{min-height:32px!important;padding:4px 6px!important;font-size:.72rem!important;flex:none}.table-shell--ingame .action-group-envidos .points-stepper .points-step{width:26px;min-height:32px}.table-shell--ingame .action-group-envidos .points-input{width:36px;min-height:32px;font-size:.78rem}.table-shell--ingame .action-group-envidos .points-submit{min-height:32px!important;padding:4px 8px!important;font-size:.72rem!important}.table-shell--ingame .action-group-envidos .points-cap{display:none}.table-area>.felt{grid-area:felt}.nameplate-cell-left{display:flex;grid-template-rows:none;align-self:auto}.nameplate-cell-left .event-log{display:none}.nameplate-cell{display:flex;flex-direction:row;align-items:center;justify-content:center;justify-self:stretch;width:100%;max-width:none;gap:4px;padding:0}.nameplate-cell .nameplate{flex-direction:row;align-items:center;gap:6px}.nameplate-cell-top .nameplate:not(.nameplate-empty),.nameplate-cell-left .nameplate:not(.nameplate-empty),.nameplate-cell-right .nameplate:not(.nameplate-empty){flex-direction:column;gap:2px;min-width:0}.nameplate-cell-top .nameplate:not(.nameplate-empty) .nameplate-pill,.nameplate-cell-left .nameplate:not(.nameplate-empty) .nameplate-pill,.nameplate-cell-right .nameplate:not(.nameplate-empty) .nameplate-pill{display:inline-flex;max-width:100%;min-width:0;margin-top:0;padding:2px 8px;gap:5px;font-size:.68rem;border-width:1px}.nameplate-cell-top .nameplate-text,.nameplate-cell-left .nameplate-text,.nameplate-cell-right .nameplate-text{max-width:100%;min-width:0}.nameplate-cell-bottom .nameplate:not(.nameplate-empty) .nameplate-pill{display:none}.nameplate-cell .nameplate-empty .nameplate-pill{margin-top:0;padding:4px 6px;font-size:.7rem}.nameplate-cell .nameplate-avatar .pf-face{width:42px!important;height:42px!important}.nameplate-cell-bottom .nameplate-avatar .pf-face{width:26px!important;height:26px!important}.nameplate-cell .nameplate-score{font-size:.95rem;line-height:1}.nameplate-cell-bottom .nameplate-score{font-size:.82rem}.nameplate-bot-badge{font-size:.75rem;top:-3px;right:-3px}.nameplate-cell:has(.nameplate-empty) .nameplate{flex-direction:column}.nameplate-cell:has(.nameplate-empty){min-width:0}.nameplate-add-bot{font-size:1.1rem;padding:6px;min-height:38px;min-width:38px;line-height:1}.nameplate-add-bot>span:not(.add-bot-icon){display:none}.nameplate-waiting{font-size:.6rem;line-height:1.1}.felt{min-height:0;padding:8px;border-radius:14px}.table-play{grid-template-columns:minmax(56px,1fr) minmax(10px,.1fr) minmax(56px,1fr);grid-template-rows:72px minmax(130px,auto) 84px;min-height:0}.seat-pos-top .played-stack{min-height:72px}.seat-pos-bottom .played-stack{min-height:84px}.played-card{width:58px;min-height:84px}.seat-pos-top .played-card,.seat-pos-left .played-card,.seat-pos-right .played-card{width:50px;min-height:72px}.seat-pos-bottom .played-card:not(:first-child),.seat-pos-top .played-card:not(:first-child){margin-left:-28px}.seat-pos-left .played-stack,.seat-pos-right .played-stack{width:64px;min-height:130px}.seat-pos-left .played-card:not(:first-child),.seat-pos-right .played-card:not(:first-child){margin-top:-46px}.seat-pos-bottom .played-card.empardada-cover{margin-left:-58px}.seat-pos-top .played-card.empardada-cover{margin-left:-50px}.seat-pos-left .played-card.empardada-cover,.seat-pos-right .played-card.empardada-cover{margin-top:-72px}.mazo{width:38px;height:80px}.mazo-pos-bottom-left{bottom:6px;left:6px}.mazo-pos-right-bottom{bottom:6px;right:6px}.mazo-pos-top-right{top:6px;right:6px}.mazo-pos-left-top{top:6px;left:6px}.deck-stack{width:38px;height:54px}.deck-stack .deck-back:nth-child(1),.deck-stack .deck-back:nth-child(2){display:none}.deck-back,.vira-peek,.vira-peek .card-image{width:38px}.mazo-pos-right-bottom .vira-peek{bottom:0;top:auto}.mazo-pos-right-bottom .deck-stack{left:14px;top:48px;right:auto;bottom:auto}.mazo-pos-bottom-left .vira-peek{bottom:0;top:auto}.mazo-pos-bottom-left .deck-stack{right:14px;top:48px;left:auto;bottom:auto}.mazo-pos-top-right .vira-peek{top:0;bottom:auto}.mazo-pos-top-right .deck-stack{left:14px;bottom:48px;right:auto;top:auto}.mazo-pos-left-top .vira-peek{top:0;bottom:auto}.mazo-pos-left-top .deck-stack{right:14px;bottom:48px;left:auto;top:auto}.hand{padding:8px;gap:8px}.cards,.card-wrap{gap:6px}.card{min-width:78px}.pass-card{min-height:44px;padding:8px 12px;font-size:.82rem}.actions{gap:5px}.action-group{padding:4px 6px;gap:4px}.action-group button{min-height:36px;padding:5px 8px;font-size:.8rem}.action-label{font-size:.58rem}.action-toast{max-width:calc(100% - 12px);padding:8px 14px;font-size:.82rem}.empardada-hint{font-size:.7rem;padding:4px 8px;line-height:1.25}.pair-pass-3rd{display:none}.card-image{box-shadow:0 4px 10px #00000047}.board[data-phase=waiting] .hand{display:none}.board[data-phase=waiting][data-phase] .table-area{grid-template-rows:auto 1fr auto}.board[data-phase=waiting] .table-area[data-mode="2v2"]{grid-template-areas:"opp-l opp-n opp-r" "felt  felt  felt " ".     me    .    "}.board[data-phase=waiting] .table-area[data-mode="1v1"]{grid-template-areas:".    opp-n .   " "felt felt  felt" ".    me    .   "}.board[data-phase=waiting] .table-area>.felt{height:100%;min-height:56svh}.board[data-phase=waiting] .nameplate-cell:has(.nameplate-empty){min-width:0}.board[data-phase=waiting] .nameplate.nameplate-empty{min-width:0;width:100%;padding:8px 4px;gap:4px;border-style:dashed;border-color:color-mix(in srgb,var(--primary) 32%,transparent);background:color-mix(in srgb,var(--primary) 6%,transparent)}.board[data-phase=waiting] .nameplate-empty .nameplate-score{display:none}.board[data-phase=waiting] .nameplate-add-bot{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;width:100%;min-height:56px;min-width:0;padding:6px 4px;border-radius:8px;font-size:.62rem;font-weight:700;line-height:1.1;background:color-mix(in srgb,var(--primary) 14%,transparent);border:1px solid color-mix(in srgb,var(--primary) 45%,transparent);color:var(--ink)}.board[data-phase=waiting] .nameplate-add-bot>span:not(.add-bot-icon){display:inline}.board[data-phase=waiting] .add-bot-icon{font-size:1.4rem;line-height:1}.board[data-phase=waiting] .nameplate-waiting{font-size:.58rem;line-height:1.2;text-align:center;padding:4px}.board[data-phase=waiting] .table-waiting{padding:16px 14px;gap:12px}.board[data-phase=waiting] .table-waiting-hint{font-size:.78rem;line-height:1.4}.nameplate.on-turn .nameplate-avatar{border-radius:999px;box-shadow:0 0 0 2px var(--primary),0 0 14px color-mix(in srgb,var(--primary) 55%,transparent);animation:avatarTurnPulse 1.4s ease-in-out infinite}@keyframes avatarTurnPulse{0%,to{box-shadow:0 0 0 2px var(--primary),0 0 10px color-mix(in srgb,var(--primary) 40%,transparent)}50%{box-shadow:0 0 0 2px var(--primary),0 0 22px color-mix(in srgb,var(--primary) 70%,transparent)}}.nameplate-cell-bottom .nameplate{padding:6px 16px 6px 6px;gap:12px}.nameplate-cell-bottom .nameplate-score{font-size:1.05rem;font-weight:900}.nameplate-cell-bottom .nameplate-pill{font-size:.9rem;color:var(--ink);opacity:.94}.nameplate-cell-bottom .nameplate-you{font-size:.62rem;padding:2px 6px;border-radius:999px;background:color-mix(in srgb,var(--primary) 18%,transparent);border:1px solid color-mix(in srgb,var(--primary) 35%,transparent);color:var(--primary-deep);letter-spacing:.08em}.table-shell--ingame .action-group.respond{box-shadow:0 0 0 1px color-mix(in srgb,var(--primary) 35%,transparent),0 6px 14px #0000002e}.table-shell--ingame .action-label{font-size:.62rem;letter-spacing:.12em}.action-toast,.wait-toast,.copy-notice{box-shadow:var(--shadow-soft)}.table-shell--ingame .table-area{position:relative}.board:not([data-phase=waiting]) .nameplate-cell-bottom{position:absolute;left:8px;bottom:8px;width:auto;justify-content:flex-start;padding:0;z-index:3}.board:not([data-phase=waiting]) .nameplate-cell-bottom .nameplate-pill{display:none}}.rotate-lock{display:none}@media(orientation:landscape)and (max-height:500px){.rotate-lock{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;background:var(--bg-0);color:var(--ink);text-align:center}.rotate-lock-icon{font-size:3rem;animation:rotateHint 2s ease-in-out infinite}.rotate-lock-text{margin:0;font-size:1.1rem;font-weight:800;letter-spacing:.02em}}@keyframes rotateHint{0%,to{transform:rotate(-90deg)}50%{transform:rotate(0)}}.build-badge{position:fixed;right:6px;bottom:4px;z-index:5;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:10px;letter-spacing:.04em;color:#ffffff52;pointer-events:none;-webkit-user-select:none;user-select:none}.reconnect-banner{background:transparent;color:var(--ink);padding:12px 16px;border-radius:var(--radius-sm);margin-bottom:12px;display:flex;flex-direction:column;gap:8px;border:1px solid var(--line-strong)}.reconnect-banner-text{font-weight:600;font-size:14px;line-height:1.35}.reconnect-banner-actions{display:flex;gap:8px;align-items:center}@keyframes pulseUrgent{0%,to{box-shadow:0 2px 8px #00000040}50%{box-shadow:0 2px 14px color-mix(in srgb,var(--info) 55%,transparent)}}.auth-login-btn{font-weight:800;letter-spacing:.02em;animation:authLoginGlow 2.4s ease-in-out infinite}@keyframes authLoginGlow{0%,to{box-shadow:inset 0 1px color-mix(in srgb,var(--warn) 30%,var(--hot-spec)),0 2px 4px #0000004d,0 0 color-mix(in srgb,var(--primary) 0%,transparent)}50%{box-shadow:inset 0 1px color-mix(in srgb,var(--warn) 30%,var(--hot-spec)),0 2px 4px #0000004d,0 0 14px 2px color-mix(in srgb,var(--primary) 45%,transparent)}}@media(prefers-reduced-motion:reduce){.auth-login-btn{animation:none}}.auth-menu-wrap{position:relative;display:inline-flex}.auth-menu-trigger{width:36px;height:36px;border-radius:50%;border:1px solid color-mix(in srgb,var(--primary) 50%,transparent);background:color-mix(in srgb,var(--primary) 20%,transparent);color:var(--ink);cursor:pointer;padding:0;overflow:hidden;display:grid;place-items:center;transition:border-color .15s ease,background .15s ease,transform .1s ease}.auth-menu-trigger:hover{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 32%,transparent)}.auth-menu-trigger:active{transform:scale(.96)}.auth-menu-trigger img{width:100%;height:100%;object-fit:cover;display:block}.auth-menu-initial{font-weight:800;font-size:.95rem}.auth-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:80;min-width:240px;background:var(--panel-grad);border:1px solid var(--line-strong);border-radius:12px;box-shadow:var(--shadow);padding:10px;display:grid;gap:10px}.auth-menu-head{display:grid;gap:2px;padding:4px 6px 8px;border-bottom:1px solid var(--line)}.auth-menu-head strong{font-size:.95rem}.auth-menu-head small{color:var(--ink-faint);font-size:.72rem}.auth-menu-stats{display:grid;gap:4px;padding:0 4px}.auth-menu-stats>div{display:flex;justify-content:space-between;align-items:baseline;font-size:.82rem}.auth-menu-stats span{color:var(--ink-soft)}.auth-menu-stats strong{font-variant-numeric:tabular-nums}.auth-menu-item{margin:4px 0 0;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:transparent;color:var(--ink);font-weight:600;font-size:.82rem;cursor:pointer;text-align:left}.auth-menu-item:hover{background:color-mix(in srgb,var(--primary) 18%,transparent);border-color:color-mix(in srgb,var(--primary) 40%,transparent)}.nickname-setup-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:grid;place-items:center;background:var(--scrim-strong);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);padding:20px}.nickname-setup-modal{background:var(--panel-grad);border:1px solid var(--line-strong);border-radius:18px;box-shadow:var(--shadow);padding:28px;width:min(440px,100%);display:grid;gap:16px;animation:modalPop .18s ease}.nickname-setup-modal h2{margin:0;font-size:1.4rem;letter-spacing:.01em}.nickname-setup-sub{margin:0;color:var(--ink-soft);font-size:.88rem;line-height:1.4}.nickname-setup-field{display:grid;gap:6px}.nickname-setup-label{font-weight:700;font-size:.82rem;color:var(--ink)}.nickname-setup-input-row{position:relative;display:flex;align-items:center}.nickname-setup-input-row input{flex:1;min-height:44px;padding:8px 44px 8px 14px;border:1px solid var(--line-strong);border-radius:10px;background:color-mix(in srgb,var(--bg-0) 80%,transparent);color:var(--ink);font-size:1rem;font-weight:600;font-family:inherit}.nickname-setup-input-row input:focus{outline:2px solid color-mix(in srgb,var(--primary) 60%,transparent);outline-offset:1px;border-color:var(--primary)}.nickname-availability{position:absolute;right:12px;font-size:1.15rem;font-weight:800;pointer-events:none}.nickname-availability.availability-checking{color:var(--ink-faint)}.nickname-availability.availability-available{color:var(--primary-deep)}.nickname-availability.availability-taken{color:var(--danger)}.nickname-setup-hint{font-size:.78rem;color:var(--ink-soft);min-height:1.2em}.nickname-setup-error{margin:0;padding:8px 12px;border-radius:8px;background:color-mix(in srgb,var(--danger) 14%,transparent);border:1px solid color-mix(in srgb,var(--danger) 40%,transparent);color:var(--ink);font-size:.85rem}.nickname-setup-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}.matchmaking-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:180;display:grid;place-items:center;background:var(--scrim-strong);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);padding:20px}.matchmaking-modal{background:var(--panel-grad);border:1px solid var(--line-strong);border-radius:18px;box-shadow:var(--shadow);padding:28px;width:min(440px,100%);display:grid;gap:16px;text-align:center;animation:modalPop .18s ease}.matchmaking-modal h2{margin:0;font-size:1.3rem}.matchmaking-sub{margin:0;color:var(--ink-soft);font-size:.85rem;line-height:1.4}.matchmaking-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:12px 8px;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--primary) 8%,transparent)}.matchmaking-stats>div{display:grid;gap:4px}.matchmaking-stats span{color:var(--ink-soft);font-size:.72rem;text-transform:uppercase;letter-spacing:.06em}.matchmaking-stats strong{font-size:1.1rem;font-variant-numeric:tabular-nums}.matchmaking-spinner{font-size:2.4rem;animation:matchmakingSpin 2s ease-in-out infinite}@keyframes matchmakingSpin{0%,to{transform:rotate(0)}50%{transform:rotate(180deg)}}.matchmaking-error{margin:0;padding:10px 14px;border-radius:10px;background:color-mix(in srgb,var(--danger) 14%,transparent);border:1px solid color-mix(in srgb,var(--danger) 40%,transparent);color:var(--ink);font-size:.9rem;text-align:left}.matchmaking-actions{display:flex;justify-content:center;gap:10px}.splash-screen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:grid;place-items:center;background:var(--bg-0);background-image:radial-gradient(ellipse 60% 55% at 12% 0%,color-mix(in srgb,var(--primary) 14%,transparent),transparent 70%),radial-gradient(ellipse 55% 50% at 92% 18%,color-mix(in srgb,var(--info) 10%,transparent),transparent 72%),radial-gradient(ellipse 70% 50% at 50% 110%,color-mix(in srgb,var(--warn) 8%,transparent),transparent 70%);animation:splashFadeOut .35s ease-in .7s forwards}.splash-arepa-wrap{position:relative;display:flex;flex-direction:column;align-items:center;gap:18px}.splash-arepa{display:block;width:clamp(180px,40vw,260px);height:auto;animation:splashBob 1.6s ease-in-out infinite}.splash-shadow{width:clamp(120px,28vw,180px);height:14px;border-radius:50%;background:radial-gradient(ellipse,rgba(0,0,0,.18),transparent 70%);animation:splashShadowBob 1.6s ease-in-out infinite}@keyframes splashBob{0%,to{transform:translateY(0) rotate(-1.5deg)}50%{transform:translateY(-8px) rotate(1.5deg)}}@keyframes splashShadowBob{0%,to{transform:scale(1);opacity:.7}50%{transform:scale(.85);opacity:.45}}@keyframes splashFadeOut{to{opacity:0;visibility:hidden}}@media(prefers-reduced-motion:reduce){.splash-arepa,.splash-shadow{animation:none}}@media(max-width:900px)and (orientation:portrait){.table-shell--ingame{grid-template-rows:0 minmax(0,1fr) auto;background:var(--bg-0)}.table-shell--ingame .board{padding-top:max(4px,env(safe-area-inset-top,0px));display:flex;flex-direction:column;min-height:0}.table-shell--ingame .play-area{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}.status-strip{flex:none;height:56px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 12px}.status-strip-left{display:flex;flex-direction:column;gap:2px;min-width:0}.status-strip-score{display:flex;align-items:baseline;gap:6px;font-size:1.55rem;font-weight:900;line-height:1;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.status-strip-num[data-team=A]{color:var(--team-a)}.status-strip-num[data-team=B]{color:var(--team-b)}.status-strip-sep{font-size:.8rem;color:var(--ink-decorative)}.status-strip-meta{align-self:flex-start;font-size:.6rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint);background:var(--line);padding:3px 8px;border-radius:999px;white-space:nowrap}.status-strip-right{display:flex;align-items:center;gap:6px;flex:none}.status-strip .voice-btn,.status-strip-menu-btn{width:38px;height:38px;min-width:38px;min-height:38px;padding:0;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line-strong);background:color-mix(in srgb,var(--panel-solid) 60%,transparent);color:var(--ink);font-size:1.1rem;font-weight:900;line-height:1;letter-spacing:.05em;cursor:pointer;-webkit-tap-highlight-color:transparent}.status-strip .voice-btn-on{border-color:var(--primary);color:var(--primary)}.status-strip .voice-btn-muted{border-color:var(--danger);color:var(--danger)}.status-strip .voice-count{display:none}.table-shell--ingame .ingame-menu{display:none!important}.table-shell--ingame .ingame-menu.ingame-menu--open{display:flex!important;position:fixed;top:auto!important;left:0!important;right:0!important;bottom:0!important;width:auto;max-width:none;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:10px;padding:18px 16px calc(22px + env(safe-area-inset-bottom,0px));border-radius:22px 22px 0 0;border:0;background:var(--panel-solid);box-shadow:var(--shadow-lift);z-index:130;animation:sheetIn .18s ease-out}.table-shell--ingame .ingame-menu--open:before{content:"";position:absolute;top:8px;left:50%;width:40px;height:4px;border-radius:2px;background:var(--line-strong);transform:translate(-50%)}.table-shell--ingame .ingame-menu--open .lang-picker{display:flex}.table-shell--ingame .ingame-menu--open .btn,.table-shell--ingame .ingame-menu--open .voice-btn{min-height:44px}.table-shell--ingame .ingame-menu--open .ingame-menu-leave{margin-left:auto}.ingame-menu-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;border:0;padding:0;background:var(--scrim-soft)}@keyframes sheetIn{0%{transform:translateY(24px);opacity:0}}.table-shell--ingame .table-area{display:block!important;position:relative;flex:1 1 auto;min-height:0;width:100%;padding:0;margin:0}.table-shell--ingame .table-area>.felt{position:absolute;top:0;right:8px;bottom:0;left:8px;width:auto!important;height:auto!important;aspect-ratio:auto!important;max-height:none!important;margin:0!important;align-self:stretch!important;justify-self:stretch!important;border-radius:20px;padding:8px;display:grid;place-items:center}.table-shell--ingame .seat-picker-banner{position:absolute;top:8px;left:16px;right:16px;z-index:6}.table-shell--ingame .nameplate-cell{position:absolute;z-index:5;width:auto;max-width:40%;padding:0;pointer-events:none}.table-shell--ingame .nameplate-cell .nameplate{pointer-events:auto;flex-direction:column;gap:2px}.table-shell--ingame .nameplate-cell-top{top:14px;left:50%;transform:translate(-50%)}.table-shell--ingame .nameplate-cell-left{top:17%;left:16px}.table-shell--ingame .nameplate-cell-right{top:17%;right:16px}.table-shell--ingame .nameplate-cell-bottom{bottom:14px;left:50%;transform:translate(-50%);display:flex!important}.table-shell--ingame .board:not([data-phase=waiting]) .nameplate-cell-bottom{display:none!important}.table-shell--ingame .nameplate-cell .nameplate-score{display:none}.table-shell--ingame .nameplate-cell .nameplate-avatar .pf-face{width:46px!important;height:46px!important}.table-shell--ingame .nameplate-cell .nameplate-pill{background:color-mix(in srgb,var(--rail-1) 72%,transparent);border:0;color:#e2e8f0;font-size:.66rem;padding:3px 9px;max-width:120px}.table-shell--ingame .nameplate-cell .nameplate-empty{background:color-mix(in srgb,var(--rail-1) 55%,transparent);border:1px dashed rgba(255,255,255,.35);border-radius:14px;padding:6px;gap:4px;width:104px}.table-shell--ingame .nameplate-cell .nameplate-empty .btn{min-height:34px;width:100%;padding:4px 6px;font-size:.72rem;color:#f0fdfa;white-space:normal;line-height:1.1}.table-shell--ingame .nameplate-cell .nameplate-empty .nameplate-add-bot{background:color-mix(in srgb,var(--primary) 25%,transparent)}.table-shell--ingame .nameplate-cell .nameplate-waiting{color:#ffffffb3;font-size:.72rem;text-align:center}.table-shell--ingame .board[data-phase=waiting] .nameplate-cell-left,.table-shell--ingame .board[data-phase=waiting] .nameplate-cell-right{top:30%}.table-shell--ingame .table-waiting{position:absolute;left:24px;right:24px;bottom:24%;justify-content:center;text-align:center}.table-shell--ingame .table-center{top:12px;left:12px}.table-shell--ingame .played-card{width:66px;min-height:96px}.table-shell--ingame .seat-pos-top .played-card,.table-shell--ingame .seat-pos-left .played-card,.table-shell--ingame .seat-pos-right .played-card{width:56px;min-height:82px}.table-shell--ingame .table-play{position:absolute;top:0;right:0;bottom:0;left:0;height:auto;min-height:0;padding:150px 10px 44px;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto;align-items:center;justify-items:center}.table-shell--ingame .board:not([data-phase=waiting]) .nameplate-cell-left,.table-shell--ingame .board:not([data-phase=waiting]) .nameplate-cell-right{top:27%}.table-shell--ingame .rank-help-btn{position:fixed;top:max(13px,calc(env(safe-area-inset-top,0px) + 9px));right:104px;left:auto;bottom:auto;width:38px;height:38px;min-width:38px;min-height:38px;border-radius:50%;border:1px solid var(--line-strong);background:color-mix(in srgb,var(--panel-solid) 60%,transparent);z-index:9}.table-shell--ingame .seat-pos-top .played-stack{min-height:82px}.table-shell--ingame .seat-pos-bottom .played-stack{min-height:96px}.table-shell--ingame .seat-pos-bottom .played-card.empardada-cover{margin-left:-66px}.table-shell--ingame .seat-pos-top .played-card.empardada-cover{margin-left:-56px}.table-shell--ingame .seat-pos-left .played-card.empardada-cover,.table-shell--ingame .seat-pos-right .played-card.empardada-cover{margin-top:-82px}.table-shell--ingame .hand{background:transparent;border:0;box-shadow:none;margin-top:-36px;padding:0 8px calc(8px + env(safe-area-inset-bottom,0px));gap:6px;z-index:8;overflow:visible}.table-shell--ingame .hand.my-turn{box-shadow:none;animation:none}.table-shell--ingame .hand .cards{display:block;position:relative;height:140px;margin:0;padding:0;overflow:visible;pointer-events:none}.table-shell--ingame .hand .cards .card-wrap{--fan-x: 0px;--fan-r: 0deg;--fan-y: 0px;--lift: 0px;position:absolute;left:50%;bottom:0;width:98px;height:auto;margin:0;padding:0;overflow:visible;border-radius:0;transform-origin:50% 130%;transform:translate(calc(-50% + var(--fan-x))) rotate(var(--fan-r)) translateY(calc(var(--fan-y) - var(--lift)));transition:transform .18s cubic-bezier(.2,.9,.3,1.2);pointer-events:auto}.table-shell--ingame .hand .cards .card-wrap>.card{position:static;top:auto;width:98px!important;min-width:0;margin:0;-webkit-mask-image:none;mask-image:none;touch-action:none}.table-shell--ingame .hand .cards .card-wrap>.card .card-image{box-shadow:0 8px 18px #0006;border-radius:9px}.table-shell--ingame .hand .cards[data-count="3"] .card-wrap:nth-child(1){--fan-x: -80px;--fan-r: -11deg;--fan-y: 12px}.table-shell--ingame .hand .cards[data-count="3"] .card-wrap:nth-child(2){z-index:2}.table-shell--ingame .hand .cards[data-count="3"] .card-wrap:nth-child(3){--fan-x: 80px;--fan-r: 11deg;--fan-y: 12px}.table-shell--ingame .hand .cards[data-count="2"] .card-wrap:nth-child(1){--fan-x: -54px;--fan-r: -6deg;--fan-y: 4px}.table-shell--ingame .hand .cards[data-count="2"] .card-wrap:nth-child(2){--fan-x: 54px;--fan-r: 6deg;--fan-y: 4px}.table-shell--ingame .hand .cards .card-wrap.picked{--lift: 34px;z-index:4}.table-shell--ingame .hand .cards .card-wrap.picked>.card .card-image{box-shadow:0 0 0 3px var(--primary),0 12px 26px #00000080}.table-shell--ingame .hand.my-turn .cards .card-wrap>.card[aria-disabled=false] .card-image{box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 55%,transparent),0 8px 18px #0006}.table-shell--ingame .hand .cards .card-wrap .pass-card{display:none}.table-shell--ingame .hand .cards .card-wrap.picked .pass-card{display:inline-flex;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);min-height:34px;padding:4px 14px;border-radius:999px;background:var(--panel-solid);border:1px solid var(--line-strong);color:var(--ink);font-size:.78rem;white-space:nowrap;z-index:5}.table-shell--ingame .hand .cards.cards-empardada .card-wrap{--fan-r: 0deg;--fan-y: 0px}.table-shell--ingame .hand .cards.cards-empardada .card-wrap.empardada-card-lower{opacity:.55}.table-shell--ingame .hand .cards[data-count="0"]{height:24px}.table-shell--ingame .hand .actions{padding:0;gap:6px}.table-shell--ingame .hand .actions .action-group{width:100%;background:transparent;border:0;box-shadow:none;padding:2px 0;gap:8px;justify-content:center}.table-shell--ingame .hand .actions .action-group-free{justify-content:flex-start;padding:2px 2px 6px}.table-shell--ingame .hand .actions .action-group-free>*{flex:1 0 auto}.table-shell--ingame .hand .actions .action-label{width:100%;text-align:center;font-size:.62rem;color:var(--ink-faint)}.table-shell--ingame .hand .actions .action-group button,.table-shell--ingame .hand .actions .action-group .btn{min-height:48px;padding:6px 18px;border-radius:999px;font-size:.92rem;font-weight:900}.table-shell--ingame .hand .actions .action-group .btn-split-group{border-radius:999px;overflow:hidden}.table-shell--ingame .hand .actions .action-group .btn-split-group>.btn{border-radius:0}.table-shell--ingame .hand .actions .action-group.respond .btn-accept{flex:1.4 0 auto}.table-shell--ingame .hand .actions .action-group-free .btn.btn-destructive{flex:0 0 auto;min-height:44px;background:transparent;border:1px solid color-mix(in srgb,var(--danger) 45%,transparent);box-shadow:none;color:var(--danger);font-size:.8rem;padding:6px 14px}.table-shell--ingame .action-group-envidos .btn,.table-shell--ingame .action-group-envidos .points-submit{min-height:40px!important}.table-shell--ingame .action-toast{top:64px}.table-shell--ingame .table-area[data-mode="1v1"] .nameplate-cell-top{top:14px}}@media(max-width:900px){.lobby{gap:12px}.lobby-list{display:contents}.lobby>.reconnect-banner{order:-3}.lobby>.quick-play,.lobby-list>.quick-play{order:-2;margin:0;padding:18px;border:0;border-radius:var(--radius-lg);background:radial-gradient(ellipse at 18% 0%,var(--primary),var(--primary-deep) 55%,var(--primary-darker));color:#f0fdfa;box-shadow:0 14px 30px color-mix(in srgb,var(--primary-darker) 45%,transparent);gap:10px}.lobby-list>.quick-play .lobby-hint{color:#f0fdfad9;font-size:.82rem}.lobby-list>.quick-play .btn-arcade{min-height:54px;font-size:1.05rem}.lobby>.lobby-card:not(.lobby-list){order:-1}.lobby-list>.lobby-list-head{order:0;padding:4px 4px 0}.lobby-list>.room-list,.lobby-list>.room-empty{order:1}.create-toggle{width:100%;justify-content:space-between;min-height:52px}}@media(max-width:900px)and (orientation:portrait){:root{--wood-dark: #27120a;--wood: #3d2013;--wood-light: #6b3a20;--wood-edge: #1a120c;--brass: #d9a441;--brass-light: #f3d27a;--brass-dark: #8a5d16;--lacquer: #c8322b;--lacquer-light: #f0665a;--lacquer-dark: #6a1410;--naipe: #f7efdc;--felt-green: #157a5b;--felt-green-deep: #0b4a37;--display: "Lilita One", "Baloo 2", "Nunito", system-ui, sans-serif}.table-shell--ingame{background-color:var(--wood);background-image:repeating-linear-gradient(90deg,rgba(0,0,0,.14) 0 2px,transparent 2px 11px),repeating-linear-gradient(90deg,rgba(255,255,255,.025) 0 1px,transparent 1px 23px),linear-gradient(180deg,#4a2415,#2b140b 60%,#21100a)}.table-shell--ingame .table-area>.felt{border:10px solid #4b2413;border-radius:24px;background:radial-gradient(ellipse at 50% 28%,var(--felt-green) 0%,#0f5f47 45%,var(--felt-green-deep) 100%) padding-box,linear-gradient(180deg,#5c2e1a,#3a1c0f) border-box;box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--brass) 70%,transparent),inset 0 0 70px #00000080,0 10px 0 var(--wood-edge),0 22px 34px #0000008c;outline:2px dashed color-mix(in srgb,var(--brass-light) 45%,transparent);outline-offset:-20px}.table-shell--ingame .table-area>.felt:after{content:"";position:absolute;top:-9px;right:-9px;bottom:-9px;left:-9px;pointer-events:none;border-radius:24px;background:radial-gradient(circle at 9px 9px,var(--brass-light) 0 2.5px,var(--brass-dark) 3px 4.5px,transparent 5.5px),radial-gradient(circle at calc(100% - 9px) 9px,var(--brass-light) 0 2.5px,var(--brass-dark) 3px 4.5px,transparent 5.5px),radial-gradient(circle at 9px calc(100% - 9px),var(--brass-light) 0 2.5px,var(--brass-dark) 3px 4.5px,transparent 5.5px),radial-gradient(circle at calc(100% - 9px) calc(100% - 9px),var(--brass-light) 0 2.5px,var(--brass-dark) 3px 4.5px,transparent 5.5px)}.status-strip{height:auto;min-height:60px;padding:6px 10px 4px;align-items:center}.piedras-board{position:relative;flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:3px;padding:6px 10px;border-radius:12px;border:2px solid var(--wood-edge);background:linear-gradient(180deg,#5a2c18,#3a1c0f);box-shadow:0 4px 0 var(--wood-edge),inset 0 1px #ffffff1f}.piedras-row{display:flex;align-items:center;gap:8px}.piedras-label{width:58px;flex:none;font-family:var(--display);font-size:.8rem;letter-spacing:.03em;color:var(--naipe);text-shadow:0 1px 0 rgba(0,0,0,.5)}.piedras{display:flex;gap:3px;flex:1 1 auto;min-width:0}.piedras i{flex:1 1 0;height:12px;border-radius:3px;background:#00000059;box-shadow:inset 0 1px #00000080;transition:background .25s ease,box-shadow .25s ease}.piedras-row[data-team=A] .piedras i.on{background:linear-gradient(180deg,#7dd3fc,var(--team-a));box-shadow:0 1px #00000080,inset 0 1px #ffffff80}.piedras-row[data-team=B] .piedras i.on{background:linear-gradient(180deg,#fdba74,var(--team-b));box-shadow:0 1px #00000080,inset 0 1px #ffffff80}.piedras-num{width:26px;flex:none;text-align:right;font-family:var(--display);font-size:1.15rem;line-height:1;color:var(--brass-light);text-shadow:0 1px 0 rgba(0,0,0,.6);font-variant-numeric:tabular-nums}.piedras-meta{position:absolute;right:10px;top:-9px;padding:1px 7px;border-radius:999px;border:1.5px solid var(--wood-edge);background:var(--brass);color:var(--wood-dark);font-family:var(--display);font-size:.6rem;letter-spacing:.04em}.status-strip-right{gap:8px}.status-strip .voice-btn,.status-strip-menu-btn,.table-shell--ingame .rank-help-btn{width:40px;height:40px;min-width:40px;min-height:40px;border:2px solid var(--wood-edge);background:linear-gradient(180deg,#6b3a20,#4a2413);color:var(--brass-light);box-shadow:0 3px 0 var(--wood-edge),inset 0 1px #ffffff2e}.status-strip .voice-btn:active,.status-strip-menu-btn:active,.table-shell--ingame .rank-help-btn:active{transform:translateY(2px);box-shadow:0 1px 0 var(--wood-edge)}.status-strip .voice-btn-on{color:#86efac}.status-strip .voice-btn-muted{color:var(--lacquer-light)}.table-shell--ingame .rank-help-btn{right:108px;top:max(15px,calc(env(safe-area-inset-top,0px) + 11px))}.table-shell--ingame .nameplate-cell .nameplate-pill{font-family:var(--display);font-size:.78rem;letter-spacing:.02em;color:var(--naipe);background:linear-gradient(180deg,#6b3a20,#45220f);border:2px solid var(--wood-edge);box-shadow:0 3px 0 var(--wood-edge),inset 0 1px #ffffff26;padding:3px 10px;text-shadow:0 1px 0 rgba(0,0,0,.5)}.table-shell--ingame .nameplate-cell .nameplate-dot{box-shadow:0 0 0 2px var(--wood-edge)}.table-shell--ingame .nameplate-cell .nameplate-avatar .pf-face{border:3px solid var(--brass);box-shadow:0 0 0 2px var(--wood-edge),0 4px 10px #00000080;border-radius:50%;background:var(--wood-dark)}.table-shell--ingame .nameplate.on-turn .nameplate-avatar .pf-face{border-color:var(--brass-light);box-shadow:0 0 0 2px var(--wood-edge),0 0 0 5px color-mix(in srgb,var(--brass-light) 40%,transparent),0 0 22px var(--brass)}.table-shell--ingame .nameplate-cell .nameplate-empty{background:color-mix(in srgb,var(--wood-dark) 55%,transparent);border:2px dashed color-mix(in srgb,var(--brass-light) 55%,transparent)}.table-shell--ingame .nameplate-cell .nameplate-empty .btn{font-family:var(--display);color:var(--naipe)}.table-shell--ingame .hand .cards .card-wrap>.card .card-image,.table-shell--ingame .played-card .card-image{border:3px solid var(--naipe);outline:2px solid var(--wood-edge);border-radius:10px;box-shadow:0 8px #00000040,0 10px 18px #00000073}.table-shell--ingame .hand .cards .card-wrap.picked>.card .card-image{outline-color:var(--brass-light);box-shadow:0 0 0 4px color-mix(in srgb,var(--brass) 55%,transparent),0 14px 26px #0000008c}.table-shell--ingame .hand.my-turn .cards .card-wrap>.card[aria-disabled=false] .card-image{box-shadow:0 0 0 3px color-mix(in srgb,var(--brass) 45%,transparent),0 8px 18px #00000073}.table-shell--ingame .hand .cards .card-wrap.picked .pass-card{font-family:var(--display);letter-spacing:.04em;background:linear-gradient(180deg,#6b3a20,#45220f);border:2px solid var(--wood-edge);color:var(--naipe);box-shadow:0 3px 0 var(--wood-edge)}.table-shell--ingame .hand .actions .action-group .btn,.table-shell--ingame .hand .actions .action-group button{font-family:var(--display);font-weight:400;font-size:1.12rem;letter-spacing:.03em;text-transform:uppercase;border-radius:14px;border:2px solid var(--wood-edge);color:var(--wood-dark);background:linear-gradient(180deg,var(--brass-light),var(--brass) 48%,#b8812b);box-shadow:0 5px 0 var(--brass-dark),0 7px 0 var(--wood-edge),inset 0 2px #ffffff8c;text-shadow:0 1px 0 rgba(255,255,255,.35);transition:transform .06s ease,box-shadow .06s ease}.table-shell--ingame .hand .actions .action-group .btn:active,.table-shell--ingame .hand .actions .action-group button:active{transform:translateY(5px);box-shadow:0 0 0 var(--brass-dark),0 2px 0 var(--wood-edge),inset 0 2px #fff6}.table-shell--ingame .hand .actions .action-group .btn:disabled,.table-shell--ingame .hand .actions .action-group button:disabled{opacity:.45;filter:saturate(.5)}.table-shell--ingame .hand .actions .action-group .btn-split-group{border-radius:14px;border:2px solid var(--wood-edge);box-shadow:0 5px 0 var(--brass-dark),0 7px 0 var(--wood-edge);background:linear-gradient(180deg,var(--brass-light),var(--brass) 48%,#b8812b);overflow:hidden}.table-shell--ingame .hand .actions .action-group .btn-split-group>.btn{border:0;border-radius:0;box-shadow:inset 0 2px #ffffff8c;background:transparent}.table-shell--ingame .hand .actions .action-group .btn-split-group>.btn+.btn{border-left:2px solid var(--wood-edge)}.table-shell--ingame .hand .actions .action-group-free>.btn-default,.table-shell--ingame .hand .actions .action-group.respond .btn-default{color:var(--naipe);background:linear-gradient(180deg,var(--lacquer-light),var(--lacquer) 48%,#9a1f1a);box-shadow:0 5px 0 var(--lacquer-dark),0 7px 0 var(--wood-edge),inset 0 2px #ffffff59;text-shadow:0 1px 0 rgba(0,0,0,.4)}.table-shell--ingame .hand .actions .action-group-free>.btn-default:active,.table-shell--ingame .hand .actions .action-group.respond .btn-default:active{box-shadow:0 0 0 var(--lacquer-dark),0 2px 0 var(--wood-edge)}.table-shell--ingame .hand .actions .action-group .btn.btn-destructive{flex:0 0 auto;color:var(--naipe);background:linear-gradient(180deg,#7a4529,#4a2413);border:2px solid var(--wood-edge);box-shadow:0 5px #24100a,0 7px 0 var(--wood-edge),inset 0 2px #ffffff26;text-shadow:0 1px 0 rgba(0,0,0,.5);font-size:.95rem;padding:6px 14px;min-height:48px}.table-shell--ingame .hand .actions .action-group .btn.btn-destructive:active{box-shadow:0 0 #24100a,0 2px 0 var(--wood-edge)}.table-shell--ingame .hand .actions .action-label{font-family:var(--display);font-size:.72rem;letter-spacing:.06em;color:var(--brass-light);text-shadow:0 1px 0 rgba(0,0,0,.6)}.table-shell--ingame .ingame-menu.ingame-menu--open{background:linear-gradient(180deg,#4a2415,#2b140b);border-top:2px solid var(--wood-edge);box-shadow:0 -6px 0 var(--brass-dark),0 -20px 50px #0009}.table-shell--ingame .ingame-menu--open:before{background:var(--brass)}.table-shell--ingame .ingame-menu--open .btn,.table-shell--ingame .ingame-menu--open .voice-btn,.table-shell--ingame .ingame-menu--open .ingame-menu-code{color:var(--naipe)}.table-shell--ingame .table-center{background:color-mix(in srgb,var(--wood-dark) 70%,transparent);border:2px solid var(--wood-edge)}@media(prefers-reduced-motion:reduce){.table-shell--ingame .hand .actions .action-group .btn,.table-shell--ingame .hand .cards .card-wrap{transition:none}}}@media(max-width:900px)and (orientation:portrait){.status-strip{display:grid;grid-template-columns:minmax(0,1fr) auto}.table-shell--ingame .rank-help-btn{position:absolute;top:auto;right:22px;bottom:calc(100% + 30px);left:auto;width:36px;height:36px;min-width:36px;min-height:36px;z-index:6}.table-shell--ingame .nameplate-cell .nameplate-empty .nameplate-add-bot{background:linear-gradient(180deg,var(--brass-light),var(--brass) 48%,#b8812b);color:var(--wood-dark);border:2px solid var(--wood-edge);box-shadow:0 3px 0 var(--brass-dark),0 4px 0 var(--wood-edge);text-shadow:none}.table-shell--ingame .table-waiting{bottom:auto;top:58%;font-family:var(--display);color:var(--naipe);text-shadow:0 2px 0 rgba(0,0,0,.45)}.table-shell--ingame .hand .actions .action-group .btn.btn-destructive{font-size:.82rem;letter-spacing:0;padding:6px 10px}.table-shell--ingame .hand .actions .action-group .btn-split-group>.btn:first-child{padding-left:14px;padding-right:8px}}@media(max-width:900px)and (orientation:portrait){.table-shell--ingame .hand .actions .action-group .btn:before,.table-shell--ingame .hand .actions .action-group .btn-arcade:before,.table-shell--ingame .hand .actions .action-group button:before{display:none}.table-shell--ingame .hand .actions .action-group .btn-split-group>.btn{color:var(--wood-dark)}}@media(max-width:900px)and (orientation:portrait){.table-shell--ingame .hand .actions .action-group .btn-split-group:before,.table-shell--ingame .hand .actions .action-group .btn-split-group:after{display:none}.table-shell--ingame .hand-result{background:linear-gradient(180deg,#5a2c18,#3a1c0f);border:2px solid var(--wood-edge);border-radius:16px;box-shadow:0 6px 0 var(--wood-edge),0 20px 40px #0000008c,inset 0 1px #ffffff1f;color:var(--naipe)}.table-shell--ingame .hand-result-line{font-family:var(--display);font-weight:400;letter-spacing:.02em;text-shadow:0 2px 0 rgba(0,0,0,.5)}.table-shell--ingame .hand-result-line.team-A{color:#7dd3fc}.table-shell--ingame .hand-result-line.team-B{color:#fdba74}.table-shell--ingame .hand-result-actions>.muted{color:var(--brass-light)}.table-shell--ingame .hand-result-actions .btn,.table-shell--ingame .hand-result-actions button{font-family:var(--display);font-weight:400;font-size:1.1rem;text-transform:uppercase;letter-spacing:.03em;border-radius:14px;border:2px solid var(--wood-edge);color:var(--wood-dark);background:linear-gradient(180deg,var(--brass-light),var(--brass) 48%,#b8812b);box-shadow:0 5px 0 var(--brass-dark),0 7px 0 var(--wood-edge),inset 0 2px #ffffff8c;text-shadow:0 1px 0 rgba(255,255,255,.35)}.table-shell--ingame .hand-result-actions .btn:before,.table-shell--ingame .hand-result-actions button:before{display:none}.table-shell--ingame .action-toast{background:linear-gradient(180deg,#5a2c18,#3a1c0f);border:2px solid var(--wood-edge);border-radius:14px;box-shadow:0 5px 0 var(--wood-edge),0 14px 30px #00000080;color:var(--naipe);font-family:var(--display);font-weight:400;text-shadow:0 1px 0 rgba(0,0,0,.5)}.table-shell--ingame .action-toast .action-toast-name{color:var(--brass-light)}.table-shell--ingame .action-toast.team-A .action-toast-name{color:#7dd3fc}.table-shell--ingame .action-toast.team-B .action-toast-name{color:#fdba74}}@media(max-width:900px)and (orientation:portrait){.table-shell--ingame{grid-template-columns:minmax(0,1fr);width:100%;max-width:100vw;overflow-x:hidden}.table-shell--ingame .board,.table-shell--ingame .play-area,.table-shell--ingame .hand,.table-shell--ingame .hand .actions,.table-shell--ingame .hand .actions .action-group{min-width:0;max-width:100%}.table-shell--ingame .hand .actions .action-group-free{overflow-x:auto;padding-bottom:8px;scroll-padding:0 8px}.table-shell--ingame .hand .actions .action-group-free>*{flex:0 0 auto;min-width:96px}.table-shell--ingame .hand .actions .action-group.respond{flex-wrap:wrap}}
