/* Shared roulette: a quiet amount panel, a large wheel, and direct number picks. */
#game-room[data-game="roulette"]{--roulette-line:#ffffff16;--roulette-muted:#a6aec4}
#game-room[data-game="roulette"] .room-layout{grid-template-columns:230px minmax(0,1fr);gap:18px}
#game-room[data-game="roulette"] .control-panel{grid-column:1;grid-row:1;background:linear-gradient(150deg,#25263b,#141a29);border:1px solid var(--roulette-line);border-radius:18px;padding:22px 18px}
#game-room[data-game="roulette"] .table-panel{grid-column:2;grid-row:1;padding:22px;background:linear-gradient(140deg,#202438f5,#121725f5);border-color:var(--roulette-line);border-radius:18px}
#game-room[data-game="roulette"] #stage{display:block;min-height:0;padding:0;margin:22px 0 0;background:none;border:0;outline:0;border-radius:0;box-shadow:none;overflow:visible;font-size:14px}
#game-room[data-game="roulette"] #stage:before,#game-room[data-game="roulette"] #stage:after{display:none}
.roulette-arena{display:grid;grid-template-columns:minmax(0,1fr) 220px;align-items:center;gap:26px}
#game-room[data-game="roulette"] .roulette-machine{width:min(100%,500px)!important;margin:10px auto 24px;box-shadow:0 20px 50px #0006,0 0 55px #a88aff13;isolation:isolate}
#game-room[data-game="roulette"] .roulette-rotor{display:block;filter:none}
#game-room[data-game="roulette"] .roulette-pointer{position:absolute;top:0!important;left:50%;transform:translateX(-50%);font-size:25px!important;color:#ede3ff;text-shadow:0 0 16px #c5a0ff;line-height:1;z-index:5}
#game-room[data-game="roulette"] .roulette-ball{width:9px;height:9px;left:calc(50% - 4.5px);top:6%;background:#fff;box-shadow:0 0 12px #fff9}
.roulette-timer-ring{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg);pointer-events:none}
.roulette-timer-ring circle{fill:none;stroke:#47dfb0;stroke-width:4;stroke-linecap:round;stroke-dasharray:100 100;transition:none;filter:drop-shadow(0 0 4px #47dfb066)}
.roulette-hub{position:absolute;inset:28%;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:radial-gradient(circle at 50% 0,#252639,#131927 80%);box-shadow:0 0 0 1px #b799ec55,0 8px 25px #0005;z-index:4;text-align:center;pointer-events:none}
.roulette-hub>span{font-size:clamp(8px,1vw,11px);font-weight:700;letter-spacing:1px;color:#c4c6d5}
.roulette-hub>strong{font-size:clamp(40px,5vw,72px);font-weight:800;line-height:1;letter-spacing:-3px;color:#faf5ff}
.roulette-hub>strong small{font-size:16px;letter-spacing:0;color:#999fb5;margin-left:3px}
.roulette-hub>strong.red{color:#ff647f}.roulette-hub>strong.green{color:#4ce3b5}
.roulette-hub>em{font-size:clamp(7px,.75vw,9px);font-style:normal;letter-spacing:1px;color:#959db4}
.hub-spinning{animation:rouletteHubSpin 2s linear infinite}@keyframes rouletteHubSpin{to{transform:rotate(360deg)}}
.roulette-round-panel{align-self:stretch;border:1px solid var(--roulette-line);background:#10152266;border-radius:14px;padding:15px;display:flex;flex-direction:column;max-height:500px;min-height:320px}
.roulette-panel-title{font-size:10px;font-weight:800;letter-spacing:1.5px;display:flex;justify-content:space-between;align-items:center;color:#d9daea}.roulette-panel-title b{border-radius:6px;background:#ffffff0a;padding:5px 8px;color:#b8a0f4}
.roulette-round-total{padding:19px 0 15px;border-bottom:1px solid var(--roulette-line);display:flex;flex-direction:column;gap:7px}.roulette-round-total span{font-size:8px;letter-spacing:1.3px;color:#99a0b6}.roulette-round-total strong{font-size:25px;letter-spacing:-.7px}
#roulette-players{overflow:auto;flex:1}.roulette-player{display:flex;align-items:center;gap:8px;padding:12px 0;border-bottom:1px solid #ffffff09;font-size:11px}.roulette-player-avatar{width:28px;height:28px;border:1px solid #b594ff3b;border-radius:8px;background:#9e74e71c;color:#c4a5ff;display:grid;place-items:center;font-weight:800}.roulette-player>div{flex:1;min-width:0}.roulette-player strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}.roulette-player small{display:block;color:#9ea7be;font-size:9px;margin-top:4px}.roulette-player>b{font-size:10px;color:#dfd4ff}.roulette-empty{font-size:12px;line-height:1.8;color:#939cb4;text-align:center;padding:55px 0}
.roulette-board{padding:17px;background:#0e142166;border:1px solid var(--roulette-line);border-radius:14px;margin-top:8px}.roulette-board-heading{display:flex;justify-content:space-between;gap:12px;margin-bottom:13px;align-items:center}.roulette-board-heading>span{font-size:9px;font-weight:800;letter-spacing:1.4px;color:#d4d6e7}.roulette-board-heading small{font-size:10px;color:#a6aec4}
.roulette-number-grid{display:grid;grid-template-columns:repeat(13,minmax(0,1fr));gap:6px}.roulette-number{position:relative;border:1px solid #ffffff12;border-radius:8px;min-height:47px;font-size:17px;font-weight:800;color:#fff;transition:filter .15s,transform .15s;background:#30374b}.roulette-number.red{background:linear-gradient(145deg,#ed496b,#b52d4e)}.roulette-number.green{grid-row:span 3;background:linear-gradient(145deg,#1dce9f,#168263)}.roulette-number:hover:not(:disabled){filter:brightness(1.2);transform:translateY(-2px)}.roulette-number.selected{outline:2px solid #e1c9ff;outline-offset:1px;box-shadow:0 0 17px #b795ff6b}.roulette-number:disabled{opacity:.72;cursor:default}.roulette-number.selected:disabled{opacity:1}
#game-room[data-game="roulette"] .roulette-live{display:block;text-align:center;background:none;border:0;padding:13px 0 0;font-size:11px;color:#c6b1f1;min-height:27px;letter-spacing:.4px}
#game-room[data-game="roulette"] #wheel-result{display:none}#game-room[data-game="roulette"] #actions{margin-top:18px;display:flex;justify-content:center}#game-room[data-game="roulette"] #actions button{width:min(100%,350px);background:linear-gradient(120deg,#b596ef,#9375d7);box-shadow:0 5px 24px #9576e022;color:#180e2d;border:1px solid #d6bfff55;border-radius:10px;font-size:13px;padding:15px;font-weight:800}#game-room[data-game="roulette"] #actions button:disabled{background:#383147;color:#a79abc;box-shadow:none}
#game-room[data-game="roulette"] #game-extras{display:none}#game-room[data-game="roulette"] .control-panel h3{font-size:16px}#game-room[data-game="roulette"] .control-caption{font-size:11px;line-height:1.7;color:#a6aec4}#game-room[data-game="roulette"] #choices{gap:8px}#game-room[data-game="roulette"] #choices button{background:#22293a;border:1px solid #ffffff16;border-radius:10px;padding:14px 10px;font-size:13px}#game-room[data-game="roulette"] #choices button.selected{border-color:#c4a3ff;background:#8870b52c;box-shadow:0 0 15px #b286ff18}#game-room[data-game="roulette"] #choices button b{font-size:14px;color:#b6bfd5}#game-room[data-game="roulette"] #stake{background:#101522;border:1px solid #ffffff1d;border-radius:9px}#game-room[data-game="roulette"] .amount-presets button{background:#252c40;border-color:#ffffff14;font-size:11px}#game-room[data-game="roulette"] .history-chip{border-radius:6px;box-shadow:none;width:29px;height:29px;font-size:11px}#game-room[data-game="roulette"] .history-chip.red{background:#c93456}#game-room[data-game="roulette"] .history-chip.green{background:#188f6d}#game-room[data-game="roulette"] .history-chip.black{background:#30394d}
.roulette-number:focus-visible{outline:3px solid #e4d1ff;outline-offset:2px}
@media(max-width:1200px){#game-room[data-game="roulette"] .room-layout{grid-template-columns:200px minmax(0,1fr)}.roulette-arena{grid-template-columns:1fr}.roulette-round-panel{min-height:0;max-height:220px}.roulette-round-total{padding:12px 0}.roulette-empty{padding:20px 0}.roulette-hub>strong{font-size:64px}.roulette-hub>span{font-size:10px}.roulette-hub>em{font-size:9px}}
@media(max-width:750px){#game-room[data-game="roulette"] .room-layout{display:flex;flex-direction:column;gap:15px}#game-room[data-game="roulette"] .control-panel,#game-room[data-game="roulette"] .table-panel{width:100%;box-sizing:border-box}#game-room[data-game="roulette"] .control-panel{padding:17px}#game-room[data-game="roulette"] #choices{grid-template-columns:repeat(3,minmax(0,1fr))}#game-room[data-game="roulette"] #choices button{font-size:12px;padding:13px 8px;gap:5px}#game-room[data-game="roulette"] #choices button b{font-size:12px}#game-room[data-game="roulette"] .control-panel h3,#game-room[data-game="roulette"] .control-caption{display:none}.roulette-arena{gap:8px}#game-room[data-game="roulette"] .table-panel{padding:15px}#game-room[data-game="roulette"] .roulette-machine{width:min(100%,460px)!important}.roulette-hub>strong{font-size:clamp(38px,12vw,65px)}.roulette-hub>span{font-size:8px}.roulette-hub>em{font-size:7px}.roulette-board{padding:12px}.roulette-board-heading{align-items:start;flex-direction:column;gap:5px}.roulette-number{min-height:39px;font-size:14px}.roulette-number-grid{gap:5px}.roulette-round-panel{max-height:170px;min-height:0}.roulette-round-total strong{font-size:19px}.roulette-round-total{padding:10px 0}.roulette-player{padding:8px 0}}
@media(prefers-reduced-motion:reduce){.hub-spinning{animation:none}#game-room[data-game="roulette"] .roulette-rotor,.roulette-timer-ring circle{transition-duration:.01s}}

/* Color choices remain recognizable during a spin or after a bet locks. */
#game-room[data-game="roulette"] #choices button[data-choice="Red"]{background:linear-gradient(135deg,#e53950,#a81831);border-color:#ff7e8870;color:#fff;box-shadow:inset 0 1px #ffb1b330}
#game-room[data-game="roulette"] #choices button[data-choice="Black"]{background:linear-gradient(135deg,#252832,#090b10);border-color:#757b8a80;color:#fff;box-shadow:inset 0 1px #ffffff10}
#game-room[data-game="roulette"] #choices button[data-choice="Green"]{background:linear-gradient(135deg,#10ac72,#056445);border-color:#53e6ac70;color:#fff;box-shadow:inset 0 1px #a6ffd330}
#game-room[data-game="roulette"] #choices button b{color:#fff}
#game-room[data-game="roulette"] #choices button:disabled{opacity:.82;filter:none}
#game-room[data-game="roulette"] #choices button.selected{outline:2px solid #ead4ff;outline-offset:2px;box-shadow:0 0 15px #b795ff45}
#game-room[data-game="roulette"] .red-dot{background:#ff5267}#game-room[data-game="roulette"] .black-dot{background:#080a0f;border:1px solid #8b91a0}#game-room[data-game="roulette"] .green-dot{background:#26e49f}
#game-room[data-game="roulette"] .roulette-number.red{background:linear-gradient(145deg,#e93b50,#a8243b)}
#game-room[data-game="roulette"] .roulette-number.black{background:linear-gradient(145deg,#252a37,#0c1018)}
@media(max-width:750px){.roulette-number-grid{grid-template-columns:repeat(7,minmax(0,1fr))}.roulette-number.green{grid-row:span 6}.roulette-number{font-size:13px;min-height:34px}}

.roulette-hub>strong.roulette-countdown{font-variant-numeric:tabular-nums;letter-spacing:-2px;font-size:clamp(32px,4vw,56px)}
@media(max-width:750px){.roulette-hub>strong.roulette-countdown{font-size:clamp(32px,10vw,56px)}}

#game-room[data-game="roulette"] .history-chip.black{background:#080b12;color:#fff;border:1px solid #8c94a9;box-shadow:inset 0 1px 0 #ffffff25,0 2px 6px #0008;font-weight:800}
#game-room[data-game="roulette"] .roulette-ball{width:13px;height:13px;left:calc(50% - 6.5px);box-shadow:0 0 12px #fff9,0 1px 3px #000}
.roulette-rotor path.landed-result{stroke:#fff6d4;stroke-width:3;filter:drop-shadow(0 0 7px #ffef9f);animation:rouletteLandedGlow 1s ease-in-out infinite alternate}
#game-room[data-game="roulette"] .roulette-number.landed-result{outline:2px solid #fff3bd;outline-offset:2px;box-shadow:0 0 22px #ffe39c80;opacity:1;animation:rouletteLandedGlow 1s ease-in-out infinite alternate}
.roulette-hub .roulette-result-color{position:absolute;top:40%;left:50%;transform:translate(-50%,-50%);font-size:clamp(22px,3vw,40px);letter-spacing:3px;opacity:.18;font-weight:900;pointer-events:none;white-space:nowrap;z-index:0}
.roulette-hub[data-result-color="red"]{background:radial-gradient(circle,#722434,#161a27 80%)}.roulette-hub[data-result-color="green"]{background:radial-gradient(circle,#145441,#161a27 80%)}.roulette-hub[data-result-color="black"]{background:radial-gradient(circle,#232937,#06090f 80%);box-shadow:0 0 0 1px #a2acc5,0 8px 25px #0005}.roulette-hub>span:not(.roulette-result-color),.roulette-hub>strong,.roulette-hub>em{position:relative;z-index:1}
@keyframes rouletteLandedGlow{to{filter:brightness(1.3) drop-shadow(0 0 8px #ffe4a8)}}
.game-outcome{display:flex;align-items:center;gap:16px;max-width:620px;margin:18px auto 8px;padding:20px 24px;text-align:left;background:linear-gradient(120deg,#172a2a,#14222c);border:1px solid #68dfa657;border-radius:14px;box-shadow:0 10px 25px #0003;animation:outcomeReveal .3s ease-out}.outcome-symbol{display:grid;place-items:center;flex-shrink:0;width:45px;height:45px;border-radius:12px;background:#67e6af15;color:#7ce8b8;font-size:27px}.outcome-label{display:block;color:#88eec0;font-size:10px;font-weight:900;letter-spacing:1.7px;margin-bottom:7px}.game-outcome strong{display:block;color:#f0fff8;font-size:clamp(20px,2vw,28px);letter-spacing:-.5px}.game-outcome p{font-size:11px;color:#bcc8d2;margin:8px 0 0}.game-outcome small{display:block;font-size:11px;color:#a3b7c4;margin-top:7px}.game-outcome[data-kind="loss"],.game-outcome[data-kind="bust"],.game-outcome[data-kind="partial"]{background:linear-gradient(120deg,#30212a,#181e2b);border-color:#e5869345}.game-outcome[data-kind="loss"] .outcome-label,.game-outcome[data-kind="bust"] .outcome-label,.game-outcome[data-kind="partial"] .outcome-label{color:#eea2af}.game-outcome[data-kind="loss"] .outcome-symbol,.game-outcome[data-kind="bust"] .outcome-symbol,.game-outcome[data-kind="partial"] .outcome-symbol{color:#eea2af;background:#ed738717}.game-outcome[data-kind="tie"],.game-outcome[data-kind="returned"],.game-outcome[data-kind="refund"]{background:linear-gradient(120deg,#252539,#182031);border-color:#bba0ef55}.game-outcome[data-kind="tie"] .outcome-label,.game-outcome[data-kind="returned"] .outcome-label,.game-outcome[data-kind="refund"] .outcome-label{color:#d0b7ff}
@keyframes outcomeReveal{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:600px){.game-outcome{padding:16px;gap:12px}.outcome-symbol{width:35px;height:35px;font-size:23px}.roulette-hub .roulette-result-color{font-size:24px}}
@media(prefers-reduced-motion:reduce){.game-outcome,.roulette-rotor path.landed-result,#game-room[data-game="roulette"] .roulette-number.landed-result{animation:none}}
/* Single-zero casino layout: twelve streets, three columns and outside bets. */
.roulette-table-help{color:#aab7c8;font-size:11px;line-height:1.7;margin:0 0 16px}
.roulette-table-scroll{overflow-x:auto;padding:8px 4px 18px;scrollbar-color:#6c7594 #111827}
.roulette-felt{min-width:650px;padding:16px 12px 12px;border-radius:12px;background:radial-gradient(ellipse at top,#204c45,#12302e);border:1px solid #99c6ab44;box-shadow:inset 0 0 28px #0004}
.roulette-casino-grid{position:relative;display:grid;grid-template-columns:54px repeat(12,minmax(0,1fr)) 50px;grid-template-rows:repeat(3,54px);gap:0;border:1px solid #d0e8da90;margin-bottom:15px}
.roulette-bet{position:relative;border:1px solid #d0e8da80;border-radius:0;background:transparent;color:#f3fff7;font-size:13px;font-weight:750;cursor:pointer;min-width:0;transition:background .15s,box-shadow .15s}
.roulette-bet small{display:block;font-size:9px;font-weight:500;color:#c4d9d1;margin-top:5px}
.roulette-bet:hover:not(:disabled),.roulette-bet.covered{box-shadow:inset 0 0 0 2px #ffe7a0;background-color:#4d6b4a}
#game-room[data-game="roulette"] .roulette-casino-grid .roulette-number{min-height:0;border-radius:0;grid-row:auto;box-shadow:none;font-size:17px;overflow:visible;transform:none}
#game-room[data-game="roulette"] .roulette-casino-grid .roulette-number.green{background:#168e64}
#game-room[data-game="roulette"] .roulette-casino-grid .roulette-number.selected{outline:none;box-shadow:inset 0 0 0 2px #ffdf9a}
.roulette-column{font-size:11px}.roulette-dozens{margin-left:54px;margin-right:50px;display:grid;grid-template-columns:repeat(3,1fr)}
.roulette-dozens .roulette-bet{height:52px}.roulette-outside{margin-left:54px;margin-right:50px;display:grid;grid-template-columns:repeat(6,1fr)}
.roulette-outside .roulette-bet{height:54px}.roulette-outside .red{background:#b92e43}.roulette-outside .black{background:#111721}
.roulette-inside-edges{position:absolute;left:54px;right:50px;top:0;bottom:0;pointer-events:none}
.roulette-edge{position:absolute;pointer-events:auto;transform:translate(-50%,-50%);border:0;background:transparent;z-index:3;padding:0;border-radius:5px}
.roulette-edge.split-horizontal{width:27px;height:12px}.roulette-edge.split-vertical{width:12px;height:27px}
.roulette-edge.corner,.roulette-edge.six{width:17px;height:17px;border-radius:50%;z-index:4}
.roulette-edge.street{width:27px;height:16px}.roulette-edge:hover:not(:disabled),.roulette-edge:focus-visible{background:#ffe8a07a;box-shadow:0 0 0 2px #ffe2a8}
.roulette-chip-marker{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;min-width:27px;height:27px;padding:0 3px;border:3px dashed #fff4dc;border-radius:50%;background:radial-gradient(circle,#795cc1,#49336f);box-shadow:0 2px 5px #000a;font-size:8px;font-weight:900;color:white;pointer-events:none;z-index:6;white-space:nowrap}
.roulette-chip-marker[hidden]{display:none}.roulette-number .roulette-chip-marker{top:70%;left:72%}
.roulette-group-picker{display:flex;align-items:flex-end;gap:9px;margin-top:10px;flex-wrap:wrap}.roulette-group-picker label{display:flex;flex-direction:column;gap:6px;flex:1;min-width:160px;font-size:10px;color:#c0cbdc}.roulette-group-picker select{background:#192538;border:1px solid #66728b66;border-radius:8px;color:#e4eafa;padding:10px;font-size:11px;max-width:100%;min-width:0}
.roulette-group-picker button{padding:10px 13px;border-radius:8px;background:#354861;border:1px solid #7791b655;color:white;font-size:11px}
#game-room[data-game="roulette"] #choices{display:block}.roulette-chip-selector>span{font-size:9px;letter-spacing:1.5px;color:#c2b3e0;font-weight:800}.roulette-chip-values{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:16px 0}
#game-room[data-game="roulette"] #choices .roulette-value-chip{padding:0;width:48px;height:48px;justify-self:center;border-radius:50%;border:4px dashed #fff2dccc;font-size:10px;color:white;font-weight:850;background:radial-gradient(circle,#885ccc,#4b287b);box-shadow:0 3px 8px #0006,inset 0 0 0 2px #ffffff30}
#game-room[data-game="roulette"] #choices .chip-0{background:radial-gradient(circle,#6c8caa,#24425d)}#game-room[data-game="roulette"] #choices .chip-1{background:radial-gradient(circle,#d56675,#802333)}#game-room[data-game="roulette"] #choices .chip-2{background:radial-gradient(circle,#619c7f,#205741)}#game-room[data-game="roulette"] #choices .chip-3{background:radial-gradient(circle,#649dcc,#244c7e)}#game-room[data-game="roulette"] #choices .chip-4{background:radial-gradient(circle,#9975d0,#503484)}#game-room[data-game="roulette"] #choices .chip-5{background:radial-gradient(circle,#bf9a58,#775123)}
#game-room[data-game="roulette"] #choices .roulette-value-chip.selected{outline:2px solid #ffe3a3;outline-offset:3px;box-shadow:0 0 14px #ffe3a333}
.roulette-chip-selector>small{font-size:10px;color:#9dabc2;line-height:1.7;display:block}
.roulette-draft-tools{display:flex;gap:8px;margin:16px 0}#game-room[data-game="roulette"] #choices .roulette-draft-tools button{flex:1;padding:8px;font-size:11px;border-radius:7px}
#roulette-draft-list{max-height:200px;overflow:auto}#roulette-draft-list>div{display:flex;justify-content:space-between;gap:10px;padding:9px 0;border-bottom:1px solid #ffffff0d;font-size:10px;color:#b7c1d6}#roulette-draft-list b{color:#e1d4ff;white-space:nowrap}
.roulette-draft-total{display:flex;justify-content:space-between;border-top:1px solid #b89ce833;margin-top:12px;padding-top:14px;font-size:11px;color:#b7c4d7}.roulette-draft-total strong{color:#f9edff;font-size:16px}
.roulette-bet:focus-visible{outline:2px solid #ffe4ac;outline-offset:-3px;z-index:7}.roulette-bet:disabled{cursor:default;opacity:.75}
@media(max-width:750px){.roulette-chip-values{grid-template-columns:repeat(6,1fr);gap:8px}#game-room[data-game="roulette"] #choices .roulette-value-chip{width:42px;height:42px;font-size:9px}.roulette-chip-selector>small{display:none}.roulette-chip-values{margin:12px 0}.roulette-draft-tools{margin:10px 0}.roulette-group-picker{gap:8px}.roulette-felt{min-width:650px}.roulette-draft-total{margin-top:8px}.roulette-casino-grid .roulette-number{font-size:15px}#roulette-draft-list{max-height:100px}.roulette-table-help{font-size:10px}}
/* Embossed chips with centered denominations and engraved inner rings. */
#game-room[data-game="roulette"] #choices .roulette-value-chip{position:relative;display:block;width:56px;height:56px;padding:0;border:0;border-radius:50%;background:none;box-shadow:none;color:var(--chip-tone,#367d65);transition:transform .16s,filter .16s;isolation:isolate}
#game-room[data-game="roulette"] #choices .roulette-value-chip svg{display:block;width:100%;height:100%;filter:drop-shadow(0 4px 3px #0007)}
#game-room[data-game="roulette"] #choices .roulette-value-chip>span{position:absolute;inset:0;display:grid;place-items:center;padding-bottom:2px;color:#fff;font-size:10px;font-weight:850;letter-spacing:.1px;text-align:center;text-shadow:0 1px 2px #000b}
#game-room[data-game="roulette"] #choices .chip-0{--chip-tone:#527d9e}#game-room[data-game="roulette"] #choices .chip-1{--chip-tone:#be4156}#game-room[data-game="roulette"] #choices .chip-2{--chip-tone:#36836a}#game-room[data-game="roulette"] #choices .chip-3{--chip-tone:#357ab4}#game-room[data-game="roulette"] #choices .chip-4{--chip-tone:#8355b8}#game-room[data-game="roulette"] #choices .chip-5{--chip-tone:#b58a3c}
#game-room[data-game="roulette"] #choices .roulette-value-chip:hover:not(:disabled){transform:translateY(-3px);filter:brightness(1.12)}
#game-room[data-game="roulette"] #choices .roulette-value-chip.selected{outline:2px solid #e9d1a0;outline-offset:2px;box-shadow:0 0 16px #e9d1a025}
#roulette-draft-list{margin-top:18px}
@keyframes rouletteOrbitTour{0%{transform:rotate(var(--roulette-ball-start,0deg))}100%{transform:rotate(var(--roulette-ball-end,-1080deg))}}
@keyframes rouletteBallSettle{0%,96%{top:5.5%;transform:scale(1)}98%{top:11.5%;transform:scale(.95)}100%{top:16%;transform:scale(.9)}}
#game-room[data-game="roulette"] .roulette-ball{background:radial-gradient(circle at 32% 25%,#fff,#fff8d9 42%,#d6c596);box-shadow:0 0 8px #fff7,0 2px 4px #0009}
@media(max-width:750px){#game-room[data-game="roulette"] #choices .roulette-value-chip{width:44px;height:44px}#game-room[data-game="roulette"] #choices .roulette-value-chip>span{font-size:8px}}
@media(prefers-reduced-motion:reduce){#game-room[data-game="roulette"] #choices .roulette-value-chip{transition:none}}

.roulette-advanced{margin-top:12px}.roulette-advanced>summary{cursor:pointer;color:#aeb9ce;font-size:11px;padding:8px 0;width:fit-content}.roulette-advanced[open]>summary{color:#e4eafa}

/* Higher contrast felt, vivid pockets and clearer table boundaries. */
.roulette-felt{background:radial-gradient(ellipse at top,#137d59,#07513e);border:2px solid #77e5b0;box-shadow:inset 0 0 24px #002b2966,0 5px 20px #0004}
.roulette-casino-grid{border-color:#d9ffe6}
.roulette-bet{border-color:#c9f9dcaa;color:#fff;text-shadow:0 1px 2px #0008}
.roulette-bet small{color:#e2ffed}
#game-room[data-game="roulette"] .roulette-casino-grid .roulette-number.red,.roulette-outside .red{background:linear-gradient(145deg,#f04459,#ce1634)}
#game-room[data-game="roulette"] .roulette-casino-grid .roulette-number.black,.roulette-outside .black{background:linear-gradient(145deg,#263345,#0b121e)}
#game-room[data-game="roulette"] .roulette-casino-grid .roulette-number.green{background:linear-gradient(145deg,#20d895,#079665)}
.roulette-dozens .roulette-bet,.roulette-column,.roulette-outside .roulette-bet:not(.red):not(.black){background-color:#096646}
.roulette-bet:hover:not(:disabled),.roulette-bet.covered{filter:brightness(1.18);box-shadow:inset 0 0 0 2px #ffea9d}
.roulette-bet.selected{box-shadow:inset 0 0 0 2px #ffe393}

.roulette-bet-star{opacity:0;fill:#fff;pointer-events:none}.roulette-bet-star.active{opacity:1}

.roulette-dot-key{color:#fff;font-size:9px}

@keyframes rouletteWheelTour{from{transform:rotate(var(--roulette-wheel-start,0deg))}to{transform:rotate(var(--roulette-wheel-end))}}
.roulette-player-avatar .player-head{width:100%;height:100%;display:grid;place-items:center;position:relative;overflow:hidden;border-radius:50%}
.roulette-player-avatar .player-head img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;image-rendering:pixelated}
.roulette-winner{background:#18b67a18;border-radius:8px;padding:10px 7px}.roulette-winner>b{color:#65f5b2}
#game-room[data-game="roulette"] #choices .chip-6{--chip-tone:#cf5939}#game-room[data-game="roulette"] #choices .chip-7{--chip-tone:#388fb3}#game-room[data-game="roulette"] #choices .chip-8{--chip-tone:#bd3f89}
@media(max-width:750px){.roulette-chip-values{grid-template-columns:repeat(5,1fr)}}

/* A larger wheel with less empty space above and beneath it. */
#game-room[data-game="roulette"] .table-panel{padding-top:14px}
#game-room[data-game="roulette"] #stage{margin-top:6px}
.roulette-arena{grid-template-columns:minmax(0,1fr) 200px;gap:16px}
#game-room[data-game="roulette"] .roulette-machine{width:min(100%,580px)!important;margin:0 auto 8px}
#game-room[data-game="roulette"] .roulette-ball{width:17px;height:17px;left:calc(50% - 8.5px)}
.roulette-board{padding-top:12px}
@media(max-width:1200px){.roulette-arena{grid-template-columns:1fr}}
@media(max-width:750px){#game-room[data-game="roulette"] .roulette-machine{width:min(100%,500px)!important}}

/* Keep recent results beside the game instead of in a separate page-wide row. */
#game-room[data-game="roulette"]{padding-top:16px}
#game-room[data-game="roulette"] .room-heading{margin-bottom:0}
#game-room[data-game="roulette"] .room-title{margin:8px 0 12px}
#game-room[data-game="roulette"] .table-panel>.history-bar{display:flex;align-items:center;gap:10px;padding:0 0 8px;margin:0 0 4px;min-height:26px;border:0;border-radius:0;background:none;box-shadow:none}
#game-room[data-game="roulette"] .table-panel>.history-bar>span{font-size:8px;white-space:nowrap;letter-spacing:1px}
#game-room[data-game="roulette"] .table-panel>.history-bar>small{display:none}
#game-room[data-game="roulette"] #round-history{display:flex;flex-wrap:nowrap;gap:5px;min-width:0;overflow-x:auto;scrollbar-width:thin}
#game-room[data-game="roulette"] #round-history .history-chip{flex:0 0 26px;width:26px;height:26px;font-size:10px}
@media(max-width:650px){#game-room[data-game="roulette"] .table-panel>.history-bar>span{display:none}}

/* Separate anticipation names let the confirmed landing start at its visible angle. */
@keyframes rouletteWheelWaiting{from{transform:rotate(var(--roulette-wheel-start,0deg))}to{transform:rotate(var(--roulette-wheel-end))}}
@keyframes rouletteOrbitWaiting{from{transform:rotate(var(--roulette-ball-start,0deg))}to{transform:rotate(var(--roulette-ball-end,-360deg))}}
