:root{--color-paper:#f2f6fa;--color-surface:#fff;--color-ink:#16324f;--color-action:#1559b7;--color-success:#176447;--color-error:#af283f;--color-muted:#526577;--color-line:#cbd7e2;--font-body:system-ui,-apple-system,BlinkMacSystemFont,"PingFang TC","Microsoft JhengHei",sans-serif;--space-xs:8px;--space-sm:12px;--space-md:20px;--space-lg:32px;--space-xl:48px;--radius-control:6px;--ease-out:cubic-bezier(.16,1,.3,1);--ease-in:cubic-bezier(.7,0,.84,0);--ease-in-out:cubic-bezier(.65,0,.35,1)}:root{--color-scrim:rgb(16 43 56 / .72)}:root{--color-error-wash:#f9dce2}:root{--color-success-wash:#d9f1e6;--color-heat:#915000}*{box-sizing:border-box}html{overscroll-behavior:none;background:var(--color-paper);color:var(--color-ink);font-family:var(--font-body);line-height:1.6}body{margin:0}button,a,input{touch-action:manipulation}button{font:inherit;cursor:pointer;border:1px solid var(--color-action);background:var(--color-surface);color:var(--color-action);border-radius:var(--radius-control);min-height:48px;padding:10px 20px;transition:transform 90ms var(--ease-out),background-color 90ms var(--ease-out)}button:hover{background:var(--color-paper)}button:active{transform:scale(.97)}button:disabled{cursor:default;color:var(--color-muted);border-color:var(--color-line)}a{color:var(--color-action);text-underline-offset:4px}a:hover{text-decoration-thickness:2px}:focus-visible{outline:3px solid var(--color-action);outline-offset:4px}::selection{background:var(--color-action);color:var(--color-surface)}h1,h2,h3,p{margin:0}h1{font-size:32px;line-height:1.3;letter-spacing:-.025em;text-wrap:balance}h2{font-size:24px;line-height:1.4}h3{font-size:20px}p{max-width:68ch}.app{max-width:1184px;min-height:100vh;min-height:100dvh;margin:auto;padding:max(20px,env(safe-area-inset-top)) max(32px,env(safe-area-inset-right)) max(20px,env(safe-area-inset-bottom)) max(32px,env(safe-area-inset-left))}.brandbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:64px}.wordmark{font-size:21px;font-weight:800;letter-spacing:-.035em;text-decoration:none;color:var(--color-ink);min-height:48px;display:inline-flex;align-items:center}.brandbar>span{font-size:14px;color:var(--color-muted)}.recovery{padding:32px 0}.recovery p{margin:20px 0}footer{font-size:13px;color:var(--color-muted);margin-top:64px;padding-bottom:16px}.primary{background:var(--color-action);color:var(--color-surface)}.primary:hover{background:var(--color-ink);color:var(--color-surface)}@media(max-width:700px){.app{padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right))}.brandbar{margin-bottom:32px}.brandbar>span{display:none}footer{margin-top:40px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}button:active{transform:none}}.game-page{max-width:1120px;margin:auto}.game-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:24px}.game-heading a{flex-shrink:0}.game-intro{display:grid;grid-template-columns:1.2fr 1fr;gap:48px;padding:24px 0}.game-intro p+p{margin-top:16px}.intro-actions{display:flex;flex-direction:column;gap:12px;align-items:stretch}.intro-rules{padding:24px;background:var(--color-surface)}.intro-rules h2{margin-bottom:12px}.intro-rules ol{padding-left:24px;margin-bottom:0}.scenario{font-size:20px;font-weight:700;margin-bottom:8px}.context-note{font-weight:700;color:var(--color-error)}.game-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(290px,1fr);gap:24px;align-items:start}.game-signal{min-width:0}.ecg-monitor{margin:0;background:var(--color-monitor);border-radius:4px;overflow:hidden;color:var(--color-monitor-overlay)}.ecg-monitor canvas{display:block;width:100%;height:auto}.ecg-monitor figcaption{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;padding:8px 12px;font-size:13px}.signal-tools{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:12px 0 24px}.signal-tools>span{color:var(--color-muted);font-size:14px}.canvas-fallback{padding:20px}.canvas-fallback button{margin-top:12px}.score-rail{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;padding:16px 0;margin-bottom:16px;border-top:1px solid var(--color-line);border-bottom:1px solid var(--color-line)}.score-rail dt{color:var(--color-muted);font-size:13px}.score-rail dd{margin:0;font-size:24px;font-weight:750;font-variant-numeric:tabular-nums;line-height:1.4}.score-rail small{font-size:14px}.score-cell{position:relative}.score-pop{display:inline-block;animation:score-pop .16s var(--ease-out)}.score-particles{position:absolute;inset:0;pointer-events:none;overflow:visible}.score-particles i{position:absolute;width:5px;height:5px;background:var(--color-success);left:40px;top:24px;animation:spark .24s var(--ease-out) both}.score-particles i:nth-child(1){--dx:-26px;--dy:-25px}.score-particles i:nth-child(2){--dx:0px;--dy:-32px}.score-particles i:nth-child(3){--dx:27px;--dy:-20px}.score-particles i:nth-child(4){--dx:34px;--dy:3px}.score-particles i:nth-child(5){--dx:20px;--dy:27px}.score-particles i:nth-child(6){--dx:-7px;--dy:30px}.score-particles i:nth-child(7){--dx:-30px;--dy:15px}.score-particles i:nth-child(8){--dx:-35px;--dy:-4px}.round-clock{display:flex;justify-content:space-between;gap:12px;font-variant-numeric:tabular-nums;margin-bottom:12px}.round-clock strong{font-size:20px}.card-clock{margin-bottom:20px}.card-clock>div{display:flex;justify-content:space-between;font-variant-numeric:tabular-nums;font-size:14px}.card-clock progress{display:block;width:100%;height:8px;margin-top:8px;accent-color:var(--color-action)}.choices{display:grid;grid-template-columns:1fr;gap:12px}.choice{display:flex;gap:12px;text-align:left;align-items:center;width:100%;padding:16px;min-height:76px;font-weight:700;font-size:20px}.choice small{display:block;font-size:13px;font-weight:400;line-height:1.4;margin-top:4px}.choice kbd{font:inherit;font-size:14px;opacity:.8}.choice-shockable{background:var(--color-action);color:var(--color-surface)}.choice-shockable:hover{background:var(--color-ink);color:var(--color-surface)}.game-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}.game-note{color:var(--color-muted);font-size:14px;margin-top:24px}.outcome{padding:20px;background:var(--color-surface);border:2px solid var(--color-success)}.outcome.wrong{border-color:var(--color-error);animation:answer-shake .12s var(--ease-out)}.outcome h2{font-size:22px}.outcome h3{margin:16px 0 8px}.outcome small,.mistake-list small{display:block;font-size:14px;font-weight:400;line-height:1.5}.outcome p+p{margin-top:12px}.outcome .primary{width:100%;margin-top:20px}.outcome-label{font-weight:750;color:var(--color-success)}.wrong .outcome-label{color:var(--color-error)}.pause-panel{padding:24px;background:var(--color-surface);border:1px solid var(--color-line)}.pause-panel p{margin:12px 0 20px}.detail-backdrop{position:fixed;inset:0;z-index:20;display:flex;align-items:center;justify-content:center;padding:16px;background:var(--color-scrim)}.detail-dialog{background:var(--color-paper);padding:24px;width:min(100%,1100px);max-height:90vh;max-height:90dvh;overflow:auto}.detail-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}.detail-scroll{overflow-x:auto;overscroll-behavior-x:contain;margin-top:20px;scrollbar-color:var(--color-muted) var(--color-paper)}.detail-plot{width:1200px}.review-summary{display:flex;gap:32px;flex-wrap:wrap;margin:24px 0;font-variant-numeric:tabular-nums}.review-summary strong{font-size:32px;display:block}.mistake-list{list-style:none;padding:0;display:grid;gap:32px;margin:32px 0}.mistake-list li{padding-top:24px;border-top:1px solid var(--color-line)}.mistake-list .ecg-monitor{margin:16px 0;max-width:800px}.mistake-list p+p{margin-top:8px}.empty-review{padding:32px 0;color:var(--color-success);font-weight:700}.text-cue{padding:24px;background:var(--color-surface);border:1px solid var(--color-line)}.text-cue p{margin-top:12px}.level-list{display:grid;gap:12px;margin-top:20px}.level-list button{text-align:left;display:flex;justify-content:space-between;gap:16px}.level-list small{display:block;color:var(--color-muted);font-weight:400}.level-list .selected{border:2px solid var(--color-action);font-weight:700}.session-progress{font-size:14px;color:var(--color-muted);margin-bottom:12px}.game-page[data-reduced=true] *{animation:none!important}.game-page[data-reduced=true] .score-particles{display:none}@keyframes score-pop{0%{transform:scale(1.18)}to{transform:scale(1)}}@keyframes answer-shake{0%,to{transform:translate(0)}25%{transform:translate(-3px)}65%{transform:translate(3px)}}@keyframes spark{0%{transform:translate(0);opacity:1}to{transform:translate(var(--dx),var(--dy));opacity:0}}@media(max-width:760px){.game-heading{align-items:start}.game-heading h1{font-size:27px}.game-heading a{font-size:14px}.game-intro,.game-layout{grid-template-columns:1fr;gap:20px}.game-intro{padding-top:0}.game-heading{margin-bottom:20px}.scenario{font-size:18px}.score-rail{margin-top:0}.signal-tools{margin-bottom:0}.choices.binary{grid-template-columns:1fr 1fr}.binary .choice{font-size:18px;gap:8px;padding:16px 12px}.game-page .game-note{margin-top:20px}.detail-dialog{padding:16px}.detail-heading h2{font-size:22px}}@media(prefers-reduced-motion:reduce){.score-particles{display:none}}.button-link{min-height:48px;display:inline-flex;align-items:center;padding:10px 0}.review-title{margin-top:32px}.game-actions label{display:flex;align-items:center;gap:8px;min-height:48px;cursor:pointer}.game-actions input{width:20px;height:20px;accent-color:var(--color-action)}.app:has(.game-page)>footer{margin-top:24px}.score-stage{position:relative}.score-stage .score-rail{margin-bottom:0}.feedback-layer{position:absolute;inset:0;pointer-events:none;z-index:1;overflow:hidden}.feedback-layer[data-kind=wrong][data-active=true]{border:2px solid var(--color-error);animation:answer-shake .12s var(--ease-out)}.feedback-layer[data-flash=true]{animation:feedback-flash .18s ease-out,answer-shake .12s var(--ease-out)}.feedback-burst{position:absolute;left:52px;top:42px}.feedback-particle{position:absolute;width:5px;height:5px;background:var(--color-success);animation:feedback-spark .24s cubic-bezier(.16,1,.3,1) both}.feedback-burst.milestone .feedback-particle{width:7px;height:7px}.combo-rail{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:13px;min-height:40px;margin-bottom:12px}.combo-rail meter{width:80px;height:12px;accent-color:var(--color-success)}.combo-burst{color:var(--color-success);animation:score-pop .16s var(--ease-out)}.pace-cue{font-weight:700;font-size:13px;margin-bottom:4px}.card-clock[data-urgent=true]{color:var(--color-error)}.card-clock[data-urgent=true] progress{accent-color:var(--color-error)}[data-reduced=true] *,[data-reduced=true]{animation:none!important;transition:none!important}[data-reduced=true] button:active{transform:none}[data-reduced=true] .feedback-layer{display:none}@keyframes feedback-spark{0%{transform:rotate(var(--angle)) translate(4px);opacity:1}to{transform:rotate(var(--angle)) translate(36px);opacity:0}}@keyframes feedback-flash{0%{background:var(--color-error-wash)}to{background:transparent}}.preferences-bar{display:flex;align-items:center;justify-content:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:20px}.preferences-bar p{font-size:14px;color:var(--color-muted)}.settings-panel{background:var(--color-paper);padding:24px;width:min(100%,540px);max-height:90dvh;overflow:auto}.settings-panel label{display:flex;gap:12px;align-items:center;min-height:48px;cursor:pointer}.settings-panel input{width:20px;height:20px;accent-color:var(--color-action);flex-shrink:0}.settings-panel p{font-size:14px;color:var(--color-muted);margin:8px 0 16px}.personal-best{font-variant-numeric:tabular-nums;color:var(--color-muted)}@media(max-width:360px){.game-heading{flex-wrap:wrap;gap:8px}.game-heading h1{font-size:25px}.score-rail dd{font-size:22px}.binary .choice{font-size:16px;padding:12px 8px}.detail-heading{flex-wrap:wrap}.settings-panel{padding:16px}.level-list button{flex-wrap:wrap}.review-summary{gap:20px}}.app:has(.game-page) .brandbar{margin-bottom:8px}.app:has(.game-page) .preferences-bar{margin-bottom:12px}.app:has(.game-page) .brandbar>span{display:none}.game-heading h1{font-size:24px}.game-heading{margin-bottom:12px}.game-heading a{min-height:48px;display:inline-flex;align-items:center}.session-progress{margin-bottom:6px}.arcade-clock{margin:8px 0 16px}.arcade-clock>div{display:flex;align-items:baseline;justify-content:space-between;font-weight:700}.arcade-clock strong{font-size:44px;line-height:1.1;font-variant-numeric:tabular-nums}.arcade-clock small{font-size:13px;font-weight:400}.arcade-clock progress{display:block;width:100%;height:14px;margin-top:10px;accent-color:var(--color-action)}.arcade-clock[data-urgent=true]{color:var(--color-error)}.arcade-clock[data-urgent=true] progress{accent-color:var(--color-error)}progress{border:0;border-radius:2px;overflow:hidden}progress::-webkit-progress-bar{background:var(--color-line)}progress::-webkit-progress-value{background:var(--color-action);transition:width .1s linear}[data-urgent=true] progress::-webkit-progress-value{background:var(--color-error)}.score-rail{margin-top:8px;padding:10px 0}.score-rail dd{font-size:32px}.score-rail .combo-cell dd{font-size:44px;line-height:1.1;color:var(--color-success)}.combo-pop{animation:combo-pop .22s var(--ease-out)}.combo-rail{margin-bottom:8px;min-height:32px}.combo-burst{font-size:20px}.score-fly{position:absolute;right:20px;top:-12px;font-size:36px;font-weight:800;color:var(--color-success);pointer-events:none;animation:score-fly .6s var(--ease-out) both}.outcome{position:relative}.outcome h2{font-size:27px;line-height:1.3}.outcome.correct{animation:impact-hold .24s var(--ease-out)}.pace-cue strong{font-size:20px}.card-clock progress{height:10px}.card-clock{margin-bottom:16px}.signal-tools{margin-top:8px}.ecg-monitor canvas{min-height:170px}.feedback-burst{left:50%;top:45%}.feedback-burst.milestone .feedback-particle{width:9px;height:9px}.arcade-intro{padding:24px 0;align-items:center}.arcade-intro h2{font-size:clamp(38px,5vw,64px);line-height:1.15;letter-spacing:-.04em;margin:16px 0 24px}.start-rules{padding-left:20px;max-width:40ch}.start-rules li{margin:10px 0}.start-duration{font-size:20px}.start-duration strong{font-size:88px;line-height:1;font-variant-numeric:tabular-nums;letter-spacing:-.04em}.start-arcade{display:flex;justify-content:space-between;align-items:center;font-size:22px;min-height:72px}.practice-options{display:flex;gap:12px;flex-wrap:wrap}.practice-options button{border:0;background:transparent;text-decoration:underline;text-underline-offset:4px;padding:8px 4px;font-size:14px}.keyboard-tip{font-size:13px;color:var(--color-muted)}@keyframes combo-pop{0%{transform:scale(.9)}35%{transform:scale(1.16)}to{transform:scale(1)}}@keyframes score-fly{0%,12%{opacity:1;transform:translateY(10px) scale(1.12)}to{opacity:0;transform:translateY(-36px) scale(.9)}}@keyframes impact-hold{0%,25%{transform:scale(.985)}to{transform:scale(1)}}@media(max-width:760px){.app:has(.game-page){padding-top:max(8px,env(safe-area-inset-top))}.app:has(.game-page) .brandbar{margin-bottom:0}.app:has(.game-page) .preferences-bar{position:absolute;right:max(16px,env(safe-area-inset-right));top:max(8px,env(safe-area-inset-top));margin:0}.app:has(.game-page) .preferences-bar>p{display:none}.app:has(.game-page) .wordmark{font-size:18px}.preferences-bar button{padding:8px 12px;font-size:14px}.game-heading h1{font-size:22px}.game-heading{gap:8px;margin-bottom:4px}.arcade-page:has(.choices.binary){padding-bottom:112px}.arcade-page .choices.binary{position:fixed;left:0;right:0;bottom:0;z-index:10;background:var(--color-paper);padding:12px max(16px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));border-top:1px solid var(--color-line);gap:10px}.arcade-page .binary .choice{min-height:78px;font-size:22px;justify-content:center;padding:16px 8px}.arcade-page .binary kbd{display:none}.arcade-page .game-layout{gap:8px}.arcade-page .game-signal{display:flex;flex-direction:column}.arcade-page .signal-tools{margin-bottom:0}.arcade-page .game-actions{margin-top:12px}.arcade-clock{margin-bottom:12px}.arcade-clock strong{font-size:40px}.scenario{font-size:16px}.score-rail dd{font-size:28px}.score-rail .combo-cell dd{font-size:38px}.card-clock{margin-bottom:8px}.arcade-intro{gap:16px;padding:16px 0}.arcade-intro h2{font-size:40px;margin:12px 0 16px}.start-duration{display:none}.arcade-intro .personal-best{font-size:14px}.arcade-intro .keyboard-tip{display:none}.outcome h2{font-size:25px}.outcome{padding:16px}}@media(max-width:360px){.game-heading h1,.arcade-page .binary .choice{font-size:20px}.game-heading a{font-size:13px}.combo-rail{font-size:12px}}@media(prefers-reduced-motion:reduce){.score-fly{display:none}}[data-reduced=true] .score-fly{display:none}.arcade-page .signal-tools>span{display:none}.arcade-page .ecg-monitor figcaption{padding-top:6px;padding-bottom:6px}@media(min-width:761px){.app:has(.game-page) .preferences-bar{float:right;margin-top:-56px;margin-bottom:0}.app:has(.game-page) .preferences-bar>p{display:none}.app:has(.game-page) .brandbar{margin-bottom:20px}}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;padding:0;flex-shrink:0}.arcade-heading{display:grid;grid-template-columns:48px 1fr 48px;align-items:center;gap:8px;margin-bottom:12px}.arcade-heading h1{font-size:22px;text-align:center;white-space:nowrap;letter-spacing:-.03em}.arcade-heading .icon-button{border:0;background:transparent;color:var(--color-ink);text-decoration:none}.app:has(.arcade-page) .brandbar,.app:has(.arcade-page) .preferences-bar{display:none}.app:has(.shockable-arena){height:100dvh;min-height:640px;display:flex;flex-direction:column;padding-top:max(8px,env(safe-area-inset-top));padding-bottom:max(4px,env(safe-area-inset-bottom))}.app:has(.shockable-arena)>div[data-reduced]{display:flex;flex:1;min-height:0}.app:has(.shockable-arena) .arcade-page{display:flex;flex-direction:column;flex:1;min-height:0;width:100%;padding-bottom:0}.app:has(.shockable-arena)>footer{margin:0;padding:4px 0 0;text-align:center;font-size:12px;line-height:20px}.shockable-arena{display:flex;flex-direction:column;flex:1;min-height:0;position:relative;gap:12px}.arena-hud{position:relative;border-top:1px solid var(--color-line);padding:8px 0}.arena-hud dl{display:grid;grid-template-columns:1.3fr 1fr .8fr 1.1fr;gap:8px;margin:0;align-items:center}.arena-hud dt{font-size:12px;color:var(--color-muted);line-height:1.4}.arena-hud dd{font-size:32px;font-weight:800;font-variant-numeric:tabular-nums;line-height:1.2;margin:0;white-space:nowrap}.arena-hud dd>span{display:inline-block}.arena-hud .arcade-clock{margin:0;text-align:right}.arena-hud .arcade-clock strong{font-size:32px;line-height:1.2}.arena-hud small{font-size:13px;font-weight:400}.arena-combo{color:var(--color-action)}.arena-hud[data-heat="2"] .arena-combo{color:var(--color-success)}.arena-hud[data-heat="3"] .arena-combo{color:var(--color-heat)}.arena-hud[data-heat="4"] .arena-combo{color:var(--color-error)}.arena-round-bar{width:100%;height:5px;display:block}.arena-milestone{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:32px;font-size:13px;font-weight:600}.arena-milestone meter{width:72px;height:8px;border:0;background:var(--color-line);border-radius:2px;overflow:hidden;flex-shrink:0}.arena-milestone meter::-webkit-meter-bar{background:var(--color-line);border:0;border-radius:0}.arena-milestone meter::-webkit-meter-optimum-value{background:var(--color-success)}.arena-milestone .combo-burst{font-size:14px}.arena-signal-zone{display:flex;flex-direction:column;justify-content:center;flex:1;min-height:0;padding-bottom:16px}.arena-context{min-height:48px;display:flex;flex-direction:column;justify-content:center;margin-bottom:8px}.arena-context .scenario{font-size:16px;margin:0;line-height:1.5}.arena-context .context-note{font-size:14px;line-height:1.5}.arena-strip{position:relative}.arena-strip .ecg-monitor{padding-top:48px}.arena-strip-tools{position:absolute;right:4px;top:0;display:flex;gap:4px}.arena-strip-tools>.icon-button{color:var(--color-monitor-overlay);background:transparent;border:0}.arena-strip-tools>.icon-button:hover{background:var(--color-grid)}.arena-strip-tools>.icon-button:focus-visible{outline-color:var(--color-monitor-overlay);outline-offset:-4px}.arena-card-clock{margin-top:12px;color:var(--color-action);font-variant-numeric:tabular-nums}.arena-card-clock>div{display:flex;justify-content:space-between;align-items:center;font-size:13px;margin-bottom:6px}.arena-card-clock b{font-size:18px}.arena-card-clock progress{display:block;width:100%;height:10px;accent-color:var(--color-success)}.arena-card-clock progress::-webkit-progress-value{background:var(--color-success);transition:width .1s linear,background-color .2s ease-out}.arena-card-clock[data-pressure=warning]{color:var(--color-heat)}.arena-card-clock[data-pressure=warning] progress::-webkit-progress-value{background:var(--color-heat)}.arena-card-clock[data-pressure=urgent]{color:var(--color-error)}.arena-card-clock[data-pressure=urgent] progress::-webkit-progress-value{background:var(--color-error)}.arena-dock{position:relative;min-height:100px;margin-top:auto;padding-top:12px}.arena-answers{display:grid;grid-template-columns:1fr 1fr;gap:12px}.arena-answers .choice{justify-content:center;min-height:88px;font-size:26px}.arena-answers kbd{font-size:14px}.arena-outcome{position:absolute;bottom:0;left:0;right:0;z-index:3;padding:20px;background:var(--color-surface);border:2px solid var(--color-success);border-radius:12px 12px 6px 6px}.arena-outcome.wrong{border-color:var(--color-error);animation:answer-shake .12s var(--ease-out)}.arena-outcome .outcome-label{font-size:30px;line-height:1.25;display:flex;align-items:baseline;justify-content:space-between;gap:12px}.arena-outcome .outcome-label span{font-size:26px;font-variant-numeric:tabular-nums}.arena-outcome.wrong .outcome-label{font-size:22px}.arena-outcome h3{font-size:20px;line-height:1.35;margin:12px 0 8px}.arena-outcome h3 small{display:block;font-size:13px;font-weight:400;line-height:1.4;color:var(--color-muted)}.arena-outcome p{font-size:15px;line-height:1.55}.mistake-explanation p+p{margin-top:6px}.arena-outcome .primary{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:56px;margin-top:16px;font-size:20px}.arena-outcome .score-fly{top:-28px;right:16px;z-index:1}.arena-dock .pause-panel{position:absolute;bottom:0;left:0;right:0;z-index:3}.arena-dock .pause-panel button{width:100%}.multiplier-pop{animation:combo-pop .24s var(--ease-out)}.feedback-layer[data-flash=true]:not([data-kind=wrong]){animation:success-flash .18s ease-out}@keyframes success-flash{0%{background:var(--color-success-wash)}to{background:transparent}}@media(min-width:761px){.shockable-arena{max-width:960px;width:100%;margin:auto}.arena-hud dd,.arena-hud .arcade-clock strong{font-size:36px}.arena-signal-zone{max-width:960px;width:100%;margin:auto}.arena-outcome{max-width:600px;left:auto;width:100%}.arena-strip .ecg-monitor canvas{max-height:300px}.arena-answers .choice{min-height:80px}}@media(max-width:760px){.arcade-heading h1{font-size:20px}.arcade-heading{margin-bottom:8px}.arena-answers kbd{display:none}.arena-answers .choice{font-size:24px;padding:12px 8px}.arena-outcome{padding:16px}.arena-signal-zone{justify-content:flex-start;padding-top:16px}.arena-strip .ecg-monitor canvas{min-height:190px!important}.arena-dock{min-height:100px}}@media(max-width:360px){.arcade-heading h1{font-size:18px}.arcade-heading{gap:0}.arena-hud dd,.arena-hud .arcade-clock strong{font-size:28px}.arena-outcome.wrong .outcome-label{font-size:19px}.arena-answers .choice{font-size:22px}.arena-outcome p{font-size:14px}.arena-outcome .outcome-label span{font-size:22px}}@media(max-height:740px){.app:has(.shockable-arena){height:auto;min-height:100dvh}.shockable-arena{min-height:640px}.arena-outcome,.arena-dock .pause-panel{position:relative}.arena-signal-zone{padding-top:0}}.app:has(.shockable-arena) .arcade-page{margin:0 auto;align-self:stretch}.app:has(.shockable-arena)>footer,.arena-status,.arena-dock,.arcade-heading{flex-shrink:0}@media(min-width:761px){.arena-signal-zone{max-width:850px;padding-bottom:8px}.arena-strip .ecg-monitor canvas{max-height:none}}.canvas-fallback a{color:var(--color-monitor-overlay)}.ecg-monitor :focus-visible{outline-color:var(--color-monitor-overlay)}.rhythm-hud dl{grid-template-columns:.65fr 1fr 1.1fr 1fr 1.1fr;gap:8px}.rhythm-hud dd{font-size:26px}.rhythm-hud small{font-size:12px}.rhythm-mode{font-size:14px;color:var(--color-muted);margin-bottom:8px}.rhythm-arena .arena-signal-zone{justify-content:flex-start;padding-top:16px}.rhythm-dock{min-height:232px}.rhythm-answers{display:grid;grid-template-columns:1fr 1fr;gap:12px}.rhythm-answers .choice{min-height:104px;padding:12px;align-items:flex-start;font-size:17px;gap:8px;line-height:1.4}.rhythm-answers .choice>span{min-width:0}.rhythm-answers .choice small{font-size:13px;line-height:1.35;margin-top:6px;overflow-wrap:anywhere}.rhythm-answers kbd{font-size:12px;background:transparent;color:var(--color-muted);padding:0;min-width:12px}.rhythm-outcome .outcome-label{font-size:24px}.rhythm-outcome .rhythm-rate{font-size:13px;color:var(--color-muted);margin-top:8px}.rhythm-intro .level-list{gap:8px;margin-top:16px}.rhythm-intro .level-list button{padding:12px 16px;align-items:center}.rhythm-intro .level-list button>span:last-child{font-size:13px;white-space:nowrap}.rhythm-intro .intro-actions>.primary{min-height:56px;font-size:20px}@media(min-width:761px){.rhythm-hud dd{font-size:30px}.rhythm-arena .arena-signal-zone{max-width:850px}.rhythm-outcome{max-width:660px}}@media(max-width:760px){.rhythm-intro{gap:16px}.rhythm-intro h2{font-size:23px}.rhythm-intro p{font-size:15px;line-height:1.5}.rhythm-intro .intro-rules{margin-top:4px}.rhythm-intro .intro-rules h2{font-size:18px}.rhythm-intro .intro-actions{gap:8px}.rhythm-hud dd{font-size:23px}.rhythm-hud dt{font-size:11px}.rhythm-hud dl{gap:6px}.rhythm-dock{min-height:244px}.rhythm-outcome h3{margin-top:8px}.rhythm-outcome .primary{margin-top:12px}.rhythm-outcome .primary small{font-size:12px}.rhythm-arena .arena-signal-zone{padding-top:8px}}@media(max-width:360px){.rhythm-answers .choice{font-size:15px;padding:10px;gap:4px}.rhythm-hud dd{font-size:20px}.rhythm-hud dl{gap:4px}.rhythm-outcome .outcome-label{font-size:21px}}@media(max-height:740px){.rhythm-dock{min-height:0}.rhythm-arena .arena-signal-zone{flex:none}.rhythm-arena{min-height:0}.rhythm-outcome{max-width:none}}.rhythm-arena .arena-strip:has(.text-cue) .text-cue{padding-top:56px}.rhythm-arena .arena-strip:has(.text-cue) .arena-strip-tools>.icon-button{color:var(--color-action)}.rhythm-arena .arena-strip:has(.text-cue) .arena-strip-tools>.icon-button:hover{background:var(--color-paper)}.rhythm-arena .arena-strip:has(.text-cue) .arena-strip-tools>.icon-button:focus-visible{outline-color:var(--color-action)}.catalog,.mode-picker{max-width:960px;margin-inline:auto}.catalog-heading{margin-bottom:32px}.catalog-heading p,.picker-heading p{margin-top:12px;color:var(--color-muted)}.catalog-list,.mode-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.live-slot{grid-column:1/-1}.catalog-card,.mode-card{display:flex;gap:20px;padding:32px;text-decoration:none;color:var(--color-ink);background:var(--color-surface);border-radius:var(--radius-control)}.catalog-card{align-items:center;justify-content:space-between;min-height:176px}.catalog-card h2{font-size:32px}.catalog-card p{margin-top:8px}.entry-action{color:var(--color-action);font-weight:700;white-space:nowrap}.catalog-card:hover,.mode-card:hover{background:var(--color-ink);color:var(--color-surface)}.catalog-card:hover .entry-action,.mode-card:hover .entry-action{color:inherit;text-decoration:underline;text-underline-offset:4px}.future-slot{border:1px solid var(--color-line);border-radius:var(--radius-control);color:var(--color-muted)}.placeholder-card{padding:24px;min-height:156px;display:flex;flex-wrap:wrap;gap:8px 16px;align-content:start;align-items:center}.placeholder-card h2{font-size:22px;width:100%}.slot-badge{font-size:14px}.picker-heading{margin:20px 0 32px}.mode-card{height:100%;min-height:240px;flex-direction:column;gap:12px}.mode-card .entry-action{margin-top:auto;padding-top:20px}@media(max-width:700px){.catalog-list,.mode-list{grid-template-columns:minmax(0,1fr);gap:12px}.catalog-heading{margin-bottom:24px}.catalog-heading h1{font-size:30px}.catalog-card{align-items:start;flex-direction:column;padding:24px;min-height:184px}.catalog-card h2{font-size:28px}.placeholder-card{padding:20px;min-height:116px}.picker-heading{margin:16px 0 24px}.mode-card{padding:24px;min-height:196px}}
