.register-filters{display:flex;flex-wrap:wrap;align-items:end;gap:20px}.register-filters label{flex:1;min-width:160px}.register-filters label:first-of-type{flex:2}.register-legend{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0}.register-badge{display:inline-block;border-radius:8px;padding:7px 12px;font-weight:700;color:#18324d;background:#edf2f7}.status-P,.grade-A{background:#d7f5e5}.status-TI,.status-TJ,.grade-B{background:#fff0b0}.status-FI,.grade-C{background:#ffd5dc}.status-FJ{background:#ffdfbf}.grade-AD{background:#d5eaff}.student-grade-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.grade-register{min-width:1100px}.grade-register select{min-width:65px}.grade-register textarea{min-width:180px}.grade-register td span{white-space:nowrap}.grade-register th:first-child{min-width:180px}@media(max-width:700px){.student-grade-grid{grid-template-columns:1fr}}

.attendance-select{font-weight:600;color:#18324d!important}.attendance-select.status-P,.attendance-select option.status-P{background-color:#d7f5e5!important}.attendance-select.status-TI,.attendance-select.status-TJ,.attendance-select option.status-TI,.attendance-select option.status-TJ{background-color:#fff0b0!important}.attendance-select.status-FI,.attendance-select option.status-FI{background-color:#ffd5dc!important}.attendance-select.status-FJ,.attendance-select option.status-FJ{background-color:#ffdfbf!important}

.student-report-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:24px}.student-report-heading h2{margin:10px 0}.student-report-heading p{margin:0;color:#607c9d}.student-report-table{width:100%;border-collapse:separate;border-spacing:0}.student-report-table caption{text-align:left;padding:0 0 14px;color:#607c9d;font-size:.85rem}.student-report-table thead th{background:#ecf2fa;color:#123456;text-align:center;min-width:150px;max-width:230px;white-space:normal;line-height:1.5}.student-report-table thead th:first-child{min-width:240px;text-align:left}.student-report-table tbody th{background:#f8faff}.student-report-person{display:flex;align-items:center;gap:12px;min-width:220px}.student-report-table td.student-result{text-align:center;padding:22px 16px;border-left:3px solid white}.student-result>strong{display:block;font-size:1.7rem;line-height:1.3}.student-result>span{display:block;margin-top:8px;font-size:.75rem;line-height:1.5}.grade-pending{background:#f0f2f5;color:#6b7c91}.student-course-detail{border-top:1px solid #e1e9f3;padding:18px 0}.student-course-detail summary{display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer}.student-course-detail summary:before{content:'+';color:#1676e9;font-size:1.3rem}.student-course-detail[open] summary:before{content:'-'} .student-course-detail summary>strong{flex:1}.student-activity-grades{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:24px 0}.student-activity-grades>div{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px;background:#f6f9fd;border-radius:10px}.student-activity-grades span{font-size:.85rem}.student-course-conclusion{white-space:pre-wrap;overflow-wrap:anywhere}.student-report-scroll:focus-visible{outline:3px solid #1676e9;outline-offset:4px}@media(max-width:1000px){.student-activity-grades{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.student-activity-grades{grid-template-columns:1fr}.student-report-heading{align-items:start}.student-report-table thead th:first-child{min-width:190px}.student-report-person{min-width:170px}}

/* Compact course-only overview, including classrooms with twelve courses. */
.student-report-table{table-layout:fixed;min-width:0}
.student-report-table thead th,.student-report-table thead th:first-child{min-width:0;max-width:none;text-align:center;padding:14px 6px;font-size:.75rem;overflow-wrap:anywhere;hyphens:auto}
.student-report-table td.student-result{padding:16px 5px;border-left:2px solid white}
.student-report-table td.student-result:first-child{border-left:0}
.student-result>strong{font-size:1.4rem}
.student-result>span{font-size:.65rem;line-height:1.45;overflow-wrap:anywhere}
@media(max-width:1100px){.student-report-table{table-layout:auto}.student-report-table thead th,.student-report-table thead th:first-child{min-width:95px;max-width:150px}}

.student-course-register{min-width:740px;width:100%;text-align:center}.student-course-register th,.student-course-register td{text-align:center}.student-course-register caption{text-align:left;font-size:.8rem;color:#607c9d;padding:16px 0;line-height:1.6}.student-course-register .current-term{background:#f0f6ff}.student-report-detail .register-filters{margin:24px 0}.grade-register{min-width:1350px}
