.roulette-machine{--felt:#0c3b2c;--felt-deep:#08261c;--roulette-beam:0deg}@property --roulette-beam{syntax:"<angle>";inherits:false;initial-value:0deg}@keyframes roulette-led{0%,to{opacity:.18;box-shadow:0 0 0 transparent}50%{opacity:1;box-shadow:0 0 10px rgba(232,200,114,.9)}}@keyframes roulette-led-spin{0%,to{opacity:.15;box-shadow:0 0 0 transparent}50%{opacity:1;box-shadow:0 0 12px rgba(62,224,160,.85)}}@keyframes roulette-led-win{0%,to{opacity:.3;box-shadow:0 0 4px rgba(62,224,160,.2)}50%{opacity:1;box-shadow:0 0 16px rgba(62,224,160,.95)}}@keyframes roulette-beam-spin{to{--roulette-beam:360deg}}@keyframes roulette-ticker{0%{transform:translateX(0)}to{transform:translateX(-50%)}}@keyframes roulette-marquee-shine{0%{background-position:0 50%}to{background-position:200% 50%}}@keyframes roulette-cabinet-pulse{0%,to{filter:brightness(1)}50%{filter:brightness(1.12)}}@keyframes roulette-meter-flicker{0%,46%,54%,to{opacity:1}50%{opacity:.72}}@keyframes roulette-pop{0%{opacity:0;transform:translate(-50%,-50%) scale(.72)}60%{opacity:1;transform:translate(-50%,-50%) scale(1.06)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes roulette-spin-ring{to{transform:rotate(1turn)}}@keyframes roulette-coin-fly{0%{opacity:0;transform:translate3d(0,8px,0) scale(.4) rotate(0deg)}18%{opacity:1}to{opacity:0;transform:translate3d(var(--dx),-88px,0) scale(1) rotate(var(--rot))}}.roulette-led{height:6px;width:6px;border-radius:999px;background:#e8c872;animation:roulette-led 1.6s ease-in-out infinite}.roulette-machine.is-spinning .roulette-led{animation-name:roulette-led-spin;animation-duration:.4s}.roulette-machine.is-winning .roulette-led{animation-name:roulette-led-win;animation-duration:.55s;background:#3ee0a0}.roulette-cabinet{position:relative;border-radius:1.55rem;padding:3px;background:linear-gradient(180deg,#f7e4a6,#c9a227 38%,#7a5a12);box-shadow:0 22px 60px rgba(0,0,0,.58),0 0 40px rgba(232,200,114,.16),inset 0 1px 0 rgba(255,248,220,.55)}@media (min-width:640px){.roulette-cabinet{border-radius:2rem;padding:4px}}.roulette-cabinet:before{content:"";position:absolute;inset:-2px;z-index:0;border-radius:inherit;padding:2px;background:conic-gradient(from var(--roulette-beam),transparent 0,transparent 55%,#fff6d4 62%,#e8c872 70%,transparent 82%);mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;animation:roulette-beam-spin 5.5s linear infinite;opacity:.7;pointer-events:none}.roulette-machine.is-spinning .roulette-cabinet:before,.roulette-machine.is-winning .roulette-cabinet:before{animation-duration:1.4s;opacity:1}.roulette-rivet{position:absolute;z-index:2;width:10px;height:10px;border-radius:999px;background:radial-gradient(circle at 35% 30%,#fff4c8,#c9a227 55%,#6f5414);box-shadow:0 1px 2px rgba(0,0,0,.55)}.roulette-face{position:relative;z-index:1;overflow:hidden;border-radius:1.4rem;background:radial-gradient(90% 60% at 50% 0,rgba(16,122,58,.16),transparent 50%),radial-gradient(90% 60% at 50% 0,rgba(232,200,114,.12),transparent 50%),linear-gradient(180deg,#14141c,#08080d);box-shadow:inset 0 0 0 1px rgba(232,200,114,.18),inset 0 18px 40px rgba(0,0,0,.35)}@media (min-width:640px){.roulette-face{border-radius:1.85rem}}.roulette-machine.is-winning .roulette-face{animation:roulette-cabinet-pulse .7s ease-in-out infinite}.roulette-marquee{background:linear-gradient(90deg,#c9a227,#fff6d4,#e8c872,#c9a227);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:roulette-marquee-shine 4.5s linear infinite}.roulette-ticker{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}.roulette-ticker-track{display:flex;width:max-content;animation:roulette-ticker 16s linear infinite}.roulette-machine.is-spinning .roulette-ticker-track{animation-duration:6s}.roulette-meter{min-width:0;border-radius:.9rem;border:1px solid rgba(232,200,114,.28);background:linear-gradient(180deg,#0d120d,#070907);box-shadow:inset 0 0 18px rgba(62,224,160,.06),inset 0 1px 0 rgba(255,255,255,.04);padding:.55rem .7rem}.roulette-meter p:last-child{margin-top:.15rem;font-family:var(--font-display),ui-serif,Georgia,serif;font-size:1.05rem;color:#7dffb4;text-shadow:0 0 12px rgba(62,224,160,.45);font-variant-numeric:tabular-nums;animation:roulette-meter-flicker 3.8s steps(2) infinite}.roulette-meter.is-bet p:last-child{color:#f4de9a;text-shadow:0 0 12px rgba(232,200,114,.4)}.roulette-meter.is-win p:last-child{color:#ffe27a;text-shadow:0 0 14px rgba(255,226,122,.55)}.roulette-stage{display:flex;flex-direction:column;align-items:center;gap:1.15rem;border-radius:1.2rem;background:radial-gradient(circle at 18% 12%,rgba(255,255,255,.05),transparent 22%),radial-gradient(circle at 50% 18%,rgba(232,200,114,.1),transparent 46%),repeating-linear-gradient(90deg,rgba(255,255,255,.015),rgba(255,255,255,.015) 1px,transparent 0,transparent 7px),linear-gradient(180deg,#0e3d2e,#08261c 55%,#061910);box-shadow:inset 0 1px 0 rgba(255,244,210,.16),inset 0 0 40px rgba(0,0,0,.35),0 0 0 1px rgba(122,90,18,.28);padding:1rem .75rem 1.1rem}@media (min-width:768px){.roulette-stage{padding:1.25rem 1.25rem 1.4rem}}.roulette-table{display:flex;width:100%;flex-direction:column;align-items:stretch;gap:1.15rem}.roulette-table .roulette-wheel-wrap{align-self:center}.roulette-lamp-col{display:none;flex-direction:column;justify-content:space-between;padding:.4rem 0}@media (min-width:640px){.roulette-lamp-col{display:flex}}.roulette-lamp-dot{width:8px;height:8px;border-radius:999px;background:#e8c872}.roulette-wheel-wrap{position:relative;width:min(100%,18.5rem);flex-shrink:0;aspect-ratio:1}@media (min-width:640px){.roulette-wheel-wrap{width:20.5rem}}@media (min-width:1024px){.roulette-wheel-wrap{width:22rem}}.roulette-inner,.roulette-wheel{position:relative;height:100%;width:100%}.roulette-wheel{will-change:transform;filter:drop-shadow(0 8px 16px rgba(0,0,0,.35))}.roulette-ball-track{pointer-events:none;position:absolute;inset:0;z-index:4;will-change:transform}.roulette-ball{position:absolute;top:1.1%;left:50%;height:13px;width:13px;margin-left:-6.5px;border-radius:999px;background:radial-gradient(circle at 30% 30%,#fff,#d8dde6 40%,#8a909a);box-shadow:0 0 8px rgba(255,255,255,.45),0 2px 4px rgba(0,0,0,.45);transition:top .75s cubic-bezier(.15,.8,.2,1)}.roulette-ball-track.is-dropped .roulette-ball{top:6.6%}.roulette-ball.is-spinning{filter:blur(.35px)}.roulette-hub{position:absolute;inset:33%;z-index:5;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.15rem;border-radius:999px;background:radial-gradient(circle at 40% 30%,#2a2418,#0a0a0e 70%);box-shadow:inset 0 0 0 1px rgba(232,200,114,.4),0 6px 16px rgba(0,0,0,.4);pointer-events:none}.roulette-board{width:100%;min-width:0;overflow-x:auto;padding-bottom:.25rem}.roulette-board.is-locked{pointer-events:none;opacity:.78}.roulette-grid{display:grid;width:100%;min-width:36rem;grid-template-columns:.72fr repeat(12,minmax(0,1fr)) .82fr;grid-template-rows:repeat(3,2.35rem) 2.2rem 2.35rem;gap:3px}@media (min-width:768px){.roulette-grid{min-width:0;grid-template-rows:repeat(3,2.7rem) 2.45rem 2.55rem}}.roulette-cell{position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;border:1px solid rgba(232,200,114,.32);background:#0a2a20;color:#f3ead6;font-size:.78rem;font-weight:600;transition:filter .12s ease,transform .12s ease}.roulette-cell:hover{filter:brightness(1.14)}.roulette-cell:active{transform:scale(.97)}.roulette-cell-label{display:inline-flex;align-items:center;gap:.35rem}.roulette-cell.is-red{background:linear-gradient(180deg,#d1243a,#8e1020)}.roulette-cell.is-black{background:linear-gradient(180deg,#2a2a32,#111114)}.roulette-cell.is-green{background:linear-gradient(180deg,#1aa35a,#0c6a38)}.roulette-cell.dozen,.roulette-cell.even,.roulette-cell.outside{background:linear-gradient(180deg,#14563d,#0b3325);padding:0 .25rem;font-size:.68rem;letter-spacing:.02em;text-transform:uppercase}.roulette-cell.dozen .roulette-cell-label,.roulette-cell.even .roulette-cell-label{white-space:nowrap}.roulette-cell.even-3{background:linear-gradient(180deg,#d1243a,#8e1020)}.roulette-cell.even-4{background:linear-gradient(180deg,#2a2a32,#111114)}.roulette-cell.is-win{box-shadow:inset 0 0 0 2px #f4de9a,0 0 16px rgba(232,200,114,.45);z-index:1}.roulette-cell.zero{grid-column:1;grid-row:1/span 3;font-size:1.2rem;clip-path:polygon(18% 0,100% 0,100% 100%,18% 100%,0 50%)}.roulette-cell.dozen-1{grid-column:2/span 4;grid-row:4}.roulette-cell.dozen-2{grid-column:6/span 4;grid-row:4}.roulette-cell.dozen-3{grid-column:10/span 4;grid-row:4}.roulette-cell.even-1{grid-column:2/span 2;grid-row:5}.roulette-cell.even-2{grid-column:4/span 2;grid-row:5}.roulette-cell.even-3{grid-column:6/span 2;grid-row:5}.roulette-cell.even-4{grid-column:8/span 2;grid-row:5}.roulette-cell.even-5{grid-column:10/span 2;grid-row:5}.roulette-cell.even-6{grid-column:12/span 2;grid-row:5}.roulette-diamond{display:inline-block;width:.55rem;height:.55rem;transform:rotate(45deg);box-shadow:0 0 0 1px rgba(255,255,255,.25)}.roulette-diamond.is-red{background:#ffd0d4}.roulette-diamond.is-black{background:#0a0a0c;box-shadow:0 0 0 1px rgba(243,234,214,.55)}.roulette-chip{position:absolute;right:3px;bottom:3px;z-index:2;display:grid;place-items:center;min-width:1.45rem;height:1.35rem;padding:0 .22rem;border-radius:999px;border:1px dashed rgba(244,222,154,.75);background:radial-gradient(circle at 30% 30%,#fff6d4,#c9a227);color:#1a1408;font-size:.58rem;font-weight:800;line-height:1;box-shadow:0 -2px 0 rgba(0,0,0,.18),0 2px 4px rgba(0,0,0,.28)}.roulette-chip.tone-ivory{background:radial-gradient(circle at 30% 28%,#fff,#efe6d4 55%,#cfc3aa);border-color:rgba(122,90,18,.45)}.roulette-chip.tone-crimson{background:radial-gradient(circle at 30% 28%,#ff8a98,#c41e3a 55%,#7a1020);border-color:rgba(255,220,220,.55);color:#fff8f4}.roulette-chip.tone-azure{background:radial-gradient(circle at 30% 28%,#9fd2ff,#1e4fd8 55%,#102a7a);border-color:rgba(220,236,255,.55);color:#fff8f4}.roulette-chip.tone-emerald{background:radial-gradient(circle at 30% 28%,#7dffb4,#0f7a3a 55%,#084422);border-color:rgba(210,255,230,.5);color:#fff8f4}.roulette-chip.tone-obsidian{background:radial-gradient(circle at 30% 28%,#3a3a42,#121214 60%,#050506);border-color:rgba(244,222,154,.7);color:#f4de9a}.roulette-history{display:flex;flex-wrap:wrap;justify-content:center;gap:.35rem;width:100%}.roulette-history span{min-width:1.7rem;border-radius:999px;border:1px solid rgba(232,200,114,.22);padding:.15rem .4rem;text-align:center;font-size:.72rem;font-weight:700}.roulette-select{position:relative;isolation:isolate;overflow:hidden}.roulette-select:before{content:"";position:absolute;inset:3px;border-radius:999px;border:1px dashed;opacity:.45;pointer-events:none}.roulette-select.tone-ivory{border-color:#d8c9a6;background:linear-gradient(180deg,#fffaf0,#d8c9a6);color:#1a1408}.roulette-select.tone-crimson{border-color:#ff8a98;background:linear-gradient(180deg,#e45a6a,#8c1022);color:#fff8f4}.roulette-select.tone-azure{border-color:#9fd2ff;background:linear-gradient(180deg,#4c7cff,#14308c);color:#fff8f4}.roulette-select.tone-emerald{border-color:#7dffb4;background:linear-gradient(180deg,#2ebd6e,#0c5a32);color:#fff8f4}.roulette-select.tone-obsidian{border-color:#e8c872;background:linear-gradient(180deg,#2a2a32,#0c0c10);color:#f4de9a}.roulette-select.is-active{box-shadow:0 0 0 2px #f4de9a,0 0 16px rgba(232,200,114,.4);transform:translateY(-1px)}.roulette-spin-btn{position:relative;width:5.6rem;height:5.6rem;border-radius:999px;color:#fff8f4;letter-spacing:.16em;text-transform:uppercase;background:radial-gradient(circle at 32% 28%,#ff9aa6 0,#e31b3a 42%,#8c1022 78%);box-shadow:inset 0 2px 0 rgba(255,255,255,.42),inset 0 -10px 14px rgba(80,0,12,.55),0 8px 0 #5a0c16,0 16px 28px rgba(0,0,0,.45);transition:transform .12s ease,box-shadow .12s ease,filter .16s ease}@media (min-width:640px){.roulette-spin-btn{width:6.2rem;height:6.2rem}}.roulette-spin-btn:after{content:"";position:absolute;inset:9px;border-radius:999px;border:2px solid rgba(255,220,180,.28);pointer-events:none}.roulette-spin-btn:hover:not(:disabled){filter:brightness(1.08)}.roulette-spin-btn:active:not(:disabled){transform:translateY(6px);box-shadow:inset 0 2px 0 rgba(255,255,255,.28),0 2px 0 #5a0c16,0 8px 16px rgba(0,0,0,.4)}.roulette-spin-btn:disabled{cursor:not-allowed;filter:grayscale(.25) brightness(.72)}.roulette-spin-ring{position:absolute;inset:-7px;border-radius:999px;border:2px dashed rgba(232,200,114,.55);animation:roulette-spin-ring 1.1s linear infinite;pointer-events:none}.roulette-banner{animation:roulette-pop .42s cubic-bezier(.16,1,.3,1) both}.roulette-coin-burst{position:absolute;inset:0;z-index:18;pointer-events:none;overflow:hidden}.roulette-coin{position:absolute;top:42%;left:50%;width:13px;height:13px;margin-left:-6px;border-radius:999px;background:radial-gradient(circle at 30% 28%,#fff6d4,#e8c872 46%,#9a7418);box-shadow:inset 0 0 0 1.5px rgba(122,90,18,.55);animation:roulette-coin-fly .98s cubic-bezier(.16,1,.3,1) forwards;animation-delay:var(--delay)}@media (prefers-reduced-motion:reduce){.roulette-ball-track,.roulette-banner,.roulette-cabinet:before,.roulette-coin,.roulette-led,.roulette-machine.is-winning .roulette-face,.roulette-marquee,.roulette-meter p:last-child,.roulette-spin-ring,.roulette-ticker-track,.roulette-wheel{animation:none;transition:none!important}}