/* Roleta da Sorte (/promotions) */
.rl{max-width:480px;padding:16px 12px 24px;color:#fff;font-family:inherit}
.rl-card{background:var(--card-color-dark,#1e2124);border:1px solid rgba(255,255,255,.06);border-radius:16px;box-shadow:0 10px 30px rgba(0,0,0,.25)}
.rl-stage{position:relative;overflow:hidden;padding:16px 12px 16px;
  background:radial-gradient(70% 55% at 50% 45%,color-mix(in srgb,var(--ci-primary-color) 30%,transparent),transparent 70%),radial-gradient(120% 90% at 50% 0%,color-mix(in srgb,var(--ci-primary-color) 18%,transparent),transparent 60%),var(--card-color-dark,#1e2124)}
.rl-title{text-align:center;margin-bottom:4px}
.rl-title img{width:min(254px,72%);height:auto;display:inline-block;filter:drop-shadow(0 4px 10px rgba(0,0,0,.45))}
.zp-wrap{display:flex;justify-content:center}
.zp{position:relative;flex-shrink:0;width:360px;height:410px;padding:23px;background:url('/assets/roleta/zp-bg.png') no-repeat 0 0/100% auto;transform:scale(var(--rl-scale,1));transform-origin:center top;margin-bottom:calc(-410px * (1 - var(--rl-scale,1)))}
.zp .box{width:305px;height:305px;position:relative;z-index:1}
.zp .list{width:305px;height:305px;position:relative}
.zp .list div{width:120px;height:305px;position:absolute;left:50%;top:0;margin-left:-60px;padding-top:44px;text-align:center;color:#1259c9;font:900 12.5px/15px inherit;font-weight:900;letter-spacing:-.2px;background:url('/assets/roleta/cion.png') no-repeat center 9px/40px auto;transition:filter .3s}
.zp .list div:nth-child(even){color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.4)}
.zp .list div.win{filter:drop-shadow(0 0 6px #fff) drop-shadow(0 0 12px #3d8bff)}
.zp .arrow{position:absolute;left:50%;top:50%;width:71px;height:88px;margin-left:-35.5px;margin-top:-52.7px;z-index:10;transform-origin:35.5px 52.7px;will-change:transform}
.zp .arrow img{width:71px;height:auto;display:block;filter:drop-shadow(0 4px 6px rgba(0,0,0,.35))}
.zp .btn{position:absolute;left:50%;top:50%;width:58px;height:58px;margin:-29px 0 0 -29px;z-index:100;cursor:pointer;border-radius:50%;transition:transform .15s}
.zp .btn img{width:100%;height:100%;display:block}
.zp .btn:active{transform:scale(.92)}
.zp .btn.ready{animation:rlPulse 1.6s ease-in-out infinite}
.zp .btn.busy{pointer-events:none;filter:saturate(.6) brightness(.9)}
@keyframes rlPulse{0%,100%{box-shadow:0 0 0 0 rgba(61,139,255,.7)}60%{box-shadow:0 0 0 14px rgba(61,139,255,0)}}
.rl-count{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:10px auto 0;max-width:300px;padding:8px 8px 8px 14px;border-radius:999px;background:rgba(0,0,0,.35);border:1px solid rgba(255,255,255,.08)}
.rl-count span{font-size:12px;font-weight:700;color:rgba(255,255,255,.7)}
.rl-count b{min-width:40px;height:30px;padding:0 10px;border-radius:999px;display:grid;place-items:center;background:var(--ci-primary-color);color:#fff;font-size:16px;font-weight:900;font-variant-numeric:tabular-nums}
.rl-count.zero b{background:rgba(255,255,255,.08);color:rgba(255,255,255,.6)}
.rl-msg{margin-top:10px;text-align:center;font-size:12.5px;font-weight:600;color:rgba(255,255,255,.7);min-height:18px}
.rl-msg.ok{color:#22c55e}
.rl-cta{display:block;width:100%;max-width:300px;margin:12px auto 0;height:44px;border:0;border-radius:10px;background:var(--ci-primary-color);color:#fff;font-weight:800;font-size:14px;cursor:pointer;transition:opacity .2s}
.rl-cta:hover{opacity:.9}
.rl-sec{margin-top:12px;padding:14px 16px}
.rl-sec-t{font-size:11px;font-weight:800;letter-spacing:.6px;text-transform:uppercase;color:rgba(255,255,255,.6);margin-bottom:10px}
.rl-hist{display:grid}
.rl-hi{display:flex;align-items:center;gap:10px;padding:9px 0;border-top:1px solid rgba(255,255,255,.06)}
.rl-hi:first-child{border-top:0;padding-top:0}
.rl-hi img{width:30px;height:auto;flex-shrink:0}
.rl-hi .n{flex:1;min-width:0;font-size:13px;font-weight:700;color:#fff}
.rl-hi .d{display:block;font-size:11px;color:rgba(255,255,255,.55);font-weight:500;margin-top:1px}
.rl-hi .v{font-size:13px;font-weight:800;color:#22c55e;white-space:nowrap}
.rl-hi .v.no{color:rgba(255,255,255,.55);font-weight:600}
.rl-empty{text-align:center;font-size:12.5px;color:rgba(255,255,255,.6);padding:10px 0}
.rl-mask{position:fixed;inset:0;z-index:100000;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(0,0,0,.65);backdrop-filter:blur(4px)}
.rl-tk{width:300px;max-width:100%;text-align:center;border-radius:16px;overflow:hidden;background:var(--card-color-dark,#1e2124);border:1px solid rgba(255,255,255,.08);box-shadow:0 24px 60px rgba(0,0,0,.5);animation:rlPop .45s cubic-bezier(.175,.885,.32,1.275);color:#fff}
@keyframes rlPop{from{opacity:0;transform:scale(.7)}to{opacity:1;transform:none}}
.rl-tk-top{padding:22px 16px 14px;background:radial-gradient(90% 100% at 50% 0%,color-mix(in srgb,var(--ci-primary-color) 45%,transparent),transparent 75%)}
.rl-tk-top img{width:84px;height:auto;display:inline-block;animation:rlCoin 1.2s ease-in-out infinite}
@keyframes rlCoin{50%{transform:translateY(-5px) rotate(-4deg)}}
.rl-tk h3{font-size:17px;font-weight:900;margin-top:8px;color:#fff}
.rl-tk .amt{font-size:32px;font-weight:900;letter-spacing:-.02em;color:#22c55e;margin-top:2px}
.rl-tk.lose .amt{font-size:18px;color:rgba(255,255,255,.6)}
.rl-tk p{font-size:12.5px;color:rgba(255,255,255,.65);margin-top:4px;padding:0 16px}
.rl-tk button{width:calc(100% - 32px);height:42px;margin:14px 16px 16px;border:0;border-radius:8px;background:var(--ci-primary-color);color:#fff;font-weight:800;font-size:13.5px;text-transform:uppercase;letter-spacing:.5px;cursor:pointer}
.rl-conf{position:fixed;inset:0;pointer-events:none;z-index:100002;overflow:hidden}
.rl-conf i{position:absolute;top:-16px;width:9px;height:13px;border-radius:2px;animation:rlFall linear forwards}
@keyframes rlFall{to{transform:translate(var(--dx),110vh) rotate(var(--r));opacity:.9}}

/* bônus de depósito + free spins */
.rl-ico{width:20px;height:20px}
.rl-offers{display:grid;gap:8px}
.rl-offer{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:12px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06)}
.rl-offer-i{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;flex-shrink:0;background:color-mix(in srgb,var(--ci-primary-color) 18%,transparent);color:var(--ci-primary-color)}
.rl-offer-t{min-width:0;display:grid;gap:2px}
.rl-offer-t b{font-size:13.5px;font-weight:800;color:#fff}
.rl-offer-t span{font-size:12px;color:rgba(255,255,255,.6)}
.rl-sec .rl-cta{max-width:none}
.rl-play{flex-shrink:0;height:34px;padding:0 16px;border:0;border-radius:8px;background:var(--ci-primary-color);color:#fff;font-weight:800;font-size:13px;cursor:pointer}

/* botão flutuante de bônus (esquerda) */
.bf-btn{position:fixed;left:16px;bottom:88px;z-index:9990;width:56px;height:56px;border-radius:50%;border:0;cursor:pointer;display:grid;place-items:center;color:#fff;background:var(--ci-primary-color,#1d6fe0);box-shadow:0 8px 22px color-mix(in srgb,var(--ci-primary-color,#1d6fe0) 45%,transparent);animation:bfPulse 2s ease-in-out infinite;transition:transform .2s}
.bf-btn>svg{width:26px;height:26px;animation:bfBounce 1.2s ease-in-out infinite}
.bf-btn:hover{transform:scale(1.06)}
.bf-btn.on{animation:none}
.bf-badge{position:absolute;top:-3px;right:-3px;min-width:22px;height:22px;padding:0 5px;border-radius:999px;display:grid;place-items:center;background:#fff;color:var(--ci-primary-color,#1d6fe0);font-size:11px;font-weight:900;border:2px solid var(--ci-primary-color,#1d6fe0);box-shadow:0 2px 6px rgba(0,0,0,.3)}
@media(min-width:1024px){.bf-btn{bottom:24px;left:24px}}
@keyframes bfPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.08)}}
@keyframes bfBounce{0%,100%{transform:translateY(0)}50%{transform:translateY(-2px)}}
.bf-panel{position:fixed;left:16px;bottom:152px;z-index:9991;width:min(340px,calc(100vw - 32px));max-height:60vh;overflow:auto;padding:12px;border-radius:14px;color:#fff;background:var(--card-color-dark,#16191d);border:1px solid rgba(255,255,255,.08);box-shadow:0 20px 50px rgba(0,0,0,.5);opacity:0;visibility:hidden;transform:translateY(10px);transition:.2s}
.bf-panel.show{opacity:1;visibility:visible;transform:none}
@media(min-width:1024px){.bf-panel{left:24px;bottom:92px}}
.bf-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.bf-head b{font-size:14px;font-weight:800}
.bf-x{width:28px;height:28px;border:0;border-radius:8px;background:rgba(255,255,255,.06);color:#fff;cursor:pointer;display:grid;place-items:center}
.bf-x svg{width:14px;height:14px}
.bf-row{display:flex;align-items:center;gap:10px;padding:10px;border-radius:10px;background:rgba(255,255,255,.04);margin-top:6px}
.bf-ico{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;flex-shrink:0;background:color-mix(in srgb,var(--ci-primary-color,#1d6fe0) 18%,transparent);color:var(--ci-primary-color,#1d6fe0)}
.bf-ico svg{width:20px;height:20px}
.bf-t{flex:1;min-width:0;display:grid;gap:1px}
.bf-t b{font-size:13px;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bf-t span{font-size:11.5px;color:rgba(255,255,255,.6)}
.bf-go{flex-shrink:0;height:32px;padding:0 14px;border:0;border-radius:8px;background:var(--ci-primary-color,#1d6fe0);color:#fff;font-weight:800;font-size:12.5px;cursor:pointer}
