
/* The result is rendered as live UI so scores remain selectable and buttons accessible. */
.result{text-align:center;padding:12px 23px 12px;background:repeating-conic-gradient(from -8deg at 50% 35%,#ffdb6259 0deg 6deg,transparent 6deg 20deg,#08d7e321 20deg 25deg,transparent 25deg 40deg),var(--cream);overflow:hidden}
.result-logo{width:65%;height:auto;max-height:113px;object-fit:contain;margin:-2px auto 0;display:block}
.clear-tag{display:table;margin:0 auto;background:var(--navy);color:white;font-size:17px;line-height:1.5;font-weight:900;padding:4px 22px;border:2px solid var(--navy);border-radius:30px}
.rank-stage{position:relative;height:215px;margin:4px -5px 0;display:flex;justify-content:center;align-items:center;isolation:isolate}
.rank-stage:before{content:"";position:absolute;inset:18px 43px 0;background:radial-gradient(circle,#fffdf0 0 35%,#ffdd3988 36% 49%,transparent 50%);border-radius:50%;z-index:-1}
.rank-caption{position:absolute;top:4px;font-size:15px;font-weight:900;letter-spacing:2px;background:#fff9e8c4;padding:0 9px;border-radius:10px}
.rank-letter{font-family:Arial,Helvetica,sans-serif;font-weight:1000;font-size:205px;letter-spacing:-12px;line-height:1;transform:rotate(-8deg);color:var(--yellow);-webkit-text-stroke:6px var(--navy);paint-order:stroke fill;text-shadow:4px 4px 0 #ff8d29,7px 9px 0 var(--pink),10px 13px 0 var(--navy);position:relative;margin-right:52px;z-index:1}
.rank-A{color:#ffac39}.rank-B{color:var(--cyan)}.rank-C{color:#ff98bb}.rank-D{color:#b697f4}
.result-mascot{position:absolute;width:139px;height:139px;object-fit:contain;right:-10px;bottom:3px;image-rendering:pixelated;z-index:2;transform:rotate(9deg)}
.result-star{position:absolute;font-size:48px;color:var(--yellow);font-style:normal;text-shadow:2px 3px 0 var(--navy)}
.rs1{left:4px;top:48px;transform:rotate(-12deg)}.rs2{right:7px;top:6px;font-size:36px;color:var(--pink)}
.title-ribbon{position:relative;z-index:2;font-size:20px;font-weight:900;line-height:1.45;background:#fffdf4;border:3px solid var(--navy);border-radius:7px;padding:6px 10px;box-shadow:4px 5px 0 var(--pink);transform:rotate(-2deg);margin:0 -2px 17px}
.result-score{text-align:left;background:var(--navy);border:3px solid var(--navy);box-shadow:inset 0 0 0 2px #476190;border-radius:15px;padding:11px 14px 9px;position:relative;overflow:visible}
.result-score>span{display:block;font-size:11px;font-weight:900;color:white;letter-spacing:1px}.result-score>strong{display:block;color:var(--yellow);font-family:Arial,sans-serif;font-size:47px;font-weight:900;letter-spacing:-1.5px;font-variant-numeric:tabular-nums;line-height:1.12}
.best-stamp{position:absolute;right:8px;top:-14px;background:var(--pink);border:2px solid white;box-shadow:2px 3px 0 var(--navy);border-radius:8px;color:white;font-size:13px;padding:5px 7px;transform:rotate(-8deg)}
.result-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin:12px 0 5px}.result-stats>div{background:#fffdf3;border:2px solid var(--navy);border-radius:10px;padding:6px 5px}.result-stats span{display:block;font-size:11px;font-weight:900}.result-stats strong{font:900 30px Arial,sans-serif}.result-stats i{display:block;height:7px;background:#dadde5;border:1px solid var(--navy);border-radius:4px;overflow:hidden}.result-stats i b{display:block;height:100%}.result-meta{font-size:10px;font-weight:700;margin:8px 0 14px}
.result-actions{display:flex;flex-direction:column;gap:12px}.result-actions .action-button{min-height:53px;font-size:20px}.result-actions .text-button{padding:3px}
.revealed .rank-letter{animation:rank-slam .65s cubic-bezier(.18,.8,.35,1.15) .2s both}.revealed .result-mascot{animation:mascot-cheer .7s .6s both}.revealed .result-score{animation:rise-in .4s .65s both}.revealed .title-ribbon{animation:rise-in .4s .5s both}.revealed .result-stats{animation:rise-in .4s 1s both}.revealed .result-actions{animation:rise-in .3s 1.8s both}.revealed .best-stamp{animation:stamp .3s 1.8s both}.skip-reveal *{animation-delay:0s!important;animation-duration:.01s!important}
.share-copy{width:100%;height:145px;font:14px/1.6 var(--font);border:2px solid var(--navy);border-radius:8px;padding:10px;background:white;color:var(--navy);resize:none}
.impact{animation:impact .25s linear}
@keyframes rank-slam{0%{opacity:0;transform:scale(3) rotate(-20deg)}65%{opacity:1;transform:scale(.92) rotate(-8deg)}85%{transform:scale(1.07) rotate(-8deg)}100%{transform:scale(1) rotate(-8deg)}}
@keyframes mascot-cheer{0%{opacity:0;transform:translateY(75px) rotate(-20deg)}70%{opacity:1;transform:translateY(-14px) rotate(14deg)}100%{opacity:1;transform:rotate(9deg)}}
@keyframes rise-in{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
@keyframes stamp{0%{opacity:0;transform:scale(2) rotate(-15deg)}100%{opacity:1;transform:scale(1) rotate(-8deg)}}
@keyframes impact{0%,100%{translate:0}20%{translate:-3px 2px}40%{translate:3px -2px}60%{translate:-2px 1px}80%{translate:1px -1px}}
@media(min-width:521px){.arcade{min-height:0;height:min(850px,calc(100svh - 44px))}.home{overflow-y:auto}.play{min-height:0}.game-window{height:350px;min-height:190px}.result{overflow-y:auto}}
@media(max-width:520px){.result{padding-top:9px;padding-bottom:12px}.result-logo{max-height:105px}.rank-stage{height:207px}}
@media(max-height:760px) and (max-width:520px){.result{padding:7px 23px}.result-logo{max-height:82px}.rank-stage{height:170px}.rank-letter{font-size:164px}.result-mascot{width:116px;height:116px}.title-ribbon{font-size:17px;margin-bottom:14px;padding:4px 8px}.result-score>strong{font-size:39px}.result-score{padding-block:9px 7px}.result-stats strong{font-size:25px}.result-actions{gap:10px}.result-actions .action-button{min-height:45px;font-size:18px}.result-meta{margin-bottom:11px}.clear-tag{font-size:15px}}
@media(prefers-reduced-motion:reduce){.revealed *{animation:none!important}.impact{animation:none!important}}

