.indaga-ruleta-overlay{position:fixed;inset:0;background:rgba(0,0,0,.68);display:none;align-items:center;justify-content:center;padding:18px;z-index:999999}
.indaga-ruleta-overlay.is-open{display:flex}
.indaga-ruleta-modal{position:relative;width:min(740px,96vw);max-height:94vh;overflow:auto;background:#fff;border-radius:28px;padding:24px 28px 26px;text-align:center;box-shadow:0 24px 80px rgba(0,0,0,.35)}
.indaga-ruleta-close{position:absolute;top:10px;right:14px;border:0;background:transparent;font-size:34px;line-height:1;cursor:pointer;z-index:8}
.indaga-ruleta-copy h2{margin:0 0 6px;font-size:clamp(28px,5vw,42px);line-height:1.05}
.indaga-ruleta-copy p{margin:0 auto 12px;max-width:560px;font-size:18px}
.indaga-ruleta-stage{position:relative;width:min(470px,74vw,54vh);aspect-ratio:1;margin:4px auto 14px;filter:drop-shadow(0 14px 28px rgba(0,0,0,.20))}
.indaga-ruleta-wheel{width:100%;height:100%;object-fit:contain;border-radius:50%;display:block;transform:rotate(0deg);will-change:transform;transition:transform 5600ms cubic-bezier(.08,.83,.16,1)}
.indaga-ruleta-wheel.is-finished{filter:saturate(1.02) contrast(1.02)}
.indaga-ruleta-center{position:absolute;left:50%;top:50%;width:22px;height:22px;border-radius:50%;transform:translate(-50%,-50%);background:#fff;border:4px solid #222;z-index:4;box-shadow:0 0 0 5px rgba(255,255,255,.5)}
.indaga-ruleta-glow{position:absolute;inset:0;border-radius:50%;pointer-events:none;box-shadow:inset 0 0 0 2px rgba(255,255,255,.18),inset 0 24px 40px rgba(255,255,255,.12)}
.indaga-ruleta-needle{position:absolute;left:50%;top:-5px;transform:translateX(-50%);width:76px;height:108px;z-index:6;transform-origin:50% 12px}
.indaga-ruleta-needle-head{position:absolute;left:50%;top:0;width:26px;height:26px;background:#1f1f1f;border-radius:50%;transform:translateX(-50%);box-shadow:0 0 0 6px #fff,0 8px 20px rgba(0,0,0,.24)}
.indaga-ruleta-needle-tip{position:absolute;left:50%;top:19px;transform:translateX(-50%);width:0;height:0;border-left:15px solid transparent;border-right:15px solid transparent;border-top:64px solid #cf142b;filter:drop-shadow(0 8px 10px rgba(0,0,0,.25))}
.indaga-ruleta-needle.is-ticking{animation:indaga-needle-tick .11s linear infinite alternate}
.indaga-ruleta-needle.is-celebrating{animation:indaga-needle-celebrate .55s ease-out 2}
.indaga-ruleta-spin,.indaga-ruleta-cart{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;padding:15px 34px;font-weight:800;font-size:17px;line-height:1.1;cursor:pointer;text-decoration:none;background:#111;color:#fff;box-shadow:0 8px 18px rgba(0,0,0,.18);min-width:220px;margin:0 auto}
.indaga-ruleta-spin{position:relative;z-index:10}
.indaga-ruleta-spin:hover,.indaga-ruleta-cart:hover{color:#fff;transform:translateY(-1px)}
.indaga-ruleta-spin:disabled{opacity:.72;cursor:wait}
.indaga-ruleta-result{margin:14px auto 0;padding:16px;border-radius:18px;background:#f7f7f7;max-width:560px}
.indaga-ruleta-result h3{margin:0 0 6px;font-size:28px}
.indaga-ruleta-result p{margin:0 0 14px;font-size:18px}
@keyframes indaga-needle-tick{from{transform:translateX(-50%) rotate(-12deg)}to{transform:translateX(-50%) rotate(12deg)}}
@keyframes indaga-needle-celebrate{0%{transform:translateX(-50%) rotate(0deg)}25%{transform:translateX(-50%) rotate(18deg)}50%{transform:translateX(-50%) rotate(-14deg)}100%{transform:translateX(-50%) rotate(0deg)}}
@media(max-height:820px){.indaga-ruleta-modal{padding-top:18px;padding-bottom:18px}.indaga-ruleta-copy h2{font-size:34px}.indaga-ruleta-copy p{font-size:16px;margin-bottom:8px}.indaga-ruleta-stage{width:min(390px,68vw,47vh);margin-bottom:10px}.indaga-ruleta-spin,.indaga-ruleta-cart{padding:13px 30px}}
@media(max-width:600px){.indaga-ruleta-modal{padding:20px 14px}.indaga-ruleta-copy p{font-size:16px}.indaga-ruleta-stage{width:min(86vw,48vh);margin-bottom:12px}.indaga-ruleta-needle{width:66px;height:94px;top:-4px}.indaga-ruleta-needle-head{width:22px;height:22px;box-shadow:0 0 0 5px #fff,0 8px 18px rgba(0,0,0,.24)}.indaga-ruleta-needle-tip{top:16px;border-left-width:13px;border-right-width:13px;border-top-width:56px}.indaga-ruleta-spin,.indaga-ruleta-cart{min-width:210px}}
/* v1.1.3: la rueda se anima con Web Animations API; el tema no debe imponer transformaciones. */
#indaga-ruleta-overlay .indaga-ruleta-wheel{transform-origin:50% 50%!important;will-change:transform!important;}
