/* V177 — Premium internal portal + E-Book + assignment + Mock Test visual system.
   This file is intentionally loaded LAST so legacy theme layers cannot override it. */
:root{
  --v177-navy:#0b1f36;--v177-navy2:#143451;--v177-gold:#c99a2e;--v177-gold2:#f4e7bd;
  --v177-bg:#f4f7fb;--v177-card:#fff;--v177-text:#172b4d;--v177-muted:#66788c;--v177-line:#dfe6ee;
  --v177-shadow:0 10px 30px rgba(11,31,54,.07);--v177-shadow2:0 18px 50px rgba(11,31,54,.10)
}
/* ===== Premium light portal ===== */
.portal,.portal-main,.content{background:var(--v177-bg)!important;color:var(--v177-text)!important}
.portal-main{margin-left:272px!important;width:calc(100% - 272px)!important;min-height:100vh}
.portal-top{background:rgba(255,255,255,.96)!important;color:var(--v177-text)!important;border-bottom:1px solid var(--v177-line)!important;box-shadow:0 5px 22px rgba(11,31,54,.06)!important;backdrop-filter:blur(14px)!important}
.portal-top h2,.portal-top .mobile-brand-mini h2{color:var(--v177-navy)!important}
.portal-top .eyebrow,.page-head .eyebrow{color:#a87912!important}
.mobile-profile-btn{background:#fff!important;color:var(--v177-navy)!important;border-color:var(--v177-line)!important}
.content{padding:30px!important;max-width:1600px!important}
.page-head h3,.page-head h2{color:var(--v177-navy)!important}
.page-head p,.page-head small{color:var(--v177-muted)!important}
/* Sidebar remains dark for premium contrast */
.sidebar{background:linear-gradient(180deg,#0a1c30,#071321)!important;border-right:1px solid rgba(255,255,255,.07)!important;box-shadow:10px 0 32px rgba(11,31,54,.10)!important}
.side-link{color:#b9c8d8!important}.side-link:hover{background:rgba(255,255,255,.07)!important;color:#fff!important}.side-link.active{background:linear-gradient(90deg,rgba(201,154,46,.18),rgba(201,154,46,.04))!important;color:#fff!important;box-shadow:inset 3px 0 #d7ad45!important}
.menu-label{color:#71859b!important}.sidebar-profile{background:#10253b!important}.sidebar-profile:hover,.sidebar-profile.active{background:#16304b!important;border-color:rgba(215,173,69,.45)!important}
/* All internal cards */
.portal-main .card,.portal-main .panel,.portal-main .kpi,.portal-main .feature,.portal-main .workspace-card,.portal-main .quick-panel,
.portal-main .settings-card,.portal-main .faculty-summary-card,.portal-main .expense-panel,.portal-main .fee-panel,.portal-main .ledger-panel,
.portal-main .result-card,.portal-main .exam-calendar-card,.portal-main .exam-card,.portal-main .task-card,.portal-main .live-card,
.portal-main .subject-access-card,.portal-main .assignment-box,.portal-main .collection,.portal-main .resource-card,.portal-main .folder-card,
.portal-main .course-card,.portal-main .course-tile,.portal-main .mini-course-card,.portal-main .person-card,.portal-main .student-management-card,
.portal-main .student-course-tile-v160,.portal-main .student-unique-panel-v160,.portal-main .portal-tile,.portal-main .student-course-summary-card-v160{
  background:#fff!important;color:var(--v177-text)!important;border:1px solid var(--v177-line)!important;box-shadow:var(--v177-shadow)!important
}
.portal-main .panel-head{background:#fff!important;border-bottom:1px solid var(--v177-line)!important}
.portal-main .panel-head h4,.portal-main .panel-head b,.portal-main .panel-head strong,.portal-main .card h4,.portal-main .card h3,
.portal-main .workspace-card h4,.portal-main .person-card b,.portal-main .student-management-card h4{color:var(--v177-navy)!important}
.portal-main .panel-head small,.portal-main .muted,.portal-main .panel p,.portal-main .card p{color:var(--v177-muted)!important}
.portal-main .panel-body{color:var(--v177-text)!important}
.portal-main .kpi{position:relative;overflow:hidden;border-radius:16px!important}.portal-main .kpi:after{background:rgba(201,154,46,.10)!important}.portal-main .kpi strong{color:var(--v177-navy)!important}.portal-main .kpi span{color:var(--v177-muted)!important}.portal-main .kpi .kpi-icon{background:#f5efdd!important;color:#9a7113!important}
/* Forms */
.portal-main .field label{color:#334e68!important}.portal-main .field input,.portal-main .field select,.portal-main .field textarea,
.portal-main .toolbar input,.portal-main .toolbar select,.portal-main .crm-toolbar select,.portal-main .crm-search,
.portal-main input.input,.portal-main select.input,.portal-main textarea.input{
  background:#fff!important;color:#172b4d!important;border:1px solid #cfd9e4!important;border-radius:10px!important
}
.portal-main .field input::placeholder,.portal-main .field textarea::placeholder{color:#8a9aac!important}.portal-main .field input:focus,.portal-main .field select:focus,.portal-main .field textarea:focus{border-color:#c99a2e!important;box-shadow:0 0 0 3px rgba(201,154,46,.12)!important}
.portal-main .notice{background:#f7fafc!important;color:#425b73!important;border:1px solid #dfe7ef!important}.portal-main .btn-soft{background:#f2f5f8!important;color:#183653!important;border:1px solid #d9e2eb!important}.portal-main .btn-primary{background:#0b1f36!important;color:#fff!important}.portal-main .btn-gold{background:linear-gradient(135deg,#d7ad45,#bd8c20)!important;color:#10233a!important;box-shadow:0 7px 16px rgba(201,154,46,.16)!important}.portal-main .btn-danger{background:#fff0f0!important;color:#b42318!important;border:1px solid #f5caca!important}
/* Tables */
.portal-main table{background:#fff!important;color:var(--v177-text)!important}.portal-main th{background:#f7f9fc!important;color:#52677b!important;border-bottom:1px solid var(--v177-line)!important}.portal-main td{color:#243b53!important;border-bottom:1px solid #edf1f5!important}.portal-main tr:hover td{background:#fbfcfe!important}
/* Course cards / descriptions */
.course-card{overflow:hidden}.course-card h4{color:var(--v177-navy)!important}.course-description-formatted{color:#445c73!important}.course-description-formatted .course-desc-intro{color:#425b73!important}.course-description-formatted .course-desc-heading{color:var(--v177-navy)!important}.course-description-formatted li{background:#f8fafc!important;color:#425b73!important;border:1px solid #edf1f5!important}
/* ===== Assignment modal: guaranteed full list + real scrolling ===== */
#assignStudent.modal-backdrop{z-index:10050!important}
#assignStudent .assign-student-modal{width:min(820px,calc(100vw - 24px))!important;max-width:820px!important;height:min(88vh,760px)!important;max-height:88vh!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;background:#fff!important;border:1px solid var(--v177-line)!important;border-radius:20px!important;box-shadow:0 30px 90px rgba(11,31,54,.22)!important}
#assignStudent .modal-head{flex:0 0 auto!important;background:#fff!important;border-bottom:1px solid var(--v177-line)!important;color:var(--v177-navy)!important}
#assignStudent .modal-body.assign-student-body{flex:1 1 auto!important;min-height:0!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;background:#fff!important;padding:16px 18px 10px!important}
#assignStudent .assign-student-top{flex:0 0 auto!important;display:grid!important;grid-template-columns:minmax(0,1fr) 230px!important;gap:12px!important}
#assignStudent .assign-student-list{flex:1 1 0!important;min-height:220px!important;height:auto!important;max-height:none!important;overflow-y:scroll!important;overflow-x:hidden!important;display:block!important;margin-top:12px!important;padding:8px!important;background:#f6f8fb!important;border:1px solid #dce4ec!important;border-radius:14px!important;scrollbar-width:thin!important}
#assignStudent .assign-student-list::-webkit-scrollbar{width:12px!important}#assignStudent .assign-student-list::-webkit-scrollbar-thumb{background:#9aaabd!important;border-radius:20px!important;border:3px solid #f6f8fb!important}#assignStudent .assign-student-list::-webkit-scrollbar-track{background:#edf2f7!important;border-radius:20px!important}
#assignStudent .assign-student-row{display:grid!important;grid-template-columns:22px 40px minmax(0,1fr) 26px!important;align-items:center!important;gap:10px!important;min-height:58px!important;margin:3px 0!important;padding:10px 12px!important;background:#fff!important;border:1px solid transparent!important;border-radius:11px!important;color:var(--v177-text)!important;cursor:pointer!important}
#assignStudent .assign-student-row:hover{background:#f9fbfd!important;border-color:#d5dee8!important}#assignStudent .assign-student-row:has(input:checked){background:#fffaf0!important;border-color:#d9bd72!important}
#assignStudent .assign-student-info b{color:#102a43!important;font-size:14px!important}.assign-student-info small{color:#718096!important}.assign-student-avatar{background:#0b1f36!important;color:#f4d47b!important}.assign-student-check{color:#16855b!important}
#assignStudent .modal-foot{flex:0 0 auto!important;background:#fff!important;border-top:1px solid var(--v177-line)!important}
/* ===== E-Book ===== */
.ebook-student-resource-card{background:#fff!important;color:#17324d!important;border:1px solid #dfe7ef!important;box-shadow:0 5px 16px rgba(11,31,54,.05)!important}.ebook-student-resource-card:hover{border-color:#d1ad4b!important;box-shadow:0 10px 24px rgba(11,31,54,.08)!important}.ebook-student-resource-card .ebook-resource-card-copy b{color:#102a43!important}.ebook-student-resource-card .ebook-resource-card-copy small{color:#718096!important}
.student-chapter-row{background:#fff!important;border:1px solid #dfe7ef!important;box-shadow:0 7px 20px rgba(11,31,54,.05)!important;border-radius:16px!important;grid-template-columns:46px minmax(0,1fr) auto!important;gap:24px!important;padding:18px 20px!important}.student-chapter-info b{color:#102a43!important}.student-chapter-info small{color:#718096!important}.student-chapter-actions{gap:18px!important}.student-chapter-actions .btn-chapter-action{min-width:150px!important}
/* Subject folder management */
.folder-card{color:#17324d!important}.folder-card .folder-main b{color:#102a43!important}.folder-card .folder-main small{color:#718096!important}.folder-card:hover{border-color:#d0aa43!important;box-shadow:0 12px 28px rgba(11,31,54,.08)!important}
/* PDF viewer */
.protected-pdf-shell{background:#fff!important;border:1px solid #dfe7ef!important;box-shadow:0 30px 90px rgba(0,0,0,.30)!important}.protected-pdf-head{background:#fff!important;color:#102a43!important;border-bottom:1px solid #dfe7ef!important}.protected-pdf-head h3{color:#102a43!important}.protected-pdf-stage{background:#e8edf3!important}.protected-pdf-foot{background:#f7f9fc!important;color:#66788c!important;border-top:1px solid #dfe7ef!important}
/* Notes viewer/studio */
.ebook-note-view-modal,.ebook-note-editor-modal{background:#fff!important;color:#172b4d!important}.ebook-note-view-modal .modal-head,.ebook-note-editor-modal .modal-head{background:#fff!important;color:#102a43!important;border-bottom:1px solid #dfe7ef!important}.ebook-note-rendered{background:#fff!important;color:#243b53!important;line-height:1.75!important;font-size:16px!important}.ebook-note-rendered h1,.ebook-note-rendered h2,.ebook-note-rendered h3,.ebook-note-rendered h4{color:#102a43!important}.ebook-note-rendered p,.ebook-note-rendered li{color:#243b53!important}.ebook-native-editor{background:#fff!important;border:1px solid #d7e0e9!important;border-radius:12px!important;overflow:hidden}.ebook-native-toolbar{background:#f7f9fc!important;border-bottom:1px solid #dfe7ef!important}.ebook-native-toolbar button,.ebook-native-toolbar select{background:#fff!important;color:#17324d!important;border-color:#d5dee8!important}.ebook-native-content{background:#fff!important;color:#172b4d!important;min-height:320px!important}
.notes-seo-grid .field label{color:#334e68!important}.ebook-public-toggle{background:#f8fbfe!important;border:1px solid #dfe7ef!important;color:#17324d!important}
/* ===== Mock Test Question Bank: readable white + compact ===== */
body:has(.mtm-shell),body:has(.mtx-shell){background:#f4f7fb!important;color:#172b4d!important}
body:has(.mtm-shell) .content,body:has(.mtx-shell) .content{background:#f4f7fb!important}
.mt-qbank-card,.mt-qbank-question-card{background:#fff!important;color:#172b4d!important;border:1px solid #dfe7ef!important;border-radius:16px!important;box-shadow:0 8px 24px rgba(11,31,54,.06)!important}
.mt-qbank-question-text,.mt-qbank-question-card h4{color:#102a43!important;background:transparent!important;font-weight:800!important}.mt-qbank-type,.mt-qbank-number{color:#102a43!important}.mt-qbank-option{background:#f8fafc!important;color:#243b53!important;border:1px solid #dfe7ef!important}.mt-qbank-option-text{color:#243b53!important}.mt-qbank-explanation{background:#f7f9fc!important;color:#243b53!important;border-left:3px solid #c99a2e!important}.mt-qbank-explanation-title{color:#9a7113!important}.mt-qbank-explanation-text{color:#425b73!important}.mt-qbank-footer{background:#fff!important;border-top:1px solid #e5ebf1!important;color:#52677b!important}.mt-qbank-marks{color:#16855b!important}.mt-qbank-negative{color:#dc2626!important}
.mtm-shell,.mtx-shell{background:#f4f7fb!important;color:#172b4d!important}.mtm-header,.mtx-header{background:#fff!important;color:#102a43!important;border-bottom:1px solid #dfe7ef!important;box-shadow:0 5px 18px rgba(11,31,54,.06)!important}.mtm-question-card,.mtx-question{background:#fff!important;color:#172b4d!important;border:1px solid #dfe7ef!important;box-shadow:0 10px 30px rgba(11,31,54,.07)!important}.mtm-question-text,.mtx-question-text,.mtx-q-title{color:#102a43!important}.mtm-option,.mtx-option{background:#f8fafc!important;color:#243b53!important;border:1px solid #d8e1ea!important}.mtm-option-text,.mtx-option-text{color:#243b53!important}.mtm-sidebar,.mtx-sidebar,.mtm-navigator,.mtx-nav{background:#fff!important;border-color:#dfe7ef!important;color:#17324d!important}.mtm-timer,.mtx-timer{background:#fff7df!important;color:#8a6500!important;border:1px solid #ecd493!important}
/* Compact all internal modals; do not make the whole screen unusable */
.portal-main ~ .modal-backdrop .modal,.modal-backdrop .modal{max-height:90vh!important;border-radius:18px!important;box-shadow:0 28px 90px rgba(11,31,54,.22)!important}.modal-backdrop .modal-head{padding:16px 20px!important}.modal-backdrop .modal-body{padding:18px 20px!important}.modal-backdrop .modal-foot{padding:12px 20px!important}.modal-backdrop .modal h3{font-size:20px!important}.modal-backdrop .field textarea{min-height:82px!important}
/* Preserve full-height workspace dialogs */
#courseWorkspace .course-workspace{max-height:94vh!important}.course-workspace-body{min-height:0!important}
@media(max-width:900px){.portal-main{margin-left:0!important;width:100%!important}.content{padding:20px 16px 90px!important}#assignStudent .assign-student-top{grid-template-columns:1fr!important}.student-chapter-row{grid-template-columns:42px minmax(0,1fr)!important}.student-chapter-actions{grid-column:1/-1;justify-content:flex-start!important;margin-left:0!important;gap:10px!important}.student-chapter-actions .btn-chapter-action{flex:1!important;min-width:0!important}}
@media(max-width:600px){#assignStudent .assign-student-modal{width:calc(100vw - 14px)!important;height:90vh!important}#assignStudent .assign-student-list{min-height:180px!important}.content{padding:16px 10px 86px!important}.page-head{align-items:flex-start!important;flex-direction:column!important}.page-head .actions{width:100%}.page-head .actions .btn{flex:1}.portal-main .kpi-grid{grid-template-columns:1fr 1fr!important}.modal-backdrop .modal-body{padding:14px!important}.modal-backdrop .modal-head{padding:14px!important}.modal-backdrop .modal-foot{padding:10px 14px!important}.student-chapter-actions .btn-chapter-action{flex:none!important;width:100%!important}.ebook-note-rendered{font-size:15px!important}}
#assignStudent .assign-student-row.is-disabled{opacity:.58;cursor:not-allowed;background:#f3f5f7!important}#assignStudent .assign-student-row.is-disabled:hover{border-color:transparent!important;background:#f3f5f7!important}#assignStudent .assign-student-row.is-disabled input{cursor:not-allowed}
