/* The guide belongs to the walking character, not to the screen furniture. */
#apolloHost{position:absolute;z-index:35;width:0;height:0;color:#edf4ff;font-family:Lato,sans-serif;pointer-events:none}
#apolloHost[hidden]{display:none!important}
#apolloHost button{cursor:pointer;font:inherit;min-height:44px;pointer-events:auto}
#apolloHost .ah-portrait{position:absolute;left:-24px;top:-46px;width:48px;height:72px;border:0;background:transparent!important;box-shadow:none;padding:0;border-radius:16px}
#apolloHost .ah-portrait:focus-visible{outline:2px solid #dcecff}
#apolloHost .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
#apolloHost .ah-copy{position:absolute;bottom:68px;width:250px;box-sizing:border-box;padding:10px 14px;background:#14263bf5;border:1px solid #7590ad;border-radius:16px;box-shadow:0 6px 20px #0004;pointer-events:auto}
#apolloHost .ah-copy:after{content:'';position:absolute;left:var(--tail-x,50%);bottom:-7px;width:12px;height:12px;background:#14263b;border-right:1px solid #7590ad;border-bottom:1px solid #7590ad;transform:translateX(-50%) rotate(45deg)}
#apolloHost .ah-top{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:#b4cde8;height:24px}
#apolloHost .ah-hide{color:#cbdcf0;background:none;border:0;font-size:22px;width:44px;margin-right:-12px}
#apolloHost p{font-size:15px;line-height:1.35;margin:6px 0 10px}
#apolloHost .ah-go{width:100%;border:0;border-radius:9px;padding:8px;background:#dcecff;color:#102238;font-weight:800;font-size:15px}
#apolloHost .ah-explore{display:block;width:100%;border:0;background:none;color:#b4cde8;font-size:12px;min-height:30px;margin-top:2px}
#apolloHost.ah-small .ah-copy{display:none}
.apollo-host-open #v2TrailNext,.apollo-host-open #v2TrailBell,.apollo-host-open #tapOpenBtn{display:none!important}
@media(max-height:550px){#apolloHost .ah-copy{bottom:55px;width:260px;padding:6px 12px}#apolloHost p{font-size:13px;margin:4px 0}#apolloHost .ah-explore{display:none}}

#wwQaHint .ah-corridor-hint{display:flex;flex-direction:column;gap:2px;background:#102239f5;border:1px solid #718ba6;border-radius:14px;padding:10px 16px;max-width:560px;margin:auto;font-size:16px;text-shadow:none}
.ah-corridor-hint strong{font-size:12px;color:#b9d5f2;display:block}
#wwQaBox .ah-corridor-hint{font-size:13px;line-height:1.35;margin:6px 0 0;color:#edf4ff}
@media(max-height:520px){#wwQaHint .ah-corridor-hint{font-size:12px;padding:5px 10px}}

#apolloHost .ah-question-continue{width:100%;margin-top:6px;background:transparent;border:1px solid #7590ad;color:#edf4ff;border-radius:9px;padding:6px;font-size:13px}
#apolloHost .ah-question-continue[hidden]{display:none}
.ah-stage-video{z-index:180}
.ah-stage-video .wwi-panel{max-height:90dvh;overflow:auto}
.ah-stage-video video{max-height:55dvh;background:#050d19;border-radius:12px}
.ah-stage-video .wwi-button:disabled{opacity:.55;cursor:default}

#apolloIntroHost{position:absolute;z-index:38;width:min(310px,calc(100vw - 24px));box-sizing:border-box;padding:16px 18px;border-radius:18px;border:1px solid #a4bdd7;background:linear-gradient(145deg,#20374d,#0b1828);box-shadow:0 10px 35px #0007;color:#edf5ff;font-family:Lato,system-ui,sans-serif}
#apolloIntroHost[hidden]{display:none!important}
#apolloIntroHost:after{content:'';position:absolute;bottom:-7px;left:50%;width:12px;height:12px;transform:rotate(45deg);background:#0b1828;border-right:1px solid #a4bdd7;border-bottom:1px solid #a4bdd7}
#apolloIntroHost strong{font-size:12px;letter-spacing:.03em;color:#bcd6f0}
#apolloIntroHost p{font-size:16px;line-height:1.4;margin:10px 0 14px}
#apolloIntroHost button{min-height:44px;width:100%;padding:10px;border:0;border-radius:10px;background:linear-gradient(#f8fcff,#bad1eb);color:#102238;font:800 15px Lato,system-ui;cursor:pointer}
#wwQaBox .ah-choice-instruction{font:800 17px/1.4 Lato,system-ui;color:#d7ebff;margin:10px 0 0}
@media(max-height:520px){#apolloIntroHost{width:300px;padding:10px 14px}#apolloIntroHost p{font-size:14px;margin:6px 0 8px}#wwQaBox .ah-choice-instruction{font-size:14px}}

#wwQaBox.ah-choices-ready .wwq-ans{border-color:#b9dcff;box-shadow:0 0 12px #a0d4ff66;animation:ah-choice-glow 1.8s ease-in-out infinite alternate}
@keyframes ah-choice-glow{to{box-shadow:0 0 20px #b9dcff99}}
@media(prefers-reduced-motion:reduce){#wwQaBox.ah-choices-ready .wwq-ans{animation:none}}

/* Keep the first instruction legible, with breathing room below the question. */
#wwQaBox .ah-choice-instruction{font-size:clamp(20px,2.5vw,30px);margin:24px 0 8px;line-height:1.3}
.ah-stage-controls{position:absolute;z-index:45;left:50%;bottom:calc(20px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);width:min(600px,calc(100% - 120px));box-sizing:border-box;padding:14px 18px;border:1px solid #8fa9c2;border-radius:18px;background:#091725f5;color:#edf5ff;text-align:center;font-family:Lato,sans-serif;box-shadow:0 8px 28px #0006}
.ah-stage-controls strong{font-size:18px}.ah-stage-controls p{margin:6px 0 10px;font-size:14px;color:#bbcee1}
.ah-stage-controls button{min-height:44px;padding:9px 15px;margin:3px;border:1px solid #a6bdd4;border-radius:10px;background:linear-gradient(#f5faff,#bfd3e6);color:#102136;font:700 14px Lato,sans-serif;cursor:pointer}
.ah-stage-controls button:disabled{opacity:.55;cursor:default}
#hofContinue{display:block;margin:14px auto;min-height:44px;padding:10px 18px;border-radius:10px;cursor:pointer}#hofContinue[hidden]{display:none}#hofContinue:disabled{opacity:.6;cursor:default}
@media(max-width:600px){.ah-stage-controls{width:calc(100% - 16px);left:8px;transform:none;padding:10px;bottom:calc(12px + env(safe-area-inset-bottom,0px))}.ah-stage-controls button{font-size:13px;padding:8px}.ah-stage-controls strong{font-size:16px}}
@media(max-height:520px){#wwQaBox .ah-choice-instruction{font-size:20px;margin-top:14px}.ah-stage-controls p{display:none}}

/* Keep navigation from covering the stage lesson controls on narrow screens. */
@media(max-width:600px){#game:has(.ah-stage-controls) :is(#deskRail,#mobRail,#railMenu,#chatToggle,#v2QHud){visibility:hidden}.ah-stage-controls{z-index:3000}}

/* A deliberate sound gesture is the primary first-play action. */
#game .ah-stage-controls.ah-awaiting-sound{top:50%;bottom:auto;left:50%;transform:translate(-50%,-50%);width:min(720px,calc(100% - 32px));padding:clamp(24px,5vw,48px);box-sizing:border-box;background:#10243bf2;box-shadow:0 24px 90px #0008}
#game .ah-awaiting-sound strong{font-size:clamp(24px,4vw,36px)}
#game .ah-awaiting-sound .ah-play-sound{display:block;width:100%;min-height:clamp(110px,20vh,180px);font-size:clamp(26px,5vw,44px);margin:22px 0;border:2px solid #fff;box-shadow:0 0 36px #90c9ff55;background:linear-gradient(#fff,#cfe6ff);color:#10243b}
#game .ah-awaiting-sound button:disabled{display:none}
/* Compact playback console; the next action replaces progress only when finished. */
.ah-stage-controls{border-radius:4px;text-align:left;padding:12px 16px}
.ah-stage-controls progress{display:block;width:100%;height:6px;margin:10px 0;accent-color:#9de4ff}
.ah-stage-controls .ah-play-sound{min-height:44px;font-size:13px;padding:4px 12px;width:auto}
#game .ah-stage-controls.ah-awaiting-sound{top:auto;bottom:16px;transform:translateX(-50%);padding:16px;border-radius:4px;width:min(520px,calc(100% - 24px))}
#game .ah-stage-controls.ah-awaiting-sound .ah-play-sound{min-height:44px;font-size:16px;width:auto}
@media(max-width:640px){
 #game #wwQaBox h2{font-size:20px;line-height:1.3}
 #game #wwQaBox .ah-choice-instruction{font-size:15px;margin:12px 0 8px}
 #game #wwQaBox .wwq-answers.lite.wwq-wands{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 #game #wwQaBox .wwq-wands.lite .wwq-ans{padding:10px 12px;font-size:14px;border-radius:5px;min-height:44px}
 #game #wwQaBox .wwq-ans b{flex-shrink:0}
 #apolloIntroHost{padding:12px 14px;border-radius:4px}
 #apolloIntroHost p{font-size:14px;line-height:1.4;margin:8px 0}
 #mobileAlphaNotice>div{padding:22px;border-radius:4px}
 #mobileAlphaNotice h2{font-size:22px;margin:12px 0}
 #mobileAlphaNotice p{font-size:15px;line-height:1.45;margin:10px 0}
 #mobileAlphaNotice button{border-radius:4px;padding:12px}
}
#joyWrap.practiced{opacity:0!important;visibility:hidden!important}
#hofProgress{display:block;width:100%;height:6px;accent-color:#9de4ff;margin:16px 0}
#hofProgress[hidden],#hofContinue[hidden]{display:none}
#hofCompleted{font-size:14px;line-height:1.4;color:#bbdfed;margin:12px 0}
@media(max-width:640px) and (orientation:portrait){
 #game.mobile #hofCard{top:calc(70px + env(safe-area-inset-top,0px));transform:translateX(-50%);max-height:calc(100dvh - 100px);border-radius:4px}
 #game.mobile #hofCard .hof-body{padding:14px 18px}
 #game.mobile #hofCard .hof-name{font-size:19px}
 #game.mobile #hofCard .hof-walk{display:none}
}
#game.mobile #joyWrap:not(.teach){visibility:hidden}
#game.mobile #joyWrap.teach:not(.practiced){visibility:visible}
