@import url('https://fonts.googleapis.com/css2?family=Cairo:wght@400;500;600;700;800;900&display=swap');
:root{--navy:#101a31;--navy2:#1a2b49;--gold:#d8b56a;--gold2:#f4dfaa;--ink:#202a3b;--muted:#788397;--bg:#f3f5f9;--line:#e5e9f1;--white:#fff;--green:#18855b;--red:#c34444}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:'Cairo',Tahoma,Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.app{min-height:100vh;display:flex}.sidebar{width:255px;flex-shrink:0;background:linear-gradient(180deg,#0c1529,#172744);color:#e8edf6;padding:22px 15px;min-height:100vh;position:sticky;top:0;height:100vh;overflow:auto}.brand{display:flex;gap:11px;align-items:center;padding:4px 8px 22px;border-bottom:1px solid #ffffff18;margin-bottom:16px}.brand-mark{width:43px;height:43px;border:1px solid #d8b56a;border-radius:13px;display:grid;place-items:center;color:#f4dfaa;font-weight:900;background:#ffffff08}.brand-mark.big{width:62px;height:62px;font-size:20px;margin:0 auto 15px}.brand-title{font-weight:900;font-size:13px;letter-spacing:.4px}.brand-sub{font-size:9px;color:#aab6ca;letter-spacing:1px;direction:ltr}.nav-label{font-size:10px;color:#9caac0;padding:12px 12px 6px}.nav a{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;font-size:12px;color:#d5deeb;margin:3px 0;transition:.15s}.nav a:hover,.nav a.active{background:#ffffff12;color:#f4dfaa;border-right:3px solid var(--gold)}.main{flex:1;min-width:0}.topbar{height:76px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 28px;gap:15px}.topbar h2{font-size:18px;margin:0;color:var(--navy)}.user-chip{font-size:12px;background:#f5f6f9;border:1px solid var(--line);border-radius:30px;padding:8px 13px}.content{padding:25px;max-width:1500px;margin:auto}.page-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:20px}.page-head h1{font-size:22px;margin:0;color:var(--navy)}.page-head p{margin:4px 0 0;color:var(--muted);font-size:12px}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:20px}.stat,.panel,.form-card{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 5px 18px #1a2b4908}.stat{padding:18px;position:relative;overflow:hidden}.stat:after{content:"";position:absolute;width:75px;height:75px;border:1px solid #d8b56a55;border-radius:50%;left:-20px;top:-24px}.stat .label{font-size:11px;color:var(--muted)}.stat .value{font-size:27px;font-weight:900;color:var(--navy);margin-top:6px}.stat .sub{font-size:10px;color:#9aa3b2;margin-top:4px}.panel{padding:20px;margin-bottom:18px}.panel h3{margin:0 0 15px;color:var(--navy);font-size:15px}.grid-two{display:grid;grid-template-columns:1.15fr .85fr;gap:18px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:0;border-radius:10px;padding:10px 15px;font-weight:800;font-size:12px;cursor:pointer}.btn.primary{background:linear-gradient(120deg,#152442,#253b60);color:#fff}.btn.gold{background:linear-gradient(120deg,#d8b56a,#f4dfaa);color:#17233a}.btn.light{background:#f2f4f8;color:var(--navy);border:1px solid var(--line)}.btn.danger{background:#fff0f0;color:var(--red);border:1px solid #f4d4d4}.actions{display:flex;gap:8px;flex-wrap:wrap}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;min-width:680px;font-size:12px}th{text-align:right;background:#f7f8fb;color:#677287;font-weight:800;font-size:11px}td,th{padding:13px 12px;border-bottom:1px solid #edf0f5;white-space:nowrap}tbody tr:hover{background:#fcfcfe}.badge{display:inline-flex;border-radius:20px;padding:4px 9px;font-size:10px;font-weight:800;background:#f1f3f7;color:#5d687b}.badge.success{background:#e8f7ef;color:#14774d}.badge.warning{background:#fff4db;color:#986b0b}.badge.danger{background:#ffeded;color:#b73838}.form-card{padding:22px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.form-stack{display:grid;gap:14px}.form-grid .full{grid-column:1/-1}label{display:grid;gap:6px;font-size:12px;font-weight:700;color:#4d5a70}input,select,textarea{width:100%;padding:11px 12px;border:1px solid #dfe4ed;border-radius:10px;background:#fff;color:var(--ink);outline:none}input:focus,select:focus,textarea:focus{border-color:#c9a451;box-shadow:0 0 0 3px #d8b56a22}textarea{min-height:95px;resize:vertical}.filters{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:15px}.filters input,.filters select{max-width:250px}.alert{padding:12px 15px;border-radius:10px;font-size:12px;margin-bottom:14px}.alert.success{background:#e9f8f0;color:#176e4b}.alert.danger{background:#fff0f0;color:#a22d2d}.alert.info{background:#edf4ff;color:#254f8e}.empty{text-align:center;color:var(--muted);padding:28px;font-size:13px}.notice-preview{border:1px solid #ead7a6;border-radius:16px;overflow:hidden}.notice-hero{background:linear-gradient(125deg,#0c1529,#243a5b);color:#fff;padding:22px}.notice-hero .en{font-size:10px;letter-spacing:1px;color:#f4dfaa;direction:ltr}.notice-hero h2{font-size:23px;margin:8px 0}.notice-body{padding:22px;line-height:2;font-size:13px}.notice-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:16px 0}.notice-field{padding:12px;background:#f7f8fb;border:1px solid var(--line);border-radius:10px}.notice-field small{display:block;color:var(--muted);font-size:10px}.notice-field strong{font-size:12px}.auth-body{min-height:100vh;display:grid;place-items:center;padding:20px;overflow-x:hidden;background:radial-gradient(circle at top,#e8edf6,#f3f5f9 60%)}.auth-card{width:calc(100vw - 40px);max-width:440px;background:#fff;border:1px solid #e5d4a9;border-radius:22px;padding:32px;box-shadow:0 25px 70px #101a3120;text-align:center}.auth-card h1{font-size:22px;color:var(--navy);margin:0}.auth-card h1 span{color:#b58b34}.auth-card .muted{color:var(--muted);font-size:12px;margin:8px 0 22px}.auth-card form{text-align:right}.eyebrow{font-size:10px;letter-spacing:1.6px;color:#ad8734}.tiny{font-size:10px;color:var(--muted);margin-top:18px}.mobile-menu{display:none}.footer-note{text-align:center;color:#9aa3b2;font-size:10px;padding:18px}.inline-form{display:inline}.searchbar{display:flex;gap:8px;flex-wrap:wrap}.searchbar input{max-width:320px}.report-number{font-size:24px;font-weight:900;color:var(--navy)}@media(max-width:1050px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-two{grid-template-columns:1fr}.sidebar{width:220px}}@media(max-width:760px){.auth-card{width:100%;max-width:100%}.app{display:block}.sidebar{width:100%;height:auto;min-height:0;position:relative;padding:12px}.brand{padding-bottom:12px;margin-bottom:7px}.nav{display:flex;overflow:auto;gap:4px}.nav-label{display:none}.nav a{white-space:nowrap;flex-shrink:0}.topbar{height:auto;padding:15px;align-items:flex-start;flex-direction:column}.content{padding:14px}.stats{gap:9px}.stat{padding:13px}.stat .value{font-size:22px}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.notice-fields{grid-template-columns:1fr}.page-head h1{font-size:19px}}@media print{.sidebar,.topbar,.no-print,.page-head .actions{display:none!important}.app{display:block}.content{padding:0;max-width:none}.panel,.form-card{box-shadow:none}.notice-preview{border-radius:0}.notice-hero{-webkit-print-color-adjust:exact;print-color-adjust:exact}}

/* Learning hub additions */
.tabs{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 18px}.tabs a{padding:11px 16px;border:1px solid var(--line);border-radius:12px;background:var(--surface,#fff);color:var(--ink);font-weight:700;text-decoration:none}.tabs a.active{background:var(--navy,#14213d);color:#fff;border-color:var(--navy,#14213d)}
.learning-item{border:1px solid var(--line);border-radius:14px;padding:15px;margin:12px 0;background:rgba(255,255,255,.65)}.learning-item h4{margin:8px 0}.learning-item p{line-height:1.8;overflow-wrap:anywhere}.learning-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.learning-item .inline-form{margin-top:10px}.learning-item a{color:var(--gold,#b58a32);font-weight:700}
@media print{.tabs,.form-card,.no-print,.sidebar,.topbar{display:none!important}.learning-item{break-inside:avoid}}

/* Student portal */
.portal-switch{margin:14px 0 0;font-size:11px;color:#a77e2f;font-weight:800}.student-portal-body{min-height:100vh;background:linear-gradient(145deg,#f4f6fa 0%,#eef2f7 55%,#e7edf6 100%);color:var(--ink)}.student-topbar{background:#101a31;color:#fff;min-height:76px;padding:14px clamp(16px,4vw,56px);display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}.student-brand{display:flex;align-items:center;gap:11px}.student-brand strong{display:block;font-size:13px;letter-spacing:.5px}.student-brand small{display:block;color:#d8b56a;font-size:9px;letter-spacing:1.5px;direction:ltr}.student-top-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.student-welcome{font-size:12px;color:#dce5f2}.student-content{width:min(1180px,calc(100% - 32px));margin:28px auto 48px}.student-hero{border-radius:22px;padding:clamp(22px,4vw,42px);display:flex;justify-content:space-between;gap:24px;align-items:center;flex-wrap:wrap;background:linear-gradient(125deg,#0c1529,#263e63);color:#fff;box-shadow:0 18px 45px #101a3126}.student-hero h1{margin:5px 0;font-size:clamp(25px,4vw,38px)}.student-hero p:not(.eyebrow){margin:0;color:#cbd7e9;font-size:13px}.student-id-card{min-width:205px;padding:17px;border:1px solid #d8b56a66;border-radius:15px;background:#ffffff0d}.student-id-card span,.student-id-card small{display:block;color:#cbd7e9;font-size:10px}.student-id-card strong{display:block;color:#f4dfaa;font-size:22px;letter-spacing:1px;margin:5px 0}.student-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin:18px 0}.student-stat{background:#fff;border:1px solid var(--line);border-radius:15px;padding:16px;box-shadow:0 7px 22px #1a2b490b}.student-stat span,.student-stat small{display:block;color:var(--muted);font-size:11px}.student-stat strong{display:block;color:var(--navy);font-size:28px;margin:3px 0}.student-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.student-panel{min-width:0}.student-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px}.student-section-head h2,.student-section-head h3{margin:0;color:var(--navy)}.student-section-head p{margin:4px 0 0;font-size:11px}.student-score{font-weight:900;color:#14774d}.student-homework-list{display:grid;gap:10px}.student-homework{display:flex;justify-content:space-between;gap:15px;align-items:flex-start;border:1px solid var(--line);border-radius:13px;padding:14px;background:#fbfcfe}.student-homework h3{margin:0 0 5px;color:var(--navy);font-size:14px}.student-homework p{margin:0;color:#647187;line-height:1.8;font-size:12px}.student-due{white-space:nowrap;padding:5px 9px;border-radius:15px;background:#fff4db;color:#986b0b;font-size:10px;font-weight:800}.student-privacy-note{text-align:center;color:#8792a5;font-size:11px;margin:22px 0}.student-account-admin{margin-top:18px}.student-auth-card{border-top:4px solid var(--gold)}@media(max-width:850px){.student-grid{grid-template-columns:1fr}.student-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.student-content{width:calc(100% - 22px);margin-top:14px}.student-topbar{align-items:flex-start}.student-top-actions{width:100%;justify-content:space-between}.student-stats{gap:8px}.student-stat{padding:12px}.student-stat strong{font-size:22px}.student-homework{display:block}.student-due{display:inline-block;margin-top:10px}}

/* Premium camera and profile */
.camera-stage{position:relative;max-width:620px;margin:22px auto 0;background:#0c1529;border-radius:22px;overflow:hidden;min-height:280px;display:grid;place-items:center;border:3px solid #d8b56a}.camera-stage video{width:100%;min-height:280px;object-fit:cover;background:#050a14}.scan-frame{position:absolute;inset:22% 18%;border:2px dashed #f4dfaa;border-radius:16px;color:#fff;text-align:center;padding-top:16%;background:#101a3140;font-size:12px}.camera-stage + .actions{justify-content:center}.profile-badge{display:inline-flex;align-items:center;gap:8px;padding:11px 14px;border-radius:14px;background:linear-gradient(135deg,#fff8e8,#fff);border:1px solid #ead7a6;color:#7d5c1d;font-weight:800}@media(max-width:600px){.camera-stage{min-height:220px}.camera-stage video{min-height:220px}.scan-frame{inset:24% 10%;padding-top:18%;font-size:10px}}

/* Student follow-up builder */
.notice-builder{display:grid;gap:18px}.notice-builder h3{margin:0 0 15px}.notice-builder .muted{font-size:11px;color:var(--muted);font-weight:500}.notice-auto-fields{display:flex;gap:8px;flex-wrap:wrap;padding:12px;border-radius:12px;background:#f7f8fb;border:1px solid var(--line);color:var(--muted);font-size:11px}.notice-auto-fields span{padding:6px 9px;background:#fff;border-radius:8px}.notice-auto-fields strong{color:var(--navy)}.reason-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.reason-groups fieldset{border:1px solid var(--line);border-radius:14px;padding:12px;margin:0;background:#fbfcfe}.reason-groups legend{padding:0 7px;color:var(--navy);font-weight:900;font-size:12px}.check-item{display:flex;grid-template-columns:none;align-items:flex-start;gap:8px;padding:7px 6px;border-radius:8px;font-size:11px;font-weight:600;cursor:pointer}.check-item:hover{background:#f1f4f8}.check-item input{width:auto;margin-top:3px;accent-color:#b48b35}.level-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.level-card{display:grid;grid-template-columns:auto 1fr;gap:4px 7px;padding:11px;border:1px solid var(--line);border-radius:12px;background:#fbfcfe;cursor:pointer}.level-card input{width:auto;grid-row:span 2;margin-top:4px;accent-color:#b48b35}.level-card b{font-size:11px;color:var(--navy)}.level-card small{font-size:10px;color:var(--muted);font-weight:500}.notice-submit-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.notice-submit-row .muted{font-size:11px;color:var(--muted)}@media(max-width:950px){.reason-groups{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.reason-groups,.level-options{grid-template-columns:1fr}.notice-auto-fields{display:grid;grid-template-columns:1fr 1fr}.notice-auto-fields span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}

/* Internal community chat */
.chat-feed{display:grid;gap:10px;max-height:520px;overflow:auto;padding:4px}.chat-message{padding:11px 13px;border:1px solid var(--line);border-radius:13px;background:#fbfcfe}.chat-message>div{display:flex;justify-content:space-between;gap:10px;align-items:center}.chat-message strong{color:var(--navy);font-size:12px}.chat-message small{color:var(--muted);font-size:9px}.chat-message p{margin:7px 0 0;line-height:1.8;font-size:12px;white-space:pre-wrap}.student-message{background:#fffaf0;border-color:#ead7a6}.chat-compose{display:grid;gap:9px;margin-top:14px}.chat-compose textarea{min-height:72px}.chat-room-link{display:grid;gap:4px;padding:13px;border:1px solid var(--line);border-radius:12px;margin:8px 0;background:#fff}.chat-room-link:hover,.chat-room-link.active{border-color:var(--gold);background:#fffaf0}.chat-room-link strong{color:var(--navy);font-size:13px}.chat-room-link small{color:var(--muted);font-size:10px}.learning-portal-grid{margin-top:18px}.learning-portal-grid .learning-item{background:#fbfcfe}

/* Premium subject academy */
.subjects-panel{margin-top:20px}.subject-cards{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-top:18px}.subject-card{position:relative;display:flex;flex-direction:column;gap:7px;min-height:132px;padding:18px;border:1px solid rgba(197,151,61,.28);border-radius:18px;color:#f8f1df;text-decoration:none;overflow:hidden;background:linear-gradient(145deg,#10243b,#071321);box-shadow:0 14px 28px rgba(4,13,25,.14);transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.subject-card:hover{transform:translateY(-5px);border-color:#d9aa54;box-shadow:0 18px 34px rgba(4,13,25,.28)}.subject-card strong{font-size:1.05rem}.subject-card small{color:#c7d0db}.subject-card b{position:absolute;left:16px;bottom:15px;color:#d9aa54;font-size:1.4rem}.subject-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#c7963f;color:#081524;font-weight:800;font-size:1.2rem}.subject-arabic{background:linear-gradient(145deg,#152d45,#071a2a)}.subject-english{background:linear-gradient(145deg,#172a4e,#091427)}.subject-social{background:linear-gradient(145deg,#3a2b22,#17151a)}.subject-science{background:linear-gradient(145deg,#123a3b,#071b26)}.subject-math{background:linear-gradient(145deg,#34244c,#111529)}.subject-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0}.subject-tabs a{padding:10px 16px;border-radius:999px;border:1px solid rgba(197,151,61,.3);background:#fff;color:#172438;text-decoration:none;font-weight:700}.subject-tabs a.active,.subject-tabs a:hover{background:#12263d;color:#f8e6b6;border-color:#d9aa54}.subject-hero{margin-bottom:18px}.student-panel h2{margin-bottom:5px}.student-section-head p{margin:0;color:#718093}.learning-item a{display:inline-block;margin-top:9px}.student-privacy-note{margin-top:24px}@media(max-width:900px){.subject-cards{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:620px){.subject-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.subject-card{min-height:118px;padding:14px}.subject-card strong{font-size:.94rem}.subject-tabs{gap:7px}.subject-tabs a{padding:8px 11px;font-size:.86rem}}
.developer-signature{width:min(1180px,calc(100% - 32px));margin:28px auto 20px;padding:16px 12px 4px;border-top:1px solid #d8b56a;text-align:center;color:#9aa3b2;font-size:11px}.developer-signature strong{display:block;color:#b58b34;font-size:13px}.developer-signature span{display:block;direction:ltr;letter-spacing:.7px;color:#6d7890;margin-top:3px}.developer-signature small{display:block;margin-top:4px;font-size:9px}@media(max-width:560px){.developer-signature{width:calc(100% - 22px)}}
.subject-video{display:block;width:100%;max-height:360px;border-radius:12px;background:#071321;margin-top:10px}.subject-image{display:block;max-width:100%;max-height:320px;border-radius:12px;margin-top:10px;object-fit:contain}
