@font-face{font-family:Readex Pro;font-style:normal;font-weight:160 700;font-display:swap;src:url(../media/52acd2ded95ac6cd.p.1jif08y1wpazm.woff2)format("woff2");unicode-range:U+6??,U+750-77F,U+870-891,U+897-8E1,U+8E3-8FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC7,U+10EC9-10EEE,U+10EF?,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Readex Pro;font-style:normal;font-weight:160 700;font-display:swap;src:url(../media/4ce61fe437b63f55.1-02adt46su81.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Readex Pro;font-style:normal;font-weight:160 700;font-display:swap;src:url(../media/ecc51711236713ee.3lr0ifk2ws6ue.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Readex Pro;font-style:normal;font-weight:160 700;font-display:swap;src:url(../media/890431f0a0104557.p.33bqs187kml9s.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}.readex_pro_adb3cdbf-module__wL8oFq__className{font-family:Readex Pro,Segoe UI,Tahoma,Arial,sans-serif;font-style:normal}.readex_pro_adb3cdbf-module__wL8oFq__variable{--font-readex:"Readex Pro", Segoe UI, Tahoma, Arial, sans-serif}
:root{--ink:#17251d;--muted:#5d6c63;--line:#dce5de;--soft:#f3f7f4;--surface:#fff;--green:#17643b;--green-dark:#0d4728;--green-soft:#e5f3ea;--blue-soft:#eaf2fb;--gold-soft:#fff4d6;--red-soft:#fae7e5;--shadow:0 8px 30px #203c2a12}*{box-sizing:border-box}html{scroll-behavior:smooth;font-size:17px}body{color:var(--ink);background:#f7f9f7;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.035em;margin-bottom:10px;font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.1}h2{letter-spacing:-.015em;margin-bottom:8px;font-size:1.28rem;line-height:1.25}h3{margin-bottom:5px;font-size:1rem}p{margin-bottom:10px}a{color:var(--green);text-underline-offset:3px;text-decoration-thickness:1px}button,input,select,textarea{font:inherit}button,select{min-height:44px}input,select,textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #b8c8bd;border-radius:8px;padding:10px 12px}textarea{resize:vertical}label{color:#34483a;font-size:.86rem;font-weight:750}button,.primary-link,.secondary-link{cursor:pointer;border:0;border-radius:8px;font-weight:780;text-decoration:none}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible,summary:focus-visible{outline-offset:2px;outline:3px solid #e4a82f}.primary-button,.primary-link{background:var(--green);color:#fff;justify-content:center;align-items:center;min-height:44px;padding:10px 16px;display:inline-flex}.primary-button:hover,.primary-link:hover{background:var(--green-dark)}.secondary-button,.secondary-link,.small-button{min-height:42px;color:var(--green-dark);background:#fff;border:1px solid #9eb3a5;justify-content:center;align-items:center;padding:9px 14px;display:inline-flex}.small-button{min-height:38px;padding:7px 11px}.compact{min-height:40px;padding:8px 13px}.grow{flex:1;min-width:0}.muted,.helper-text,.backend-name{color:var(--muted)}.backend-name{margin-bottom:5px;font-size:.78rem}.eyebrow{color:var(--green);letter-spacing:.1em;text-transform:uppercase;margin-bottom:5px;font-size:.73rem;font-weight:850}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.workspace-shell{grid-template-columns:268px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{color:#fff;background:#153e29;flex-direction:column;height:100vh;padding:22px 16px;display:flex;position:sticky;top:0}.sidebar-brand{color:#fff;align-items:center;gap:12px;padding:4px 7px 20px;text-decoration:none;display:flex}.sidebar-brand>span:last-child{display:grid}.sidebar-brand small{color:#c7ddce;font-size:.68rem}.brand-logo{object-fit:cover;border-radius:11px;flex:none}.brand-mark{color:#23462f;background:#f6ead0;border-radius:11px;place-items:center;width:44px;height:44px;font-size:.82rem;font-weight:900;display:grid}.sidebar-context{background:#ffffff0f;border:1px solid #ffffff29;border-radius:10px;gap:2px;margin:0 7px 20px;padding:14px;display:grid}.sidebar-context span{color:#bcd4c4;text-transform:uppercase;font-size:.73rem;font-weight:750}.sidebar-nav{gap:3px;display:grid}.sidebar-nav a{color:#e6f1e9;border-radius:8px;align-items:center;gap:11px;min-height:44px;padding:8px 10px;font-weight:690;text-decoration:none;display:flex}.sidebar-nav a>span{color:#bcd4c4;border:1px solid #ffffff2e;border-radius:7px;place-items:center;width:28px;height:28px;font-size:.62rem;font-weight:900;display:grid}.sidebar-nav a:hover,.sidebar-nav a.active{color:var(--green-dark);background:#fff}.sidebar-nav a:hover>span,.sidebar-nav a.active>span{background:var(--green-soft);color:var(--green-dark);border-color:#c8d8ce}.sidebar-footer{border-top:1px solid #ffffff24;margin-top:auto;padding:15px 7px 0}.sidebar-footer p{color:#c7ddce;font-size:.76rem}.sidebar-button{color:#fff;background:0 0;border:1px solid #ffffff40;width:100%;min-height:40px}.workspace-main{min-width:0}.page-content{width:min(100% - 48px,1440px);margin:0 auto;padding:38px 0 70px}.mobile-header,.mobile-nav{display:none}.page-title-row{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:26px;display:flex}.page-heading{max-width:900px;margin-bottom:26px}.page-heading .back-link{margin-bottom:16px;display:inline-block}.page-title-row>div:first-child{max-width:820px}.page-title-row p,.page-heading>p:last-child{color:var(--muted)}.date-chip,.count-chip{border:1px solid var(--line);background:var(--surface);border-radius:10px;flex:none;gap:2px;min-width:180px;padding:13px 16px;display:grid}.date-chip span,.count-chip{color:var(--muted);text-transform:uppercase;font-size:.76rem;font-weight:750}.date-chip strong{font-size:.96rem}.count-chip{min-width:auto;color:var(--green-dark);display:inline-flex}.panel,.workspace-section,.detail-pane,.print-report{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:12px}.panel{padding:22px}.workspace-section{padding:26px;scroll-margin-top:20px}.section-heading,.panel-heading{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px;display:flex}.section-heading p:last-child,.panel-heading p{color:var(--muted);margin-bottom:0}.section-heading>span,.panel-heading>span{background:var(--soft);color:var(--muted);border-radius:999px;flex:none;padding:5px 9px;font-size:.76rem;font-weight:800}.metric-strip{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:12px;grid-template-columns:repeat(4,1fr);margin-bottom:26px;display:grid}.metric-strip div{border-right:1px solid var(--line);gap:5px;padding:20px;display:grid}.metric-strip div:last-child{border-right:0}.metric-strip span{color:var(--muted);font-size:.78rem;font-weight:750}.metric-strip strong{font-size:1.65rem}.metric-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.metric-grid div{background:var(--soft);border-radius:9px;gap:2px;padding:13px;display:grid}.metric-grid strong{font-size:1.35rem}.metric-grid span{color:var(--muted);font-size:.76rem}.alert-banner,.info-banner,.announcement-banner{border-radius:10px;justify-content:space-between;align-items:center;gap:22px;margin-bottom:24px;padding:16px 18px;display:flex}.alert-banner{background:var(--gold-soft);border:1px solid #dfc06e}.alert-banner div{display:grid}.alert-banner span{color:#6d5720}.info-banner{background:var(--green-soft);border:1px solid #b8d5c2;margin-top:24px}.parent-notice-stack{gap:12px;margin-bottom:26px;display:grid}.announcement-banner{background:var(--green-soft);box-shadow:var(--shadow);border:2px solid #8fb79c;align-items:flex-start;margin-bottom:0}.announcement-banner.priority-important{background:#fff6dd;border-color:#d0a43c}.announcement-banner.priority-urgent{background:#fff0ee;border-color:#b8443c;box-shadow:0 8px 24px #8c2d2524}.announcement-banner.priority-urgent .eyebrow,.announcement-banner.priority-urgent h2{color:#8a2f28}.announcement-banner h2{margin-bottom:4px}.announcement-banner p:last-child{margin-bottom:0}.notice-response{justify-items:end;gap:10px;min-width:max-content;display:grid}.notice-response form{margin:0}.acknowledged-label{color:#155b31;background:#dcefe2;border-radius:999px;align-items:center;min-height:34px;padding:6px 10px;font-size:.82rem;display:inline-flex}[dir=rtl] .notice-response{justify-items:start}.locale-ar,[lang=ar] .locale-en{display:none}[lang=ar] .locale-ar{display:inline}.success-notice{z-index:5;color:#155b31;box-shadow:var(--shadow);background:#e7f5eb;border:1px solid #77ac88;border-radius:8px;margin:-8px 0 18px;padding:11px 14px;font-weight:800;position:sticky;top:12px}.dashboard-columns{grid-template-columns:minmax(0,1.5fr) minmax(300px,.85fr);align-items:start;gap:22px;display:grid}.dashboard-stack,.workspace-flow,.stacked-work{gap:22px;min-width:0;display:grid}.operations-list,.quick-links,.simple-list,.family-class-list{gap:8px;display:grid}.operations-list a,.quick-links a{border:1px solid var(--line);color:var(--ink);border-radius:9px;align-items:center;gap:12px;padding:12px;text-decoration:none;display:flex}.operations-list .grow{gap:2px;display:grid}.operations-list a:hover,.quick-links a:hover{background:var(--soft);border-color:#92b49e}.operations-list span:last-child{color:var(--muted);font-size:.8rem}.quick-links a{gap:2px;display:grid}.quick-links span{color:var(--muted);font-size:.82rem}.status-dot{border-radius:50%;width:10px;height:10px}.status-dot.complete{background:#2c8b4f}.status-dot.pending{background:#d49625}.compact-details,.details,.detail-metrics{margin:0}.compact-details>div,.details>div{border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;gap:14px;padding:8px 0;display:grid}.compact-details>div:last-child,.details>div:last-child{border-bottom:0}dt{color:var(--muted)}dd{text-align:right;margin:0;font-weight:750}.class-list{gap:10px;display:grid}.class-list-card{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:11px;align-items:center;gap:14px;padding:17px;text-decoration:none;display:flex;box-shadow:0 4px 14px #203c2a0a}.class-list-card:hover{box-shadow:var(--shadow);border-color:#88aa94}.class-list-card h3{font-size:1.08rem}.class-list-card p{margin-bottom:2px}.open-label{color:var(--green);white-space:nowrap;font-size:.82rem}.subject-tag{color:#264233;white-space:nowrap;border-radius:6px;align-items:center;width:fit-content;min-height:26px;padding:4px 8px;font-size:.68rem;font-weight:850;display:inline-flex}.subject-tag.arabic{background:var(--gold-soft)}.subject-tag.quran{background:var(--blue-soft)}.subject-tag.islamic-studies{background:var(--green-soft)}.schedule-list{gap:0;margin:16px 0 20px;padding:0;list-style:none;display:grid}.schedule-list li{border-bottom:1px solid var(--line);justify-content:space-between;gap:15px;padding:12px 0;display:flex}.schedule-list .break{color:var(--muted);font-size:.85rem}.section-nav{z-index:4;border:1px solid var(--line);width:fit-content;box-shadow:var(--shadow);background:#fffffff5;border-radius:10px;gap:4px;margin:-8px 0 22px;padding:5px;display:flex;position:sticky;top:10px}.section-nav a{color:var(--ink);border-radius:7px;padding:8px 12px;font-size:.82rem;font-weight:750;text-decoration:none}.section-nav a:hover{background:var(--green-soft);color:var(--green-dark)}.workspace-columns{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:22px;display:grid}.class-rail{gap:16px;display:grid;position:sticky;top:20px}.class-summary-panel button{width:100%;margin-top:15px}.roster-list{max-height:390px;margin:0;padding-left:27px;overflow:auto}.roster-list li{break-inside:avoid;padding:5px 0}.behavior-key{gap:7px;display:grid}.behavior-key h2{margin-bottom:5px}.rating{color:#17251d;border:1px solid #0000;border-radius:6px;align-items:center;min-height:30px;padding:4px 8px;font-size:.72rem;font-weight:850;display:inline-flex}.rating.red{background:var(--red-soft);border-color:#dba39e}.rating.yellow{background:var(--gold-soft);border-color:#e1c46f}.rating.green{background:var(--green-soft);border-color:#9bc2a8}.rating.blue{background:var(--blue-soft);border-color:#a7c6e5}.rating-key{flex-wrap:wrap;gap:5px;margin:0;display:flex}.behavior-select{border-width:2px;font-weight:800;transition:background-color .15s,border-color .15s}.behavior-select.behavior-red{background:var(--red-soft);border-color:#c96f67}.behavior-select.behavior-yellow{background:var(--gold-soft);border-color:#c69c2f}.behavior-select.behavior-green{background:var(--green-soft);border-color:#6caa7f}.behavior-select.behavior-blue{background:var(--blue-soft);border-color:#6e9fce}.register-summary{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.register-summary span{background:var(--soft);color:var(--muted);border-radius:999px;align-items:baseline;gap:5px;padding:7px 10px;font-size:.78rem;display:flex}.register-summary span.unmarked{background:var(--gold-soft);color:#705716}.register-summary span.complete{background:var(--green-soft);color:#155b31}.register-tools{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.register-tools span{color:var(--muted);font-size:.8rem}.register-completion{border:1px solid var(--line);background:var(--soft);border-radius:10px;gap:9px;margin-top:16px;padding:16px;display:grid}.register-completion label>span{color:var(--muted);font-size:.74rem;font-weight:500}.closed-message{background:var(--gold-soft);color:#705716;border-radius:8px;margin-top:14px;padding:14px;font-weight:750}.checkbox-row{align-items:center;gap:8px;font-weight:700;display:flex}.checkbox-row input{width:18px;height:18px}.quran-range-grid{grid-template-columns:minmax(180px,1fr) 100px minmax(180px,1fr) 100px;gap:10px;display:grid}.quran-range-grid>div{gap:5px;display:grid}.quran-range-grid.extension-only{grid-template-columns:minmax(220px,1fr) 140px}.quran-funnel{gap:16px}.quran-student-picker{align-self:start}.quran-current-card{background:var(--blue-soft);border:2px solid #9bb8d4;border-radius:10px;gap:4px;padding:16px;display:grid}.quran-current-card span,.quran-current-card small{color:#4e6378;font-size:.8rem;font-weight:750}.quran-current-card strong{font-size:1.22rem}.quran-grade-control{border:1px solid var(--line);background:var(--soft);border-radius:10px;gap:7px;padding:17px;display:grid}.quran-grade-heading{justify-content:space-between;align-items:center;gap:18px;display:flex}.quran-grade-heading label{font-size:1rem}.quran-grade-heading output{color:var(--green-dark);align-items:baseline;font-size:2rem;font-weight:900;display:flex}.quran-grade-heading output span{font-size:.85rem}.quran-grade-control input[type=range]{height:38px;accent-color:var(--green);cursor:pointer;border:0;padding:0}.slider-scale{color:var(--muted);justify-content:space-between;font-size:.72rem;font-weight:750;display:flex}.quran-grade-control .helper-text{margin:0}.quran-decision{border:2px solid var(--line);border-radius:10px;padding:15px 17px}.quran-decision h3{margin-top:2px;font-size:1.08rem}.quran-decision p{color:var(--muted);margin:0}.quran-decision.decision-repeat{background:var(--gold-soft);border-color:#caa53e}.quran-decision.decision-extend{background:var(--blue-soft);border-color:#7ea9d0}.quran-decision.decision-pass{background:var(--green-soft);border-color:#70a884}.decision-step{letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;font-weight:900}.repeat-confirmation,.extension-builder{border:1px dashed #9eb3a5;border-radius:9px;gap:7px;padding:14px;display:grid}.repeat-confirmation span,.extension-builder>p{color:var(--muted);margin:0}.classwork-status-form{text-align:right;margin-top:12px}.text-button{color:var(--muted);text-underline-offset:3px;background:0 0;border:0;text-decoration:underline}.quality-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.quality-card{border:1px solid var(--line);background:var(--green-soft);border-radius:9px;gap:3px;padding:16px;display:grid}.quality-card.needs-review{background:var(--gold-soft);border-color:#dfc06e}.quality-card strong{font-size:1.5rem}.check-list{gap:8px;padding-left:20px;display:grid}.notice-list{gap:12px;display:grid}.notice-card{border:1px solid var(--line);background:#fff;border-left:5px solid #9aad9f;border-radius:9px;padding:15px}.notice-card.priority-important{border-left-color:#c69c2f}.notice-card.priority-urgent{border-left-color:#c96f67}.notice-card-heading,.notice-actions{justify-content:space-between;align-items:center;gap:8px;display:flex}.notice-card-heading>div,.notice-actions{gap:6px;display:flex}.notice-actions{justify-content:flex-end;margin-top:10px}.passing-score{color:#155b31}.failing-score{color:#8a2f28}.danger-zone{border-color:#d5a19c}.inline-confirm{align-items:end;gap:10px;display:flex}.report-controls{border:1px solid var(--line);background:var(--soft);border-radius:10px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));align-items:end;gap:8px;margin-bottom:18px;padding:14px;display:grid}.report-controls>div{gap:5px;display:grid}.report-type-control{min-width:min(280px,100%)}.report-filter-note{color:#705716;grid-column:1/-1;margin:2px 0 0;font-size:.82rem}.report-export-form{justify-content:flex-end;align-items:end;gap:10px;margin:-8px 0 18px;display:flex}.report-export-form>div{gap:5px;width:min(320px,100%);display:grid}.report-sheet{min-height:900px}.payment-editor{margin-bottom:18px}.payment-editor summary{cursor:pointer;font-weight:850}.payment-editor form{margin-top:14px}.payment-ledger-table{table-layout:fixed;min-width:1080px;font-size:.74rem}.payment-ledger-table th,.payment-ledger-table td{overflow-wrap:anywhere;padding:6px}.payment-ledger-table th:first-child,.payment-ledger-table th:nth-child(2){width:9%}.payment-ledger-table th:nth-child(3),.payment-ledger-table th:nth-child(4),.payment-ledger-table th:nth-child(5){width:12%}.payment-ledger-table th:nth-child(6){width:11%}.payment-ledger-table .payment-month{text-align:center;white-space:nowrap;width:7%}.payment-entry-cell input{text-align:center;width:100%;min-width:62px;padding:7px 5px}.payment-entry-cell small{color:var(--muted);text-align:center;margin-top:3px;display:block}.subject-roster-report{width:100%;overflow-x:auto}.subject-roster-matrix{table-layout:fixed;font-size:.7rem}.subject-roster-matrix caption{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.subject-roster-matrix thead th{border:1px solid var(--line);text-align:center;vertical-align:top;padding:8px 5px}.subject-roster-matrix thead th>strong,.subject-roster-matrix thead th>span,.subject-roster-matrix thead th>small{display:block}.subject-roster-matrix thead th>strong{line-height:1.2}.subject-roster-matrix thead th>span{margin-top:3px;font-size:.64rem;font-weight:650}.subject-roster-matrix thead th>small{color:var(--muted);margin-top:3px;font-size:.57rem;font-weight:500}.subject-roster-matrix th:first-child{text-align:center;width:28px}.subject-roster-matrix tbody th,.subject-roster-matrix tbody td{border:1px solid var(--line);padding:3px 5px}.subject-roster-person{white-space:nowrap;word-break:keep-all;-webkit-hyphens:none;hyphens:none;min-width:0;line-height:1.2;display:block}.report-header,.report-footer{justify-content:space-between;gap:20px;display:flex}.report-header{border-bottom:2px solid var(--ink);align-items:flex-start;margin-bottom:22px;padding-bottom:14px}.report-header>div:last-child{text-align:right;display:grid}.report-footer{border-top:1px solid var(--line);color:var(--muted);margin-top:24px;padding-top:10px;font-size:.75rem}.auth-shell{background:var(--soft);place-items:center;min-height:100vh;padding:24px;display:grid}.auth-card{border:1px solid var(--line);width:min(100%,460px);box-shadow:var(--shadow);background:#fff;border-radius:14px;padding:28px}.auth-brand{color:var(--ink);margin-bottom:22px}.landing-brand-lockup{align-items:center;gap:18px;display:flex}.landing-brand-lockup img{object-fit:cover;border-radius:16px}.brand-school-name{color:var(--green);margin:-4px 0 7px;font-weight:800}.form-error{background:var(--red-soft);color:#7c2822;border-radius:8px;padding:11px}.recovery-panel{margin-top:18px}.recovery-panel summary{cursor:pointer;font-weight:750}.recovery-panel form{margin-top:12px}html[dir=rtl] body{font-family:Tahoma,Arial,sans-serif}html[dir=rtl] .sidebar{border-left:1px solid #ffffff21;border-right:0}html[dir=rtl] .sidebar-nav a,html[dir=rtl] .class-list-card,html[dir=rtl] .family-class-list article{text-align:right;flex-direction:row-reverse}html[dir=rtl] .data-table th,html[dir=rtl] .data-table td,html[dir=rtl] .table-wrap th,html[dir=rtl] .table-wrap td{text-align:right}html[dir=rtl] dd,html[dir=rtl] .score-block,html[dir=rtl] .report-header>div:last-child{text-align:left}.date-toolbar,.filter-form,.search-form{border:1px solid var(--line);background:var(--soft);border-radius:10px;align-items:end;gap:10px;margin-bottom:18px;padding:14px;display:flex}.date-toolbar label{align-self:center}.date-toolbar select{width:auto;min-width:230px}.form-actions{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;margin-top:15px;padding-top:15px;display:flex}.form-actions span{color:var(--muted);font-size:.8rem}.compact-form{gap:13px;display:grid}.field-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.field-row.four{grid-template-columns:repeat(4,minmax(0,1fr))}.field-row>div{gap:5px;display:grid}.two-panel-grid{grid-template-columns:minmax(220px,.6fr) minmax(0,1.5fr);gap:16px;display:grid}.previous-work{background:var(--soft);border-radius:8px;gap:3px;margin-top:7px;padding:12px;display:grid}.previous-work span,.previous-work small{color:var(--muted)}.create-panel{background:var(--soft);border:1px solid #bfd2c4;border-radius:10px}.create-panel summary{cursor:pointer;color:var(--green-dark);padding:15px 17px;font-weight:800}.create-panel form{padding:0 17px 17px}.selection-grid{grid-template-columns:230px minmax(0,1fr);align-items:start;gap:15px;display:grid}.selection-list{gap:6px;display:grid}.selection-list a{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:8px;gap:2px;padding:11px;text-decoration:none;display:grid}.selection-list a.selected{background:var(--green-soft);border-color:#6ca47c}.selection-list span{color:var(--muted);font-size:.73rem}.table-scroll,.table-wrap{width:100%;overflow-x:auto}.data-table,.table-wrap table,.print-report table{border-collapse:collapse;background:#fff;width:100%}.data-table caption{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.data-table th,.data-table td,.table-wrap th,.table-wrap td,.print-report th,.print-report td{border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;padding:11px 10px}.data-table thead th,.table-wrap thead th{background:var(--soft);color:#3e5145;text-transform:uppercase;letter-spacing:.04em;font-size:.73rem}.data-table tbody th{min-width:175px}.data-table select,.data-table input{min-width:130px}.register-table td:last-child input{min-width:210px}.compact-table{font-size:.88rem}.compact-table th,.compact-table td{padding:8px}.operations-table th>strong,.operations-table td>strong,.operations-table td>small,.operations-table th>small{margin-top:4px;display:block}.table-subject-divider th{border-bottom:2px solid var(--line);background:var(--soft);text-align:left;padding:12px 10px 8px}.table-subject-divider th>span,.table-subject-divider th>small{margin:0;display:inline}.table-subject-divider th>span{font-size:.9rem}.table-subject-divider th>small{color:var(--muted);margin-inline-start:8px;font-size:.68rem;font-weight:600}.list-subject-group+.list-subject-group{margin-top:18px}.list-subject-group>header{border-bottom:2px solid var(--line);justify-content:space-between;align-items:baseline;gap:16px;padding:10px 0 7px;display:flex}.list-subject-group>header h3{margin:0}.list-subject-group>header span{color:var(--muted);font-size:.7rem}.status-label{text-transform:capitalize;border-radius:999px;width:fit-content;margin-top:4px;padding:3px 7px;font-size:.68rem;font-weight:800;display:inline-flex}.status-label.good{background:var(--green-soft);color:#155b31}.status-label.pending{background:var(--gold-soft);color:#705716}.master-detail{grid-template-columns:350px minmax(0,1fr);align-items:start;gap:18px;display:grid}.class-subject-tabs{border-bottom:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));margin:8px 0 22px;display:grid}.class-subject-tabs a{min-height:48px;color:var(--muted);border-bottom:3px solid #0000;justify-content:center;align-items:center;gap:8px;padding:10px 14px;font-weight:750;text-decoration:none;display:flex}.class-subject-tabs a[aria-current=page]{border-bottom-color:var(--green);color:var(--green-dark)}.class-subject-tabs small{min-width:1.6rem;color:inherit;font-variant-numeric:tabular-nums;text-align:center}.master-list{gap:7px;max-height:calc(100vh - 170px);padding-right:3px;display:grid;overflow:auto}.master-list a{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:9px;gap:10px;padding:13px;text-decoration:none;display:flex}.master-list a.selected{background:var(--green-soft);border-color:#6ca47c}.master-list a>div{min-width:0;display:grid}.master-list a span:last-child{color:var(--muted);font-size:.75rem}.detail-pane{padding:25px}.detail-hero{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.detail-metrics{grid-template-columns:repeat(3,1fr);gap:10px;margin:20px 0 24px;display:grid}.detail-metrics div{background:var(--soft);border-radius:9px;padding:13px}.detail-metrics dd{text-align:left;margin-top:3px}.roster-columns{columns:2;gap:36px;margin:0;padding-left:24px}.roster-columns li{break-inside:avoid;padding:5px 0}.calendar-list{gap:7px;display:grid}.calendar-list form{border:1px solid var(--line);border-radius:8px;grid-template-columns:135px 155px minmax(130px,1fr) auto;align-items:center;gap:8px;padding:8px;display:grid}.parent-overview{grid-template-columns:minmax(0,1.4fr) minmax(250px,.65fr);gap:20px;margin-bottom:22px;display:grid}.family-class-list article{border:1px solid var(--line);border-radius:9px;align-items:flex-start;gap:12px;padding:12px;display:flex}.family-class-list h3,.family-class-list p{margin-bottom:3px}.family-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.family-card{border:1px solid var(--line);background:#fff;border-radius:10px;padding:17px}.family-card h3{margin-top:10px}.quran-parent-grade{background:var(--blue-soft);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin:12px 0;padding:10px 12px;display:flex}.quran-parent-grade span{color:#4e6378;font-size:.78rem;font-weight:750}.quran-parent-grade strong{color:#244b6f;font-size:1.25rem}.card-footer{border-top:1px solid var(--line);justify-content:space-between;gap:12px;margin-top:13px;padding-top:10px;font-size:.8rem;display:flex}.teacher-feedback{background:var(--blue-soft);border-radius:8px;margin-top:10px;padding:10px;font-size:.84rem}.parent-two-columns{grid-template-columns:1.2fr .8fr;gap:20px;margin:22px 0;display:grid}.progress-list{gap:8px;display:grid}.progress-list article{border:1px solid var(--line);border-radius:9px;grid-template-columns:1fr auto;gap:14px;padding:13px;display:grid}.progress-list .teacher-feedback{grid-column:1/-1}.progress-list h3,.progress-list p{margin-bottom:3px}.score-block{text-align:right;align-content:center;display:grid}.score-block strong{font-size:1.35rem}.score-block span{color:var(--muted);font-size:.72rem}.rule-note{background:var(--gold-soft);color:#664f16;border-left:4px solid #d8a53d;padding:11px}.simple-list>div{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:10px;display:flex}.simple-list>div:last-child{border-bottom:0}.simple-list>div>div{display:grid}.simple-list span:last-child{color:var(--muted);font-size:.8rem}.change-student{align-items:center;gap:8px;display:flex}.change-student select{min-width:230px}.parent-picker{gap:10px;max-width:600px;display:grid}.empty-state{text-align:center;background:#fafcfb;border:1px dashed #9fb2a4;border-radius:10px;padding:34px 24px}.empty-state h2,.empty-state h3{margin-bottom:6px}.empty-state p{color:var(--muted)}.stack-list,.plain-list,.record-list,.behavior-list{gap:10px;display:grid}.record-editor{border:1px solid var(--line);background:#fff;border-radius:9px}.record-editor summary{cursor:pointer;padding:14px 15px}.record-editor summary>span{gap:3px;display:grid}.record-editor summary small{color:var(--muted)}.record-editor-body{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(240px,.55fr);gap:18px;padding:0 15px 15px;display:grid}.record-editor-body>form{padding-top:15px}.person-row,.plain-list article,.plain-list li,.record-row,.behavior-row{border:1px solid var(--line);background:#fff;border-radius:9px;padding:15px;list-style:none}.person-row{justify-content:space-between;align-items:center;gap:20px;display:flex}.inline-form{align-items:end;gap:8px;display:flex}.placement-grid,.detail-grid,.class-grid,.task-grid,.role-grid,.summary-row,.stat-grid{gap:16px;display:grid}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.placement-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.placement-card,.class-card,.task-card,.role-card{border:1px solid var(--line);background:#fff;border-radius:10px;padding:18px}.section-block{margin-top:24px}.task-grid,.class-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.task-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.task-card,.linked-card{color:var(--ink);text-decoration:none}.task-card{gap:5px;display:grid}.task-card span{color:var(--muted)}.warning-card,.info-card,.notice{border:1px solid var(--line);background:var(--soft);border-radius:9px;justify-content:space-between;align-items:center;gap:15px;margin:16px 0;padding:15px;display:flex}.sensitive-panel{border-left:4px solid #d1a549}.small-link{font-weight:750}.filter-form>div,.search-form{flex:1}.search-form{display:grid}.search-form>div{gap:8px;display:flex}.print-report{padding:28px}.landing-shell{width:min(100% - 36px,1120px);margin:0 auto;padding:54px 0}.brand-header{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:24px;display:flex}.brand-header .subtitle{color:var(--muted)}.privacy-badge{background:var(--green-soft);color:var(--green-dark);border:1px solid #acc5b3;border-radius:999px;padding:8px 11px;font-size:.8rem;font-weight:800}.summary-row{grid-template-columns:repeat(4,1fr);margin-bottom:28px}.summary-row div,.stat-grid div{border:1px solid var(--line);background:#fff;border-radius:9px;padding:16px;display:grid}.summary-row strong,.stat-grid strong{font-size:1.5rem}.summary-row span,.stat-grid span{color:var(--muted)}.role-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.role-grid>.section-heading{grid-column:1/-1}.role-card form{gap:9px;display:grid}.role-number{background:var(--green-soft);width:30px;height:30px;color:var(--green-dark);border-radius:50%;place-items:center;margin-bottom:14px;font-weight:850;display:grid}.preview-mode-banner{background:var(--blue-soft);color:#244d70;border:1px solid #8baed0;border-radius:10px;gap:2px;margin-bottom:18px;padding:12px 15px;display:grid}.preview-mode-banner span{font-size:.82rem}.control-room-toolbar{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.control-room-toolbar .date-toolbar{flex:1}.control-room-refresh{min-height:72px;color:var(--muted);align-items:center;gap:12px;font-size:.78rem;display:flex}.control-room-metrics{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:12px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:22px;display:grid;overflow:hidden}.control-room-metrics>div{border-right:1px solid var(--line);gap:3px;padding:17px 19px;display:grid}.control-room-metrics>div:last-child{border-right:0}.control-room-metrics span{color:var(--muted);font-size:.76rem;font-weight:750}.control-room-metrics strong{font-size:1.55rem}.control-room-metrics .metric-alert{background:var(--red-soft)}.control-room-metrics .metric-warning{background:var(--gold-soft)}.control-room-metrics .metric-live{background:var(--green-soft)}.sunday-sequence{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:12px;grid-template-columns:minmax(180px,.45fr) minmax(0,1.55fr);align-items:center;gap:20px;margin-bottom:20px;padding:18px;display:grid}.sunday-sequence h2{margin:0}.sunday-sequence-track{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.sequence-step{border:1px solid var(--line);background:var(--soft);border-radius:9px;gap:2px;padding:11px 13px;display:grid}.sequence-step span{color:var(--muted);font-size:.68rem;font-weight:800}.sequence-step strong{font-size:.9rem}.sequence-step small{color:var(--muted)}.sequence-step.completed{opacity:.72}.sequence-step.live{background:var(--green-soft);border-color:#4d9564;box-shadow:0 0 0 2px #508f621a}.sequence-step.live span{color:#155b31}.control-room-board{gap:18px;display:grid}.control-room-lane{border:1px solid var(--line);background:#edf2ee;border-radius:12px;min-width:0;padding:14px}.control-room-lane.period-live{background:#edf6f0;border-color:#5f9c72;order:-1;box-shadow:0 0 0 3px #508f621a}.control-room-lane.period-completed{background:#f3f5f3}.control-room-lane.period-upcoming{background:#f7f8f7}.lane-heading{justify-content:space-between;align-items:center;gap:12px;padding:2px 2px 13px;display:flex}.lane-heading>div{gap:6px;display:grid}.lane-heading h2{margin:0;font-size:1rem}.lane-heading>strong{background:#fff;border-radius:50%;place-items:center;width:32px;height:32px;display:grid}.control-class-list{grid-template-columns:repeat(auto-fit,minmax(265px,1fr));gap:10px;display:grid}.control-class-card{border:1px solid var(--line);background:#fff;border-left:5px solid #aab7ae;border-radius:10px;min-width:0;padding:15px;box-shadow:0 3px 12px #1937230d}.control-class-card.tone-good{border-left-color:#3c9258}.control-class-card.tone-live{border-left-color:#23865a;box-shadow:0 4px 18px #23865a21}.control-class-card.tone-warning,.control-class-card.tone-attention{border-left-color:#d29b24}.control-class-card.tone-danger{border-left-color:#bf5149}.control-card-heading{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.control-card-heading h3{margin-bottom:2px;font-size:1.03rem}.operation-state{background:var(--soft);max-width:150px;color:var(--muted);border-radius:999px;flex:none;align-items:center;gap:5px;padding:4px 7px;font-size:.65rem;font-weight:850;line-height:1.2;display:inline-flex}.operation-state>span{background:#8c9b91;border-radius:50%;flex:none;width:7px;height:7px}.operation-state.good,.operation-state.live{background:var(--green-soft);color:#155b31}.operation-state.good>span,.operation-state.live>span{background:#2e8a4e}.operation-state.warning,.operation-state.attention{background:var(--gold-soft);color:#705716}.operation-state.warning>span,.operation-state.attention>span{background:#ca8f18}.operation-state.danger{background:var(--red-soft);color:#832d27}.operation-state.danger>span{background:#bf5149}.control-class-meta{grid-template-columns:1fr 1fr;gap:8px;margin:11px 0;display:grid}.control-class-meta>div{gap:1px;display:grid}.control-class-meta dt{font-size:.68rem}.control-class-meta dd{text-align:left;text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.attendance-pulse{grid-template-columns:repeat(4,1fr);gap:5px;display:grid}.attendance-pulse>div{background:var(--soft);text-align:center;border-radius:7px;gap:1px;padding:7px 5px;display:grid}.attendance-pulse>div.has-exception{background:var(--red-soft);color:#832d27}.attendance-pulse>div.has-unmarked{background:var(--gold-soft);color:#705716}.attendance-pulse strong{font-size:1.05rem}.attendance-pulse span{font-size:.62rem}.absence-list{background:var(--red-soft);color:#7f2c27;border-radius:8px;gap:3px;margin-top:9px;padding:9px;display:grid}.absence-list strong{font-size:.72rem}.absence-list span{font-size:.76rem}.grade-pulse{border-top:1px solid var(--line);gap:5px;margin:11px 0;padding-top:10px;display:grid}.grade-pulse>div:first-child{justify-content:space-between;gap:10px;font-size:.76rem;display:flex}.grade-pulse small{color:var(--muted);font-size:.69rem}.progress-track{background:#e4e9e5;border-radius:999px;height:7px;overflow:hidden}.progress-track>span{border-radius:inherit;background:#4a9362;height:100%;display:block}.control-class-card>.secondary-link{width:100%}.closure-alert{color:#70251f;box-shadow:var(--shadow);background:#fff1ef;border:2px solid #bb4e47;border-radius:12px;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;margin-bottom:22px;padding:19px;display:grid}.closure-alert.compact-closure{grid-template-columns:auto 1fr}.closure-symbol{color:#fff;background:#b8433c;border-radius:50%;place-items:center;width:42px;height:42px;font-size:1.35rem;font-weight:900;display:grid}.closure-alert .eyebrow{color:#8a2f28}.closure-alert h2,.closure-alert p{margin-bottom:3px}.closure-date{text-align:center;background:#fff;border-radius:8px;gap:2px;min-width:155px;padding:10px 12px;display:grid}.closure-date small{text-transform:uppercase;font-size:.68rem;font-weight:800}@media (max-width:1450px){.workspace-columns{grid-template-columns:minmax(0,1fr)}.class-rail{grid-template-columns:repeat(3,minmax(0,1fr));position:static}.roster-list{max-height:260px}.selection-grid{grid-template-columns:200px minmax(0,1fr)}.calendar-list form{grid-template-columns:120px 145px 1fr}.calendar-list button{grid-column:3;justify-self:end}.sunday-sequence{grid-template-columns:1fr}}@media (max-width:900px){.workspace-shell{display:block}.sidebar{display:none}.mobile-header{border-bottom:1px solid var(--line);color:#fff;background:#153e29;justify-content:space-between;gap:15px;padding:14px 18px;display:flex}.mobile-header a{color:#fff;text-decoration:none}.mobile-header span{color:#c7ddce}.mobile-nav{border-bottom:1px solid var(--line);background:#fff;gap:4px;padding:7px 12px;display:flex;overflow-x:auto}.mobile-nav a{color:var(--ink);border-radius:6px;flex:none;padding:8px 10px;font-size:.8rem;font-weight:750;text-decoration:none}.page-content{width:min(100% - 28px,1100px);padding-top:28px}.dashboard-columns,.parent-overview,.parent-two-columns{grid-template-columns:1fr}.metric-strip{grid-template-columns:repeat(2,1fr)}.metric-strip div:nth-child(2){border-right:0}.metric-strip div:nth-child(-n+2){border-bottom:1px solid var(--line)}.family-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.master-detail{grid-template-columns:290px minmax(0,1fr)}.two-panel-grid,.selection-grid{grid-template-columns:1fr}.selection-list{grid-template-columns:repeat(2,minmax(0,1fr))}.class-rail{grid-template-columns:1fr 1fr}.behavior-key{grid-column:1/-1}.field-row.four,.report-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.quran-range-grid{grid-template-columns:1fr 100px}.control-room-toolbar{display:grid}.control-room-refresh{justify-content:space-between;min-height:0;margin:-8px 0 18px}.control-room-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.control-room-metrics>div:nth-child(2){border-right:0}.control-room-metrics>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.sunday-sequence-track{grid-template-columns:1fr}}@media (max-width:640px){html{font-size:16px}.page-content{width:min(100% - 20px,640px);padding-top:22px}.mobile-header,.page-title-row,.page-heading,.section-heading,.panel-heading,.detail-hero,.brand-header,.person-row,.alert-banner,.info-banner,.announcement-banner,.form-actions,.closure-alert{display:grid}.date-chip{width:100%;min-width:0}.metric-strip,.summary-row,.role-grid,.family-card-grid,.detail-grid,.placement-grid,.task-grid,.task-grid.two,.class-grid,.detail-metrics,.class-rail,.field-row,.field-row.four,.selection-list,.quality-grid,.report-controls,.quran-range-grid{grid-template-columns:1fr}.metric-strip div{border-right:0;border-bottom:1px solid var(--line)}.metric-strip div:last-child{border-bottom:0}.class-list-card{flex-wrap:wrap;align-items:flex-start}.open-label{width:100%}.section-nav{width:100%;position:static;overflow-x:auto}.section-nav a{white-space:nowrap}.workspace-section,.panel,.detail-pane{padding:18px}.date-toolbar,.filter-form,.inline-form,.search-form>div,.change-student,.report-export-form{align-items:stretch;display:grid}.record-editor-body{grid-template-columns:1fr}.date-toolbar select,.change-student select{width:100%;min-width:0}.master-detail{grid-template-columns:1fr}.master-list{max-height:340px}.roster-columns{columns:1}.calendar-list form{grid-template-columns:1fr}.calendar-list button{grid-column:1;width:100%}.role-grid>.section-heading{grid-column:1}.control-room-metrics{grid-template-columns:1fr}.control-room-metrics>div{border-right:0;border-bottom:1px solid var(--line)}.control-room-metrics>div:last-child{border-bottom:0}.control-room-refresh{align-items:stretch}.control-card-heading{display:grid}.control-class-list{grid-template-columns:1fr}.operation-state{width:fit-content;max-width:none}.closure-date{text-align:left;min-width:0}}@media print{@page{margin:15mm}@page roster-landscape{size:letter landscape;margin:10mm}body{color:#000;background:#fff;font-size:11pt}.no-print,.sidebar,.mobile-header,.mobile-nav,.section-nav,.class-rail,button,.success-notice{display:none!important}.workspace-shell,.workspace-columns{display:block}.page-content{width:100%;padding:0}.workspace-section,.panel,.print-report{box-shadow:none;border:0;padding:0}.workspace-section{break-before:page}.workspace-section:first-child{break-before:auto}.data-table th,.data-table td{border:1px solid #888;padding:5px}a{color:#000;text-decoration:none}.report-sheet{min-height:auto}.landscape-report{page:roster-landscape}.payment-ledger-table{min-width:0;font-size:7.5pt}.payment-ledger-table th,.payment-ledger-table td{border:1px solid #888;padding:2px 3px}.payment-ledger-table thead{display:table-header-group}.subject-roster-report{overflow:visible}.subject-roster-sheet .report-header{margin-bottom:3mm;padding-bottom:2.5mm}.subject-roster-sheet .report-logo{width:12mm;height:12mm}.subject-roster-sheet .report-header h1{margin:0;font-size:17pt}.subject-roster-sheet .report-header p{margin:1mm 0 0;font-size:7.5pt}.subject-roster-matrix{table-layout:fixed;font-size:7.2pt;line-height:1.08}.subject-roster-matrix thead{display:table-header-group}.subject-roster-matrix thead th{border:.7pt solid #000;padding:1.5mm .9mm}.subject-roster-matrix thead th>span{margin-top:.65mm;font-size:6.8pt}.subject-roster-matrix thead th>small{color:#000;margin-top:.65mm;font-size:5.8pt}.subject-roster-matrix th:first-child{width:6mm}.subject-roster-matrix tbody th,.subject-roster-matrix tbody td{border:.7pt solid #000;height:5.4mm;padding:.45mm .8mm}.subject-roster-person{letter-spacing:-.01em;white-space:nowrap;word-break:keep-all;-webkit-hyphens:none;hyphens:none;font-size:6.8pt;line-height:1.05}.report-footer{position:fixed;bottom:0;left:0;right:0}.page-number:after{content:counter(page)}.single-class-roster-sheet{page:roster-landscape;break-before:avoid;min-height:0;padding:0}.single-class-roster-sheet .report-header{margin-bottom:4mm;padding-bottom:2mm}.single-class-roster-sheet .report-logo{width:12mm;height:12mm}.single-class-roster-sheet .report-header h1{margin:0;font-size:18pt}.single-class-roster-sheet .report-header p{margin:1mm 0 0;font-size:8pt}.single-class-roster-table{table-layout:fixed;width:100%;font-size:9pt;line-height:1.1}.single-class-roster-table thead{display:table-header-group}.single-class-roster-table th,.single-class-roster-table td{border:.7pt solid #000;padding:1mm 2mm}.single-class-roster-table th:first-child,.single-class-roster-table td:first-child{text-align:center;width:10mm}.single-class-roster-table tr{break-inside:avoid}}.quran-work-tracks{gap:1.5rem;min-width:0;display:grid}.quran-work-tracks .quran-funnel{box-shadow:none}.quran-history-entry{border-block-start:1px solid var(--border,#d8d0c2);padding-block:1rem}.quran-history-entry>summary,.notice-card details>summary{cursor:pointer;min-height:44px;padding-block:.75rem}.quran-work-history{padding-inline-start:1.25rem}.quran-work-history li{border-block-end:1px solid var(--border,#d8d0c2);gap:.35rem;padding-block:.75rem;display:grid}.announcement-recipients{border:0;min-width:0;padding:0}.announcement-class-group{padding-block:.75rem}.announcement-class-options{grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));gap:.25rem .75rem;display:grid}.announcement-class-options .checkbox-row{align-items:center;min-height:44px}.announcement-editor input[type=datetime-local]{width:100%;min-width:0}.announcement-targeting,.announcement-extra-options{margin-block:.25rem}.announcement-targeting>summary,.announcement-extra-options>summary,.guardian-link-another>summary{cursor:pointer;align-items:center;min-height:44px;font-weight:750;display:flex}.announcement-class-group{border-block-start:1px solid var(--line)}.announcement-audience-line{color:var(--muted);font-size:.84rem}.announcement-history-section{margin-block-start:1.5rem}.announcement-history-section .notice-card{box-shadow:none}.registration-term-controls{margin-block:1rem 1.5rem}.registration-term-row{border-block-start:1px solid var(--line);grid-template-columns:minmax(9rem,1fr) auto minmax(15rem,1.2fr) minmax(12rem,.8fr);align-items:start;gap:.75rem 1rem;padding-block:1rem;display:grid}.registration-term-row>div:first-child{gap:.2rem;display:grid}.registration-term-row>div:first-child small{color:var(--muted)}.registration-term-row>form{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:.5rem;display:grid}.registration-term-row>form input[type=password]{min-height:42px}.registration-term-row>details>summary{cursor:pointer;align-items:center;min-height:44px;font-weight:700;display:flex}.registration-term-row>details form{gap:.45rem;display:grid}.guardian-create-section,.guardian-directory-section{margin-block:1.5rem}.guardian-family-list{display:grid}.guardian-family-row{border-block-start:1px solid var(--line);padding-block:1rem}.guardian-family-heading{justify-content:space-between;align-items:start;gap:1rem;display:flex}.guardian-family-heading h3{margin:0;font-size:1.08rem}.guardian-family-heading p{color:var(--muted);margin-block:.25rem .5rem}.guardian-family-heading>span{color:var(--muted);flex:none;font-size:.84rem}.guardian-child-list{gap:.35rem;margin:.5rem 0;padding:0;list-style:none;display:grid}.guardian-child-list li{border-block-start:1px solid var(--line);grid-template-columns:minmax(10rem,1.4fr) minmax(8rem,1fr) auto auto;align-items:center;gap:.5rem 1rem;padding-block:.55rem;display:grid}.guardian-child-list li>span:first-child{flex-wrap:wrap;align-items:baseline;gap:.5rem;display:flex}.guardian-child-list li>span:nth-child(2){color:var(--muted)}.guardian-child-list .status-label{white-space:nowrap}.guardian-link-another{max-width:54rem}.guardian-link-another .compact-form{padding-block:.5rem 1rem}@media (max-width:800px){.registration-term-row{grid-template-columns:1fr auto}.registration-term-row>form,.registration-term-row>details{grid-column:1/-1}.guardian-child-list li{grid-template-columns:minmax(0,1fr) auto}.guardian-child-list li>span:nth-child(2){grid-column:1}}.teacher-quick-actions{margin-block:1rem}.teacher-admin-create,.teacher-assignment-admin,.semester-step-content{margin-block:1.5rem}.teacher-create-form,.teacher-name-form,.teacher-admin-row,.teacher-assignment-row,.semester-class-row,.semester-step-actions{align-items:center;gap:.85rem;display:flex}.teacher-create-form{flex-wrap:wrap;max-width:48rem;margin-block:1rem 1.5rem}.teacher-create-form label{font-weight:650}.teacher-create-form input{flex:15rem;min-width:0}.teacher-admin-list,.teacher-assignment-list,.semester-class-list{display:grid}.teacher-admin-row{border-block-start:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;padding-block:.8rem}.teacher-profile-edit{gap:.2rem;min-width:10rem;display:grid}.teacher-profile-edit span,.teacher-assignment-class small{color:var(--muted);font-size:.9rem}.teacher-name-form{flex:24rem}.teacher-name-form input{flex:14rem;min-width:0}.teacher-archive-action{margin-inline-start:auto}.teacher-archive-action form{grid-template-columns:minmax(10rem,1fr) auto;gap:.5rem;padding-block:.5rem;display:grid}.teacher-assignment-row{border-block-start:1px solid var(--line);grid-template-columns:minmax(12rem,1fr) minmax(12rem,19rem) auto;padding:.75rem .25rem;display:grid}.teacher-assignment-class{gap:.15rem;display:grid}.teacher-assignment-class>span,.semester-class-check small{color:var(--muted);font-size:.85rem}.teacher-assignment-row.subject-arabic{border-inline-start:4px solid var(--subject-color,#a66a00);padding-inline-start:.8rem}.teacher-assignment-row.subject-quran{border-inline-start:4px solid var(--subject-color,#2f8f89);padding-inline-start:.8rem}.teacher-assignment-row.subject-islamic-studies{border-inline-start:4px solid var(--subject-color,#7a2947);padding-inline-start:.8rem}.teacher-assignment-row select,.semester-class-row select,.semester-roster-picker select,.semester-placement-table select{width:100%;min-width:0}.new-semester-page{max-width:100%}.semester-current-term{border-block:1px solid var(--line);flex-wrap:wrap;align-items:baseline;gap:.75rem;padding-block:.75rem;display:flex}.semester-current-term span,.semester-current-term small{color:var(--muted)}.semester-steps{border-block-end:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));gap:.35rem;margin-block:1.25rem;display:grid}.semester-steps button{text-align:start;border:0;min-width:0;min-height:48px;color:inherit;cursor:pointer;background:0 0;border-block-end:3px solid #0000;align-items:center;gap:.55rem;padding:.5rem .7rem;display:flex}.semester-steps button.selected{border-block-end-color:var(--forest,#1e6545);color:var(--forest,#1e6545)}.semester-steps button.completed{border-block-end-color:var(--aqua,#2f8f89)}.semester-steps button>span{font-variant-numeric:tabular-nums;border:1px solid;border-radius:50%;flex:none;place-items:center;width:1.65rem;height:1.65rem;display:grid}.semester-step-content{padding-block:.5rem 1rem}.semester-date-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;max-width:58rem;display:grid}.semester-date-fields label,.semester-class-row>label:last-child{gap:.45rem;font-weight:600;display:grid}.semester-date-fields input{width:100%}.semester-note{color:var(--muted)}.semester-class-row{border-block-start:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;padding-block:.75rem}.semester-class-check{flex:14rem;align-items:center;gap:.8rem;min-height:44px;display:flex}.semester-class-check>span{gap:.15rem;display:grid}.semester-class-row>label:last-child{width:min(100%,22rem)}.semester-roster-picker{grid-template-columns:auto minmax(14rem,28rem);align-items:center;gap:.75rem;margin-block:1rem;display:grid}.semester-roster-heading{border-inline-start:5px solid var(--forest,#1e6545);background:color-mix(in srgb,var(--forest,#1e6545) 9%,transparent);flex-wrap:wrap;align-items:baseline;gap:.75rem;margin-block:1rem .5rem;padding:.55rem .75rem;display:flex}.semester-roster-heading.subject-arabic{border-color:var(--subject-color,#a66a00);background:color-mix(in srgb,var(--subject-color,#a66a00) 10%,transparent)}.semester-roster-heading.subject-quran{border-color:var(--subject-color,#2f8f89);background:color-mix(in srgb,var(--subject-color,#2f8f89) 10%,transparent)}.semester-roster-heading.subject-islamic-studies{border-color:var(--subject-color,#7a2947);background:color-mix(in srgb,var(--subject-color,#7a2947) 10%,transparent)}.semester-roster-heading small{color:var(--muted)}.semester-placement-table{width:100%}.semester-placement-table th,.semester-placement-table td{vertical-align:middle}.semester-placement-table td{min-width:9rem}.attendance-summary{white-space:nowrap;font-variant-numeric:tabular-nums}.semester-review-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 1rem;margin-block:1rem;display:grid}.semester-review-summary>div{border-block-end:1px solid var(--line);gap:.25rem;padding-block:.75rem;display:grid}.semester-review-summary dt{color:var(--muted)}.semester-review-summary dd{margin:0;font-weight:650}.semester-step-actions{border-block-start:1px solid var(--line);justify-content:flex-end;padding-block:1rem}.semester-step-actions>span{color:var(--muted);margin-inline-end:auto}.semester-modal-backdrop{z-index:100;background:#0f161394;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.semester-modal{background:var(--surface,#fff);width:min(100%,30rem);color:var(--ink,#18231f);padding:1.5rem;box-shadow:0 18px 55px #00000040}.semester-modal h2{margin-block:.75rem .4rem}.semester-modal p{line-height:1.55}.semester-modal-mark{background:var(--mustard,#d59a22);border-radius:50%;place-items:center;width:2rem;height:2rem;font-weight:800;display:grid}@media (max-width:800px){.semester-date-fields{grid-template-columns:1fr}.semester-review-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-assignment-row{grid-template-columns:minmax(0,1fr) auto}.teacher-assignment-class{grid-column:1/-1}.semester-steps button{justify-content:center;padding-inline:.3rem}.semester-steps button strong{font-size:.82rem}}@media (max-width:560px){.teacher-create-form,.teacher-name-form{grid-template-columns:1fr;width:100%;display:grid}.teacher-create-form>*,.teacher-name-form>*,.teacher-assignment-row>*{width:100%}.teacher-admin-row{align-items:stretch}.teacher-profile-edit{width:100%}.teacher-archive-action{margin-inline-start:0}.semester-steps{grid-template-columns:repeat(4,minmax(0,1fr))}.semester-steps button{justify-items:center;gap:.2rem;min-height:58px;display:grid}.semester-steps button strong{text-align:center;font-size:.68rem}.semester-roster-picker,.semester-review-summary{grid-template-columns:1fr}.semester-step-actions{flex-wrap:wrap;justify-content:stretch}.semester-step-actions>button{flex:8rem}.semester-placement-table{min-width:42rem}}@media (max-width:600px){.announcement-editor .field-row,.quran-work-tracks .quran-range-grid{grid-template-columns:minmax(0,1fr)}}.placement-subject-tabs{flex-wrap:wrap;gap:.5rem;margin-block:1rem;display:flex}.placement-subject-tabs button{border-radius:var(--radius-sm,.5rem);min-height:44px;color:var(--ink);font:inherit;cursor:pointer;background:0 0;border:0;padding:.5rem .9rem}.placement-subject-tabs button[aria-pressed=true]{background:var(--subject-wash,var(--surface));color:var(--subject-text,var(--forest));box-shadow:inset 0 -3px var(--subject-color,var(--forest));font-weight:650}.placement-filters{flex-wrap:wrap;align-items:end;gap:1rem;margin-block:1rem;display:flex}.placement-filters label{flex:13rem;gap:.3rem;min-width:0;display:grid}.placement-filters>span{color:var(--muted);padding-block:.7rem}.placement-save-hint,.semester-draft-status{color:var(--muted);margin-block:.7rem;font-size:.9rem}.placement-group{margin-block:1.4rem}.placement-group>header{background:var(--subject-wash);color:var(--subject-text);border-radius:var(--radius-sm,.5rem);justify-content:space-between;align-items:center;gap:1rem;padding:.6rem .8rem;display:flex}.placement-group h2{margin:0;font-size:1.12rem}.placement-sheet{table-layout:fixed;border-collapse:collapse;width:100%;min-width:0}.placement-sheet th,.placement-sheet td{text-align:start;vertical-align:top;border-block-end:1px solid var(--line);overflow-wrap:anywhere;min-width:0;padding:.7rem .45rem}.placement-sheet thead th{color:var(--muted);font-size:.85rem;font-weight:600}.placement-sheet tbody th{width:25%;font-weight:600}.placement-cell{gap:.4rem;min-width:0;display:grid}.placement-cell .styled-select,.placement-cell select{width:100%;min-width:0}.placement-cell-actions{flex-wrap:wrap;align-items:center;gap:.7rem;display:flex}.placement-cell-actions button{min-height:44px}.semester-planner .semester-step-content{min-width:0;padding-block:1rem}.semester-plan-class{border-block-end:1px solid var(--line);grid-template-columns:6rem minmax(0,1.2fr) minmax(0,1.1fr) minmax(0,.8fr);align-items:start;gap:1rem;padding-block:1rem;display:grid}.semester-plan-class>label{gap:.35rem;min-width:0;font-size:.9rem;display:grid}.semester-plan-class .semester-class-check{align-items:center;min-height:44px;display:flex}.semester-plan-class input:not([type=checkbox]),.semester-plan-class .styled-select{width:100%;min-width:0}.semester-add-class{align-items:end;gap:1rem;margin-block:1rem;display:flex}.semester-add-class label{flex:1;gap:.35rem;min-width:0;display:grid}.semester-closures{margin-block:1rem}.semester-closures summary{cursor:pointer;min-height:44px;padding-block:.7rem}.semester-closures>div{grid-template-columns:repeat(auto-fit,minmax(7rem,1fr));gap:.5rem;display:grid}.semester-closures label{align-items:center;gap:.5rem;min-height:44px;display:flex}.semester-planner :is(.semester-class-check,.semester-closures label){cursor:pointer;font-weight:500}.semester-planner :is(.semester-class-check,.semester-closures label)>input[type=checkbox]{appearance:auto;block-size:20px;min-block-size:20px;inline-size:20px;min-inline-size:20px;accent-color:var(--field-forest,var(--green));box-shadow:none;flex:0 0 20px;margin:0;padding:0}.semester-student-reviewed{color:var(--muted);margin-block-start:.3rem;font-size:.8rem;font-weight:400;display:block}.semester-review-class{border-block-end:1px solid var(--line);grid-template-columns:1.2fr 1fr auto;gap:1rem;padding-block:.7rem;display:grid}.semester-review-subject h3{color:var(--subject-text);margin-block-start:1.2rem}.semester-planner .warning-card{box-shadow:none;border:0;border-inline-start:3px solid var(--subject-color,var(--mustard));border-radius:0;padding:1rem;display:block}.semester-planner .warning-card h3,.semester-planner .warning-card p{margin-block:0 .65rem}@media (max-width:767px){.placement-sheet,.semester-planner .semester-placement-table{min-width:0;display:block}.placement-sheet thead{display:none}.placement-sheet tbody{display:block}.placement-sheet tr{border-block-end:1px solid var(--line);padding-block:.8rem;display:block}.placement-sheet tbody th{border:0;width:auto;padding:.35rem 0 .7rem;font-size:1.05rem;display:block}.placement-sheet td,.semester-planner .semester-placement-table td{border:0;gap:.35rem;min-width:0;padding:.3rem 0;display:grid}.placement-sheet td:before{content:attr(data-label);color:var(--muted);font-size:.85rem;font-weight:500}.placement-filters{gap:.6rem}.placement-filters label{flex-basis:100%}.semester-plan-class{grid-template-columns:minmax(0,1fr);gap:.6rem}.semester-add-class{flex-wrap:wrap}.semester-review-class{grid-template-columns:minmax(0,1fr) auto;gap:.4rem}.semester-review-class>strong{grid-column:1/-1}.semester-planner .semester-step-actions{position:static}}
