/* Progressive enhancement: content remains visible without animation support. */
:root{--ui-gold:#d6bd78;--ui-ease:cubic-bezier(.22,1,.36,1)}
body{font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif}
button,input,select,textarea{font-family:inherit}
button,a,input,select,textarea,summary{touch-action:manipulation}
:where(button,a,input,select,textarea,summary):focus-visible{outline:2px solid var(--ui-gold);outline-offset:4px}
.bg-canvas{pointer-events:none;overflow:hidden;contain:strict}
.bg-canvas .glow-orb{animation:pb-ambient 24s ease-in-out infinite alternate;will-change:auto}
.bg-canvas .orb-2{animation-delay:-8s;animation-duration:30s}
.bg-canvas .orb-3{animation-delay:-16s;animation-duration:36s}
.bg-canvas .orb-4{animation:none}
.btn,.pb-roulette-demo,.cv2-tab{transition:background-color .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s var(--ui-ease)}
.btn:active:not(:disabled),.pb-roulette-demo:active:not(:disabled){transform:scale(.98)}
.pb-vip-perk{transition:border-color .25s ease,transform .3s var(--ui-ease)}
@media(hover:hover) and (pointer:fine){
 .btn:hover:not(:disabled),.pb-roulette-demo:hover:not(:disabled){box-shadow:0 4px 20px #d6bd7820;transform:translateY(-2px)}
 .pb-vip-perk:hover{border-color:var(--ui-gold);transform:translateY(-4px)}
}
.pb-vip,.pb-roulette{animation:pb-panel-in .35s var(--ui-ease) both}
@keyframes pb-panel-in{from{opacity:.65;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes pb-ambient{from{transform:translate3d(-12px,-8px,0) scale(.98)}to{transform:translate3d(16px,12px,0) scale(1.04)}}
@media(max-width:600px){
 .bg-canvas .orb-2,.bg-canvas .orb-3,.bg-canvas .orb-4{display:none}
 .bg-canvas .glow-orb{animation-duration:36s}
 input,select,textarea{font-size:16px}
 .btn,.cv2-tab{min-height:44px}
}
@media(prefers-reduced-motion:reduce){
 *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}
