/* The result screen owns its layout; decorative motion stays behind its content. */
.main.recap-main{overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}
.recap-page{position:relative;isolation:isolate;min-height:100%;width:100%;overflow:hidden;padding:26px 34px 30px;background:radial-gradient(ellipse at 15% 22%,#0e394052,transparent 52%),radial-gradient(ellipse at 93% 75%,#4d256c38,transparent 53%),#060b14}.recap-shell{position:relative;z-index:1;max-width:1090px;margin:auto}.recap-top{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:28px}.recap-wordmark{font-size:19px;font-weight:900;letter-spacing:-.6px;color:#f6fbff;line-height:1.2}.recap-wordmark span{display:block;margin-top:6px;font-size:9px;font-weight:650;letter-spacing:2px;color:#7b9db4}.recap-top .icon-button{flex-shrink:0}.recap-layout{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);gap:42px;align-items:center}.recap-story{min-width:0}.recap-kicker{display:flex;align-items:center;gap:8px;font-size:8px;letter-spacing:1.8px;line-height:1.7;color:#9bdfe7;font-weight:750}.recap-kicker i,.recap-film figcaption i{display:inline-block;width:5px;height:5px;border-radius:50%;background:#75eceb;box-shadow:0 0 14px #75eceb77;flex-shrink:0}.recap-story h1{font-size:clamp(34px,4vw,54px);line-height:1.08;margin:17px 0 17px;letter-spacing:-1.7px;font-weight:900}.recap-story h1 em{display:inline-block;color:#9beff1;font-style:normal}.recap-deck{font-size:12px;line-height:1.7;color:#a2b7cb;max-width:400px}.recap-film{margin:26px 0 0;border:1px solid #35546a;border-radius:15px;background:#08101a;overflow:hidden;box-shadow:0 25px 65px #0004}.recap-film img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain}.recap-film figcaption{display:flex;align-items:center;gap:8px;padding:15px 17px;border-top:1px solid #243e50;background:#0d1925;color:#9cb9d0;font-size:9px;font-weight:700;letter-spacing:1.7px;line-height:1.6}.recap-record{min-width:0;padding:27px;border:1px solid #365268;border-radius:20px;background:linear-gradient(145deg,#14283cdd,#0a1220ef 60%,#18152aef);box-shadow:0 30px 90px #0005,inset 0 1px #98deed1a}.recap-score-label{display:flex;align-items:center;justify-content:space-between;gap:12px;line-height:1.6}.recap-score-label>span{font-size:8px;letter-spacing:2px;font-weight:700;color:#94b4ca}.recap-score-label>b{font-size:8px;letter-spacing:.9px;padding:6px 8px;border:1px solid #54778080;border-radius:6px;color:#a7f1eb;text-align:right}.recap-score{display:flex;align-items:baseline;gap:13px;margin:12px 0 19px;color:#f6fbff;min-width:0}.recap-score strong{font-size:clamp(46px,5.5vw,78px);line-height:1.1;font-weight:900;letter-spacing:-2px;font-variant-numeric:tabular-nums;white-space:nowrap}.recap-score>span{font-size:10px;font-weight:750;letter-spacing:2px;color:#80dbe5}.recap-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;border-top:1px solid #36516680;padding-top:19px}.recap-stats>div{min-width:0}.recap-stats strong{display:block;font-size:27px;line-height:1.2;color:#dfedf8;letter-spacing:-.8px}.recap-stats small{font-size:12px;color:#8dafc6;margin-left:3px;font-weight:600}.recap-stats span{display:block;margin-top:9px;font-size:8px;letter-spacing:1px;line-height:1.5;color:#8da7be;font-weight:700;white-space:normal}.recap-pips{display:flex;gap:8px;margin:19px 0 21px}.recap-pips i{display:grid;place-items:center;width:24px;height:24px;border-radius:7px;background:#142036;border:1px solid #37445c;color:#4d617c}.recap-pips i.locked{color:#a6f6ed;background:#20505a;border-color:#7ee3e799;box-shadow:0 0 15px #6ce5ed0b}.recap-best{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:19px;font-size:8px;letter-spacing:.6px;line-height:1.6;color:#8ca4be}.recap-best span b{color:#b9cde0;margin-left:6px;font-size:8px;letter-spacing:0}.recap-best>strong{font-size:8px;font-weight:750;color:#a4dfdf}.recap-track{height:3px;width:100%;border-radius:3px;background:#293449;margin-top:1px;overflow:hidden}.recap-track i{display:block;width:var(--record-fill);height:100%;background:linear-gradient(90deg,#73e2e8,#ab96ed);border-radius:inherit;transform-origin:left}.recap-reward{display:flex;align-items:center;gap:12px;padding:15px 0 18px;border-top:1px solid #36516680}.recap-reward>.omo-coin{width:33px;height:33px;flex-shrink:0}.recap-reward>div{min-width:0}.recap-reward strong{display:block;color:#f4d68d;font-size:13px;font-weight:800;line-height:1.5}.recap-reward span{display:block;margin-top:5px;color:#879db3;font-size:9px;line-height:1.5}.recap-actions{display:grid;gap:10px}.recap-actions .button{display:flex;align-items:center;justify-content:space-between;gap:15px;width:100%;min-width:0;min-height:47px;padding:13px 17px;font-size:11px;letter-spacing:.1px;text-align:left}.recap-actions .button span{min-width:0;line-height:1.4;white-space:normal}.recap-actions .button svg{flex-shrink:0;width:17px;height:17px}.recap-home{display:flex;align-items:center;justify-content:center;width:100%;gap:10px;margin-top:19px;font-size:8px;letter-spacing:.7px;line-height:1.6;color:#98b6c9}.recap-atmosphere{position:absolute;z-index:0;inset:0;pointer-events:none;overflow:hidden}.recap-atmosphere i{position:absolute;width:3px;height:3px;border-radius:50%;background:#8bcbd6;opacity:.15;left:calc(8% + var(--i)*12%);top:calc(6% + var(--i)*9%);box-shadow:0 0 20px #77e9ef55;animation:recap-drift 7s ease-in-out infinite;animation-delay:calc(var(--i)*-.6s)}.reveal-ready .recap-record{animation:recap-enter .65s cubic-bezier(.2,.8,.2,1) both}.reveal-ready .recap-track i{animation:recap-fill 1.15s cubic-bezier(.2,.8,.2,1) both}.reveal-ready .recap-pips .locked{animation:recap-lock .8s ease both}@keyframes recap-enter{from{opacity:0;transform:translateY(13px)}to{opacity:1;transform:none}}@keyframes recap-fill{from{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes recap-lock{from{opacity:.25;box-shadow:0 0 0 #6ce5ed00}to{opacity:1;box-shadow:0 0 15px #6ce5ed0b}}@keyframes recap-drift{50%{transform:translate3d(8px,-12px,0);opacity:.4}}
@media(min-width:761px) and (min-height:760px){.recap-page{display:flex;align-items:center}.recap-shell{width:100%}}
@media(max-width:760px){.recap-page{padding:21px 20px 25px;overflow:visible}.recap-top{margin-bottom:22px}.recap-wordmark{font-size:17px}.recap-wordmark span{font-size:8px;letter-spacing:1.7px}.recap-top .icon-button{width:35px;height:35px}.recap-layout{grid-template-columns:minmax(0,1fr);gap:21px}.recap-kicker{font-size:8px;letter-spacing:1.5px}.recap-story h1{font-size:32px;letter-spacing:-1px;margin:11px 0 10px;line-height:1.08}.recap-deck{font-size:12px;line-height:1.6}.recap-film{margin-top:16px;border-radius:12px}.recap-film figcaption{padding:10px 12px;font-size:8px;letter-spacing:1.3px}.recap-record{padding:23px 21px;border-radius:16px}.recap-score-label>span{font-size:9px;letter-spacing:1.6px}.recap-score-label>b{font-size:8px;letter-spacing:.5px;padding:5px 7px}.recap-score{margin:12px 0 17px}.recap-score strong{font-size:60px;letter-spacing:-1.8px}.recap-score>span{font-size:8px;letter-spacing:1.5px}.recap-stats{gap:10px;padding-top:16px}.recap-stats strong{font-size:25px}.recap-stats small{font-size:11px}.recap-stats span{font-size:8px;letter-spacing:.8px;margin-top:7px}.recap-pips{margin:16px 0 18px;gap:8px}.recap-pips i{width:23px;height:23px}.recap-best{font-size:8px;margin-bottom:16px}.recap-best span b{font-size:8px}.recap-reward{padding:13px 0 16px;gap:11px}.recap-reward strong{font-size:12px}.recap-reward span{font-size:10px}.recap-actions{gap:9px}.recap-actions .button{min-height:46px;font-size:12px;padding:12px 15px}.recap-home{font-size:9px;margin-top:17px}}
@media(max-width:370px){.recap-page{padding:18px 16px 23px}.recap-top{margin-bottom:18px}.recap-story h1{font-size:28px}.recap-deck{font-size:9px}.recap-record{padding:21px 18px}.recap-score strong{font-size:clamp(41px,16vw,54px);letter-spacing:-1.4px}.recap-score{gap:9px}.recap-score-label>b{font-size:8px;letter-spacing:.4px}.recap-stats strong{font-size:23px}.recap-stats span{font-size:8px;letter-spacing:.5px}.recap-best{font-size:8px}.recap-best span b{font-size:9px}.recap-best>strong{font-size:8px}.recap-reward strong{font-size:11px}.recap-actions .button{font-size:11px}}
@media(prefers-reduced-motion:reduce){.recap-page *{animation:none!important;transition:none!important}}
html[data-motion="reduced"] .recap-page *{animation:none!important;transition:none!important}
