.spin-pill{z-index:58;border:2px solid var(--ink);background:var(--gold);min-height:44px;color:var(--ink);font:600 .95rem/1 var(--font-display), ui-rounded, sans-serif;letter-spacing:.01em;cursor:pointer;border-radius:999px;align-items:center;gap:.45rem;padding:.55rem 1rem .55rem .85rem;transition:transform .2s,background .2s;display:inline-flex;position:fixed;bottom:1rem;right:1rem;box-shadow:0 10px 30px #20223738}.spin-pill:hover{background:#ffd766;transform:translateY(-2px)}.spin-pill.is-code{background:var(--aqua)}.spin-backdrop{z-index:70;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:radial-gradient(120% 90% at 50% 0,#8064bb59,#202237c7);place-items:center;padding:1.25rem;animation:.25s spin-fade;display:grid;position:fixed;inset:0}.spin-dialog{border:2px solid var(--ink);background:var(--paper);width:min(100%,30rem);max-height:calc(100dvh - 2.5rem);color:var(--ink);border-radius:30px;outline:none;padding:1.4rem 1.35rem 1.3rem;animation:.4s cubic-bezier(.2,.9,.3,1.2) spin-rise;position:relative;overflow:auto;box-shadow:0 30px 90px #14122880,0 0 0 6px #fff5df1f}.spin-toolbar{z-index:5;gap:.4rem;display:flex;position:absolute;top:.7rem;right:.7rem}.spin-icon-button{border:1.5px solid var(--line);width:38px;height:38px;color:var(--ink);cursor:pointer;background:#fff;border-radius:50%;place-items:center;transition:border-color .15s,transform .15s;display:grid}.spin-icon-button:hover{border-color:var(--ink);transform:translateY(-1px)}.spin-icon-button[aria-pressed=false]{color:var(--muted)}.spin-close{font-size:1.5rem;line-height:1}.spin-copy{padding-right:5.4rem}.spin-copy .kicker,.spin-claimed .kicker{color:var(--coral);align-items:center;gap:.4rem;margin-bottom:.45rem;display:inline-flex}.spin-dialog h2{font-family:var(--font-editorial), Georgia, serif;letter-spacing:-.025em;margin:0 0 .5rem;font-size:clamp(1.9rem,6.4vw,2.4rem);line-height:1.02}.spin-dialog h2 em{color:var(--coral);font-style:italic;font-weight:500;display:block}.spin-dialog[data-state=win] h2 em{color:var(--purple)}.spin-layout{gap:.25rem;display:grid}.spin-side{display:contents}.spin-copy{order:1}.spin-layout .spin-cabinet{order:2}.spin-side-actions{order:3}.spin-dialog p{color:var(--muted);margin:0;font-size:.96rem;line-height:1.5}.spin-dialog[data-state=win] h2{color:var(--coral);transform-origin:0;animation:.6s cubic-bezier(.2,1.4,.4,1) spin-pop}.spin-cabinet{--creature:var(--gold);--creature-accent:var(--coral);isolation:isolate;background:linear-gradient(#2b2d48 0%,#202237 40%,#16172a 100%);border-radius:24px;margin:1rem 0 .9rem;padding:.75rem .8rem .85rem;position:relative;overflow:hidden;box-shadow:inset 0 2px #ffffff17,inset 0 -3px #00000073,0 18px 40px #20223759}.spin-cabinet:before{content:"";pointer-events:none;background:radial-gradient(60% 40% at 50% 0,#f3c9552e,#0000 70%);position:absolute;inset:0}.spin-confetti{pointer-events:none;z-index:6;width:100%;height:100%;position:absolute;inset:0}.spin-marquee{grid-template-columns:1fr auto 1fr;align-items:center;gap:.5rem;margin-bottom:.55rem;display:grid;position:relative}.spin-marquee-title{background:linear-gradient(180deg, #ffe58a, var(--gold) 55%, #e2b33e);color:var(--ink);font:700 .74rem/1 var(--font-display), ui-rounded, sans-serif;letter-spacing:.2em;text-transform:uppercase;border-radius:999px;padding:.22rem .7rem;box-shadow:0 0 0 2px #00000059,0 0 18px #f3c95559}.spin-lights{justify-content:space-between;gap:2px;display:flex}.spin-lights i{width:7px;height:7px;animation:2.4s linear infinite spin-chase;animation-delay:calc(var(--i) * -.171s);background:#3d3f5e;border-radius:50%;display:block;box-shadow:inset 0 1px #ffffff1f}.spin-lights-right i{animation-delay:calc(var(--i) * .171s - 2.4s)}.spin-cabinet[data-spinning=true] .spin-lights i{animation-duration:.7s;animation-delay:calc(var(--i) * -.05s)}.spin-cabinet[data-win=true] .spin-lights i{animation:.28s ease-in-out infinite alternate spin-flash;animation-delay:calc(var(--i) * 20ms)}.spin-deck{grid-template-columns:1fr auto;align-items:center;gap:.6rem;margin-bottom:.6rem;display:grid}.spin-prize{background:#0d0e1c;border-radius:12px;align-items:baseline;gap:.55rem;padding:.35rem .75rem;display:flex;box-shadow:inset 0 0 0 1px #ffffff14,inset 0 0 18px #0009}.spin-prize small{color:#8d8fb0;font:700 .62rem/1 var(--font-display), ui-rounded, sans-serif;letter-spacing:.16em;text-transform:uppercase}.spin-prize strong{color:var(--gold);font:700 1.05rem/1 var(--font-display), ui-rounded, sans-serif;letter-spacing:.06em;text-shadow:0 0 10px #f3c955b3}.spin-cabinet[data-win=true] .spin-prize strong{animation:.45s ease-in-out infinite alternate spin-glow-text}.spin-tries{align-items:center;gap:.3rem;display:flex}.spin-tries small{color:#8d8fb0;font:700 .58rem/1 var(--font-display), ui-rounded, sans-serif;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;margin-right:.35rem}.spin-tries span{color:#9a9cbb;width:24px;height:24px;font:700 .7rem/1 var(--font-display), ui-rounded, sans-serif;background:#3d3f5e;border-radius:50%;place-items:center;display:grid;box-shadow:inset 0 1px #ffffff1a}.spin-tries span.is-live{background:var(--coral);color:#fff;box-shadow:0 0 12px #ef665fcc}.spin-tries span.is-used{background:var(--gold);color:var(--ink)}.spin-machine{grid-template-columns:1fr auto;align-items:center;gap:.7rem;display:grid}.spin-window{--spin-symbol:84px;grid-template-columns:repeat(3, var(--spin-symbol));background:linear-gradient(#7d7f9c,#e9e7f2 18%,#fff 40% 60%,#e9e7f2 82%,#7d7f9c);border-radius:18px;justify-content:center;gap:.45rem;padding:.55rem;display:grid;position:relative;box-shadow:inset 0 0 0 2px #00000040,0 6px #00000059}.spin-reel{height:calc(var(--spin-symbol) * 2.25);box-shadow:inset 0 0 0 1.5px var(--line);background:#fff;border-radius:12px;transition:box-shadow .2s;position:relative;overflow:hidden}.spin-reel.is-stopped{box-shadow:inset 0 0 0 3px var(--gold)}.spin-reel.is-next{box-shadow:inset 0 0 0 3px var(--coral);animation:1s ease-in-out infinite spin-pulse}.spin-reel-glass{z-index:3;pointer-events:none;mix-blend-mode:multiply;background:linear-gradient(#28283c8c 0%,#fff0 22%,#ffffff47 44% 56%,#fff0 78%,#28283c8c 100%);position:absolute;inset:0}.spin-reel:after{content:"";z-index:2;pointer-events:none;background:linear-gradient(#ffffffe6 0%,#fff0 30% 70%,#ffffffe6 100%);position:absolute;inset:0}.spin-strip{--spin-position:0;will-change:transform;transform:translate3d(0, calc(var(--spin-symbol) * -.5 - var(--spin-position) * var(--spin-symbol)), 0);position:absolute;top:50%;left:0;right:0}.spin-symbol{height:var(--spin-symbol);place-items:center;display:grid}.spin-symbol img{width:calc(var(--spin-symbol) - 10px);height:calc(var(--spin-symbol) - 10px);object-fit:cover;-webkit-user-select:none;user-select:none;border-radius:10px}.spin-payline{height:calc(var(--spin-symbol) + 6px);border:2.5px solid var(--gold);pointer-events:none;z-index:4;border-radius:13px;transition:border-color .3s,box-shadow .3s;position:absolute;top:50%;left:.55rem;right:.55rem;transform:translateY(-50%);box-shadow:0 0 0 4px #f3c95529,inset 0 0 0 1px #fff9}.spin-cabinet[data-tension=true] .spin-payline{border-color:var(--coral);animation:.9s ease-in-out infinite spin-heartbeat}.spin-cabinet[data-win=true] .spin-payline{border-color:var(--creature-accent);box-shadow:0 0 0 6px color-mix(in srgb, var(--creature) 45%, transparent), 0 0 34px var(--creature);animation:.7s ease-in-out infinite alternate spin-glow}.spin-cabinet[data-win=true] .spin-strip{animation:.7s cubic-bezier(.2,1.4,.4,1) spin-bounce}.spin-mood{text-align:center;background:#ffffff14;border-radius:12px;padding:.55rem .8rem;color:#e7e6f3!important;margin-top:.7rem!important;font-size:.86rem!important}.spin-mood strong{color:var(--creature)}.spin-lever{--pull:0;width:62px;color:var(--cream);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;background:0 0;border:0;justify-items:center;gap:.3rem;padding:.3rem 0 .1rem;display:grid;position:relative}.spin-lever:active{cursor:grabbing}.spin-lever:disabled{cursor:default;opacity:.5}.spin-lever:focus-visible{outline:3px solid var(--gold);outline-offset:4px;border-radius:16px}.spin-lever-track{background:linear-gradient(#0c0d19,#242640);border-radius:12px;width:22px;height:122px;position:absolute;top:18px;left:50%;transform:translate(-50%);box-shadow:inset 0 0 0 1px #ffffff0f}.spin-lever-arm{transform-origin:50% 100%;width:12px;height:118px;transform:scaleY(calc(1 - var(--pull) * .48));background:linear-gradient(#c9c8dc,#6b6989 60%,#4a4866);border-radius:8px;transition:transform .18s cubic-bezier(.3,1.4,.5,1);display:block;position:relative;box-shadow:inset 0 0 0 1px #fff3}.spin-lever-arm:after{content:"";background:linear-gradient(#4a4866,#2c2b44);border-radius:9px 9px 5px 5px;width:34px;height:22px;position:absolute;bottom:-12px;left:50%;transform:translate(-50%);box-shadow:0 3px #0006}.spin-lever-knob{width:40px;height:40px;transform:translateX(-50%) scaleY(calc(1 / (1 - var(--pull) * .48)));background:radial-gradient(circle at 35% 30%, #ff9d97, var(--coral) 55%, #b23b36);border-radius:50%;transition:transform .18s cubic-bezier(.3,1.4,.5,1);position:absolute;top:-20px;left:50%;box-shadow:0 8px 16px #00000073,inset 0 -3px #0003}.spin-cabinet[data-idle=true] .spin-lever-knob{animation:1.8s ease-in-out infinite spin-beckon}.spin-lever-label{font:800 .7rem/1 var(--font-display), ui-rounded, sans-serif;letter-spacing:.16em;text-transform:uppercase}.spin-footer,.spin-form{gap:.7rem;display:grid}.spin-pull-button,.spin-form .button{justify-content:center;width:100%}.spin-field{gap:.4rem;font-size:.92rem;font-weight:600;display:grid}.spin-field input{border:1.5px solid var(--ink);width:100%;min-height:52px;font:inherit;color:var(--ink);background:#fff;border-radius:14px;padding:.75rem 1rem;font-size:1rem}.spin-field input:focus{outline-offset:2px;outline:3px solid #f3c955b3}.spin-consent{cursor:pointer;align-items:flex-start;gap:.6rem;font-size:.85rem;line-height:1.45;display:flex}.spin-consent input{width:18px;height:18px;accent-color:var(--ink);flex:none;margin-top:.1rem}.spin-honeypot{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.spin-error{color:#b9413b;font-weight:600}.spin-legal,.spin-note{font-size:.8rem!important;line-height:1.45!important}.spin-legal a{color:inherit;text-decoration:underline}.spin-claimed{isolation:isolate;gap:.7rem;padding-right:5.4rem;display:grid;position:relative}.spin-claimed h2,.spin-claimed .kicker{padding-right:0}.spin-ticket{color:var(--ink);text-align:center;box-shadow:inset 0 0 0 2px var(--ink);--notch:12px;-webkit-mask:radial-gradient(circle at 0 50%, transparent var(--notch), #000 calc(var(--notch) + 1px)), radial-gradient(circle at 100% 50%, transparent var(--notch), #000 calc(var(--notch) + 1px));-webkit-mask-composite:source-in;-webkit-mask:radial-gradient(circle at 0 50%, transparent var(--notch), #000 calc(var(--notch) + 1px)), radial-gradient(circle at 100% 50%, transparent var(--notch), #000 calc(var(--notch) + 1px));mask:radial-gradient(circle at 0 50%, transparent var(--notch), #000 calc(var(--notch) + 1px)), radial-gradient(circle at 100% 50%, transparent var(--notch), #000 calc(var(--notch) + 1px));background:linear-gradient(#fff5df,#ffe9b8);border-radius:16px;justify-items:center;gap:.45rem;margin:.3rem 0;padding:1rem 1.2rem 1.1rem;display:grid;position:relative;-webkit-mask-composite:source-in;mask-composite:intersect}.spin-ticket-label{font:700 .66rem/1 var(--font-display), ui-rounded, sans-serif;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}.spin-ticket code{font:800 2rem/1 var(--font-display), ui-rounded, sans-serif;letter-spacing:.14em;color:var(--ink)}.spin-ticket .button{min-height:44px;padding-inline:18px}.spin-ticket-fine{color:var(--muted);font-size:.78rem}.spin-creature-card{box-shadow:inset 0 0 0 1.5px var(--line);background:#fff;border-radius:16px;grid-template-columns:auto 1fr;align-items:center;gap:.75rem;padding:.6rem .75rem;display:grid}.spin-creature-card img{object-fit:cover;width:64px;height:64px;box-shadow:0 0 0 3px var(--creature);border-radius:12px}.spin-creature-card strong{font-size:.95rem;display:block}.spin-creature-card span{color:var(--muted);margin-top:.15rem;font-size:.84rem;line-height:1.4;display:block}.spin-claimed .button-primary{justify-content:center;gap:.5rem;margin-top:.2rem}@keyframes spin-fade{0%{opacity:0}to{opacity:1}}@keyframes spin-rise{0%{opacity:0;transform:translateY(18px)scale(.97)}to{opacity:1;transform:none}}@keyframes spin-pop{0%{transform:scale(.85)}60%{transform:scale(1.06)}to{transform:none}}@keyframes spin-chase{0%,14%{background:#ffe58a;box-shadow:0 0 8px #f3c955e6}15%,to{background:#3d3f5e;box-shadow:inset 0 1px #ffffff1f}}@keyframes spin-glow-text{0%{color:var(--gold);text-shadow:0 0 10px #f3c955b3}to{color:#fff8dc;text-shadow:0 0 18px #fff4c8, 0 0 30px var(--creature)}}@keyframes spin-flash{0%{background:#ffe58a;box-shadow:0 0 10px #f3c955f2}to{background:var(--coral);box-shadow:0 0 10px #ef665ff2}}@keyframes spin-pulse{0%,to{box-shadow:inset 0 0 0 3px var(--coral)}50%{box-shadow:inset 0 0 0 3px #ef665f59}}@keyframes spin-heartbeat{0%,to{transform:translateY(-50%)scale(1)}20%{transform:translateY(-50%)scale(1.035)}40%{transform:translateY(-50%)scale(1)}60%{transform:translateY(-50%)scale(1.03)}}@keyframes spin-glow{0%{box-shadow:0 0 0 6px color-mix(in srgb, var(--creature) 35%, transparent), 0 0 22px var(--creature)}to{box-shadow:0 0 0 9px color-mix(in srgb, var(--creature) 55%, transparent), 0 0 42px var(--creature)}}@keyframes spin-bounce{0%{scale:1}40%{scale:1.07}to{scale:1}}@keyframes spin-beckon{0%,to{box-shadow:0 8px 16px #00000073,inset 0 -3px #0003,0 0 #ef665f99}50%{box-shadow:0 8px 16px #00000073,inset 0 -3px #0003,0 0 0 10px #ef665f00}}@media (min-width:900px){.spin-dialog{border-radius:36px;width:min(100%,66rem);padding:2.4rem 2.6rem 2.2rem}.spin-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.12fr);align-items:center;gap:2.4rem}.spin-side{align-content:center;gap:1.4rem;display:grid}.spin-copy,.spin-side-actions{order:0}.spin-layout .spin-cabinet{border-radius:30px;order:0;margin:0;padding:1.1rem 1.15rem 1.2rem}.spin-copy{padding-right:0}.spin-dialog h2{font-size:clamp(2.4rem,3.6vw,3.3rem)}.spin-dialog p{font-size:1.05rem}.spin-window{--spin-symbol:112px;gap:.6rem;padding:.7rem}.spin-machine{gap:1rem}.spin-lever{width:76px}.spin-lever-arm{width:14px;height:160px}.spin-lever-track{width:26px;height:164px}.spin-lever-knob{width:48px;height:48px;top:-24px}.spin-marquee-title{padding:.3rem .95rem;font-size:.86rem}.spin-lights i{width:9px;height:9px}.spin-prize strong{font-size:1.3rem}.spin-prize small{font-size:.7rem}.spin-tries span{width:28px;height:28px;font-size:.8rem}.spin-tries small{font-size:.66rem}.spin-mood{font-size:.95rem!important}.spin-claimed{max-width:38rem;margin:0 auto}}@media (min-width:1200px){.spin-dialog{width:min(100%,76rem);padding:2.8rem 3rem 2.6rem}.spin-layout{gap:3rem}.spin-window{--spin-symbol:128px;gap:.7rem;padding:.8rem}.spin-lever-arm{height:180px}.spin-lever-track{height:184px}.spin-dialog h2{font-size:clamp(2.6rem,3.4vw,3.6rem)}.spin-dialog p{font-size:1.1rem}.spin-cabinet{padding:1.25rem 1.3rem 1.35rem}}@media (max-width:640px){.spin-backdrop{place-items:stretch stretch;padding:0}.spin-dialog{width:100%;height:100dvh;max-height:none;padding:1.4rem 1.1rem calc(1.2rem + env(safe-area-inset-bottom));box-shadow:none;border:0;border-radius:0;animation:.35s cubic-bezier(.2,.9,.3,1) spin-slide}.spin-layout{align-content:center;gap:.4rem;min-height:calc(100dvh - 2.6rem)}.spin-window{--spin-symbol:80px}.spin-copy .kicker{letter-spacing:.08em;font-size:.72rem}.spin-dialog h2{font-size:clamp(2rem,8.6vw,2.5rem)}}@keyframes spin-slide{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}@media (max-width:420px){.spin-window{--spin-symbol:74px;gap:.35rem;padding:.45rem}.spin-tries small{display:none}.spin-cabinet{padding:.6rem .6rem .7rem}.spin-machine{gap:.45rem}.spin-lever{width:50px}.spin-lever-arm{height:100px}.spin-lever-track{height:104px}.spin-marquee-title{letter-spacing:.14em;padding-inline:.5rem;font-size:.62rem}.spin-lights i{width:5px;height:5px}}@media (prefers-reduced-motion:reduce){.spin-backdrop,.spin-dialog,.spin-dialog[data-state],.spin-lights i,.spin-lever-knob,.spin-reel.is-next,.spin-payline,.spin-strip,.spin-dialog[data-state=win] h2,.spin-prize strong{animation:none!important}.spin-lever-arm,.spin-lever-knob{transition:none}.spin-strip{transition:transform .3s}}
