@import url('/assets/base.css');
[hidden]{display:none!important}form>fieldset{border:0;margin:0;padding:0;min-width:0}
@media(max-width:760px){#app .field input,#app .field select,#app .field textarea{font-size:16px}}
@media(pointer:coarse){#app .question-nav button{width:44px;height:44px}#app .link-button{min-height:44px}}
:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#1c2941;background:#f4f6fb;font-synthesis:none;--brand:#244bc0;--muted:#67748a;--line:#e3e8f1;--surface:#fff;--soft:#edf2ff}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #809bfa;outline-offset:3px}button{border:0}a{color:var(--brand)}h1,h2,h3,p{margin-top:0}h1{font-size:30px;letter-spacing:-1px;margin-bottom:8px}h2{font-size:23px;letter-spacing:-.6px}h3{font-size:16px}p{line-height:1.6}.muted{color:var(--muted)}.small{font-size:13px}.eyebrow{text-transform:uppercase;letter-spacing:1.6px;font-size:11px;font-weight:750;color:var(--muted);margin-bottom:12px}.brand{display:flex;gap:10px;align-items:center;font-weight:750;font-size:16px;white-space:nowrap}.brand img{width:35px;height:35px}.primary,.secondary,.danger{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:9px;padding:11px 17px;font-size:14px;font-weight:650;min-height:43px}.primary{background:var(--brand);color:white}.primary:hover{background:#1a3ca6}.secondary{background:white;color:#344461;border:1px solid var(--line)}.secondary:hover{background:#f5f7fb}.danger{background:#fff0f0;color:#a93232;border:1px solid #ffd0d0}.link-button{background:transparent;color:var(--brand);padding:8px;font-size:13px}.block{width:100%}.row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.between{justify-content:space-between}.stack{display:grid;gap:16px}.field{display:grid;gap:7px;margin-bottom:16px;font-size:13px;font-weight:650}.field input,.field select,.field textarea{width:100%;padding:11px 12px;background:#fbfcfe;border:1px solid #dce3ef;border-radius:8px;color:#1c2941;font-size:15px;min-height:44px}.field textarea{min-height:105px;resize:vertical;line-height:1.6}.field small{font-weight:400;color:var(--muted)}.field:has(input[type=checkbox]){display:flex;align-items:center}.field input[type=checkbox]{width:18px;min-height:18px}.error{color:#aa3030;background:#fff1f0;border:1px solid #f1cbc8;padding:12px;border-radius:9px;font-size:13px;line-height:1.5}.notice{padding:16px;border:1px solid #d9e3fb;border-radius:11px;background:#f0f5ff;color:#34548f;font-size:13px;line-height:1.6}.notice.warning{background:#fffaee;border-color:#f4dfad;color:#87600c}.notice.success{background:#edf9f3;border-color:#cce8dc;color:#246b50}.login{display:grid;grid-template-columns:1.1fr .9fr;min-height:100dvh}.intro{padding:50px 9%;display:flex;flex-direction:column;justify-content:space-between;gap:50px;background:radial-gradient(ellipse at 10% 15%,#e2eaff,transparent 65%),#eef2fa}.intro h1{font-size:clamp(38px,4.7vw,67px);line-height:1.06;letter-spacing:-2.8px;max-width:580px;margin:26px 0}.intro h1 span{color:var(--brand)}.intro .lead{max-width:440px;font-size:16px;color:#64738d}.intro-foot{border-top:1px solid #d7dfed;padding-top:22px;display:flex;gap:22px;color:#596b86;font-size:12px}.intro-foot strong{display:block;color:#263c5f;margin-bottom:5px}.auth{background:#fff;display:grid;place-items:center;padding:40px}.auth form{width:100%;max-width:360px}.auth h2{font-size:29px;margin-bottom:9px}.auth .primary{margin-top:9px}.secure-note{margin-top:22px;font-size:12px;color:#8290a5;text-align:center}.shell{display:grid;grid-template-columns:238px minmax(0,1fr);min-height:100dvh}.sidebar{background:white;border-right:1px solid var(--line);padding:27px 19px;display:flex;flex-direction:column;gap:30px}.sidebar nav{display:grid;gap:6px}.nav-button{display:flex;gap:12px;align-items:center;background:transparent;color:#69758a;padding:12px 14px;border-radius:9px;text-align:left;font-size:14px;font-weight:550}.nav-button svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.7}.nav-button.active{color:var(--brand);background:var(--soft)}.sidebar .profile{margin-top:auto;padding-top:20px;border-top:1px solid var(--line)}.avatar{display:grid;place-items:center;background:#e9efff;color:var(--brand);border-radius:50%;width:38px;height:38px;font-size:12px;font-weight:750;flex-shrink:0}.profile strong{font-size:13px;display:block}.profile small{font-size:11px;color:var(--muted)}.main-wrap{min-width:0}.topbar{height:74px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:0 38px;background:#fff;color:var(--muted);font-size:13px}.online-dot{width:7px;height:7px;background:#3b9f75;border-radius:50%;display:inline-block;margin-right:7px}.online-dot.offline{background:#d38c25}main{padding:36px 38px;max-width:1500px;margin:auto}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:28px}.page-head p{margin:0;color:var(--muted);font-size:14px}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:28px}.stat{background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px}.stat span{font-size:12px;color:var(--muted);display:block}.stat strong{font-size:31px;font-weight:650;letter-spacing:-1px;display:block;margin:12px 0 5px}.stat small{color:#8490a3;font-size:11px}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:18px}.exam-card{background:white;border:1px solid var(--line);border-radius:13px;padding:24px;display:flex;flex-direction:column;gap:16px;box-shadow:0 3px 10px #152c4e03}.exam-card h3{font-size:18px;margin:0;letter-spacing:-.3px}.exam-card p{color:var(--muted);font-size:13px;margin:0;overflow-wrap:anywhere}.exam-card .meta{display:flex;gap:18px;font-size:12px;color:#64738c}.exam-card .actions{display:flex;gap:8px;margin-top:auto;padding-top:15px;border-top:1px solid var(--line);flex-wrap:wrap}.exam-card .actions button{flex:1}.badge{display:inline-flex;align-items:center;width:fit-content;padding:5px 9px;background:#eef3ff;color:#3e5aa0;border-radius:6px;font-size:11px;font-weight:650}.badge.green{background:#eaf7f0;color:#267453}.badge.red{background:#ffefed;color:#b7473d}.badge.amber{background:#fff4df;color:#966b22}.badge.gray{background:#f0f2f6;color:#6d788b}.panel{background:white;border:1px solid var(--line);border-radius:13px;overflow:hidden}.panel-head{padding:20px 23px;border-bottom:1px solid var(--line)}.panel-head h3{margin:0}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:13px;text-align:left}th{color:#7c889b;font-size:11px;font-weight:650;background:#fbfcfe;padding:14px 20px;white-space:nowrap}td{border-top:1px solid #eef1f6;padding:16px 20px;line-height:1.5}td strong{display:block;font-size:13px;font-weight:600}td small{color:var(--muted)}td .primary,td .secondary{font-size:12px;min-height:34px;padding:7px 12px}.empty{padding:55px 24px;text-align:center;color:var(--muted)}.empty h3{color:#344661;margin-bottom:8px}.empty p{max-width:450px;margin:0 auto 18px;font-size:14px}.split{display:grid;grid-template-columns:1fr 1fr;gap:22px}.spaced{margin-top:24px}.form-panel{padding:26px;max-width:980px;background:white;border:1px solid var(--line);border-radius:13px}.question-editor{padding:20px;border:1px solid var(--line);border-radius:11px;background:#fcfdff;margin:18px 0}.question-editor legend{font-size:13px;font-weight:700;color:#506585;padding:0 5px}.question-top{display:grid;grid-template-columns:1fr 110px;gap:14px}.form-actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap;margin-top:24px}.answer-preview{padding:16px;border:1px solid var(--line);background:#f8faff;border-radius:8px;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6;font-size:14px}.grade-question{border-bottom:1px solid var(--line);padding:22px 0}.grade-question:first-of-type{padding-top:0}.grade-question .field{max-width:190px;margin-top:14px;margin-bottom:0}.grade-question p{font-size:14px}.grade-total{font-size:36px;letter-spacing:-1px;margin:15px 0}.grade-total span{font-size:16px;color:var(--muted)}.exam-shell{min-height:100dvh;background:#f6f8fc}.exam-bar{background:white;border-bottom:1px solid var(--line);padding:20px 32px;display:flex;justify-content:space-between;align-items:center;gap:20px}.timer{font-variant-numeric:tabular-nums;font-weight:700;font-size:22px;color:#244bc0;white-space:nowrap}.exam-body{max-width:820px;margin:auto;padding:35px 24px}.question-body{background:white;border:1px solid var(--line);padding:30px;border-radius:13px;margin:23px 0}.question-body h2{font-size:19px;line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere}.choice{display:flex;gap:12px;align-items:flex-start;border:1px solid var(--line);padding:15px;border-radius:9px;margin:10px 0;font-size:14px;line-height:1.5;cursor:pointer}.choice:has(input:checked){border-color:#6d8af0;background:#f0f4ff}.choice input{accent-color:var(--brand);margin-top:4px}.question-nav{display:flex;gap:7px;flex-wrap:wrap}.question-nav button{width:35px;height:35px;border:1px solid var(--line);border-radius:7px;background:#fff;color:#758197;font-size:12px}.question-nav button.answered{background:#e8f5ee;color:#27734d;border-color:#c8e4d4}.question-nav button.current{background:var(--brand);color:white;border-color:var(--brand)}.progress-track{height:5px;background:#e7ecf5;border-radius:5px;margin-top:15px;overflow:hidden}.progress-track progress{width:100%;height:5px;display:block;accent-color:var(--brand)}.terminal{max-width:600px;margin:80px auto;background:white;border:1px solid var(--line);padding:40px;border-radius:16px}.terminal-icon{display:grid;place-items:center;width:52px;height:52px;background:#edf4ff;color:var(--brand);border-radius:14px;font-size:24px;margin-bottom:22px}.terminal-icon.red{background:#ffefed;color:#b7473d}.terminal h1{font-size:27px}.terminal p{font-size:14px;color:var(--muted)}dialog{padding:0;border:1px solid var(--line);border-radius:16px;max-width:560px;width:calc(100% - 32px);color:#1c2941;background:white}dialog::backdrop{background:#15274266;backdrop-filter:blur(3px)}.dialog-content{padding:28px}.dialog-content h2{margin-bottom:12px}.dialog-content p{font-size:14px;color:var(--muted)}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);max-width:calc(100% - 32px);padding:13px 20px;border-radius:10px;background:#183553;color:white;font-size:13px;box-shadow:0 5px 30px #12213933;z-index:100;display:none}.boot{padding:100px;text-align:center;color:var(--muted)}.mobile-label{display:none}.text-line{white-space:pre-wrap;overflow-wrap:anywhere}.audit-reason{color:#8b5c21;font-size:12px}.screenreader{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
@media(min-width:1300px){main{padding:45px 55px}.topbar{padding:0 55px}}@media(max-width:1000px){.shell{grid-template-columns:205px minmax(0,1fr)}.sidebar{padding:24px 13px}.sidebar .brand{font-size:14px}.topbar{padding:0 25px}main{padding:27px 25px}.stats{gap:12px}.stat{padding:16px}}@media(max-width:760px){.login{grid-template-columns:1fr}.intro{padding:30px;gap:26px}.intro h1{font-size:39px;letter-spacing:-1.5px;margin:16px 0}.intro .lead{font-size:14px}.intro-foot{display:none}.auth{padding:38px 27px}.shell{display:block}.sidebar{border-right:0;border-bottom:1px solid var(--line);padding:15px 18px;gap:15px}.sidebar nav{display:flex;gap:5px;overflow-x:auto}.sidebar .nav-button{padding:10px 12px;white-space:nowrap;font-size:12px;min-height:42px}.sidebar .nav-button svg{display:none}.sidebar .profile{display:none}.sidebar .eyebrow{display:none}.topbar{height:53px;padding:0 19px;font-size:11px}.mobile-label{display:inline}.page-head{gap:15px;flex-wrap:wrap}.page-head .primary{width:100%}h1{font-size:25px}main{padding:26px 18px}.stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.stat{padding:14px 10px}.stat span{font-size:10px}.stat strong{font-size:25px}.stat small{display:none}.split{grid-template-columns:1fr}.form-panel{padding:20px}.question-editor{padding:14px}.question-top{grid-template-columns:1fr 88px}.exam-bar{padding:17px}.exam-bar .brand{font-size:13px}.exam-bar .brand img{width:29px;height:29px}.timer{font-size:19px}.exam-body{padding:22px 16px}.question-body{padding:22px 17px}.terminal{margin:35px 16px;padding:27px}.form-actions>*{flex:1}.table-wrap td{min-width:130px}.question-body h2{font-size:17px}}@media(prefers-reduced-motion:no-preference){button{transition:background .15s ease}.exam-card{animation:arrive .25s ease}@keyframes arrive{from{opacity:.7;transform:translateY(5px)}to{opacity:1;transform:none}}}
