:root{--ink:#18263b;--muted:#67768b;--line:#e3e9f1;--paper:#fff;--blue:#1a56db;--blue-soft:#eef4ff;--surface:#f5f7fb;--radius:16px}.workspace,.public-workspace{font-family:'Plus Jakarta Sans',system-ui,sans-serif;color:var(--ink);background:var(--surface);font-size:14px;line-height:1.55;margin:0}.workspace *,.public-workspace *{box-sizing:border-box}a,button,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a,input,select,textarea:focus-visible{outline-offset:3px}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #93b4ff}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}img{max-width:100%}.skip-link{position:fixed;top:-80px;left:20px;z-index:100;background:white;padding:12px}.skip-link:focus{top:10px}.workspace-sidebar{width:248px;position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column;background:#fff;border-right:1px solid var(--line);z-index:45}.sidebar-brand{height:80px;display:flex;align-items:center;justify-content:space-between;padding:0 25px;flex-shrink:0}.sidebar-brand>a{display:flex;align-items:center;gap:10px;font-size:20px;font-weight:800;letter-spacing:-.8px;color:var(--ink)}.sidebar-brand img{object-fit:contain}.brand-dot{color:var(--blue)}.school-identity{margin:5px 17px 22px;padding:13px 11px;border:1px solid var(--line);border-radius:12px;background:#fafbfd;display:flex;gap:10px;align-items:center;min-width:0}.identity-icon{width:32px;height:34px;display:grid;place-items:center;color:var(--blue);flex-shrink:0}.school-identity strong{display:block;font-size:14px;line-height:1.5;overflow-wrap:anywhere}.school-identity span:not(.identity-icon){display:block;font-size:12px;color:var(--muted);margin-top:3px}.nav-caption{font-size:11px;letter-spacing:1.5px;color:#7a8798;padding:0 29px;margin:0 0 12px;font-weight:700}.workspace-menu{overflow-y:auto;flex:1;padding:0 14px 20px;scrollbar-width:thin}.workspace-menu>a{display:flex;align-items:center;gap:13px;padding:12px 15px;margin:3px 0;color:#607086;border-radius:9px;font-weight:600;font-size:14px;transition:background .15s,color .15s}.workspace-menu>a i{font-size:15px;width:18px;text-align:center}.workspace-menu>a:hover{background:#f5f7fb;color:var(--ink)}.workspace-menu>a[aria-current=page]{background:var(--blue-soft);color:var(--blue);font-weight:750;box-shadow:inset 3px 0 var(--blue)}.sidebar-footer{border-top:1px solid var(--line);padding:18px 29px;font-size:13px;flex-shrink:0}.sidebar-footer>a{color:#52637b;display:flex;align-items:center;gap:10px}.sidebar-footer p{font-size:12px;color:#8490a0;margin:12px 0 0}.workspace-body{margin-left:248px;min-width:0;min-height:100dvh;display:flex;flex-direction:column}.workspace-topbar{min-height:80px;border-bottom:1px solid var(--line);background:#fff;display:flex;align-items:center;justify-content:space-between;padding:16px 36px;gap:20px}.topbar-left{display:flex;align-items:center;gap:13px;min-width:0;font-size:13px;color:var(--muted)}.topbar-left strong{font-weight:600;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-divider{color:#c1cbd7}.topbar-user{display:flex;align-items:center;gap:13px;flex-shrink:0}.user-name{text-align:right;max-width:180px}.user-name strong{display:block;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-name span{color:var(--muted);font-size:12px}.user-avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#edf2fb;color:#36517a;font-weight:750}.icon-button{width:36px;height:36px;display:inline-grid;place-items:center;border:1px solid var(--line);border-radius:10px;background:#fff;color:#68788d;flex-shrink:0}.icon-button:hover{background:var(--blue-soft);color:var(--blue)}.nav-toggle,.nav-close{display:none}.nav-overlay{position:fixed;inset:0;background:rgba(20,35,56,.35);z-index:40;border:0}.nav-overlay[hidden]{display:none}.workspace-content{width:100%;max-width:1530px;margin:0 auto;padding:32px 36px 45px;min-width:0;flex:1}.workspace-content:focus{outline:none}.page-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:0 0 25px}.eyebrow{font-size:11px;font-weight:750;letter-spacing:1.5px;color:#7b899b;text-transform:uppercase;margin:0 0 7px;overflow-wrap:anywhere}.page-intro h1{font-size:27px;line-height:1.3;letter-spacing:-.9px;font-weight:750;margin:0}.today-label{display:flex;gap:8px;align-items:center;font-size:13px;color:var(--muted);white-space:nowrap}.workspace-footer{padding:16px 36px;border-top:1px solid var(--line);display:flex;justify-content:space-between;font-size:12px;color:#8390a0;gap:10px}.intro-line{display:flex;justify-content:space-between;align-items:center;gap:18px;margin:0 0 24px}.intro-line p{font-size:14px;color:var(--muted);margin:0}.intro-line strong{color:var(--ink);font-weight:700}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-bottom:25px}.metric-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.metric{padding:20px 21px;background:white;border:1px solid var(--line);border-radius:var(--radius);min-width:0}.metric-label{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:13px;color:var(--muted);margin-bottom:16px;font-weight:600}.metric-label i{color:#8ea0b8;font-size:15px}.metric-number{font-size:31px;font-weight:750;letter-spacing:-1.1px;line-height:1.2;margin-bottom:9px}.metric-note{font-size:12px;color:#8290a2}.metric-accent .metric-number{color:var(--blue)}.metric-alert .metric-number{color:#b75b35}.panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px;margin:0 0 24px;min-width:0}.panel h2{font-size:16px;font-weight:750;margin:0 0 8px;letter-spacing:-.15px}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.panel-head h2{margin:0 0 4px}.panel-head p,.muted{font-size:13px;line-height:1.75;color:var(--muted)}.panel-head p{margin:0}.text-link{color:var(--blue);font-weight:700;font-size:13px;white-space:nowrap}.text-link:hover{text-decoration:underline}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid var(--line);border-radius:10px;min-height:44px;padding:10px 16px;font-size:13px;font-weight:700;background:white;color:#42536c;line-height:1.4;transition:background .15s,border-color .15s}.button-primary{color:#fff;background:var(--blue);border-color:var(--blue)}.button-primary:hover{background:#1448bd}.button:hover{border-color:#a8bedf}.button.danger{color:#b34433;background:#fff7f5;border-color:#f3d8d1}.actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:20px}.table-wrap{width:100%;overflow-x:auto;min-width:0}.workspace-content .overflow-x-auto{max-width:100%;min-width:0}.data-table{width:100%;border-collapse:collapse;text-align:left;min-width:580px}.data-table th{padding:12px 13px;background:#f8fafd;border-block:1px solid var(--line);font-size:11px;letter-spacing:.6px;text-transform:uppercase;color:#8190a4;font-weight:700;white-space:nowrap}.data-table td{padding:16px 13px;border-bottom:1px solid #eef1f6;font-size:13px;color:#55677d;vertical-align:middle}.data-table tr:last-child td{border-bottom:0}.data-table td strong{color:var(--ink);font-weight:700}.data-table small{font-size:12px;display:block;color:#8a96a6;margin-top:3px}.data-table .align-right{text-align:right}.table-foot{display:flex;justify-content:space-between;font-size:12px;color:#8a96a6;margin-top:18px;padding-top:15px;border-top:1px solid #edf0f5}.badge,.status-badge{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border-radius:6px;font-size:11px;white-space:nowrap;background:#f0f3f7;color:#687b92;font-weight:650}.status-badge:before{content:'';width:5px;height:5px;border-radius:50%;background:currentColor}.status-trial,.status-coding{background:#edf3ff;color:#396dd5}.status-active,.status-finished{background:#edf7f1;color:#448361}.status-pending{background:#fff6e9;color:#ab7c32}.status-expired,.status-suspended,.status-blocked{background:#fff0eb;color:#b46e50}.dashboard-columns{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(240px,1fr);gap:22px;align-items:start}.quick-links{display:grid;gap:1px}.quick-link{display:flex;align-items:center;gap:12px;padding:16px 0;border-bottom:1px solid #eef1f6;min-width:0}.quick-link:last-child{border:0}.quick-link>i{font-size:14px;color:#617d9d;background:#f3f6fa;width:36px;height:36px;border-radius:10px;display:grid;place-items:center;flex-shrink:0}.quick-link strong{font-size:13px;display:block}.quick-link span{font-size:12px;color:var(--muted);display:block;margin-top:3px}.quick-link .arrow{margin-left:auto;background:transparent;width:18px;color:#9caabc}.empty-state{padding:38px 18px;text-align:center;max-width:460px;margin:auto}.empty-state>i{font-size:25px;color:#abb9ca;margin-bottom:16px}.empty-state h3{font-size:14px;font-weight:700;margin:0 0 6px}.empty-state p{font-size:13px;line-height:1.9;color:var(--muted);margin:0}.empty-state .button{margin-top:18px}.service-banner{display:flex;justify-content:space-between;gap:18px;align-items:center;border:1px solid #dbe6fa;border-left:3px solid #648ada;border-radius:10px;padding:15px 18px;margin-bottom:22px;background:#f1f6ff}.service-banner strong{font-size:13px;color:#3b5b91}.service-banner p{font-size:12px;color:#7185a5;margin:4px 0 0}.service-banner.is-expired{background:#fff7ee;border-color:#efd9bf}.service-banner.is-expired strong{color:#9c6935}.service-banner.is-expired p{color:#9d825f}.alert{border-radius:10px;padding:14px 18px;font-size:14px;margin:0 0 20px;overflow-wrap:anywhere}.error{background:#fff0ed;color:#a34839}.success{background:#edf8f1;color:#39805a}.schedule-list{display:grid;gap:0}.schedule-item{padding:16px 0;display:flex;gap:16px;align-items:center;border-bottom:1px solid #edf0f5}.schedule-item:last-child{border:0}.date-tile{min-width:48px;padding:8px;border:1px solid var(--line);border-radius:10px;text-align:center;flex-shrink:0;background:#fbfcfe}.date-tile strong{display:block;font-size:18px;line-height:1.25;font-weight:700}.date-tile span{font-size:11px;color:var(--muted);text-transform:uppercase}.schedule-item .schedule-main{flex:1;min-width:0}.schedule-item h3{font-size:14px;font-weight:700;overflow-wrap:anywhere;margin:0 0 5px}.schedule-item p{font-size:12px;color:var(--muted);margin:0}.exam-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.exam-card{display:flex;flex-direction:column;padding:23px;border:1px solid var(--line);border-radius:var(--radius);background:white;min-width:0}.exam-card-header{display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:12px;color:var(--muted);margin-bottom:20px}.exam-card h3{font-size:17px;letter-spacing:-.3px;line-height:1.5;font-weight:750;margin:0 0 8px;overflow-wrap:anywhere}.exam-meta{display:flex;flex-wrap:wrap;gap:14px;font-size:12px;color:var(--muted);margin:0 0 22px}.exam-card .button{width:100%;margin-top:16px}.exam-card .token-box{margin-top:auto;border:1px dashed #d6e1f0;border-radius:9px;padding:12px;background:#fafcfe}.token-caption{font-size:12px;color:var(--muted)}.active-token{align-items:center;justify-content:space-between;gap:10px}.active-token:not(.hidden){display:flex}.token-code{font-size:20px;letter-spacing:2px;font-weight:700}.identity-lines{display:grid;gap:14px;margin-top:18px}.identity-lines>div{display:flex;justify-content:space-between;gap:14px;font-size:13px}.identity-lines dt{color:var(--muted)}.identity-lines dd{text-align:right;font-weight:650;overflow-wrap:anywhere}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.form-grid label,.field{display:block;font-size:13px;font-weight:700;min-width:0}.form-grid input:not([type=checkbox]),.form-grid select,.form-grid textarea,.field input{display:block;width:100%;min-width:0;border:1px solid #dbe3ed;border-radius:9px;background:#fff;padding:11px 13px;margin-top:7px;font-size:14px;color:var(--ink);font-weight:500;min-height:42px}.form-grid input::placeholder,.field input::placeholder{color:#a1aebe}.form-grid .wide{grid-column:1/-1}.checks{display:flex;gap:17px;flex-wrap:wrap;padding:12px 0}.checks input{margin-right:7px}.inline-status{display:flex;gap:8px;flex-wrap:wrap}.inline-status input{min-width:100px;max-width:180px;border:1px solid var(--line);border-radius:8px;padding:8px;font-size:13px}.inline-status button{padding:8px 11px;border:1px solid var(--line);border-radius:8px;color:#637b9a;font-size:12px}.school-url{font-size:12px;color:var(--blue);overflow-wrap:anywhere}.readiness{list-style:none;padding:0;margin:12px 0 0}.readiness li{display:flex;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px solid #edf0f5;font-size:13px}.readiness li:last-child{border:0}.readiness .ready{color:#418567}.readiness .not-ready{color:#b27b46}.public-topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:23px 5vw;background:#fff;border-bottom:1px solid var(--line)}.public-brand{display:flex;gap:10px;align-items:center;font-size:20px;font-weight:800;letter-spacing:-.7px}.public-brand img{width:33px;height:33px;object-fit:contain}.public-topbar>a:last-child{font-size:13px;color:var(--muted)}.onboarding-wrap{max-width:1100px;margin:0 auto;padding:48px 24px 65px;display:grid;grid-template-columns:280px minmax(0,1fr);gap:50px}.onboarding-intro{position:sticky;top:40px;align-self:start}.onboarding-intro h1{font-size:32px;font-weight:750;letter-spacing:-1.3px;line-height:1.35;margin:10px 0 18px}.onboarding-intro p{font-size:14px;line-height:1.9;color:var(--muted)}.onboarding-steps{list-style:none;padding:20px 0;margin:0;display:grid;gap:19px}.onboarding-steps li{display:flex;gap:13px;font-size:13px;color:#5d708a;align-items:center}.step-number{width:27px;height:27px;display:grid;place-items:center;flex-shrink:0;border:1px solid #dce5f0;border-radius:50%;color:var(--blue);font-size:12px;font-weight:700;background:white}.form-section{border-bottom:1px solid var(--line);padding-bottom:26px;margin-bottom:26px}.form-section h2{font-size:14px;margin-bottom:19px}.field-help{display:block;font-size:12px;font-weight:400;color:var(--muted);margin-top:6px;line-height:1.7}.auth-center{min-height:calc(100dvh - 86px);display:grid;place-items:center;padding:35px 20px}.auth-box{width:100%;max-width:460px}.auth-box .panel{padding:34px}.auth-box h1{font-size:25px;letter-spacing:-.6px;font-weight:750;line-height:1.4;margin:0 0 14px}.auth-box p{font-size:14px;color:var(--muted);line-height:1.85}.auth-box .field{margin-top:18px}.auth-box .button{margin-top:20px;width:100%}.auth-status-icon{width:45px;height:45px;border:1px solid #dce7f9;background:#f2f6fd;display:grid;place-items:center;border-radius:13px;font-size:18px;color:#5f81b1;margin-bottom:23px}.public-footer{text-align:center;color:#8997aa;font-size:12px;padding:22px}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.panel table:not(.data-table){width:100%;text-align:left;border-collapse:collapse;font-size:13px}.panel table:not(.data-table) th{font-size:12px;color:var(--muted);white-space:nowrap}.panel table:not(.data-table) td,.panel table:not(.data-table) th{padding:14px 10px;border-bottom:1px solid #edf0f5}.panel summary{font-size:14px;cursor:pointer}.public-workspace .form-grid label{line-height:1.7}.public-workspace .button-primary{font-size:14px}@media(min-width:1600px){.workspace-content{padding-top:40px}}@media(max-width:1199px){.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace-content{padding:27px 25px 35px}.workspace-topbar{padding:16px 25px}.dashboard-columns{grid-template-columns:minmax(0,1.5fr) minmax(210px,1fr)}}@media(max-width:1023px){.workspace-sidebar{transform:translateX(-100%);transition:transform .18s ease;width:min(288px,86vw);box-shadow:14px 0 40px #172b4d10}.menu-open .workspace-sidebar{transform:translateX(0)}.workspace-body{margin-left:0}.nav-toggle,.nav-close{display:inline-grid}.workspace-topbar{min-height:70px}.menu-open{overflow:hidden}.dashboard-columns{grid-template-columns:minmax(0,1.6fr) minmax(230px,1fr)}.onboarding-wrap{gap:28px;grid-template-columns:230px minmax(0,1fr)}}@media(max-width:767px){.dashboard-columns{grid-template-columns:minmax(0,1fr)}.metric-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.workspace-content{padding:25px 18px}.workspace-topbar{padding:13px 18px;gap:10px}.topbar-left>span{display:none}.topbar-left{gap:10px}.user-name{display:none}.topbar-user{gap:8px}.workspace-footer{padding:17px 18px}.panel{padding:20px}.intro-line{align-items:flex-start;flex-wrap:wrap}.today-label{font-size:12px}.onboarding-wrap{grid-template-columns:1fr;padding:30px 20px;gap:16px}.onboarding-intro{position:static}.onboarding-intro h1{font-size:28px;max-width:480px}.onboarding-steps{display:flex;flex-wrap:wrap;gap:12px;padding:10px 0 15px}.onboarding-steps li{font-size:12px}.onboarding-intro .panel{display:none}.page-intro h1{font-size:24px}.page-intro{align-items:flex-start}.service-banner{align-items:flex-start;flex-wrap:wrap;gap:9px}.service-banner .text-link{white-space:normal}}@media(max-width:540px){.metric-grid{gap:11px}.metric{padding:17px 15px}.metric-number{font-size:27px}.metric-label{font-size:12px;line-height:1.6;margin-bottom:13px}.metric-note{font-size:11px}.metric-grid.three{grid-template-columns:1fr}.metric-grid.three .metric{display:grid;grid-template-columns:1fr auto;gap:0 15px}.metric-grid.three .metric-label{margin-bottom:3px}.metric-grid.three .metric-number{grid-column:2;grid-row:1/3;margin:0;align-self:center}.metric-grid.three .metric-note{grid-row:2}.exam-grid,.form-grid{grid-template-columns:minmax(0,1fr)}.page-intro .today-label{display:none}.page-intro h1{font-size:23px}.panel-head{align-items:flex-start}.panel-head .text-link{white-space:normal;text-align:right}.onboarding-wrap>.panel{padding:22px 18px}.auth-box .panel{padding:27px 22px}.form-grid .wide{grid-column:auto}.topbar-left strong{max-width:150px;font-size:12px}.schedule-item{gap:12px}.exam-card{padding:21px}.today-label{display:none}.public-topbar{padding:19px 20px}.public-topbar>a:last-child{font-size:12px}.intro-line .button{width:100%}.metric-label i{display:none}.table-foot{gap:10px;flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Comfortable controls on touch screens; prevent input zoom on iOS. */
@media(max-width:1199px) and (min-width:768px){.exam-grid{grid-template-columns:minmax(0,1fr)}}
@media(max-width:767px){.icon-button{width:42px;height:42px}.form-grid input:not([type=checkbox]),.form-grid select,.form-grid textarea,.field input{font-size:16px}.data-table{min-width:580px}.identity-lines>div{flex-wrap:wrap}.identity-lines dd{margin-left:auto}.school-identity>div{min-width:0}}
@media print{.workspace-sidebar,.workspace-topbar,.workspace-footer,.nav-overlay,.skip-link,.page-intro,.service-banner{display:none!important}.workspace-body{margin:0!important;display:block;min-height:0}.workspace-content{padding:0!important;max-width:none}.workspace{background:#fff}.table-wrap{overflow:visible}.panel{break-inside:avoid}}
.selection-list{display:grid;gap:10px;margin:16px 0}.selection-list>label,.monitor-row{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--line);padding:13px;border-radius:10px}.monitor-row{justify-content:space-between;flex-wrap:wrap}.monitor-row span{display:block;color:var(--muted);font-size:12px;margin-top:4px}.exam-session-header{position:sticky;top:0;z-index:10;background:#fff;border-bottom:1px solid var(--line);padding:16px 5vw;display:flex;justify-content:space-between}.exam-session-header span{display:block;font-size:12px;color:var(--muted)}.take-layout{max-width:1450px;margin:auto;padding:25px;display:grid;grid-template-columns:68px minmax(0,1fr) 280px;gap:22px}.question-nav{position:sticky;top:100px;align-self:start;display:grid;gap:7px}.question-nav a{width:42px;height:42px;background:white;border:1px solid var(--line);border-radius:8px;display:grid;place-items:center}.question-block h2{font-size:17px;line-height:1.7}.answer-option{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid var(--line);border-radius:10px;margin:10px 0}.answer-option>span{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--blue-soft);color:var(--blue);font-weight:700}.question-block textarea{width:100%;border:1px solid var(--line);border-radius:10px;padding:14px}#camera-preview{width:100%;border-radius:10px;background:#121820;margin:12px 0}@media(max-width:900px){.take-layout{grid-template-columns:1fr}.question-nav{position:static;display:flex;overflow-x:auto}.take-layout>aside{grid-row:2}.question-nav a{flex:0 0 42px}}@media(max-width:540px){.take-layout{padding:14px}.exam-session-header{padding:13px 16px}.question-block{padding:18px}.answer-option{padding:12px}}

.exam-gate{position:fixed;inset:0;z-index:30;background:#f5f7fbeF;display:grid;place-items:center;padding:20px}.exam-gate[hidden]{display:none}.exam-gate>.panel{max-width:520px}.exam-gate p{line-height:1.8;margin:18px 0}.selection-list>[hidden]{display:none}
