/* Full-viewport, original CSS choreography. Card photo and text come from the saved receipt. */
#enhance-reveal{--reveal-color:#f2cc6c;--reveal-rgb:242,204,108;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;border-radius:0;background:#10282ff5;color:#fff6dc;overflow:auto;overscroll-behavior:contain;box-shadow:none}
#enhance-reveal::backdrop{background:#071b25e8;backdrop-filter:blur(7px)}#enhance-reveal[data-outcome=fail]{--reveal-color:#a6cee5;--reveal-rgb:166,206,229;background:#122937f7}#enhance-reveal[data-outcome=destroy]{--reveal-color:#ff826c;--reveal-rgb:255,130,108;background:#2a171df7}#enhance-reveal[data-outcome=guard]{--reveal-color:#8ae1c7;--reveal-rgb:138,225,199;background:#102c2df7}
.reveal-scene{position:relative;isolation:isolate;min-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;padding:32px 18px max(22px,env(safe-area-inset-bottom));text-align:center;background:radial-gradient(ellipse at 50% 41%,rgba(var(--reveal-rgb),.16),transparent 60%)}.reveal-kicker{position:relative;z-index:2;font:11px Georgia,serif;letter-spacing:.35em;color:var(--reveal-color);margin:0 0 12px}.reveal-member{font-size:18px;line-height:1.6;margin:0 0 18px;color:#f7f1df;position:relative;z-index:3}.reveal-card{position:relative;z-index:3;width:180px;height:240px;margin:0 0 24px;perspective:700px;isolation:isolate}.reveal-card>img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 20%;border:3px solid var(--reveal-color);border-radius:7px;box-shadow:0 0 0 5px rgba(var(--reveal-rgb),.13),0 18px 55px #0007,0 0 45px rgba(var(--reveal-rgb),.3)}.reveal-card:after{content:'';position:absolute;inset:-14px;border:1px solid rgba(var(--reveal-rgb),.4);border-radius:12px;pointer-events:none}
.reveal-seal{position:absolute;inset:-25px -22px;z-index:5;border:3px solid var(--reveal-color);clip-path:polygon(0 0,100% 0,100% 65%,50% 100%,0 65%);opacity:0;filter:drop-shadow(0 0 15px var(--reveal-color))}.reveal-fracture{position:absolute;inset:0;z-index:5;opacity:0;background:linear-gradient(127deg,transparent 45%,var(--reveal-color) 46% 47%,transparent 48%),linear-gradient(42deg,transparent 54%,var(--reveal-color) 55% 56%,transparent 57%),linear-gradient(92deg,transparent 48%,var(--reveal-color) 49% 50%,transparent 51%);filter:drop-shadow(0 0 8px var(--reveal-color))}.reveal-shards{position:absolute;inset:0;opacity:0;pointer-events:none}.reveal-shards img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 20%;filter:grayscale(.7);border:2px solid var(--reveal-color)}.reveal-shards img:nth-child(1){clip-path:polygon(0 0,52% 0,42% 56%,0 40%);--sx:-85px;--sy:-40px;--sr:-28deg}.reveal-shards img:nth-child(2){clip-path:polygon(52% 0,100% 0,100% 56%,42% 56%);--sx:90px;--sy:-30px;--sr:25deg}.reveal-shards img:nth-child(3){clip-path:polygon(0 40%,42% 56%,57% 100%,0 100%);--sx:-70px;--sy:65px;--sr:-22deg}.reveal-shards img:nth-child(4){clip-path:polygon(42% 56%,100% 56%,100% 100%,57% 100%);--sx:85px;--sy:80px;--sr:32deg}
.reveal-rays{position:absolute;z-index:0;top:40%;left:50%;width:min(140vmax,1500px);aspect-ratio:1;transform:translate(-50%,-50%);background:repeating-conic-gradient(from 0deg,rgba(var(--reveal-rgb),0) 0 12deg,rgba(var(--reveal-rgb),.08) 14deg 17deg,rgba(var(--reveal-rgb),0) 20deg 30deg);mask-image:radial-gradient(circle,#000 4%,transparent 65%);opacity:0;pointer-events:none}.reveal-wave{position:absolute;z-index:1;width:200px;height:200px;border:3px solid var(--reveal-color);border-radius:50%;top:40%;left:50%;transform:translate(-50%,-50%);opacity:0;box-shadow:0 0 35px rgba(var(--reveal-rgb),.3);pointer-events:none}.reveal-motes{position:absolute;inset:0;z-index:2;pointer-events:none}.reveal-motes i{position:absolute;left:50%;top:43%;width:8px;height:28px;background:var(--reveal-color);box-shadow:0 0 16px var(--reveal-color);opacity:0}.reveal-motes i:nth-child(1){--mx:-34vw;--my:-28vh;--mr:-40deg}.reveal-motes i:nth-child(2){--mx:35vw;--my:-25vh;--mr:40deg}.reveal-motes i:nth-child(3){--mx:-42vw;--my:0vh;--mr:90deg}.reveal-motes i:nth-child(4){--mx:41vw;--my:6vh;--mr:100deg}.reveal-motes i:nth-child(5){--mx:-30vw;--my:26vh;--mr:145deg}.reveal-motes i:nth-child(6){--mx:32vw;--my:24vh;--mr:220deg}.reveal-motes i:nth-child(7){--mx:-10vw;--my:-39vh;--mr:280deg}.reveal-motes i:nth-child(8){--mx:10vw;--my:35vh;--mr:320deg}
#enhance-reveal h2{position:relative;z-index:4;color:var(--reveal-color);font-size:clamp(36px,5vw,64px);line-height:1.2;letter-spacing:-.045em;margin:0 0 12px;text-shadow:0 0 35px rgba(var(--reveal-rgb),.25)}#reveal-level{position:relative;z-index:4;font-size:22px;line-height:1.5;color:#fffae9}#reveal-note{position:relative;z-index:4;font-size:14px;line-height:1.8;color:#d8dccc;margin:10px 0 22px}#reveal-close{position:relative;z-index:5;color:var(--reveal-color);border:1px solid rgba(var(--reveal-rgb),.5);background:rgba(var(--reveal-rgb),.05);min-height:48px;padding:10px 25px;font-size:12px;border-radius:3px}#reveal-close:hover{background:rgba(var(--reveal-rgb),.12)}
#enhance-reveal.is-playing[data-outcome=success] .reveal-rays{animation:reveal-light 2s ease-out both}#enhance-reveal.is-playing[data-outcome=success] .reveal-card{animation:reveal-ascend 1.5s cubic-bezier(.18,.8,.22,1) both}#enhance-reveal.is-playing[data-outcome=success] .reveal-wave{animation:reveal-burst 1.4s ease-out both}#enhance-reveal.is-playing[data-outcome=success] .reveal-motes i{animation:reveal-particles 1.6s ease-out both}#enhance-reveal.is-playing h2{animation:reveal-stamp .7s .2s ease-out both}
#enhance-reveal.is-playing[data-outcome=fail] .reveal-card{animation:reveal-reject .75s ease-out both}#enhance-reveal.is-playing[data-outcome=fail] .reveal-seal{animation:reveal-block 1.3s ease-out both}#enhance-reveal.is-playing[data-outcome=fail] .reveal-wave{animation:reveal-cold 1.4s ease-out both}
#enhance-reveal.is-playing[data-outcome=destroy] .reveal-fracture{animation:reveal-crack 1.8s ease-out both}#enhance-reveal.is-playing[data-outcome=destroy] .reveal-card>img{animation:reveal-remain 2s ease-out both}#enhance-reveal.is-playing[data-outcome=destroy] .reveal-shards{animation:reveal-fragments 1.8s ease-out both}#enhance-reveal.is-playing[data-outcome=destroy] .reveal-shards img{animation:reveal-shard 1.8s ease-out both}#enhance-reveal.is-playing[data-outcome=destroy] .reveal-wave{animation:reveal-burst .95s ease-out both}#enhance-reveal.is-playing[data-outcome=destroy] .reveal-motes i{animation:reveal-particles 1.15s ease-out both}#enhance-reveal.is-playing[data-outcome=destroy] .reveal-rays{animation:reveal-light 1.2s ease-out both}
#enhance-reveal.is-playing[data-outcome=guard] .reveal-seal{animation:reveal-protect 1.6s ease-out both}#enhance-reveal.is-playing[data-outcome=guard] .reveal-wave{animation:reveal-cold 1.5s ease-out both}#enhance-reveal.is-playing[data-outcome=guard] .reveal-card{animation:reveal-reject .45s ease-out both}
@keyframes reveal-light{0%{opacity:0;transform:translate(-50%,-50%) rotate(-16deg) scale(.65)}30%{opacity:1}100%{opacity:.5;transform:translate(-50%,-50%) rotate(15deg) scale(1.1)}}
@keyframes reveal-ascend{0%{opacity:.3;transform:translateY(40px) rotateX(22deg) scale(.78)}28%{opacity:1;transform:translateY(-13px) rotateX(0) scale(1.06);filter:brightness(1.65)}100%{transform:none;filter:none}}
@keyframes reveal-burst{0%{opacity:0;transform:translate(-50%,-50%) scale(.4)}24%{opacity:.9}100%{opacity:0;transform:translate(-50%,-50%) scale(6)}}
@keyframes reveal-particles{0%{opacity:0;transform:scale(.1)}20%{opacity:1}100%{opacity:0;transform:translate(var(--mx),var(--my)) rotate(var(--mr)) scale(.3)}}
@keyframes reveal-stamp{0%{opacity:0;transform:translateY(15px) scale(1.22)}60%{opacity:1;transform:scale(.97)}100%{opacity:1;transform:none}}
@keyframes reveal-reject{0%,100%{transform:none}15%{transform:translateX(-16px) rotate(-6deg)}30%{transform:translateX(13px) rotate(5deg)}45%{transform:translateX(-9px) rotate(-4deg)}65%{transform:translateX(5px)}}
@keyframes reveal-block{0%{opacity:0;transform:scale(1.12)}25%{opacity:.9;transform:scale(.98)}100%{opacity:0;transform:scale(1.15)}}
@keyframes reveal-cold{0%{opacity:0;transform:translate(-50%,-50%) scale(1.8)}22%{opacity:.8;transform:translate(-50%,-50%) scale(1.1)}100%{opacity:0;transform:translate(-50%,-50%) scale(2.5)}}
@keyframes reveal-crack{0%{opacity:0}15%,35%{opacity:1}100%{opacity:0}}
@keyframes reveal-remain{0%,12%{opacity:1;filter:brightness(1.5)}25%,65%{opacity:.08;filter:grayscale(1)}100%{opacity:1;filter:grayscale(.6)}}
@keyframes reveal-fragments{0%,12%{opacity:0}20%,55%{opacity:1}100%{opacity:0}}
@keyframes reveal-shard{0%,12%{transform:none}100%{transform:translate(var(--sx),var(--sy)) rotate(var(--sr)) scale(.7)}}
@keyframes reveal-protect{0%{opacity:0;transform:scale(.6)}25%,65%{opacity:1;transform:scale(1.05)}100%{opacity:0;transform:scale(1.2)}}
@media(max-width:600px){.reveal-card{width:150px;height:200px;margin-bottom:24px}.reveal-member{font-size:16px;margin-bottom:18px}#reveal-level{font-size:19px}#reveal-note{font-size:12px}.reveal-shards img{width:100%;height:100%}}
@media(max-height:580px){.reveal-scene{padding:16px}.reveal-card{width:84px;height:112px;margin:0 0 14px}.reveal-kicker{font-size:9px;margin-bottom:5px}.reveal-member{font-size:13px;margin-bottom:10px}#enhance-reveal h2{font-size:30px;margin-bottom:5px}#reveal-level{font-size:16px}#reveal-note{font-size:11px;margin:4px 0 9px}#reveal-close{min-height:44px;padding:7px 15px;font-size:11px}}
@media(prefers-reduced-motion:reduce){#enhance-reveal.is-playing *{animation:none!important}.reveal-rays{opacity:.4}.reveal-seal{opacity:.5}#enhance-reveal[data-outcome=destroy] .reveal-card>img{filter:grayscale(.6)}}
