.reward-modal{width:min(580px,calc(100vw - 28px));max-width:580px;max-height:calc(100dvh - 30px);overflow:auto;text-align:center;padding:35px 30px 25px;border:1px solid color-mix(in srgb,var(--reward-tone) 60%,#aaa);border-radius:24px;background:radial-gradient(ellipse at 50% 30%,color-mix(in srgb,var(--reward-tone) 20%,#121925),#101620 75%);color:#f0f2f8;box-shadow:0 35px 100px #000a,0 0 70px color-mix(in srgb,var(--reward-tone) 18%,transparent);isolation:isolate;animation:modal-reveal .6s cubic-bezier(.16,1,.3,1)}
.reward-modal::backdrop{background:#050914d9;backdrop-filter:blur(9px);animation:backdrop-in .35s ease}.reward-close{position:absolute;right:15px;top:12px;border:1px solid #ffffff1a;border-radius:50%;background:#151e2d;color:#c0ccdc;width:32px;height:32px;font-size:23px;z-index:3}.reward-eyebrow{font-size:11px;letter-spacing:3px;color:#ffdaa3;position:relative}.reward-art{height:225px;display:grid;place-items:center;position:relative}.reward-art img{width:100%;height:215px;object-fit:contain;filter:drop-shadow(0 15px 25px #0009);animation:loot-flight .95s cubic-bezier(.17,.8,.2,1) both}.reward-modal h2{font-size:25px;margin:8px 0 12px;position:relative;animation:reward-text .6s .2s both}.reward-price{font-size:30px;color:#ffd394;text-shadow:0 0 25px #f7b44630}.reward-modal p{font-size:12px;color:#a8b7cb;margin:12px 0 25px}.reward-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;position:relative}.reward-actions button{padding:14px 9px;font-size:13px}.reward-keep{grid-column:1/-1;background:none;border:0;color:#b2c0d4}.reward-rays{position:absolute;inset:0;z-index:-1;overflow:hidden;border-radius:inherit;pointer-events:none}.reward-rays:before{content:'';position:absolute;inset:-50%;background:repeating-conic-gradient(from 0deg,transparent 0 25deg,color-mix(in srgb,var(--reward-tone) 15%,transparent) 27deg 32deg,transparent 35deg 60deg);filter:blur(10px);animation:reward-spin 28s linear infinite}.reward-orbit{position:absolute;left:calc(50% - 110px);top:60px;width:220px;height:220px;border:1px solid color-mix(in srgb,var(--reward-tone) 50%,transparent);border-radius:50%;box-shadow:0 0 50px color-mix(in srgb,var(--reward-tone) 20%,transparent);z-index:-1;animation:orbit-expand .9s ease-out}.reward-orbit:after{content:'';position:absolute;inset:15px;border:1px dashed #ffffff16;border-radius:50%}
.multi-summary{margin:0 25px 15px;padding:14px 18px;background:linear-gradient(100deg,#223149,#1a202d);border:1px solid #465571;border-radius:10px;color:#c5d3e5;font-size:12px;line-height:1.8}.multi-summary b{color:#ffd397}.multi-controls{display:flex;gap:8px;margin-top:7px}.multi-controls button{padding:5px 10px;border:1px solid #536078;border-radius:5px;background:#172032;color:#bfcde0;font-size:11px}.preview-stack{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;width:100%;min-height:110px;gap:3px}.upgrade-pedestal .preview-stack img{width:30%;height:65px;object-fit:contain}.preview-stack img:only-child{width:100%;height:125px}.upgrade-pedestal .multi-label{font-size:11px;color:#9fafc4}.choice .target-odds{display:block;color:#f3cb8f;font-size:10px;padding:5px}.upgrade-pedestal{min-width:0}
@keyframes modal-reveal{from{opacity:0;transform:translateY(35px) scale(.85)}to{opacity:1;transform:none}}@keyframes backdrop-in{from{opacity:0}to{opacity:1}}@keyframes loot-flight{0%{opacity:0;transform:translateY(-50px) scale(.35) rotate(-18deg);filter:blur(10px) brightness(2)}65%{opacity:1;transform:scale(1.08) rotate(3deg)}100%{opacity:1;transform:none}}@keyframes orbit-expand{from{opacity:0;scale:.25}to{opacity:1;scale:1}}@keyframes reward-spin{to{transform:rotate(360deg)}}@keyframes reward-text{from{opacity:0;translate:0 10px}to{opacity:1;translate:0 0}}
@media(max-width:600px){.reward-modal{padding:32px 18px 15px;border-radius:17px}.reward-art{height:180px}.reward-art img{height:175px}.reward-modal h2{font-size:21px}.reward-price{font-size:25px}.reward-orbit{width:180px;height:180px;left:calc(50% - 90px)}.multi-summary{margin:0 12px 12px}.upgrade-pedestal .preview-stack img{height:45px;width:45%}}
.reward-modal.quiet,.reward-modal.quiet *{animation:none!important}@media(prefers-reduced-motion:reduce){.reward-modal,.reward-modal::backdrop,.reward-modal *{animation:none!important}}
