.app-toolbar{justify-content:flex-end;align-items:center;gap:.5rem;margin-bottom:2.5rem;display:flex}.mute-btn{color:#ffffffe0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff14;border:1px solid #ffffff2e;min-width:44px;min-height:44px;padding:.25rem .5rem;font-size:1.1rem;line-height:1}.mute-btn:hover:not(:disabled){color:#fff;background:#ffffff26;border-color:#ffffff59}.start-screen{z-index:1;text-align:center;flex-direction:column;align-items:center;gap:2.5rem;padding:1.5rem 1.5rem 2.5rem;display:flex;position:relative}.game-title{font-family:var(--font-display);letter-spacing:-.01em;background:linear-gradient(135deg,#ffb347 0%,#ff6b9d 45%,#c850c0 75%,#9b59ff 100%);-webkit-text-fill-color:transparent;color:#ffb347;filter:drop-shadow(0 2px 12px #c850c073);-webkit-background-clip:text;background-clip:text;font-size:clamp(2.4rem,9vw,3.6rem);font-weight:900;line-height:1.1;animation:3s ease-in-out infinite titleFloat}@media (prefers-reduced-motion:reduce){.game-title{animation:none}}.game-tagline{color:var(--tagline);font-family:var(--font-display);font-size:1.15rem;font-weight:700}.page-bottom-bar{width:100%;padding-top:2rem;padding-bottom:max(.5rem, env(safe-area-inset-bottom));justify-content:space-between;align-items:center;display:flex}.page-bottom-bar--centered{justify-content:center}.game-screen{flex-direction:column;gap:1.25rem;display:flex}.game-header{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);z-index:10;flex-direction:column;gap:.5rem;padding:1rem;display:flex;position:sticky;top:0}.game-stats{min-height:4.5rem;color:var(--text-muted);align-items:center;font-size:.95rem;display:flex;position:relative}.stat strong{color:var(--text);font-size:1.05rem}.stat--score{pointer-events:none;position:absolute;left:50%;transform:translate(-50%)}.stat--score strong{color:var(--accent);font-size:clamp(2.5rem,11vw,4rem);font-weight:900;line-height:1}.player-hearts-wrapper{align-items:center;gap:.3rem;display:flex}.player-hearts{gap:.15rem;display:flex}.heart{font-size:1.1rem;line-height:1;transition:opacity .2s}.heart--lost{opacity:.25;filter:grayscale()}.heart--danger{filter:drop-shadow(0 0 8px #ff3232e6);animation:.8s ease-in-out infinite urgentPulse}.hp-bar-label--danger{color:var(--red);animation:.8s ease-in-out infinite urgentPulse}.attempts-remaining{justify-content:center;gap:.4rem;display:flex}.attempt-dot{color:var(--accent);font-size:.9rem}.classroom-code-form{flex-direction:column;align-items:stretch;gap:.75rem;width:100%;max-width:320px;display:flex}.classroom-code-label{font-family:var(--font-display);color:var(--tagline);text-align:center;font-size:1rem;font-weight:700}.classroom-code-form .start-btn{margin-top:.5rem}.mode-badge{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--accent);flex-shrink:1;margin-left:auto;font-size:.8rem;overflow:hidden}.end-game-btn{border:1.5px solid var(--border);color:var(--text-muted);width:2.75rem;height:2.75rem;min-height:unset;background:0 0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:1rem;line-height:1;transition:border-color .15s,color .15s,background .15s;display:inline-flex}.end-game-btn:hover:not(:disabled){border-color:var(--red);color:var(--red);background:#ff525214}.end-game-confirm{flex-shrink:0;align-items:center;gap:.3rem;display:flex}.end-confirm-text{color:var(--text-muted);white-space:nowrap;font-size:.75rem}.end-confirm-btn{width:2.75rem;height:2.75rem;min-height:unset;border:1.5px solid var(--border);background:0 0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:.8rem;line-height:1;display:inline-flex}.end-confirm-yes{border-color:var(--red);color:var(--red)}.end-confirm-yes:hover:not(:disabled){background:#ff52521f}.end-confirm-no{color:var(--text-muted)}.end-confirm-no:hover:not(:disabled){border-color:var(--accent);color:var(--text)}.app-toolbar .end-game-btn,.app-toolbar .end-game-confirm{margin-right:auto}@media (width<=360px){.end-confirm-text{display:none}}.idle-warning-overlay{z-index:200;background:#000000a6;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.idle-warning-dialog{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);text-align:center;width:90%;max-width:320px;padding:2rem 2.5rem;box-shadow:0 8px 32px #0006}.idle-warning-msg{margin:0 0 .25rem;font-size:1.4rem;font-weight:700}.idle-warning-countdown{color:var(--accent);margin:.5rem 0;font-size:3.5rem;font-weight:700;line-height:1}.idle-warning-sub{color:var(--text-muted);margin:0 0 1.5rem;font-size:.95rem}.idle-warning-btn{width:100%;padding:.75rem 1.5rem;font-size:1.1rem}.countdown-screen{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:1rem;min-height:60vh;display:flex}.countdown-label{color:var(--text-muted);font-size:1.5rem;font-weight:600}.countdown-number{color:var(--yellow);font-size:8rem;font-weight:800;line-height:1}.round-clear-toast{top:var(--toast-top,30%);font-family:var(--font-display);color:var(--green);white-space:nowrap;pointer-events:none;z-index:98;text-shadow:0 0 16px var(--green);font-size:clamp(.9rem,3.5vw,1.5rem);font-weight:900;position:fixed}.round-clear-toast--left{right:var(--toast-offset,52%);transform-origin:100%;animation:1s ease-out forwards roundClearToastLeft}.round-clear-toast--right{left:var(--toast-offset,52%);transform-origin:0;animation:1s ease-out forwards roundClearToastRight}@keyframes roundClearToastLeft{0%{opacity:0;transform:translate(-15%)rotate(-12deg)scale(.7)}20%{opacity:1;transform:translate(0)rotate(-8deg)scale(1.05)}45%{opacity:1;transform:translate(0)rotate(-8deg)scale(1)}75%{opacity:1;transform:translate(0)rotate(-8deg)scale(1)}to{opacity:0;transform:translate(0)rotate(-8deg)scale(.95)}}@keyframes roundClearToastRight{0%{opacity:0;transform:translate(15%)rotate(12deg)scale(.7)}20%{opacity:1;transform:translate(0)rotate(8deg)scale(1.05)}45%{opacity:1;transform:translate(0)rotate(8deg)scale(1)}75%{opacity:1;transform:translate(0)rotate(8deg)scale(1)}to{opacity:0;transform:translate(0)rotate(8deg)scale(.95)}}@media (prefers-reduced-motion:reduce){.round-clear-toast{animation:none;display:none}.heart--danger,.hp-bar-label--danger{animation:none}}.streak-display{font-family:var(--font-display);color:var(--accent);margin:-1rem 0 0;font-size:1rem;font-weight:800}.error-msg{color:var(--red);text-align:center;border:1px solid var(--red);border-radius:var(--radius);background:#ff525214;padding:.5rem;font-size:.9rem}.repeat-msg-btn{border:1px solid var(--border);color:var(--text-muted);opacity:.6;background:0 0;border-radius:9999px;margin:0 auto;padding:.25rem .75rem;font-size:.8rem;display:block}.repeat-msg-btn:hover:not(:disabled){opacity:1;border-color:var(--accent)}.score-float{color:var(--green);pointer-events:none;z-index:101;text-shadow:0 0 12px var(--green);font-size:1.75rem;font-weight:800;animation:.7s ease-out forwards scoreFloat;position:fixed;top:4.5rem;left:50%;transform:translate(-50%)}.score-float--moneyball{color:var(--yellow);text-shadow:0 0 20px var(--yellow), 0 0 40px var(--yellow);font-size:2.5rem;animation:1s cubic-bezier(.34,1.56,.64,1) forwards scoreFloatMoneyball}.burst-particle{pointer-events:none;z-index:100;font-size:1.5rem;line-height:1;animation:.65s ease-out forwards burstFloat;position:fixed;top:7rem;left:50%}.sound-check-btn{color:#ffffffe0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff14;border:1px solid #ffffff2e;min-width:44px;min-height:44px;padding:.25rem .5rem;font-size:1.1rem;line-height:1;transition:border-color .15s,color .15s,background .15s}.sound-check-btn:hover:not(:disabled){color:#fff;background:#ffffff26;border-color:#ffffff59}.sound-check-btn--ok{border-color:var(--green);color:var(--green)}.sound-check-btn--warn{border-color:var(--red);color:var(--red)}.settings-btn{color:#ffffffe0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:var(--radius);cursor:pointer;background:#ffffff14;border:1px solid #ffffff2e;min-width:44px;min-height:44px;margin-left:auto;padding:.25rem .5rem;font-size:1.1rem;line-height:1}.settings-btn:hover:not(:disabled){background:#ffffff26;border-color:#ffffff59}.enemy-explosion-overlay{pointer-events:none;z-index:50;font-size:clamp(4rem,18vw,7rem);line-height:1;animation:.7s ease-out forwards enemyExplode;position:fixed;top:45%;left:50%}.money-explosion-overlay{pointer-events:none;z-index:51;font-size:clamp(3.5rem,16vw,6rem);line-height:1;animation:.9s ease-out forwards moneyExplode;position:fixed;top:38%;left:50%}@media (width<=768px){.page-bottom-bar{padding-top:1.25rem}}@media (width<=480px){.page-bottom-bar{padding-top:1rem}.app-toolbar{margin-bottom:1rem}}@media (width<=380px){.page-bottom-bar .start-btn--sm{white-space:nowrap;padding:.6rem .9rem;font-size:.88rem}}.hp-bars{flex-direction:column;gap:.5rem;display:flex}.hp-bar-wrapper{grid-template-columns:fit-content(8rem) 1fr;align-items:center;gap:.5rem;display:grid}.hp-bar-label{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;overflow:hidden}.hp-bar-track{background:var(--surface-raised);border-radius:9999px;height:16px;overflow:hidden}.hp-bar-fill{border-radius:9999px;height:100%;transition:width .3s}.hp-bar--enemy{background:linear-gradient(90deg, var(--red), var(--orange))}.hp-bars--shake{animation:.45s ease-out hpShake}.game-main{flex-direction:column;gap:1.5rem;scroll-margin-top:6rem;display:flex}.emoji-display{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);text-align:center;padding:1.5rem 1rem}.enemy-info{color:var(--text-muted);justify-content:center;gap:1rem;margin-bottom:.75rem;font-size:.85rem;display:flex}.emoji-target{-webkit-user-select:none;user-select:none;font-size:clamp(4rem,18vw,7rem);line-height:1.1}.game-character{cursor:default;font-size:4rem;line-height:1;display:inline-block}.emoji-display--with-character{position:relative}.game-character--card-left{line-height:1;position:absolute;top:50%;left:.75rem;transform:translateY(-50%)}.game-character--card-left .game-character{font-size:3rem}.game-character--header{font-size:1.1rem}.game-character--cheer{animation:.55s ease-out cheer}.game-enemy--float{animation:.4s cubic-bezier(.34,1.56,.64,1) bounceIn,2.8s ease-in-out .4s infinite enemyFloat;display:inline-block}@media (width<=400px){.emoji-target{font-size:4.5rem}}.word-input-form{gap:.5rem;width:100%;display:flex}.word-input{background:var(--surface);border:2px solid var(--border);border-radius:var(--radius);min-width:0;color:var(--text);min-height:var(--min-touch);appearance:none;-webkit-tap-highlight-color:transparent;flex:1;padding:.6rem 1rem;font-size:clamp(1rem,4vw,1.3rem);transition:border-color .15s}.word-input:focus{border-color:var(--accent);outline:none}.word-input:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.word-input::placeholder{color:var(--text-muted)}.submit-btn{background:var(--accent);color:#fff;white-space:nowrap;padding:.6rem 1.4rem;font-size:1rem;font-weight:700}.submit-btn:hover:not(:disabled){background:var(--accent-hover)}@media (width<=400px){.submit-btn{padding:.6rem 1rem;font-size:.9rem}}@media (height<=450px) and (orientation:landscape){.word-input{min-height:40px;padding:.4rem .8rem}}.word-target{-webkit-user-select:none;user-select:none;text-transform:capitalize;font-size:clamp(2.5rem,12vw,4.5rem);font-weight:800;line-height:1.1}.choose-input{flex-direction:column;align-items:center;gap:.75rem;display:flex}.choice-buttons{justify-content:center;gap:clamp(.4rem,3vw,1.5rem);display:flex}.choice-btn{border-radius:var(--radius);background:0 0;border:2px solid #0000;justify-content:center;align-items:center;min-width:clamp(70px,26vw,130px);min-height:clamp(70px,26vw,130px);padding:clamp(.75rem,2.5vw,1.25rem);font-size:clamp(2.5rem,8vw,3.5rem);transition:transform .15s cubic-bezier(.34,1.56,.64,1);display:flex}.choice-btn:hover:not(:disabled){transform:scale(1.2)}.choice-btn:active:not(:disabled){transform:scale(1.05)}.choice-btn:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.choice-emoji{line-height:1}.mode-selector{flex-direction:column;align-items:center;gap:2.5rem;width:100%;display:flex}.mode-selector>.start-btn{margin-top:1.5rem}.mode-cards{gap:1.5rem;display:flex}.mode-card{background:var(--surface);border:2px solid var(--border);border-radius:calc(var(--radius) * 1.25);color:var(--text);text-align:center;flex-direction:column;flex:1;align-items:center;gap:.3rem;min-height:140px;padding:1.25rem .75rem;transition:border-color .2s,background .2s,transform .2s cubic-bezier(.34,1.56,.64,1),box-shadow .2s;display:flex}.mode-card:hover:not(:disabled){border-color:var(--accent);background:var(--surface-raised);transform:scale(1.04);box-shadow:0 4px 20px #c850c059}.mode-card:focus-visible{outline:3px solid var(--accent);outline-offset:3px;transform:scale(1.04)}.mode-icon{font-size:2rem}.mode-label{font-family:var(--font-display);font-size:1.15rem;font-weight:800}.mode-desc{color:var(--text-muted);font-size:.82rem;line-height:1.3}@media (width<=480px){.mode-cards{flex-direction:column}.mode-card{text-align:left;flex-direction:row;gap:.75rem;min-height:auto;padding:1rem}.mode-icon{flex-shrink:0;font-size:1.75rem}.mode-selector>.start-btn{margin-top:.5rem}}.length-toggle{background:var(--surface);border:2px solid var(--border);border-radius:9999px;gap:4px;width:fit-content;margin:0 auto;padding:4px;display:flex}.length-toggle__option{font-family:var(--font-display);color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:9999px;flex:1;padding:.55rem 1.1rem;font-size:.88rem;font-weight:700;transition:color .15s,background .2s,box-shadow .2s}.length-toggle__option:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.length-toggle__option--active{color:#fff;background:linear-gradient(135deg,#ff6b9d 0%,#c850c0 55%,#9b59ff 100%);box-shadow:0 2px 10px #c850c073}.length-toggle__option:not(.length-toggle__option--active):hover{color:var(--text)}@media (width<=480px){.length-toggle__option{padding:.55rem .6rem;font-size:.78rem}}.top-mode-selector{flex-direction:column;align-items:center;width:100%;display:flex}.top-mode-cards{gap:1.5rem;width:100%;display:flex}.top-mode-card{background:var(--surface);border:2px solid var(--border);border-radius:calc(var(--radius) * 1.25);color:var(--text);text-align:center;flex-direction:column;flex:1;align-items:center;gap:.3rem;min-height:160px;padding:1.75rem 1rem;transition:border-color .2s,background .2s,transform .2s cubic-bezier(.34,1.56,.64,1),box-shadow .2s;display:flex}.top-mode-card:hover:not(:disabled){border-color:var(--accent);background:var(--surface-raised);transform:scale(1.04);box-shadow:0 4px 20px #c850c059}.top-mode-card:focus-visible{outline:3px solid var(--accent);outline-offset:3px;transform:scale(1.04)}.top-mode-card--adventure{background:linear-gradient(145deg, var(--surface) 60%, #c850c00f)}.top-mode-card--adventure:hover:not(:disabled){box-shadow:0 4px 28px #c850c080}.top-mode-icon{font-size:2.5rem}.top-mode-label{font-family:var(--font-display);font-size:1.25rem;font-weight:800}.top-mode-desc{color:var(--text-muted);font-size:.82rem;line-height:1.3}@media (width<=480px){.top-mode-cards{flex-direction:column}.top-mode-card{text-align:left;flex-direction:row;gap:.75rem;min-height:auto;padding:1rem}.top-mode-icon{flex-shrink:0;font-size:2rem}}.feedback-message{background:var(--surface);border-left:4px solid var(--border);border-radius:0 var(--radius) var(--radius) 0;padding:.75rem 1rem;animation:.2s ease-out feedbackSlideIn}.feedback--correct,.feedback--defeated{border-color:var(--green)}.feedback--wrong{border-color:var(--red)}.feedback--timeout{border-color:var(--orange)}.feedback--hit{border-color:var(--red)}.feedback-text{font-size:1rem}.feedback-missed-word{color:var(--text-muted);margin-top:.2rem;font-size:.9rem}.timer{align-items:center;gap:.75rem;display:flex}.timer-track{background:var(--surface-raised);border-radius:9999px;flex:1;height:8px;overflow:hidden}.timer-fill{background:var(--accent);border-radius:9999px;height:100%;transition:width .1s linear,background .3s}.timer--urgent .timer-fill{background:var(--orange);animation:.45s ease-in-out infinite urgentPulse}.timer-label{color:var(--text-muted);text-align:right;min-width:36px;font-size:.9rem}.timer--urgent .timer-label{color:var(--orange);font-weight:700;animation:.45s ease-in-out infinite urgentPulse}.game-over{text-align:center;flex-direction:column;align-items:center;gap:1.25rem;padding:3rem 1rem;display:flex}.game-over-title{font-family:var(--font-display);letter-spacing:-.01em;background:linear-gradient(135deg,#ff5252 0%,#ff1744 50%,#d500f9 100%);-webkit-text-fill-color:transparent;color:var(--red);filter:drop-shadow(0 2px 12px #ff174473);-webkit-background-clip:text;background-clip:text;font-size:clamp(2.4rem,9vw,3.6rem);font-weight:900;line-height:1.1}.game-won-title{background:linear-gradient(135deg,#ffb347 0%,#ff6b9d 45%,#c850c0 75%,#9b59ff 100%);-webkit-text-fill-color:transparent;color:var(--yellow);filter:drop-shadow(0 2px 16px #c850c08c);-webkit-background-clip:text;background-clip:text;animation:.5s cubic-bezier(.34,1.56,.64,1) both winPop}@media (prefers-reduced-motion:reduce){.game-won-title{animation:none}}.game-over-score-hero{flex-direction:column;align-items:center;gap:.2rem;display:flex}.game-over-score-label{font-family:var(--font-display);letter-spacing:.18em;text-transform:uppercase;color:var(--text-muted);font-size:.72rem;font-weight:800}.game-over-score-value{font-family:var(--font-display);color:var(--accent);filter:drop-shadow(0 2px 16px #7c4dff73);font-size:clamp(4rem,20vw,6.5rem);font-weight:900;line-height:1}.game-over-score-value--won{background:linear-gradient(135deg,#ffb347 0%,#ff6b9d 45%,#c850c0 75%,#9b59ff 100%);-webkit-text-fill-color:transparent;filter:drop-shadow(0 2px 20px #c850c08c);-webkit-background-clip:text;background-clip:text}.game-over-stats{color:var(--text-muted);font-size:1.1rem}.game-over-details{flex-wrap:wrap;justify-content:center;gap:1.5rem;list-style:none;display:flex}.game-over-stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);text-align:center;min-width:110px;padding:.75rem 1.5rem}.game-over-stat dt{color:var(--text-muted);margin-bottom:.25rem;font-size:.8rem}.game-over-stat dd{font-size:1.3rem}.accuracy-bonus-msg{min-height:1.6rem;font-family:var(--font-display);color:var(--accent);opacity:0;font-size:1.1rem;font-weight:800;transition:opacity .35s,transform .35s;transform:translateY(6px)}.accuracy-bonus-msg--visible{opacity:1;transform:translateY(0)}.score-ticking{animation:.22s cubic-bezier(.34,1.56,.64,1) score-pop;display:inline-block}@media (prefers-reduced-motion:reduce){.accuracy-bonus-msg{transition:none}.score-ticking{animation:none}}.confetti-layer{pointer-events:none;z-index:10;position:fixed;inset:0;overflow:hidden}.confetti-particle{-webkit-user-select:none;user-select:none;will-change:transform;line-height:1;animation:linear forwards confettiFall;position:absolute;top:-10%}@keyframes confettiFall{0%{opacity:1;transform:translateY(0)rotate(0)}80%{opacity:1}to{transform:translateY(110vh) rotate(var(--spin,720deg));opacity:0}}@media (prefers-reduced-motion:reduce){.confetti-particle{display:none}}.streak-msg{font-family:var(--font-display);color:var(--accent);margin:0;font-size:1.1rem;font-weight:800}.game-over-actions{flex-direction:column;align-items:center;gap:1rem;width:100%;max-width:500px;margin:1rem auto 0;display:flex}.game-over-actions-row{flex-wrap:wrap;justify-content:center;gap:1rem;width:100%;display:flex}.game-over-primary-btn{white-space:nowrap;flex:1;min-width:140px;max-width:220px;padding:.85rem 1.2rem}.start-btn.game-over-primary-btn{min-width:0;padding:.85rem 1rem;font-size:1rem}@media (width<=540px){.game-over-actions-row{gap:.5rem}.start-btn.game-over-primary-btn{padding:.65rem .6rem;font-size:.88rem}}@media (width<=400px){.game-over-actions-row{flex-direction:column;align-items:center;gap:.75rem}.game-over-primary-btn{width:100%;max-width:260px}.start-btn.game-over-primary-btn{padding:.75rem 1rem;font-size:1rem}}.how-to-play{flex-direction:column;gap:clamp(.75rem,2vh,1.5rem);max-width:560px;margin:0 auto;padding:clamp(.75rem,2.5vh,1.5rem) 1.5rem;display:flex}.htp-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:clamp(.6rem,1.5vh,1.25rem) 1.25rem}.htp-mode-heading{color:var(--accent);margin-bottom:clamp(.35rem,1vh,.75rem);font-size:1.05rem;font-weight:700}.htp-steps{color:var(--text);flex-direction:column;gap:clamp(.2rem,.6vh,.4rem);padding-left:1.4rem;font-size:clamp(.875rem,1.8vh,1rem);line-height:1.4;display:flex}.htp-back-btn{align-self:center}.character-select{flex-direction:column;align-items:center;gap:2.5rem;width:100%;display:flex}.character-select-prompt{text-align:center;color:var(--tagline);font-family:var(--font-display);font-size:1.05rem;font-weight:700}.character-cards{flex-wrap:wrap;justify-content:center;gap:.75rem;display:flex}.character-card{background:var(--surface);border:2px solid var(--border);border-radius:var(--radius);color:var(--text);text-align:center;flex-direction:column;align-items:center;gap:.4rem;min-width:80px;padding:1.25rem .75rem;transition:border-color .15s,background .15s;display:flex}.character-card:hover:not(:disabled){border-color:var(--accent);background:var(--surface-raised)}.character-emoji{font-size:2.5rem;line-height:1}.character-name{text-transform:capitalize;font-size:.85rem;font-weight:600}.leaderboard-page{flex-direction:column;gap:1rem;padding:0 0 .5rem;display:flex}.game-over-player-name{text-align:center;color:var(--text-muted);margin-bottom:1rem;font-size:.9rem}.leaderboard{width:100%}.leaderboard-title{text-align:center;color:var(--text);margin-bottom:.75rem;font-size:1.1rem;font-weight:700}.leaderboard-loading{text-align:center;color:var(--text-muted);margin-top:1rem;font-size:.9rem}.leaderboard-list{scrollbar-width:thin;scrollbar-color:var(--border) transparent;flex-direction:column;gap:.35rem;margin:1rem 0 0;padding:0;list-style:none;display:flex}@media (width<=768px){.leaderboard-list{-webkit-overflow-scrolling:touch;max-height:45dvh;padding-right:4px;overflow-y:auto}}.leaderboard-entry{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);align-items:center;gap:.75rem;padding:.6rem .85rem;font-size:.9rem;transition:transform .1s ease-out,border-color .2s,background-color .2s;display:flex}.leaderboard-entry--first{border-color:var(--accent);background:var(--surface-raised);font-weight:700}.leaderboard-rank{text-align:center;min-width:2rem}.leaderboard-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.leaderboard-score{color:var(--accent);font-weight:700}@media (hover:hover) and (pointer:fine){.leaderboard-entry:hover{border-color:var(--accent);transform:translate(4px)}}.leaderboard-entry:active{background:var(--surface-raised);transform:scale(.98)}.floating-alphabet{pointer-events:none;z-index:0;position:fixed;inset:0;overflow:hidden}.floating-letter{font-family:var(--font-display);-webkit-user-select:none;user-select:none;text-shadow:0 0 18px;will-change:transform;font-weight:800;line-height:1;animation:linear infinite float-letter;position:absolute;top:110%}@media (prefers-reduced-motion:reduce){.floating-letter{animation:none;opacity:0!important}}.settings-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:200;background:#0000008c;justify-content:center;align-items:flex-end;padding:1rem;display:flex;position:fixed;inset:0}@media (width>=480px){.settings-overlay{align-items:center}}.settings-modal{background:var(--surface);border-radius:1.25rem;width:100%;max-width:420px;max-height:90vh;overflow-y:auto;box-shadow:0 8px 40px #0006}.settings-header{justify-content:space-between;align-items:center;padding:1.25rem 1.25rem .75rem;display:flex}.settings-title{font-family:var(--font-display);color:var(--text);margin:0;font-size:1.5rem}.settings-close-btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:1rem;display:flex}.settings-tabs{border-bottom:2px solid var(--border);gap:0;padding:0 1.25rem;display:flex}.settings-tab{font-size:1rem;font-weight:600;font-family:var(--font-display);cursor:pointer;color:var(--text-muted);background:0 0;border:none;border-bottom:3px solid #0000;flex:1;margin-bottom:-2px;padding:.6rem 0;transition:color .15s,border-color .15s}.settings-tab--active{color:var(--accent);border-bottom-color:var(--accent)}.settings-body{flex-direction:column;gap:.5rem;padding:.75rem 1.25rem 1.25rem;display:flex}.settings-section{background:var(--surface-raised);border-radius:var(--radius);padding:.75rem 1rem}.settings-section--row{justify-content:space-between;align-items:center;display:flex}.settings-row{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.settings-label{color:var(--text);font-size:1rem}.settings-slider{width:100%;accent-color:var(--accent);cursor:pointer;box-sizing:content-box;height:6px;padding-block:.75rem}.settings-slider:disabled{opacity:.4;cursor:not-allowed}@media (pointer:coarse){.settings-slider{padding-block:1rem}}@media (width<=359px){.settings-modal{border-radius:.75rem}.settings-header,.settings-body{padding-left:.875rem;padding-right:.875rem}.settings-toggle-opt{padding:.25rem .5rem;font-size:.78rem}}.settings-toggle-group{background:var(--surface);border:2px solid var(--border);border-radius:9999px;flex-shrink:0;gap:2px;padding:3px;display:flex}.settings-toggle-opt{font-family:var(--font-display);color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:9999px;min-height:0;padding:.25rem .75rem;font-size:.82rem;font-weight:700;transition:color .15s,background .2s,box-shadow .2s}.settings-toggle-opt:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.settings-toggle-opt--active{color:#fff;background:linear-gradient(135deg,#ff6b9d 0%,#c850c0 55%,#9b59ff 100%);box-shadow:0 2px 8px #c850c073}:root{--bg:#0f1117;--surface:#1a1d27;--surface-raised:#22263a;--border:#2e3350;--text:#e8eaf6;--text-muted:#9fa8da;--accent:#7c4dff;--accent-hover:#9c6eff;--green:#00e676;--red:#ff5252;--yellow:#ffea00;--orange:#ff6d00;--blue:#2979ff;--radius:12px;--font:"Segoe UI", system-ui, sans-serif;--font-display:"Nunito", "Segoe UI", system-ui, sans-serif;--min-touch:48px;--tagline:#c8b8ff;--toggle-off:#4a5280}html[data-theme=light]{--bg:#f0f2fa;--surface:#fff;--surface-raised:#e4e8f5;--border:#c5cae9;--text:#1a1d3a;--text-muted:#5364bb;--accent:#6b3de8;--accent-hover:#5a2ec0;--green:#1b7a3e;--red:#c62828;--yellow:#856400;--orange:#c04800;--blue:#1565c0;--toggle-off:#9ba4c7}*,:before,:after{box-sizing:border-box;margin:0;padding:0}img,button,[role=img]{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}body{color:var(--text);font-family:var(--font);touch-action:manipulation;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#0d0a1f;min-height:100dvh;font-size:18px;line-height:1.5}body:before{content:"";will-change:transform;z-index:-1;background:linear-gradient(-45deg,#0d0a1f,#1a0850,#2a0a5e,#07071a,#3d1575);width:200%;height:200%;animation:14s infinite bgShift;position:fixed;top:-50%;left:-50%}html[data-theme=light] body{background:#ede7ff}html[data-theme=light] body:before{background:linear-gradient(-45deg,#ede7ff,#e8eaf6,#f3e5f5,#e3f2fd,#ede7ff)}@keyframes bgShift{0%{transform:translate(0%)}25%{transform:translate(12%,8%)}50%{transform:translate(25%)}75%{transform:translate(12%,-8%)}to{transform:translate(0%)}}@keyframes titleFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes winPop{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}@keyframes score-pop{0%{color:#ff6b9d;transform:scale(1.5)}to{transform:scale(1)}}@keyframes scoreFloat{0%{opacity:1;transform:translate(-50%)translateY(0)}to{opacity:0;transform:translate(-50%)translateY(-60px)}}@keyframes scoreFloatMoneyball{0%{opacity:0;transform:translate(-50%)translateY(0)scale(.3)}25%{opacity:1;transform:translate(-50%)translateY(-14px)scale(1.55)}to{opacity:0;transform:translate(-50%)translateY(-85px)scale(.7)}}@keyframes bounceIn{0%{opacity:0;transform:scale(.5)rotate(-5deg)}60%{opacity:1;transform:scale(1.15)rotate(2deg)}to{opacity:1;transform:scale(1)rotate(0)}}@keyframes urgentPulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes hpShake{0%,to{transform:translate(0)}20%{transform:translate(-7px)}40%{transform:translate(7px)}60%{transform:translate(-5px)}80%{transform:translate(5px)}}@keyframes feedbackSlideIn{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}@keyframes burstFloat{0%{opacity:1;transform:translate(-50%,-50%)scale(1.2)}to{opacity:0;transform:translate(calc(-50% + var(--tx)), calc(-50% + var(--ty))) scale(.3)}}@keyframes enemyFloat{0%,to{transform:translateY(0)rotate(0)}30%{transform:translateY(-10px)rotate(-3deg)}70%{transform:translateY(-8px)rotate(3deg)}}@keyframes cheer{0%{transform:scale(1)rotate(0)}20%{transform:scale(1.6)rotate(-15deg)}45%{transform:scale(1.6)rotate(15deg)}65%{transform:scale(1.3)rotate(-8deg)}85%{transform:scale(1.1)rotate(4deg)}to{transform:scale(1)rotate(0)}}@keyframes moneyExplode{0%{opacity:1;transform:translate(-50%,-50%)scale(.5)}30%{opacity:1;transform:translate(-50%,-80%)scale(1.6)}70%{opacity:.7;transform:translate(-50%,-130%)scale(1.9)}to{opacity:0;transform:translate(-50%,-180%)scale(1.2)}}@keyframes float-letter{0%{transform:translateY(0)rotate(0)}to{transform:translateY(-140vh) rotate(var(--spin,0deg))}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:999;background:var(--accent);color:#fff;border-radius:var(--radius);padding:.5rem 1rem;font-weight:600;text-decoration:none;position:absolute;top:0;left:-9999px}.skip-link:focus{top:.5rem;left:.5rem}button{cursor:pointer;font:inherit;border-radius:var(--radius);-webkit-tap-highlight-color:transparent;min-height:var(--min-touch);border:none;padding:.6rem 1.4rem;transition:background .15s,opacity .15s}button:focus-visible{outline:3px solid var(--accent);outline-offset:3px}button:disabled{opacity:.6;cursor:not-allowed}.choice-btn,.submit-btn,.start-btn{transition:border-color .15s,background .15s,opacity .15s,transform .25s cubic-bezier(.34,1.56,.64,1)}.choice-btn:active:not(:disabled),.submit-btn:active:not(:disabled),.start-btn:active:not(:disabled){transition:transform 80ms ease-out;transform:scale(.93)}.start-btn{color:#fff;font-family:var(--font-display);letter-spacing:.02em;background:linear-gradient(135deg,#ff6b9d 0%,#c850c0 55%,#9b59ff 100%);border-radius:9999px;min-width:200px;padding:.85rem 2.6rem;font-size:1.2rem;font-weight:800;box-shadow:0 4px 20px #c850c08c,inset 0 1px #ffffff26}.start-btn:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-1px);box-shadow:0 6px 24px #c850c0a6,inset 0 1px #ffffff26}.start-btn--sm{min-width:0;padding:.6rem 1.8rem;font-size:1rem;font-weight:700;box-shadow:0 2px 12px #c850c066,inset 0 1px #ffffff1a}.app{max-width:640px;padding:1.5rem 1rem 3rem;padding-top:max(1.5rem, env(safe-area-inset-top));padding-bottom:max(3rem, env(safe-area-inset-bottom));margin:0 auto;scroll-padding-bottom:80px}[data-no-flash] .burst-particle,[data-no-flash] .enemy-explosion-overlay,[data-no-flash] .money-explosion-overlay,[data-no-flash] .round-clear-toast{display:none!important}@media (prefers-reduced-motion:reduce){body:before,html[data-theme=light] body:before{animation:none}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body.page-hidden:before,body.page-hidden .floating-letter{animation-play-state:paused}[data-no-borders] .mode-card,[data-no-borders] .start-btn,[data-no-borders] .submit-btn{box-shadow:none;border-color:#0000}[data-no-borders] .mode-card:hover:not(:disabled){border-color:#0000;box-shadow:0 4px 20px #c850c059}html:not([data-no-borders]) .choice-btn{background:var(--surface);border-color:var(--border)}html:not([data-no-borders]) .choice-btn:hover:not(:disabled){border-color:var(--accent);background:var(--surface-raised);transform:none}@media (width<=768px){.start-btn--sm{padding:.75rem 1.8rem}}@media (width<=400px){body{font-size:16px}}
