/*! مدرستي — عبدالله محمد الحداد | made by AMH */
@font-face{font-family:SchoolMajalla;src:url(/fonts/majalla.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}@media screen and (min-width:1101px){.feature-grid article{border-bottom:1px solid var(--line)}.feature-grid article:nth-child(4n+1){border-inline-start:0}.feature-grid article:nth-last-child(-n+4){border-bottom:0}}.report-preview tr.report-late>td,.print-table tr.report-late>td{-webkit-print-color-adjust:exact;print-color-adjust:exact;color:#172e2b!important;background:#fff2a6!important}@font-face{font-family:SchoolMajalla;src:url(/fonts/majallab.ttf)format("truetype");font-weight:700;font-style:normal;font-display:swap}:root{--ink:#14302c;--muted:#566a64;--green:#147568;--dark:#0f4a42;--line:#dce5df;--bg:#f5f7f3;--mint:#e7f3ee;--soft:#f0f5f1;--focus:#79c3ad}*{box-sizing:border-box}body{color:var(--ink);background:var(--bg);margin:0;font-family:SchoolMajalla,Tahoma,Arial,sans-serif;font-size:17.5px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{background:var(--green);color:#fff;cursor:pointer;border:0;border-radius:9px;justify-content:center;align-items:center;gap:8px;padding:10px 17px;font-weight:700;transition:background .15s,transform .15s;display:inline-flex}button:hover{filter:brightness(.95)}button:disabled{opacity:.45;cursor:not-allowed}a{color:inherit;cursor:pointer;text-decoration:none}h1,h2,h3,p{margin:0}h2{font-size:23.75px}h3{font-size:20px}p{line-height:1.9}small{color:var(--muted);font-size:13.75px;line-height:1.8;display:block}select,input,textarea{color:var(--ink);background:#fff;border:1px solid #c6d4cc;border-radius:8px;min-width:0;padding:11px 13px}textarea{resize:vertical;min-height:100px}label{flex-direction:column;gap:7px;font-size:15px;font-weight:700;display:flex}input:focus,select:focus,textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px #14756a26}.brand{align-items:center;gap:11px;font-size:30px;font-weight:700;display:flex}.brand small{margin-top:-3px;font-size:12.5px;font-weight:400}.logo{background:var(--green);color:#fff;border-radius:13px;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.logo svg{width:28px;height:28px}.eyebrow{color:var(--green);align-items:center;gap:8px;font-size:15px;font-weight:700;display:flex}.eyebrow>span,.live-dot{background:#46a78e;border-radius:50%;width:7px;height:7px}.muted{color:var(--muted);font-size:15px}.green-text{color:var(--green)}.red{color:#be4d4c!important}.tag,.status{color:#657a72;white-space:nowrap;background:#eff3f1;border-radius:6px;padding:4px 10px;font-size:13.75px;display:inline-flex}.present{color:#278158;background:#e5f4ec}.absent{color:#bb594d;background:#fff0ed}.icon-button{color:var(--muted);background:0 0;padding:5px}.secondary{color:var(--ink);border:1px solid var(--line);background:#fff}.text-button{color:var(--green);background:0 0;padding:4px 7px;font-size:15px}.icon-bg,.feature-icon{background:var(--mint);width:43px;height:43px;color:var(--green);border-radius:11px;justify-content:center;align-items:center;display:inline-flex}.avatar{color:#25715e;background:#e7efe9;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-weight:700;display:flex}.peach{color:#aa7b4c;background:#fff0e6}.public-nav{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;max-width:1200px;margin:auto;padding:27px 28px;display:flex}.public-nav>div{align-items:center;gap:28px;display:flex}.public-nav>div>a{color:var(--muted);font-size:16.25px}.landing{background:#fbfcf9}.hero{grid-template-columns:1.15fr 1fr;align-items:center;gap:65px;max-width:1200px;margin:auto;padding:90px 28px 100px;display:grid}.hero h1{letter-spacing:0;margin:18px 0;font-size:61.25px;font-weight:700;line-height:1.4}.hero h1 em{color:var(--green);font-style:normal}.hero p{color:#75857d;max-width:485px;font-size:20px}.hero-actions{align-items:center;gap:25px;margin-top:30px;display:flex}.hero-actions button{padding:14px 22px}.hero-actions a{align-items:center;font-size:16.25px;display:flex}.hero-notes{color:#7a8b81;gap:22px;margin-top:30px;font-size:13.75px;display:flex}.hero-notes span{align-items:center;gap:5px;display:flex}.hero-art{padding:30px 12px;position:relative}.art-ring{background:radial-gradient(circle,#edf2e6,#0000 70%);border:1px solid #e1e9dc;border-radius:50%;position:absolute;inset:-20px}.illustration-card{background:#fff;border:1px solid #e4eae1;border-radius:19px;padding:25px;position:relative;transform:rotate(-3deg);box-shadow:0 24px 60px #254d3312}.mini-top{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding-bottom:18px;display:flex}.mini-top .live-dot{margin-right:auto}.mini-top strong{font-size:15px}.mini-top .logo{width:35px;height:35px}.mini-title{margin:25px 0 18px;font-size:25px;font-weight:700}.mini-grid{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px;display:grid}.mini-grid div{color:var(--green);background:#f2f7f2;border-radius:10px;flex-direction:column;align-items:center;gap:12px;padding:22px 12px;font-size:15px;display:flex}.mini-grid div:nth-child(2){color:#9b7c3d;background:#fbf5e9}.mini-line{border-top:1px solid var(--line);align-items:center;gap:10px;padding:15px 0;font-size:13.75px;display:flex}.mini-line>svg{color:var(--green);margin-right:auto}.float-card{border:1px solid var(--line);background:#fff;border-radius:13px;align-items:center;gap:12px;padding:15px 20px;font-size:16.25px;display:flex;position:absolute;bottom:-5px;left:-20px;box-shadow:0 12px 40px #183c2512}.features{border-top:1px solid var(--line);max-width:1200px;margin:auto;padding:60px 28px 80px}.features h2{margin:12px 0 30px;font-size:37.5px}.feature-grid{grid-template-columns:repeat(4,1fr);gap:20px;display:grid}.feature-grid article{border:1px solid var(--line);background:#fff;border-radius:13px;padding:25px}.feature-grid h3{margin:20px 0 10px}.feature-grid p{color:var(--muted);font-size:15px}footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;gap:20px;padding:26px max(28px,50vw - 572px);font-size:13.75px;display:flex}.sidebar{border-left:1px solid var(--line);z-index:20;background:#fff;flex-direction:column;width:245px;padding:30px 19px 18px;display:flex;position:fixed;top:0;bottom:0;right:0}.sidebar .brand{padding:0 10px 32px}.workspace-label{color:#99a69f;padding:15px;font-size:12.5px}.sidebar nav{flex-direction:column;gap:5px;display:flex;overflow:auto}.nav-item{color:#71817a;background:0 0;border-radius:8px;flex-shrink:0;justify-content:flex-start;padding:12px 14px;font-size:15px;font-weight:400}.nav-item.active{color:var(--green);background:#eaf4ef;font-weight:700}.nav-dot{background:var(--green);border-radius:50%;width:6px;height:6px;margin-right:auto}.sidebar-bottom{border-top:1px solid var(--line);align-items:center;gap:10px;margin-top:auto;padding-top:18px;display:flex}.sidebar-bottom strong{font-size:15px}.sidebar-bottom button{margin-right:auto}.main{margin-right:245px}.topbar{border-bottom:1px solid var(--line);background:#ffffffb8;justify-content:space-between;align-items:center;height:77px;padding:0 38px;display:flex}.topbar>div{align-items:center;gap:12px;font-size:15px;display:flex}.topbar>div>span{color:var(--muted)}.private-pill{border:1px solid #dce8df;border-radius:20px;align-items:center;gap:6px;padding:5px 12px;font-size:12.5px;display:flex;color:#60836f!important}.private-pill>span{background:#75a985;border-radius:50%;width:6px;height:6px}.content{max-width:1450px;margin:auto;padding:33px 38px}.page-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:30px;display:flex}.page-heading h1{margin:8px 0 2px;font-size:35px}.page-heading p{color:var(--muted);font-size:15px}.school-selector{border:1px solid var(--line);color:var(--green);background:#fff;border-radius:9px;align-items:center;gap:8px;padding:0 11px;display:flex}.school-selector select{border:0;max-width:240px;font-size:13.75px}.welcome-banner{background:var(--dark);color:#fff;border-radius:15px;justify-content:space-between;margin-bottom:24px;padding:28px 32px;display:flex;position:relative;overflow:hidden}.welcome-banner h2{margin:8px 0;font-size:31.25px}.welcome-banner p{color:#c1d9ce;font-size:15px}.light{color:#badacf}.light-button{color:var(--dark);background:#fff;margin-top:20px;padding:9px 15px;font-size:13.75px}.banner-art{color:#96b9a6;flex-direction:column;justify-content:center;align-items:center;gap:10px;margin:0 40px;display:flex}.banner-art svg{stroke-width:1px}.banner-art span{font-size:12.5px}.stats{grid-template-columns:repeat(4,1fr);gap:17px;margin-bottom:24px;display:grid}.stat{border:1px solid var(--line);background:#fff;border-radius:12px;padding:20px}.stat>div{color:#7a8a81;justify-content:space-between;align-items:center;font-size:15px;display:flex}.stat svg{color:var(--green)}.stat>strong{margin:12px 0 5px;font-size:41.25px;font-weight:700;display:block}.stat small{font-size:12.5px}.panel{border:1px solid var(--line);background:#fff;border-radius:12px;margin-bottom:23px;overflow:hidden}.panel-head{border-bottom:1px solid #f0f3f1;justify-content:space-between;align-items:center;gap:15px;padding:22px 24px;display:flex}.panel-head h2{font-size:20px}.panel-head button{font-size:13.75px}.dashboard-grid{grid-template-columns:1.35fr 1fr;gap:22px;display:grid}.quick-grid{grid-template-columns:1fr 1fr;gap:14px;padding:22px;display:grid}.quick{text-align:right;color:var(--ink);border:1px solid var(--line);background:#fcfdfb;flex-direction:column;align-items:flex-start;padding:17px;position:relative}.quick strong{margin-top:3px;font-size:15px}.quick small{font-size:12.5px;font-weight:400}.quick>svg{color:#9baaa1;position:absolute;top:28px;left:15px}.empty{text-align:center;color:var(--muted);padding:38px 24px;font-size:15px}.empty-icon{color:#9ab0a0;background:#f4f8f3;border-radius:50%;margin-bottom:12px;padding:15px;display:inline-flex}.empty h3{color:#667d6e;margin-bottom:8px;font-size:16.25px}.notification{color:#b96751;border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:18px 23px;font-size:15px;display:flex}.activity-list{padding:0 24px}.activity-list>div{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:17px 0;font-size:13.75px;display:flex}.activity-list small{margin-right:auto;font-size:12.5px}.activity-dot{background:#89ad96;border-radius:50%;width:7px;height:7px}.content-footer{color:#9ba89f;justify-content:space-between;padding-top:10px;font-size:12.5px;display:flex}.content-footer>span{align-items:center;gap:5px;display:flex}.filters{flex-wrap:wrap;align-items:flex-end;gap:16px;padding:20px 24px;display:flex}.filters label{min-width:150px}.search{border:1px solid var(--line);color:var(--muted);border-radius:8px;align-items:center;gap:10px;padding:0 12px;display:flex}.search input{border:0}.table-wrap{overflow-x:auto}table{border-collapse:collapse;text-align:right;width:100%;font-size:15px}th{color:#7a8c80;border-block:1px solid var(--line);white-space:nowrap;background:#f7f9f7;padding:13px 20px;font-size:13.75px;font-weight:400}td{vertical-align:middle;border-bottom:1px solid #edf1ed;padding:17px 20px}td strong{font-weight:700}td small{margin-top:4px}.status-actions{gap:5px;display:flex}.status-actions button{white-space:nowrap;padding:6px 9px;font-size:12.5px}.selected{background:var(--mint);color:var(--green);border:1px solid #c9e1d1}.grade-input{text-align:center;width:100px}.info{color:#8c916b;background:#f5f7f1;border-radius:8px;margin:20px 24px;padding:13px 16px;font-size:13.75px;line-height:1.9}.alert{border-radius:9px;align-items:center;gap:8px;margin-bottom:18px;padding:13px 18px;font-size:15px;display:flex}.error{color:#a84c3c;background:#fff0ed}.error a{text-decoration:underline}.success{color:#318565;background:#e5f5ec}.success button{margin-right:auto}.setup{text-align:center;padding:40px}.setup>svg{color:var(--green);margin-bottom:15px}.setup p{color:var(--muted);margin:12px 0 24px}.school-grid{grid-template-columns:repeat(2,1fr);gap:20px;padding:24px;display:grid}.school-card{border:1px solid var(--line);border-radius:10px;padding:23px}.school-card h3{margin:15px 0 8px}.school-card p{text-align:right;color:var(--muted);margin-bottom:10px;font-size:15px}.card-actions{gap:10px;margin-top:25px;display:flex}.call-entry{border-bottom:1px solid var(--line);padding:22px 24px;font-size:15px}.call-entry>div{gap:15px;display:flex}.call-entry p{color:var(--muted);margin-top:8px}.category-list>div{border-bottom:1px solid var(--line);align-items:center;gap:20px;padding:18px 24px;font-size:15px;display:flex}.category-list button{margin-right:auto}pre{white-space:pre-wrap;overflow-wrap:anywhere;max-width:500px;max-height:300px;font-size:12.5px;overflow:auto}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#152c2866;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{background:#fff;border-radius:15px;width:520px;max-height:90vh;padding:0 25px 25px;overflow:auto;box-shadow:0 30px 100px #0002}.modal .panel-head{margin-bottom:20px;padding:22px 0}.modal>label{margin-bottom:17px}.modal-actions{gap:12px;margin-top:25px;display:flex}.report-preview{border:1px solid var(--line);background:#fff;margin:20px 25px;padding:25px}.report-preview h2,.report-preview>p{text-align:center;margin:15px}.report-header{aspect-ratio:1280/279;width:100%;position:relative;container-type:inline-size}.report-header img{object-fit:contain;width:100%;height:100%;display:block}.school-ar,.school-en{text-align:center;background:#fff;justify-content:center;align-items:center;height:22%;font-size:1.65cqw;font-weight:700;line-height:1.35;display:flex;position:absolute;top:65%}.school-ar{width:33%;font-family:SchoolMajalla,Tahoma,Arial,sans-serif;right:3%}.school-en{width:39%;font-family:SchoolMajalla,Tahoma,Arial,sans-serif;left:2%}.print-only,.mobile-menu{display:none}.print-table th,.print-table td{border:1px solid #ddd;padding:9px}.print-table thead>tr:first-child>td{border:0;padding:0 0 15px}.print-table h2,.print-table p{text-align:center;margin:10px}@media (max-width:1100px){.sidebar{width:210px;padding-inline:13px}.main{margin-right:210px}.content{padding:28px 23px}.topbar{padding:0 23px}.dashboard-grid{grid-template-columns:1fr}.banner-art{margin:0}.hero{gap:30px}.hero h1{font-size:48.75px}.feature-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:760px){.sidebar{width:245px;transition:transform .2s;transform:translate(100%);box-shadow:-20px 0 50px #0001}.sidebar.open{transform:translate(0)}.main{margin-right:0}.mobile-menu{display:inline-flex}.topbar{height:64px;padding-inline:18px}.content{padding:23px 16px}.page-heading{flex-direction:column;align-items:flex-start;gap:15px}.page-heading h1{font-size:30px}.school-selector{width:100%}.school-selector select{width:100%;max-width:none}.stats{grid-template-columns:1fr 1fr;gap:12px}.stat{padding:16px}.stat>strong{font-size:36.25px}.welcome-banner{padding:23px}.welcome-banner h2{font-size:26.25px}.banner-art{display:none}.panel-head{padding:18px}.panel-head h2{font-size:17.5px}.panel-head button{padding:9px 11px}.quick-grid{gap:10px;padding:15px}.quick{padding:13px}.content-footer{flex-direction:column;gap:10px}.filters{padding:18px}.filters label{flex:1}.school-grid{grid-template-columns:1fr;padding:18px}.hero{grid-template-columns:1fr;gap:50px;padding:45px 24px 65px}.hero h1{font-size:46.25px}.hero p{font-size:17.5px}.hero-actions{gap:14px}.hero-actions button{padding:12px 16px}.hero-art{width:100%;max-width:420px;margin:auto}.float-card{left:0}.hero-notes{gap:13px;font-size:12.5px}.features{padding:40px 24px}.feature-grid{gap:12px}.feature-grid article{padding:18px}.feature-grid h3{font-size:17.5px}.public-nav{padding:20px}.public-nav>div>a{display:none}.public-nav .brand{font-size:26.25px}.public-nav button{padding:10px 12px;font-size:13.75px}.brand small{font-size:11.25px}footer{flex-direction:column;gap:10px;padding:24px}.report-preview{margin:15px;padding:10px}.report-preview table{font-size:11.25px}.report-preview th,.report-preview td{padding:8px 5px}.activity-list>div{flex-wrap:wrap}.modal{padding-inline:20px}}@media print{@page{size:A4;margin:12mm}.sidebar,.main,.modal-backdrop{display:none!important}.print-only{display:block!important}body,.app{font-size:13.75px;color:#000!important;background:#fff!important}.print-table{width:100%;font-family:SchoolMajalla,Tahoma,Arial,sans-serif}.print-table thead{display:table-header-group}.print-table tr{break-inside:avoid}.print-table td,.print-table th{color:#000;font-size:12.5px}.report-header{width:100%}.school-ar,.school-en{font-size:13.75px}.print-table h2{font-size:18.75px}}.class-actions{flex-wrap:wrap;gap:10px;display:flex}.class-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding:24px;display:grid}.class-card{border:1px solid var(--line);color:var(--ink);text-align:right;background:#fff;flex-direction:column;align-items:flex-start;gap:13px;padding:25px;display:flex}.class-card:hover{background:#f0f8f3;border-color:#9ac8b4;transform:translateY(-2px)}.class-card strong{font-size:23.75px}.class-card>span:not(.icon-bg){color:var(--muted);font-size:15px}.class-card small{color:var(--green);margin-top:12px}.import-modal{width:940px}.upload-box{cursor:pointer;color:var(--green);background:#f7fbf8;border:2px dashed #c8dcd3;border-radius:12px;align-items:center;margin:15px 0;padding:22px}.upload-box input{max-width:100%;font-size:13.75px}.upload-box span{color:var(--muted);font-size:13.75px}.import-mapping{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0;display:grid}.import-mapping select{max-width:100%}.import-table{max-height:40vh;overflow:auto}.import-table td{padding:10px}.import-table input:not([type=checkbox]){width:100%;min-width:150px}.import-table th{z-index:1;position:sticky;top:0}.import-modal .modal-actions{background:#fff;padding-block:15px;position:sticky;bottom:-25px}.class-actions button{white-space:nowrap}@media (max-width:950px){.class-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:650px){.class-grid{grid-template-columns:1fr;padding:18px}.class-actions{justify-content:flex-start}.panel-head:has(.class-actions){flex-direction:column;align-items:flex-start}.import-mapping{grid-template-columns:1fr}.import-modal{padding-inline:14px}}.class-open{color:var(--ink);text-align:right;background:0 0;flex-direction:column;align-items:flex-start;gap:13px;width:100%;padding:0;display:flex}.class-open:hover{filter:none}.class-card .class-actions{border-top:1px solid var(--line);width:100%;padding-top:15px}.class-card .class-actions button{font-size:13.75px}.student-name{color:var(--ink);text-align:right;background:0 0;padding:0;font-weight:700}.student-name:hover{background:0 0;text-decoration:underline}.phone-list{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.phone-list a{font-variant-numeric:tabular-nums}.phone-fields{flex-direction:column;gap:10px;display:flex}.phone-fields>div{gap:8px;display:flex}.phone-fields input{flex:1;width:100%}.phone-fields .text-button{align-self:flex-start}.current-lesson{color:var(--green);align-items:center;gap:20px;padding:24px;display:flex}.current-lesson h2{color:var(--ink);margin:6px 0}.current-lesson p{color:var(--muted);font-size:15px}.current-lesson>button{margin-right:auto}.period-times{align-items:center;gap:12px;margin:15px 0;display:flex}.period-times>strong{min-width:65px;font-size:15px}.period-times label{flex:1;min-width:0}.period-times input{width:100%}.attendance-legend{color:var(--muted);flex-wrap:wrap;gap:18px;padding:0 24px 18px;font-size:13.75px;display:flex}.attendance-matrix td,.attendance-matrix th{text-align:center;padding:12px 8px}.attendance-matrix td:first-child,.attendance-matrix th:first-child{text-align:right;min-width:160px}.attendance-box{border:2px solid #0000;border-radius:7px;width:39px;height:39px;padding:0;font-size:25px;font-weight:700}.attendance-box.is-present{color:#167440;background:#d6f1df;border-color:#2b9657}.attendance-box.is-absent{color:#af3636;background:#ffe0df;border-color:#c75555}.attendance-box.is-empty{color:#a0aaa3;background:#f1f3f1;border-color:#dbe1dd}.attendance-box.inherited{border-style:dashed}.attendance-box:disabled{opacity:.65}.attendance-matrix td:first-child{z-index:1;background:#fff;position:sticky;right:0}@media (max-width:650px){.current-lesson{flex-wrap:wrap}.current-lesson>button{margin-right:0}.period-times{gap:8px}.attendance-box{width:34px;height:34px}}.weekly-grid{table-layout:fixed;border-collapse:separate;border-spacing:0;direction:rtl;border-top:1px solid #d7e1db;border-right:1px solid #d7e1db;min-width:950px}.weekly-grid th{text-align:center;color:var(--ink);border-top:0;border-bottom:1px solid #d7e1db;border-left:1px solid #d7e1db;border-right:0;min-width:100px;font-size:18.75px;font-weight:700}.weekly-grid th:first-child{z-index:1;background:#f1f7f3;width:125px;position:sticky;right:0}.weekly-grid th small{white-space:nowrap;font-size:11.25px;font-weight:400}.weekly-grid td{vertical-align:top;border-top:0;border-bottom:1px solid #d7e1db;border-left:1px solid #d7e1db;border-right:0;padding:0}.weekly-cell{width:100%;height:auto;min-height:160px;color:var(--ink);background:#fff;border-radius:0;flex-direction:column;justify-content:center;gap:0;font-weight:400;display:flex;position:relative}.weekly-cell.has-lesson{background:#fbfdfb;border-left:8px solid #f18cc6}.weekly-cell.has-lesson:after{content:"";background:#7addb7;width:8px;height:30%;position:absolute;bottom:0;left:-8px}.weekly-cell.coverage{background:#fff8eb;border-color:#e5b764}.weekly-cell strong{font-size:25px}.weekly-cell span{font-size:15px;font-weight:700}.weekly-cell .add-slot{color:#c6d2ca;font-size:31.25px}.weekly-cell:hover{background:#eef7f1}.schedule-reference{object-fit:contain;border:1px solid var(--line);max-width:100%;max-height:380px;margin:18px auto;display:block}.schedule-text{white-space:pre-wrap;background:#f8faf8;max-width:100%;max-height:250px;padding:16px}.weekly-cell:disabled{opacity:1;cursor:default}.import-modal .import-table input[type=number]{width:65px;min-width:60px}.auth-page{background:#f4f7f5;place-items:center;min-height:100vh;padding:24px;display:grid}.auth-card{flex-direction:column;gap:18px;width:min(100%,460px);padding:36px;display:flex}.auth-card h1{margin:0;font-size:35px}.auth-card label{flex-direction:column;gap:8px;display:flex}.auth-card input{width:100%}.invite-box{background:#f4f7f5;border-radius:12px;gap:12px;margin-top:18px;padding:16px;display:grid}.invite-box>strong{letter-spacing:4px;text-align:right;font-size:32.5px}.weekly-cell .merged-main{color:inherit;box-shadow:none;white-space:normal;overflow-wrap:anywhere;background:0 0;border:0;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:10px;width:100%;height:auto;min-height:160px;padding:20px 10px;line-height:1.7;display:flex}.merged-edit{flex-wrap:wrap;flex:none;justify-content:center;gap:8px;padding:6px 8px 12px;display:flex}.merged-edit button{padding:4px;font-size:13.75px}.upcoming-lesson{background:#fff9e9;border-color:#edcf83;align-items:center;gap:18px;display:flex}.upcoming-lesson>div{flex:1}.upcoming-lesson strong{font-size:25px}.upcoming-lesson p{color:#796037;margin:8px 0 0}.schedule-scroll{isolation:isolate;padding-top:10px;padding-bottom:2px}.weekly-grid thead th{vertical-align:middle;height:82px;padding:18px 8px;line-height:1.8}.weekly-grid tbody th{white-space:normal;vertical-align:middle;padding:16px 8px}.weekly-grid th small{margin-top:6px}.weekly-grid .merged-cell .merged-main{min-height:122px}.weekly-grid .merged-cell{min-height:160px}.weekly-grid .day-edit{white-space:normal;margin:8px auto 0;font-size:12.5px}.weekly-grid .away-day{text-align:center;vertical-align:middle;color:#76877f;background:repeating-linear-gradient(135deg,#f8faf9,#f8faf9 12px,#f2f6f4 12px 24px);min-height:160px;padding:30px}.away-day strong{font-size:21.25px;display:block}.away-day small{margin-top:8px}.school-context{color:var(--green);align-items:center;gap:8px;font-size:15px;display:flex}.weekly-grid .merged-main small bdi{display:inline-block}.teacher-locations{color:var(--green);align-items:flex-start;gap:14px;padding:22px 24px;display:flex}.teacher-locations p{color:var(--ink);margin-top:8px}.treatment-fields{grid-template-columns:1fr 1fr;gap:12px;display:grid}.treatment-fields select{white-space:normal;max-width:100%}.category-list>.category-start{border-top:3px solid #147568;margin-top:16px}.report-header{aspect-ratio:1280/279;height:auto;position:relative;overflow:hidden;container-type:inline-size}.report-header img{object-fit:contain;width:100%;height:auto;display:block;position:static}.report-header .school-ar,.report-header .school-en{z-index:1;background:#fff;height:20%;font-size:13.75px;top:70%}.report-header .school-ar{width:33%;right:2%}.report-header .school-en{width:39%;left:2%}.print-table thead>tr:first-child>td{vertical-align:top;padding:0 0 3mm}.print-table h2,.print-table p{margin:2mm 0;line-height:1.4}@media print{@page{size:A4;margin:4mm 6mm 8mm}.print-only{margin:0;padding:0}.print-table{table-layout:auto;margin:0}.report-header{aspect-ratio:1280/279;height:auto}.print-table thead{vertical-align:top}.print-table thead td{vertical-align:top;height:auto}.print-table thead>tr:first-child>td{padding-top:0}.report-header .school-ar,.report-header .school-en{font-size:12.5px}}.report-preview{padding:8px 12px 20px}.report-header .school-ar,.report-header .school-en{height:21%;font-size:1.65cqw;top:70%}.print-table thead>tr:first-child>td{padding-top:0}@media print{.report-header .school-ar,.report-header .school-en{font-size:12.5px}.print-only{width:100%}}@media screen{body{background-color:#f3f8f5;background-image:radial-gradient(at 5% 5%,#dceee5 0,#0000 34%),radial-gradient(at 94% 55%,#e9eedc 0,#0000 36%);background-position:0 0;background-repeat:repeat;background-size:auto;background-attachment:fixed;background-origin:padding-box;background-clip:border-box}.landing{background:radial-gradient(at 90% 8%,#e0f0e7aa,#0000 42%),radial-gradient(at 5% 65%,#eeeeda99,#0000 40%),#fbfcf9}.main{background:radial-gradient(at 95% 0,#e6f2eb88,#0000 45%);min-height:100vh}.sidebar{background:linear-gradient(165deg,#fff 60%,#edf6f0)}.auth-page{background:radial-gradient(circle at 18% 20%,#d8eee3 0,#0000 30%),radial-gradient(circle at 85% 85%,#e9edd8 0,#0000 34%),linear-gradient(135deg,#f9fcfa,#edf5f0)}.auth-card{border-color:#d9e8de;box-shadow:0 18px 65px #245c4312}.panel{box-shadow:0 5px 20px #1b4b3505}.welcome-banner{background:radial-gradient(circle at 5% 100%,#377d64 0,#0000 46%),linear-gradient(110deg,#104e46,#176858)}.topbar{background:#ffffffdc}.school-card,.class-card{background:linear-gradient(145deg,#fff,#f9fcfa)}}.password-meter{background:#f5f9f6;border:1px solid #dfeae3;border-radius:10px;margin:5px 0 18px;padding:13px}.meter-title{justify-content:space-between;gap:10px;font-size:13.75px;display:flex}.meter-track{background:#dfe9e3;border-radius:5px;height:5px;margin:10px 0;overflow:hidden}.meter-track span{height:100%;transition:width .2s;display:block}.password-meter ul{color:#7b8780;grid-template-columns:1fr 1fr;gap:6px 12px;margin:0;padding:0;font-size:12.5px;list-style:none;display:grid}.password-meter li{gap:6px;display:flex}.password-meter li.met{color:#147568}.backup-create>.password-meter{max-width:580px;margin:0 24px 20px}.backup-summary{background:#edf6ef;border-radius:10px;flex-wrap:wrap;gap:12px 25px;margin:20px 24px;padding:18px;font-size:15px;display:flex}.backup-cell{overflow-wrap:anywhere;min-width:100px;max-width:250px}.backup-details{width:320px;max-height:350px;font-size:13.75px;overflow:auto}.backup-details>div{border-bottom:1px solid #e3ece6;padding:7px 0}.backup-details dt{font-weight:700}.backup-details dd{white-space:pre-wrap;overflow-wrap:anywhere;margin:5px 0}@media (max-width:480px){.password-meter ul{grid-template-columns:1fr}.backup-browser .filters label{width:100%}}.event-form{background:#f5f9f6;border:1px solid #dce8df;border-radius:16px;margin:20px 0;padding:22px}.event-form fieldset{border:0;min-width:0;margin:0;padding:0}.event-fields{grid-template-columns:1fr 1fr;gap:18px;display:grid}.event-fields label{flex-direction:column;gap:8px;display:flex}.event-wide{grid-column:1/-1}.event-fields textarea{resize:vertical;min-height:90px}.event-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;display:grid}.event-card{background:linear-gradient(125deg,#fff,#f5f9f6);border:1px solid #dce8df;border-radius:16px;padding:22px}.event-card h3{margin:12px 0}.event-card small{color:#6b7b72}.event-card .modal-actions{flex-wrap:wrap}.event-detail{border:1px solid #dce8df;border-radius:16px;margin-top:24px;padding:24px}.event-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.9}.event-photos{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;display:grid}.event-photos img{object-fit:contain;background:#f1f5f2;border-radius:10px;width:100%;max-height:400px}@media (max-width:640px){.event-fields{grid-template-columns:1fr}.event-form,.event-detail{padding:16px}.event-grid{grid-template-columns:1fr}}.message-editor{background:#f4f8f5;border:1px solid #dce8df;border-radius:14px;margin-top:16px;padding:20px}.message-editor label{flex-direction:column;gap:10px;display:flex}.message-editor textarea{resize:vertical;width:100%;min-height:220px;line-height:1.9}.message-editor small{color:#62766a}body{font-synthesis:none;font-weight:400}h1,h2,h3,h4,h5,h6,strong,b,th{font-weight:700}.report-header .school-ar,.report-header .school-en{font-size:2.2cqw;font-weight:700}@media print{.report-header .school-ar,.report-header .school-en{font-size:14px}}.whatsapp-picker{background:#fff;border:1px solid #c8ddd0;border-radius:12px;flex-wrap:wrap;gap:10px;margin:12px 0;padding:16px;display:flex}.whatsapp-picker legend{padding:0 8px;font-weight:700}.attendance-counts{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:20px 0 12px;display:grid}.attendance-counts>div{background:#f6f9f7;border:1px solid #dce8df;border-radius:12px;flex-direction:column;gap:6px;padding:16px;display:flex}.attendance-counts strong{font-size:30px}.attendance-counts .count-present{color:#186544;background:#e8f4ec}.attendance-counts .count-absent{color:#694d00;background:#fff2a6}.attendance-count-note{margin-bottom:18px}.report-preview tr.report-absent>td,.print-table tr.report-absent>td{-webkit-print-color-adjust:exact;print-color-adjust:exact;color:#172e2b!important;background:#fff2a6!important}@media (max-width:650px){.attendance-counts{grid-template-columns:repeat(2,minmax(0,1fr))}.attendance-counts>div:first-child{grid-column:1/-1}}.duplicate-phone{color:#604900;background:#fff2a6;border:1px solid #ead16c;border-radius:8px;padding:8px 12px}.duplicate-phone summary{cursor:pointer;font-size:15px;font-weight:700}.duplicate-phone ul{min-width:190px;margin:8px 0;padding-inline-start:20px}.duplicate-phone a{color:#604900}.contact-phones{padding:8px 24px}.single-page-print{width:100%;height:auto;display:block}@media print{.single-page-print{object-fit:contain;break-inside:avoid;page-break-inside:avoid;width:198mm;height:280mm}}.phone-duplicate-note{color:#795900;margin:8px 0;font-size:16px;line-height:1.6}.phone-fields .duplicate-phone input{background:#fffbea;border-color:#b88b18}.report-absence-count{color:#6a5200;flex-wrap:wrap;align-items:center;gap:8px;margin:10px 0 0;display:flex}.report-absence-count strong{background:#fff2a6;border-radius:8px;padding:2px 12px;font-size:24px}.report-absence-count small{color:#748078}:is(button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible){outline:3px solid var(--focus);outline-offset:2px}button:active{transform:translateY(1px)}input[type=radio],input[type=checkbox]{accent-color:var(--green);cursor:pointer;width:20px;min-width:0;height:20px;min-height:0;padding:0}select,input:not([type=radio]):not([type=checkbox]){min-height:44px}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}@media screen{body{background:var(--bg);background-image:none;line-height:1.6}h1,h2,h3{line-height:1.45}.main{background:0 0}.auth-card{box-shadow:none;border-color:var(--line)}.sidebar{background:var(--dark);color:#fff;border-left:0}.sidebar .brand{color:#fff}.sidebar .brand small,.sidebar small{color:#a8cdc0}.sidebar .logo{background:var(--mint);color:var(--dark)}.workspace-label{color:#8fb9aa;font-size:14px}.nav-item{color:#d3e6de;min-height:46px;font-size:16px}.nav-item:hover{background:#ffffff14}.nav-item.active{color:#fff;background:#ffffff1f;box-shadow:inset -3px 0 #9fdcc6}.nav-dot{display:none}.sidebar-bottom{border-top-color:#ffffff26}.sidebar-bottom strong{color:#fff}.sidebar .avatar{background:var(--mint);color:var(--dark)}.sidebar .icon-button{color:#d3e6de}.topbar{border-bottom:1px solid var(--line);background:#fff}.topbar>div>span{color:var(--muted)}.private-pill{background:#f1f8f4;border-color:#c5dccf;color:#3b6654!important}.eyebrow{color:#2f6b5e}.page-heading h1{color:var(--ink)}.panel{border-color:var(--line);box-shadow:none;border-radius:10px}.panel-head{border-bottom-color:#e8eee9}.stat,.school-card,.class-card,.event-card{box-shadow:none}.school-card,.class-card,.event-card{background:#fff;border-radius:10px}.class-card:hover{background:var(--soft);border-color:#8fc2ae}.stats{border:1px solid var(--line);background:#fff;border-radius:10px;gap:0;overflow:hidden}.stat{border:0;border-inline-start:1px solid var(--line);border-radius:0;padding:22px 24px}.stat:first-child{border-inline-start:0}.stat>div{color:var(--muted)}.stat svg{color:#6a9a8c}.stat>strong{color:var(--dark);font-size:44px;line-height:1.3}.welcome-banner{color:var(--ink);background:#e8f3ec;border:1px solid #cfe2d8;border-radius:12px}.welcome-banner h2{color:var(--dark)}.welcome-banner p{color:#3a5a51}.welcome-banner .light{color:#2f6b5e}.welcome-banner .light-button{background:var(--green);color:#fff}.banner-art{color:#6aa391}.banner-art span{color:var(--dark)}.quick{background:#fff;border-radius:10px}.quick:hover{background:var(--soft);border-color:#8fc2ae}.quick>svg{color:#6a9a8c}.icon-bg,.feature-icon{border-radius:10px}th{color:#46605a;background:#f1f5f2;padding:13px 20px;font-size:14.5px;font-weight:700}td{border-bottom-color:#e8eee9;padding:15px 20px}tbody tr:last-child td{border-bottom:0}tbody tr:hover td{background:#f7faf8}.tag,.status{color:#455b54;background:#edf2ef}.present{color:#1b6843;background:#e0f2e7}.absent{color:#a43d2c;background:#fde8e3}.attendance-counts{margin:20px 24px 14px}.attendance-counts>div{background:#fff;border-radius:10px}.attendance-counts .count-present{background:#e4f3ea}.info{color:#566040;background:#f3f6ee}.notification{color:#a4452f}.empty,.muted{color:var(--muted)}.empty h3{color:#46605a}.empty-icon{background:var(--mint);color:#5f9585}.content-footer{color:#63776f}.modal{border-radius:14px;box-shadow:0 24px 80px #0f2f2a40}.modal-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f2c2878}.secondary{border-color:#cbd8d1}.secondary:hover{background:var(--soft)}.upload-box{background:#f4faf6;border-color:#b9d4c8}.weekly-cell.has-lesson{border-left:6px solid var(--green);background:#f4faf6}.weekly-cell.has-lesson:after{display:none}.weekly-cell.has-lesson.coverage{background:#fff8eb;border-left-color:#d49a2a}.weekly-grid th:first-child{background:var(--mint)}.public-nav{border-bottom-color:var(--line)}.public-nav>div>a,.hero p{color:var(--muted)}.hero-notes{color:var(--muted);font-size:15px}.art-ring{display:none}.hero-art{padding:30px 12px 44px}.illustration-card{border:1px solid #c6d9cf;border-radius:14px;transform:none;box-shadow:-12px 12px #dcebe3}.float-card{border-color:#c6d9cf;border-radius:10px;box-shadow:-6px 6px #dcebe3}.mini-grid div{border-radius:8px}.features{border-top-color:var(--line)}.feature-grid{border-block:1px solid var(--line);gap:0}.feature-grid article{border:0;border-inline-start:1px solid var(--line);background:0 0;border-radius:0;padding:30px 26px}.feature-grid article:first-child{border-inline-start:0}.feature-grid p{color:var(--muted);font-size:16px}@media (max-width:1100px){.feature-grid article{border-inline-start:0;border-bottom:1px solid var(--line)}.feature-grid article:nth-child(odd){border-inline-end:1px solid var(--line)}.feature-grid article:nth-last-child(-n+2){border-bottom:0}}@media (max-width:760px){.stats{gap:0}.stat{border-inline-start:1px solid var(--line);border-bottom:1px solid var(--line);padding:16px}.stat:nth-child(odd){border-inline-start:0}.stat:nth-last-child(-n+2){border-bottom:0}.stat>strong{font-size:38px}.sidebar.open{box-shadow:-24px 0 60px #0f2f2a55}}@media (max-width:600px){.feature-grid{grid-template-columns:1fr}.feature-grid article,.feature-grid article:nth-child(odd){border-inline-end:0;border-bottom:1px solid var(--line)}.feature-grid article:nth-last-child(-n+2){border-bottom:1px solid var(--line)}.feature-grid article:last-child{border-bottom:0}}body{background:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 1440 900%22 preserveAspectRatio=%22xMidYMid slice%22%3E%0A%3Ccircle cx=%22110%22 cy=%22790%22 r=%22290%22 fill=%22%23e3efe8%22/%3E%3Ccircle cx=%22110%22 cy=%22790%22 r=%22190%22 fill=%22%23d3e6db%22/%3E%3Ccircle cx=%22110%22 cy=%22790%22 r=%2296%22 fill=%22%23c3ddcf%22/%3E%0A%3Crect x=%22-170%22 y=%22250%22 width=%22240%22 height=%22240%22 rx=%2246%22 transform=%22rotate%2820 -50 370%29%22 fill=%22%23e5efe2%22/%3E%0A%3Cpath d=%22M600 205a105 105 0 0 1 210 0z%22 fill=%22%23f1e9d2%22/%3E%0A%3Cpath d=%22M0 560c120-60 200 60 330 0s210-60 330 0%22 fill=%22none%22 stroke=%22%23cfe3d8%22 stroke-width=%224%22 stroke-linecap=%22round%22/%3E%0A%3Cpath d=%22M1060 880 1150 730 1240 880z%22 fill=%22%23efe6cc%22 opacity=%22.9%22/%3E%0A%3Cg stroke=%22%239cc6b4%22 stroke-width=%224%22 stroke-linecap=%22round%22%3E%3Cpath d=%22M520 150v28M506 164h28%22/%3E%3Cpath d=%22M300 300v28M286 314h28%22/%3E%3C/g%3E%0A%3Ccircle cx=%22440%22 cy=%22150%22 r=%2214%22 fill=%22none%22 stroke=%22%23c9b574%22 stroke-width=%224%22/%3E%3Ccircle cx=%22240%22 cy=%22470%22 r=%2211%22 fill=%22%23b5d5c6%22/%3E%0A%3Ccircle cx=%22250%22 cy=%22100%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22250%22 cy=%22134%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22250%22 cy=%22168%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22284%22 cy=%22100%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22284%22 cy=%22134%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22284%22 cy=%22168%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22318%22 cy=%22100%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22318%22 cy=%22134%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22318%22 cy=%22168%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22352%22 cy=%22100%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22352%22 cy=%22134%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22352%22 cy=%22168%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22386%22 cy=%22100%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22386%22 cy=%22134%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22386%22 cy=%22168%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%221000%22 cy=%22300%22 r=%223.2%22 fill=%22%23d9c58f%22/%3E%3Ccircle cx=%221000%22 cy=%22334%22 r=%223.2%22 fill=%22%23d9c58f%22/%3E%3Ccircle cx=%221000%22 cy=%22368%22 r=%223.2%22 fill=%22%23d9c58f%22/%3E%3Ccircle cx=%221034%22 cy=%22300%22 r=%223.2%22 fill=%22%23d9c58f%22/%3E%3Ccircle cx=%221034%22 cy=%22334%22 r=%223.2%22 fill=%22%23d9c58f%22/%3E%3Ccircle cx=%221034%22 cy=%22368%22 r=%223.2%22 fill=%22%23d9c58f%22/%3E%3Ccircle cx=%221068%22 cy=%22300%22 r=%223.2%22 fill=%22%23d9c58f%22/%3E%3Ccircle cx=%221068%22 cy=%22334%22 r=%223.2%22 fill=%22%23d9c58f%22/%3E%3Ccircle cx=%221068%22 cy=%22368%22 r=%223.2%22 fill=%22%23d9c58f%22/%3E%3Ccircle cx=%221102%22 cy=%22300%22 r=%223.2%22 fill=%22%23d9c58f%22/%3E%3Ccircle cx=%221102%22 cy=%22334%22 r=%223.2%22 fill=%22%23d9c58f%22/%3E%3Ccircle cx=%221102%22 cy=%22368%22 r=%223.2%22 fill=%22%23d9c58f%22/%3E%3C/svg%3E") center/cover no-repeat fixed,var(--bg)}.auth-page{background:0 0}.landing{background:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 1440 1500%22%3E%0A%3Ccircle cx=%221390%22 cy=%22210%22 r=%22250%22 fill=%22%23e3efe8%22/%3E%3Ccircle cx=%221390%22 cy=%22210%22 r=%22160%22 fill=%22%23d3e6db%22/%3E%0A%3Crect x=%22-150%22 y=%22520%22 width=%22260%22 height=%22260%22 rx=%2252%22 transform=%22rotate%2818 -20 650%29%22 fill=%22%23e5efe2%22/%3E%0A%3Cpath d=%22M-20 360a90 90 0 0 1 180 0z%22 fill=%22%23f1e9d2%22/%3E%0A%3Cpath d=%22M0 840c140-70 260 70 400 0s260-70 400 0 260 70 400 0 180-40 240-20%22 fill=%22none%22 stroke=%22%23cfe3d8%22 stroke-width=%224%22 stroke-linecap=%22round%22/%3E%0A%3Cpath d=%22M700 800 770 680 840 800z%22 fill=%22%23efe6cc%22/%3E%0A%3Cg stroke=%22%239cc6b4%22 stroke-width=%224%22 stroke-linecap=%22round%22%3E%3Cpath d=%22M640 120v34M623 137h34%22/%3E%3Cpath d=%22M770 610v28M756 624h28%22/%3E%3Cpath d=%22M60 450v28M46 464h28%22/%3E%3C/g%3E%0A%3Ccircle cx=%22820%22 cy=%2280%22 r=%2216%22 fill=%22none%22 stroke=%22%23c9b574%22 stroke-width=%224%22/%3E%3Ccircle cx=%22700%22 cy=%22420%22 r=%2211%22 fill=%22%23b5d5c6%22/%3E%0A%3Ccircle cx=%22690%22 cy=%22300%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22690%22 cy=%22334%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22690%22 cy=%22368%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22690%22 cy=%22402%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22724%22 cy=%22300%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22724%22 cy=%22334%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22724%22 cy=%22368%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22724%22 cy=%22402%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22758%22 cy=%22300%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22758%22 cy=%22334%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22758%22 cy=%22368%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22758%22 cy=%22402%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22792%22 cy=%22300%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22792%22 cy=%22334%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22792%22 cy=%22368%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22792%22 cy=%22402%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22826%22 cy=%22300%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22826%22 cy=%22334%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22826%22 cy=%22368%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22826%22 cy=%22402%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%2240%22 cy=%221290%22 r=%22170%22 fill=%22%23e3efe8%22/%3E%3Ccircle cx=%2240%22 cy=%221290%22 r=%2295%22 fill=%22%23d3e6db%22/%3E%0A%3Ccircle cx=%221420%22 cy=%221120%22 r=%22120%22 fill=%22%23f1e9d2%22/%3E%0A%3Ccircle cx=%22200%22 cy=%221000%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22200%22 cy=%221034%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22234%22 cy=%221000%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22234%22 cy=%221034%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22268%22 cy=%221000%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22268%22 cy=%221034%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22302%22 cy=%221000%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22302%22 cy=%221034%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22336%22 cy=%221000%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22336%22 cy=%221034%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22370%22 cy=%221000%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22370%22 cy=%221034%22 r=%223.2%22 fill=%22%23a9cdbd%22/%3E%0A%3Cg stroke=%22%239cc6b4%22 stroke-width=%224%22 stroke-linecap=%22round%22%3E%3Cpath d=%22M1370 1000v28M1356 1014h28%22/%3E%3Cpath d=%22M560 1050v28M546 1064h28%22/%3E%3C/g%3E%3Ccircle cx=%22120%22 cy=%221020%22 r=%2214%22 fill=%22none%22 stroke=%22%23c9b574%22 stroke-width=%224%22/%3E%3C/svg%3E") top/1440px no-repeat,#f8faf5}}@media screen and (max-width:760px){.landing{background:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 390 1500%22%3E%0A%3Ccircle cx=%22392%22 cy=%22250%22 r=%22105%22 fill=%22%23e3efe8%22/%3E%3Ccircle cx=%22392%22 cy=%22250%22 r=%2264%22 fill=%22%23d3e6db%22/%3E%0A%3Cpath d=%22M232 612 262 560 292 612z%22 fill=%22%23efe6cc%22/%3E%3Ccircle cx=%22120%22 cy=%22575%22 r=%222.8%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22120%22 cy=%22601%22 r=%222.8%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22146%22 cy=%22575%22 r=%222.8%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22146%22 cy=%22601%22 r=%222.8%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22172%22 cy=%22575%22 r=%222.8%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22172%22 cy=%22601%22 r=%222.8%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22198%22 cy=%22575%22 r=%222.8%22 fill=%22%23a9cdbd%22/%3E%3Ccircle cx=%22198%22 cy=%22601%22 r=%222.8%22 fill=%22%23a9cdbd%22/%3E%0A%3Ccircle cx=%22345%22 cy=%22590%22 r=%2211%22 fill=%22none%22 stroke=%22%23c9b574%22 stroke-width=%223.5%22/%3E%0A%3Cg stroke=%22%239cc6b4%22 stroke-width=%223.5%22 stroke-linecap=%22round%22%3E%3Cpath d=%22M50 575v22M39 586h22%22/%3E%3Cpath d=%22M200 640v20M190 650h20%22/%3E%3C/g%3E%0A%3Ccircle cx=%22-12%22 cy=%22880%22 r=%2280%22 fill=%22%23e3efe8%22/%3E%3Ccircle cx=%22-12%22 cy=%22880%22 r=%2244%22 fill=%22%23d3e6db%22/%3E%0A%3Ccircle cx=%22402%22 cy=%221060%22 r=%2270%22 fill=%22%23f1e9d2%22/%3E%0A%3Cpath d=%22M0 1180c60-40 110 40 180 0s120-40 210 0%22 fill=%22none%22 stroke=%22%23cfe3d8%22 stroke-width=%223.5%22 stroke-linecap=%22round%22/%3E%0A%3Ccircle cx=%22400%22 cy=%221380%22 r=%2290%22 fill=%22%23e3efe8%22/%3E%3C/svg%3E") top/100% no-repeat,#f8faf5}}.notification-root{position:relative}.notification-bell{min-width:40px;min-height:40px;position:relative}.notification-count{color:#fff;background:#bc3838;border:2px solid #fff;border-radius:20px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 4px;font:700 11px Arial;display:flex;position:absolute;top:0;right:-3px}.notification-popover{border:1px solid var(--line);z-index:60;background:#fff;border-radius:14px;width:min(380px,100vw - 32px);padding:18px;position:absolute;top:48px;left:0;box-shadow:0 12px 40px #173e3226}.notification-list{max-height:55vh;overflow-y:auto}.notification-item{text-align:right;width:100%;color:var(--ink);border-bottom:1px solid var(--line);background:#fff;border-radius:8px;flex-direction:column;align-items:stretch;padding:12px;font-weight:400;display:flex}.notification-item.unread{border-inline-start:3px solid var(--green);background:#eaf5ef}.notification-item span{font-size:15px;line-height:1.6}.class-lesson{flex-direction:column;gap:5px;padding:10px 5px;display:flex}.class-lesson.coverage{background:#fff5cf;border-radius:8px}.class-schedule td{vertical-align:top;min-width:130px}.region-ar,.region-en{text-align:center;background:#fff;justify-content:center;align-items:center;height:17%;font-size:1.85cqw;font-weight:700;line-height:1.05;display:flex;position:absolute;top:53%;overflow:hidden}.region-ar{width:33%;height:11%;top:59%;right:2%}.region-en{width:39%;left:2%}@media print{.notification-root{display:none!important}.report-header .region-ar,.report-header .region-en{font-size:11px}}.class-card>.class-actions{gap:5px;width:100%;flex-flow:row!important;align-items:stretch!important;display:flex!important}.class-card>.class-actions button{white-space:nowrap;flex:1 1 0;min-width:0;padding:9px 3px;font-size:14px}.class-schedule-modal{width:calc(100vw - 32px)!important;max-width:1240px!important;padding:24px!important}.class-schedule-tools{flex-wrap:wrap;gap:10px;margin-bottom:16px;display:flex}.class-schedule-modal .class-schedule{table-layout:fixed;border-collapse:collapse;width:100%!important;min-width:0!important}.class-schedule-modal .class-schedule th,.class-schedule-modal .class-schedule td{overflow-wrap:anywhere;border:1px solid var(--line);padding:8px 3px;font-size:16px;text-align:center!important;vertical-align:middle!important;white-space:normal!important;width:auto!important;min-width:0!important}.class-schedule-modal .class-schedule th{background:#e7f3ee}.class-schedule-modal .class-schedule small{font-size:12px}.class-schedule-modal .class-lesson{justify-content:center;align-items:center;gap:3px;min-height:80px;padding:4px;display:flex}.class-lesson-main{flex-direction:column;justify-content:center;align-items:center;gap:4px;width:100%;min-width:0;padding:4px;font-size:16px;display:flex;color:var(--ink)!important;white-space:normal!important;text-align:center!important;background:0 0!important}.class-period-edit{flex-wrap:wrap;justify-content:center;gap:3px;display:flex}.class-period-edit button{padding:2px;font-size:12px}@media (max-width:600px){.class-schedule-modal{width:calc(100vw - 12px)!important;padding:10px!important}.class-schedule-modal .class-schedule th,.class-schedule-modal .class-schedule td,.class-lesson-main{font-size:12px}.class-schedule-modal .class-schedule small{font-size:10px}.class-schedule-modal .class-lesson{padding:1px}.class-card>.class-actions button{font-size:13px}}@media (max-width:768px){.notification-popover{box-sizing:border-box;z-index:90;width:auto;max-width:none;max-height:calc(100dvh - 88px);padding:14px;position:fixed;top:72px;left:12px;right:12px;overflow-y:auto}.notification-popover .panel-head{flex-direction:row;align-items:center;gap:8px;display:flex}.notification-popover .notification-list{overscroll-behavior:contain;max-height:calc(100dvh - 250px);overflow-y:auto}.notification-item{overflow-wrap:anywhere;white-space:normal;min-width:0}.notification-popover h2{font-size:20px}}.class-import-table{min-width:720px}.class-import-table input,.class-import-table select{min-width:65px;max-width:100%}.class-import-table td:nth-child(3),.class-import-table td:nth-child(4){width:70px}.class-import-table td:last-child{min-width:180px}.account-avatar{border-radius:50%;flex-shrink:0;place-items:center;width:42px;height:42px;padding:0;display:grid;overflow:hidden}.account-avatar img{object-fit:cover;width:100%;height:100%}.photo-backdrop{z-index:1000;background:#102e3277;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.photo-dialog{color:var(--ink);background:#fff;border-radius:16px;width:min(420px,100%);max-height:90dvh;padding:24px;overflow:auto}.photo-preview{object-fit:cover;border-radius:50%;width:120px;height:120px;margin:12px auto;display:block}.photo-dialog input{max-width:100%}.photo-actions{justify-content:center;gap:10px;display:flex}.migration-export-panel{flex-direction:column;gap:12px;padding:24px;display:flex}.migration-export-actions{justify-content:flex-start;padding-top:8px;display:flex}.migration-download-button{text-align:center;border-radius:10px;gap:10px;max-width:100%;min-height:48px;padding:12px 24px;line-height:1.5;box-shadow:0 3px 9px #14756820}.migration-download-button svg{flex-shrink:0}.migration-download-button span{overflow-wrap:anywhere}.migration-download-button:disabled{opacity:.7}.migration-export-status{background:var(--mint);overflow-wrap:anywhere;border-radius:9px;padding:12px 16px}.migration-download-spinner{animation:1s linear infinite migration-spin}@keyframes migration-spin{to{transform:rotate(360deg)}}@media (max-width:600px){.migration-export-panel{padding:18px}.migration-download-button{width:100%;padding:12px 16px}.migration-export-actions{width:100%}}@media (prefers-reduced-motion:reduce){.migration-download-spinner{animation:none}}
