:root{--bg-0: #000000;--bg-1: #0a0a0b;--bg-2: #111114;--bg-3: #17171b;--bg-4: #1f1f24;--bg-5: #2a2a30;--fg-1: #fafafa;--fg-2: #a1a1aa;--fg-3: #71717a;--fg-4: #52525b;--border-subtle: rgba(255, 255, 255, .06);--border-default: rgba(255, 255, 255, .1);--border-strong: rgba(255, 255, 255, .18);--amber-300: #fcd34d;--amber-400: #fbbf24;--amber-500: #f59e0b;--amber-600: #d97706;--amber-glow: rgba(251, 191, 36, .25);--amber-soft: rgba(251, 191, 36, .12);--success: #10b981;--success-soft: rgba(16, 185, 129, .14);--danger: #ef4444;--danger-soft: rgba(239, 68, 68, .14);--info: #60a5fa;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-8: 48px;--r-sm: 6px;--r-md: 10px;--r-lg: 14px;--r-xl: 20px;--r-full: 9999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow-md: 0 4px 14px rgba(0, 0, 0, .4);--shadow-lg: 0 10px 30px rgba(0, 0, 0, .5);--shadow-glow: 0 0 16px var(--amber-glow);--ease: cubic-bezier(.4, 0, .2, 1);--dur-fast: .12s;--dur-base: .18s;--dur-slow: .3s;--table-felt: radial-gradient(ellipse at 50% 60%, #1a160f 0%, #08060a 100%);--table-rail: #0a0908;--table-rail-border: #26221c;--card-back-bg: #7a1212;--fs-micro: 10px;--fs-xs: 11px;--fs-sm: 12px;--fs-base: 13px;--fs-md: 15px;--fs-lg: 20px;--fs-xl: 28px}*,*:before,*:after{box-sizing:border-box;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}input,textarea,select{-webkit-user-select:text;user-select:text}html,body{margin:0;padding:0;overflow:hidden;touch-action:manipulation}body{font-family:Inter,system-ui,sans-serif;background-color:var(--bg-1);color:var(--fg-1);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.custom-scrollbar::-webkit-scrollbar{width:3px;height:3px}.custom-scrollbar::-webkit-scrollbar-track{background:transparent}.custom-scrollbar::-webkit-scrollbar-thumb{background:#ffffff14;border-radius:var(--r-full)}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:#ffffff24}.surface{background:var(--bg-2);border:1px solid var(--border-subtle);border-radius:var(--r-lg)}.surface-raised{background:var(--bg-3);border:1px solid var(--border-default);border-radius:var(--r-lg)}.surface-interactive{background:var(--bg-2);border:1px solid var(--border-subtle);border-radius:var(--r-lg);transition:border-color var(--dur-base) var(--ease),background var(--dur-base) var(--ease),transform var(--dur-base) var(--ease)}.surface-interactive:hover{border-color:var(--border-default);background:var(--bg-3)}.glass{background:#ffffff08;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-subtle)}.glass-hover:hover{background:#ffffff0d;border-color:var(--border-default)}.glass-active{background:var(--amber-soft);border-color:#fbbf244d}.logo-hub{background:linear-gradient(135deg,#fff,#ffffffd9);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.logo-poker{background:linear-gradient(135deg,var(--amber-300) 0%,var(--amber-500) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.sidebar-nav-active{position:relative}.sidebar-nav-active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:60%;border-radius:0 3px 3px 0;background:var(--amber-400);box-shadow:0 0 8px var(--amber-glow)}.card-lift{transition:transform var(--dur-base) var(--ease),box-shadow var(--dur-base) var(--ease),border-color var(--dur-base) var(--ease)}.card-lift:hover{transform:translateY(-1px);box-shadow:var(--shadow-md);border-color:var(--border-strong)}.separator{height:1px;background:linear-gradient(90deg,transparent,var(--border-subtle) 30%,var(--border-subtle) 70%,transparent)}.chip-base{display:inline-flex;align-items:center;justify-content:center;font-weight:600;border-radius:var(--r-sm);border:1px solid var(--border-subtle);background:#ffffff08;color:var(--fg-2);cursor:pointer;transition:all var(--dur-fast) var(--ease);white-space:nowrap}.chip-base:hover{background:#ffffff0f;border-color:var(--border-default);color:var(--fg-1)}.chip-base:active{transform:scale(.97)}.chip-active{background:var(--amber-soft);border-color:#fbbf2480;color:var(--amber-300)}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);background:linear-gradient(135deg,var(--amber-400) 0%,var(--amber-600) 100%);color:#000;font-weight:700;border-radius:var(--r-md);padding:10px 20px;box-shadow:0 2px 8px #0006;transition:box-shadow var(--dur-base) var(--ease),transform var(--dur-fast) var(--ease)}.btn-primary:hover{box-shadow:var(--shadow-glow),0 2px 8px #0006}.btn-primary:active{transform:scale(.97)}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);background:#ffffff0a;border:1px solid var(--border-default);color:var(--fg-1);font-weight:600;border-radius:var(--r-md);padding:10px 20px;transition:all var(--dur-base) var(--ease)}.btn-secondary:hover{background:#ffffff0f;border-color:var(--border-strong)}.btn-secondary:active{transform:scale(.97)}.btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-1);background:transparent;color:var(--fg-2);font-weight:600;border-radius:var(--r-md);padding:6px 12px;transition:all var(--dur-fast) var(--ease)}.btn-ghost:hover{background:#ffffff0d;color:var(--fg-1)}.btn-destructive{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);background:var(--danger-soft);border:1px solid rgba(239,68,68,.5);color:#fca5a5;font-weight:700;border-radius:var(--r-md);padding:10px 20px;transition:all var(--dur-fast) var(--ease)}.btn-destructive:hover{background:#ef444440}.btn-destructive:active{transform:scale(.97)}.input-field{background:var(--bg-2);border:1px solid var(--border-default);border-radius:var(--r-md);padding:10px 12px;color:var(--fg-1);font-size:13px;transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease)}.input-field:focus{outline:none;border-color:var(--amber-400);box-shadow:0 0 0 3px var(--amber-glow)}.input-field::placeholder{color:var(--fg-4)}.label-section{font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.12em;color:var(--fg-3)}.mobile-nav-active-dot{position:absolute;bottom:-2px;left:50%;transform:translate(-50%);width:4px;height:4px;border-radius:50%;background:currentColor;box-shadow:0 0 6px currentColor}.route-enter{animation:fadeIn var(--dur-base) var(--ease) both}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}button:focus-visible,a:focus-visible{outline:2px solid var(--amber-400);outline-offset:2px;border-radius:var(--r-sm)}.perspective-container{perspective:2500px}.poker-table-surface{background:var(--table-felt);border-radius:140px;position:relative;box-shadow:inset 0 0 100px #000000e6,0 0 40px #0009;border:3px solid var(--table-rail-border);transition:background .5s ease,border-color .5s ease}.poker-table-rail{position:absolute;top:-22px;right:-22px;bottom:-22px;left:-22px;border-radius:160px;background:var(--table-rail);border:2px solid var(--table-rail-border);box-shadow:0 40px 100px #000;z-index:-1;transition:background .5s ease,border-color .5s ease}.poker-table-surface:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:url(https://www.transparenttextures.com/patterns/felt.png);opacity:.08;pointer-events:none;border-radius:inherit}.font-mono-poker{font-family:JetBrains Mono,ui-monospace,SFMono-Regular,monospace}.backface-hidden{backface-visibility:hidden;-webkit-backface-visibility:hidden}@keyframes acting-glow-amber{0%,to{opacity:.45;box-shadow:0 0 10px 5px #fbbf2459}50%{opacity:1;box-shadow:0 0 26px 12px #fbbf24b3}}.animate-acting-glow{position:relative}.animate-acting-glow:after{content:"";position:absolute;top:-3px;right:-3px;bottom:-3px;left:-3px;border-radius:inherit;border:1.5px solid rgba(251,191,36,.6);pointer-events:none;will-change:opacity,box-shadow;transform:translateZ(0);animation:acting-glow-amber .9s ease-in-out infinite;z-index:-1}@keyframes winner-glow{0%,to{box-shadow:0 0 10px 3px #10b98173,0 0 0 1.5px #10b98180}50%{box-shadow:0 0 28px 10px #10b981bf,0 0 0 2px #10b981b3}}.animate-winner-glow{animation:winner-glow 1.3s ease-in-out infinite}@keyframes loser-pulse{0%,to{box-shadow:0 0 6px 2px #ef444440}50%{box-shadow:0 0 18px 7px #ef44448c}}.animate-loser-pulse{animation:loser-pulse 1.5s ease-in-out infinite}@keyframes pulse-soft{0%,to{opacity:1}50%{opacity:.7}}.animate-pulse-soft{animation:pulse-soft 2s var(--ease) infinite}
