.realm-intro{position:fixed;inset:0;z-index:22;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;pointer-events:none;background:linear-gradient(#06151cc2,transparent 35%,#06151c55);color:#f4dfb8;animation:realm-arrive 1.3s ease both}
.realm-intro:before,.realm-intro:after{content:"";position:absolute;inset:0 0 auto;height:11vh;background:#06131a;transform:scaleY(calc(1 - var(--intro,0)));transform-origin:top}
.realm-intro:after{inset:auto 0 0;transform-origin:bottom}
.realm-intro h2{font:clamp(30px,5vw,65px)/1.1 Georgia,serif;letter-spacing:-1px;margin:18px 24px 12px;text-shadow:0 4px 30px #05131c}
.realm-intro p{font:11px 'Segoe UI',sans-serif;color:#d8dfd6;letter-spacing:2px;margin:0 20px}.realm-intro .eyebrow{font-size:10px;letter-spacing:5px}.intro-rule{width:65px;height:1px;background:linear-gradient(90deg,transparent,#edd3a2,transparent);margin-bottom:25px}
.realm-intro button{pointer-events:auto;margin-top:38px;font-size:9px;letter-spacing:2px;color:#bbcabf}.realm-intro button span{opacity:.5;font-size:8px;margin-left:12px}
@keyframes realm-arrive{0%{opacity:0}18%,76%{opacity:1}100%{opacity:0}}
body[data-mode=intro] .hud,body[data-mode=launching] .hud{opacity:.35;pointer-events:none}
body[data-mode=ending] #play-overlay{opacity:0;pointer-events:none;transition:opacity .25s}body[data-mode=ending] .run-hud{opacity:.6}
.momentum-track{width:108px;height:3px;background:#c9d9c924;margin:10px auto 5px;overflow:hidden;border-radius:2px}.momentum-track i{display:block;width:0;height:100%;background:linear-gradient(90deg,#7fabaa,#e1f4e2);transition:width .12s linear}
.streak small{display:block;font:8px 'Segoe UI',sans-serif;letter-spacing:1.5px;color:#b9dbd1}.streak.surging small{color:#ffe0a4}.streak.surging .momentum-track i{background:linear-gradient(90deg,#97dfe7,#ffe1a6);box-shadow:0 0 12px #ffe7aa}
.upgrade-effect{display:block;grid-column:1/-1;font:10px 'Segoe UI',sans-serif;color:#efd3a3;letter-spacing:.3px;margin:0 0 11px}.result-forge-goal{font-size:11px;color:#d7c296}
@media(max-width:600px){.realm-intro h2{max-width:330px}.realm-intro p{font-size:9px;letter-spacing:1px}.momentum-track{width:78px}.streak small{font-size:7px;letter-spacing:.8px}}
@media(prefers-reduced-motion:reduce){.realm-intro{animation:none}.realm-intro:before,.realm-intro:after{display:none}.momentum-track i{transition:none}}
