/* Sensory accents stay at the edges and on the action being confirmed. */
.sound-toggle{appearance:none;display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 11px;border:1px solid #b9d6dc50;border-radius:4px;color:#e5f0e8;background:#0d2029d9;font:700 9px/1 var(--mono,monospace);letter-spacing:.08em;cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s,transform .15s}
.sound-toggle:hover{border-color:#ffd08099;background:#253e46}.sound-toggle:focus-visible{outline:2px solid #ffdc9c;outline-offset:3px}.sound-toggle:active{transform:translateY(1px)}.sound-toggle[aria-pressed=false]{color:#8ea4ac}.topbar .brand{margin-right:auto}.topbar #helpBtn{margin-right:2px}
.scene-wrap::after{content:'';position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 70px 0 rgba(var(--feedback-rgb,100,234,174),0);z-index:4}
@keyframes mine-launch{0%{box-shadow:inset 0 -10px 20px -10px rgba(var(--feedback-rgb),0)}18%{box-shadow:inset 0 -16px var(--feedback-reach,75px) -15px rgba(var(--feedback-rgb),calc(.24 * var(--feedback-strength,1)))}100%{box-shadow:inset 0 -8px 100px -15px rgba(var(--feedback-rgb),0)}}
@keyframes mine-arrival{0%{box-shadow:inset 0 0 0 0 rgba(var(--feedback-rgb),0)}12%{box-shadow:inset 0 0 0 4px rgba(var(--feedback-rgb),calc(.40 * var(--feedback-strength,1))),inset 0 0 var(--feedback-reach,75px) -10px rgba(var(--feedback-rgb),calc(.20 * var(--feedback-strength,1)))}37%{box-shadow:inset 0 0 0 1px rgba(var(--feedback-rgb),.07)}59%{box-shadow:inset 0 0 0 2px rgba(var(--feedback-rgb),calc(.22 * var(--feedback-strength,1))),inset 0 0 var(--feedback-reach,75px) -8px rgba(var(--feedback-rgb),calc(.10 * var(--feedback-strength,1)))}100%{box-shadow:inset 0 0 0 0 rgba(var(--feedback-rgb),0)}}
@keyframes mine-finish{0%{box-shadow:inset 0 0 0 0 rgba(var(--feedback-rgb),0)}4%{box-shadow:inset 0 0 0 5px rgba(var(--feedback-rgb),.42),inset 0 0 125px -20px rgba(var(--feedback-rgb),.32)}12%{box-shadow:inset 0 0 0 2px rgba(var(--feedback-rgb),.14),inset 0 0 90px -15px rgba(var(--feedback-rgb),.12)}20%{box-shadow:inset 0 0 0 3px rgba(var(--feedback-rgb),.29),inset 0 0 150px -20px rgba(var(--feedback-rgb),.24)}100%{box-shadow:inset 0 0 0 0 rgba(var(--feedback-rgb),0)}}
@keyframes control-press{0%{filter:brightness(1)}35%{filter:brightness(1.12)}100%{filter:brightness(1)}}
@keyframes control-error{0%,100%{border-color:#ff937640}35%{border-color:#ff9376cc}}
@keyframes mineral-pop{0%{transform:translateY(5px) scale(.88);opacity:.3}38%{transform:translateY(-2px) scale(1.07);opacity:1}70%{transform:translateY(0) scale(.99)}100%{transform:translateY(0) scale(1);opacity:1}}
@keyframes reward-label{0%{transform:translateY(4px);opacity:0}100%{transform:translateY(0);opacity:1}}
@keyframes depth-resonate{0%,100%{box-shadow:0 6px 28px #0003}28%{box-shadow:0 6px 28px #0003,0 0 24px rgba(var(--feedback-rgb),.23);border-top-color:rgb(var(--feedback-rgb))}}
@keyframes answer-preview{0%{transform:translateY(5px);opacity:.3}100%{transform:translateY(0);opacity:1}}
@keyframes answer-latch{0%{filter:brightness(1);box-shadow:0 0 0 0 rgba(var(--feedback-rgb),0)}35%{filter:brightness(1.18);box-shadow:0 0 0 3px rgba(var(--feedback-rgb),.22)}100%{filter:brightness(1);box-shadow:0 0 0 8px rgba(var(--feedback-rgb),0)}}
html.feedback-launch .scene-wrap::after{animation:mine-launch 1s ease-out}
html.feedback-arrival .scene-wrap::after{animation:mine-arrival 1.1s ease-out}
html.feedback-finish .scene-wrap::after{animation:mine-finish 3.4s ease-out}
html.feedback-tap .game-frame{animation:control-press .24s ease-out}
html.feedback-error .game-frame{animation:control-error .48s ease-out}
html.feedback-preview .autocorrect-note,html.feedback-preview #answerForm.is-corrected{--feedback-rgb:194,207,212;--feedback-strength:.65;--feedback-reach:58px}
html.feedback-preview .autocorrect-note{animation:answer-preview .22s cubic-bezier(.2,.8,.2,1)}
html.feedback-preview #answerForm.is-corrected{animation:answer-latch .42s ease-out}
html.feedback-confirm #submitAnswer{animation:answer-latch .42s ease-out}
html.feedback-arrival .result-gain strong{display:inline-block;transform-origin:right center;animation:mineral-pop .52s cubic-bezier(.2,.7,.3,1)}
html.feedback-arrival .result-answer .pill{animation:reward-label .3s ease-out both}
html.feedback-arrival #depthHud,html.feedback-seam #depthHud{animation:depth-resonate 1.05s ease-out}
html.feedback-finish .finish-total{animation:mineral-pop .7s cubic-bezier(.2,.7,.3,1)}
html.feedback-finish .finish-head h2{animation:reward-label .6s .12s ease-out both}
html.feedback-question .question-copy{animation:reward-label .24s ease-out}
@media(prefers-reduced-motion:reduce){.sound-toggle{transition:none}.scene-wrap::after{display:none}html[class*="feedback-"] .game-frame,html[class*="feedback-"] .autocorrect-note,html[class*="feedback-"] #answerForm,html[class*="feedback-"] #submitAnswer,html[class*="feedback-"] .result-gain strong,html[class*="feedback-"] .result-answer .pill,html[class*="feedback-"] #depthHud,html[class*="feedback-"] .finish-total,html[class*="feedback-"] .finish-head h2,html[class*="feedback-"] .question-copy{animation:none}}
