@font-face{font-family:'IBM Plex Sans Arabic';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/ibm-plex-sans-arabic-400.ttf') format('truetype')}
@font-face{font-family:'IBM Plex Sans Arabic';font-style:normal;font-weight:500;font-display:swap;src:url('/fonts/ibm-plex-sans-arabic-500.ttf') format('truetype')}
@font-face{font-family:'IBM Plex Sans Arabic';font-style:normal;font-weight:600;font-display:swap;src:url('/fonts/ibm-plex-sans-arabic-600.ttf') format('truetype')}
@font-face{font-family:'IBM Plex Sans Arabic';font-style:normal;font-weight:700;font-display:swap;src:url('/fonts/ibm-plex-sans-arabic-700.ttf') format('truetype')}
:root{font-family:'IBM Plex Sans Arabic',Tahoma,Arial,sans-serif;color:#172638;background:#f4f6f8}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer;border:0;border-radius:10px;background:#087e78;color:white;padding:11px 17px}button.secondary{background:#e7eeef;color:#17343c}button.danger{background:#ae3447}button:disabled{opacity:.5;cursor:not-allowed}input,textarea,select{width:100%;padding:11px;border:1px solid #cbd5dc;border-radius:9px;background:white;color:#172638}textarea{min-height:110px;resize:vertical}.shell{max-width:1100px;margin:auto;padding:28px 20px}.top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:25px}.brand{font-size:21px;font-weight:800}.muted{color:#697a88}.card{background:white;border:1px solid #e1e7eb;border-radius:17px;padding:24px;margin:16px 0;box-shadow:0 6px 20px #1933440a}.narrow{max-width:470px;margin:11vh auto}.eyebrow{color:#087e78;font-weight:700;font-size:13px}h1{font-size:30px;line-height:1.35;margin:8px 0 14px}h2{font-size:22px;margin:0 0 14px}h3{font-size:18px;margin:0 0 12px}p{line-height:1.8}label{display:block;font-weight:700;margin:14px 0 7px}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.between{justify-content:space-between}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.pill{display:inline-block;border-radius:30px;background:#e7f5f2;color:#087e78;padding:7px 12px;font-size:13px;font-weight:700}.notice{background:#eaf5f5;border-right:4px solid #087e78;padding:13px 16px;border-radius:8px;line-height:1.8}.question{border-top:1px solid #e9edf0;padding:17px 0}.question:first-of-type{border-top:0}.question strong{display:block;line-height:1.8}.small{font-size:13px}.error{color:#ad2740}.success{color:#087e78}.nav{display:flex;gap:8px;flex-wrap:wrap}.nav button.active{background:#17343c}.tablewrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:right;padding:12px;border-bottom:1px solid #e6eaed;white-space:nowrap}th{color:#586d79}.actions{display:flex;gap:7px;flex-wrap:wrap}.actions button{padding:7px 10px}.stage{border-right:3px solid #087e78;padding-right:15px;margin:20px 0}.timer{font-variant-numeric:tabular-nums;background:#17343c;color:#fff;border-radius:9px;padding:9px 13px}.editor{border:1px solid #d7e0e5;border-radius:12px;padding:18px;margin:14px 0;background:#fcfdfd}.mini{width:110px}.grow{flex:1}pre{white-space:pre-wrap}.exam-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #e6eaed;padding:16px 0}.score-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:14px 0}.score-option{background:#e7eeef;color:#17343c}.score-option.chosen{background:#087e78;color:#fff;box-shadow:0 0 0 2px #075f5b}footer{color:#71818b;text-align:center;padding:24px}@media(max-width:650px){.shell{padding:16px}.card{padding:18px}.top{align-items:flex-start}h1{font-size:25px}.score-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
textarea{font-family:'IBM Plex Sans Arabic',Tahoma,Arial,sans-serif;line-height:1.9;font-size:16px}
.timer-main,.timer-float{--timer-color:#19b975;background:#113d35;color:white;text-align:center;box-shadow:0 0 0 2px var(--timer-color),0 0 22px var(--timer-color);animation:timer-glow 2s ease-in-out infinite;line-height:1.3}
.timer-main{min-width:155px;padding:10px 16px;border-radius:15px}
.timer-main span,.timer-float span{display:block;font-size:12px;white-space:nowrap}
.timer-main strong,.timer-float strong{display:block;font-size:24px;font-variant-numeric:tabular-nums}
.timer-float{position:fixed;left:max(12px,calc((100vw - 1100px)/2 - 102px));top:18px;z-index:20;width:82px;height:82px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;visibility:hidden;opacity:0;pointer-events:none;transition:opacity .2s,visibility .2s}
.timer-float.visible{visibility:visible;opacity:1}
.timer-float strong{font-size:17px}.timer-float span{font-size:10px}
@keyframes timer-glow{50%{box-shadow:0 0 0 3px var(--timer-color),0 0 36px var(--timer-color)}}
@media(prefers-reduced-motion:reduce){.timer-main,.timer-float{animation:none}}
