/* Explicit foregrounds prevent light-on-light actions in every design mode. */
.students-header .student-actions .btn.secondary {color:var(--text,#16334b)!important;background:var(--card,#fff)!important;border:1px solid var(--line,#cbd9e7)!important;opacity:1!important;-webkit-text-fill-color:currentColor!important}
.student-actions{flex-wrap:wrap;gap:10px}.student-actions .btn{min-height:44px;white-space:normal}
.admin-directory{margin-top:20px}.admin-account{display:flex;gap:16px;align-items:center;padding:20px 0;border-bottom:1px solid var(--line,#dce6ef)}.admin-account>div{flex:1;min-width:0}.admin-account small{display:block;margin-top:5px}.admin-account p{font-size:13px;line-height:1.7;margin:8px 0;overflow-wrap:anywhere}
.admin-fields,.permission-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.admin-fields label,.permission-grid label,.report-controls>label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:600}.admin-check{display:flex!important;flex-direction:row!important;align-items:center;gap:9px;margin:16px 0;font-size:14px}.admin-check input{width:18px;height:18px;flex-shrink:0}.permission-grid{margin:20px 0}.permission-grid[hidden]{display:none}.permission-grid label{padding:12px;border:1px solid var(--line,#dce6ef);border-radius:12px}
.report-controls{display:flex;flex-wrap:wrap;gap:14px;align-items:end}.report-controls>label{flex:1;min-width:135px}.report-controls .select,.report-controls .input{width:100%;box-sizing:border-box}.report-student-filters>label:first-child{flex:2}.report-presets,.report-links{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:16px 0}.report-method{font-size:13px;line-height:1.65;padding:14px 0;border-bottom:1px solid var(--line,#dce6ef)}.report-document-title{margin:20px 0}.report-document-title small{color:var(--muted,#62778b)}.report-table210{min-width:650px}.report-risk-label{display:block;color:#a63c1a;font-size:11px;margin-top:5px}.report-attention td:first-child{border-left:3px solid #d99121}.report-subjects210{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.report-subjects210>div{padding:16px;border:1px solid var(--line,#dce6ef);border-radius:12px}.report-workspace h3{margin-top:24px}
@media(max-width:680px){.admin-fields,.permission-grid{grid-template-columns:1fr}.admin-account{flex-wrap:wrap}.admin-account .btn{width:100%}.report-controls>label{min-width:calc(50% - 14px)}.students-header .student-actions{display:flex!important;width:100%}.students-header .student-actions .btn{flex:1 1 140px;font-size:13px}.report-student-filters>label:first-child{min-width:100%}}
@media print{body{background:white!important;color:#111!important}.side,.top,.sidebar,.topbar,.mobile-nav,.mobile-bottom-nav,.section-header,.report-links,.report-controls,.report-presets,.report-method,.toast,.nav,.mobile-header{display:none!important}.report-workspace{border:0!important;box-shadow:none!important;padding:0!important}.report-workspace .table-wrap{overflow:visible!important}.report-table210{min-width:0;width:100%;font-size:10pt}.report-workspace .stats{display:grid;grid-template-columns:repeat(4,1fr)}.report-workspace th{position:static!important}.report-workspace tr{break-inside:avoid}.report-subjects210>div{break-inside:avoid}.main,.content,#view{margin:0!important;padding:0!important;width:100%!important}.report-document-title{display:block!important}}

.channel-grid{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:900px){.channel-grid{grid-template-columns:1fr}}

[data-read-only="true"] :is(#newstudent,#newgroup,#setupGroup,#academicYear,#stImportCSV,#newTeacher,.staff-edit,.staff-reset,.staff-delete,#bulkacc,.account-create,.account-reset,.account-toggle,#newSchedule,#saveSchedule,#scheduleImport,#backup,.saveint,.test,#announcementPinned){display:none!important}

@media print{.report-workspace .report-table-wrap{display:block!important}.report-workspace .report-mobile-list{display:none!important}}

/* 2.11: period closure and plan/schedule/fact controls */
.reconcile-controls,.period-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto;gap:9px;align-items:end}.reconcile-controls label,.period-form label{display:grid;gap:5px;font-size:12px;color:var(--muted)}.reconciliation-table td,.reconciliation-table th{white-space:nowrap}.period-controls{margin-top:16px}.period-form{grid-template-columns:150px 130px 150px 150px minmax(220px,1fr) auto;margin:12px 0 16px}.period-reason{min-width:220px}.period-list{display:grid;gap:9px}.period-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;padding:12px 14px;border:1px solid var(--line);border-radius:14px}.period-row>div{display:grid;gap:4px}.period-row>div:last-child{text-align:right;justify-items:end}.period-row small{color:var(--muted)}
@media(max-width:1000px){.period-form{grid-template-columns:1fr 1fr}.period-reason{grid-column:1/-1}.period-form>.btn{grid-column:1/-1}.reconcile-controls{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.reconcile-controls,.period-form{grid-template-columns:1fr}.period-reason,.period-form>.btn{grid-column:auto}.period-row{grid-template-columns:1fr}.period-row>div:last-child{text-align:left;justify-items:start}.reconciliation-table{min-width:840px}}
