:root{--bg:#f4f5f7;--surface:#fff;--ink:#1d1d1f;--muted:#6e6e73;--line:#e8e9ee;--line2:#f1f2f5;--blue:#2f6df6;--blue-dark:#1f5ae0;--blue-soft:#eaf1ff;--green:#27a567;--green-soft:#e6f6ee;--amber:#d97a06;--amber-soft:#fdf3e2;--red:#e5484d;--red-soft:#fdecec;--radius:18px;--shadow:0 1px 2px #1018280a,0 8px 24px #1018280f}*{box-sizing:border-box}html{font-size:16px}body{background:var(--bg);color:var(--ink);min-height:100vh;margin:0;font-family:-apple-system,BlinkMacSystemFont,SF Arabic,Segoe UI,Noto Naskh Arabic,Tahoma,Arial,sans-serif;line-height:1.55}button,input{color:inherit;font-family:inherit}button{cursor:pointer}.login-shell{background:radial-gradient(circle at 10% 0,#dfeaff,transparent 40%),var(--bg);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:var(--surface);border:1px solid var(--line);border-radius:26px;width:min(440px,100%);padding:34px;box-shadow:0 22px 60px #19345b14}.brand{align-items:center;gap:12px;display:flex}.brand span{color:#fff;background:linear-gradient(135deg,#4f8bff,#2f5ef0);border-radius:13px;place-items:center;width:44px;height:44px;font-size:24px;font-weight:800;display:grid;box-shadow:0 6px 14px #2f6df659}.brand b,.brand small{display:block}.brand small{color:var(--muted);margin-top:4px;font-size:12px}.login-card h1{color:#172033;letter-spacing:-.02em;margin:38px 0 8px}.muted{color:var(--muted);line-height:1.7}.login-card form{gap:15px;margin-top:25px;display:grid}.login-card label{color:#334155;gap:7px;font-size:14px;font-weight:800;display:grid}.login-card input,.search{background:#f8fafc;border:1px solid #d7e0ec;border-radius:12px;outline:none;padding:12px 14px}.login-card input:focus,.search:focus{border-color:var(--blue);background:#fff;box-shadow:0 0 0 4px #2f6df624}.primary,.ghost{cursor:pointer;border:0;border-radius:999px;padding:11px 20px;font-weight:800}.primary{background:var(--blue);color:#fff;box-shadow:0 6px 14px #2f6df64d}.primary:hover{background:var(--blue-dark)}.ghost{background:var(--line2);color:var(--ink)}.hint{color:var(--muted);margin-top:18px;display:block}.error{background:var(--red-soft);color:var(--red);border:1px solid #ffd0d0;border-radius:10px;margin-top:12px;padding:10px}.app-shell{min-height:100vh}.topbar{background:var(--surface);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:76px;padding:0 max(24px,50% - 590px);display:flex}.top-actions{align-items:center;gap:15px;display:flex}.online{color:var(--green);font-size:13px;font-weight:700}.logout-button{background:var(--red-soft);color:var(--red);border:0;border-radius:12px;align-items:center;gap:8px;padding:10px 14px;font-weight:800;display:inline-flex}.content{max-width:1280px;margin:0 auto;padding:30px clamp(16px,4vw,48px) 60px}.app-layout{grid-template-columns:268px minmax(0,1fr);align-items:start;gap:26px;display:grid}.sidebar{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px;position:sticky;top:20px}.menu-item{text-align:right;width:100%;color:var(--muted);background:0 0;border:0;border-radius:13px;align-items:center;gap:12px;margin-bottom:4px;padding:11px 14px;font-size:.95rem;font-weight:700;transition:background .18s,color .18s;display:flex}.menu-item:hover{background:var(--line2);color:var(--ink)}.menu-item.active{background:var(--blue-soft);color:var(--blue)}.menu-icon{flex:0 0 22px;width:22px;height:22px;display:inline-flex}.menu-icon svg{width:22px;height:22px}.main-column{min-width:0}.page-heading{margin-bottom:22px}.welcome{justify-content:space-between;align-items:center;gap:20px;display:flex}.eyebrow{color:var(--blue);margin:0;font-weight:800}.welcome h1{letter-spacing:-.02em;margin:7px 0;font-size:1.6rem}.stats{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin:0 0 16px;display:grid}.stats div,.card,.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px}.stats span,.stats strong{display:block}.stats span{color:var(--muted);font-size:14px}.stats strong{margin-top:10px;font-size:30px}.grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;display:grid}.card-head,.search-row{justify-content:space-between;align-items:center;gap:16px;display:flex}.card h2,.panel h2{margin:0;font-size:18px}.card p{color:var(--muted)}.card small{color:var(--muted);line-height:1.8}.badge,.status{background:var(--blue-soft);color:var(--blue);white-space:nowrap;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:800}.fee{color:var(--green);margin-top:20px;font-weight:800}.search{width:min(300px,100%)}.table-wrap{margin-top:20px;overflow:auto}table{border-collapse:collapse;width:100%}th,td{text-align:right;border-bottom:1px solid var(--line);padding:14px 10px}th{color:var(--muted);font-size:13px}.status{color:var(--green);background:#e8f8f0}.empty{text-align:center;color:var(--muted);padding:35px}@media (max-width:820px){.app-layout{grid-template-columns:1fr}.sidebar{gap:5px;padding:8px;display:flex;position:static;overflow:auto}.menu-item{width:auto;min-width:max-content;margin:0;padding:10px 12px}.menu-item span{white-space:nowrap}.content{padding:24px 16px}.topbar{height:auto;padding:16px 20px}.top-actions{gap:8px}.online{display:none}}@media (max-width:600px){.welcome,.search-row{flex-direction:column;align-items:stretch}.stats{grid-template-columns:1fr 1fr;gap:8px}.stats div{padding:14px}.stats strong{font-size:24px}.search{width:100%}}.role-grid{grid-template-columns:repeat(3,1fr);gap:10px;margin:20px 0;display:grid}.role-btn{border:1.5px solid var(--line);color:var(--muted);background:#fff;border-radius:14px;flex-direction:column;align-items:center;gap:6px;padding:12px 6px;font-size:.82rem;font-weight:800;transition:all .18s;display:flex}.role-btn:hover{background:var(--line2);color:var(--ink)}.role-btn.on{border-color:var(--blue);background:var(--blue-soft);color:var(--blue)}.role-btn .menu-icon,.role-btn .menu-icon svg{width:20px;height:20px}.primary.small{padding:9px 16px;font-size:.86rem}.logout-button:hover{filter:brightness(.97)}.danger-button{background:var(--red-soft);color:var(--red);cursor:pointer;border:0;border-radius:999px;padding:7px 14px;font-weight:800}.danger-button:hover{filter:brightness(.96)}.theme-button{background:var(--line2);color:var(--ink);cursor:pointer;border:0;border-radius:12px;padding:9px 13px;font-weight:800}.theme-button:hover{background:var(--line)}.attendance-editor{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);gap:8px;padding:18px;display:grid}.attendance-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:11px 0;display:flex}.attendance-btn{border:1px solid var(--line);background:var(--line2);color:var(--muted);cursor:pointer;border-radius:10px;margin-inline:3px;padding:7px 12px;font-weight:800}.attendance-btn.selected.present{background:var(--green-soft);color:var(--green);border-color:var(--green)}.attendance-btn.selected.late{background:var(--amber-soft);color:var(--amber);border-color:var(--amber)}.attendance-btn.selected.absent{background:var(--red-soft);color:var(--red);border-color:var(--red)}.question-card{gap:10px;margin-top:14px;display:grid}.option-choice{border:1px solid var(--line);cursor:pointer;border-radius:12px;align-items:center;gap:8px;padding:10px 12px;display:flex}.option-choice.selected{border-color:var(--blue);background:var(--blue-soft);color:var(--blue)}.result-card{text-align:center;padding:40px}.result-card h1{margin-bottom:12px}html.dark{--bg:#111318;--surface:#1b1e26;--ink:#f5f7fb;--muted:#b4bac7;--line:#303644;--line2:#252a34;--blue:#79a4ff;--blue-dark:#5c88ef;--blue-soft:#202d49;--green:#57d493;--green-soft:#173b2b;--red:#ff7b80;--red-soft:#452326;--amber:#f0aa4b;--amber-soft:#45351f;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html.dark .login-shell{background:radial-gradient(circle at 10% 0,#202d49,transparent 40%),var(--bg)}html.dark .login-card input,html.dark .modal-card input,html.dark .search{color:var(--ink);border-color:var(--line);background:#20242d}html.dark .login-card h1{color:var(--ink)}html.dark .role-btn{background:var(--surface);color:var(--muted);border-color:var(--line)}html.dark .role-btn.on{background:var(--blue-soft);color:var(--blue);border-color:var(--blue)}html.dark .theme-button,html.dark .ghost{background:var(--line2);color:var(--ink)}html.dark .menu-item:hover,html.dark .theme-button:hover{color:var(--ink);background:#2a3040}html.dark tbody tr:hover{background:#252b36}.action-button{margin-inline:3px;padding:7px 14px}.modal-backdrop{z-index:20;background:#0f172a59;place-items:center;padding:20px;display:grid;position:fixed;inset:0;overflow-y:auto}.modal-card{box-sizing:border-box;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);gap:14px;width:min(520px,100%);max-height:calc(100vh - 40px);padding:22px;display:grid;overflow-y:auto;box-shadow:0 24px 48px #1018282e}.modal-card label{color:var(--muted);gap:6px;font-weight:800;display:grid}.modal-card input{border:1px solid var(--line);background:#f8fafc;border-radius:12px;outline:none;padding:11px 13px}.modal-card input:focus{border-color:var(--blue);background:#fff;box-shadow:0 0 0 4px #2f6df624}.schedule-field{border:1px solid var(--line);border-radius:14px;padding:12px}.schedule-field legend{color:var(--muted);padding:0 8px;font-weight:800}.schedule-row{grid-template-columns:auto 1fr auto;align-items:center;gap:8px;padding:6px 0;display:grid!important}.schedule-row input[type=time]{width:120px}.teacher-dashboard{gap:18px;display:grid}.dashboard-greeting{justify-content:space-between;align-items:center;gap:18px;padding:6px 0;display:flex}.dashboard-greeting h1{margin:6px 0;font-size:clamp(1.5rem,3vw,2.2rem)}.dashboard-columns{grid-template-columns:1.25fr 1fr;gap:16px;display:grid}.dashboard-session,.dashboard-group{border-bottom:1px solid var(--line);align-items:center;gap:14px;padding:14px 0;display:flex}.dashboard-session>div{flex:1;display:grid}.dashboard-session small{color:var(--muted)}.dashboard-session>span{color:var(--muted);font-weight:800}.dashboard-group b{flex:1}.dashboard-group span{background:var(--line2);color:var(--muted);border-radius:999px;padding:5px 10px;font-size:13px;font-weight:800}@media (max-width:820px){.dashboard-columns{grid-template-columns:1fr}}@media (max-width:600px){.dashboard-greeting{flex-direction:column;align-items:stretch}.dashboard-session{flex-wrap:wrap;align-items:stretch}.dashboard-session>div{flex-basis:100%}}.modal-card select{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:12px;padding:11px 13px}.check-label{align-items:center;gap:8px;display:flex!important}.check-label input{width:18px;height:18px}.child-selector{margin-bottom:16px}.child-selector label{color:var(--muted);gap:8px;font-weight:800;display:grid}.child-selector select{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:12px;min-width:240px;padding:11px 13px}.loading-state{min-height:120px;color:var(--muted);place-items:center;display:grid}.contact-card{border-top:1px solid var(--line);text-align:center;color:var(--ink);margin-top:24px;padding-top:18px}.contact-card>strong{font-size:1rem}.contact-links{justify-content:center;gap:8px;margin-top:12px;display:flex}.contact-link{border:1px solid var(--line);min-height:42px;color:var(--ink);background:var(--surface);border-radius:12px;align-items:center;gap:6px;padding:7px 10px;text-decoration:none;transition:transform .18s,box-shadow .18s,border-color .18s;display:flex}.contact-link:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.contact-link span{color:#fff;border-radius:7px;place-items:center;width:22px;height:22px;font-size:13px;font-weight:900;display:grid}.contact-link small{color:var(--muted);font-size:10px}.contact-link.whatsapp span{background:#25d366}.contact-link.linkedin span{background:#0a66c2}.contact-link.gmail span{background:#ea4335}.contact-link b{font-size:11px}.honor-columns{margin-top:18px}.honor-list{gap:8px;margin-top:14px;display:grid}.honor-row{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:10px 0;display:flex}.honor-row>div{flex:1;display:grid}.honor-row small{color:var(--muted)}.honor-rank{background:var(--line2);border-radius:50%;place-items:center;width:28px;height:28px;font-weight:800;display:grid}.honor-rank.top{color:#147a4a;background:var(--green-soft)}.honor-rank.lowest{color:#a65a18;background:var(--amber-soft)}.honor-filter{color:var(--muted);align-items:center;gap:8px;font-weight:800;display:flex}.honor-filter select{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:10px;padding:9px 12px}.brand b{font-size:0}.brand b:after{content:"Mgame3 مجاميع";font-size:1rem}.brand span{background-image:url(/icon.svg);background-position:50%;background-size:cover;font-size:0}@font-face{font-family:Thmanyah Digital;src:url(https://framerusercontent.com/assets/Ej0k3h4Mi5O7TSo2w2JaDCPRgvo.woff2)format("woff2");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Thmanyah Digital;src:url(https://framerusercontent.com/assets/JUv6rms2ye2kYL3UI3O9YyExQcQ.woff2)format("woff2");font-style:normal;font-weight:700;font-display:swap}body,button,input,textarea,select{letter-spacing:.01em;font-family:Thmanyah Digital,sans-serif}
.status-paid{border:1px solid var(--green);background:var(--green-soft)!important;color:var(--green)!important}.status-partial{border:1px solid var(--amber);background:var(--amber-soft)!important;color:var(--amber)!important}.status-unpaid{border:1px solid var(--red);background:var(--red-soft)!important;color:var(--red)!important}
