/* Illustrated choice and outcome system */
.game-card{position:relative;background:#f7f1df;border:1px solid #ffe8a933;box-shadow:0 24px 80px #0007,0 2px 0 #fff8 inset}
.scene-art{height:220px;background-color:#183c31;background-size:cover;background-position:center;border-block:1px solid #182b2544;isolation:isolate}
.art-shade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 42%,#071c17e8 100%);z-index:1}
.art-caption{z-index:2;bottom:15px;left:20px;text-shadow:0 2px 8px #000;font-size:10px}
.choice-with-art{position:relative;min-height:70px;padding:6px 12px 6px 6px;overflow:hidden;box-shadow:0 3px 0 #1b3c3020}
.choice-art{width:82px;height:58px;flex:0 0 82px;border-radius:4px;background-repeat:no-repeat;background-color:#173a2f;box-shadow:0 0 0 1px #173a2f44 inset;transition:transform .2s ease,filter .2s ease}
.choice-with-art:hover .choice-art{transform:scale(1.06);filter:saturate(1.2)}
.choice-copy{line-height:1.35}
.choice-with-art .choice-index{position:absolute;left:11px;top:11px;background:#f8f1dfed;color:#173a2f;border:0;box-shadow:0 1px 6px #0004;font-weight:900}
.picked{display:grid;gap:4px;border-left:5px solid #dfaa42;background:#eadfbe;padding:10px 13px;margin:-5px 0 16px}
.picked small{font-size:8px;letter-spacing:1.5px;font-weight:900;color:#6b6b5e}
.picked strong{font-size:13px;line-height:1.45}
.outcome-stamp{position:absolute;z-index:3;right:18px;top:17px;padding:8px 12px;border:3px solid currentColor;background:#f7f1dfe8;font-family:'Barlow Condensed',Impact,'Noto Sans JP',sans-serif;font-size:21px;letter-spacing:1px;transform:rotate(5deg);box-shadow:0 3px 12px #0004}
.outcome-stamp.success{color:#176044}.outcome-stamp.failure{color:#b63022;transform:rotate(-6deg)}
.outcome-success .scene-art{box-shadow:inset 0 0 0 6px #dfaa42}.outcome-failure .scene-art{filter:saturate(.65) contrast(1.1)}
.outcome-failure .art-shade{background:linear-gradient(180deg,#6c0d0930 0,#2b0909e8 100%)}
.outcome-success .art-shade{background:linear-gradient(180deg,#f5bf3620 25%,#082b20d9 100%)}
.outcome-success .balance strong{color:#16724b}
.career{margin:18px 0;padding-top:15px;border-top:1px solid #cdd0bf}
.career-label{margin:0 0 9px;font-size:8px;font-weight:900;letter-spacing:1.5px;color:#6b6b5e}
.career-track{display:flex;align-items:stretch;gap:5px;overflow-x:auto;padding:2px 1px 7px;scrollbar-width:thin}
.career-track>i{align-self:center;font-style:normal;color:#b4944e;font-size:12px}
.career-step{min-width:92px;max-width:125px;display:flex;flex-direction:column;gap:4px;padding:7px 8px;background:#e9e1c9;border-radius:4px;border-top:3px solid #25815c}
.career-step.failure{border-color:#b63022}.career-step.jackpot{border-color:#e1a817;background:#fff0a8}
.career-step small{font:900 8px 'Barlow Condensed',Impact,sans-serif;color:#80765e;letter-spacing:1px}
.career-step span{font-size:9px;line-height:1.35;font-weight:700}
.career-final{border:0;margin-top:10px}
.success-secret{margin-top:13px;padding:15px;background:#173a2f;color:#fff7db;border:2px solid #e6b23e;box-shadow:4px 4px 0 #e6b23e;transform:rotate(-1deg)}
.success-secret small{display:block;font-size:9px;letter-spacing:1px;color:#f5d779;font-weight:900}
.success-secret strong{display:block;margin-top:4px;font-size:24px;line-height:1.2;color:#fff;font-weight:900}
body.is-resolving .game-card{animation:decision-shake .32s ease both;pointer-events:none}
body.is-resolving .scene-art{filter:brightness(.45) contrast(1.25)}
body[data-scene-type=special]{background:radial-gradient(circle at 50% 30%,#ad7a13 0,#173f32 42%,#071c17 100%);animation:premium-bg 1.1s ease-in-out infinite alternate}
body[data-scene-type=special] .hero{filter:drop-shadow(0 0 24px #ffcc42aa)}
body[data-scene-type=special] .game-card{transform:rotate(-1deg) scale(1.02);border:4px solid #ffd659;box-shadow:0 0 0 6px #fff3b944,0 0 70px #ffd13eaa,0 28px 100px #0008;animation:premium-card .8s cubic-bezier(.2,1.4,.4,1) both}
body[data-scene-type=special] .scene-art{height:285px;background-size:cover;box-shadow:inset 0 0 45px #ffde4b}
body[data-scene-type=special] .special-label{display:inline-block;background:#183c31;color:#ffd85b;padding:7px 10px;border-radius:3px;letter-spacing:2px;animation:premium-label .55s ease-in-out infinite alternate}
body[data-scene-type=special] .balance{background:linear-gradient(90deg,#c68c19,#fff0a6,#c68c19);margin-inline:-24px;padding-inline:24px;border:0;color:#173a2f;box-shadow:0 0 28px #ffcf42}
body[data-scene-type=special] .balance strong{font-size:55px;text-shadow:0 2px #fff}
.jackpot-fx{position:fixed;inset:0;z-index:50;overflow:hidden;pointer-events:none;animation:fx-life 4.2s ease forwards}
.jackpot-rays{position:absolute;inset:-60vmax;background:repeating-conic-gradient(from 0deg,#ffd84c00 0 8deg,#ffd84c66 9deg 14deg,#fff5b900 15deg 22deg);animation:rays-spin 8s linear infinite}
.jackpot-word{position:absolute;left:50%;top:43%;transform:translate(-50%,-50%) rotate(-5deg);font-family:'Barlow Condensed',Impact,sans-serif;font-size:clamp(78px,15vw,210px);line-height:.8;color:#fff5b9;-webkit-text-stroke:clamp(2px,.45vw,7px) #7d4c00;text-shadow:0 5px 0 #e88b0b,0 10px 0 #8e3207,0 0 35px #fff,0 0 90px #ffbf00;animation:jackpot-slam 1.2s cubic-bezier(.12,1.55,.3,1) both}
.confetti{position:absolute;left:var(--x);top:-8vh;width:10px;height:22px;background:hsl(var(--h),90%,60%);box-shadow:0 0 8px #fff;animation:confetti-fall 2.5s var(--d) ease-in infinite;transform:rotate(calc(var(--i)*29deg))}
@keyframes decision-shake{0%{transform:rotate(1deg) translateX(0)}25%{transform:rotate(1deg) translateX(-5px)}50%{transform:rotate(1deg) translateX(5px)}100%{transform:rotate(1deg) translateX(0) scale(.985)}}
@keyframes premium-bg{to{filter:brightness(1.18)}}
@keyframes premium-card{from{opacity:.3;transform:rotate(5deg) scale(.55)}to{opacity:1;transform:rotate(-1deg) scale(1.02)}}
@keyframes premium-label{to{box-shadow:0 0 18px #ffc83c;transform:scale(1.03)}}
@keyframes jackpot-slam{0%{opacity:0;transform:translate(-50%,-50%) rotate(-18deg) scale(4)}55%{opacity:1;transform:translate(-50%,-50%) rotate(-3deg) scale(.86)}75%{transform:translate(-50%,-50%) rotate(-6deg) scale(1.12)}100%{transform:translate(-50%,-50%) rotate(-5deg) scale(1)}}
@keyframes confetti-fall{to{top:110vh;transform:translateX(50px) rotate(900deg)}}
@keyframes rays-spin{to{transform:rotate(360deg)}}
@keyframes fx-life{0%,82%{opacity:1;visibility:visible}100%{opacity:0;visibility:hidden}}
@media(max-width:800px){.scene-art{height:190px}.choice-with-art{min-height:66px}.choice-art{width:75px;height:54px;flex-basis:75px}body[data-scene-type=special] .scene-art{height:220px}.jackpot-word{top:38%}}
@media(prefers-reduced-motion:reduce){.jackpot-fx{animation:fx-life .01s 1.2s forwards}.jackpot-rays,.confetti{display:none}}
