/* V166 stable feature UX + light-black/white design */
:root{--v166-ink:#172033;--v166-black:#20242c;--v166-bg:#f2f4f7;--v166-card:#fff;--v166-gold:#d6a82e;--v166-blue:#2f6df6;--v166-green:#18a66a;--v166-border:#dfe4ea;}
.portal-main{background:var(--v166-bg)!important;color:var(--v166-ink)!important;min-width:0;}
.portal-main .content{background:linear-gradient(180deg,#f7f8fa 0%,#eef1f5 100%)!important;color:var(--v166-ink)!important;}
.portal-main .panel,.portal-main .card,.portal-main .feature,.portal-main .kpi,.portal-main .faculty-summary-card,.portal-main .settings-card{background:#fff!important;color:var(--v166-ink)!important;border:1px solid var(--v166-border)!important;box-shadow:0 8px 24px rgba(22,31,45,.06)!important;}
.portal-main h1,.portal-main h2,.portal-main h3,.portal-main h4,.portal-main h5,.portal-main b,.portal-main strong{color:var(--v166-ink);}
.portal-main p,.portal-main small,.portal-main .muted{color:#667085!important;}
.portal-main input,.portal-main select,.portal-main textarea{background:#fff!important;color:#172033!important;border:1px solid #cfd6df!important;box-shadow:none!important;}
.portal-main input::placeholder,.portal-main textarea::placeholder{color:#98a2b3!important;}
.portal-main .toolbar{background:#fff!important;border:1px solid var(--v166-border)!important;border-radius:14px!important;box-shadow:0 6px 18px rgba(22,31,45,.05)!important;}
.portal-main .btn-primary{background:#20242c!important;color:#fff!important;border-color:#20242c!important;}
.portal-main .btn-primary:hover{background:#101318!important;}
.portal-main .btn-gold{background:linear-gradient(135deg,#e8bd4b,#c99722)!important;color:#fff!important;border-color:#c99722!important;}
.portal-main .btn-soft{background:#fff!important;color:#273142!important;border-color:#cfd6df!important;}
.portal-main .page-head{color:var(--v166-ink)!important;}
.portal-main .lead-table thead th{background:#f5f7fa!important;color:#344054!important;border-bottom:1px solid #dfe4ea!important;}
.portal-main .lead-table td{color:#344054!important;background:#fff!important;border-bottom:1px solid #edf0f3!important;}
.portal-main .lead-table tr:hover td{background:#fafbfc!important;}
/* student management */
.student-workspace-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:16px;}
.student-management-card{background:#fff;border:1px solid #dfe4ea;border-radius:18px;padding:18px;box-shadow:0 8px 24px rgba(22,31,45,.06);}
.student-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px;}
.student-card-top h4{margin:0 0 3px;font-size:17px;color:#172033;}
.student-info-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:16px 0;padding:10px;background:#f5f7fa;border-radius:12px;border:1px solid #e7ebf0;}
.student-info-strip div{display:flex;flex-direction:column;gap:3px;min-width:0}.student-info-strip small{font-size:10px;color:#7a8595!important}.student-info-strip b{font-size:14px;color:#172033!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.student-course-chips{display:flex;gap:6px;flex-wrap:wrap;min-height:26px;margin-bottom:14px}.course-chip{background:#f0f3f7!important;border:1px solid #dbe1e8!important;color:#344054!important;border-radius:999px;padding:5px 9px;font-size:11px;}
.student-card-actions{display:flex;gap:7px;flex-wrap:wrap}.student-card-actions .btn{flex:1;min-width:105px;}
/* user management */
.user-management-panel{overflow:hidden}.user-management-table .actions{flex-wrap:nowrap}.user-kpis{grid-template-columns:repeat(5,minmax(140px,1fr));}
/* attendance */
.attendance-manager-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(320px,.8fr);gap:18px;margin-top:18px}.attendance-student-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px;padding:16px}.attendance-student-card,.attendance-teacher-card{background:#fff;border:1px solid #e1e6ec;border-radius:14px;padding:14px;box-shadow:0 5px 16px rgba(22,31,45,.05)}
.attendance-student-card .student-identity{display:flex;align-items:center;gap:10px}.attendance-student-card .student-identity>div:nth-child(2){flex:1}.attendance-percent{margin-left:auto;background:#eef8f3;color:#168653;padding:6px 9px;border-radius:999px;font-weight:800;font-size:12px}.attendance-mini-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:12px 0}.attendance-mini-stats span{background:#f6f8fa;border:1px solid #e7ebef;border-radius:9px;padding:7px;text-align:center}.attendance-mini-stats b,.attendance-mini-stats small{display:block}.attendance-mini-stats b{color:#172033}.attendance-mini-stats small{font-size:9px;color:#7a8595}.attendance-teacher-list{display:grid;gap:10px;padding:16px}.attendance-teacher-card{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:12px}.attendance-teacher-card>div:first-child{display:flex;flex-direction:column;gap:3px}.attendance-teacher-card>div:nth-child(2){display:flex;gap:8px;flex-wrap:wrap}.attendance-teacher-card>div:nth-child(2) span{font-size:11px;color:#667085;background:#f5f7fa;padding:6px 8px;border-radius:8px}.attendance-search{max-width:220px;padding:9px 11px!important;border-radius:9px!important;}
/* Mock Test: readable light exam/admin feature theme */
.mt-admin-host,.mtx-shell,.mtm-shell{color:#172033!important;}
.mt-admin-host .card,.mt-admin-host .panel{background:#fff!important;color:#172033!important;border-color:#dfe4ea!important;}
.mt-admin-host h2,.mt-admin-host h3,.mt-admin-host h4,.mt-admin-host p,.mt-admin-host span,.mt-admin-host label{color:inherit;}
.mtx-shell{background:#eef1f5!important;}.mtx-header{background:#20242c!important;color:#fff!important;border-bottom:3px solid #d6a82e!important}.mtx-sidebar,.mtx-side-card,.mtx-question,.mtx-main{background:#fff!important;color:#172033!important;border-color:#dfe4ea!important}.mtx-question-text{color:#172033!important;font-weight:600!important}.mtx-option{background:#fff!important;color:#273142!important;border:1px solid #d6dce4!important}.mtx-option.selected{border-color:#2f6df6!important;background:#f4f7ff!important}.mtx-option .mtx-option-text{color:#273142!important}.mtx-option.selected .mtx-option-text{color:#172033!important}.mtx-option .mtx-letter{background:#eef1f5!important;color:#172033!important}.mtx-option.selected .mtx-letter{background:#2f6df6!important;color:#fff!important}.mtx-q-head{border-bottom:1px solid #e5e9ef!important}.mtx-q-footer{color:#667085!important}.mtx-nav{background:#f4f6f8!important;color:#344054!important;border-color:#d7dde5!important}.mtx-nav.answered{background:#dff5e9!important;color:#087443!important;border-color:#a7dfc2!important}.mtx-nav.current{background:#fff1c7!important;color:#8a6400!important;border-color:#d6a82e!important}.mtx-submit,.mtx-submit-final{background:#d6a82e!important;color:#20242c!important}.mtx-progress>div{background:#e4e8ed!important}.mtx-progress i{background:#2f6df6!important}.mt-result-stats-grid .mt-result-stat{background:#f5f7fa;border:1px solid #e1e6ec;border-radius:12px;padding:12px}.mt-result-stat b,.mt-result-stat span{display:block}.mt-result-stat b{font-size:20px;color:#172033}.mt-result-stat span{font-size:11px;color:#667085}.mt-result-percent{background:#eef4ff;border:1px solid #cfe0ff;border-radius:10px;padding:10px;color:#2457b8}
/* keep sidebar position while switching views */
.portal .sidebar{overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;}
/* compact responsive */
@media(max-width:1100px){.user-kpis{grid-template-columns:repeat(3,1fr)}.attendance-manager-grid{grid-template-columns:1fr}.student-workspace-grid{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.portal-main .content{padding:14px!important}.student-workspace-grid{grid-template-columns:1fr}.student-info-strip{grid-template-columns:repeat(2,1fr)}.student-card-actions .btn{min-width:0}.user-kpis{grid-template-columns:repeat(2,1fr)}.attendance-student-grid{grid-template-columns:1fr}.attendance-teacher-card{grid-template-columns:1fr}.attendance-teacher-card>div:nth-child(2){justify-content:flex-start}.attendance-search{max-width:100%;width:100%}.mt-result-stats-grid{grid-template-columns:repeat(2,1fr)!important}.mtx-header{position:sticky!important;top:0!important;z-index:20}.mtx-question{border-radius:14px!important}.mtx-option{min-height:48px!important}}
