/* Training controls use the same palette in light and dark themes. */
.study-directory,.study-row{border-color:var(--line)}
.study-row,.study-row h2,.study-row>span{color:var(--ink)}
.study-row p{color:var(--muted)}
.study-row:hover h2,.study-row:focus-visible h2{color:var(--accent)}
.answer-option:hover:not(:disabled),.answer-option:focus-visible:not(:disabled){background:var(--raised);color:var(--ink);border-color:var(--accent)}
.answer-option:focus-visible,.study-row:focus-visible,.session-finish:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.answer-option:disabled{opacity:1;cursor:default}
.answer-option.correct{background:#10382e;color:#ddfff2;border-color:#28a47d}
.answer-option.incorrect{background:#3d252b;color:#ffe9eb;border-color:#d78287}
.answer-option .choice-letter{background:var(--raised);color:var(--ink)}
.config-panel .segmented{background:var(--raised);border-color:var(--line)}
.config-panel .segmented button{color:var(--ink)}
.config-panel .segmented button.selected{background:var(--surface);color:var(--ink);box-shadow:0 0 0 1px var(--accent)}
.session-top{flex-wrap:wrap;gap:12px}
.session-finish{margin-left:auto;min-height:44px}
.quiz-progress{gap:16px;flex-wrap:wrap}
.feedback summary{color:inherit}
@media(max-width:600px){
 .session-finish{width:100%;margin-left:0}
 .session-meta{flex-wrap:wrap;justify-content:flex-start}
 .quiz-progress{font-size:.875rem}
}

.skip{background:var(--surface);color:var(--ink);border:1px solid var(--accent)}
.skip:not(:focus){clip-path:inset(50%);width:1px;height:1px;overflow:hidden;white-space:nowrap;padding:0}

.mental-session{grid-template-columns:minmax(0,680px);justify-content:center}
.mental-session .quiz-aside{display:none}
.mental-session .question-title{text-align:center;font-size:clamp(1.4rem,5vw,2rem);line-height:1.45;margin:20px 0 24px}
.mental-session .question-title.short-question{font-size:clamp(2rem,8vw,3.5rem);font-variant-numeric:tabular-nums;letter-spacing:-.025em}
.mental-session .question-panel>.eyebrow{font-size:.75rem;text-align:center}
.mental-session .numeric-wrap input{font-size:1.4rem;text-align:center}
.mental-session .input-help{text-align:center;line-height:1.5}
@media(max-width:600px){
 .mental-session .question-panel{padding:12px 0}
 .mental-session .keypad{gap:8px}
 .mental-session .keypad button{min-height:44px;font-size:1.2rem}
}

.mental-session .keypad{grid-template-columns:repeat(4,minmax(0,1fr))}
.mental-session .keypad button{grid-column:auto}
.mental-session .keypad .mental-submit{grid-column:span 3;background:var(--accent);color:var(--bg);font-weight:650}
.mental-path-entry{display:flex;flex-direction:column;gap:8px;padding:22px;margin-bottom:24px;border:1px solid var(--line);border-radius:16px;color:var(--ink);background:var(--raised);text-decoration:none}
.mental-path-entry span{color:var(--muted);font-size:.9rem}
.mental-path{list-style:none;padding:0;max-width:760px}
.mental-path li{border-bottom:1px solid var(--line)}
.mental-path a{display:flex;align-items:center;gap:16px;padding:20px 0;color:var(--ink);text-decoration:none;min-height:76px}
.mental-path a>span:nth-child(2){flex:1}
.mental-path small{display:block;color:var(--muted);margin-top:6px}
.mental-step-number{font-variant-numeric:tabular-nums;color:var(--accent);min-width:24px}
.mental-progress{width:100%;height:8px;accent-color:var(--accent)}
.mental-lesson{max-width:680px;line-height:1.75}
.mental-lesson section{margin:24px 0}
.mental-lesson .button{margin:6px 0;white-space:normal}
.mental-correction{padding-left:24px;line-height:1.7}
.mental-correction li+li{margin-top:12px}
.mental-method-return{margin-top:24px}
.mental-path-entry:focus-visible,.mental-path a:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
@media(max-width:800px){
 .mental-desktop-submit{display:none}
 .mental-session .question-title{margin:12px 0 16px}
 .mental-session .question-panel>.eyebrow{margin-top:0;margin-bottom:8px}
 .mental-session .answer-label{margin-bottom:8px}
 .mental-session .numeric-wrap input{padding:12px}
 .mental-session .input-help{margin:8px 0 12px}
}
