/* A game-vault wheel: the stationary brass frame surrounds an equal-slot disc. */
.prize-page{--brass:#d7b574;--ice:#9fe7dd;position:relative}
.prize-page .prize-hero{grid-template-columns:.83fr 1.17fr;gap:36px;padding:38px 0 30px}
.prize-page .prize-copy{padding:0 0 25px;position:relative;z-index:1}
.prize-page .prize-copy:before{content:'';position:absolute;z-index:-1;width:390px;max-width:100%;height:390px;left:-40px;top:0;background:radial-gradient(ellipse,#b49d3620,transparent 68%);pointer-events:none}
.prize-page .prize-copy h1{font-size:clamp(39px,4.2vw,65px);letter-spacing:-2px;margin-bottom:24px}
.prize-page .prize-copy .eyebrow{color:var(--brass);letter-spacing:3px}
.prize-page .prize-copy .lead{max-width:410px;color:#b8c1b6;font-size:17px}
.loot-stats{display:flex;gap:13px;align-items:center;flex-wrap:wrap;margin:26px 0;color:#95a49a;font-size:11px}
.loot-stats b{color:#e9dcc0;font-size:17px;margin-right:4px}
.loot-stats i{width:3px;height:3px;background:#b89958;transform:rotate(45deg)}
.prize-page #wheel-state .pill{border:1px solid #c6a05835;background:#a7903920;color:#d9cfad;font-size:11px}
.prize-page #spin-button{background:linear-gradient(115deg,#e9ffb0,#bcdf66);border:1px solid #ebffc2;border-radius:8px;box-shadow:0 3px 0 #617d2d,0 12px 35px #b9de4720;min-width:290px;font-size:17px;transition:box-shadow .2s,transform .2s}
.prize-page #spin-button:hover:not(:disabled){box-shadow:0 3px 0 #617d2d,0 10px 45px #b9de4740;transform:translateY(-2px)}
.prize-page .odds-note{max-width:390px;color:#97a18e;line-height:1.75;margin-top:20px}
.wheel-vault{position:relative;isolation:isolate;padding-top:4px}
.vault-title{display:flex;align-items:center;justify-content:center;gap:14px;color:#c5ad7c;font-size:10px;font-weight:700;letter-spacing:4px;margin:0 0 10px}
.vault-title span{height:1px;width:36px;background:linear-gradient(90deg,transparent,#9c814e)}
.vault-title span:last-child{transform:scaleX(-1)}
.prize-page .wheel-stage{max-width:720px;overflow:clip;aspect-ratio:1;isolation:isolate}
.wheel-aura{position:absolute;inset:-4%;z-index:-1;border-radius:50%;background:radial-gradient(circle,#68895f22 42%,#a58b3a12 60%,transparent 72%);pointer-events:none}
.wheel-aura:before,.wheel-aura:after{content:'';position:absolute;inset:3%;border:1px solid #d1b16722;border-radius:50%;transform:rotate(28deg)}
.wheel-aura:after{inset:0 7%;border-style:dashed;border-color:#d1b16715;transform:rotate(-30deg)}
.prize-page .wheel-disc{inset:8%;width:84%;height:84%;z-index:1;border:0;filter:none;overflow:visible;transform-origin:center}
.prize-page .wheel-disc .sector-fill{stroke:#d8b77a;stroke-width:1.3}
.prize-page .wheel-disc .sector-name{font:800 13px Arial,sans-serif;letter-spacing:1px;fill:#fff0ce;paint-order:stroke;stroke:#10201b66;stroke-width:1.3}
.prize-page .wheel-disc .sector-gem{fill:#f8e8ad;stroke:none;opacity:.7}
.prize-page .wheel-disc[data-density="micro"] .sector-fill{stroke:#0d1915;stroke-width:.75;stroke-linejoin:round}
.prize-page .wheel-disc[data-density="micro"] .wheel-sector.is-winner .sector-fill{stroke:#fff1ac;stroke-width:1.6;filter:brightness(1.65)}
.wheel-trim{position:absolute;inset:0;z-index:2;width:100%;height:100%;pointer-events:none;filter:drop-shadow(0 14px 22px #0009)}
.rim-socket{fill:#19241e;stroke:#bd9954;stroke-width:1}
.rim-light{fill:#f9e4a3;filter:drop-shadow(0 0 3px #ffc750)}
.light-phase-0{--light-delay:0s}.light-phase-1{--light-delay:.16s}.light-phase-2{--light-delay:.32s}.light-phase-3{--light-delay:.48s}
.rim-rivet{fill:#e8cb87;stroke:#7b582b;stroke-width:1}
.prize-page .wheel-pointer{top:1.7%;width:8.4%;height:13.2%;font-size:initial;z-index:5;text-shadow:none;filter:drop-shadow(0 5px 4px #000b);transform:translateX(-50%);transform-origin:50% 15%}
.wheel-pointer svg{width:100%;height:100%;display:block;overflow:visible}
.prize-page .wheel-center{width:23%;z-index:4;padding:0;border:3px solid #d8b370;background:radial-gradient(at 36% 22%,#485342,#1f2b24 53%,#0b1713 80%);box-shadow:0 0 0 4px #15201b,0 0 0 6px #7f693d,0 10px 19px #000c,inset 0 0 0 5px #b9a0641a;pointer-events:auto;color:#f1efd9;cursor:pointer}
.prize-page .wheel-center:before{content:'';position:absolute;inset:9%;border:1px dashed #c1b16c70;border-radius:50%;pointer-events:none}
.prize-page .wheel-center:after{content:'';position:absolute;inset:3px;border:1px solid #e9da9b55;border-radius:50%;pointer-events:none}
.prize-page .wheel-center small{font-size:8px;letter-spacing:2px;color:#c5c394;margin-top:2px}
.prize-page .wheel-center strong{font-size:clamp(20px,2.3vw,31px);letter-spacing:1px;line-height:1.2}
.prize-page .wheel-center[data-action="other"] strong{font-size:clamp(12px,1.6vw,23px)}
.prize-page .wheel-center .hub-stars{color:#dcc182;font-size:13px;letter-spacing:5px;line-height:1.5}
.prize-page .wheel-center:disabled{opacity:1;cursor:wait}
#hub-emblem{display:block;width:25%;height:auto;line-height:0;filter:drop-shadow(0 0 9px #bcf18965)}
#hub-emblem .reward-crest{width:100%;height:auto;color:#ddedb0}
.reward-crest{display:block;width:74px;height:74px;color:#f3d299;filter:drop-shadow(0 4px 5px #0006);overflow:visible}
.reward-crest path{stroke:currentColor!important;stroke-width:2!important;stroke-linejoin:round;stroke-linecap:round;fill:none}
.reward-crest .crest-body{fill:currentColor;fill-opacity:.13}
.tier-tone-0{color:#ffd5a5}.tier-tone-1{color:#e3f4ff}.tier-tone-2{color:#ffe9a2}.tier-tone-3{color:#b4fff1}.tier-tone-4{color:#ead8ff}.tier-tone-5{color:#d8f2bc}
.sector-label .reward-crest{color:inherit;filter:drop-shadow(0 2px 2px #0006)}
.sector-label .reward-crest path{stroke-width:2.4!important}
.wheel-sector.is-winner .sector-fill{stroke:#fff6b0;stroke-width:4;filter:brightness(1.45)}
.wheel-sparks{position:absolute;inset:0;pointer-events:none;z-index:3;color:#f5d580}
.wheel-sparks i{position:absolute;font-size:23px;font-style:normal;text-shadow:0 0 15px #fbc45e90;animation:vault-glint 5s ease-in-out infinite}
.wheel-sparks i:nth-child(1){left:2%;top:27%;font-size:28px}
.wheel-sparks i:nth-child(2){right:3%;top:15%;animation-delay:-1s}
.wheel-sparks i:nth-child(3){right:0;bottom:25%;color:#a8e5cf;animation-delay:-3s}
.wheel-sparks i:nth-child(4){left:6%;bottom:14%;font-size:15px;animation-delay:-2s}
.vault-plinth{position:relative;z-index:4;width:57%;margin:-2% auto 0;padding:10px 12px;border:1px solid #bca061;background:linear-gradient(100deg,#17201a,#3a3d2b,#17201a);box-shadow:0 4px 0 #070e0b,0 5px 0 #695834;color:#dfcca1;text-align:center;font-size:9px;letter-spacing:2px;clip-path:polygon(3% 0,97% 0,100% 50%,97% 100%,3% 100%,0 50%)}
.vault-plinth span{margin:0 8px;color:#c2df9f}
.prize-page .wheel-caption{font-size:11px;color:#8f9b89;line-height:1.75;margin:18px 0 0}
.wheel-legend{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-width:620px;margin:24px auto 0;text-align:left}
.wheel-legend-item{position:relative;display:flex;align-items:center;gap:8px;min-width:0;padding:10px 9px;border:1px solid #bda16b26;border-radius:7px;background:#17211bd9;font-size:11px;font-weight:600;line-height:1.4;overflow-wrap:anywhere}
.wheel-legend-item>span:last-of-type{flex:1;min-width:0;color:#e2e6d8}
.wheel-legend-swatch{width:5px;align-self:stretch;flex-shrink:0;border-radius:3px;background:var(--slice-color);box-shadow:0 0 9px color-mix(in srgb,var(--slice-color) 22%,transparent)}
.wheel-legend-item .reward-crest{width:25px;height:25px;flex-shrink:0;filter:none;color:var(--slice-color)}
.wheel-legend-item.tier-tone-0{--slice-color:#bd8158}.wheel-legend-item.tier-tone-1{--slice-color:#a8baca}.wheel-legend-item.tier-tone-2{--slice-color:#e8c46b}.wheel-legend-item.tier-tone-3{--slice-color:#63bba9}.wheel-legend-item.tier-tone-4{--slice-color:#b48bdf}.wheel-legend-item.tier-tone-5{--slice-color:#6b9557}
.wheel-legend-item.is-selected{border-color:#e4d398;background:#35412a;box-shadow:0 0 18px #e4d39815}
.wheel-legend-chosen{position:absolute;right:7px;top:-7px;padding:1px 4px;border-radius:3px;background:#dcea9f;color:#22311c;font-size:7px;letter-spacing:1px}
.prize-page .wheel-selection{min-height:1.5em;margin:15px 0 0;text-align:center;color:#9eaa91;font-size:12px;line-height:1.5;overflow-wrap:anywhere}
.prize-page .wheel-selection.has-selection{color:#ecedb8;font-weight:700}
.is-spinning .rim-light{animation:vault-chase .65s linear infinite;animation-delay:var(--light-delay)}
.is-spinning .wheel-pointer{animation:vault-tick .15s ease-in-out infinite alternate}
.has-result .rim-light{fill:#e4ff9b;filter:drop-shadow(0 0 5px #b7ff3e)}
.prize-page .prize-result{border-color:#ddc480;background:linear-gradient(90deg,#a18a3020,transparent);border-radius:0 10px 10px 0;padding:15px 20px;max-width:435px}
.prize-page .prize-result .eyebrow{color:#dbca97;font-size:10px}
.prize-page .prize-result h2{font-size:25px}
.prize-page .prize-result p:not(.eyebrow){font-size:13px;color:#c0c8b5}
.prize-page .tier-heading{margin:28px 0 20px;align-items:center}
.prize-page .tier-heading .eyebrow{font-size:9px;color:#baaa7b;margin:0 0 9px}
.prize-page .tier-heading h2{font-size:27px;margin:0}
.prize-page .tier-heading>p{margin:0;max-width:300px;text-align:right;color:#98a391}
.prize-page .tier-card{background:linear-gradient(150deg,#222a22,#141b16);border-color:#6c65463f;border-radius:10px;transition:border-color .2s,transform .2s}
.prize-page .tier-card:hover{border-color:#ae995e;transform:translateY(-3px)}
.prize-page .tier-card.is-awarded{border-color:#e5d88e;box-shadow:0 0 25px #dcca4b1a}
.prize-page .tier-art{height:145px;overflow:hidden}
.prize-page .tier-art:before{border-color:currentColor;opacity:.18;width:83px;height:83px;border-radius:17px}
.prize-page .tier-art:after{border-color:currentColor;opacity:.08;width:122px;height:122px}
.prize-page .tier-art .reward-crest{width:62px;height:62px;position:relative;z-index:1;color:inherit;filter:drop-shadow(0 0 15px #ba965a35)}
.tier-0 .tier-art{color:#e3ad7e}.tier-1 .tier-art{color:#d9eaf6}.tier-2 .tier-art{color:#f8d77e}.tier-3 .tier-art{color:#96ebcf}.tier-4 .tier-art{color:#d7c1ff}.tier-retry .tier-art{color:#c9e8a6}
.prize-page .tier-body{padding:15px 13px}
.prize-page .tier-body h3{font-size:13px}.prize-page .tier-body p{font-size:11px}
@keyframes vault-glint{0%,100%{opacity:.35;transform:scale(.85)}50%{opacity:1;transform:scale(1.08)}}
@keyframes vault-chase{0%,100%{opacity:.3}50%{opacity:1;fill:#e6ffa4;filter:drop-shadow(0 0 7px #cdfd69)}}
@keyframes vault-tick{from{transform:translateX(-50%) rotate(-3deg)}to{transform:translateX(-50%) rotate(3deg)}}
@media(min-width:1500px){.prize-page .prize-hero{gap:65px}}
@media(max-width:480px){.wheel-legend{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:20px}.wheel-legend-item{font-size:10px;padding:9px 7px;gap:6px}.wheel-legend-item .reward-crest{width:22px;height:22px}.prize-page .wheel-selection{font-size:11px}}
@media(max-width:1100px){.prize-page .prize-hero{gap:20px;grid-template-columns:.86fr 1.14fr}.prize-page .prize-copy h1{font-size:44px}.prize-page .prize-copy .lead{font-size:15px}.prize-page .wheel-center strong{font-size:22px}.vault-plinth{font-size:8px;letter-spacing:1px}.vault-plinth span{margin:0 4px}.prize-page .tier-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.prize-page .prize-hero{display:flex;flex-direction:column;gap:20px;padding-top:32px}.prize-page .prize-copy{padding:0}.prize-page .prize-copy h1{font-size:42px;letter-spacing:-1.4px}.prize-page .prize-copy .lead{max-width:100%;margin-bottom:15px}.loot-stats{margin:16px 0;gap:10px;font-size:10px}.loot-stats b{font-size:15px}.prize-page #spin-button{min-width:0;margin-top:15px}.prize-page .odds-note{margin:15px 0 0;font-size:11px;max-width:none}.prize-page .wheel-stage{max-width:520px}.vault-title{font-size:8px;letter-spacing:3px;margin-bottom:7px}.prize-page .wheel-center strong{font-size:clamp(15px,4.5vw,23px)}.prize-page .wheel-center small{font-size:6px;letter-spacing:1px}.prize-page .wheel-center .hub-stars{font-size:9px;letter-spacing:2px}.prize-page .wheel-center{border-width:2px}.prize-page .wheel-center:before{border-style:solid;opacity:.4}.vault-plinth{width:66%;font-size:7px;padding:7px 5px;letter-spacing:1px}.prize-page .wheel-caption{font-size:10px;margin-top:15px}.prize-page .tier-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.prize-page .tier-heading{align-items:start;gap:12px}.prize-page .tier-heading>p{text-align:left;font-size:11px}.prize-page .tier-heading h2{font-size:24px}.wheel-sparks i{font-size:16px!important}}
@media(prefers-reduced-motion:reduce){.prize-page *,.prize-page *:before,.prize-page *:after{animation:none!important;transition:none!important}.prize-page .wheel-disc{will-change:auto}}
