[hidden]{display:none!important}
.auth-screen{max-width:420px;margin:64px auto;padding:0 24px}
.auth-screen h1{font-size:24px;margin:0 0 24px}
.auth-form{display:grid;gap:18px}
.auth-form label,.staff-form label{display:grid;gap:7px;font-size:13px;color:#475569}
.auth-form input,.staff-form input,.staff-form select{width:100%;min-width:0;box-sizing:border-box}
.auth-form button[type=submit]{margin-top:6px;min-height:40px}
.auth-error{color:#b42318;font-size:13px;line-height:1.5;margin:0}
.staff-identity{display:flex;align-items:center;gap:12px;font-size:13px}
.staff-identity button{font-size:12px;min-height:30px;padding:5px 8px;white-space:nowrap}
.staff-dialog{box-sizing:border-box;width:min(520px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:24px;border:1px solid var(--line);border-radius:8px;background:white;color:var(--text);overflow:auto}
.staff-dialog::backdrop{background:#0005}
.staff-dialog-head,.staff-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.staff-dialog-head{margin-bottom:18px}
.staff-dialog-head h2,.staff-dialog-head h3{font-size:18px;margin:0}
.staff-panel-head h2{font-size:22px;margin:0}
.staff-panel-head{margin-bottom:18px}
.staff-form{display:grid;gap:16px}
.staff-form .staff-check{display:flex;align-items:center;gap:8px}
.staff-check input{width:16px;height:16px;margin:0;flex:none}
.staff-classes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;border:1px solid var(--line);padding:12px;max-height:220px;overflow:auto}
.staff-classes legend{font-size:13px;color:#475569;padding:0 5px}
.staff-classes label{overflow-wrap:anywhere;min-width:0}
.staff-subtabs{display:flex;gap:6px;padding-bottom:12px;border-bottom:1px solid var(--line);margin-bottom:16px}
.staff-subtabs button{background:transparent;color:#64748b;border:0;min-height:32px;padding:5px 12px}
.staff-subtabs button.active{background:#e6eeff;color:#1e4fa3}
.staff-filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:14px}
.staff-filters input{max-width:280px;width:100%;min-width:0}.staff-filters select{width:140px}
.staff-table{width:100%;border-collapse:collapse;font-size:13px;table-layout:fixed}
.staff-table th,.staff-table td{padding:12px;text-align:left;border-bottom:1px solid var(--line);overflow-wrap:anywhere;vertical-align:middle}
.staff-table th{font-weight:500;color:#64748b;background:#f7f9fb}
.staff-table button{font-size:12px;padding:5px 9px}
.staff-table .staff-status{color:#15803d}.staff-table .staff-status.disabled{color:#64748b}
.staff-log-more{margin-top:14px}
body[data-role=coach] [data-monitor-tab=students],body[data-role=coach] [data-monitor-tab=classes],
body[data-role=coach] [data-edit-student],body[data-role=coach] [data-edit-class],body[data-role=coach] [data-edit-account],body[data-role=coach] [data-open-imports],
body[data-role=coach] #studentIntakeOpenBtn,body[data-role=coach] #studentImportHistoryBtn,body[data-role=coach] #studentClassNewBtn,body[data-role=coach] #studentStatsExport,
body[data-role=coach] #studentStatsRefresh,body[data-role=coach] #studentResumeBtn,body[data-role=coach] #studentEndRoundBtn,
body[data-role=coach] [data-student-recheck],body[data-role=coach] .student-account-start,
body[data-role=coach] [data-monitor-track],body[data-role=coach] [data-monitor-untrack],body[data-role=coach] [data-account-tracking-toggle],body[data-role=coach] [data-account-follow],
body[data-role=coach] .monitor-account-hover-actions,body[data-role=coach] .monitor-account-batch-launcher,body[data-role=coach] .monitor-work-batch-launcher,
body[data-role=coach] [data-account-scope=deleted],body[data-role=coach] [data-account-refresh],body[data-role=coach] [data-account-batch-mode],
body[data-role=coach] #monitorStartToolBtn,body[data-role=coach] #monitorStopToolBtn,body[data-role=coach] .monitor-setup-actions,
body:not([data-role=admin]) #monitorAutoTrackingSettingsBtn,
body:not([data-role=admin]) #monitorRefreshAccountsBtn,body:not([data-role=admin]) #monitorRefreshTrackedBtn,
body:not([data-role=admin]) [data-account-batch-mode=delete],body:not([data-role=admin]) [data-account-delete],body:not([data-role=admin]) [data-account-restore],
body:not([data-role=admin]) [data-account-restore-single],body:not([data-role=admin]) [data-account-batch-mode=restore],
body:not([data-role=admin]) #studentResumeBtn,body:not([data-role=admin]) #studentEndRoundBtn,
body:not([data-role=admin]) [data-job-resume],body:not([data-role=admin]) [data-job-end],
body:not([data-role=admin]) [data-monitor-tab=staff]{display:none!important}
@media(max-width:650px){
 .student-topbar{flex-wrap:wrap;gap:12px}.staff-identity{width:100%;justify-content:flex-end;gap:8px}.staff-identity>span{margin-right:auto;overflow-wrap:anywhere;min-width:0}
 .auth-screen{margin-top:36px}.staff-dialog{padding:18px}.staff-classes{grid-template-columns:1fr}.staff-table{min-width:650px}
}
