.capsule-game{--machine:var(--machine-custom);--capsule:var(--capsule-custom)}.capsule-game[data-themed="1"]{--machine:#9dc8cb;--capsule:#dba8bf}body[data-website-theme=christmas] .capsule-game[data-themed="1"]{--machine:#ba2942;--capsule:#e8bd5d}.capsule-side{min-width:0}.capsule-stage{position:relative;min-height:425px;display:grid;place-items:center;margin:20px auto}.capsule-machine{position:relative;width:300px;height:420px;max-width:100%}.capsule-globe{position:absolute;width:248px;height:245px;top:0;left:26px;border-radius:48% 48% 38% 38%;overflow:hidden;background:radial-gradient(ellipse at 30% 20%,#ffffffb0,#ccebf269 60%,#41758755);border:5px solid #d3b979;box-sizing:border-box;box-shadow:inset 0 0 20px #fff9,0 6px 22px #001a3526;z-index:2}.capsule-globe i{position:absolute;width:46px;height:46px;left:var(--x);top:var(--y);rotate:var(--turn);border-radius:50%;background:linear-gradient(#e6a5bd 0 48%,#eaf7fb 50%);border:1px solid #fff9;box-shadow:inset -5px -5px 8px #36546840,2px 3px 5px #17365230}.capsule-globe i:nth-child(3n){background:linear-gradient(#e8c56e 0 48%,#fff4cd 50%)}.capsule-globe i:nth-child(3n+1){background:linear-gradient(#76b7b5 0 48%,#eaf7fb 50%)}.capsule-glass-shine{position:absolute;top:24px;left:22px;width:34px;height:115px;border-radius:70%;background:#ffffff70;rotate:22deg;filter:blur(3px)}.capsule-base{position:absolute;top:214px;left:40px;width:220px;height:171px;border-radius:12px 12px 28px 28px;background:linear-gradient(100deg,#ffffff45,transparent 50%,#0003),var(--machine);border:3px solid #e5cc8b;box-shadow:0 10px 18px #00172c35}.capsule-base>span{display:block;text-align:center;color:#fff8df;font:700 11px Arial;letter-spacing:.16em;margin-top:14px;text-shadow:0 1px 2px #243b5080}.capsule-handle{position:absolute;top:40px;left:77px;width:62px;height:62px;border:5px solid #d2ae5c;border-radius:50%;background:radial-gradient(circle at 30% 25%,#fff8db,#c9a959);box-shadow:0 4px 5px #183a4933}.capsule-handle:after{content:'';position:absolute;top:22px;left:3px;right:3px;height:10px;background:#b48637;border-radius:10px;box-shadow:0 2px 2px #fff5}.capsule-chute{position:absolute;left:65px;bottom:12px;width:84px;height:40px;border:4px solid #d2b05f;border-radius:40px 40px 10px 10px;background:linear-gradient(#092c40,#416576);box-shadow:inset 0 4px 8px #00172c88}.capsule-floor{position:absolute;bottom:4px;left:35px;right:35px;height:17px;border-radius:50%;background:#00172c40;filter:blur(6px)}.capsule-output{position:absolute;left:112px;top:332px;width:76px;height:76px;z-index:4;opacity:0}.capsule-half{position:absolute;left:0;right:0;height:50%;background:linear-gradient(110deg,#fff6,transparent 55%,#00172c40),var(--capsule);border:1px solid #fff8;box-sizing:border-box}.capsule-top{top:0;border-radius:50px 50px 0 0}.capsule-bottom{bottom:0;border-radius:0 0 50px 50px;background:linear-gradient(110deg,#fff6,transparent 55%,#00172c30),#f1f7f4}.capsule-output>i{position:absolute;inset:0;display:grid;place-items:center;font-style:normal;color:#ffe6a3;font-size:46px;opacity:0;text-shadow:0 0 20px #ffe6a3}.capsule-stage[data-phase=turn] .capsule-handle{animation:capsule-turn .7s ease-in-out forwards}.capsule-stage[data-phase=mix] .capsule-globe i{animation:capsule-mix .65s ease-in-out infinite alternate;animation-delay:var(--delay)}.capsule-stage[data-phase=drop] .capsule-output{opacity:1;animation:capsule-drop .7s ease-in both}.capsule-stage[data-phase=bounce] .capsule-output{opacity:1;animation:capsule-bounce .5s ease-out}.capsule-stage[data-phase=open] .capsule-output{opacity:1}.capsule-stage[data-phase=open] .capsule-top{animation:capsule-lid .6s ease-out forwards}.capsule-stage[data-phase=open] .capsule-bottom{transform:translateY(8px)}.capsule-stage[data-phase=open] .capsule-output>i{animation:capsule-star .6s ease-out forwards}.capsule-stage[data-phase=result] .capsule-machine{display:none}.capsule-result{width:100%;box-sizing:border-box;padding:30px 24px;border:2px solid #dfbb63;border-radius:24px;background:linear-gradient(140deg,#fffef5,#ffe6aa);box-shadow:0 10px 35px #00172c35;text-align:center;color:#453214;animation:capsule-reward .5s ease-out}.capsule-result-eyebrow{display:block;font-size:10px;letter-spacing:.15em;font-weight:800;color:#825d21}.capsule-result>strong{display:block;font-size:52px;color:#84550c;margin:16px 0;line-height:1.1}.capsule-result h3{color:#453214!important;font-size:21px}.capsule-result p{color:#345365!important;font-size:13px;line-height:1.7}.capsule-result img{display:block;width:110px;height:100px;object-fit:contain;margin:12px auto}.capsule-result:has(img:not([hidden]))>strong{display:none}.capsule-sparkles{color:#b88418;font-size:30px;letter-spacing:12px;margin-bottom:14px}.capsule-game[data-effects=celebratory] .capsule-sparkles{animation:capsule-sparkle 1s ease-in-out 3}.capsule-game[data-effects=gentle] .capsule-globe i{animation:none}.capsule-odds{font-size:12px;line-height:1.7}.capsule-side [hidden]{display:none!important}#capsule-skip{display:block;margin:16px auto}body[data-website-theme=christmas] #capsule-status,body[data-website-theme=christmas] .capsule-odds{color:#edf7ff}@keyframes capsule-turn{to{transform:rotate(360deg)}}@keyframes capsule-mix{to{transform:translate(12px,-14px) rotate(40deg)}}@keyframes capsule-drop{from{transform:translateY(-130px) scale(.5);opacity:0}20%{opacity:1}to{transform:translateY(0) scale(1);opacity:1}}@keyframes capsule-bounce{0%,100%{transform:translateY(0)}40%{transform:translateY(-32px) rotate(18deg)}75%{transform:translateY(-8px) rotate(-9deg)}}@keyframes capsule-lid{to{transform:translate(-25px,-55px) rotate(-35deg);opacity:0}}@keyframes capsule-star{to{opacity:1;transform:translateY(-25px) scale(1.6)}}@keyframes capsule-reward{from{opacity:0;transform:translateY(28px) scale(.9)}to{opacity:1;transform:none}}@keyframes capsule-sparkle{50%{opacity:.4;transform:scale(.9)}}@media(max-width:520px){.capsule-stage{min-height:395px}.capsule-machine{transform:scale(.93);transform-origin:top center;height:400px}.capsule-result{padding:24px 18px}}@media(prefers-reduced-motion:reduce){.capsule-game *{animation:none!important;transition:none!important}}

/* Shake only the machine during mixing; individual transforms preserve mobile scale. */
.capsule-stage[data-phase=mix] .capsule-machine{transform-origin:50% 90%;animation:capsule-earthquake .18s linear infinite;will-change:translate,rotate}
.capsule-game[data-effects=gentle] .capsule-machine{animation:none}
@keyframes capsule-earthquake{0%,100%{translate:0 0;rotate:0deg}15%{translate:-7px 2px;rotate:-2deg}35%{translate:8px -3px;rotate:2.5deg}55%{translate:-9px -1px;rotate:-2.5deg}75%{translate:7px 3px;rotate:2deg}90%{translate:-4px -2px;rotate:-1deg}}
@media(prefers-reduced-motion:reduce){.capsule-stage[data-phase=mix] .capsule-machine{animation:none!important;will-change:auto}}
