:root{--font-display:"Outfit",system-ui,-apple-system,sans-serif;--font-body:"Crimson Pro",Georgia,serif;--color-bg-primary:#0a0a0a;--color-bg-secondary:#0f0f0f;--color-accent:#10b981;--color-accent-glow:rgba(16,185,129,0.3);--shadow-brutal:8px 8px 0 rgba(16,185,129,0.2);--shadow-glow:0 0 40px var(--color-accent-glow)}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.font-display,h1,h2,h3{font-family:var(--font-display);font-weight:900;letter-spacing:-.02em}::selection{background-color:var(--color-accent);color:#000}::-webkit-scrollbar-track{background:var(--color-bg-primary)}::-webkit-scrollbar-thumb{background:#27272a;border:2px solid var(--color-bg-primary)}::-webkit-scrollbar-thumb:hover{background:var(--color-accent)}:focus-visible{outline:3px solid var(--color-accent)}.hover-brutal{position:relative;transition:transform .2s cubic-bezier(.34,1.56,.64,1)}.hover-brutal:hover{transform:translate(-4px,-4px)}.hover-brutal:after{content:"";position:absolute;inset:0;border:2px solid var(--color-accent);opacity:0;transition:opacity .2s ease;pointer-events:none}.hover-brutal:hover:after{opacity:.3;transform:translate(4px,4px)}@keyframes noise{0%,to{transform:translate(0)}10%{transform:translate(-5%,-10%)}20%{transform:translate(-15%,5%)}30%{transform:translate(7%,-25%)}40%{transform:translate(-5%,25%)}50%{transform:translate(-15%,10%)}60%{transform:translate(15%)}70%{transform:translateY(15%)}80%{transform:translate(3%,25%)}90%{transform:translate(-10%,10%)}}.grain-overlay{animation:noise 8s steps(10) infinite}@keyframes staggerFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideRight{0%{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}.stagger-item{animation:staggerFadeIn .6s ease-out backwards}.glow-emerald{text-shadow:0 0 40px var(--color-accent-glow)}.border-glow{box-shadow:0 0 0 1px var(--color-accent),0 0 20px var(--color-accent-glow)}.brutal-card{transition:all .3s cubic-bezier(.34,1.56,.64,1)}.brutal-card:hover{transform:translateY(-8px)}.cta-brutal{position:relative;font-weight:900;text-transform:uppercase;letter-spacing:.05em;transition:all .2s ease}.cta-brutal:hover{transform:scale(1.05)}.cta-brutal:active{transform:scale(.95)}.angular-accent{clip-path:polygon(0 0,100% 0,100% 80%,80% 100%,0 100%)}@media (max-width:768px){:root{--shadow-brutal:4px 4px 0 rgba(16,185,129,0.2)}h1{font-size:clamp(2.5rem,10vw,4rem)}h2{font-size:clamp(2rem,8vw,3rem)}}@import url("https://fonts.googleapis.com/css2?family=Playfair+Display:wght@700;900&family=Outfit:wght@400;600;800&display=swap");:root{--casino-felt-dark:#0a2818;--casino-felt:#0f5132;--casino-felt-light:#1a5d3a;--casino-felt-surface:#2d7a4f;--casino-gold:#ffd700;--casino-gold-dark:#b8860b;--casino-gold-glow:rgba(255,215,0,0.4);--casino-wood:#8b4513;--casino-wood-dark:#5c2e0a;--text-primary:#ffffff;--text-cream:#f5f5dc;--text-muted:#a7c5b8;--text-gold:#ffd700;--surface-elevated:#1a5d3a;--surface-input:#0d3a24;--surface-hover:#246742;--border-gold:#b8860b;--border-light:rgba(255,255,255,0.15);--border-glow:rgba(255,215,0,0.6);--font-display:"Playfair Display",Georgia,serif;--font-body:"Outfit",system-ui,sans-serif;--shadow-gold:0 0 30px rgba(255,215,0,0.3);--shadow-deep:0 10px 40px rgba(0,0,0,0.5);--shadow-inset:inset 0 2px 10px rgba(0,0,0,0.3);--gradient-felt:linear-gradient(145deg,#1a5d3a,#0f5132 50%,#0a2818);--gradient-gold:linear-gradient(135deg,#ffd700,#ffed4a 50%,#ffd700);--gradient-surface:linear-gradient(180deg,#2d7a4f,#1a5d3a)}body{background:var(--casino-felt-dark);color:var(--text-primary);font-family:var(--font-body)}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:900;color:var(--text-cream);letter-spacing:-.02em}::selection{background-color:var(--casino-gold);color:var(--casino-felt-dark)}::-webkit-scrollbar{width:12px}::-webkit-scrollbar-track{background:var(--casino-felt-dark)}::-webkit-scrollbar-thumb{background:var(--casino-wood);border:2px solid var(--casino-felt-dark)}::-webkit-scrollbar-thumb:hover{background:var(--casino-gold-dark)}:focus-visible{outline:2px solid var(--casino-gold);outline-offset:2px;box-shadow:var(--shadow-gold)}.felt-texture{background:var(--gradient-felt);position:relative}.felt-texture:before{content:"";position:absolute;inset:0;background-image:repeating-linear-gradient(45deg,transparent,transparent 2px,rgba(0,0,0,.02) 0,rgba(0,0,0,.02) 4px);pointer-events:none}.gold-glow{text-shadow:0 0 20px var(--casino-gold-glow);color:var(--casino-gold)}input,select,textarea{background:var(--surface-input)!important;border:2px solid var(--border-gold)!important;color:var(--text-primary)!important;font-weight:600}input::placeholder,textarea::placeholder{color:var(--text-muted)!important;opacity:1!important}input:focus,select:focus,textarea:focus{border-color:var(--casino-gold)!important;box-shadow:0 0 0 3px var(--casino-gold-glow)!important}button{font-family:var(--font-body);font-weight:800;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn-gold{background:var(--gradient-gold);color:var(--casino-felt-dark);border:2px solid var(--casino-gold-dark);box-shadow:var(--shadow-gold),var(--shadow-deep);text-shadow:0 1px 2px rgba(0,0,0,.2)}.btn-gold:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 0 40px rgba(255,215,0,.5),var(--shadow-deep)}.btn-gold:active:not(:disabled){transform:translateY(0)}.btn-gold:disabled{opacity:.5;cursor:not-allowed}.btn-felt{background:var(--gradient-surface);color:var(--text-cream);border:2px solid var(--border-light)}.btn-felt:hover:not(:disabled){background:var(--surface-hover);border-color:var(--casino-gold)}.selection-check{position:relative;overflow:hidden}.selection-check:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(0);font-size:2rem;font-weight:900;color:var(--casino-gold);animation:checkPop .4s cubic-bezier(.68,-.55,.265,1.55)}@keyframes checkPop{0%{transform:translate(-50%,-50%) scale(0) rotate(-45deg);opacity:0}50%{opacity:1}to{transform:translate(-50%,-50%) scale(1) rotate(0deg);opacity:1}}input[type=checkbox]:checked+label,input[type=radio]:checked+label{border-color:var(--casino-gold)!important;background:var(--surface-hover)!important;box-shadow:var(--shadow-gold)}@keyframes cardDeal{0%{opacity:0;transform:translateY(-100px) rotateX(-90deg)}60%{opacity:1;transform:translateY(10px) rotateX(5deg)}to{opacity:1;transform:translateY(0) rotateX(0)}}@keyframes chipStack{0%{transform:translateY(-20px);opacity:0}50%{transform:translateY(5px)}to{transform:translateY(0);opacity:1}}@keyframes goldShimmer{0%{background-position:-200%}to{background-position:200%}}.gold-shimmer{background:linear-gradient(90deg,var(--casino-gold-dark) 0,var(--casino-gold) 50%,var(--casino-gold-dark) 100%);background-size:200% 100%;animation:goldShimmer 3s linear infinite;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.stagger-item{animation:slideUp .6s cubic-bezier(.4,0,.2,1) backwards}.stagger-item:first-child{animation-delay:.1s}.stagger-item:nth-child(2){animation-delay:.2s}.stagger-item:nth-child(3){animation-delay:.3s}.stagger-item:nth-child(4){animation-delay:.4s}.stagger-item:nth-child(5){animation-delay:.5s}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.toggle-switch{position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.toggle-switch:before{content:"";position:absolute;inset:0;background:var(--casino-gold);border-radius:inherit;transform:scaleX(0);transform-origin:left;transition:transform .3s cubic-bezier(.4,0,.2,1)}.toggle-switch.active:before{transform:scaleX(1)}.table-felt{background:radial-gradient(ellipse at center,#1a5d3a 0,#0f5132 50%,#0a2818 100%);position:relative}.table-felt:after{content:"";position:absolute;inset:0;background-image:repeating-linear-gradient(0deg,transparent,transparent 3px,rgba(0,0,0,.03) 0,rgba(0,0,0,.03) 6px),repeating-linear-gradient(90deg,transparent,transparent 3px,rgba(0,0,0,.03) 0,rgba(0,0,0,.03) 6px);opacity:.5;pointer-events:none}@media (max-width:640px){:root{--shadow-gold:0 0 20px rgba(255,215,0,0.3)}h1{font-size:clamp(2rem,8vw,3rem)}h2{font-size:clamp(1.5rem,6vw,2.5rem)}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media print{body{background:white;color:black}.felt-texture,.table-felt{background:white!important}}