:root{font-family:"Cairo","Segoe UI",Tahoma,Arial,sans-serif;color:#183e51;background:#f3f7fa;font-synthesis:none;line-height:1.75;--surface:#fff;--line:#deeaee;--muted:#617d8d;--soft-shadow:0 12px 36px rgba(18,68,91,.07);--strong-shadow:0 26px 65px rgba(18,68,91,.12)}
*{box-sizing:border-box}body{margin:0;min-height:100vh}body.edition-girls{background:radial-gradient(ellipse 56% 31% at 98% -6%,rgba(13,169,166,.105),transparent 80%),radial-gradient(ellipse 50% 28% at -5% 48%,rgba(61,126,185,.055),transparent 85%),#f3f7fa}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}a,button,summary,input,select,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #0da9a6;outline-offset:3px}::selection{background:#c9f2e9;color:#15445a}
.edition-girls{--primary:#176f81;--primary-deep:#194d65;--accent:#9c5a84;--tint:#e9f3f5;--glow:rgba(67,122,145,.14);--border:#dce9ee}
.page-wrap{max-width:1360px;min-height:100vh;margin:auto;padding:0 clamp(22px,5vw,76px);display:flex;flex-direction:column;position:relative}
.site-top{min-height:102px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid rgba(181,210,219,.50)}
.brand{display:inline-flex;align-items:center;gap:13px;white-space:nowrap;min-width:0}
.brand strong{display:block;line-height:1.25;font-size:28px;color:var(--primary-deep);letter-spacing:-.5px;font-weight:800}
.brand small{display:block;font-size:12px;color:#587280;letter-spacing:1px;font-weight:700}
.brand-mark{flex-shrink:0;width:48px;height:48px;border:1px solid rgba(7,141,130,.25);border-radius:15px;display:flex;align-items:center;justify-content:center;gap:4px;transform:rotate(-7deg);background:linear-gradient(145deg,#fff,#d8f5ed);box-shadow:0 5px 16px rgba(10,124,113,.12)}
.brand-mark i{display:block;background:var(--primary);width:6px;border-radius:5px}.brand-mark i:nth-child(1){height:16px;background:#3d7eb9}.brand-mark i:nth-child(2){height:24px;background:var(--primary)}.brand-mark i:nth-child(3){height:12px;background:#c1b489}
.edition-tag{border:1px solid #d6e6ea;color:#315b6b;border-radius:999px;padding:7px 17px;font-size:12px;font-weight:700;background:rgba(255,255,255,.86)}
.main-layout{min-height:calc(100vh - 174px);display:grid;grid-template-columns:minmax(0,1.05fr) minmax(390px,.85fr);align-items:center;gap:clamp(35px,6vw,110px);padding:44px 0 65px}
.intro{position:relative;padding:24px 2px}.intro:before{content:"";position:absolute;z-index:-1;width:470px;height:470px;border-radius:50%;background:var(--glow);filter:blur(85px);top:-110px;right:-85px;pointer-events:none}.intro:after{content:"";position:absolute;z-index:-1;inset:-25px -38px -28px 5%;border:1px solid rgba(13,169,166,.12);border-radius:38px;transform:rotate(-3deg);pointer-events:none}
.eyebrow{display:inline-flex;align-items:center;gap:8px;background:var(--tint);color:#0c716b;padding:7px 16px;border-radius:999px;font-size:12px;font-weight:800;border:1px solid #d2efea}
.intro h1{font-size:clamp(36px,3.8vw,56px);font-weight:800;line-height:1.5;letter-spacing:-.7px;margin:21px 0;color:#123b51}
.intro h1 em{font-style:normal;color:var(--primary)}.intro>p{max-width:520px;font-size:17px;color:#647986;line-height:2}
.intro-features{display:flex;flex-wrap:wrap;gap:10px;margin-top:34px}.intro-features>span{font-size:12px;color:#4e6875;background:#fff;border:1px solid #e2ecee;padding:8px 12px;border-radius:9px}.intro-features b{color:var(--primary);margin-left:5px}
.auth-card{background:#fff;border:1px solid #dbe9ee;border-top:4px solid var(--primary);box-shadow:var(--strong-shadow);padding:clamp(26px,3vw,45px);border-radius:23px;max-width:510px;width:100%;justify-self:end}
.card-heading{margin-bottom:26px}.card-kicker{font-size:13px;color:var(--primary);font-weight:700}.card-heading h2{font-size:29px;margin:5px 0;color:#123b51;font-weight:800}.card-heading p{font-size:13px;color:#7b8d96;margin:0}
.field{margin:17px 0}.field label{display:block;margin-bottom:7px;font-size:13px;color:#334e5c;font-weight:bold}.field input{width:100%;height:53px;border:1px solid #d4e3e8;background:#fbfdfe;border-radius:12px;padding:0 14px;outline:none;transition:border .2s,box-shadow .2s;text-align:right;direction:rtl;color:#183345}.field input[dir=ltr]{direction:ltr;text-align:left}.field input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--glow)}.field input::placeholder{color:#a6b4bc}.password-wrap{position:relative}.password-wrap input{padding-left:74px}.toggle-password{position:absolute;left:9px;top:9px;height:34px;padding:0 10px;border:none;background:#edf4f5;border-radius:7px;font-size:12px;color:#496472}
.submit-btn{width:100%;min-height:54px;margin-top:12px;padding:11px 20px;border:0;border-radius:12px;color:white;background:linear-gradient(116deg,#176f81,#194d65);display:flex;justify-content:center;align-items:center;gap:12px;font-weight:800;box-shadow:0 9px 21px rgba(7,104,111,.18);transition:transform .15s,opacity .15s,box-shadow .15s}.submit-btn:hover:not(:disabled){transform:translateY(-1px)}.submit-btn:disabled{opacity:.7;cursor:wait}
.error-box{font-size:13px;color:#9b3030;background:#fff1f0;border:1px solid #ffd6d3;padding:10px 12px;border-radius:9px;margin:12px 0}.error-box[hidden], [hidden]{display:none!important}.auth-foot{text-align:center;color:#8798a0;font-size:12px;margin:21px 0 0}
.site-foot{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;padding:24px 0 34px;border-top:1px solid #e3ebed;color:#7d929e;font-size:12px}
.outline-btn{border:1px solid #cddfe5;background:#fff;padding:9px 15px;border-radius:11px;color:#315467;font-weight:700}.outline-btn:hover{border-color:var(--primary);color:var(--primary)}
.portal-main{flex:1;display:flex;align-items:center;justify-content:center;padding:45px 0}.portal-card{max-width:690px;width:100%;border:1px solid #e5edf0;background:#fff;padding:clamp(28px,4vw,52px);border-radius:24px;box-shadow:0 20px 70px rgba(30,75,89,.07)}.portal-card h1{font-size:29px;color:var(--primary-deep);margin:22px 0 4px}.portal-card>p{color:#69818c}.details{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:28px 0}.details>div{padding:13px 15px;background:#f5f9fa;border:1px solid #e8eff1;border-radius:11px}.details dt{font-size:12px;color:#77909a}.details dd{margin:4px 0 0;font-weight:700;overflow-wrap:anywhere}.implementation-note{padding:13px 15px;background:var(--tint);color:var(--primary-deep)!important;border-radius:10px;font-size:13px}
@media(max-width:900px){.site-top{min-height:88px}.main-layout{grid-template-columns:1fr;gap:20px;min-height:auto;padding:25px 0 50px}.intro h1{font-size:37px}.intro>p{font-size:15px}.intro-features{margin-top:18px}.auth-card{justify-self:stretch;max-width:none}.intro{padding:3px 0}.site-foot{padding-top:20px}}
@media(max-width:500px){.page-wrap{padding:0 17px}.edition-tag{padding:6px 10px;font-size:11px}.brand strong{font-size:23px}.brand-mark{width:39px;height:39px}.main-layout{padding-top:15px}.intro h1{font-size:31px;margin:15px 0}.intro>p{font-size:14px}.auth-card{padding:24px 20px;border-radius:17px}.card-heading h2{font-size:26px}.details{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}

/* V2: restricted operator-only school setup screen */
.setup-main{display:grid;grid-template-columns:minmax(230px,.66fr) minmax(400px,1fr);gap:clamp(22px,5vw,75px);align-items:start;padding:28px 0 68px}.setup-intro{padding:30px 0}.setup-intro h1{color:var(--primary-deep);font-size:clamp(31px,3vw,44px);line-height:1.4;margin:22px 0 16px}.setup-intro p{color:#637b87;line-height:2}.setup-facts{display:grid;gap:12px;margin-top:30px}.setup-facts span{background:var(--tint);border-radius:9px;padding:10px 15px;color:var(--primary-deep);font-size:13px}.setup-card{background:#fff;border:1px solid #e6eef0;border-radius:21px;box-shadow:0 20px 65px rgba(30,75,89,.08);padding:clamp(20px,3vw,36px)}.setup-card fieldset{border:0;margin:0 0 21px;padding:0 0 21px;border-bottom:1px solid #e8eff1;min-width:0}.setup-card legend{font-weight:700;color:var(--primary-deep);padding:0;margin-bottom:10px;font-size:18px}.setup-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:15px}.setup-card .field{margin:10px 0}.setup-card .field small{display:block;color:#6b8590;font-size:11px;margin-top:5px}.setup-card select{width:100%;height:52px;border:1px solid #dce6e9;background:#fbfcfc;border-radius:11px;padding:0 13px;color:#183345;font:inherit}.setup-card select:focus{outline:2px solid var(--primary);outline-offset:1px}.success-box{font-size:13px;color:#185d48;background:#edf9f1;border:1px solid #c6ebd8;padding:14px;border-radius:9px;line-height:1.9}.success-box[hidden]{display:none!important}@media(max-width:980px){.setup-main{grid-template-columns:1fr;gap:8px}.setup-intro{padding:0}.setup-facts{display:flex;flex-wrap:wrap;margin-top:12px}}@media(max-width:550px){.setup-grid{grid-template-columns:1fr}.setup-card{padding:22px 18px}.setup-main{padding-top:13px}}

/* V3: school manager dashboard, with truthful data and no decorative fake actions. */
.dashboard-wrap{max-width:1420px}.top-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.dashboard-main{flex:1;padding:23px 0 64px}.dashboard-status{padding:32px;background:#fff;border:1px solid #e5edf0;border-radius:16px;color:#627e8a}.dashboard-error{color:#943b36;background:#fff7f5;border-color:#f2d5d1}.dashboard-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:14px 0 30px}.dashboard-heading h1{font-size:clamp(26px,3vw,36px);line-height:1.5;color:var(--primary-deep);margin:13px 0 2px}.dashboard-heading p{margin:0;color:#708693}.dashboard-date{font-size:13px;color:#68818d;white-space:nowrap}.school-panel{background:linear-gradient(120deg,#fff 30%,#e5f7f3 100%);border:1px solid #d5e9e8;border-radius:21px;padding:25px 28px;margin-bottom:31px;box-shadow:var(--soft-shadow)}.section-head{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap;margin-bottom:16px}.section-head h2{font-size:19px;margin:0;color:#234757}.section-hint{font-size:12px;color:#738a97}.chip{color:var(--primary-deep);border:1px solid #c5dbdd;border-radius:30px;padding:4px 12px;font-size:11px}.school-profile{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:14px;margin:0}.school-profile>div{min-width:0}.school-profile dt{font-size:12px;color:#6b8794}.school-profile dd{font-size:15px;color:#183b4d;font-weight:700;margin:4px 0 0;overflow-wrap:anywhere}.dashboard-section{margin-bottom:34px}.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.stat-card{background:#fff;border:1px solid #deeaee;border-radius:19px;padding:20px 22px;min-height:160px;box-shadow:var(--soft-shadow);transition:transform .18s,box-shadow .18s,border-color .18s}.stat-symbol{display:inline-grid;place-items:center;width:38px;height:38px;background:var(--tint);border:1px solid #d2efea;border-radius:12px;color:var(--primary-deep);font-weight:700}.stat-card p{margin:8px 0 4px;font-size:13px;color:#536f7c}.stat-card strong{display:block;font-size:34px;line-height:1.45;color:var(--primary-deep);font-variant-numeric:tabular-nums;font-weight:800}.stat-card small{font-size:11px;color:#8298a2}.module-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.module-card{background:#fff;border:1px solid #deeaee;border-radius:19px;padding:22px 24px;box-shadow:var(--soft-shadow);transition:transform .18s,border-color .18s,box-shadow .18s}.module-icon{width:41px;height:41px;display:inline-grid;place-items:center;background:var(--tint);border:1px solid #d2efea;border-radius:13px;color:var(--primary-deep);font-size:20px}.module-card h3{margin:12px 0 4px;font-size:16px;color:#254c5e}.module-card p{margin:0 0 13px;font-size:13px;color:#657f8b}.module-state{font-size:11px;font-weight:800;display:inline-block;border-radius:999px;background:#eef7f5;color:#0d746f;padding:5px 12px}.dashboard-main>.portal-card{margin:8vh auto}.dashboard-main>.portal-card h1{color:var(--primary-deep)}@media(max-width:900px){.school-profile,.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-heading{align-items:flex-start}}@media(max-width:560px){.top-actions{gap:7px}.top-actions .edition-tag{display:none}.dashboard-heading{display:block}.dashboard-date{display:block;margin-top:9px}.school-profile,.stat-grid,.module-grid{grid-template-columns:1fr}.school-panel{padding:18px}.stat-card{min-height:135px}}


/* V4: teacher account administration */
.module-link{display:block;transition:transform .15s,border-color .15s}.module-link:hover,.module-link:focus-visible{transform:translateY(-2px);border-color:var(--primary)}
.module-link .module-state{background:var(--tint);color:var(--primary-deep)}
.teacher-main{flex:1;padding:12px 0 65px}.teacher-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;margin:10px 0 26px}.teacher-heading h1{font-size:clamp(25px,3vw,36px);color:var(--primary-deep);margin:12px 0 4px}.teacher-heading p{margin:0;color:#68818d}
.back-link{display:inline-block;padding:10px 17px;border:1px solid #c9d9df;border-radius:10px;background:#fff;color:var(--primary-deep)}.teacher-card{border:1px solid #dce9ee;border-radius:20px;background:#fff;padding:23px 26px;margin-bottom:22px;box-shadow:var(--soft-shadow)}.teacher-card h2{font-size:19px;margin:0 0 18px;color:#234757}
.teacher-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.teacher-grid label{display:block;font-size:13px;font-weight:700;color:#3f6071}.teacher-grid input{display:block;width:100%;padding:11px 12px;border:1px solid #c9d9df;border-radius:10px;margin-top:7px;direction:rtl;background:#fff;color:#183345}.teacher-grid input[type=email],.teacher-grid input[type=password]{direction:ltr;text-align:left}.teacher-grid input:focus{outline:2px solid var(--primary);outline-offset:1px}.teacher-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.primary-btn{border:0;border-radius:11px;background:linear-gradient(115deg,#078d82,#126c74);color:#fff;padding:10px 24px;font-weight:800;box-shadow:0 7px 16px rgba(7,124,115,.14)}.secondary-btn{border:1px solid #c6dce2;background:#fff;border-radius:11px;color:#315366;padding:10px 17px;font-weight:700}.danger-btn{border:1px solid #e8c7c4;color:#9a3b38;background:#fff7f7;border-radius:9px;padding:7px 10px}.table-wrap{overflow-x:auto}.teacher-table{border-collapse:collapse;width:100%;min-width:650px;text-align:right}.teacher-table th{font-size:13px;color:#315367;background:#eff6f7;font-weight:800}.teacher-table th,.teacher-table td{padding:13px 12px;border-bottom:1px solid #e7eff1;line-height:1.8}.teacher-table td{font-size:14px;color:#284858}.teacher-table td.actions{display:flex;flex-wrap:wrap;gap:7px}.teacher-table td.actions button{font-size:12px}.teacher-search{min-width:min(300px,100%);padding:10px 12px;border:1px solid #cadce0;border-radius:10px}.teacher-chip{padding:3px 10px;border-radius:8px;font-size:12px;background:#e8f5ee;color:#246447}.teacher-chip.off{background:#fff1ed;color:#974638}.inline-status{padding:12px 14px;border-radius:10px;background:#eaf6f2;color:#245d57;margin-bottom:16px}.inline-status.error{background:#fff0ed;color:#9a3b38}.field-help{font-size:12px;color:#647d8b;margin:8px 0 0}.teacher-empty{padding:20px;color:#657d88}.teacher-subtitle{font-size:13px;color:#708794}@media(max-width:900px){.teacher-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.teacher-grid{grid-template-columns:1fr}.teacher-card{padding:18px 15px}.teacher-heading{align-items:flex-start}}

/* V5: native grade dropdown uses the existing teacher form visual system. */
.teacher-grid select{display:block;width:100%;padding:11px 12px;border:1px solid #c9d9df;border-radius:10px;margin-top:7px;direction:rtl;background:#fff;color:#183345;font:inherit}.teacher-grid select:focus{outline:2px solid var(--primary);outline-offset:1px}

/* V7: timetable builder */
.timetable-grid{display:grid;grid-template-columns:repeat(5,minmax(175px,1fr));gap:11px;overflow-x:auto}.day-col{background:#f7fafb;border:1px solid #dfe9ed;border-radius:12px;padding:10px;min-width:0}.day-col h3{font-size:15px;color:var(--primary-deep);margin:4px 4px 12px}.slot-card{margin-bottom:8px;padding:9px;border-radius:9px;border:1px solid #dae8e9;background:#fff;font-size:12px;line-height:1.8}.slot-card strong{display:block;font-size:13px}.slot-card small{display:block;color:#607d8b}.slot-card button{font:inherit;font-size:11px;color:#973d38;border:0;background:transparent;cursor:pointer}.teacher-grid .field-wide{grid-column:span 2}.preview-note{font-size:12px;color:#607985;line-height:1.8;margin-top:12px}.timetable-toolbar{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin:10px 0}.table-wrap code{font-family:monospace;direction:ltr}.timetable-upload{display:block;width:min(500px,100%);margin:10px 0;padding:8px;border:1px solid #d5e3e6;border-radius:9px}.pill-draft{background:#fff2df;color:#865d14}.pill-published{background:#e5f6ec;color:#17633f}@media(max-width:1050px){.timetable-grid{grid-template-columns:repeat(5,minmax(195px,1fr));overflow-x:auto}}@media(max-width:630px){.teacher-grid .field-wide{grid-column:auto}}

/* Curriculum index and editable calendar */
.calendar-extra{margin-top:18px;grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-extra textarea,#lessons{display:block;box-sizing:border-box;width:100%;padding:12px;border:1px solid #c9d9df;border-radius:10px;margin:10px 0;line-height:1.9;font:inherit;color:#183345;background:#fff}.calendar-extra textarea{direction:ltr;text-align:left}.teacher-card select{padding:9px;min-width:min(460px,100%)}@media(max-width:640px){.calendar-extra{grid-template-columns:1fr}}

/* V9 — structured weekly plan, responsive and printable */
.v9-actions{align-items:end}.v9-actions label{font-weight:700;color:#385b69}.v9-actions input{display:block;margin-top:5px;padding:9px;border:1px solid #c5dadd;border-radius:9px;font:inherit;direction:ltr}
.v9-table{min-width:820px}.v9-cell-editor{font:inherit;box-sizing:border-box;width:100%;min-width:125px;min-height:65px;max-height:180px;border:1px solid #d0dfe3;border-radius:8px;background:#fff;padding:8px;color:#254554;resize:vertical;line-height:1.6}.v9-cell-editor:disabled{color:#254554;border-color:transparent;background:transparent;resize:none;opacity:1}
.v9-note-label{display:block;margin:18px 0 8px;font-weight:700}.v9-note{width:100%;box-sizing:border-box;border:1px solid #bcd2d9;border-radius:9px;padding:12px;font:inherit;line-height:1.6}
@media print{@page{size:A4 landscape;margin:10mm}body{background:#fff!important;color:#000!important;font-size:10pt}.no-print,.site-top,.site-foot,#page-status,#empty-plan,.back-link{display:none!important}.page-wrap,.teacher-main{padding:0!important;margin:0!important;max-width:none!important}.teacher-card{box-shadow:none!important;border:0!important;padding:0!important;margin:0!important}#plan-panel,#selected-panel{display:block!important}.v9-table,.teacher-table{width:100%;min-width:0!important;font-size:9pt}.teacher-table th,.teacher-table td{padding:6px 4px;border:1px solid #bbb;vertical-align:top}.v9-cell-editor{border:0!important;padding:0!important;min-width:0;min-height:0;resize:none;overflow:visible;white-space:pre-wrap;background:none!important}h1,h2{color:#000!important}tr{break-inside:avoid}}


/* V10 lesson preparation; portrait print matches the lesson's review copy. */
.prep-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.prep-fields label{font-size:13px;font-weight:700;color:#365d6c}.prep-fields textarea{box-sizing:border-box;display:block;width:100%;height:110px;padding:12px;border:1px solid #ccdade;border-radius:10px;margin-top:7px;resize:vertical;line-height:1.8;font:inherit;color:#183345}.prep-fields textarea:disabled{background:#f6f9fa;color:#48626e}.prep-fields label.wide{grid-column:1/-1}.prep-meta{display:flex;gap:8px;flex-wrap:wrap;color:#546f7c}.prep-meta span{border:1px solid #d5e5e8;border-radius:8px;padding:5px 9px;background:#f8fbfb}.prep-list{width:100%;max-width:100%;padding:10px;border-radius:10px;border:1px solid #c6dade;font:inherit;background:white}.prep-paper{display:none;font-size:12pt;color:#000;background:white;padding:12mm;direction:rtl}.prep-paper h1{text-align:center;font-size:19pt}.prep-paper .paper-line{margin:5mm 0;white-space:pre-wrap}.prep-paper .paper-line b{display:block;margin-bottom:3mm}.prep-paper .paper-sign{margin-top:12mm;text-align:left}.prep-fields label.wide textarea{height:140px}
@media(max-width:650px){.prep-fields{grid-template-columns:1fr}.prep-fields label.wide{grid-column:auto}}
@media print{@page{size:A4 portrait;margin:10mm}body{background:#fff!important}.page-wrap,.teacher-main{margin:0!important;padding:0!important;max-width:none!important}body .page-wrap>.site-top,body .page-wrap>.site-foot,body .page-wrap>main{display:none!important}.prep-paper{display:block!important}.prep-paper .paper-line{break-inside:avoid}}

/* V12 — student roster and bulk import (follows the existing edition colors). */
.students-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 22px}
.students-summary>div{background:#fff;border:1px solid #e2ebee;border-radius:16px;padding:16px 22px}
.students-summary small{display:block;color:#627d89;font-size:12px}.students-summary strong{font-size:30px;color:var(--primary-deep)}
.students-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:0 0 16px}
.students-toolbar select{padding:10px;min-width:150px;max-width:280px;border:1px solid #c9d9df;border-radius:10px;background:#fff;color:#183345}
#preview-rows td{font-size:13px}#student-rows td{vertical-align:middle}
@media(max-width:660px){.students-summary{grid-template-columns:1fr 1fr}.students-summary>div:last-child{grid-column:1/-1}.students-toolbar>*{width:100%;max-width:none!important}}

/* V13: family, guardian administration and school reports share the core visual language. */
#guardian-select,#student-select,.teacher-card input[type=date]{box-sizing:border-box;max-width:100%;padding:10px 12px;border:1px solid #c9d9df;border-radius:10px;background:#fff;color:#183345;font:inherit}
#guardian-rows td,#class-rows td,#children-rows td,#lessons-rows td{vertical-align:top}
@media print{.teacher-main{display:block!important}.teacher-main .teacher-card{border:0;break-inside:avoid}#content{display:block!important}.no-print,.inline-status{display:none!important}}


/* Official school heading is sourced from the current authenticated school's database record. */
.school-official-header,.school-print-header{direction:rtl;text-align:center;line-height:1.65}
.school-official-header{margin:12px auto 18px;padding:12px;background:#fff;border:1px solid #dce9e8;border-radius:12px;color:#15445a}
.school-authority{font-size:13px;font-weight:650}.school-display-name{display:block;font-size:19px;font-weight:800}
.school-official-header small,.school-print-header small{display:block;font-size:12px}
.school-print-header{display:none}
@media print{
  .school-official-header{display:none!important}
  .school-print-header{display:block!important;color:#000!important;background:#fff!important;border-bottom:1px solid #777!important;margin:0 0 8mm!important;padding:0 0 4mm!important;break-inside:avoid}
  .school-print-header .school-display-name{font-size:15pt}
}
/* V15.1 school-scoped staff/assignment view */
.staff-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:14px 0 26px}
.staff-fields label{display:flex;flex-direction:column;gap:6px;font-weight:650}
.staff-fields input,.staff-fields select{box-sizing:border-box;width:100%;padding:11px;border:1px solid #c9d9df;border-radius:10px;font:inherit;color:#183345;background:white}
.staff-fields button{grid-column:1/-1;justify-self:start}
@media(max-width:680px){.staff-fields{grid-template-columns:1fr}}
/* V15.5: operational planning, native cards and responsive forms. */
.op-programs{display:grid;gap:18px;margin-top:18px}.op-card h2{font-size:18px}.op-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 15px}.op-detail{line-height:1.9;font-size:13px;color:#284858;margin:7px 0}.op-detail b{color:#15445a}.op-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:14px;margin-top:16px;border:1px solid #dbe8e8;background:#f7fbfa;border-radius:12px}.op-form h3{grid-column:1/-1;margin:0;font-size:14px;color:#15445a}.op-label{display:flex;flex-direction:column;gap:7px;font-weight:700;font-size:13px}.op-field{width:100%;box-sizing:border-box;padding:11px;border:1px solid #c9d9df;border-radius:9px;background:white;font:inherit;color:#183345}.op-form>button{justify-self:start}.op-evidence{margin-top:16px}.op-evidence-item{border-right:3px solid #0da9a6;padding:10px;margin:8px 0;background:#f7fafb;line-height:1.8}.op-evidence-item p{margin:5px 0;white-space:pre-wrap}.op-evidence-item button{margin:5px}@media(max-width:650px){.op-meta,.op-form{grid-template-columns:1fr}.op-form h3{grid-column:auto}}@media print{.op-form,.op-evidence button{display:none!important}.op-card{break-inside:avoid}}

/* V15.9 — one mobile/desktop navigator across protected school screens. */
.takamul-global-nav{position:relative;z-index:10;margin:13px 0 18px;border:1px solid #dbe7ed;border-radius:16px;background:rgba(255,255,255,.97);box-shadow:var(--soft-shadow);padding:10px 12px}
.takamul-nav-main{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.takamul-nav-main>a,.takamul-nav-main>details>summary{display:inline-flex;align-items:center;gap:7px;padding:9px 13px;border-radius:10px;text-decoration:none;font-size:12px;font-weight:800;color:#15445a;cursor:pointer;white-space:nowrap}
.takamul-nav-main>a:hover,.takamul-nav-main>details>summary:hover{background:#eff8f6}
.takamul-nav-home{background:#15445a;color:white!important;box-shadow:0 4px 14px rgba(21,68,90,.16)}
.takamul-nav-main [aria-current="page"]{background:var(--tint);color:#087a73;border:1px solid #cfe9e7;padding:8px 12px}
.takamul-nav-all,.takamul-install{position:relative}
.takamul-nav-panel,.takamul-install-help{position:absolute;top:calc(100% + 8px);right:0;min-width:min(440px,88vw);max-height:65vh;overflow-y:auto;z-index:20;background:#fff;border:1px solid #d9e3ef;border-radius:14px;padding:14px;box-shadow:0 13px 36px rgba(18,45,67,.17)}
.takamul-nav-panel{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}
.takamul-nav-group{display:flex;flex-direction:column;gap:5px}
.takamul-nav-group>strong{font-size:12px;color:#15445a;border-bottom:1px solid #e4eceb;padding-bottom:5px}
.takamul-nav-group>a{display:flex;align-items:center;gap:7px;text-decoration:none;color:#344d60;font-weight:700;padding:8px 9px;border-radius:9px;font-size:12px}
.takamul-nav-group>a:hover{background:#eff8f6}
.takamul-install-help{min-width:min(370px,88vw);line-height:1.85;color:#344d60;font-size:12px}
.takamul-install-help p{margin:0 0 9px}
@media(max-width:600px){.takamul-nav-main{gap:3px}.takamul-nav-main>a,.takamul-nav-main>details>summary{font-size:11px;padding:8px 9px}.takamul-nav-panel,.takamul-install-help{position:fixed;top:105px;left:16px;right:16px;min-width:auto;max-height:65vh}}

/* Shared visual components used by the 23 existing school screens. */
.ui-icon{display:inline-block;flex:none;width:19px;height:19px;vertical-align:middle;stroke:currentColor;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round}
.brand-mark .ui-icon{width:27px;height:27px;transform:rotate(7deg);stroke-width:2.4}
.stat-symbol .ui-icon,.module-icon .ui-icon{width:21px;height:21px}
.takamul-nav-main .ui-icon{width:16px;height:16px}
.takamul-nav-home .ui-icon{stroke-width:2.2}
.takamul-nav-group .ui-icon{width:16px;height:16px;color:#078d82}
.stat-card:hover,.module-card:hover{border-color:#b9dcd9;box-shadow:0 16px 38px rgba(18,68,91,.09)}
.module-link:hover,.module-link:focus-visible{box-shadow:0 18px 42px rgba(18,68,91,.11)}
.teacher-heading h1,.dashboard-heading h1{font-weight:800;letter-spacing:-.35px}
.section-head h2,.teacher-card h2{font-weight:800}
.teacher-card input:not([type=checkbox]):not([type=radio]),.teacher-card select,.teacher-card textarea,.setup-card input,.setup-card select{min-height:42px}
.teacher-card textarea,.teacher-card input,.teacher-card select{max-width:100%}
.teacher-table tbody tr:hover{background:#f8fbfc}
.teacher-actions button,.top-actions button,.back-link,.secondary-btn,.primary-btn,.outline-btn{transition:transform .16s,box-shadow .16s,border-color .16s}
.teacher-actions button:hover:not(:disabled),.top-actions button:hover:not(:disabled),.back-link:hover,.secondary-btn:hover,.primary-btn:hover:not(:disabled){transform:translateY(-1px)}
.takamul-nav-panel{min-width:min(520px,90vw)}
.takamul-nav-all[open]>summary,.takamul-install[open]>summary{background:var(--tint)}
.takamul-nav-group>a[aria-current="page"]{background:var(--tint);color:#076a66}
.school-official-header{max-width:570px;box-shadow:0 7px 20px rgba(18,68,91,.045)}
@media(max-width:730px){.site-top{min-height:82px}.brand strong{font-size:24px}.brand-mark{width:43px;height:43px}.page-wrap{padding-right:clamp(14px,4vw,25px);padding-left:clamp(14px,4vw,25px)}.dashboard-main{padding-top:12px}.takamul-nav-main{gap:5px}.takamul-nav-main>a,.takamul-nav-main>details>summary{font-size:11px;padding:9px 10px}.school-panel{padding:18px 19px}.teacher-card{padding:18px}}
@media(max-width:420px){.takamul-nav-main>a:not(.takamul-nav-home){display:none}.takamul-nav-main>details>summary{padding:10px}.auth-card{padding:24px 19px}.intro:after{display:none}.stat-grid{gap:10px}}
@media print{.takamul-global-nav{display:none!important}.ui-icon{display:none!important}.stat-card,.module-card,.teacher-card{box-shadow:none!important}}

/* V15.10: direct access to the existing teacher generator and install controls. */
.teacher-lesson-launch{border:1px solid #14a6a3!important;background:#eaf8f6!important;color:#103b56!important;font-weight:900!important}
.takamul-nav-install-btn{padding:8px 13px;border-radius:11px;border:1px solid #14a6a3;background:#f0fbf8;color:#103b56;font:inherit;font-weight:800;cursor:pointer}
/* V15.10 school-only correspondence; preserves the existing role stylesheet. */
.correspondence-recipients{display:grid;grid-template-columns:repeat(auto-fit,minmax(195px,1fr));gap:9px;margin:10px 0 17px;max-height:290px;overflow:auto}
.correspondence-recipient{display:flex;align-items:center;gap:8px;border:1px solid #dce6ed;background:#f7fbfd;border-radius:11px;padding:9px;font-weight:700}
.correspondence-recipient input{width:18px;height:18px;flex:none}
.correspondence-list{display:grid;gap:12px}.correspondence-item{background:#fff;border:1px solid #dbe6ec;padding:16px;border-radius:15px}
.correspondence-item h3{margin:0 0 5px}.correspondence-item .teacher-actions{margin-top:12px}.correspondence-item textarea{min-width:min(330px,90%);min-height:66px}
.correspondence-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8}.correspondence-reply{background:#ecf9f6;border-right:4px solid #14a6a3;padding:12px;border-radius:8px;white-space:pre-wrap}
@media print{.correspondence-item{break-inside:avoid}.correspondence-recipients,#new-message{display:none!important}}
