/* R12 reference artwork. This file only styles an accessory win, not the prize logic. */
.reference-win-hero,.photo-redemption{display:none}
.accessory-result[data-state="score_menu"]{--reward-u:min(1vw,.63vh)}
.accessory-result[data-state="score_menu"] .result-screen{top:12%;bottom:2%}
.accessory-result[data-state="score_menu"] .result-card{width:calc(var(--reward-u)*92);gap:calc(var(--reward-u)*.8);justify-content:center}
.accessory-result[data-state="score_menu"] .result-art{width:100%;height:calc(var(--reward-u)*32);flex:0 0 auto;overflow:visible}
.accessory-result .result-art>.celebration-orb,.accessory-result .result-art>.accessory-hero{display:none!important}
.accessory-result .reference-win-hero{display:block;position:absolute;inset:0;width:100%;height:100%;min-height:0;object-fit:contain;animation:rewardHeroIn .65s cubic-bezier(.16,.85,.2,1) both}
.accessory-result[data-state="score_menu"] #resultTitle{font-size:calc(var(--reward-u)*7.3);line-height:1.05;letter-spacing:-.06em;white-space:nowrap}
.accessory-result #resultDelta:empty{display:none}
.accessory-result[data-state="score_menu"] .score-summary{align-self:center;flex-direction:row;align-items:center;justify-content:center;gap:calc(var(--reward-u)*1.8);margin:calc(var(--reward-u)*.5) 0;padding:calc(var(--reward-u)*.6) calc(var(--reward-u)*3);border:0;border-radius:calc(var(--reward-u)*5);background:#fff0f3}
.accessory-result[data-state="score_menu"] .score-summary small{font-size:calc(var(--reward-u)*2.5);color:#822438;letter-spacing:.08em}
.accessory-result[data-state="score_menu"] .score-summary strong{font-size:calc(var(--reward-u)*5.2);line-height:1;color:#ed1a3d}
.accessory-result .you-won{font-size:calc(var(--reward-u)*3.2);font-weight:800;color:#666;margin:0 0 calc(var(--reward-u)*.7)}
.accessory-result .reward-heading{min-height:calc(var(--reward-u)*21);display:grid;grid-template-columns:35% 65%;gap:0;padding:calc(var(--reward-u)*1) calc(var(--reward-u)*3);background:linear-gradient(105deg,#fff5f7,#ffedf2);border-radius:calc(var(--reward-u)*3.5);text-align:left}
.accessory-result .reward-heading>span{width:100%;height:calc(var(--reward-u)*20)}
.accessory-result #rewardTier{display:none}
.accessory-result #rewardTitle{display:flex;flex-direction:column;gap:calc(var(--reward-u)*.25);letter-spacing:-.06em;font-weight:900}
.voucher-value{color:#ed1a3d;font-size:calc(var(--reward-u)*9);line-height:.95}
.voucher-product{color:#090d19;font-size:calc(var(--reward-u)*6.3);line-height:1}
.accessory-result #rewardTerms{font-size:calc(var(--reward-u)*3.5);line-height:1.2;color:#555;margin-top:calc(var(--reward-u)*.7)}
.accessory-result .photo-redemption{display:grid;grid-template-columns:35% 65%;align-items:center;position:relative;margin-top:calc(var(--reward-u)*2);min-height:calc(var(--reward-u)*34);border:calc(var(--reward-u)*.25) solid #d51c3c;border-radius:calc(var(--reward-u)*3.5);background:linear-gradient(115deg,#fff5f8,#fff 75%);overflow:hidden;text-align:left}
.redemption-phone{display:block;width:100%;height:calc(var(--reward-u)*34);object-fit:contain;align-self:end}
.photo-redemption-copy{padding:calc(var(--reward-u)*2) calc(var(--reward-u)*2.5) calc(var(--reward-u)*2) 0}
.photo-redemption-copy h2{display:flex;align-items:flex-start;gap:calc(var(--reward-u)*1.1);font-size:calc(var(--reward-u)*4.6);line-height:1.03;letter-spacing:-.04em;color:#080d18}
.photo-redemption-copy h2 b{color:#ed1a3d}
.camera-bubble{display:block;position:relative;flex:0 0 calc(var(--reward-u)*7.2);height:calc(var(--reward-u)*7.2);border-radius:50%;background:#ed1a3d;color:white;padding:calc(var(--reward-u)*1.35)}
.camera-bubble:after{content:'';position:absolute;left:6%;bottom:-5%;width:25%;height:28%;background:#ed1a3d;clip-path:polygon(0 0,100% 0,0 100%)}
.photo-redemption-copy>p{margin:calc(var(--reward-u)*2) 0 0 calc(var(--reward-u)*8.3);font-size:calc(var(--reward-u)*2.9);line-height:1.25;color:#151721}
.photo-redemption-copy .photo-thanks{border-top:1px solid #edccd3;padding-top:calc(var(--reward-u)*1.4);margin-top:calc(var(--reward-u)*1.4);font-size:calc(var(--reward-u)*2.75)}
.accessory-result #rewardInstructions,.accessory-result #rewardCard>.thank-you{display:none}
.accessory-result[data-state="score_menu"] .replay-button{align-self:center;width:96%;height:calc(var(--reward-u)*12);margin-top:calc(var(--reward-u)*1.5);border-radius:calc(var(--reward-u)*8);font-size:calc(var(--reward-u)*5.8);border:calc(var(--reward-u)*.4) solid #ff91a6;background:linear-gradient(#ff284c 0%,#ed0029 45%,#d80025 100%);box-shadow:inset 0 calc(var(--reward-u)*.55) calc(var(--reward-u)*.7) #ffffff55,0 calc(var(--reward-u)*.8) 0 #ab001c,0 calc(var(--reward-u)*1.2) calc(var(--reward-u)*1.7) #43051126}
.accessory-result[data-state="score_menu"] .reset-note{font-size:calc(var(--reward-u)*2.8);margin-top:calc(var(--reward-u)*1.1)}
.accessory-result[data-state="score_menu"] .preview-note{font-size:calc(var(--reward-u)*2.2);margin:0}
@keyframes rewardHeroIn{from{opacity:0;transform:translateY(6%) scale(.84)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(prefers-reduced-motion:reduce){.reference-win-hero{animation:none!important}}
/* R13: lightweight loop, confined to the celebration artwork. */
.reward-hero-motion{display:none;position:absolute;inset:0;pointer-events:none;overflow:hidden;isolation:isolate}
.accessory-result[data-state="score_menu"] .reward-hero-motion{display:block}
.accessory-result .reference-win-hero{animation:rewardHeroFloat 3.4s ease-in-out infinite}
.reward-hero-shine{position:absolute;left:50%;top:51%;height:64%;aspect-ratio:1;border-radius:50%;transform:translate(-50%,-50%);overflow:hidden;mix-blend-mode:screen}
.reward-hero-shine:after{content:'';position:absolute;inset:-35%;background:linear-gradient(115deg,transparent 38%,#fff0 43%,#ffffff85 50%,#fff0 57%,transparent 62%);animation:rewardHeroShine 4.8s ease-in-out infinite}
.reward-hero-particle{position:absolute;left:var(--x);top:var(--y);width:calc(var(--reward-u)*var(--size));height:calc(var(--reward-u)*var(--size));opacity:0;background:#ed1a3d;animation:rewardHeroSpark var(--duration) var(--delay) ease-in-out infinite}
.reward-hero-particle.spark{background:linear-gradient(135deg,#ffd4dc,#ed1a3d);clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%)}
.reward-hero-particle.ribbon{height:calc(var(--reward-u)*var(--size)*2.1);border-radius:45% 10% 45% 10%;background:linear-gradient(100deg,#9c0023,#ff5174 45%,#ed1a3d 65%,#ffd4dc);animation-name:rewardHeroRibbon}
@keyframes rewardHeroFloat{0%,100%{transform:translateY(0) rotate(-1deg) scale(.94)}50%{transform:translateY(-1%) rotate(1deg) scale(.97)}}
@keyframes rewardHeroShine{0%,12%{transform:translateX(-90%);opacity:0}24%{opacity:.6}46%{transform:translateX(90%);opacity:0}100%{transform:translateX(90%);opacity:0}}
@keyframes rewardHeroSpark{0%,100%{opacity:0;transform:translateY(8px) scale(.35) rotate(0deg)}40%,60%{opacity:.85;transform:translateY(-5px) scale(1) rotate(70deg)}}
@keyframes rewardHeroRibbon{0%{opacity:0;transform:translateY(-12px) rotate(-30deg) scale(.6)}25%,65%{opacity:.85}100%{opacity:0;transform:translateY(22px) rotate(100deg) scale(.95)}}
@media(prefers-reduced-motion:reduce){.accessory-result .reference-win-hero{animation:none!important;transform:scale(.96)}.reward-hero-shine,.reward-hero-particle{display:none!important}}
