.app-body{min-height:100vh;background:#eef2f7;font-family:"Source Sans 3",Segoe UI,Tahoma,Arial,sans-serif}.app-topbar{display:flex;align-items:center;justify-content:space-between;background:#497ee4;color:#fff;padding:.6rem 1rem}.app-topbar .brand{display:flex;align-items:center;gap:.6rem;font-weight:700}.app-topbar .brand img{height:30px}.app-signout{background:#ffffff26;color:#fff;border:none;border-radius:8px;padding:.4rem .9rem;font-weight:600;cursor:pointer}.app-signout:hover{background:#ffffff40}.app-main{width:90%;max-width:none;margin:1.25rem auto}.card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 16px #0f172a0d;overflow:hidden}.card-header{display:flex;align-items:center;justify-content:space-between;padding:.9rem 1.1rem;border-bottom:1px solid #e2e8f0;font-weight:700;color:#1e2a45}.table-wrap{overflow-x:auto}table.exam-table{width:100%;border-collapse:collapse}table.exam-table thead th{background:#f8fafc;text-align:left;font-size:.85rem;color:#475569;padding:.7rem 1rem;border-bottom:1px solid #e2e8f0;white-space:nowrap}table.exam-table tbody td{padding:.75rem 1rem;border-bottom:1px solid #eef2f7;color:#1e2a45;vertical-align:middle}table.exam-table tbody tr:last-child td{border-bottom:none}.badge{display:inline-block;padding:.25rem .6rem;border-radius:999px;font-size:.78rem;font-weight:700}.badge.bg-success{background:#dcfce7;color:#166534}.badge.bg-secondary{background:#e2e8f0;color:#475569}.btn-start{display:inline-block;background:#4a7bdc;color:#fff;text-decoration:none;border-radius:8px;padding:.4rem .9rem;font-size:.85rem;font-weight:700}.btn-start:hover{background:#3d69be}.app-muted{padding:1.5rem;color:#64748b}.app-danger{padding:1.5rem;color:#b42318}.student-chrome{height:100dvh;display:flex;flex-direction:column;background:#eef2f7;font-family:"Source Sans 3",Segoe UI,Tahoma,Arial,sans-serif;overflow:hidden}.sc-navbar,.sc-content-header,.sc-footer{flex:0 0 auto}.sc-content{flex:1 1 auto;overflow-y:auto;min-height:0}.sc-navbar{display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid #e2e8f0;padding:.5rem 1.1rem}.sc-nav-link{color:#1e2a45;text-decoration:none;font-weight:600;font-size:.95rem}.sc-nav-link:hover{color:#497ee4}.sc-user{display:flex;align-items:center;gap:.55rem}.sc-user .bi{font-size:1.1rem;font-style:normal}.sc-user-name{font-weight:700;color:#1e2a45}.sc-logout{background:transparent;border:1px solid #e2e8f0;color:#b42318;border-radius:8px;padding:.3rem .7rem;font-weight:600;font-size:.82rem;cursor:pointer}.sc-logout:hover{background:#fef2f2;border-color:#fca5a5}.sc-content-header{background:#fff;border-bottom:1px solid #e2e8f0}.sc-content-header h3{margin:0;padding:.7rem 1.25rem;color:#1e2a45;font-weight:800;font-size:1.35rem}.sc-content{flex:1}.sc-footer{display:flex;align-items:center;gap:.75rem;padding:.5rem 1.25rem;background:#fff;border-top:1px solid #e2e8f0;font-size:.82rem;color:#64748b}.sc-footer-start{display:flex;align-items:center;gap:.5rem}.sc-footer .sc-net{margin-left:auto}.sc-footer-start .btn{min-width:auto;min-height:34px;padding:.35rem .9rem;background:#4a7bdc;color:#fff;border:none;border-radius:8px;font-weight:700;font-size:.82rem;cursor:pointer}.sc-footer-start .btn:hover{background:#3d69be}.sc-footer-start .btn:disabled{background:#c3d1ef;cursor:default}.sc-net{font-weight:700;padding:.1rem .6rem;border-radius:999px}.sc-net--online{color:#1b7e34;background:#e8f5e9d9}.sc-net--offline{color:#b00020;background:#ffebeee6}.exam-shell--active{min-height:100dvh;height:100dvh;position:relative;background:#f8f9fa;overflow:hidden}.exam-card{flex:1;display:flex;flex-direction:column;overflow:hidden;position:relative;background:#fff}.exam-start-wrap{display:flex;align-items:flex-start;justify-content:center;padding:1.5rem 1rem}.exam-start-card{display:grid;gap:1rem;max-width:780px;width:100%;margin-inline:auto;background:#fff;border:1px solid #dbe3f3;border-radius:16px;padding:1.5rem;box-shadow:0 12px 40px #497ee41f}.exam-start-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.5rem}.exam-start-title{margin:0;font-size:1.25rem;font-weight:700;color:#1e2a45}.exam-start-meta{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.exam-meta-badge{display:inline-flex;align-items:center;gap:.3rem;padding:.25rem .65rem;border-radius:999px;font-size:.82rem;font-weight:600;white-space:nowrap}.exam-meta-badge--time{background:#fff3cd;color:#7c5800;border:1px solid #ffe089}.exam-meta-badge--questions{background:#e8f0fe;color:#1a4caa;border:1px solid #c5d8fc}.exam-start-instructions{border:1px solid #dbe3f3;border-radius:10px;background:#f8fbff;padding:1rem 1.1rem;max-height:min(48dvh,440px);overflow:auto}.exam-start-instructions__heading{margin:0 0 .65rem;font-size:1rem;font-weight:700;display:flex;align-items:baseline;gap:.5rem}.exam-start-instructions__heading-en{font-size:.8rem;font-weight:500;color:#6b7a99}.exam-start-btn__sep{opacity:.55;font-weight:400}.exam-start-instructions__body{font-size:.95rem;line-height:1.85;color:#1e2a45}.exam-start-footer{display:flex;flex-direction:column;gap:.5rem;align-items:center;padding-top:.25rem}.exam-start-btn{display:inline-flex;align-items:center;gap:.35rem;padding:.7rem 2.5rem;font-size:1rem;font-weight:700;border-radius:8px;background:#4a7bdc;color:#fff;border:none;cursor:pointer;transition:background .15s ease,transform .1s ease}.exam-start-btn:hover{background:#3d69be}.exam-start-btn:active{background:#3d69be;transform:scale(.97)}.exam-start-btn:disabled{background:#9bb4e6;cursor:default}.exam-prep-status{font-size:.9rem;color:#475569}.exam-topbar{flex-shrink:0;display:flex;flex-direction:column;position:sticky;top:0;z-index:3000;gap:.4rem;padding:.42rem .7rem .4rem;color:#fff;background:#497ee4;border-bottom:2px solid #3a6bc9}.exam-topbar-main{display:grid;grid-template-columns:minmax(180px,1fr) auto;align-items:center;gap:.75rem}.exam-title{margin:0;font-size:1.05rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.exam-topbar-meta{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;justify-self:end;white-space:nowrap}.exam-progress{font-size:.84rem;opacity:.95}.exam-timer-enhanced{display:flex;flex-direction:column;align-items:flex-end;line-height:1.2}.exam-timer-label{font-size:.72rem;opacity:.85}.timer-value{font-size:.96rem;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Courier New,monospace}.timer-value.critical{color:#ffd166;animation:pulse 1s infinite}.exam-netstatus{font-size:.72rem;padding:.05rem .5rem;border-radius:999px;font-weight:700}.exam-netstatus--online{background:#ffffff2e;color:#eafff0}.exam-netstatus--offline{background:#b2002038;color:#ffe1e6}.question-navigator--top{display:flex;flex-wrap:nowrap;gap:.2rem;overflow-x:auto;overflow-y:hidden;padding-bottom:.2rem;min-height:1.95rem}.question-navigator--top::-webkit-scrollbar{height:7px}.question-navigator--top::-webkit-scrollbar-thumb{background:#fff6;border-radius:99px}.question-number{position:relative;min-width:2.05rem;height:2.05rem;border:2px solid var(--section-color, #ccc);border-radius:9px;background:transparent;color:#fff;font-size:.78rem;font-weight:700;padding:0;line-height:1;cursor:pointer;transition:border-color .15s,background .15s,color .15s}.question-number.answered{background:#ffffffe6;color:#1e2a45}.question-number.flagged{border-color:#ffd166}.question-number.active{box-shadow:0 0 0 2px #0000001f;background:#fff;color:#1e2a45}.exam-card-body{flex:1;display:flex;flex-direction:column;min-height:0;padding:.7rem .9rem .9rem;overflow:hidden}.exam-question-area--scroll{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding-inline-end:.35rem;padding-bottom:7rem;-webkit-overflow-scrolling:touch}.exam-section{display:flex;flex-direction:column;gap:.75rem;padding:.95rem;border:1px solid #d7dde9;border-radius:12px;background:#fff;line-height:1.58;margin-bottom:.65rem}.exam-section__text h3{margin:0 0 .45rem;font-family:Calibri,Segoe UI,Arial,sans-serif;font-size:25px;direction:rtl;text-align:right}.exam-section .section-body{min-width:0;display:flow-root;font-family:Calibri,Segoe UI,Arial,sans-serif;font-size:25px}.exam-section .section-body :where(p,span,li,a,div,strong,em,b,i,u,td,th,blockquote){font-family:Calibri,Segoe UI,Arial,sans-serif;font-size:25px}.section-body :where(*):not(img):not(svg):not(path):not(video):not(canvas):not(iframe){font-family:Calibri,Segoe UI,Arial,sans-serif;font-size:25px}.exam-section .section-body :where(img,table,iframe,video,canvas,svg){max-width:100%}.section-body img{display:block;clear:both;width:auto;max-width:100%;height:auto;margin-top:.65rem}.exam-section__image{display:flex;justify-content:center;overflow:hidden;flex-shrink:0}.exam-section__image img{display:block;width:auto;height:auto;max-width:100%;border:1px solid #dbe3f3;border-radius:10px;box-shadow:0 4px 14px #0f172a14}.exam-section__image--bottom{margin-top:.65rem;display:flex;justify-content:center;width:100%}.exam-section__image--bottom img{width:auto;max-width:80%;height:auto;object-fit:contain}.section-questions-box{display:flex;flex-direction:column;gap:.65rem}.section-question-card{border:1px solid #d5dce8;border-radius:10px;padding:.7rem .8rem;background:#fff}.section-question-card.active{border-color:#0ea5e9;box-shadow:0 0 0 2px #0ea5e929}.section-question-card__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.45rem;font-weight:700}.section-question-card__header-actions{display:flex;align-items:center;gap:.35rem}.section-flag-button{border:1px solid #9ec8dd;border-radius:10px;min-height:38px;padding:.35rem .75rem;font-size:.9rem;line-height:1.2;background:#f3f9fd;color:#0c4a6e;cursor:pointer}.section-flag-button.flagged{background:#fee2e2;border-color:#fca5a5;color:#7f1d1d}.section-question-card__flag{font-size:.95rem}.section-actions{display:flex;justify-content:center;align-items:center;gap:.5rem;flex-wrap:wrap;border-top:1px dashed #d5dce8;padding-top:.85rem;margin-top:.35rem;margin-bottom:1.25rem}.question-content{display:grid;gap:.55rem}.question-prompt{direction:rtl;white-space:normal}.question-body{font-family:Calibri,Segoe UI,Arial,sans-serif;font-size:20px!important;line-height:1.6}.question-body :where(*):not(img):not(svg):not(path):not(video):not(canvas):not(iframe){font-family:Calibri,Segoe UI,Arial,sans-serif;font-size:20px!important}.question-title{margin:0 0 .35rem;font-family:Calibri,Segoe UI,Arial,sans-serif;font-size:22px;line-height:1.35;font-weight:700}.question-title--arabic{direction:rtl;text-align:right}.question-title--english{direction:ltr;text-align:left}.question-options{display:flex;flex-direction:column;gap:.45rem}.option-item{display:flex;align-items:center;gap:.85rem;min-height:54px;padding:.7rem .9rem;border-radius:12px;border:1px solid #d6dbe7;background:#fff;color:#111827;cursor:pointer;transition:border-color .2s ease,background-color .2s ease;font-family:Calibri,Segoe UI,Arial,sans-serif;font-size:18px;line-height:1.5}.option-content,.option-content :where(*):not(img):not(svg):not(path):not(video):not(canvas):not(iframe){font-family:Calibri,Segoe UI,Arial,sans-serif;font-size:18px}.option-item input{margin:0;flex:0 0 auto}.option-item.selected,.option-item:has(>input[type=radio]:checked){border-color:#0ea5e9;background:#0ea5e914;color:#0c4a6e}.option-content{flex:1;min-width:0}.option-image{display:block;max-width:220px;max-height:220px;margin-bottom:.3rem;border-radius:6px}.question-image{width:100%;margin:.25rem auto;max-width:90%}.question-image img{display:block;width:100%;max-width:100%;height:auto;margin-inline:auto;border-radius:8px}.error{color:#b42318;font-weight:600}@keyframes pulse{0%{opacity:1}50%{opacity:.4}to{opacity:1}}.exam-running{height:100%;min-height:0;display:flex;flex-direction:column}.exam-topbar-main{display:grid;grid-template-columns:minmax(140px,1fr) auto auto;align-items:center;gap:.75rem}.exam-topbar-actions{display:flex;align-items:center;justify-content:center;gap:.4rem;flex-wrap:nowrap}.btn{min-width:92px;min-height:38px;padding:.4rem .85rem;font-size:.85rem;font-weight:700;border-radius:8px;border:1px solid rgba(255,255,255,.6);background:#fff;color:#1e2a45;cursor:pointer;transition:background .15s,transform .1s,opacity .15s}.btn:hover{background:#eef2ff}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.55;cursor:default}.btn.success{background:#16a34a;color:#fff;border-color:#15803d}.btn.success:hover{background:#15803d}.exam-progressbar{height:5px;border-radius:99px;background:#ffffff40;overflow:hidden;margin-top:.1rem}.exam-progressbar__fill{height:100%;background:#bbf7d0;transition:width .25s ease}.exam-card-body--passage{flex:1 1 auto;min-height:0;overflow:hidden}.exam-question-area--passage{flex:1 1 auto;min-height:0;display:grid;grid-template-columns:minmax(0,60%) minmax(0,40%);gap:.85rem;align-items:stretch}.exam-question-area--passage.no-passage{display:block}.exam-question-area--passage .exam-section{height:100%;min-height:0;overflow-y:auto;overflow-x:hidden}.exam-question-area--passage .section-questions-box{height:100%;min-height:0;overflow-y:auto;overflow-x:hidden;padding-bottom:1rem}.question-options[dir=rtl] .option-item{text-align:right}@media(max-width:900px){.exam-topbar-main{grid-template-columns:1fr;gap:.45rem}.exam-topbar-actions{justify-content:flex-start;overflow-x:auto}.exam-running{height:auto}.exam-card-body--passage{overflow:visible}.exam-question-area--passage{display:block;flex:none;min-height:0}.exam-question-area--passage .exam-section{height:auto;max-height:38vh;overflow-y:auto}.exam-question-area--passage .section-questions-box{height:auto;overflow:visible}}html,body,.auth-body{margin:0;min-height:100%}body.auth-body{background:#eaf6f5}.login-page{min-height:100vh;background-color:#eaf6f5}.auth-footer{padding:1rem;text-align:center;color:#64748b;font-size:.85rem}.login-password-input::-ms-reveal,.login-password-input::-ms-clear{display:none}.login-password-input::-webkit-credentials-auto-fill-button{visibility:hidden;display:none!important;pointer-events:none}.custom-login-container{display:flex;min-height:100vh;width:100%;font-family:Poppins,Segoe UI,Tahoma,Arial,sans-serif;background:linear-gradient(135deg,#dbeafe,#eff6ff 60%,#f0f4ff)}.custom-login-left{flex:1 1 50%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 32px;gap:28px;min-height:100vh}.custom-login-logo{display:flex;align-items:center;justify-content:center}.custom-login-logo img{height:90px;width:auto;display:block}.custom-login-illustration{width:100%;max-width:480px;height:auto;object-fit:contain;display:block}.custom-login-right{flex:0 0 auto;width:min(500px,46%);display:flex;align-items:center;justify-content:center;padding:40px 24px;min-height:100vh;background:#ffffff8c;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-left:1px solid rgba(73,126,228,.15)}.custom-login-card{background:#fff;width:100%;max-width:420px;padding:44px 44px 36px;border-radius:24px;box-shadow:0 12px 40px #497ee424,0 2px 8px #0000000f}.custom-login-card h1{font-size:32px;font-weight:700;margin:0 0 28px;color:#0f172a}.custom-login-alert{display:flex;align-items:center;margin-bottom:18px;padding:12px 14px;border-radius:12px;border:1px solid #fecaca;background:#fef2f2;color:#991b1b;font-size:14px}.custom-login-session-check{display:flex;align-items:center;justify-content:center;gap:10px;min-height:172px;color:#374151;font-weight:600}.custom-login-session-check .custom-login-spinner{border-color:#497ee440;border-top-color:#497ee4}.custom-input-group{margin-bottom:18px}.custom-input-group label{display:block;margin-bottom:6px;font-weight:500;color:#374151}.custom-input-field{display:flex;align-items:center;background:#f1f5ff;border:1.5px solid #c3d6f7;border-radius:12px;width:100%;height:52px;padding:8px 14px;transition:border-color .18s,box-shadow .18s}.custom-input-field:focus-within{border-color:#497ee4;box-shadow:0 0 0 3px #497ee426;background:#fff}.custom-login-input{border:none;background:transparent;box-shadow:none;outline:none;width:100%;min-height:36px;padding:0;font-size:14px;color:#111827}.custom-login-input:focus{box-shadow:none}.input-icon{color:#497ee4;display:inline-flex;align-items:center;justify-content:center;min-width:28px;margin-right:10px}.login-icon{width:20px;height:20px;fill:currentColor}.custom-password-toggle{border:none;background:transparent;color:#6b7280;padding:0 6px;min-height:36px;width:auto;cursor:pointer;font-weight:600}.custom-password-toggle:hover,.custom-password-toggle:focus,.custom-password-toggle:active{border:none;background:transparent;color:#497ee4;box-shadow:none}.custom-login-options{display:flex;align-items:center;margin-bottom:20px;gap:8px}.custom-login-options input{accent-color:#497EE4;width:16px;height:16px}.custom-login-options label{margin:0;color:#4b5563}.custom-login-btn,.custom-back-btn{display:inline-flex;align-items:center;justify-content:center;width:100%;height:52px;gap:8px;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;text-decoration:none;white-space:nowrap;padding:0 24px;transition:background .18s,box-shadow .18s,transform .12s}.custom-login-btn{margin-bottom:14px;background:linear-gradient(135deg,#497ee4,#2b5cb8);color:#fff;box-shadow:0 6px 18px #497ee459}.custom-login-btn:hover,.custom-login-btn:focus{background:linear-gradient(135deg,#3a6fd6,#1e4494);color:#fff;box-shadow:0 8px 22px #497ee473;transform:translateY(-1px)}.custom-login-btn:active{transform:translateY(0);box-shadow:0 4px 12px #497ee44d}.custom-login-btn:disabled{opacity:.7;cursor:default;transform:none}.custom-login-spinner{width:1rem;height:1rem;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:999px;animation:custom-login-spin .8s linear infinite}@keyframes custom-login-spin{to{transform:rotate(360deg)}}.custom-back-wrap{margin-top:0!important}.custom-back-btn{background:#e9ecef;color:#6b7280;text-decoration:none;border:none;box-shadow:none}.custom-back-btn:hover,.custom-back-btn:focus,.custom-back-btn:active{background:#d1d5db;color:#374151;text-decoration:none;border:none;outline:none}@media(max-width:900px){.custom-login-container{flex-direction:column;align-items:center;background:linear-gradient(180deg,#dbeafe,#eff6ff)}.custom-login-left{flex:none;width:100%;min-height:auto;padding:32px 20px 0;gap:16px}.custom-login-illustration{max-width:280px}.custom-login-right{flex:none;width:100%;min-height:auto;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;border-left:none;padding:20px 20px 40px}.custom-login-card{max-width:480px;padding:32px 28px;border-radius:20px}.custom-login-card h1{font-size:26px;margin-bottom:20px}}@media(max-width:480px){.custom-login-left{padding:24px 16px 0}.custom-login-logo img{height:64px}.custom-login-illustration{max-width:200px}.custom-login-card{padding:24px 20px;border-radius:16px}.custom-login-card h1{font-size:22px;margin-bottom:16px}.custom-input-field{height:48px}.custom-login-btn,.custom-back-btn{height:48px;font-size:15px}}
