:root{--ink:#17342e;--ink-soft:#3b554f;--paper:#f4f5f1;--paper-light:#fff;--line:#d9ddd8;--muted:#69736e;--acid:#dfe9e2;--orange:#326c5c;--mint:#e4eee7;--white:#fff;--danger:#99433d;--display:"Iowan Old Style", "Palatino Linotype", Palatino, serif;--body:"Avenir Next", Avenir, "Trebuchet MS", sans-serif}*{box-sizing:border-box}html{background:var(--paper);color:var(--ink)}body{min-height:100vh;font-family:var(--body);-webkit-font-smoothing:antialiased;margin:0}button,input,select{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible,[tabindex="-1"]:focus-visible{outline:3px solid var(--orange);outline-offset:3px}.skip-link{background:var(--acid);min-height:44px;color:var(--ink);letter-spacing:.08em;text-transform:uppercase;z-index:100;align-items:center;padding:11px 15px;font-size:11px;font-weight:900;text-decoration:none;transition:transform .16s;display:inline-flex;position:fixed;top:12px;left:16px;transform:translateY(-180%)}.skip-link:focus{transform:translateY(0)}.eyebrow{color:var(--muted);letter-spacing:.18em;text-transform:uppercase;margin:0 0 10px;font-size:11px;font-weight:800}.eyebrow.light{color:#fffdf79e}.eyebrow>span{letter-spacing:0;border:1px solid;border-radius:50%;place-items:center;width:24px;height:24px;margin-right:8px;display:inline-grid}.brand-mark{width:45px;height:45px;color:var(--white);border:1px solid #fff6;border-radius:50%;place-items:center;display:grid;position:relative}.brand-mark:after{content:"";border:1px solid #ffffff38;border-radius:50%;position:absolute;inset:5px}.brand-mark span{font-family:var(--display);font-size:24px;font-weight:700;line-height:1}.primary-button,.secondary-button,.ghost-button,.assign-button{cursor:pointer;border:0;border-radius:2px;font-weight:800;transition:transform .18s,box-shadow .18s,background .18s}.primary-button{background:var(--ink);min-height:52px;color:var(--white);padding:0 22px}.primary-button:hover:not(:disabled),.assign-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 20px #17342e29}.primary-button:disabled,.assign-button:disabled,.ghost-button:disabled{cursor:wait;opacity:.58}.ghost-button{border:1px solid var(--line);background:0 0;min-height:52px;padding:0 20px}.login-shell{background:var(--paper);grid-template-columns:1fr;place-items:center;min-height:100vh;display:grid}.login-brand-panel{background:var(--ink);min-height:100vh;color:var(--white);flex-direction:column;justify-content:center;padding:clamp(36px,6vw,86px);display:flex;position:relative}.brand-mark-large{width:68px;height:68px;margin-bottom:clamp(60px,10vh,130px)}.brand-mark-large span{font-size:34px}.login-brand-panel h1{font-family:var(--display);letter-spacing:-.06em;margin:0;font-size:clamp(76px,9.5vw,152px);font-weight:500;line-height:.72}.exam-stamp{border-top:1px solid #ffffff40;border-bottom:1px solid #ffffff40;align-items:center;width:fit-content;margin-top:52px;display:flex}.exam-stamp span,.exam-stamp strong{letter-spacing:.16em;padding:14px 18px;font-size:12px}.exam-stamp strong{background:var(--acid);color:var(--ink);border-left:1px solid #ffffff40;font-size:18px}.login-intro{color:#ffffff94;max-width:360px;margin:28px 0 0;font-size:14px;line-height:1.65}.login-card-wrap{place-items:center;width:100%;min-height:100vh;padding:24px;display:grid}.login-card{border:1px solid var(--line);background:var(--paper-light);width:min(100%,420px);box-shadow:none;padding:40px}.login-brand-inline{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding-bottom:18px;display:flex}.login-brand-inline strong{font-family:var(--display);font-size:20px;font-weight:600}.login-brand-inline span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:800}.step-chip{border:1px solid var(--ink);border-radius:50%;place-items:center;width:38px;height:38px;font-size:11px;font-weight:800;display:grid}.login-card h1{font-family:var(--display);letter-spacing:-.035em;margin:0;font-size:38px;font-weight:500}.login-form{gap:20px;margin-top:32px;display:grid}.login-form label{gap:9px;display:grid}.login-form label>span{letter-spacing:.1em;text-transform:uppercase;font-size:11px;font-weight:800}.login-form input{border:0;border-bottom:2px solid var(--ink);width:100%;height:56px;color:var(--ink);background:0 0;border-radius:0;padding:0 4px;font-size:19px}.login-form input::placeholder{color:#9aa39e}.login-button{justify-content:space-between;align-items:center;margin-top:10px;display:flex}.form-error,.inline-error{color:var(--danger);margin:0;font-size:13px;font-weight:700}.demo-hint{background:var(--acid);justify-content:space-between;align-items:center;margin-top:22px;padding:12px 14px;display:flex}.demo-hint span{letter-spacing:.12em;font-size:10px;font-weight:900}.demo-hint code{font-size:12px}.security-note{border-top:1px solid var(--line);color:var(--muted);margin:28px 0 0;padding-top:22px;font-size:11px;line-height:1.6}.login-orbit{pointer-events:none;border:1px solid #102a2a1f;border-radius:50%;width:320px;height:320px;position:absolute}.login-orbit-one{top:-130px;right:-130px}.login-orbit-two{width:480px;height:480px;bottom:-240px;right:16%}.dashboard-shell{background:var(--paper);min-height:100vh}.dashboard-header{background:var(--ink);min-height:64px;color:var(--white);grid-template-columns:1fr auto;align-items:center;padding:0 clamp(20px,4vw,64px);display:grid}.header-brand,.registrar-menu,.header-exam-meta{align-items:center;display:flex}.header-brand{gap:0}.header-brand p,.header-brand strong,.registrar-menu span,.registrar-menu strong{margin:0;display:block}.header-brand p{color:#ffffff8c;letter-spacing:.12em;text-transform:uppercase;margin-top:2px;font-size:8px;font-weight:800}.header-brand strong{font-family:var(--display);font-size:18px;font-weight:600}.header-exam-meta{border-left:1px solid #ffffff1f;border-right:1px solid #ffffff1f;gap:18px;height:100%;padding:0 30px}.header-exam-meta span{color:#ffffff9e;letter-spacing:.18em;font-size:10px;font-weight:800}.header-exam-meta i{background:var(--acid);border-radius:50%;width:4px;height:4px}.header-exam-meta strong{letter-spacing:.08em;font-size:17px}.registrar-menu{justify-self:end;gap:12px}.registrar-avatar{background:var(--acid);width:38px;height:38px;color:var(--ink);font-family:var(--display);border-radius:50%;place-items:center;font-size:20px;font-weight:700;display:grid}.registrar-menu span{color:#ffffff80;letter-spacing:.12em;text-transform:uppercase;font-size:9px;font-weight:800}.registrar-menu strong{text-overflow:ellipsis;white-space:nowrap;max-width:150px;margin-top:3px;font-size:12px;overflow:hidden}.registrar-menu button{width:44px;height:44px;color:var(--white);cursor:pointer;background:0 0;border:1px solid #fff3;border-radius:50%;place-items:center;margin-left:6px;display:grid}.staff-link{min-height:44px;color:var(--white);letter-spacing:.1em;text-transform:uppercase;border:1px solid #ffffff38;align-items:center;padding:9px 12px;font-size:9px;font-weight:900;text-decoration:none;transition:background .18s,color .18s;display:inline-flex}.staff-link:hover{background:var(--acid);color:var(--ink)}.workspace{width:min(1180px,100% - 40px);margin:0 auto;padding:34px 0 64px}.workspace-heading{display:block}.workspace-heading h1{font-family:var(--display);letter-spacing:-.035em;margin:0;font-size:36px;font-weight:500;line-height:1}.workspace-heading h1 em{color:var(--orange);font-weight:500}.workspace-note{border-left:2px solid var(--orange);max-width:400px;color:var(--muted);margin:0 0 6px;padding:18px 0 2px 24px;font-size:13px;line-height:1.65}.demo-banner{background:#f8efd9;border:1px solid #c8a861;align-items:center;gap:16px;margin-top:35px;padding:12px 16px;display:flex}.readonly-banner{background:var(--mint);border:1px solid #8aa296;align-items:center;gap:16px;margin-top:35px;padding:12px 16px;display:flex}.readonly-banner strong{letter-spacing:.14em;font-size:10px}.readonly-banner span{font-size:12px}.demo-banner strong{letter-spacing:.14em;font-size:10px}.demo-banner span{font-size:12px}.search-panel{border:1px solid var(--line);background:var(--paper-light);box-shadow:none;margin-top:22px;padding:18px 20px;position:relative}.search-mode-row{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:10px;font-weight:800;display:flex}.search-mode-row kbd{border:1px solid var(--line);background:var(--paper);font-family:var(--body);letter-spacing:0;border-radius:3px;padding:5px 8px}.search-toolbar{align-items:center;gap:12px;display:flex}.branch-filter{align-items:center;gap:8px;display:flex}.branch-filter>span,.locked-branch{letter-spacing:.12em;text-transform:uppercase;font-size:9px;font-weight:900}.branch-filter select{border:1px solid var(--line);background:var(--paper);max-width:190px;height:44px;color:var(--ink);border-radius:2px;padding:0 30px 0 10px;font-size:11px;font-weight:700}.locked-branch{border:1px solid var(--line);background:var(--paper);padding:7px 9px}.search-input-wrap{grid-template-columns:34px 1fr auto;align-items:center;gap:14px;display:grid}.search-input-wrap svg{fill:none;width:30px;stroke:var(--orange);stroke-linecap:round;stroke-width:1.7px}.search-input-wrap input{width:100%;min-height:44px;color:var(--ink);font-family:var(--display);letter-spacing:-.025em;background:0 0;border:0;outline:0;font-size:clamp(25px,3vw,34px)}.search-input-wrap input::placeholder{color:#a5ada8}.clear-search{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:50%;place-items:center;width:44px;height:44px;font-size:24px;display:grid}.stats-grid{border:1px solid var(--line);grid-template-columns:repeat(4,1fr);margin-top:28px;display:grid}.stat-card{border-right:1px solid var(--line);background:var(--paper-light);min-height:118px;padding:18px 20px}.stat-card>span,.stat-card small{letter-spacing:.11em;text-transform:uppercase;font-size:10px;font-weight:800;display:block}.stat-card small{color:var(--muted);font-size:9px;font-weight:700}.stat-card strong{font-family:var(--display);margin:13px 0 5px;font-size:42px;font-weight:500;line-height:1;display:block}.dark-stat{background:var(--ink);color:var(--white)}.dark-stat small{color:#ffffff80}.outline-stat{background:0 0}.results-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:end;min-height:48px;padding-bottom:12px;display:flex}.results-heading h2{font-family:var(--display);margin:0;font-size:27px;font-weight:500}.loading-label{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:8px;font-size:10px;font-weight:800;display:flex}.loading-label i{background:var(--orange);border-radius:50%;width:8px;height:8px;animation:.8s ease-in-out infinite alternate pulse}.results-list-toolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;min-height:60px;padding:8px 0;display:flex}.status-filter{border:1px solid var(--line);background:var(--paper-light);display:inline-flex}.status-filter button{border:0;border-right:1px solid var(--line);cursor:pointer;letter-spacing:.07em;text-transform:uppercase;background:0 0;min-height:44px;padding:0 15px;font-size:9px;font-weight:900}.status-filter button:last-child{border-right:0}.status-filter button.active{background:var(--ink);color:var(--white)}.student-list{display:grid}.load-more-row{border-top:1px solid var(--line);justify-content:flex-end;align-items:center;gap:18px;min-height:72px;padding:12px 0;display:flex}.load-more-row button{border:1px solid var(--ink);background:var(--ink);min-height:52px;color:var(--white);cursor:pointer;letter-spacing:.08em;text-transform:uppercase;padding:0 20px;font-size:10px;font-weight:900;transition:background .18s,color .18s,transform .18s}.load-more-row button:hover:not(:disabled){background:var(--acid);color:var(--ink);transform:translateY(-2px)}.load-more-row button:disabled{cursor:wait;opacity:.58}.student-card{border-bottom:1px solid var(--line);grid-template-columns:1fr minmax(155px,auto);align-items:center;gap:20px;min-height:112px;padding:18px 0;animation:none;display:grid}.student-index{color:#929b96;font-family:var(--display);align-self:start;font-size:16px}.student-name-row{align-items:center;gap:14px;display:flex}.student-name-row h3{font-family:var(--display);letter-spacing:-.025em;margin:0;font-size:clamp(21px,2.4vw,26px);font-weight:500}.status-pill{border:1px solid var(--line);color:var(--muted);letter-spacing:.1em;text-transform:uppercase;border-radius:999px;flex:none;padding:5px 8px;font-size:8px;font-weight:900}.status-pill.success{background:var(--mint);color:var(--ink);border-color:#91a79b}.student-meta{flex-wrap:wrap;gap:8px 24px;margin-top:10px;display:flex}.student-meta span{color:var(--ink-soft);gap:7px;font-size:12px;display:flex}.student-meta b{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:9px}.student-action{justify-self:end;align-items:center;gap:15px;display:flex}.assign-button{background:var(--orange);width:155px;height:54px;color:var(--white);justify-content:space-between;align-items:center;padding:0 17px;display:flex}.assign-button:disabled{border:1px solid var(--line);color:var(--muted);cursor:not-allowed;background:#e5e8e4}.secondary-button{border:1px solid var(--ink);background:0 0;min-height:44px;padding:0 14px;font-size:11px}.existing-id span,.existing-id strong{text-align:right;display:block}.existing-id span{color:var(--muted);letter-spacing:.13em;font-size:8px;font-weight:900}.existing-id strong{font-family:var(--display);letter-spacing:.11em;margin-top:4px;font-size:27px}.empty-state,.idle-state{text-align:center;align-content:center;place-items:center;min-height:260px;display:grid}.empty-state>div{border:1px solid var(--line);width:72px;height:72px;color:var(--orange);font-family:var(--display);border-radius:50%;place-items:center;font-size:34px;display:grid}.empty-state h3{font-family:var(--display);margin:18px 0 5px;font-size:27px;font-weight:500}.empty-state p,.idle-state p{color:var(--muted);margin:0;font-size:12px;line-height:1.6}.idle-lines{gap:8px;margin-bottom:22px;display:flex}.idle-lines span{background:var(--line);width:42px;height:3px}.idle-lines span:nth-child(2){background:var(--orange)}.inline-error{background:#f8ecea;border:1px solid #d8aaa5;align-items:center;gap:12px;margin-top:20px;padding:15px 17px;display:flex}.inline-error strong{background:var(--danger);color:#fff;border-radius:50%;place-items:center;width:24px;height:24px;display:grid}.dashboard-footer{border-top:1px solid var(--line);color:var(--muted);letter-spacing:.12em;text-transform:uppercase;justify-content:space-between;padding:22px clamp(20px,4vw,64px);font-size:9px;font-weight:800;display:flex}.admin-shell{background:var(--paper);min-height:100vh}.admin-topbar{background:var(--ink);min-height:64px;color:var(--white);justify-content:space-between;align-items:center;padding:0 clamp(20px,4vw,64px);display:flex}.admin-back{min-height:44px;color:var(--white);letter-spacing:.1em;text-transform:uppercase;align-items:center;font-size:11px;font-weight:900;text-decoration:none;display:inline-flex}.admin-topbar-actions{align-items:center;gap:16px;display:flex}.admin-identity{text-align:right}.admin-identity span,.admin-identity strong{display:block}.admin-logout{min-height:44px;color:var(--white);cursor:pointer;letter-spacing:.08em;text-transform:uppercase;background:0 0;border:1px solid #ffffff3d;padding:0 14px;font-size:9px;font-weight:900}.admin-identity span{color:#ffffff80;letter-spacing:.14em;text-transform:uppercase;font-size:9px;font-weight:900}.admin-identity strong{font-family:var(--display);margin-top:3px;font-size:18px;font-weight:500}.admin-workspace{width:min(1240px,100% - 40px);margin:0 auto;padding:34px 0 64px}.admin-heading{display:block}.admin-heading h1{font-family:var(--display);letter-spacing:-.035em;margin:0;font-size:36px;font-weight:500;line-height:1}.admin-heading h1 em{color:var(--orange);font-weight:500}.admin-heading>p{border-left:2px solid var(--orange);color:var(--muted);margin:0;padding:16px 0 0 22px;font-size:13px;line-height:1.7}.admin-grid{grid-template-columns:minmax(320px,.72fr) minmax(520px,1.28fr);align-items:start;gap:28px;margin-top:22px;display:grid}.create-user-card,.users-list-panel{border:1px solid var(--line);background:var(--paper-light)}.create-user-card{box-shadow:none;padding:28px}.create-user-card h2,.users-list-heading h2{font-family:var(--display);letter-spacing:-.03em;margin:0;font-size:27px;font-weight:500}.create-user-form{gap:16px;margin-top:24px;display:grid}.create-user-form label{gap:7px;display:grid}.create-user-form input,.create-user-form select{border:1px solid var(--line);background:var(--white);width:100%;height:46px;color:var(--ink);border-radius:0;padding:0 12px}.create-user-form input:focus,.create-user-form select:focus{border-color:var(--ink);outline:2px solid var(--orange);outline-offset:1px}.create-user-form select:disabled{color:var(--muted);background:#e7eae6}.form-two-columns{grid-template-columns:1fr 1fr;gap:12px;display:grid}.admin-message{margin:0;padding:11px 13px;font-size:11px;font-weight:700}.admin-message.error{color:var(--danger);background:#f8ecea;border:1px solid #d8aaa5}.admin-message.success{background:var(--mint);color:var(--ink);border:1px solid #91a79b}.users-list-panel{overflow:hidden}.users-list-heading{border-bottom:1px solid var(--ink);background:var(--ink);min-height:72px;color:var(--white);justify-content:space-between;align-items:center;padding:14px 20px;display:flex}.users-list-heading .eyebrow{color:#ffffff80}.users-list-heading button{min-height:44px;color:var(--white);cursor:pointer;letter-spacing:.08em;text-transform:uppercase;background:0 0;border:1px solid #ffffff40;padding:9px 12px;font-size:9px;font-weight:900}.admin-loading{color:var(--muted);text-align:center;padding:42px}.users-list{display:grid}.user-row{border-bottom:1px solid var(--line);grid-template-columns:1fr auto;align-items:center;gap:14px;min-height:88px;padding:16px 20px;transition:background .18s,opacity .18s;display:grid}.user-row:last-child{border-bottom:0}.user-row.user-inactive{opacity:.52}.user-number{color:#929b96;font-family:var(--display);font-size:14px}.user-info{justify-content:space-between;align-items:center;gap:18px;display:flex}.user-info h3{font-family:var(--display);margin:0;font-size:20px;font-weight:500}.user-info code{color:var(--muted);margin-top:4px;font-size:10px;display:block}.user-badges{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.role-badge,.branch-badge{border:1px solid var(--line);letter-spacing:.08em;text-transform:uppercase;border-radius:999px;padding:5px 7px;font-size:8px;font-weight:900}.role-badge.admin{background:var(--acid);border-color:#a9b9b0}.role-badge.registrator{background:var(--mint);border-color:#91a79b}.role-badge.teacher{background:#efede6;border-color:#b8b3a5}.branch-badge{color:var(--muted)}.status-toggle{border:1px solid var(--line);min-width:65px;min-height:44px;color:var(--muted);cursor:pointer;letter-spacing:.06em;text-transform:uppercase;background:#e7eae6;border-radius:999px;font-size:9px;font-weight:900}.status-toggle.active{background:var(--mint);color:var(--ink);border-color:#91a79b}.status-toggle:disabled{cursor:not-allowed;opacity:.55}.grading-shell{--subject-accent:var(--acid);background:var(--paper);min-height:100vh}.grading-shell.subject-english{--subject-accent:#dce8e1}.grading-shell.subject-essay{--subject-accent:#ebe8df}.grading-topbar{background:var(--ink);min-height:64px;color:var(--white);justify-content:space-between;align-items:center;padding:0 clamp(20px,4vw,64px);display:flex}.grading-brand,.teacher-identity{align-items:center;display:flex}.grading-brand{gap:0}.grading-brand>div:last-child span,.grading-brand>div:last-child strong,.teacher-identity>span,.teacher-identity>strong{display:block}.grading-brand>div:last-child span{color:#ffffff7a;letter-spacing:.15em;text-transform:uppercase;margin-top:2px;font-size:8px;font-weight:900}.grading-brand>div:last-child strong{font-family:var(--display);font-size:18px;font-weight:600}.teacher-identity{text-align:right;gap:18px}.teacher-identity>span{background:var(--subject-accent);color:var(--ink);letter-spacing:.08em;text-transform:uppercase;padding:7px 10px;font-size:9px;font-weight:900}.teacher-identity>strong{font-family:var(--display);font-size:18px;font-weight:500}.teacher-identity button{width:72px;height:44px;color:var(--white);cursor:pointer;letter-spacing:.08em;text-transform:uppercase;background:0 0;border:1px solid #ffffff3d;font-size:9px;font-weight:900}.grading-workspace{width:min(1120px,100% - 40px);margin:0 auto;padding:34px 0 48px}.grading-simple-heading{justify-content:space-between;align-items:center;min-height:44px;display:flex}.grading-simple-heading h1{font-family:var(--display);letter-spacing:-.035em;margin:0;font-size:36px;font-weight:500}.grading-simple-heading span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:800}.grading-heading{grid-template-columns:1fr minmax(300px,.52fr);align-items:end;gap:clamp(38px,7vw,92px);display:grid}.grading-heading h1{font-family:var(--display);letter-spacing:-.06em;margin:0;font-size:clamp(58px,8vw,104px);font-weight:500;line-height:.8}.grading-heading h1 em{color:var(--orange);font-weight:500}.privacy-card{border:1px solid var(--line);background:var(--subject-accent);grid-template-columns:62px 1fr;align-items:center;gap:18px;min-height:146px;padding:24px;display:grid;box-shadow:0 16px 42px #17342e14}.privacy-card>span{border:2px solid var(--ink);width:62px;height:62px;font-family:var(--display);border-radius:50%;place-items:center;font-size:23px;font-weight:700;display:grid}.privacy-card strong{font-family:var(--display);font-size:21px;font-weight:600}.privacy-card p{margin:7px 0 0;font-size:11px;line-height:1.55}.grading-flow{border:1px solid var(--line);background:var(--paper-light);box-shadow:none;grid-template-columns:.92fr 1.08fr;margin-top:22px;display:grid}.id-search-card,.score-card{min-height:360px;padding:32px}.id-search-card{border-right:1px solid var(--ink);background:var(--ink);color:var(--white)}.grading-step{color:#ffffff80;letter-spacing:.16em;margin:0 0 34px;font-size:9px;font-weight:900}.score-card .grading-step{color:var(--muted)}.id-search-card h2{font-family:var(--display);letter-spacing:-.035em;margin:0;font-size:32px;font-weight:500;line-height:1}.id-search-card form{gap:15px;margin-top:34px;display:grid}.id-search-card label,.score-form label{letter-spacing:.13em;text-transform:uppercase;font-size:9px;font-weight:900}.exam-id-input{border-bottom:2px solid var(--subject-accent);grid-template-columns:auto 1fr;align-items:center;gap:12px;height:88px;display:grid}.exam-id-input>span{color:var(--subject-accent);font-family:var(--display);font-size:38px}.exam-id-input input{width:100%;min-width:0;color:var(--white);font-family:var(--display);letter-spacing:.13em;background:0 0;border:0;outline:0;font-size:clamp(52px,7vw,72px);line-height:1}.exam-id-input input::placeholder{color:#ffffff26}.grading-search-button{border:1px solid var(--subject-accent);background:var(--subject-accent);min-height:54px;color:var(--ink);cursor:pointer;justify-content:space-between;align-items:center;margin-top:15px;padding:0 18px;font-size:11px;font-weight:900;display:flex}.grading-search-button:disabled{color:#ffffff61;cursor:not-allowed;opacity:.6;background:0 0}.score-card{background:var(--paper-light);display:grid}.score-placeholder{max-width:340px;margin:auto 0}.score-placeholder>div{border:1px solid var(--line);width:62px;height:62px;color:var(--muted);font-family:var(--display);border-radius:50%;place-items:center;font-size:28px;display:grid}.score-placeholder h2{font-family:var(--display);margin:0;font-size:32px;font-weight:500}.score-placeholder p{color:var(--muted);margin:11px 0 0;font-size:12px;line-height:1.65}.score-form{align-content:center;display:grid}.single-score-grid,.essay-score-grid{display:grid}.essay-score-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.score-field{min-width:0}.score-field label{display:block}.essay-score-form .score-input-wrap input{font-size:64px}.essay-score-form .score-input-wrap span{font-size:17px}.verified-id{border:1px solid var(--ink);background:var(--subject-accent);grid-template-columns:1fr auto auto;align-items:center;gap:12px;margin-bottom:24px;padding:13px 15px;display:grid}.verified-id span{letter-spacing:.12em;font-size:8px;font-weight:900}.verified-id strong{font-family:var(--display);letter-spacing:.08em;font-size:25px}.verified-id i{border:1px solid var(--ink);border-radius:50%;place-items:center;width:24px;height:24px;font-size:11px;font-style:normal;display:grid}.score-input-wrap{border-bottom:2px solid var(--ink);align-items:end;min-height:104px;margin-top:7px;display:flex}.score-input-wrap input{width:100%;min-width:0;color:var(--ink);font-family:var(--display);letter-spacing:-.05em;background:0 0;border:0;outline:0;font-size:88px;line-height:.9}.score-input-wrap input::placeholder{color:#c9cfca}.score-input-wrap span{color:var(--muted);font-family:var(--display);white-space:nowrap;padding-bottom:10px;font-size:22px}.previous-score{min-height:18px;color:var(--muted);margin:11px 0 20px;font-size:10px}.score-save-button{width:100%}.grading-alert{border:1px solid;grid-template-columns:auto 1fr auto;align-items:center;gap:15px;margin-top:16px;padding:16px 18px;font-size:11px;display:grid}.grading-alert strong{letter-spacing:.1em;text-transform:uppercase;font-size:9px}.grading-alert.error{color:var(--danger);background:#f8ecea;border-color:#d8aaa5}.grading-alert.success{background:var(--mint);border-color:#91a79b}.grading-alert button{cursor:pointer;letter-spacing:.08em;text-transform:uppercase;background:0 0;border:1px solid;min-height:44px;padding:8px 11px;font-size:9px;font-weight:900}.grading-footer{color:var(--muted);letter-spacing:.13em;text-transform:uppercase;justify-content:space-between;padding:28px 0 0;font-size:8px;font-weight:900;display:flex}.modal-backdrop{-webkit-backdrop-filter:none;backdrop-filter:none;z-index:50;background:#071818c7;place-items:center;padding:22px;animation:none;display:grid;position:fixed;inset:0}.confirm-modal,.ticket-modal{border:1px solid var(--line);background:var(--paper-light);width:min(100%,580px);box-shadow:none;padding:clamp(30px,6vw,56px);animation:none;position:relative}.modal-close{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:50%;place-items:center;width:44px;height:44px;font-size:22px;display:grid;position:absolute;top:20px;right:20px}.modal-number{border:1px solid var(--ink);border-radius:50%;place-items:center;width:42px;height:42px;margin-bottom:28px;font-size:11px;font-weight:900;display:grid}.confirm-modal h2{font-family:var(--display);letter-spacing:-.04em;margin:0;padding-right:48px;font-size:clamp(38px,6vw,54px);font-weight:500}.confirm-student{border:1px solid var(--line);background:var(--white);margin-top:30px;padding:22px}.confirm-student>strong{font-family:var(--display);font-size:25px;font-weight:500;display:block}.confirm-student>div{color:var(--muted);flex-wrap:wrap;gap:7px 18px;margin-top:12px;font-size:11px;display:flex}.confirm-warning{border-left:2px solid var(--orange);color:var(--muted);margin:20px 0 0;padding-left:15px;font-size:12px;line-height:1.6}.modal-actions{justify-content:flex-end;gap:10px;margin-top:30px;display:flex}.ticket-modal{text-align:center;overflow:hidden}.ticket-modal:before,.ticket-modal:after{content:none}.ticket-modal:before{left:-19px}.ticket-modal:after{right:-19px}.ticket-brand{color:var(--ink);justify-content:center;align-items:center;gap:13px;display:flex}.ticket-brand .brand-mark{border-color:var(--ink);width:39px;height:39px;color:var(--ink)}.ticket-brand .brand-mark:after{border-color:#102a2a40}.ticket-brand span{letter-spacing:.18em;font-size:10px;font-weight:900}.ticket-label{color:var(--orange);letter-spacing:.18em;margin:10px 0;font-size:10px;font-weight:900}.ticket-id{font-family:var(--display);letter-spacing:.08em;margin:0;font-size:clamp(88px,17vw,138px);font-weight:500;line-height:.95}.ticket-student-name{font-family:var(--display);margin-top:25px;font-size:25px}.ticket-data{grid-template-columns:repeat(3,1fr);margin-top:28px;display:grid}.ticket-data span{border-right:1px solid var(--line);gap:5px;padding:12px;font-size:11px;display:grid}.ticket-data span:last-child{border-right:0}.ticket-data b{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;font-size:8px}.ticket-cut{color:var(--muted);letter-spacing:.18em;align-items:center;gap:12px;margin:34px -56px 0;font-size:8px;font-weight:900;display:flex}.ticket-cut i{background:repeating-linear-gradient(90deg, var(--line) 0 6px, transparent 6px 12px);flex:1;height:1px}.ticket-actions{justify-content:center}.done-button{background:var(--ink)}@keyframes card-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes row-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes modal-in{0%{opacity:0;transform:translateY(18px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes pulse{0%{opacity:.35;transform:scale(.8)}to{opacity:1;transform:scale(1.2)}}@media (max-width:900px){.login-shell{grid-template-columns:1fr}.login-brand-panel{min-height:360px;padding:40px}.brand-mark-large{margin-bottom:45px}.login-brand-panel h1{font-size:78px}.login-card-wrap{padding:24px}.dashboard-header{grid-template-columns:1fr auto}.header-exam-meta{display:none}.workspace-heading{display:block}.stats-grid{grid-template-columns:repeat(2,1fr)}.stat-card:nth-child(2){border-right:0}.stat-card:nth-child(-n+2){border-bottom:1px solid var(--ink)}.student-card{grid-template-columns:1fr auto}.student-action{grid-column:auto;justify-self:end}.admin-heading{display:block}.admin-grid,.grading-heading{grid-template-columns:1fr}.privacy-card{max-width:560px}}@media (max-width:620px){.login-card{padding:28px}.login-card h1{font-size:34px}.dashboard-header{min-height:64px;padding:0 16px}.header-brand .brand-mark{width:38px;height:38px}.header-brand p{display:none}.header-brand strong{font-size:17px}.registrar-menu>div:nth-child(2){display:none}.staff-link{padding:8px;font-size:0}.staff-link:after{content:"ADM";font-size:8px}.workspace{width:min(100% - 28px,1180px);padding-top:24px}.workspace-heading h1{font-size:30px}.search-panel{box-shadow:none;padding:16px}.search-input-wrap{grid-template-columns:24px 1fr auto;gap:8px}.search-input-wrap svg{width:22px}.search-input-wrap input{font-size:25px}.search-mode-row kbd{display:none}.search-mode-row{align-items:flex-start;gap:10px}.search-toolbar{flex-direction:column;align-items:flex-end}.branch-filter>span{display:none}.branch-filter select{max-width:145px}.stats-grid{margin-top:24px}.stat-card{min-height:126px;padding:18px}.stat-card strong{font-size:42px}.results-section{margin-top:28px}.results-heading{align-items:flex-start;gap:12px}.results-list-toolbar{flex-direction:column;align-items:stretch}.status-filter{width:100%;display:flex}.status-filter button{flex:1;min-width:0;padding:0 7px;font-size:8px}.visible-count{align-self:flex-end}.student-card{grid-template-columns:1fr;gap:13px;padding:16px 0 20px}.student-index{display:none}.student-action{grid-column:1;justify-content:space-between;width:100%}.assign-button{width:100%}.load-more-row{flex-direction:column;align-items:stretch}.load-more-row button{width:100%}.student-name-row{flex-direction:column;align-items:flex-start}.modal-actions{flex-direction:column-reverse}.modal-actions button{width:100%}.ticket-actions{flex-direction:column}.ticket-data{grid-template-columns:1fr}.ticket-data span{border-right:0;border-bottom:1px solid var(--line)}.ticket-cut{margin-left:-30px;margin-right:-30px}.ticket-modal:before,.ticket-modal:after{top:74%}.dashboard-footer{flex-direction:column;gap:15px}.admin-workspace{width:min(100% - 28px,1240px)}.admin-topbar{padding:0 14px}.admin-topbar-actions{gap:8px}.admin-identity strong{text-overflow:ellipsis;white-space:nowrap;max-width:105px;overflow:hidden}.admin-logout{width:48px;padding:0;font-size:0}.admin-logout:after{content:"↗";font-size:16px}.admin-heading h1{font-size:30px}.form-two-columns{grid-template-columns:1fr}.user-row{grid-template-columns:1fr auto}.user-number{display:none}.user-info{flex-direction:column;align-items:flex-start}.user-badges{justify-content:flex-start}.grading-topbar{min-height:64px;padding:0 16px}.grading-brand>div:last-child{display:block}.teacher-identity{gap:8px}.teacher-identity>strong{display:none}.teacher-identity>span{text-align:center;max-width:150px}.teacher-identity button{width:56px}.grading-workspace{width:min(100% - 28px,1120px);padding-top:24px}.grading-simple-heading{flex-direction:column;align-items:flex-start;gap:6px}.grading-simple-heading h1{font-size:30px}.privacy-card{grid-template-columns:48px 1fr;padding:18px}.privacy-card>span{width:48px;height:48px;font-size:18px}.grading-flow{grid-template-columns:1fr}.id-search-card{border-right:0;border-bottom:1px solid var(--ink);min-height:auto}.score-card{min-height:390px}.essay-score-grid{grid-template-columns:1fr;gap:22px}.essay-score-form .score-input-wrap{min-height:82px}.exam-id-input input{font-size:54px}.grading-alert{grid-template-columns:1fr}.grading-alert button{width:100%}.grading-footer{flex-direction:column;gap:13px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media print{body *{visibility:hidden!important}.ticket-modal,.ticket-modal *{visibility:visible!important}.ticket-modal{width:100%;box-shadow:none;position:fixed;inset:0}.ticket-actions,.ticket-modal .modal-close{display:none!important}}:root{--ink:#303a31;--ink-soft:#515c51;--paper:#f4f3ee;--paper-light:#ffffffeb;--line:#d9ddd5;--muted:#70796f;--acid:#e4e9df;--orange:#667660;--mint:#edf1e8;--white:#fff;--danger:#a24740;--display:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Helvetica Neue", sans-serif;--body:-apple-system, BlinkMacSystemFont, "SF Pro Text", "Helvetica Neue", sans-serif;--olive-950:#263028;--olive-900:#303a31;--olive-800:#3c493d;--olive-700:#52614f;--olive-500:#778473;--olive-100:#e8ece4;--warm-white:#fbfaf7;--surface:#ffffffe0;--surface-solid:#fff;--hairline:#303a3121;--shadow-sm:0 1px 2px #2630280a, 0 8px 24px #2630280d;--shadow-md:0 20px 55px #2630281c, 0 2px 8px #2630280d;--ease-premium:cubic-bezier(.22, 1, .36, 1)}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:var(--paper)}body{background:radial-gradient(circle at 12% -12%, #77847324, transparent 32rem), radial-gradient(circle at 92% 8%, #e8ece4b8, transparent 28rem), var(--paper);color:var(--olive-950);font-family:var(--body);letter-spacing:-.01em}button,input,select,a{-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible,[tabindex="-1"]:focus-visible{outline-offset:3px;outline:3px solid #6676606b}.skip-link{background:var(--olive-900);color:#fff;box-shadow:var(--shadow-md);border:1px solid #fff3;border-radius:12px}.primary-button,.secondary-button,.ghost-button,.assign-button{letter-spacing:-.005em;transition:transform .18s var(--ease-premium), box-shadow .18s var(--ease-premium), background .18s ease, border-color .18s ease;border-radius:13px;font-size:13px;font-weight:650}.primary-button,.assign-button{background:var(--olive-900);box-shadow:inset 0 1px 1px #ffffff26,0 8px 18px #26302824}.primary-button:hover:not(:disabled),.assign-button:hover:not(:disabled){background:var(--olive-800);transform:translateY(-1px);box-shadow:0 12px 26px #26302833}.ghost-button,.secondary-button{border-color:var(--hairline);background:#ffffffb8;box-shadow:0 1px 1px #26302808}.login-shell{background:radial-gradient(circle at 18% 0,#54645038,#0000 30rem),linear-gradient(145deg,#ecefe8 0%,#f8f7f3 50%,#efeee8 100%);position:relative;overflow:hidden}.login-shell:before,.login-shell:after{content:"";pointer-events:none;border:1px solid #303a3114;border-radius:50%;position:fixed}.login-shell:before{width:520px;height:520px;top:-300px;left:-260px}.login-shell:after{width:620px;height:620px;bottom:-390px;right:-380px}.login-card-wrap{z-index:1;padding:28px;position:relative}.login-card{width:min(100%,438px);box-shadow:var(--shadow-md);-webkit-backdrop-filter:blur(28px)saturate(1.08);background:#ffffffc7;border:1px solid #ffffffbd;border-radius:28px;padding:42px}.login-brand-inline{border-color:var(--hairline);padding-bottom:22px}.login-brand-inline strong{color:var(--olive-900);letter-spacing:-.025em;font-size:19px;font-weight:650}.login-brand-inline span{border:1px solid var(--hairline);color:var(--olive-700);letter-spacing:.08em;background:#e8ece4b8;border-radius:999px;padding:6px 9px;font-size:9px}.login-card-heading{margin-top:36px}.login-card h1{color:var(--olive-950);letter-spacing:-.045em;font-size:38px;font-weight:620}.login-form{gap:18px;margin-top:34px}.login-form label{gap:8px}.login-form label>span{color:var(--olive-700);letter-spacing:.02em;text-transform:none;font-size:11px;font-weight:650}.login-form input{border:1px solid var(--hairline);height:54px;color:var(--olive-950);background:#fffc;border-radius:13px;padding:0 15px;font-size:17px;transition:border-color .16s,box-shadow .16s,background .16s;box-shadow:inset 0 1px 1px #26302806}.login-form input:focus{background:#fff;border-color:#52614f9e;outline:0;box-shadow:0 0 0 4px #6676601f}.login-button{min-height:54px;margin-top:8px;padding-inline:18px}.dashboard-header,.admin-topbar,.grading-topbar{-webkit-backdrop-filter:blur(20px)saturate(1.1);z-index:30;background:#263028f0;border-bottom:1px solid #ffffff1a;min-height:68px;position:sticky;top:0;box-shadow:0 8px 28px #2630281a}.header-brand strong,.grading-brand strong{letter-spacing:-.02em;font-size:17px;font-weight:620}.header-brand p,.grading-brand span,.registrar-menu span,.teacher-identity>span,.admin-identity span{color:#ffffff94;letter-spacing:.08em;font-weight:600}.registrar-avatar{width:38px;height:38px;color:var(--olive-900);background:#ffffffeb;border:1px solid #fff3;font-size:17px;font-weight:650;box-shadow:0 5px 16px #00000021}.registrar-menu button,.teacher-identity button,.admin-logout,.staff-link,.admin-back{color:#ffffffeb;letter-spacing:.02em;text-transform:none;background:#ffffff0e;border-color:#ffffff2b;border-radius:12px;font-weight:600;transition:background .16s,border-color .16s}.registrar-menu button:hover,.teacher-identity button:hover,.admin-logout:hover,.staff-link:hover,.admin-back:hover{color:#fff;background:#ffffff1f;border-color:#ffffff4d}.dashboard-shell,.admin-shell,.grading-shell{background:0 0}.workspace,.admin-workspace,.grading-workspace{padding-top:38px}.workspace-heading h1,.admin-heading h1,.grading-simple-heading h1{color:var(--olive-950);letter-spacing:-.045em;font-size:38px;font-weight:620}.search-panel{background:var(--surface);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(18px);border:1px solid #ffffffd6;border-radius:22px;margin-top:24px;padding:21px 22px}.search-mode-row{color:var(--olive-700);letter-spacing:.02em;text-transform:none;margin-bottom:12px;font-size:11px;font-weight:650}.locked-branch,.branch-filter select{border:1px solid var(--hairline);background:var(--olive-100);min-height:36px;color:var(--olive-800);letter-spacing:0;text-transform:none;border-radius:999px;font-size:11px;font-weight:620}.locked-branch{align-items:center;padding:0 12px;display:inline-flex}.search-input-wrap{border:1px solid var(--hairline);background:#fafaf7db;border-radius:16px;min-height:64px;padding:0 12px;transition:border-color .16s,background .16s,box-shadow .16s}.search-input-wrap:focus-within{background:#fff;border-color:#52614f7a;box-shadow:0 0 0 4px #6676601a}.search-input-wrap svg{width:25px;stroke:var(--olive-700);stroke-width:1.8px}.search-input-wrap input{min-height:58px;color:var(--olive-950);font-family:var(--body);letter-spacing:-.035em;font-size:clamp(22px,2.3vw,29px);font-weight:480}.clear-search{background:var(--olive-100);color:var(--olive-700);border-color:#0000;font-size:20px}.stats-grid{border:0;gap:12px;margin-top:18px}.stat-card{background:var(--surface);min-height:128px;box-shadow:var(--shadow-sm);border:1px solid #ffffffdb;border-radius:18px;padding:20px}.stat-card:last-child{border-right:1px solid #ffffffdb}.dark-stat{border-color:var(--olive-900);background:var(--olive-900)}.accent-stat{background:var(--olive-100)}.stat-card>span,.stat-card small{letter-spacing:.04em;font-size:10px;font-weight:620}.stat-card strong{letter-spacing:-.04em;font-size:40px;font-weight:560}.results-section{margin-top:30px}.results-heading h2{letter-spacing:-.035em;font-size:25px;font-weight:560}.results-list-toolbar{border-bottom:0;min-height:58px;padding:7px 0 12px}.status-filter{border:1px solid var(--hairline);background:#e5e9e1c7;border-radius:13px;padding:4px;box-shadow:inset 0 1px 2px #26302808}.status-filter button{min-height:44px;color:var(--olive-700);letter-spacing:0;text-transform:none;border:0;border-radius:9px;padding:0 15px;font-size:11px;font-weight:620}.status-filter button.active{color:var(--olive-950);background:#fff;box-shadow:0 1px 2px #26302814,0 4px 12px #2630280f}.visible-count,.load-more-row>span{color:var(--muted);letter-spacing:.02em;text-transform:none;font-size:10px;font-weight:600}.student-list{background:var(--surface);box-shadow:var(--shadow-sm);border:1px solid #ffffffd9;border-radius:22px;overflow:hidden}.student-card{border-color:var(--hairline);background:0 0;min-height:108px;padding:18px 22px;transition:background .16s}.student-card:hover{background:#e8ece485}.student-name-row h3{color:var(--olive-950);letter-spacing:-.03em;font-size:clamp(19px,2vw,23px);font-weight:580}.student-meta{gap:8px 20px}.student-meta span{color:var(--olive-700);font-size:12px}.student-meta b{color:var(--muted);letter-spacing:.03em;font-size:9px;font-weight:650}.status-pill,.role-badge,.branch-badge{border-color:var(--hairline);background:var(--olive-100);color:var(--olive-700);letter-spacing:.02em;text-transform:none;font-size:9px;font-weight:650}.assign-button{width:150px;height:50px;padding:0 16px}.load-more-row{border-top-color:var(--hairline);min-height:76px;padding:12px 20px}.load-more-row button{background:var(--olive-900);letter-spacing:0;text-transform:none;border:0;border-radius:12px;min-height:48px;font-size:11px;font-weight:620}.inline-error,.demo-banner,.readonly-banner{box-shadow:var(--shadow-sm);border-radius:14px}.admin-grid{gap:18px}.create-user-card,.users-list-panel{background:var(--surface);box-shadow:var(--shadow-sm);border:1px solid #ffffffd9;border-radius:22px;overflow:hidden}.create-user-card{padding:26px}.create-user-card h2,.users-list-heading h2{letter-spacing:-.035em;font-size:24px;font-weight:590}.create-user-form label>span{color:var(--olive-700);letter-spacing:.01em;text-transform:none;font-size:11px;font-weight:620}.create-user-form input,.create-user-form select{border-color:var(--hairline);background:#ffffffdb;border-radius:12px;height:48px}.create-user-form input:focus,.create-user-form select:focus{border-color:#52614f8c;outline:0;box-shadow:0 0 0 4px #6676601a}.users-list-heading{background:var(--olive-900);border-bottom:1px solid #ffffff1a;min-height:72px}.users-list-heading button{letter-spacing:0;text-transform:none;border-radius:10px;font-weight:600}.user-row{border-color:var(--hairline)}.user-row:hover{background:#e8ece480}.user-info h3{letter-spacing:-.02em;font-size:18px;font-weight:580}.status-toggle{border-color:var(--hairline);letter-spacing:0;text-transform:none;background:#eef0eb;font-size:10px;font-weight:620}.status-toggle.active{background:var(--olive-100);border-color:#52614f33}.grading-shell,.grading-shell.subject-english,.grading-shell.subject-essay{--subject-accent:#dfe6da}.grading-flow{box-shadow:none;background:0 0;border:0;gap:16px;margin-top:24px}.id-search-card,.score-card{min-height:390px;box-shadow:var(--shadow-sm);border:1px solid #ffffffd6;border-radius:24px;padding:32px}.id-search-card{background:radial-gradient(circle at 92% 8%, #ffffff14, transparent 14rem), var(--olive-900);border-color:#ffffff14}.score-card{background:var(--surface)}.id-search-card h2,.score-placeholder h2{letter-spacing:-.035em;font-size:29px;font-weight:590}.id-search-card label,.score-form label{letter-spacing:.04em;font-size:10px;font-weight:620}.exam-id-input{border-bottom-color:#fff6}.exam-id-input>span{color:#ffffff94}.exam-id-input input,.score-input-wrap input,.ticket-id,.existing-id strong,.verified-id strong{font-variant-numeric:tabular-nums;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,monospace}.exam-id-input input{font-size:clamp(49px,6vw,66px);font-weight:520}.grading-search-button{color:var(--olive-900);background:#f3f5ef;border:0;border-radius:13px;font-size:12px;font-weight:650}.verified-id{background:var(--olive-100);border-color:#52614f1f;border-radius:14px}.score-input-wrap{border-bottom-color:#303a3161}.score-input-wrap input{font-weight:520}.grading-alert{background:var(--surface);box-shadow:var(--shadow-sm);border-radius:14px}.modal-backdrop{-webkit-backdrop-filter:blur(16px)saturate(.9);background:#1b221c94;animation:.2s both fade-in}.confirm-modal,.ticket-modal{animation:modal-in .32s var(--ease-premium) both;background:#fffffff0;border:1px solid #ffffffbf;border-radius:28px;box-shadow:0 30px 90px #12181347}.modal-close{border-color:var(--hairline);background:var(--olive-100);color:var(--olive-700)}.confirm-modal h2{letter-spacing:-.05em;font-size:clamp(34px,5vw,48px);font-weight:610}.confirm-student{border-color:var(--hairline);background:var(--warm-white);border-radius:18px}.confirm-student>strong,.ticket-student-name{letter-spacing:-.025em;font-weight:590}.confirm-warning{background:var(--olive-100);color:var(--olive-700);border:0;border-radius:12px;padding:14px 15px}.ticket-modal{background:radial-gradient(circle at 50% 0,#e8ece4e6,#0000 18rem),#fffffff7}.ticket-label{color:var(--olive-700)}.ticket-id{color:var(--olive-950);letter-spacing:.06em;font-size:clamp(76px,15vw,120px);font-weight:520}@media (max-width:900px){.stats-grid{gap:10px}.stat-card:nth-child(-n+2){border-bottom-color:#ffffffdb}}@media (max-width:620px){body{background:radial-gradient(circle at 20% -5%, #7784731f, transparent 22rem), var(--paper)}.login-card-wrap{padding:16px}.login-card{border-radius:22px;padding:28px 22px}.login-card h1{font-size:32px}.dashboard-header,.admin-topbar,.grading-topbar{min-height:64px}.workspace,.admin-workspace,.grading-workspace{width:min(100% - 24px,1180px);padding-top:24px}.workspace-heading h1,.admin-heading h1,.grading-simple-heading h1{font-size:30px}.search-panel{box-shadow:var(--shadow-sm);border-radius:18px;padding:14px}.search-input-wrap{border-radius:14px;min-height:58px}.search-input-wrap input{min-height:54px;font-size:20px}.status-filter{border-radius:12px}.status-filter button{min-height:44px;padding:0 7px;font-size:10px}.student-list{border-radius:18px}.student-card{padding:18px}.student-action{padding-top:2px}.assign-button{height:50px}.create-user-card,.users-list-panel,.id-search-card,.score-card{border-radius:18px}.id-search-card,.score-card{padding:24px 20px}.id-search-card{border-bottom-color:#ffffff14}.exam-id-input input{font-size:48px}.confirm-modal,.ticket-modal{border-radius:22px}}@media (prefers-reduced-motion:reduce){.modal-backdrop,.confirm-modal,.ticket-modal{animation:none}}@media print{body{background:#fff}.ticket-modal{background:#fff;border:0;border-radius:0}}
