:root{--msh-primary-50:#eff6ff;--msh-primary-100:#dbeafe;--msh-primary-500:#3b82f6;--msh-primary-600:#2563eb;--msh-primary-700:#1d4ed8;--msh-ink:#111827;--msh-muted:#6b7280;--msh-canvas:#f9fafb;--msh-surface:#ffffff;--msh-border:#e5e7eb;--msh-soft:#f3f4f6;--msh-success:#15803d;--msh-danger:#b91c1c;--msh-radius:12px;--msh-radius-lg:16px;--msh-shadow:0 1px 3px rgba(16,24,40,.06);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--msh-ink);background:var(--msh-canvas)}:root{font:14px ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;color:var(--msh-ink);background:var(--msh-canvas)}*{box-sizing:border-box}body{margin:0}.portal{min-height:100vh}.header{height:66px;background:#fff;color:var(--msh-ink);display:flex;align-items:center;gap:12px;padding:0 30px;border-bottom:1px solid var(--msh-border)}.header b{font-size:20px;letter-spacing:-.4px}.header span{font-size:12px;color:var(--msh-muted);letter-spacing:.7px;text-transform:uppercase}button{border:1px solid var(--msh-primary-600);background:var(--msh-primary-600);color:#fff;padding:11px 17px;border-radius:9px;font-weight:650;cursor:pointer}button:hover:not(:disabled){background:var(--msh-primary-700)}button:disabled{opacity:.55;cursor:not-allowed}.signout{margin-left:auto;background:#fff;color:#374151;border-color:#d1d5db;width:auto}.signout:hover:not(:disabled){background:#f9fafb}.center{display:grid;place-items:center;min-height:calc(100vh - 66px);padding:24px}.panel{background:#fff;border:1px solid var(--msh-border);border-radius:var(--msh-radius-lg);padding:25px;box-shadow:var(--msh-shadow)}.auth{width:min(455px,100%);padding:34px}.auth h1{font-size:28px;margin:10px 0}.auth p,.muted{color:var(--msh-muted)}.eyebrow{font-size:11px;letter-spacing:1px;font-weight:700;color:var(--msh-primary-600)}label{display:block;font-weight:600;margin:20px 0 17px;font-size:13px}input,select{display:block;width:100%;margin-top:8px;padding:12px;border:1px solid #d1d5db;border-radius:9px;background:#fff;font:inherit;color:var(--msh-ink)}input:focus,select:focus{outline:2px solid var(--msh-primary-100);border-color:var(--msh-primary-500)}.auth form button{width:100%;margin-top:8px}.alert{padding:12px 14px;border-radius:9px;margin:15px 0;font-size:13px}.error{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.success{background:#f0fdf4;color:#166534;border:1px solid #bbf7d0}.workspace{display:grid;grid-template-columns:250px minmax(0,1fr);min-height:calc(100vh - 66px)}.sidebar{background:#fff;color:var(--msh-ink);border-right:1px solid var(--msh-border);padding:25px 15px}.sidebar .eyebrow{color:#6b7280}.select-label{color:#374151}.sidebar select{font-size:13px}.navactive{background:var(--msh-primary-600);color:#fff;border-radius:9px;padding:12px;font-weight:650}.sidehint{font-size:12px;line-height:1.6;color:#9ca3af;margin-top:32px}.main{padding:30px;max-width:1450px;width:100%}.main h1{font-size:29px;letter-spacing:-.6px;margin:12px 0}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin:24px 0}.stat strong{font-size:26px;display:block;margin-top:15px;overflow-wrap:anywhere}.stat p{color:var(--msh-muted);font-size:13px}.feature-list{margin-top:20px}.feature{display:grid;grid-template-columns:1fr 110px 150px;gap:14px;padding:15px 0;border-bottom:1px solid var(--msh-border);align-items:center;text-transform:capitalize}.feature span:last-child{color:var(--msh-muted);font-size:13px;text-align:right}.feature .on{color:var(--msh-success)}.feature .off{color:var(--msh-danger)}a{color:var(--msh-primary-600)}@media(max-width:850px){.workspace{grid-template-columns:minmax(0,1fr)}.sidebar{padding:15px;border-right:0;border-bottom:1px solid var(--msh-border)}.sidebar .select-label{max-width:400px}.sidehint{display:none}.main{padding:22px}.cards{grid-template-columns:1fr}.feature{grid-template-columns:1fr auto}.feature span:last-child{grid-column:1/-1;text-align:left}}.navlink,.sidebar .navactive{display:block;width:100%;text-align:left;margin:8px 0;border:0;padding:12px;border-radius:9px}.navlink{background:transparent;color:var(--msh-ink)}.navlink:hover{background:var(--msh-primary-50)}.academic-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:12px;align-items:end}.academic-form label{margin:10px 0}.academic-form button{margin-bottom:0;height:44px}.year-list{margin-top:24px}.year-row{display:flex;align-items:center;gap:20px;justify-content:space-between;padding:15px 0;border-bottom:1px solid var(--msh-border)}.year-row p{margin:4px 0}.year-row span{color:var(--msh-muted);font-size:12px}.year-row button{width:auto}@media(max-width:950px){.academic-form{grid-template-columns:1fr 1fr}.year-row{flex-wrap:wrap}}@media(max-width:550px){.academic-form{grid-template-columns:1fr}}.catalog-select{display:flex;flex-direction:column;gap:8px;max-width:310px;margin:18px 0}.catalog-select select{border:1px solid #d1d5db;border-radius:8px;padding:10px;background:#fff}.catalog-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:20px}.catalog-columns>div{min-width:0}.catalog-choice,.catalog-selected{margin:6px;padding:10px 16px;border:1px solid #d1d5db;border-radius:9px;background:#fff;cursor:pointer}.catalog-selected{border-color:#2563eb;background:#eff6ff;color:#1d4ed8}.catalog-columns .academic-form{display:flex;flex-wrap:wrap}.catalog-columns .year-row{margin-top:8px}@media(max-width:780px){.catalog-columns{grid-template-columns:1fr}}.staff-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 18px;align-items:end;margin:22px 0 30px}.staff-form label{margin:0}.staff-form button{height:44px}.staff-toolbar{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-top:24px}.staff-toolbar input{max-width:360px}.staff-scroll{overflow:auto}.staff-table{width:100%;border-collapse:collapse;text-align:left;min-width:720px}.staff-table th,.staff-table td{padding:15px 12px;border-bottom:1px solid var(--msh-border)}.staff-table th{color:var(--msh-muted);background:var(--msh-canvas);font-size:12px;text-transform:uppercase}.staff-table .muted{font-size:12px;margin-top:4px}.staff-table button{padding:8px 12px;font-size:12px}.staff-active{color:#15803d;font-weight:700}.staff-inactive{color:#9a3412;font-weight:700}@media(max-width:900px){.staff-form{grid-template-columns:1fr 1fr}}@media(max-width:600px){.staff-form{grid-template-columns:1fr}.staff-toolbar{flex-direction:column;align-items:stretch}.staff-toolbar input{max-width:none}}.student-history{margin-top:22px;padding:18px;border:1px solid var(--msh-border);background:#f9fafb;border-radius:12px}.student-history .year-row{background:#fff;padding:12px}.student-history form{margin-top:15px}.document-area{border-top:1px solid #e5e7eb;margin-top:24px;padding-top:16px}.document-area h3{margin-bottom:8px}.pager{justify-content:flex-end;margin-top:12px}.import-panel{border:1px solid var(--msh-border);border-radius:var(--msh-radius-lg);padding:4px 20px 20px;margin:8px 0 24px;background:var(--msh-canvas)}.import-panel .staff-toolbar{margin-top:16px}.import-summary{display:flex;flex-wrap:wrap;gap:10px 22px;margin:16px 0;font-size:14px}.import-panel details{margin:8px 0;font-size:13px}.import-panel label.inline{display:flex;gap:8px;align-items:center;margin:0;font-weight:500}.import-panel label.inline input{width:auto}.row-error td{background:#fef2f2}.fees .tabs{display:flex;gap:4px;border-bottom:1px solid var(--msh-border);margin:18px 0 8px;overflow-x:auto}.fees .tab{background:transparent;color:var(--msh-muted);border:0;border-bottom:3px solid transparent;border-radius:0;padding:10px 14px;height:auto;font-weight:650;white-space:nowrap}.fees .tab.on{color:var(--msh-primary-600);border-bottom-color:var(--msh-primary-600)}.fees button.secondary{background:#fff;color:var(--msh-primary-600);border:1px solid var(--msh-primary-600)}.fees button.btn-activate{background:var(--msh-success);border-color:var(--msh-success);color:#fff}.fees button.danger{background:#fff;color:var(--msh-danger);border:1px solid var(--msh-danger)}.fees button.danger-link,.fees button.link{background:none;border:0;padding:0;height:auto;color:var(--msh-primary-600);font-weight:600}.fees button.danger-link{color:var(--msh-danger)}.fees button:disabled{opacity:.55;cursor:not-allowed}.fees .filters{display:flex;gap:10px;flex-wrap:wrap}.fees .filters input{max-width:280px}.fees .filters select{width:auto}.fees .select-label{min-width:200px}.badge{display:inline-block;padding:3px 9px;border-radius:999px;font-size:12px;font-weight:700;vertical-align:middle}.badge-draft{background:var(--msh-soft);color:var(--msh-muted)}.badge-active{background:#dcfce7;color:#166534}.badge-inactive{background:#fef3c7;color:#92400e}.alert.info{background:var(--msh-primary-50);color:var(--msh-primary-700);border:1px solid var(--msh-primary-100)}.alert ul{margin:6px 0 0 18px;padding:0}.fee-editor h2{display:flex;gap:10px;align-items:center;margin:6px 0 2px}.fee-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:22px;align-items:start;margin-top:12px}.fee-sections{display:flex;flex-direction:column;gap:16px;min-width:0}.fee-section{border:1px solid var(--msh-border);border-radius:var(--msh-radius);padding:16px 18px 18px;margin:0;min-width:0;background:#fff}.fee-section legend,.fee-section h3{font-weight:750;font-size:15px;padding:0 6px;margin:0}.fee-section h3{padding:0;margin-bottom:10px}.fee-section[disabled] input,.fee-section[disabled] select,.fee-section[disabled] textarea{background:var(--msh-soft)}.fee-section textarea{width:100%;font:inherit;border:1px solid var(--msh-border);border-radius:9px;padding:10px;box-sizing:border-box}.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 16px;align-items:end;margin-top:8px}.grid3 label{margin:0}label.check{display:flex;gap:8px;align-items:center;font-weight:600;min-height:44px}label.check input{width:auto;margin:0}.field-label{font-weight:650;font-size:13px;margin:14px 0 8px}.chips{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.chip{display:inline-flex;gap:6px;align-items:center;border:1px solid var(--msh-border);border-radius:999px;padding:6px 12px;margin:0;font-weight:600;font-size:13px;cursor:pointer;background:#fff}.chip input{display:none}.chip.on{background:var(--msh-primary-50);border-color:var(--msh-primary-600);color:var(--msh-primary-700)}.staff-table.compact{min-width:640px}.staff-table.compact td,.staff-table.compact th{padding:8px}.staff-table.compact input,.staff-table.compact select{height:38px;padding:6px 8px}.staff-table tr.total td{font-weight:700;background:var(--msh-canvas)}.fee-section>button{margin-top:10px}.inline-add{margin-top:14px;padding-top:12px;border-top:1px dashed var(--msh-border)}.row-actions{display:flex;gap:8px}.fee-summary{position:sticky;top:16px;border:1px solid var(--msh-primary-100);background:var(--msh-primary-50);border-radius:var(--msh-radius-lg);padding:18px}.fee-summary h3{margin:0 0 10px}.fee-summary dl{display:grid;grid-template-columns:1fr auto;gap:8px 12px;margin:0}.fee-summary dt{color:var(--msh-muted)}.fee-summary dd{margin:0;text-align:right;font-variant-numeric:tabular-nums}.fee-summary .strong{color:var(--msh-ink);font-weight:750;font-size:15px}.fee-summary .small,.dup-box .small{font-size:12px}.fee-actions{display:flex;flex-direction:column;gap:8px;margin-top:14px}.fee-actions button{width:100%}.dup-box{margin-top:16px;padding-top:14px;border-top:1px solid var(--msh-primary-100)}.dup-box h4{margin:0 0 8px}@media(max-width:1000px){.fee-layout{grid-template-columns:1fr}.fee-summary{position:static}}@media(max-width:700px){.grid3{grid-template-columns:1fr}}.fees>.staff-toolbar:first-child{margin-top:0}.fees h2{margin-top:0}.fee-section .staff-table.compact td:first-child select{min-width:170px}.fee-section .staff-table.compact td:nth-child(2) input{min-width:110px}.fee-section .staff-table.compact td:nth-child(3) input{width:70px}.fee-section .staff-table.compact td:nth-child(6) select{min-width:120px}.fee-section input:disabled,.fee-section select:disabled,.fee-section textarea:disabled{background:var(--msh-soft);color:var(--msh-muted)}.student-search{position:relative;max-width:560px;margin:8px 0 14px}.student-search input{width:100%}.search-results{position:absolute;z-index:5;left:0;right:0;top:100%;list-style:none;margin:4px 0 0;padding:4px;background:#fff;border:1px solid var(--msh-border);border-radius:var(--msh-radius);box-shadow:0 8px 24px #1018281f}.search-results button{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;background:#fff;color:var(--msh-ink);border:0;border-radius:8px;padding:9px 12px;height:auto;text-align:left;font-weight:500}.search-results button:hover{background:var(--msh-primary-50)}.search-results .muted{font-size:12px}.ledger-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin:8px 0 14px;flex-wrap:wrap}.ledger-head h3{margin:0}.ledger-head p{margin:4px 0 0}.ledger-total{display:flex;flex-direction:column;align-items:flex-end}.ledger-total strong{font-size:24px;color:var(--msh-primary-700)}.plan-card{margin-bottom:16px}.plan-card .staff-toolbar{margin-top:0}.collect-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px 14px;align-items:end;margin-top:14px;padding-top:14px;border-top:1px dashed var(--msh-border)}.collect-form label{margin:0}.concession-form{border-top-style:dotted}.row-overdue td{background:#fff7ed}.due-paid{color:var(--msh-success);font-weight:700}.due-overdue{color:var(--msh-danger);font-weight:700}.due-partial{color:#b45309;font-weight:700}.due-upcoming{color:var(--msh-muted)}.due-cancelled{color:var(--msh-muted);text-decoration:line-through}.receipts-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;margin:8px 0}.receipts-filters label{margin:0}.receipts-filters input,.receipts-filters select{max-width:none;width:100%}.fees td.row-actions{display:table-cell}.fees td.row-actions button{margin-right:6px}.small{font-size:12px}.receipt-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:#11182773;display:flex;flex-direction:column;align-items:center;overflow:auto;padding:24px 12px}.receipt-sheet{position:relative;background:#fff;width:min(760px,100%);border-radius:12px;padding:28px 32px;box-shadow:0 20px 50px #00000040;color:#111827}.receipt-head{display:flex;justify-content:space-between;gap:16px;border-bottom:2px solid var(--msh-primary-600);padding-bottom:12px;margin-bottom:14px}.receipt-head h2{margin:0;color:var(--msh-primary-700)}.receipt-head p{margin:4px 0 0}.receipt-no{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.receipt-no strong{font-size:17px}.receipt-meta{display:grid;grid-template-columns:150px 1fr;gap:6px 12px;margin:10px 0}.receipt-meta dt{color:var(--msh-muted)}.receipt-meta dd{margin:0}.receipt-lines{width:100%;border-collapse:collapse;margin:12px 0;font-variant-numeric:tabular-nums}.receipt-lines th,.receipt-lines td{border:1px solid var(--msh-border);padding:8px 10px;text-align:left}.receipt-lines th{background:var(--msh-canvas);font-size:12px;text-transform:uppercase;color:var(--msh-muted)}.receipt-lines td:nth-child(n+3),.receipt-lines th:nth-child(n+3){text-align:right}.receipt-lines tr.total td{font-weight:800;background:var(--msh-primary-50)}.receipt-words{font-weight:650;font-style:italic;margin:6px 0 12px}.receipt-foot{display:flex;justify-content:space-between;align-items:flex-end;margin-top:36px}.receipt-foot .sign{border-top:1px solid #9ca3af;padding-top:6px;min-width:180px;text-align:center}.receipt-stamp{position:absolute;top:40%;left:50%;transform:translate(-50%,-50%) rotate(-18deg);font-size:64px;font-weight:900;color:#b91c1c2e;border:6px solid rgba(185,28,28,.18);padding:6px 18px;border-radius:12px;pointer-events:none}.receipt-actions{display:flex;gap:10px;margin-top:14px}.receipt-actions button{width:auto;min-width:160px}.receipt-actions button.secondary{background:#fff;color:var(--msh-primary-600);border:1px solid var(--msh-primary-600)}@media print{body *{visibility:hidden}.print-area,.print-area *{visibility:visible}.print-area{position:absolute;left:0;top:0;width:100%;box-shadow:none;border-radius:0;padding:0}.no-print{display:none}.receipt-overlay{position:static;background:none;padding:0}}.fee-dash{--s-collected:#2563eb;--s-due:#eb6834;--grid:#eef0f3}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:10px 0 12px}.kpi{display:flex;flex-direction:column;gap:4px;background:#fff;border:1px solid var(--msh-border);border-radius:var(--msh-radius);padding:14px 16px}.kpi-label{font-size:12px;font-weight:700;letter-spacing:.3px;color:var(--msh-muted);text-transform:uppercase}.kpi-value{font-size:24px;font-weight:800;color:var(--msh-ink);font-variant-numeric:tabular-nums}.kpi-note{font-size:12px;color:var(--msh-muted)}.kpi-warn{border-color:#fed7aa;background:#fff7ed}.kpi-warn .kpi-value{color:#9a3412}.kpi button.link{align-self:flex-start;font-size:12px}.dash-strip{display:flex;flex-wrap:wrap;gap:8px 22px;font-size:13px;margin-bottom:14px}.dash-strip strong{color:var(--msh-ink)}.dash-strip .pending{color:#92400e}.dash-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:16px;margin-bottom:16px}@media(max-width:1000px){.dash-grid{grid-template-columns:1fr}}.legend{display:flex;gap:16px;font-size:12px;color:var(--msh-muted);margin-bottom:6px}.legend span{display:inline-flex;align-items:center;gap:6px}.sw{display:inline-block;width:10px;height:10px;border-radius:3px}.sw.s-due{background:var(--s-due)}.sw.s-collected{background:var(--s-collected)}.month-chart{position:relative}.month-chart svg{width:100%;height:auto;display:block}.month-chart .grid{stroke:var(--grid);stroke-width:1}.month-chart .axis{fill:var(--msh-muted);font-size:11px;font-variant-numeric:tabular-nums}.month-chart path.s-due{fill:var(--s-due)}.month-chart path.s-collected{fill:var(--s-collected)}.month-chart .hover-band{fill:var(--msh-primary-50)}.month-chart rect:focus{outline:none}.chart-tip{position:absolute;top:8px;transform:translate(-50%);background:#fff;border:1px solid var(--msh-border);border-radius:8px;box-shadow:0 6px 18px #1018281f;padding:8px 10px;font-size:12px;display:flex;flex-direction:column;gap:3px;pointer-events:none;white-space:nowrap;color:var(--msh-ink)}.chart-tip span{display:flex;align-items:center;gap:6px;font-variant-numeric:tabular-nums}.hbars{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:12px}.hbar-label{display:flex;justify-content:space-between;gap:8px;font-size:13px;margin-bottom:4px}.hbar-track,.pct-track{height:8px;background:var(--msh-soft);border-radius:4px;overflow:hidden}.hbar-fill,.pct-fill{height:100%;background:var(--msh-primary-600);border-radius:0 4px 4px 0}.pct{display:flex;align-items:center;gap:8px;min-width:120px}.pct .pct-track{flex:1}.pct span{font-size:12px;font-variant-numeric:tabular-nums;width:36px;text-align:right}.report-picker{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 4px}.report-picker .chip{height:auto}.report-totals{display:flex;flex-wrap:wrap;gap:6px 20px;font-size:13px;margin:6px 0 10px}.report-table td.num,.report-table th.num{text-align:right;font-variant-numeric:tabular-nums}a.button-link{display:inline-flex;align-items:center;justify-content:center;height:44px;padding:0 16px;border-radius:9px;border:1px solid var(--msh-primary-600);color:var(--msh-primary-600);background:#fff;font-weight:650;text-decoration:none;align-self:end}.credit-panel{border-color:var(--msh-primary-100);background:var(--msh-primary-50)}.credit-amount{color:var(--msh-primary-700);margin-left:6px}.credit-panel details{margin-top:8px}.credit-panel table{min-width:0;background:#fff}label.check.excess{grid-column:1/-1;color:#92400e}.exams .exam-card{background:#fff;border:1px solid var(--msh-border);border-radius:12px;padding:16px;margin:12px 0}.exams .exam-card h3{margin:0 0 6px}.exams .exam-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;border:0;padding:0;margin:8px 0}.exams .exam-grid label{display:flex;flex-direction:column;gap:4px}.exams details{margin:12px 0}.exams summary{cursor:pointer;font-weight:650;color:var(--msh-primary-600)}.exams .preset-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}.exams .preset{display:flex;flex-direction:column;gap:6px;border:1px solid var(--msh-border);border-radius:10px;padding:12px}.exams .preset button{align-self:flex-start;margin-top:auto}.exams .grade-table input:not([type=checkbox]){min-width:70px}.exams label.check{display:flex;align-items:flex-start;gap:8px;font-weight:500;margin:6px 0}.exams label.check input{width:auto;height:auto;margin-top:3px}.exams .class-chips{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 12px}.exams .chip{background:#fff;color:var(--msh-text,#0f172a);border:1px solid var(--msh-border);border-radius:999px;padding:6px 12px;height:auto;font-weight:600}.exams .chip.on{background:var(--msh-primary-600);border-color:var(--msh-primary-600);color:#fff}.exams .chip-count{display:inline-block;margin-left:6px;min-width:18px;padding:0 5px;border-radius:999px;background:#2563eb1f;font-size:12px}.exams .chip.on .chip-count{background:#ffffff40}.exams .paper-table input:not([type=checkbox]){max-width:120px}.exams .paper-table input[type=date]{max-width:160px}.exams .paper-table tr.off td{color:var(--msh-muted)}.exams .parts{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px;align-items:center}.exams .part{display:inline-flex;gap:4px;align-items:center}.exams .part input:first-child{max-width:190px}.exams .part input:nth-child(2){max-width:70px}.exams .pill{display:inline-block;border-radius:999px;padding:2px 10px;font-size:12px;font-weight:700;background:#eef2f7;color:#334155}.exams .pill.status-scheduled{background:#dbeafe;color:#1d4ed8}.exams .pill.status-locked{background:#fef3c7;color:#92400e}.exams .pill.status-published{background:#dcfce7;color:#166534}.exams .weight.ok strong{color:var(--msh-success)}.exams .weight.bad strong{color:var(--msh-danger)}
