/* Scoped grade status toolbar and per-project dictation content controls. */
#dictationView .grade-status-strip{margin:8px 0 14px;padding:15px 17px 0;border:1px solid var(--border);border-radius:13px;background:var(--surface);box-shadow:var(--shadow-soft)}
#dictationView .grade-status-strip .statusline{margin:0 0 13px;align-items:center;gap:18px}
#dictationView .grade-status-strip #classSummary{font-size:11px;line-height:1.8;color:var(--muted);min-width:0;overflow-wrap:anywhere}
#dictationView .grade-status-strip .status-actions{gap:16px;flex:none}
#dictationView .grade-status-strip .progress-wrap{min-width:210px;gap:10px}
#dictationView .grade-status-strip .progress{height:6px;width:145px}
#dictationView .grade-status-strip .progress-label{font-size:11px;font-variant-numeric:tabular-nums;white-space:nowrap}
#dictationView .grade-status-strip .batch-correct{font-size:10px;min-height:32px;padding:7px 10px;border-radius:8px}
#dictationView .grade-status-strip .batch-correct:disabled{background:var(--surface-2);border-color:var(--border);color:var(--muted);opacity:.7}
#dictationView .grade-status-strip #gradeEntryCounts{display:flex;flex-wrap:wrap;align-items:center;gap:9px 22px;border-top:1px solid var(--border);min-height:43px;padding:10px 0;margin:0;font-size:11px;color:var(--muted)}
#dictationView .grade-status-strip .grade-strip-count{display:inline-flex;align-items:baseline;gap:8px;white-space:nowrap}
#dictationView .grade-status-strip .grade-strip-count b{font-size:14px;font-weight:650;color:var(--text);font-variant-numeric:tabular-nums}
#dictationView .grade-status-strip .grade-strip-count.pending b{color:var(--primary)}
#dictationView #gradeInputMethods{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 12px;padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}
#dictationView #gradeInputMethods .grade-input-switch{padding:3px;gap:2px;border:0;border-radius:10px;background:var(--surface-2)}
#dictationView #gradeInputMethods .grade-input-method{min-height:34px;padding:7px 14px;border-radius:8px;font-size:12px}
#dictationView #gradeInputMethods .grade-input-method.active{background:var(--surface);box-shadow:0 1px 5px color-mix(in srgb,var(--text) 8%,transparent)}
#dictationView #gradeInputMethods .grade-input-caption{flex:1;font-size:10px;line-height:1.6;color:var(--muted)}
#dictationView #gradeInputMethods .grade-entry-settings{position:relative;flex:none;margin:0 0 0 auto}
#dictationView #gradeInputMethods .grade-entry-settings>summary{display:flex;align-items:center;gap:8px;list-style:none;cursor:pointer;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--muted);font-size:11px;min-height:34px;white-space:nowrap}
#dictationView #gradeInputMethods .grade-entry-settings>summary::-webkit-details-marker{display:none}
#dictationView #gradeInputMethods .grade-entry-settings>summary:focus-visible{outline:2px solid var(--primary);outline-offset:2px}
#dictationView #gradeInputMethods .grade-entry-settings[open]>summary{color:var(--primary);border-color:var(--primary)}
#dictationView #gradeInputMethods .grade-strip-settings-body{position:absolute;right:0;top:calc(100% + 8px);z-index:30;width:330px;max-width:calc(100vw - 40px);padding:17px;border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:0 10px 28px color-mix(in srgb,var(--text) 10%,transparent)}
#dictationView #gradeInputMethods .grade-strip-settings-body>strong{display:block;font-size:12px;margin-bottom:12px;color:var(--text)}
#dictationView #gradeInputMethods .grade-strip-settings-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}
#dictationView #gradeInputMethods .grade-strip-settings-fields .field{min-width:0;font-size:11px}
#dictationView #gradeInputMethods .grade-strip-settings-body .hint{margin:12px 0 0;font-size:10px;line-height:1.8}
@media(max-width:800px){#dictationView .grade-status-strip .statusline{align-items:stretch;gap:10px}#dictationView .grade-status-strip .status-actions{width:100%;justify-content:space-between}#dictationView .grade-status-strip .progress-wrap{min-width:0;flex:1;justify-content:flex-end}#dictationView #gradeInputMethods .grade-input-caption{display:none}}
@media(max-width:540px){#dictationView .grade-status-strip{padding:12px 12px 0}#dictationView .grade-status-strip .status-actions{flex-wrap:wrap;gap:10px}#dictationView .grade-status-strip .progress-wrap{flex-basis:100%;justify-content:space-between}#dictationView .grade-status-strip .progress{width:auto;flex:1}#dictationView .grade-status-strip #gradeEntryCounts{gap:8px 18px}#dictationView #gradeInputMethods{padding:8px;gap:8px}#dictationView #gradeInputMethods .grade-input-method{font-size:11px;padding:7px 10px}#dictationView #gradeInputMethods .grade-entry-settings>summary{font-size:10px;padding:8px}#dictationView #gradeInputMethods .grade-entry-settings[open]{width:100%;margin-left:0}#dictationView #gradeInputMethods .grade-entry-settings[open]>summary{justify-content:flex-end}#dictationView #gradeInputMethods .grade-strip-settings-body{position:static;width:100%;max-width:none;margin-top:10px;box-shadow:none}#dictationView #gradeInputMethods .grade-strip-settings-fields{grid-template-columns:1fr}}

/* Pass entry buttons and outcome colors, scoped to the dictation entry panel. */
#dictationView #dictationPassActions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 12px}
#dictationView #dictationPassActions[hidden]{display:none}
#dictationView #dictationPassActions .dictation-pass-button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:82px;padding:12px;border:1px solid var(--border);border-radius:14px;background:var(--surface);color:var(--text);font:inherit;cursor:pointer}
#dictationView #dictationPassActions strong{font-size:20px}
#dictationView #dictationPassActions span{font-size:12px;color:var(--muted)}
#dictationView #dictationPassActions button:disabled{opacity:.5;cursor:default}
#dictationView #dictationPassActions button:enabled:hover{border-color:var(--primary);background:var(--surface-3)}
#dictationView #dictationPassActions button:focus-visible{outline:2px solid var(--primary);outline-offset:3px}
#dictationView #recentLog .log-result.dictation-repassed,#dictationView #reviewBody .badge.dictation-repassed{color:var(--success)}
