/* Five entrances, one familiar animated person. Content never advances on a timer. */
.stage-intro{--intro-accent:#ff914a;--intro-edge:#ad3c14;--intro-ink:#361406;position:relative;isolation:isolate;min-height:calc(100svh - var(--app-header));padding:20px 24px max(20px,env(safe-area-inset-bottom));display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center;cursor:pointer;touch-action:manipulation;overflow-x:clip;background:radial-gradient(ellipse at 50% 45%,#ffffff15,transparent 65%)}
.stage-intro[data-intro-stage="workout"]{--intro-accent:#ffe04b;--intro-edge:#ba8d06;--intro-ink:#322400}
.stage-intro[data-intro-stage="reps"]{--intro-accent:#c6ff40;--intro-edge:#547e11;--intro-ink:#213800}
.stage-intro[data-intro-stage="blast"]{--intro-accent:#ff65c2;--intro-edge:#aa195d;--intro-ink:#420c2c}
.stage-intro[data-intro-stage="cooldown"]{--intro-accent:#57edfa;--intro-edge:#087d91;--intro-ink:#073943}
.stage-intro-kicker{font:900 12px/1.3 'Nunito',sans-serif;letter-spacing:.12em;color:var(--muted)}
.stage-intro h1{margin:0;font:italic 900 clamp(52px,15vw,74px)/.96 var(--brand-font);letter-spacing:-.025em;color:var(--ink);text-wrap:balance;animation:stage-title-arrive .38s cubic-bezier(.16,1,.3,1) both}
.stage-intro h1 em{color:var(--intro-accent)}
.stage-intro-art{position:relative;isolation:isolate;margin:auto 0;animation:stage-title-arrive .48s .06s cubic-bezier(.16,1,.3,1) both}
.stage-intro-art::before{content:'';position:absolute;inset:12% 5% 2%;background:var(--intro-accent);opacity:.16;transform:skewX(-12deg);border-radius:3px;z-index:-1}
.stage-intro-person{width:min(290px,78vw);height:clamp(190px,30svh,270px)}
.stage-intro-person .person-ground{left:22%;right:12%;background:#07163844}
.stage-intro-person .person-breath{left:22%;top:20%;width:62%;height:auto;aspect-ratio:1;border-color:var(--intro-accent)}
.stage-intro[data-intro-stage="blast"] .pose-reps{animation-duration:.9s}
.stage-intro-purpose{margin:0;max-width:28ch;font:800 19px/1.4 'Nunito',sans-serif;color:var(--ink);text-wrap:balance;animation:stage-title-arrive .4s .1s ease-out both}
.stage-intro-actions{width:100%;padding-top:5px;animation:stage-title-arrive .4s .14s ease-out both}
.stage-intro .primary,.electric-theme .stage-intro .primary{width:100%;min-height:60px;border:2px solid #ffffff66;border-radius:4px 16px 4px 16px;background:var(--intro-accent);color:var(--intro-ink);box-shadow:0 5px 0 var(--intro-edge);font:900 23px/1.2 'Nunito',sans-serif;justify-content:space-between;touch-action:manipulation}
.stage-intro .primary:focus-visible{outline:3px solid var(--ink);outline-offset:5px}
.stage-intro-hint{margin:14px 0 0;color:var(--muted);font:700 13px/1.35 'Nunito',sans-serif}
.stage-intro-options{display:flex;justify-content:center;flex-wrap:wrap;column-gap:18px;margin-top:8px}
.stage-intro-options .link{min-height:44px;color:var(--ink);font:700 13px/1.3 'Nunito',sans-serif;background:none;border:0;padding:7px 0;text-decoration:underline}
.stage-intro-options .icon{display:none}
.electric-theme .stage-intro h1,.electric-theme .stage-intro-purpose{color:#fff}
.electric-theme .stage-intro h1 em{color:var(--intro-accent)}
.electric-theme .stage-intro-kicker,.electric-theme .stage-intro-hint{color:#e0ebff}
.electric-theme .stage-intro-options .link{color:#e0ebff}
@keyframes stage-title-arrive{from{opacity:0;transform:translateX(-45px)}to{opacity:1;transform:translateX(0)}}
@media(max-height:700px){.stage-intro{padding-top:14px;gap:12px}.stage-intro h1{font-size:clamp(48px,13vw,60px)}.stage-intro-person{height:185px}.stage-intro-purpose{font-size:17px}.stage-intro-hint{margin-top:12px}}
@media(max-width:360px){.stage-intro{padding-inline:18px}.stage-intro-purpose{font-size:17px}.stage-intro-options{column-gap:12px}}
@media(prefers-reduced-motion:reduce){.stage-intro h1,.stage-intro-art,.stage-intro-purpose,.stage-intro-actions,.stage-intro-person .person-sprite,.stage-intro-person .person-breath{animation:none!important;transform:none}.stage-intro-person .person-breath{opacity:.15}}
