/* Scoped competitive view; all timing and result values still come from the server. */
html.student-focus-mode .student-challenge-center>.student-tabbar{display:grid!important}
.student-challenge-center[data-runner="active"]{--student-bg:#111315;--student-surface:#202125;--student-primary:#ffab38;--student-primary-soft:#393025;--student-text:#fff7e9;--student-text-muted:#cbc3b7;--student-border:#674622;--student-accent:#ffb84d;--student-accent-soft:#332713;background:#111315;color:#fff7e9;height:100dvh;min-height:0;max-width:600px;padding:10px 12px var(--student-nav-clearance);display:flex;flex-direction:column;overflow:hidden;color-scheme:dark}
.student-challenge-center[data-runner="active"] .learning-page-head{margin:0 0 8px;flex:none;min-height:36px}.student-challenge-center[data-runner="active"] .learning-page-head small,.student-challenge-center[data-runner="active"] .learning-page-head p{display:none}.student-challenge-center[data-runner="active"] .learning-page-head h1{font-size:18px;margin:0}.student-challenge-center[data-runner="active"] #game-area{flex:1;min-height:0}
.student-challenge-runner{height:100%;display:grid;grid-template-rows:minmax(78px,1fr) 42px 25px minmax(58px,1fr) minmax(166px,auto) 18px;gap:7px;--speed-orange:#ffab38;--speed-time:100%;color:#fff7e9;background:radial-gradient(ellipse at top,#7e461220,transparent 65%);font-variant-numeric:tabular-nums}
.speed-timer-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 6px}.speed-timer-row>div:first-child{display:grid;gap:6px}.speed-timer-row small{font-size:9px;color:#e1a955;letter-spacing:.08em}.speed-timer-row strong{font-size:20px}.speed-timer-row span{font-size:12px;color:#c9beb0}
.speed-dial{height:min(100%,112px);aspect-ratio:1;border-radius:50%;background:conic-gradient(var(--speed-orange) var(--speed-time),#423326 0);display:grid;place-items:center;align-content:center;position:relative;flex-shrink:0;padding:12px;min-width:82px}.speed-dial::before{content:"";position:absolute;inset:6px;background:#15171a;border-radius:50%;box-shadow:inset 0 0 16px #0008}.speed-dial b,.speed-dial small{position:relative}.speed-dial b{font-size:32px;line-height:1.2;min-width:4ch;text-align:center}.speed-dial small{font-size:9px;color:#d4c3ac;letter-spacing:0}
.speed-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.speed-stats span{padding:6px 8px;border:1px solid #63411f;border-radius:10px;background:#211e1a}.speed-stats small{display:block;color:#bdb2a4;font-size:9px}.speed-stats b{display:block;font-size:15px;line-height:1.3;color:#ffc566}
.speed-next{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 8px;overflow:hidden}.speed-next small{font-size:10px;color:#b6a998}.speed-next strong{font-size:13px;color:#d1c4b3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.speed-question{display:grid;place-items:center;padding:8px 12px;border:1px solid #ff9d34;border-radius:16px;background:linear-gradient(130deg,#282422,#17191c);box-shadow:inset 0 0 18px #ff9d3408;overflow:hidden}.student-challenge-runner .speed-question p{color:#fff9f0;font-family:var(--wml-sans);font-size:clamp(25px,7.5vw,40px);font-weight:750;line-height:1.2;text-align:center;margin:0;overflow-wrap:anywhere}
.speed-input-console{display:grid;grid-template-columns:1fr auto;grid-template-rows:44px auto;gap:7px;position:relative;margin:0}.speed-input-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.student-challenge-runner input{width:100%;height:44px;background:#f9f5ec;color:#171717;border:2px solid #ffac46;border-radius:12px;padding:4px 12px;font-size:26px;font-weight:750;text-align:center;caret-color:transparent;font-variant-numeric:tabular-nums}
.speed-probe-state{display:flex;align-items:center;justify-content:center;color:#d6b98e;font-size:10px;width:52px;line-height:1.4;text-align:center}.speed-keypad{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) 48px;gap:7px}.speed-digits{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-template-rows:repeat(2,minmax(46px,1fr));gap:6px}.speed-tools{display:grid;grid-template-rows:1fr 1fr;gap:6px}
.student-challenge-runner button{min-height:46px;padding:0;border:1px solid #ac6b2a;border-radius:10px;background:linear-gradient(#3c3c40,#25272a);color:#fff7ed;box-shadow:0 2px 0 #0008;font-size:25px;font-weight:700;touch-action:manipulation;cursor:pointer}.student-challenge-runner button:active{background:#68451d;transform:translateY(1px)}.student-challenge-runner .speed-delete{background:#5b331c;font-size:22px}.student-challenge-runner button:focus-visible{outline:3px solid #ffd18c;outline-offset:1px}
.speed-feedback{text-align:center;color:#bba995;font-size:10px;line-height:18px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.speed-feedback.is-correct{color:#ffce79;animation:speed-confirm .22s ease-out}
.student-challenge-runner[data-timer-state="danger"]{--speed-orange:#f27354}.student-challenge-runner[data-timer-state="danger"] .speed-dial{box-shadow:0 0 12px #e8533328}.student-challenge-runner[data-timer-state="danger"] .speed-dial b{color:#ff987e}
.speed-result{padding:24px 18px;border:1px solid var(--student-border);border-radius:var(--student-radius-lg);background:var(--student-surface);text-align:center}.speed-result>small{font-size:10px;letter-spacing:.12em;color:var(--student-primary)}.speed-result h2{font-size:28px;margin:12px 0}.speed-result-score{display:grid;gap:5px;margin:20px 0}.speed-result-score b{font-size:64px;line-height:1.1;color:var(--student-primary)}.speed-result-score span{font-size:11px;color:var(--student-text-muted)}.speed-result>.learning-primary{display:flex;width:100%;margin:18px 0 10px}
@keyframes speed-confirm{from{opacity:.4;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}
@media(max-height:620px){.student-challenge-center[data-runner="active"]{padding:6px 10px calc(86px + env(safe-area-inset-bottom));--student-nav-height:66px}.student-challenge-center[data-runner="active"] .learning-page-head{min-height:30px;margin-bottom:4px}.student-challenge-center[data-runner="active"] .challenge-center-actions button{min-height:30px;padding:4px 8px;font-size:10px}.student-challenge-runner{grid-template-rows:74px 38px 20px minmax(50px,1fr) 150px 15px;gap:5px}.speed-dial{min-width:74px;height:74px;padding:9px}.speed-dial b{font-size:28px}.speed-timer-row strong{font-size:17px}.speed-stats span{padding:4px 6px}.speed-stats b{font-size:13px}.speed-input-console{grid-template-rows:40px auto;gap:6px}.student-challenge-runner input{height:40px;font-size:24px}.speed-digits{grid-template-rows:repeat(2,minmax(46px,1fr));gap:5px}.speed-feedback{line-height:15px;font-size:9px}.speed-question p{font-size:28px}}
@media(max-height:480px){.student-challenge-center[data-runner="active"] .student-tabbar{display:none!important}.student-challenge-center[data-runner="active"]{padding-bottom:max(8px,env(safe-area-inset-bottom))}.student-challenge-runner{grid-template-rows:58px 34px 18px minmax(40px,1fr) 144px 15px}.speed-dial{height:58px;min-width:58px}.speed-dial b{font-size:22px}}
@media(prefers-reduced-motion:reduce){.speed-feedback.is-correct{animation:none}.student-challenge-runner button:active{transform:none}}
