:root{--bg:#f5f7fb;--primary:#2563eb;--dark:#1e293b;--muted:#64748b;--line:#e2e8f0;--success:#16a34a;--danger:#dc2626}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--dark);font-family:Cairo,Tahoma,sans-serif;direction:rtl}a{text-decoration:none;color:inherit}.brand{font-size:1.35rem;font-weight:800;letter-spacing:-1px}.brand span{color:var(--primary)}.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:12px;padding:.7rem 1.2rem;font:inherit;font-weight:700;cursor:pointer;gap:.5rem}.btn-primary{background:var(--primary);color:#fff}.btn-secondary{background:#e8eefc;color:#2451ad}.btn-lg{padding:.9rem 1.6rem}.full{width:100%}.btn-link{border:0;background:none;color:var(--primary);font:inherit;cursor:pointer}.danger{color:var(--danger)!important}.success{color:var(--success)!important}.eyebrow{color:var(--primary);font-size:.8rem;font-weight:800}.landing{max-width:1180px;margin:auto;padding:24px}.topbar{display:flex;align-items:center;justify-content:space-between}.hero{min-height:580px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:4rem}.hero h1{font-size:clamp(2.6rem,6vw,5rem);line-height:1.2;margin:.8rem 0}.hero h1 strong{color:var(--primary)}.hero p{max-width:540px;color:var(--muted);line-height:2;font-size:1.1rem}.hero-card{height:360px;border-radius:40px;background:linear-gradient(135deg,#dbeafe,#eff6ff);position:relative;overflow:hidden}.orb{position:absolute;width:280px;height:280px;border-radius:50%;background:#93c5fd;filter:blur(2px);left:25%;top:10%}.floating-card{position:absolute;right:10%;bottom:18%;background:#fff;border-radius:18px;padding:22px;box-shadow:0 20px 50px #1e3a8a22;display:grid;gap:8px}.floating-card strong{font-size:3rem;color:var(--primary)}.floating-card small{color:var(--muted)}.check{position:absolute;left:12%;top:18%;background:var(--success);color:#fff;border-radius:50%;font-size:2rem;width:64px;height:64px;display:grid;place-items:center}.stats{display:flex;gap:2rem;border-top:1px solid var(--line);padding:30px 0}.stats div{display:grid;gap:5px}.stats b{font-size:1.5rem}.stats span{color:var(--muted)}.auth-page{min-height:100vh;display:grid;place-items:center;padding:20px}.auth-box{background:#fff;padding:42px;border-radius:24px;width:min(100%,440px);box-shadow:0 20px 60px #0f172a12}.auth-box h1{margin-bottom:4px}.auth-box p{color:var(--muted)}label{display:grid;gap:7px;margin:15px 0;font-weight:700}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:10px;padding:12px;font:inherit;background:#fff;color:var(--dark)}textarea{min-height:90px;resize:vertical}.password{display:flex;gap:6px}.password button{border:0;background:#eef2ff;border-radius:10px;padding:0 10px}.back{display:block;text-align:center;margin-top:20px;color:var(--muted)}.toast{position:fixed;z-index:10;top:20px;left:20px;background:#fff;padding:14px 20px;border-radius:12px;box-shadow:0 10px 30px #0002}.toast.error{border-right:4px solid var(--danger)}.app{display:grid;grid-template-columns:250px 1fr;min-height:100vh}.sidebar{background:#fff;border-left:1px solid var(--line);padding:25px 16px;position:sticky;top:0;height:100vh}.sidebar .brand{padding:0 12px 28px}.sidebar a{display:block;padding:12px;border-radius:10px;color:var(--muted);margin:4px 0}.sidebar a:hover,.sidebar a.logout:hover{background:#eff6ff;color:var(--primary)}.user-mini{background:#f8fafc;padding:13px;border-radius:12px;margin-bottom:20px;font-weight:700}.user-mini small{display:block;color:var(--muted);font-weight:400}.sidebar .logout{margin-top:30px;color:var(--danger)}.content{padding:35px;max-width:1400px;width:100%}.page-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.page-head p{color:var(--muted)}h1{margin:.2rem 0 0}h2{margin-top:30px}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.stat-card,.panel,.exam-card,.result-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px}.stat-card span{color:var(--muted)}.stat-card strong{display:block;font-size:2rem;margin-top:6px}.panel{margin-top:22px;overflow:auto}.quick-links{display:flex;flex-wrap:wrap;gap:12px}.quick-links a{background:#eff6ff;color:var(--primary);padding:12px 16px;border-radius:10px;font-weight:700}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}.exam-card h3{font-size:1.2rem}.exam-card p{color:var(--muted)}.exam-meta{display:flex;justify-content:space-between;color:var(--muted);font-size:.85rem;margin:20px 0}.badge{display:inline-block;background:#e0e7ff;color:#3730a3;padding:4px 10px;border-radius:20px;font-size:.8rem}.badge.success{background:#dcfce7}.badge.danger{background:#fee2e2}.empty,.notice{padding:30px;color:var(--muted);background:#fff;border-radius:16px}.notice{background:#fff7ed;color:#9a3412;margin:16px 0}.inline-form,.form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;align-items:end}.inline-form input,.inline-form select{margin:0}.form-grid .wide{grid-column:1/-1}.form-grid label{margin:0}.check{display:flex;align-items:center;gap:8px}.check input{width:auto}.form-grid button{width:max-content}table{width:100%;border-collapse:collapse;min-width:700px}th,td{text-align:right;padding:13px;border-bottom:1px solid var(--line);vertical-align:middle}th{color:var(--muted);font-size:.9rem}.actions{display:flex;gap:10px}.question-form{max-width:800px}.answer-row{display:grid;grid-template-columns:28px 30px 1fr;align-items:center;gap:8px}.answer-row input[type=radio]{width:18px}.label-title{font-weight:800}.question-list{padding:13px 0;border-bottom:1px solid var(--line)}.question-list span{float:left;color:var(--muted)}.instructions{max-width:750px;margin:40px auto;line-height:2}.instructions li{margin:10px 0}.exam-shell{min-height:100vh;padding:24px;max-width:1200px;margin:auto}.exam-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.timer{font-size:1.5rem;font-weight:800;color:var(--primary);background:#fff;padding:14px 20px;border-radius:14px;box-shadow:0 5px 20px #0000000d}.exam-layout{display:grid;grid-template-columns:1fr 230px;gap:20px}.question-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:26px;margin-bottom:18px;scroll-margin-top:20px}.question-number{color:var(--primary);font-weight:800}.question-card h2{font-size:1.2rem;margin:15px 0 25px}.answer-option{display:flex;grid-template-columns:none;align-items:center;gap:12px;padding:14px;border:1px solid var(--line);border-radius:12px;margin:10px 0;cursor:pointer;font-weight:400}.answer-option:hover{border-color:var(--primary);background:#eff6ff}.answer-option input{width:auto}.question-nav{height:max-content;background:#fff;border-radius:18px;padding:18px;position:sticky;top:20px}.question-nav a{display:inline-grid;place-items:center;width:38px;height:38px;background:#f1f5f9;border-radius:9px;margin:10px 4px 0 0}.result-card{max-width:650px;margin:60px auto;text-align:center}.score{display:flex;justify-content:center;align-items:center;gap:25px;margin:35px 0}.score strong{font-size:2.5rem;color:var(--primary)}.score span{font-size:2rem;color:var(--success);font-weight:800}@media(max-width:850px){.app{grid-template-columns:1fr}.sidebar{height:auto;position:relative;display:flex;flex-wrap:wrap;gap:4px;padding:12px}.sidebar .brand,.sidebar .user-mini{width:100%;padding:8px}.sidebar a{padding:8px}.content{padding:20px}.stats-grid{grid-template-columns:repeat(2,1fr)}.hero{grid-template-columns:1fr;min-height:auto;padding:50px 0}.hero-card{height:280px}.exam-layout{grid-template-columns:1fr}.question-nav{position:relative;top:0;order:-1}.inline-form,.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.page-head{align-items:flex-start;gap:15px;flex-wrap:wrap}}@media print{.sidebar,.page-head .btn{display:none}.app{display:block}.content{padding:0}}
.panel-title-row{display:flex;justify-content:space-between;align-items:center;gap:16px}.panel-title-row h2{margin:0}.muted,.table-subtitle{color:var(--muted);font-size:.85rem}.table-subtitle{display:block;margin-top:3px}.empty-cell{text-align:center;color:var(--muted);padding:35px}.filter-actions{display:flex;gap:8px;align-items:end;padding-bottom:0}.results-filter label{margin:0}.detail-stats{margin-bottom:22px}.detail-stats .stat-card strong{font-size:1.3rem}.answer-review{border:1px solid var(--line);border-right:5px solid var(--danger);border-radius:14px;padding:18px;margin:14px 0;background:#fff}.review-correct{border-right-color:var(--success);background:#f0fdf4}.review-head{display:flex;justify-content:space-between;color:var(--muted);gap:10px}.review-head b{color:var(--dark)}.answer-review h3{font-size:1.05rem;margin:12px 0}.answer-review p{margin:8px 0}@media(max-width:850px){.panel-title-row,.review-head{align-items:flex-start;flex-direction:column}.filter-actions{align-items:stretch}.filter-actions .btn{flex:1}}
.developer-card{margin:20px 0 0;padding:28px;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:0 12px 35px #0f172a0a}.developer-card h2{margin:8px 0;color:var(--dark)}.developer-card a{color:var(--primary);font-size:1.2rem;font-weight:800;direction:ltr;display:inline-block}.permission-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:18px;background:#f8fafc;border:1px solid var(--line);border-radius:14px}.permission-grid>b{grid-column:1/-1}.permission-grid .check{margin:0;padding:12px;background:#fff;border:1px solid var(--line);border-radius:10px;cursor:pointer;font-weight:600}.permission-grid .check:hover{border-color:var(--primary);background:#eff6ff}.permission-grid .check input{accent-color:var(--primary)}@media(max-width:850px){.permission-grid{grid-template-columns:1fr}}
.permission-panel{max-width:980px}.permission-panel form{display:grid;gap:20px}.user-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.permissions-box{border:1px solid var(--line);border-radius:16px;padding:20px;margin:0;min-inline-size:0;background:#fbfdff}.permissions-box legend{padding:0 10px;font-size:1.05rem;font-weight:800}.permission-toolbar{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:16px;color:var(--muted);font-size:.9rem}.permission-toolbar span{margin-left:auto}.permission-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px!important;padding:0!important;border:0!important;background:transparent!important}.permission-card{display:flex!important;align-items:center;gap:12px;min-height:58px;margin:0!important;padding:14px 16px;background:#fff;border:1px solid var(--line);border-radius:12px;color:var(--dark);font-weight:700;cursor:pointer;transition:border-color .2s,background .2s,box-shadow .2s}.permission-card:hover{border-color:#93c5fd;background:#eff6ff}.permission-card:has(input:checked){border-color:var(--primary);background:#eff6ff;box-shadow:0 0 0 3px #dbeafe}.permission-card input{width:20px!important;height:20px;flex:0 0 auto;accent-color:var(--primary)}.reset-password-panel{max-width:980px}.reset-form{display:flex;align-items:end;gap:16px}.reset-form label{flex:1;margin:0}.reset-form .btn{white-space:nowrap}@media(max-width:700px){.user-fields,.permission-grid{grid-template-columns:1fr!important}.permission-toolbar span{width:100%;margin:0}.reset-form{display:grid;align-items:stretch}.reset-form .btn{width:100%}}
.app{direction:ltr;grid-template-columns:260px minmax(0,1fr);align-items:stretch}.app>aside,.app>.content{direction:rtl;min-width:0}.app>aside{width:260px}.app .sidebar{width:260px;min-height:100vh;overflow-y:auto}.app .content{overflow-x:hidden}@media(max-width:850px){.app{display:block;direction:rtl}.app>aside,.app>aside .sidebar{width:100%;min-height:0}.app .sidebar{position:relative;height:auto}}
.app{direction:rtl;grid-template-columns:260px minmax(0,1fr)}.app>aside,.app>.content{direction:rtl}.app>aside{width:260px}.app .sidebar{width:260px}.form-grid>.check{display:flex;align-items:center;gap:10px;margin:0;padding:12px 14px;background:#f8fafc;border:1px solid var(--line);border-radius:10px;white-space:normal}.form-grid>.check input{width:19px;height:19px;flex:0 0 auto;accent-color:var(--primary)}@media(max-width:850px){.app{display:block;direction:rtl}.app>aside,.app>aside .sidebar{width:100%}}
.exam-setting-card{display:flex!important;align-items:center;gap:12px;margin:0!important;min-height:58px;padding:14px 16px;background:#fff;border:1px solid var(--line);border-radius:12px;font-weight:700;cursor:pointer;transition:border-color .2s,background .2s,box-shadow .2s}.exam-setting-card:hover{border-color:#93c5fd;background:#eff6ff}.exam-setting-card:has(input:checked){border-color:var(--primary);background:#eff6ff;box-shadow:0 0 0 3px #dbeafe}.exam-setting-card input{width:20px!important;height:20px;flex:0 0 auto;accent-color:var(--primary)}
.form-grid .exam-options{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;width:100%;margin:0;padding:0}.exam-options .exam-setting-card{width:100%;min-width:0}.exam-options .exam-setting-card span{display:block;line-height:1.7}@media(max-width:850px){.form-grid .exam-options{grid-template-columns:1fr}}
.student-exam-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.student-exam-toolbar h2{margin:0}.student-search{display:flex;align-items:center;gap:8px;margin:0}.student-search input{min-width:260px}@media(max-width:700px){.student-search{width:100%;display:grid;grid-template-columns:1fr auto}.student-search input{min-width:0}.student-search .btn-secondary{grid-column:1/-1}}
.icon-action{display:inline-flex!important;align-items:center;justify-content:center;width:34px;height:34px;margin:2px;border:1px solid var(--line);border-radius:9px;background:#f8fafc;color:var(--primary);font-size:1.1rem;font-weight:800;line-height:1;cursor:pointer;vertical-align:middle;transition:background .2s,border-color .2s,transform .2s}.icon-action:hover{background:#eff6ff;border-color:#93c5fd;transform:translateY(-1px)}.icon-action.danger{color:var(--danger);background:#fff7f7}.icon-action.danger:hover{background:#fee2e2;border-color:#fecaca}.actions form{display:inline-flex;margin:0;align-items:center}.actions{align-items:center;flex-wrap:wrap}
.icon-action{width:auto;min-width:34px;padding:7px 10px;gap:6px;font-size:.86rem;white-space:nowrap}.icon-action span{font-size:.82rem}.icon-action[title*="تعديل"],.icon-action[title*="الصلاحيات"]{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.icon-action[title*="الأسئلة"],.icon-action[title*="التفاصيل"],.icon-action[title*="النتيجة"],.icon-action[title*="إجاباتي"]{color:#047857;background:#ecfdf5;border-color:#a7f3d0}.icon-action[title*="تفعيل"],.icon-action[title*="تعطيل"]{color:#b45309;background:#fffbeb;border-color:#fde68a}.icon-action[title*="حذف"]{color:#b91c1c;background:#fff1f2;border-color:#fecdd3}.icon-action[title*="إعادة"]{color:#7c3aed;background:#f5f3ff;border-color:#ddd6fe}
.icon-action[title*="تعديل"],.icon-action[title*="الصلاحيات"]{background-color:#dbeafe!important;color:#1d4ed8!important;border-color:#60a5fa!important}.icon-action[title*="الأسئلة"],.icon-action[title*="التفاصيل"],.icon-action[title*="النتيجة"],.icon-action[title*="إجاباتي"]{background-color:#d1fae5!important;color:#047857!important;border-color:#34d399!important}.icon-action[title*="تفعيل"],.icon-action[title*="تعطيل"]{background-color:#fef3c7!important;color:#b45309!important;border-color:#f59e0b!important}.icon-action[title*="حذف"]{background-color:#fee2e2!important;color:#b91c1c!important;border-color:#f87171!important}.icon-action[title*="إعادة"]{background-color:#ede9fe!important;color:#6d28d9!important;border-color:#a78bfa!important}.icon-action:hover{filter:brightness(.94);transform:translateY(-1px)}
.student-exams-search{margin-top:0}.student-exams-search .student-search{max-width:720px}.student-exams-search .student-search input{min-width:0}
.student-name-link{color:var(--primary);font-weight:800}.student-name-link:hover{text-decoration:underline}
.icon-action,.icon-action span{font-family:Cairo,Tahoma,sans-serif;font-style:normal;font-weight:700;line-height:1.25;letter-spacing:0}.icon-action{font-size:.84rem;text-align:center;vertical-align:middle}.icon-action span{font-size:.82rem}.icon-action::first-letter{font-size:1.05rem}.actions .icon-action{font-family:Cairo,Tahoma,sans-serif}

.theme-control{position:fixed;z-index:20;left:22px;bottom:22px;display:flex;align-items:center;gap:8px;padding:8px 10px;background:var(--surface,#fff);border:1px solid var(--line);border-radius:13px;box-shadow:0 8px 24px #0f172a1a;color:var(--dark);font:700 .82rem Cairo,Tahoma,sans-serif}.theme-control span{font-size:1.1rem;color:var(--primary)}.theme-control label{margin:0;font:inherit}.theme-control select{width:auto;min-width:88px;margin:0;padding:5px 8px;border-radius:8px;background:var(--surface,#fff);color:var(--dark);font:600 .8rem Cairo,Tahoma,sans-serif}.icon-action{font-family:Cairo,Tahoma,sans-serif}
:root{--surface:#fff;--surface-soft:#f8fafc;--input-bg:#fff;--shadow-color:#0f172a12;color-scheme:light}html[data-theme="dark"]{--bg:#0f172a;--primary:#60a5fa;--dark:#e5e7eb;--muted:#aab6c8;--line:#334155;--success:#4ade80;--danger:#f87171;--surface:#172033;--surface-soft:#1e293b;--input-bg:#111827;--shadow-color:#0008;color-scheme:dark}html[data-theme="dark"] body{background:var(--bg);color:var(--dark)}html[data-theme="dark"] .theme-control,html[data-theme="dark"] .stat-card,html[data-theme="dark"] .panel,html[data-theme="dark"] .exam-card,html[data-theme="dark"] .result-card,html[data-theme="dark"] .auth-box,html[data-theme="dark"] .floating-card,html[data-theme="dark"] .timer,html[data-theme="dark"] .question-card,html[data-theme="dark"] .question-nav,html[data-theme="dark"] .answer-review{background:var(--surface);color:var(--dark);box-shadow:0 8px 24px var(--shadow-color)}html[data-theme="dark"] .sidebar{background:var(--surface);border-color:var(--line)}html[data-theme="dark"] input,html[data-theme="dark"] select,html[data-theme="dark"] textarea{background:var(--input-bg);color:var(--dark);border-color:var(--line)}html[data-theme="dark"] .user-mini,html[data-theme="dark"] .empty,html[data-theme="dark"] .notice{background:var(--surface-soft);color:var(--dark)}html[data-theme="dark"] th{color:var(--muted)}html[data-theme="dark"] td{border-color:var(--line)}html[data-theme="dark"] .sidebar a:hover,html[data-theme="dark"] .quick-links a,html[data-theme="dark"] .answer-option:hover{background:#1e3a5f;color:#bfdbfe}html[data-theme="dark"] .question-nav a{background:#263449;color:var(--dark)}html[data-theme="dark"] .answer-option,html[data-theme="dark"] .icon-action,html[data-theme="dark"] .permission-card,html[data-theme="dark"] .exam-setting-card{background:#1e293b;border-color:var(--line);color:var(--dark)}html[data-theme="dark"] .btn-secondary{background:#263b60;color:#bfdbfe}html[data-theme="dark"] .toast{background:var(--surface);color:var(--dark)}html[data-theme="dark"] .developer-card{background:var(--surface);border-color:var(--line)}html[data-theme="dark"] .permission-grid,html[data-theme="dark"] .permissions-box{background:var(--surface-soft);border-color:var(--line)}html[data-theme="dark"] .review-correct{background:#123326}html[data-theme="dark"] .answer-review{border-color:var(--line)}@media(max-width:600px){.theme-control{left:12px;bottom:12px;padding:6px 8px}.theme-control label{display:none}.theme-control select{min-width:82px}}

.print-toolbar{display:flex;gap:10px;justify-content:flex-start;direction:rtl;margin:0 0 18px}.print-page{width:210mm;min-height:297mm;max-width:100%;margin:0 auto;background:#fff;color:#111;padding:14mm;direction:rtl}.print-header{display:flex;justify-content:space-between;gap:28px;align-items:flex-start;border-bottom:2px solid #111;padding-bottom:18px}.print-header h1{font-size:24px;letter-spacing:2px;margin:0}.print-header h2{font-size:25px;margin:8px 0}.print-header p{margin:4px 0}.student-fields{line-height:2.5;min-width:290px}.exam-meta{display:flex;justify-content:space-between;border-bottom:1px solid #999;padding:12px 0;font-weight:700}.print-question{padding:18px 0;border-bottom:1px solid #bbb;break-inside:avoid;page-break-inside:avoid}.print-question-title{font-size:18px;line-height:1.9}.print-question-title small{font-size:13px;color:#555}.print-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 28px;margin:12px 28px 0}.print-option{font-size:16px;line-height:1.8}.print-question-image{display:block;max-width:420px;max-height:250px;object-fit:contain;margin:12px 28px}.answer-lines{display:grid;gap:14px;margin:16px 28px}.answer-lines span{display:block;border-bottom:1px solid #777;height:20px}.print-footer{text-align:center;border-top:1px solid #999;margin-top:25px;padding-top:12px;color:#555;font-size:12px}@media print{html,body{width:210mm;background:#fff!important}.no-print,body>.theme-control,.sidebar,.app>aside,.app>.content>header,.app>.content>.page-head{display:none!important}.print-page{width:210mm;min-height:297mm;max-width:none;margin:0;padding:0}.print-question{break-inside:avoid;page-break-inside:avoid}.print-toolbar{display:none!important}@page{size:A4 portrait;margin:14mm}}
.inline-action-form{display:inline-flex;margin:0;vertical-align:middle}
.password{position:relative;display:flex;align-items:center}.password input{padding-left:48px}.password-toggle{position:absolute;left:8px;top:50%;transform:translateY(-50%);width:34px;height:34px;display:grid;place-items:center;border:0;border-radius:9px;background:transparent;color:var(--muted);font:700 1.15rem/1 Tahoma,sans-serif;cursor:pointer;transition:background .2s,color .2s}.password-toggle:hover,.password-toggle:focus-visible{background:var(--surface-soft);color:var(--primary);outline:2px solid color-mix(in srgb,var(--primary) 35%,transparent);outline-offset:1px}.password-toggle .eye-icon{display:block;width:20px;height:20px}.password-toggle .eye-closed{display:none}.password-toggle.is-visible .eye-open{display:none}.password-toggle.is-visible .eye-closed{display:block}.password-toggle.is-visible{color:var(--primary)}html[data-theme="dark"] .password-toggle{color:#aab6c8}html[data-theme="dark"] .password-toggle:hover,html[data-theme="dark"] .password-toggle:focus-visible{background:#263449;color:#93c5fd}

.image-source-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.dynamic-answers{margin-top:12px}.dynamic-answer-row input[type=checkbox],.dynamic-answer-row input[type=radio]{width:18px}.dynamic-answer-row input[type=hidden]+b{grid-column:1/-1}.legacy-answers{display:none}.question-form input[type=file]{padding:9px;background:var(--surface-soft);cursor:pointer}@media(max-width:700px){.image-source-grid{grid-template-columns:1fr}}

/* Password eye icon: explicit SVG rendering for both themes */
.password-toggle{z-index:3!important;opacity:1!important;visibility:visible!important;overflow:visible!important;color:var(--muted)!important;background:transparent!important}.password-toggle .eye-icon{display:block!important;width:21px!important;height:21px!important;overflow:visible!important;stroke:currentColor!important;color:currentColor!important}.password-toggle .eye-icon path,.password-toggle .eye-icon circle{stroke:currentColor!important}.password-toggle .eye-closed{display:none!important}.password-toggle.is-visible .eye-open{display:none!important}.password-toggle.is-visible .eye-closed{display:block!important}.password-toggle:hover,.password-toggle:focus-visible,.password-toggle.is-visible{color:var(--primary)!important;background:var(--surface-soft)!important}html[data-theme="dark"] .password-toggle{color:#cbd5e1!important;background:transparent!important}html[data-theme="dark"] .password-toggle:hover,html[data-theme="dark"] .password-toggle:focus-visible,html[data-theme="dark"] .password-toggle.is-visible{color:#93c5fd!important;background:#263449!important}

/* Arabic show/hide password button */
.password-toggle{width:auto!important;min-width:64px!important;height:38px!important;padding:0 10px!important;left:7px!important;color:var(--primary)!important;background:var(--surface-soft)!important;font-family:Cairo,Tahoma,sans-serif!important;font-size:.82rem!important;font-weight:700!important;line-height:1!important;white-space:nowrap!important}.password-toggle:hover,.password-toggle:focus-visible,.password-toggle.is-visible{color:var(--primary)!important;background:var(--surface-soft)!important}.password input{padding-left:78px!important}html[data-theme="dark"] .password-toggle{color:#93c5fd!important;background:#263449!important}html[data-theme="dark"] .password-toggle:hover,html[data-theme="dark"] .password-toggle:focus-visible,html[data-theme="dark"] .password-toggle.is-visible{color:#dbeafe!important;background:#334155!important}

/* Match the show/hide control to the login button */
.password-toggle.btn-primary{width:auto!important;min-width:76px!important;height:40px!important;padding:.7rem 1rem!important;left:7px!important;border:0!important;border-radius:12px!important;background:var(--primary)!important;color:#fff!important;font:700 .82rem Cairo,Tahoma,sans-serif!important;line-height:1!important;box-shadow:none!important;transition:filter .2s,transform .2s,box-shadow .2s!important}.password-toggle.btn-primary:hover,.password-toggle.btn-primary:focus-visible{background:var(--primary)!important;color:#fff!important;filter:brightness(.92)!important;transform:translateY(-1px)!important;box-shadow:0 4px 10px #2563eb33!important;outline:0!important}.password-toggle.btn-primary.is-visible{background:var(--primary)!important;color:#fff!important}html[data-theme="dark"] .password-toggle.btn-primary,html[data-theme="dark"] .password-toggle.btn-primary:hover,html[data-theme="dark"] .password-toggle.btn-primary:focus-visible,html[data-theme="dark"] .password-toggle.btn-primary.is-visible{background:var(--primary)!important;color:#0f172a!important}

/* Exact login-button color parity for the password toggle */
.password-toggle.btn-primary,.password-toggle.btn-primary:hover,.password-toggle.btn-primary:focus-visible,.password-toggle.btn-primary.is-visible,html[data-theme="dark"] .password-toggle.btn-primary,html[data-theme="dark"] .password-toggle.btn-primary:hover,html[data-theme="dark"] .password-toggle.btn-primary:focus-visible,html[data-theme="dark"] .password-toggle.btn-primary.is-visible{background:var(--primary)!important;color:#fff!important}

/* Keep the show/hide button fixed in size and position */
.password-toggle.btn-primary{width:78px!important;min-width:78px!important;flex:0 0 78px!important;transform:translateY(-50%)!important;transition:filter .2s,box-shadow .2s!important}.password-toggle.btn-primary:hover,.password-toggle.btn-primary:focus-visible,.password-toggle.btn-primary.is-visible{transform:translateY(-50%)!important}

.add-user-fields{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:850px){.add-user-fields{grid-template-columns:1fr}}

/* Larger, centered EXAMORA branding */
.sidebar .brand{display:block;text-align:center;font-size:1.9rem;letter-spacing:-1.5px;padding:4px 12px 30px}.auth-box .brand{text-align:center;font-size:2rem;letter-spacing:-1.5px;margin-bottom:18px}.landing .topbar{position:relative;min-height:48px}.landing .topbar .brand{position:absolute;left:50%;transform:translateX(-50%);font-size:1.9rem;white-space:nowrap;letter-spacing:-1.5px}.landing .topbar .btn{margin-right:auto}@media(max-width:600px){.sidebar .brand{font-size:1.7rem;padding-bottom:18px}.auth-box .brand{font-size:1.8rem}.landing .topbar .brand{font-size:1.55rem}}

/* Landing page logo is aligned to the right */
.landing .topbar .brand{position:static;transform:none;margin:0;}
.landing .topbar .btn{margin-right:0;margin-left:0;}

/* Student name watermark on answer review */
.answer-review-page{position:relative;isolation:isolate}.answer-review-page>.page-head,.answer-review-page>.stats-grid,.answer-review-page>.panel{position:relative;z-index:1}.review-watermark{position:fixed;z-index:0;inset:0;display:grid;place-items:center;pointer-events:none;user-select:none;opacity:.075;color:var(--dark);font-size:clamp(2rem,6vw,5rem);font-weight:800;transform:rotate(-25deg);white-space:nowrap;overflow:hidden}.answer-review-page .panel{background:color-mix(in srgb,var(--surface,#fff) 94%,transparent)}html[data-theme="dark"] .review-watermark{opacity:.1;color:#cbd5e1}@media print{.review-watermark{display:grid!important;opacity:.16;color:#000}.answer-review-page>.page-head .btn,.answer-review-page .sidebar{display:none!important}.answer-review-page>.panel{background:#fff}}

/* Keep the answer-review watermark visibly above the answers */
.answer-review-page .review-watermark{z-index:2!important;opacity:.095;mix-blend-mode:multiply}html[data-theme="dark"] .answer-review-page .review-watermark{z-index:2!important;opacity:.13;mix-blend-mode:screen}@media print{.answer-review-page .review-watermark{z-index:10!important;opacity:.18;mix-blend-mode:multiply}}

/* Compact sidebar navigation spacing */
.sidebar{padding:20px 14px}.sidebar a{padding:8px 10px;margin:2px 0;line-height:1.45}.sidebar .brand{padding-bottom:22px}.sidebar .user-mini{padding:10px 11px;margin-bottom:14px}.sidebar .logout{margin-top:18px}@media(max-width:850px){.sidebar{padding:8px 10px}.sidebar a{padding:6px 9px;margin:1px 0}.sidebar .brand,.sidebar .user-mini{padding:6px}.sidebar .user-mini{margin-bottom:6px}}

/* Compact and aligned search/filter controls */
.student-search{display:flex;align-items:center;justify-content:flex-start;gap:6px;margin:0!important;flex-wrap:wrap}.student-search input{width:min(300px,100%);min-width:0!important;height:38px;padding:8px 11px;font-size:.86rem}.student-search .btn,.results-filter .btn{height:38px;padding:.45rem .85rem;border-radius:9px;font-size:.82rem;white-space:nowrap}.student-search .btn-secondary{margin:0}.results-filter{gap:10px!important;align-items:end}.results-filter label{gap:5px;font-size:.84rem}.results-filter input,.results-filter select{height:38px;padding:7px 10px;font-size:.84rem}.filter-actions{gap:6px;align-items:end}.student-exam-toolbar{gap:12px}.student-exams-search .student-search{max-width:none}.student-profile-search{padding:14px 18px}.student-profile-search .student-search{max-width:none}@media(max-width:700px){.student-search{width:100%;display:flex;flex-wrap:wrap}.student-search input{flex:1 1 190px}.student-search .btn{flex:0 0 auto}.results-filter .filter-actions{display:flex;flex-wrap:wrap}.results-filter .filter-actions .btn{flex:0 0 auto}}

.student-filter-panel{padding:16px 18px}.student-filter-form{grid-template-columns:minmax(220px,1.4fr) repeat(2,minmax(160px,1fr)) auto;gap:10px;align-items:end}.student-filter-form label{margin:0}.student-filter-form .filter-actions{display:flex;gap:6px;align-items:end;white-space:nowrap}@media(max-width:950px){.student-filter-form{grid-template-columns:repeat(2,minmax(0,1fr))}.student-filter-form .filter-actions{grid-column:1/-1}}@media(max-width:600px){.student-filter-form{grid-template-columns:1fr}.student-filter-form .filter-actions{grid-column:auto}}
