:root{color-scheme:dark;font-family:Georgia,'Times New Roman',serif;background:#14091e;color:#fff0c9}*{box-sizing:border-box}body{margin:0;min-height:100svh;display:flex;flex-direction:column;align-items:center;background:radial-gradient(ellipse at 50% 45%,#49204f,#14091e 75%)}.poster{position:relative;width:min(100%,480px);aspect-ratio:1052/1495;overflow:hidden;flex-shrink:0;box-shadow:0 0 85px #08000b}.art{position:absolute;inset:0 auto auto 0;display:block;width:100%;height:auto}.explore{position:absolute;left:13.5%;top:73.8%;width:72%;height:14.8%;border:0;border-radius:48%;background:transparent;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:box-shadow .2s,background .2s}.explore:hover{box-shadow:0 0 28px #ffdf8066}.explore:active{background:#ffdf8025}.explore:focus-visible{outline:3px solid #7effea;outline-offset:3px}button{font:inherit}button:focus-visible{outline:3px solid #70ebd6;outline-offset:4px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}dialog{width:min(90%,370px);border:1px solid #d8ac51;border-radius:20px;padding:30px 24px;background:linear-gradient(145deg,#3a164c,#1c102b);color:#fff0c9;text-align:center;box-shadow:0 25px 100px #0009}dialog::backdrop{background:#100719c9;backdrop-filter:blur(6px)}dialog h2{font-size:27px;line-height:1.12;margin:12px 0}dialog p{font:15px/1.65 Arial,sans-serif;color:#eadbe9}.ornament{font-size:32px;color:#53dbc9}.close{position:absolute;right:12px;top:6px;background:none;color:#eddaee;border:0;font:28px Arial;cursor:pointer}.confirm{width:100%;padding:13px;margin-top:10px;background:linear-gradient(#ffe6a2,#e7ae3f);border:1px solid #ffe7ac;color:#38132d;border-radius:30px;font-weight:bold;cursor:pointer}.fallback{position:absolute;inset:0;padding:20% 8%;text-align:center;background:radial-gradient(ellipse,#49204f,#14091e)}.fallback p:first-child{font-size:42px;color:#ffc959}.image-failed .explore{background:linear-gradient(#ffe6a2,#e7ae3f);border-radius:30px;color:#38132d}.image-failed .explore span{position:static;clip-path:none;width:auto;height:auto;overflow:visible;font-size:28px}.nojs{padding:16px;text-align:center}@media(min-width:600px){body{padding-top:16px}.poster{border-radius:12px;overflow:hidden}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}


/* Lightweight decorative animation; all overlays leave the CTA clickable. */
.effects{position:absolute;inset:0;pointer-events:none;overflow:hidden}.spark{position:absolute;left:var(--x);top:var(--y);width:5px;height:5px;border-radius:50%;background:#fff5b4;box-shadow:0 0 8px 2px #ffcb65;animation:float-spark var(--speed) ease-in-out infinite;animation-delay:var(--delay);opacity:0}.spark:nth-child(3n){background:#8dfff3;box-shadow:0 0 9px #2fffe3;width:4px;height:4px}.lamp{position:absolute;left:var(--x);top:var(--y);width:3%;aspect-ratio:1;border-radius:50%;background:#d9fff5;box-shadow:0 0 8px 3px #30ffdf;animation:lamp-glow 2.8s ease-in-out infinite;animation-delay:var(--delay);opacity:.15}.glint{position:absolute;left:var(--x);top:var(--y);width:7%;aspect-ratio:1;background:radial-gradient(ellipse,#fff9c6 0%,#fff4b455 15%,transparent 65%);animation:glint 4s ease-in-out infinite;animation-delay:var(--delay)}.glint::before,.glint::after{content:"";position:absolute;inset:47% 0;background:linear-gradient(90deg,transparent,#fff8d4,transparent)}.glint::after{transform:rotate(90deg)}
.explore{border-radius:999px;isolation:isolate}.explore::after{content:"";position:absolute;inset:6% 2%;border-radius:inherit;box-shadow:0 0 13px 3px #ffe09b;animation:cta-glow 2.6s ease-in-out infinite;pointer-events:none}.motion-toggle{position:absolute;right:10px;bottom:10px;z-index:2;border:1px solid #ecd58780;border-radius:20px;background:#210b36cc;color:#fff1cd;padding:7px 11px;font:12px Arial,sans-serif;cursor:pointer}.motion-paused .effects *,.motion-paused .explore::after{animation-play-state:paused}.image-failed .effects,.image-failed .motion-toggle{display:none}
@keyframes float-spark{0%{opacity:0;transform:translate3d(0,12px,0) scale(.5)}30%{opacity:.85}75%{opacity:.5}100%{opacity:0;transform:translate3d(12px,-50px,0) scale(1.1)}}
@keyframes lamp-glow{0%,100%{opacity:.12;transform:scale(.7)}50%{opacity:.8;transform:scale(1.05)}}
@keyframes glint{0%,65%,100%{opacity:0;transform:scale(.4) rotate(0deg)}80%{opacity:.95;transform:scale(1) rotate(40deg)}}
@keyframes cta-glow{0%,100%{opacity:.12}50%{opacity:.65}}
@media(prefers-reduced-motion:reduce){.effects{display:none}.explore::after{animation:none;opacity:0}.motion-toggle{display:none}}

/* Mobile composition: preserve artwork proportions and anchor CTA below it. */
html{min-height:100%;background:#200b36}body{padding:0;min-height:100svh;min-height:100dvh}.poster{width:min(100%,480px);height:100svh;height:100dvh;min-height:620px;aspect-ratio:auto;border-radius:0;display:flex;flex-direction:column;align-items:center;background:radial-gradient(ellipse at 50% 70%,#711ca0 0%,#390858 48%,#210b36 85%);padding-bottom:calc(54px + env(safe-area-inset-bottom))}.visual{position:relative;width:100%;aspect-ratio:1052/1085;overflow:hidden;flex-shrink:0}.art{position:absolute;width:100%;height:auto;inset:0}.effects{height:auto;aspect-ratio:1052/1495;bottom:auto}.explore{position:relative;left:auto;top:auto;width:76%;height:auto;aspect-ratio:758/222;flex-shrink:0;margin:auto 0 0;background-image:url('assets/slot-calavera.jpg');background-size:138.79% auto;background-position:50% 86.62%;border-radius:999px;box-shadow:0 7px 28px #17002388}.explore:active{background-image:url('assets/slot-calavera.jpg');transform:scale(.97)}.motion-toggle{bottom:calc(6px + env(safe-area-inset-bottom));min-height:44px}.image-failed .visual{visibility:hidden}.image-failed .explore{background-image:none}.fallback{z-index:0}.explore{z-index:1}
@media(min-width:600px){.poster{border-radius:0}}
@media(max-height:650px) and (orientation:landscape){.poster{height:auto;min-height:700px}}
.poster{min-height:540px;background:linear-gradient(#26093c33,#35084bbf),url('assets/slot-calavera.jpg') center/cover}.visual{mask-image:linear-gradient(#000 96%,transparent);-webkit-mask-image:linear-gradient(#000 96%,transparent)}.explore{margin:auto 0}.poster::before{content:"";position:absolute;inset:0;backdrop-filter:blur(16px);pointer-events:none}.visual,.motion-toggle{z-index:1}
