
/* Floating wheel: original PromoWheel canvas, effects and spin logic retained */
.ol-bonus-trigger{position:fixed;right:22px;bottom:24px;z-index:1000;padding:16px 23px;border:1px solid #f5d58c;border-radius:16px;background:linear-gradient(145deg,#b78b34,#f5d58c 45%,#9d6c1c);color:#131017;font-weight:900;letter-spacing:.07em;box-shadow:0 0 25px #c68a3760,0 8px 32px #000b;cursor:pointer}
.ol-bonus-trigger:hover{filter:brightness(1.12);transform:translateY(-2px)}
.ol-bonus-overlay[hidden]{display:none!important}
.ol-bonus-overlay{position:fixed;inset:0;z-index:2000;display:flex;align-items:center;justify-content:center;padding:18px}
.ol-bonus-backdrop{position:absolute;inset:0;background:#030611dc;backdrop-filter:blur(9px)}
.ol-bonus-dialog{position:relative;width:min(960px,100%);max-height:min(94dvh,980px);overflow:auto;border:1px solid #cda75d;border-radius:24px;box-shadow:0 0 75px #338cf145,0 24px 90px #000;background:linear-gradient(#070e20e0,#030710ef),url('../rueda-del-olimpo/assets/temple.webp') center/cover}
.ol-bonus-close{position:sticky;top:10px;float:right;margin:10px 12px -60px 0;z-index:20;width:40px;height:40px;border:1px solid #c9a35a;border-radius:50%;background:#070d1e;color:#ffe3a4;font-size:30px;cursor:pointer}
body.ol-bonus-open{overflow:hidden}
#ol-bonus-mount .ol-calculator{display:block!important;padding:18px 12px 25px;background:transparent!important}
#ol-bonus-mount .ol-calculator__layout{display:block!important;width:100%;max-width:690px;margin:auto}
#ol-bonus-mount .ol-calculator__intro{display:none!important}
#ol-bonus-mount .ol-calculator__panel{width:100%!important;max-width:690px;margin:auto}
#ol-bonus-mount .ol-calculator__wheel{max-width:470px;margin:auto}
#ol-bonus-mount .ol-calculator__zeus{max-height:150px;object-fit:contain}
#ol-bonus-mount .ol-calculator__fine{font-size:12px;line-height:1.5;opacity:.75}
@media(max-width:600px){.ol-bonus-trigger{right:12px;bottom:78px;font-size:12px;padding:12px 14px}.ol-bonus-overlay{padding:6px}.ol-bonus-dialog{max-height:96dvh;border-radius:14px}#ol-bonus-mount .ol-calculator{padding:12px 5px}#ol-bonus-mount .ol-calculator__wheel{max-width:min(340px,92vw)}}
@media(prefers-reduced-motion:reduce){.ol-bonus-trigger{transition:none!important}}

/* Quick recharge amount selector (illustrative amounts only) */
#ol-bonus-mount .ol-recharge-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:10px 0 14px}
#ol-bonus-mount .ol-recharge-option{border:1px solid #c49a51;border-radius:10px;background:#0c1528;color:#f8d88f;padding:12px 4px;font-weight:800;cursor:pointer;font-size:clamp(11px,1.7vw,16px)}
#ol-bonus-mount .ol-recharge-option[aria-pressed="true"]{background:linear-gradient(135deg,#b88b35,#f4d58c);color:#111321;border-color:#fff0c0;box-shadow:0 0 15px #edbd5b55}
#ol-bonus-mount .ol-recharge-option:focus-visible{outline:3px solid #66baff;outline-offset:2px}
@media(max-width:520px){#ol-bonus-mount .ol-recharge-options{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Cinematic final polish */
@media (hover:hover) and (prefers-reduced-motion:no-preference){
 .gcard{transition:transform .42s cubic-bezier(.2,.8,.2,1),filter .42s ease;will-change:transform}
 .gcard:hover{transform:translate3d(0,-7px,0);filter:drop-shadow(0 9px 16px rgba(13,102,219,.22))}
 .gcard__open{overflow:hidden;transition:box-shadow .42s ease,border-color .42s ease}
 .gcard__open img{transition:transform .65s cubic-bezier(.2,.8,.2,1),filter .55s ease}
 .gcard:hover .gcard__open img{transform:scale(1.055);filter:saturate(1.12) brightness(1.07)}
 .gcard:hover .gcard__open{box-shadow:0 0 0 1px rgba(245,213,140,.75),0 0 24px rgba(34,141,255,.22),0 16px 36px rgba(0,0,0,.7)}
 .ol-bonus-trigger{animation:olBonusAura 4.5s ease-in-out infinite}
}
@keyframes olBonusAura{0%,100%{box-shadow:0 0 18px #c68a3748,0 8px 32px #000b}50%{box-shadow:0 0 34px #e6b85b88,0 8px 36px #000b}}
.ol-bonus-dialog{background-image:linear-gradient(180deg,rgba(4,9,24,.78),rgba(2,5,16,.95)),url('../rueda-del-olimpo/assets/temple.webp')}
.ol-bonus-dialog::before{content:'';position:absolute;inset:0;pointer-events:none;border-radius:inherit;background:radial-gradient(ellipse at 85% 5%,rgba(30,122,240,.18),transparent 58%)}
.ol-bonus-dialog>*{position:relative}
@media(prefers-reduced-motion:reduce){.ol-bonus-trigger{animation:none}.gcard,.gcard__open img{transition:none!important}}

/* OLYMPUS: recovered cinematic presentation of the original roulette */
.ol-bonus-dialog{width:min(760px,100%);margin-left:auto;margin-right:max(12px,3vw);isolation:isolate;background-position:center;box-shadow:0 0 90px rgba(38,124,255,.33),0 35px 110px #000}
.ol-bonus-dialog::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(117deg,transparent 18%,rgba(84,171,255,.1) 21%,transparent 24%),radial-gradient(ellipse at 80% 28%,rgba(52,141,255,.28),transparent 42%);animation:olTempleFlash 3.4s ease-in-out infinite}
.ol-bonus-dialog #ol-bonus-mount{position:relative;z-index:1}
#ol-bonus-mount .ol-calculator__panel{background:linear-gradient(165deg,rgba(7,14,33,.72),rgba(3,6,16,.85)),url('../rueda-del-olimpo/assets/temple.webp') center/cover!important;border-color:#d6b36d;box-shadow:inset 0 0 55px #367de122,0 0 35px #e4b85c16}
#ol-bonus-mount .ol-calculator__zeus{position:relative!important;display:block;width:min(290px,62%);height:155px;max-height:none;top:auto;right:auto;margin:-6px auto -3px;opacity:1!important;z-index:1!important;object-fit:contain;filter:drop-shadow(0 0 20px #5caaff)}
#ol-bonus-mount .ol-calculator__wheel{width:min(390px,92%);max-width:100%;filter:drop-shadow(0 0 20px #dbb45b55)}
#ol-bonus-mount .wheel-stage.is-jackpot{animation:olJackpotGlow .52s ease-in-out 6 alternate}
#ol-bonus-mount .wheel-stage.is-jackpot::after{content:'×10';position:absolute;left:50%;top:47%;z-index:12;transform:translate(-50%,-50%);font:900 clamp(50px,9vw,110px)/1 Cinzel,serif;color:#ffe7a4;text-shadow:0 0 14px #fff,0 0 30px #e6a936,0 0 70px #3c9dff;pointer-events:none;animation:olJackpotNumber 1.5s ease-out both}
@keyframes olJackpotGlow{from{filter:brightness(1) drop-shadow(0 0 15px #d8aa53)}to{filter:brightness(1.35) drop-shadow(0 0 45px #4caaff)}}
@keyframes olJackpotNumber{0%{opacity:0;transform:translate(-50%,-50%) scale(.4)}35%{opacity:1;transform:translate(-50%,-50%) scale(1.2)}100%{opacity:1;transform:translate(-50%,-50%) scale(1)}}
@keyframes olTempleFlash{0%,75%,100%{opacity:.25}77%,79%{opacity:1}78%,81%{opacity:.05}}
@media(max-width:700px){.ol-bonus-dialog{margin:auto;width:100%}#ol-bonus-mount .ol-calculator__zeus{height:110px}#ol-bonus-mount .ol-calculator__wheel{width:min(300px,90%)}}
@media(prefers-reduced-motion:reduce){.ol-bonus-dialog::after,.wheel-stage.is-jackpot,.wheel-stage.is-jackpot::after{animation:none!important}}


/* 2026-10-09: Full viewport roulette, no vertical scrolling on standard screens */
.ol-bonus-overlay{padding:0!important;align-items:stretch!important;justify-content:stretch!important}
.ol-bonus-dialog{width:100vw!important;height:100dvh!important;max-width:none!important;max-height:none!important;margin:0!important;border-radius:0!important;overflow:hidden!important;display:flex;align-items:center;justify-content:center;padding:clamp(8px,1.3vw,22px)!important}
.ol-bonus-close{position:absolute!important;right:clamp(12px,2vw,32px);top:clamp(10px,2vh,24px);float:none!important;margin:0!important;z-index:40!important;width:48px;height:48px}
#ol-bonus-mount{width:min(1360px,100%);height:100%;display:flex;align-items:center;justify-content:center;min-height:0}
#ol-bonus-mount .ol-calculator{width:100%;height:100%;display:flex!important;align-items:center;justify-content:center;padding:0!important}
#ol-bonus-mount .ol-calculator__layout{width:100%!important;max-width:none!important;height:100%;display:flex!important;align-items:center;justify-content:center;padding:0!important}
#ol-bonus-mount .ol-calculator__panel{display:grid!important;grid-template-columns:minmax(0,1.2fr) minmax(310px,.85fr);grid-template-rows:auto auto auto auto auto 1fr;column-gap:clamp(16px,3vw,56px);align-content:center;align-items:center;width:100%!important;max-width:none!important;max-height:calc(100dvh - 36px);min-height:0;overflow:hidden!important;padding:clamp(18px,2.5vw,40px)!important;border-radius:24px}
#ol-bonus-mount .ol-calculator__panel>.kicker{grid-column:2;grid-row:1;align-self:end}
#ol-bonus-mount .ol-calculator__panel>h2{grid-column:2;grid-row:2;margin:2px 0 14px;font-size:clamp(23px,3vw,45px);line-height:1.08}
#ol-bonus-mount .ol-calculator__wheel{grid-column:1;grid-row:1/8;align-self:center;justify-self:center;width:min(100%,calc(100dvh - 110px),620px)!important;max-width:none!important;margin:0!important}
#ol-bonus-mount .ol-calculator__zeus{position:absolute!important;top:2%!important;right:3%!important;width:min(180px,14vw)!important;height:125px!important;margin:0!important;opacity:.6!important;pointer-events:none}
#ol-bonus-mount .ol-calculator__panel>label{grid-column:2;grid-row:3;margin:0 0 8px;font-size:clamp(14px,1.6vw,19px);font-weight:800;color:#f7d68c}
#ol-bonus-mount .ol-recharge-options{grid-column:2;grid-row:4;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 12px}
#ol-bonus-mount .ol-recharge-option{min-height:48px;font-size:clamp(14px,1.3vw,19px)}
#ol-bonus-mount .ol-amount{grid-column:2;grid-row:5;margin:0 0 12px}
#ol-bonus-mount #amount-error{grid-column:2;grid-row:6;margin:0;min-height:0}
#ol-bonus-mount [data-action="spin"]{grid-column:2;grid-row:7;min-height:56px;font-size:clamp(15px,1.4vw,19px)}
#ol-bonus-mount .ol-calculator__result{grid-column:2;grid-row:8;margin-top:10px;padding:10px}
#ol-bonus-mount .ol-calculator__fine{grid-column:2;grid-row:9;margin:8px 0 0;font-size:10px}
.ol-bonus-trigger{right:clamp(14px,2vw,32px)!important;bottom:clamp(18px,3vh,42px)!important;min-height:74px;padding:16px 30px!important;border:2px solid #ffe8a5!important;border-radius:22px!important;background:linear-gradient(120deg,#160b35,#4b1a83 42%,#b05bdc 70%,#250e4b)!important;color:#fff2b6!important;font-size:clamp(16px,1.55vw,23px)!important;letter-spacing:.035em!important;text-shadow:0 0 12px #ffdf76,0 2px 4px #000;box-shadow:0 0 28px #a84effaa,0 0 60px #d5a34855,0 12px 36px #000c!important;animation:olBonusCallout 2.5s ease-in-out infinite!important;transform-origin:center right}
.ol-bonus-trigger:hover{transform:scale(1.065)!important;filter:brightness(1.15)!important}
@keyframes olBonusCallout{0%,100%{transform:scale(1);box-shadow:0 0 18px #8e42e8a0,0 0 34px #e3b95755,0 12px 36px #000c}50%{transform:scale(1.035);box-shadow:0 0 35px #b76dffdd,0 0 65px #ffe29b99,0 12px 42px #000c}}
@media(max-width:800px){
 .ol-bonus-dialog{padding:8px!important}
 #ol-bonus-mount .ol-calculator__panel{grid-template-columns:minmax(0,1fr) minmax(220px,.85fr);column-gap:10px;padding:12px!important}
 #ol-bonus-mount .ol-calculator__wheel{width:min(100%,calc(100dvh - 110px))!important}
 #ol-bonus-mount .ol-calculator__zeus{display:none!important}
 .ol-bonus-trigger{min-height:56px;padding:10px 16px!important;font-size:14px!important;bottom:84px!important}
}
@media(max-width:620px){
 #ol-bonus-mount .ol-calculator__panel{display:grid!important;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto minmax(0,1fr) auto auto auto auto auto auto;align-content:stretch;justify-items:stretch;row-gap:3px;max-height:calc(100dvh - 14px);height:100%;padding:12px 12px 8px!important}
 #ol-bonus-mount .ol-calculator__panel>.kicker{grid-column:1;grid-row:1;margin:0;text-align:center;font-size:9px}
 #ol-bonus-mount .ol-calculator__panel>h2{grid-column:1;grid-row:2;font-size:clamp(18px,4.2vw,27px);margin:0;text-align:center;line-height:1.1}
 #ol-bonus-mount .ol-calculator__panel>h2 br{display:none}
 #ol-bonus-mount .ol-calculator__wheel{grid-column:1;grid-row:3;align-self:center;width:min(100%,calc(100dvh - 340px),350px)!important;min-width:0;max-width:350px!important;max-height:100%;margin:0 auto!important}
 #ol-bonus-mount .ol-calculator__panel>label{grid-column:1;grid-row:4;margin:0;text-align:center;font-size:14px}
 #ol-bonus-mount .ol-recharge-options{grid-column:1;grid-row:5;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin:2px 0}
 #ol-bonus-mount .ol-recharge-option{min-height:38px;padding:6px 1px;font-size:clamp(10px,2.6vw,13px)}
 #ol-bonus-mount .ol-amount{grid-column:1;grid-row:6;margin:2px 0}
 #ol-bonus-mount .ol-amount input{padding:7px;font-size:17px}
 #ol-bonus-mount #amount-error{grid-column:1;grid-row:7}
 #ol-bonus-mount [data-action="spin"]{grid-column:1;grid-row:8;min-height:43px;font-size:14px}
 #ol-bonus-mount .ol-calculator__result{grid-column:1;grid-row:9;margin:2px 0;padding:4px 9px}
 #ol-bonus-mount .ol-calculator__result span{padding:1px 0;font-size:10px}
 #ol-bonus-mount .ol-calculator__result strong{font-size:16px}
 #ol-bonus-mount .ol-calculator__fine{grid-column:1;grid-row:10;margin:0;font-size:9px;text-align:center}
 .ol-bonus-close{width:34px;height:34px;right:10px;top:8px;font-size:23px}
}
@media(max-height:660px) and (min-width:621px){#ol-bonus-mount .ol-calculator__wheel{width:min(100%,calc(100dvh - 70px),530px)!important}#ol-bonus-mount .ol-calculator__zeus{display:none!important}#ol-bonus-mount .ol-calculator__panel{padding:12px!important}#ol-bonus-mount .ol-recharge-option{min-height:38px}#ol-bonus-mount .ol-calculator__panel>h2{font-size:24px}}
@media(prefers-reduced-motion:reduce){.ol-bonus-trigger{animation:none!important}}

/* Result celebration tied to wheel landing; not a promise of monetary payout */
#ol-bonus-mount .wheel-stage.is-landed::after{content:'✦  ✧  ✦';position:absolute;z-index:8;left:10%;right:10%;top:34%;text-align:center;color:#ffe9a8;font-size:clamp(20px,3vw,46px);font-weight:900;text-shadow:0 0 14px #ffd34c,0 0 32px #3489ff;pointer-events:none;animation:olLandBurst 1.5s ease-out both}
#ol-bonus-mount .wheel-stage.is-jackpot::after{content:'✦  ×10  ✦';color:#fff2b4;font-size:clamp(30px,5vw,72px);animation:olJackpotBurst 2.6s ease-out both}
#ol-bonus-mount .wheel-stage.is-landed{filter:drop-shadow(0 0 20px #dfb45980)}
#ol-bonus-mount .wheel-stage.is-jackpot{filter:drop-shadow(0 0 30px #e9bb58) drop-shadow(0 0 30px #2e83ff)}
@keyframes olLandBurst{0%{opacity:0;transform:translateY(22px) scale(.55)}20%{opacity:1;transform:translateY(-14px) scale(1.1)}70%{opacity:1}100%{opacity:0;transform:translateY(-46px) scale(1.25)}}
@keyframes olJackpotBurst{0%{opacity:0;transform:scale(.3) rotate(-12deg)}20%{opacity:1;transform:scale(1.3) rotate(2deg)}40%{transform:scale(.98)}65%{opacity:1;transform:scale(1.06)}100%{opacity:0;transform:scale(1.5)}}
@media(prefers-reduced-motion:reduce){#ol-bonus-mount .wheel-stage.is-landed::after{animation:none;opacity:1}}
