@tailwind base;@tailwind components;@tailwind utilities;:root{--table-green: #0d5e3a;--table-green-dark: #0a4a2e;--table-green-light: #115740;--felt-texture: #115740;--chip-gold: #ffd700;--chip-gold-dark: #b8860b;--chip-gold-light: #ffed4e;--casino-red: #c41e3a;--casino-red-light: #ef4444;--casino-blue: #1e3a8a;--casino-blue-light: #3b82f6;--bg-dark-900: #0A0A0A;--bg-dark-800: #121212;--bg-dark-700: #1A1A1A;--bg-dark-600: #242424;--glass-light: rgba(255, 255, 255, .05);--glass-medium: rgba(255, 255, 255, .1);--glass-strong: rgba(255, 255, 255, .15);--glass-dark: rgba(0, 0, 0, .4);--glass-dark-strong: rgba(0, 0, 0, .7);--electric-cyan: #00F5FF;--electric-purple: #B026FF;--electric-pink: #FF0080;--electric-green: #00FF87;--neon-glow: rgba(255, 215, 0, .3);--glow-gold: 0 0 20px rgba(255, 215, 0, .5);--glow-green: 0 0 20px rgba(16, 185, 129, .5);--glow-red: 0 0 20px rgba(239, 68, 68, .5);--glow-blue: 0 0 20px rgba(59, 130, 246, .5);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .2);--shadow-sm: 0 2px 4px rgba(0, 0, 0, .25);--shadow-md: 0 4px 12px rgba(0, 0, 0, .3);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .35);--shadow-xl: 0 12px 40px rgba(0, 0, 0, .4);--shadow-2xl: 0 20px 60px rgba(0, 0, 0, .5);--shadow-card: 0 4px 12px rgba(0, 0, 0, .3);--shadow-heavy: 0 10px 40px rgba(0, 0, 0, .5);--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--space-3xl: 4rem;--radius-sm: .5rem;--radius-md: .75rem;--radius-lg: 1rem;--radius-xl: 1.5rem;--radius-2xl: 2rem;--radius-full: 9999px;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .35s cubic-bezier(.4, 0, .2, 1);--transition-bounce: .5s cubic-bezier(.34, 1.56, .64, 1);--z-base: 1;--z-card: 10;--z-dropdown: 100;--z-sticky: 500;--z-modal: 1000;--z-tooltip: 2000}*{margin:0;padding:0;box-sizing:border-box}*:before,*:after{box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Montserrat,Roboto,sans-serif;background:linear-gradient(135deg,#0a1612 0%,#1a3a2e 50%,#0a1612 100%);min-height:100vh;overflow-x:hidden;color:#fff;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}#root{width:100%;min-height:100vh}.felt-texture{background:radial-gradient(circle at 20% 50%,rgba(17,87,64,.4) 0%,transparent 50%),radial-gradient(circle at 80% 50%,rgba(17,87,64,.4) 0%,transparent 50%),linear-gradient(135deg,var(--table-green) 0%,var(--table-green-dark) 100%);position:relative}.felt-texture:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(255,255,255,.03) 2px,rgba(255,255,255,.03) 4px),repeating-linear-gradient(90deg,transparent,transparent 2px,rgba(0,0,0,.05) 2px,rgba(0,0,0,.05) 4px);pointer-events:none;opacity:.6}.table-border{border:8px solid #8b6914;box-shadow:inset 0 0 0 4px #daa520,inset 0 0 20px #00000080,0 20px 60px #000c,0 0 40px #daa52033;position:relative}.glass{background:var(--glass-light);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-medium);box-shadow:var(--shadow-md);transition:all var(--transition-base)}.glass:hover{background:rgba(255,255,255,.08);border-color:var(--glass-strong);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.glass-strong{background:rgba(255,255,255,.12);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--glass-strong);box-shadow:var(--shadow-lg)}.glass-dark{background:var(--glass-dark);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.05)}.glass-dark-strong{background:var(--glass-dark-strong);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.1)}.progressive-blur{mask-image:linear-gradient(to bottom,black 0%,black 70%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,black 0%,black 70%,transparent 100%)}@keyframes dealCard{0%{transform:translate(-100vw) translateY(-50vh) rotate(-30deg) scale(.5);opacity:0}60%{transform:translate(5px) translateY(5px) rotate(2deg) scale(1.05);opacity:1}to{transform:translate(0) translateY(0) rotate(0) scale(1);opacity:1}}@keyframes flipCard{0%{transform:rotateY(0) scale(1)}50%{transform:rotateY(90deg) scale(1.1)}to{transform:rotateY(180deg) scale(1)}}@keyframes chipDrop{0%{transform:translateY(-30px) scale(1.3) rotate(0);opacity:0}50%{transform:translateY(5px) scale(.9) rotate(180deg)}70%{transform:translateY(-2px) scale(1.05) rotate(350deg)}to{transform:translateY(0) scale(1) rotate(360deg);opacity:1}}@keyframes pulse-glow{0%,to{box-shadow:0 0 5px var(--chip-gold),0 0 10px var(--chip-gold),0 0 15px #ffd7004d}50%{box-shadow:0 0 10px var(--chip-gold),0 0 20px var(--chip-gold),0 0 30px var(--chip-gold),0 0 40px #ffd70080}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInFromTop{0%{opacity:0;transform:translateY(-40px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes bounce-subtle{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes wiggle{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}.card-deal{animation:dealCard .6s cubic-bezier(.34,1.56,.64,1)}.card-flip{animation:flipCard .6s ease-in-out}.chip-animate{animation:chipDrop .6s cubic-bezier(.34,1.56,.64,1)}.pulse-gold{animation:pulse-glow 2s ease-in-out infinite}.fade-in-up{animation:fadeInUp .5s ease-out}.slide-in-top{animation:slideInFromTop .4s ease-out}.scale-in{animation:scaleIn .3s ease-out}.bounce-subtle{animation:bounce-subtle 1s ease-in-out infinite}.wiggle{animation:wiggle .5s ease-in-out infinite}.btn-premium{position:relative;overflow:hidden;transition:all var(--transition-base)}.btn-premium:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.3) 0%,transparent 70%);transform:translate(-50%,-50%);transition:width .6s,height .6s}.btn-premium:hover:before{width:400px;height:400px}.btn-premium:hover{transform:translateY(-2px) scale(1.02);box-shadow:var(--shadow-xl)}.btn-premium:active{transform:translateY(0) scale(.98);transition:all .1s}.btn-premium:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(45deg,transparent,rgba(255,255,255,.1),transparent);transform:translate(-100%);transition:transform .6s}.btn-premium:hover:after{transform:translate(100%)}.card-3d{transform-style:preserve-3d;transition:all var(--transition-base)}.card-3d:hover{transform:perspective(1000px) rotateY(5deg) rotateX(2deg) translateY(-5px) translateZ(10px);box-shadow:var(--shadow-2xl)}.card-lift{transition:all var(--transition-base)}.card-lift:hover{transform:translateY(-8px);box-shadow:var(--shadow-xl)}.chip-glow{box-shadow:0 0 10px #ffd70066,0 0 20px #ffd70033,inset 0 2px 4px #fff6,inset 0 -2px 4px #0006;transition:all var(--transition-base)}.chip-glow:hover{box-shadow:0 0 20px #ffd70099,0 0 40px #ffd7004d,0 0 60px #ffd7001a,inset 0 2px 4px #ffffff80,inset 0 -2px 4px #00000080;transform:scale(1.1) translateY(-5px) rotate(5deg)}.neon-text{text-shadow:0 0 5px var(--chip-gold),0 0 10px var(--chip-gold),0 0 20px var(--chip-gold),0 0 40px var(--chip-gold-dark),0 0 80px var(--chip-gold-dark);animation:pulse-glow 2s ease-in-out infinite}.neon-text-static{text-shadow:0 0 7px var(--chip-gold),0 0 14px var(--chip-gold),0 0 21px var(--chip-gold)}.glow-gold{box-shadow:var(--glow-gold)}.glow-green{box-shadow:var(--glow-green)}.glow-red{box-shadow:var(--glow-red)}.glow-blue{box-shadow:var(--glow-blue)}.skeleton{background:linear-gradient(90deg,rgba(255,255,255,.05) 0%,rgba(255,255,255,.1) 50%,rgba(255,255,255,.05) 100%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite}.loading-spinner{border:3px solid rgba(255,255,255,.1);border-top-color:var(--chip-gold);border-radius:50%;width:40px;height:40px;animation:spin .8s linear infinite}.loading-dots:after{content:"...";display:inline-block;animation:shimmer 1.5s ease-in-out infinite}.training-overlay{background:linear-gradient(135deg,rgba(30,58,138,.15) 0%,rgba(29,78,216,.1) 100%);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(59,130,246,.3);border-left:4px solid var(--casino-blue-light)}.feedback-success{background:linear-gradient(135deg,rgba(16,185,129,.15) 0%,rgba(5,150,105,.1) 100%);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(16,185,129,.3);border-left:4px solid #10b981;animation:fadeInUp .4s ease-out}.feedback-error{background:linear-gradient(135deg,rgba(239,68,68,.15) 0%,rgba(220,38,38,.1) 100%);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(239,68,68,.3);border-left:4px solid #ef4444;animation:fadeInUp .4s ease-out}.feedback-warning{background:linear-gradient(135deg,rgba(245,158,11,.15) 0%,rgba(217,119,6,.1) 100%);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(245,158,11,.3);border-left:4px solid #f59e0b;animation:fadeInUp .4s ease- .player-label {font-family: "Montserrat",sans-serif; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: #FFFFFF; text-shadow: 0 0 10px rgba(255,215,0,.6),0 0 20px rgba(255,215,0,.4),0 2px 8px rgba(0,0,0,.6); border: none !important; background: none !important; padding: 0 !important; box-shadow: none !important; outline: none !important;} .stat-card {background: linear-gradient(145deg,rgba(255,255,255,.08) 0%,rgba(255,255,255,.02) 100%); backdrop-filter: blur(10px); border: 1px solid rgba(255,215,0,.15); transition: all var(--transition-base); position: relative; overflow: hidden;} .stat-card::before {content: ""; position: absolute; top: 0; left: -100%; width: 100%; height: 100%; background: linear-gradient(90deg,transparent,rgba(255,215,0,.1),transparent); transition: left .6s;} .stat-card:hover {background: linear-gradient(145deg,rgba(255,255,255,.12) 0%,rgba(255,255,255,.04) 100%); border-color: var(--chip-gold); transform: translateY(-4px); box-shadow: var(--shadow-lg);} .stat-card:hover::before {left: 100%;} .modal-backdrop {backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); background: rgba(0,0,0,.75); animation: fadeInUp .3s ease-out;} ::-webkit-scrollbar {width: 10px; height: 10px;} ::-webkit-scrollbar-track {background: rgba(0,0,0,.2); border-radius: 5px;} ::-webkit-scrollbar-thumb {background: linear-gradient(180deg,var(--chip-gold) 0%,var(--chip-gold-dark) 100%); border-radius: 5px; border: 2px solid transparent; background-clip: padding-box;} ::-webkit-scrollbar-thumb:hover {background: linear-gradient(180deg,var(--chip-gold-light) 0%,var(--chip-gold) 100%); background-clip: padding-box;} * {scrollbar-width: thin; scrollbar-color: var(--chip-gold) rgba(0,0,0,.2);} *:focus-visible {outline: 2px solid var(--chip-gold); outline-offset: 2px; border-radius: var(--radius-sm);} button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible {outline: 2px solid var(--chip-gold); outline-offset: 4px;} *:focus:not(:focus-visible) {outline: none;} .theme-classic { --table-green: #0d5e3a; --accent: #ffd700; --bg-primary: #1a3a2e; } .theme-modern { --table-green: #1f2937; --accent: #3b82f6; --bg-primary: #111827; } .theme-high-contrast { --table-green: #000000; --accent: #facc15; --bg-primary: #0A0A0A; } .theme-neon { --table-green: #1a1a2e; --accent: var(--electric-cyan); --bg-primary: #0f0f1e; } .text-balance {text-wrap: balance;} .no-scrollbar::-webkit-scrollbar {display: none;} .no-scrollbar {-ms-overflow-style: none; scrollbar-width: none;} .grayscale {filter: grayscale(100%);} .blur-sm {filter: blur(4px);} .blur-md {filter: blur(8px);} .backdrop-blur {backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px);} @media (max-width: 1024px) {:root { --space-3xl: 3rem; --space-2xl: 2rem; }} @media (max-width: 768px) {body {font-size: 14px;} .glass,.glass-strong,.glass-dark {backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px);} .card-3d:hover {transform: translateY(-3px);} :root { --space-3xl: 2rem; --space-2xl: 1.5rem; }} @media (max-width: 640px) {.neon-text {text-shadow: 0 0 3px var(--chip-gold),0 0 6px var(--chip-gold);}} @media print {.no-print,.glass,.glass-strong,.neon-text {display: none !important;} body {background: white; color: black;}} @media (prefers-reduced-motion: reduce) {*,*::before,*::after {animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important;}} @media (prefers-contrast: high) {.glass,.glass-strong {border: 2px solid currentColor;} .btn-premium {border: 2px solid currentColor;}} @media (prefers-color-scheme: light) {} .card-3d,.bg-white,.bg-gradient-to-br.from-white,[class*="rounded-xl"][class*="shadow"] {overflow: hidden !important; box-sizing: border-box !important;} .bg-gradient-to-br.from-white.to-gray-100 {padding: .5rem .4rem !important;} .font-mono {line-height: .85 !important;} .rotate-180 .font-mono,.rotate-180 .text-2xl,.rotate-180 .text-3xl,.rotate-180 .text-4xl {margin: 0 !important; padding: 0 !important; line-height: .8 !important;} @keyframes float {0%,100% {transform: translateY(0) rotate(0deg);} 50% {transform: translateY(-20px) rotate(5deg);}} .animate-float {animation: float 6s ease-in-out infinite;} @keyframes fade-in-up {from {opacity: 0; transform: translateY(30px);} to {opacity: 1; transform: translateY(0);}} .animate-fade-in-up {animation: fade-in-up .8s ease-out forwards;}}
