@import url("https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,400..700;1,9..144,400..600&family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap");*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }
/*
! tailwindcss v3.4.14 | MIT License | https://tailwindcss.com
*/*,:after,:before{border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:JetBrains Mono,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.\!container{width:100%!important}.container{width:100%}@media (min-width:640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media (min-width:768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media (min-width:1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media (min-width:1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media (min-width:1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.visible{visibility:visible}.absolute{position:absolute}.block{display:block}.inline{display:inline}.flex{display:flex}.table{display:table}.grid{display:grid}.hidden{display:none}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.border{border-width:1px}.italic{font-style:italic}.underline{text-decoration-line:underline}.blur{--tw-blur:blur(8px)}.blur,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}@font-face{font-family:EB Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/EBGaramond-Regular.ttf) format("truetype")}@font-face{font-family:EB Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/EBGaramond-Medium.ttf) format("truetype")}@font-face{font-family:Pinyon Script;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/PinyonScript-Regular.ttf) format("truetype")}:root{--bg:#faf4e6;--bg-elev:#fffdf6;--bg-elev-2:#fff9ea;--border:#ead9a8;--border-bright:#e0c97e;--text:#453a2c;--text-dim:#6e6250;--text-faint:#8a7d69;--accent:#c8552a;--accent-glow:rgba(200,85,42,.12);--accent-bright:#a84420;--accent-text:#fff;--green:#159a53;--green-dim:rgba(21,154,83,.14);--red:#da4526;--red-dim:rgba(218,69,38,.14);--amber:#c79a38;--amber-dim:rgba(199,154,56,.16);--font-display:"Fraunces",Georgia,"Times New Roman",serif;--font-body:"Inter",-apple-system,sans-serif;--font-mono:"JetBrains Mono",monospace;--max-width:1280px;--nav-height:66px}*,:after,:before{margin:0;padding:0;box-sizing:border-box}body,html{background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased;min-height:100vh;overflow-x:clip}body:before{content:"";position:fixed;inset:0;background-color:transparent;background-image:radial-gradient(hsla(0,0%,100%,.045) 1px,transparent 0);background-size:3px 3px;pointer-events:none;z-index:0}a{color:inherit;text-decoration:none}.page-wrap{position:relative;z-index:1;max-width:var(--max-width);margin:0 auto;padding:48px 32px 96px}.topnav{position:sticky;top:0;z-index:100;background:var(--bg);border-bottom:1px solid var(--border)}.nav-inner{max-width:var(--max-width);margin:0 auto;padding:16px 32px;justify-content:space-between;gap:32px}.brand,.nav-inner{display:flex;align-items:center}.brand{cursor:pointer;color:var(--text);gap:12px}.brand-mark{font-family:var(--font-display);font-weight:700;letter-spacing:.08em;font-size:18px;display:inline-flex;align-items:center;gap:8px}.brand-tag{font-family:var(--font-mono);font-size:9px;letter-spacing:.2em;padding:3px 7px;border:1px solid var(--border-bright);border-radius:4px;color:var(--text-dim);text-transform:uppercase}.nav-links{display:flex;gap:4px;list-style:none;flex:1;justify-content:center}.nav-link{background:none;border:none;color:var(--text-dim);font-family:var(--font-body);font-size:14px;font-weight:500;padding:8px 16px;border-radius:8px;cursor:pointer;transition:all .15s ease;text-decoration:none}.nav-link.active,.nav-link:hover{color:var(--text);background:var(--bg-elev)}.nav-cta{display:flex;align-items:center;gap:12px}.btn-primary{padding:9px 18px;background:var(--accent);color:var(--accent-text);border:none;border-radius:8px;font-family:var(--font-body);font-weight:600;font-size:13px;cursor:pointer;transition:all .15s ease;display:inline-block;text-align:center}.btn-primary:hover:not(:disabled){background:var(--accent-bright);transform:translateY(-1px)}.btn-primary:disabled{opacity:.4;cursor:not-allowed}.btn-ghost{padding:9px 16px;background:transparent;color:var(--text-dim);border:1px solid var(--border-bright);border-radius:8px;font-family:var(--font-body);font-weight:500;font-size:13px;cursor:pointer;transition:all .15s ease;display:inline-block}.btn-ghost:hover{color:var(--text);background:var(--bg-elev);border-color:var(--text-dim)}.user-pill{gap:8px;padding:6px 14px;background:var(--bg-elev);border:1px solid var(--border-bright);border-radius:100px;font-family:var(--font-mono);font-size:12px;color:var(--text-dim)}.user-pill,.user-pill-avatar{display:flex;align-items:center}.user-pill-avatar{width:24px;height:24px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--bg-elev-2));justify-content:center;font-size:11px;font-weight:700;color:var(--accent-text);overflow:hidden;flex-shrink:0}.user-pill-avatar img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:56px}.stat-card{background:var(--bg-elev);border:1px solid var(--border);border-radius:16px;padding:24px;transition:all .2s ease}.stat-card:hover{border-color:var(--border-bright);transform:translateY(-2px)}.stat-label{font-size:10px;font-weight:600;color:var(--text-faint);letter-spacing:.15em;text-transform:uppercase;margin-bottom:12px}.stat-label,.stat-value{font-family:var(--font-mono)}.stat-value{font-size:32px;font-weight:700;letter-spacing:-.02em;color:var(--text);line-height:1}.stat-value.green{color:var(--green)}.stat-value.red{color:var(--red)}.stat-delta{font-family:var(--font-mono);font-size:12px;color:var(--text-faint);margin-top:8px}.section-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--border)}.section-title{font-family:var(--font-display);font-size:36px;font-weight:400;letter-spacing:-.02em}.section-link{font-family:var(--font-mono);font-size:12px;color:var(--accent-bright);letter-spacing:.05em;text-transform:uppercase;cursor:pointer}.data-table-wrap{background:var(--bg-elev);border:1px solid var(--border);border-radius:16px;overflow:hidden;margin-bottom:56px}.data-table{width:100%;border-collapse:collapse}.data-table thead th{text-align:left;padding:16px 24px;font-family:var(--font-mono);font-size:10px;font-weight:600;color:var(--text-faint);letter-spacing:.15em;text-transform:uppercase;border-bottom:1px solid var(--border)}.data-table thead th.right{text-align:right}.data-table tbody tr{border-bottom:1px solid var(--border);transition:background .15s ease}.data-table tbody tr:last-child{border-bottom:none}.data-table tbody tr:hover{background:var(--bg-elev-2)}.data-table tbody td{padding:18px 24px;font-size:14px}.data-table tbody td.right{text-align:right}.badge,.data-table tbody td.mono{font-family:var(--font-mono)}.badge{display:inline-block;font-size:9px;font-weight:700;padding:3px 8px;border-radius:4px;letter-spacing:.1em;text-transform:uppercase}.badge.win{background:var(--green-dim);color:var(--green)}.badge.loss{background:var(--red-dim);color:var(--red)}.badge.live{background:var(--accent-glow);color:var(--accent-bright)}.badge.neutral{background:var(--bg-elev-2);color:var(--text-faint)}.badge.amber{background:var(--amber-dim);color:var(--amber)}.card{background:var(--bg-elev);border:1px solid var(--border);border-radius:16px;overflow:hidden}.card-header{padding:20px 24px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.card-title{font-family:var(--font-display);font-size:22px;font-weight:400;letter-spacing:-.01em}.card-meta{font-family:var(--font-mono);font-size:10px;color:var(--text-faint);letter-spacing:.1em;text-transform:uppercase}.card-body{padding:24px}.hero{margin-bottom:56px;flex-direction:column;text-align:center}.hero,.hero-label{display:flex;align-items:center}.hero-label{font-family:var(--font-mono);font-size:11px;font-weight:600;color:var(--accent);letter-spacing:.2em;text-transform:uppercase;margin-bottom:18px;justify-content:center;gap:10px}.hero-label:after,.hero-label:before{content:"";width:24px;height:1px;background:var(--accent)}.hero-headline{font-family:var(--font-display);font-size:76px;font-weight:400;line-height:.95;letter-spacing:-.03em;margin-bottom:18px;color:var(--text)}.hero-headline em{font-style:italic;color:var(--accent-bright)}.hero-sub{font-size:17px;color:var(--text-dim);max-width:640px;line-height:1.6;margin:0 auto 24px}.level-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:56px}.level-card{background:var(--bg-elev);border:1px solid var(--border);border-radius:18px;padding:28px;transition:all .2s ease;display:flex;flex-direction:column}.level-card:hover{border-color:var(--accent);transform:translateY(-3px)}.level-roman{font-size:64px;line-height:1;color:var(--accent);letter-spacing:-.04em;margin-bottom:4px}.level-roman,.level-title{font-family:var(--font-display)}.level-title{font-size:22px;letter-spacing:-.01em;margin-bottom:8px}.level-meta{font-family:var(--font-mono);font-size:10px;color:var(--text-faint);letter-spacing:.12em;text-transform:uppercase;margin-bottom:18px}.level-reqs{font-size:14px;color:var(--text-dim);margin-bottom:18px;display:flex;flex-direction:column;gap:6px;flex:1}.level-reqs li{display:flex;gap:8px;align-items:baseline;list-style:none}.level-reqs li:before{content:"·";color:var(--accent);font-weight:700}.site-footer{border-top:1px solid var(--border);padding:40px 32px;margin-top:80px}.footer-inner{max-width:var(--max-width);margin:0 auto;justify-content:space-between;flex-wrap:wrap;gap:16px}.footer-brand,.footer-inner{display:flex;align-items:center}.footer-meta{font-family:var(--font-mono);font-size:11px;color:var(--text-faint);letter-spacing:.05em}.auth-gate{text-align:center;padding:120px 40px}.auth-gate h2{font-family:var(--font-display);font-size:36px;margin-bottom:12px}.auth-gate p{color:var(--text-dim);margin-bottom:24px}.checkin-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:48px 24px;position:relative;z-index:1}.checkin-card{width:100%;max-width:760px;background:var(--bg-elev);border:1px solid var(--border);border-radius:20px;padding:40px}.checkin-step{display:flex;align-items:flex-start;gap:18px;padding:20px;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:14px;margin-bottom:14px;transition:border-color .2s}.checkin-step.ok{border-color:var(--green);background:var(--green-dim)}.checkin-step.err{border-color:var(--red);background:var(--red-dim)}.checkin-step-num{width:32px;height:32px;border-radius:50%;border:1px solid var(--border-bright);display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:13px;font-weight:700;color:var(--text-dim);flex-shrink:0}.checkin-step.ok .checkin-step-num{background:var(--green);color:#000;border-color:var(--green)}.checkin-step.err .checkin-step-num{background:var(--red);color:#fff;border-color:var(--red)}.checkin-step h3{font-family:var(--font-display);font-size:18px;font-weight:500;margin-bottom:4px}.checkin-step p{color:var(--text-dim);font-size:13px}.checkin-cam-preview{width:200px;height:120px;border-radius:10px;background:#000;border:1px solid var(--border-bright);-o-object-fit:cover;object-fit:cover;margin-top:10px;display:block}.mic-meter{height:10px;width:100%;background:var(--bg);border-radius:999px;overflow:hidden;margin-top:12px}.mic-meter-fill{height:100%;background:linear-gradient(90deg,var(--green),var(--accent-bright));transition:width 80ms linear}.fineprint{font-size:11px;color:var(--text-faint);line-height:1.55;margin-top:20px;font-family:var(--font-mono);letter-spacing:.02em}.exam-shell{min-height:100vh;display:grid;grid-template-rows:auto 1fr;position:relative;z-index:1}.exam-topbar{position:sticky;top:0;z-index:50;background:var(--bg);border-bottom:1px solid var(--border);padding:14px 28px;display:flex;align-items:center;justify-content:space-between;gap:24px}.exam-topbar-brand{font-family:var(--font-display);font-weight:700;letter-spacing:.08em;font-size:16px;display:flex;align-items:center;gap:12px}.exam-session-id{font-family:var(--font-mono);font-size:11px;color:var(--text-faint);letter-spacing:.12em;text-transform:uppercase}.exam-q-counter{font-size:13px;color:var(--text-dim);letter-spacing:.04em}.exam-q-counter,.exam-timer{font-family:var(--font-mono)}.exam-timer{font-size:24px;font-weight:700;color:var(--text);letter-spacing:.06em;padding:6px 14px;background:var(--bg-elev);border:1px solid var(--border-bright);border-radius:10px}.exam-timer.warn{color:var(--amber);border-color:var(--amber)}.exam-timer.crit{color:var(--red);border-color:var(--red);animation:pulse 1.2s ease-in-out infinite}.exam-layout{display:grid;grid-template-columns:1fr 380px;gap:28px;padding:28px;max-width:1480px;margin:0 auto;width:100%}@media (max-width:1100px){.exam-layout{grid-template-columns:1fr}}.exam-question-panel{background:var(--bg-elev);border:1px solid var(--border);border-radius:16px;padding:32px;min-height:60vh}.exam-q-prompt{font-family:var(--font-body);font-size:18px;line-height:1.55;color:var(--text);margin-bottom:20px}.exam-q-number{font-family:var(--font-mono);font-size:11px;color:var(--accent);letter-spacing:.18em;text-transform:uppercase;margin-bottom:12px}.exam-q-svg{background:var(--bg-elev-2);border:1px solid var(--border);border-radius:12px;padding:18px;margin-bottom:20px;display:flex;justify-content:center}.exam-q-svg svg{max-width:100%;height:auto;max-height:280px}.exam-options{display:flex;flex-direction:column;gap:10px;margin-top:10px}.exam-option{display:flex;align-items:flex-start;gap:14px;padding:16px 18px;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:12px;cursor:pointer;transition:all .12s}.exam-option:hover{border-color:var(--border-bright);background:var(--bg)}.exam-option.selected{border-color:var(--accent);background:var(--accent-glow)}.exam-option-letter{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-weight:700;font-size:13px;background:var(--bg);color:var(--text-dim);border:1px solid var(--border-bright);flex-shrink:0}.exam-option.selected .exam-option-letter{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}.exam-option-text{font-size:15px;line-height:1.5;color:var(--text)}.exam-nav{display:flex;justify-content:space-between;align-items:center;margin-top:32px;padding-top:20px;border-top:1px solid var(--border)}.exam-flag-btn{background:transparent;border:1px solid var(--border-bright);color:var(--text-dim);border-radius:8px;padding:7px 12px;font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}.exam-flag-btn.on{color:var(--amber);border-color:var(--amber);background:var(--amber-dim)}.exam-progress{height:4px;background:var(--bg-elev-2);border-radius:999px;overflow:hidden;margin-bottom:28px}.exam-progress-fill{height:100%;background:linear-gradient(90deg,var(--accent),var(--accent-bright));transition:width .25s ease}.proctor{position:sticky;top:96px;background:var(--bg-elev);border:1px solid var(--border);border-radius:16px;overflow:hidden;align-self:flex-start;max-height:calc(100vh - 120px);overflow-y:auto;scrollbar-gutter:stable}.proctor-header{padding:14px 18px;justify-content:space-between;border-bottom:1px solid var(--border)}.proctor-header,.proctor-title{display:flex;align-items:center}.proctor-title{font-family:var(--font-display);font-size:15px;letter-spacing:-.01em;gap:8px}.proctor-title-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 10px var(--accent)}.rec-pill{display:flex;align-items:center;gap:6px;padding:4px 8px;background:var(--red-dim);border:1px solid var(--red);border-radius:999px;color:var(--red);font-family:var(--font-mono);font-size:9px;font-weight:700;letter-spacing:.18em}.rec-dot{width:6px;height:6px;border-radius:50%;background:var(--red);animation:pulse 1s ease-in-out infinite}.proctor-cam{position:relative;aspect-ratio:4/3;background:#000;overflow:hidden}.proctor-cam video{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transform:scaleX(-1)}.proctor-cam-bracket{position:absolute;width:22px;height:22px;border:2px solid var(--accent);pointer-events:none}.proctor-cam-bracket.tl{top:10px;left:10px;border-right:none;border-bottom:none}.proctor-cam-bracket.tr{top:10px;right:10px;border-left:none;border-bottom:none}.proctor-cam-bracket.bl{bottom:10px;left:10px;border-right:none;border-top:none}.proctor-cam-bracket.br{bottom:10px;right:10px;border-left:none;border-top:none}.proctor-scanline{position:absolute;inset-inline:0;height:2px;background:linear-gradient(90deg,transparent,var(--accent),transparent);opacity:.6;animation:scan 3.5s ease-in-out infinite;pointer-events:none}@keyframes scan{0%,to{top:8%}50%{top:90%}}.face-overlay{position:absolute;border:2px solid var(--green);border-radius:4px;pointer-events:none;transition:all .1s linear;font-family:var(--font-mono);font-size:9px;color:var(--green);display:flex;align-items:flex-start}.face-overlay>span{background:var(--green-dim);padding:1px 4px;margin-top:-14px;border-radius:2px}.face-overlay.warn{border-color:var(--amber);color:var(--amber)}.face-overlay.warn>span{background:var(--amber-dim)}.face-overlay.crit{border-color:var(--red);color:var(--red)}.face-overlay.crit>span{background:var(--red-dim)}.proctor-status-banner{padding:12px 18px;font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;text-align:center;border-bottom:1px solid var(--border)}.proctor-status-banner.ok{background:var(--green-dim);color:var(--green)}.proctor-status-banner.warn{background:var(--amber-dim);color:var(--amber)}.proctor-status-banner.crit{background:var(--red-dim);color:var(--red)}.integrity-ring{padding:18px;display:flex;align-items:center;gap:14px;border-bottom:1px solid var(--border)}.integrity-num{font-family:var(--font-mono);font-size:44px;font-weight:700;line-height:1;color:var(--green)}.integrity-num.warn{color:var(--amber)}.integrity-num.crit{color:var(--red)}.integrity-label{font-family:var(--font-mono);font-size:9px;color:var(--text-faint);letter-spacing:.15em;text-transform:uppercase;margin-bottom:4px}.integrity-sub{font-family:var(--font-mono);font-size:11px;color:var(--text-dim)}.monitor-list{padding:14px 6px;display:flex;flex-direction:column;gap:2px}.monitor-row{display:flex;align-items:center;gap:10px;padding:8px 12px;font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;color:var(--text-dim)}.monitor-row.ok{color:var(--text)}.monitor-row-icon{width:16px;height:16px;border-radius:4px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.monitor-row.ok .monitor-row-icon{background:var(--green-dim);color:var(--green)}.monitor-row.warn .monitor-row-icon{background:var(--amber-dim);color:var(--amber)}.monitor-row.crit .monitor-row-icon{background:var(--red-dim);color:var(--red)}.navigator{padding:16px 18px;border-top:1px solid var(--border)}.navigator-section+.navigator-section{margin-top:18px}.navigator-section-label{font-family:var(--font-mono);font-size:9px;letter-spacing:.15em;text-transform:uppercase;color:var(--text-faint);margin-bottom:8px}.navigator-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:4px}.navigator-cell{position:relative;aspect-ratio:1;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:6px;cursor:pointer;font-family:var(--font-mono);font-size:10px;display:flex;align-items:center;justify-content:center;color:var(--text-dim);transition:all .12s}.navigator-cell:hover{border-color:var(--accent)}.navigator-cell.visited{background:var(--amber-dim);border-color:var(--amber);color:var(--amber)}.navigator-cell.answered{background:var(--green-dim);border-color:var(--green);color:var(--green)}.navigator-cell.current{background:var(--accent);border:2px solid var(--accent-bright);box-shadow:inset 0 0 0 2px var(--bg);color:var(--accent-text);font-weight:700}.navigator-cell.flagged:after{content:"";position:absolute;top:2px;right:2px;width:4px;height:4px;background:var(--amber);border-radius:50%}.integrity-notice{background:var(--accent);border:1px solid var(--accent-bright);border-radius:12px;padding:22px 24px;margin-bottom:24px;font-size:14px;line-height:1.6}.integrity-notice,.integrity-notice p{color:var(--accent-text)}.integrity-notice h3{font-family:var(--font-display);font-size:16px;color:var(--amber);letter-spacing:.06em;text-transform:uppercase;margin-bottom:12px}.integrity-notice .sig{color:hsla(42,44%,92%,.6);margin-top:12px;letter-spacing:.06em}.integrity-notice .sig,.written-reminder{font-family:var(--font-mono);font-size:11px}.written-reminder{background:var(--red-dim);border:1px solid var(--red);border-radius:8px;padding:8px 12px;color:var(--red);letter-spacing:.04em;margin-bottom:10px}.written-textarea{width:100%;min-height:220px;background:var(--bg-elev-2);border:1px solid var(--border-bright);border-radius:12px;padding:16px;color:var(--text);font-family:var(--font-body);font-size:15px;line-height:1.55;resize:vertical;outline:none}.written-textarea:focus{border-color:var(--accent)}.written-meta{display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:11px;color:var(--text-faint);margin-top:8px}.written-meta .met{color:var(--green)}.toast-host{position:fixed;top:80px;right:24px;z-index:200;display:flex;flex-direction:column;gap:10px;max-width:340px}.toast{background:var(--bg-elev);border:1px solid var(--border-bright);border-left:4px solid var(--amber);border-radius:10px;padding:12px 14px;font-size:13px;color:var(--text);box-shadow:0 8px 24px rgba(0,0,0,.4);animation:slidein .18s ease-out}.toast.crit{border-left-color:var(--red)}.toast .toast-title{font-family:var(--font-mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--amber);margin-bottom:4px}.toast.crit .toast-title{color:var(--red)}@keyframes slidein{0%{transform:translateX(20px);opacity:0}to{transform:translateX(0);opacity:1}}.dq-overlay{position:fixed;inset:0;z-index:300;backdrop-filter:blur(18px);background:rgba(0,0,0,.85);display:flex;align-items:center;justify-content:center;padding:32px;animation:shake .45s cubic-bezier(.36,.07,.19,.97) both}@keyframes shake{10%,90%{transform:translate3d(-1px,0,0)}20%,80%{transform:translate3d(2px,0,0)}30%,50%,70%{transform:translate3d(-4px,0,0)}40%,60%{transform:translate3d(4px,0,0)}}.dq-card{max-width:560px;background:var(--bg-elev);border:2px solid var(--red);border-radius:18px;padding:40px 36px;text-align:center}.dq-card .dq-badge{display:inline-block;font-family:var(--font-mono);font-size:11px;letter-spacing:.2em;color:var(--red);border:1px solid var(--red);background:var(--red-dim);border-radius:999px;padding:4px 12px;margin-bottom:18px}.dq-card h1{font-family:var(--font-display);font-size:38px;letter-spacing:-.02em;margin-bottom:12px;color:var(--text)}.dq-card p{color:var(--text-dim);margin-bottom:16px}.dq-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:24px 0}.dq-stat{background:var(--bg-elev-2);border:1px solid var(--border);border-radius:10px;padding:14px}.dq-stat-label{font-size:10px;color:var(--text-faint);letter-spacing:.12em;text-transform:uppercase}.dq-stat-label,.dq-stat-val{font-family:var(--font-mono)}.dq-stat-val{font-size:24px;font-weight:700;color:var(--text);margin-top:4px}.dq-sig{font-family:var(--font-mono);font-size:11px;color:var(--text-faint);margin-top:20px}.cert-wrap{min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:80px 24px;position:relative;z-index:1}.cert-tpl{position:relative;width:100%;max-width:980px;aspect-ratio:3579/2551;background:url(/cert-template/cert-bg.png) 50%/cover no-repeat;box-shadow:0 20px 60px rgba(14,27,44,.12);border-radius:4px}.cert-tpl,.cert-tpl-name{overflow:hidden;color:#142849}.cert-tpl-name{left:18%;right:18%;top:50%;font-family:Pinyon Script,Snell Roundhand,cursive;font-size:clamp(34px,6.8vw,110px);font-weight:400;line-height:1;text-overflow:ellipsis}.cert-tpl-date,.cert-tpl-name{position:absolute;text-align:center;white-space:nowrap}.cert-tpl-date{left:24%;right:53%;top:80%;font-size:clamp(13px,1.9vw,30px);font-weight:500;color:#142849}.cert-tpl-date,.cert-tpl-id{font-family:EB Garamond,Garamond,Times New Roman,serif}.cert-tpl-id{position:absolute;left:0;right:0;bottom:3.5%;text-align:center;font-style:italic;font-size:clamp(9px,1.05vw,16px);letter-spacing:.12em;color:rgba(20,40,73,.7)}.cert-meta{width:100%;max-width:980px;margin:22px auto 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:14px}.cert-meta-tile{background:var(--bg-elev);border:1px solid var(--border);border-radius:10px;padding:12px 14px;text-align:center}.cert-meta-label{font-family:var(--font-mono);font-size:9px;letter-spacing:.18em;color:var(--text-faint);text-transform:uppercase}.cert-meta-val{font-family:var(--font-mono);font-size:16px;font-weight:700;color:var(--text);margin-top:4px;word-break:break-all}.cert-embed-wrap{position:fixed;inset:0;display:grid;place-items:center;background:#efe9da;padding:0;margin:0}.cert-embed-wrap .cert-tpl{width:min(100vw,calc(100vh * 3579 / 2551));height:auto;max-width:none;box-shadow:none;border-radius:0}.cert-embed-panel{width:100%;max-width:980px;margin:14px auto 0;padding:16px;background:var(--bg-elev);border:1px solid var(--border);border-radius:12px}.cert-embed-label{font-family:var(--font-mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-faint);margin-bottom:8px}.cert-embed-code{width:100%;font-family:var(--font-mono);font-size:12px;line-height:1.55;color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:10px 12px;resize:vertical;box-sizing:border-box}.cert-embed-foot{display:flex;gap:10px;margin-top:10px;flex-wrap:wrap}.cert-paper{width:100%;max-width:880px;background:linear-gradient(180deg,var(--bg-elev) 0,var(--bg) 100%);border:1px solid var(--accent);border-radius:22px;padding:56px 64px;position:relative;box-shadow:0 20px 60px rgba(14,27,44,.1)}.cert-paper:after,.cert-paper:before{content:"";position:absolute;width:60px;height:60px;border:2px solid var(--accent)}.cert-paper:before{top:18px;left:18px;border-right:none;border-bottom:none}.cert-paper:after{bottom:18px;right:18px;border-left:none;border-top:none}.cert-eyebrow{font-family:var(--font-mono);font-size:11px;letter-spacing:.28em;color:var(--accent);text-transform:uppercase;margin-bottom:12px;text-align:center}.cert-heading{font-family:var(--font-display);font-size:36px;font-weight:400;letter-spacing:-.02em;text-align:center;margin-bottom:8px}.cert-sub{text-align:center;font-size:14px;color:var(--text-dim);margin-bottom:32px}.cert-recipient{font-family:var(--font-display);font-size:56px;font-weight:400;text-align:center;letter-spacing:-.02em;color:var(--accent-bright);margin:18px 0 6px;word-break:break-word}.cert-recipient-label{text-align:center;font-family:var(--font-mono);font-size:10px;letter-spacing:.22em;color:var(--text-faint);text-transform:uppercase}.cert-level-line{text-align:center;font-size:18px;color:var(--text);margin:26px 0 36px;line-height:1.55}.cert-level-line em{font-style:italic;color:var(--accent-bright);font-family:var(--font-display)}.cert-verified{display:inline-flex;align-items:center;gap:8px;margin:0 auto;padding:6px 14px;background:var(--green-dim);border:1px solid var(--green);border-radius:999px;font-family:var(--font-mono);font-size:11px;font-weight:700;color:var(--green);letter-spacing:.16em;text-transform:uppercase}.cert-verified.invalid{background:var(--red-dim);border-color:var(--red);color:var(--red)}.cert-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:36px 0}.cert-stat{background:var(--bg-elev-2);border:1px solid var(--border);border-radius:12px;padding:16px;text-align:center}.cert-stat-label{font-family:var(--font-mono);font-size:9px;letter-spacing:.18em;color:var(--text-faint);text-transform:uppercase;margin-bottom:6px}.cert-stat-val{font-family:var(--font-mono);font-size:22px;font-weight:700;color:var(--text)}.cert-sig-block{display:flex;justify-content:space-between;align-items:flex-end;margin-top:40px;padding-top:24px;border-top:1px solid var(--border);flex-wrap:wrap;gap:24px}.cert-sig-name{font-family:var(--font-display);font-size:22px;font-style:italic;color:var(--text)}.cert-sig-line{font-size:10px;color:var(--text-faint);letter-spacing:.12em;text-transform:uppercase;margin-top:6px}.cert-id,.cert-sig-line{font-family:var(--font-mono)}.cert-id{font-size:11px;color:var(--text-dim);letter-spacing:.1em;text-align:right}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}.text-mono{font-family:var(--font-mono)}.text-display{font-family:var(--font-display)}.dash-row>.level-card{padding:36px}.dash-row>.level-card .level-roman{font-size:96px;margin-bottom:8px}.dash-row>.level-card .level-title{font-size:28px}.dash-row>.level-card .level-reqs{margin-top:4px;margin-bottom:auto}.dash-stats .stat-card{flex:1;display:flex;flex-direction:column;justify-content:center}@media (max-width:1100px){.dash-row,.exam-row{grid-template-columns:1fr!important}.dash-stats{display:grid!important;grid-template-columns:repeat(2,1fr)!important}.dash-row>.level-card{padding:28px}.dash-row>.level-card .level-roman{font-size:72px}}@media (max-width:900px){.hero-headline{font-size:48px}.level-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,1fr)}.page-wrap{padding:32px 16px 64px}.nav-inner{padding:12px 16px}.nav-links{display:none}.cert-paper{padding:36px 24px}.cert-recipient{font-size:38px}.cert-heading{font-size:26px}}@media (max-width:520px){.hero-headline{font-size:34px}.stats-grid{grid-template-columns:1fr}.exam-topbar{padding:10px 14px;flex-wrap:wrap;gap:10px}.exam-timer{font-size:18px}}.desk{position:relative;z-index:1;font-variant-numeric:tabular-nums;overflow-x:clip}.embedded .desk .dk-side{display:none}.embedded .desk .dk-shell{grid-template-columns:1fr}.embedded .desk .dk-main{padding:40px 48px 80px}@media (max-width:720px){.embedded .desk .dk-main{padding:22px 18px 56px}}.desk .dk-shell{display:grid;grid-template-columns:1fr 300px;min-height:100vh;width:100%;max-width:100%;font-family:var(--font-body)}.desk .dk-main,.desk .dk-shell{overflow-x:clip;background:transparent}.desk .dk-main{padding:40px 48px 80px;color:var(--text);min-width:0}.desk .dk-main.dk-main-home{background:transparent}.desk .dk-side{background:var(--nav,#0d0e10);color:var(--text-dim);padding:30px 0 26px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow-y:auto;border:1px solid hsla(41,64%,73%,.35)}.desk .dk-brand{position:relative;display:flex;align-items:center;justify-content:center;gap:12px;padding:0 24px;margin-bottom:58px;min-height:52px;text-decoration:none;color:#f4efe3}.desk .dk-brand:after{content:"";position:absolute;left:16px;right:16px;bottom:-18px;height:1px;background:hsla(39,48%,59%,.25)}.desk .dk-mono{width:52px;height:52px;border:1px solid #c9a766;border-radius:50%;display:grid;place-items:center;font-style:italic;font-size:24px;flex:none}.desk .dk-bname,.desk .dk-mono{font-family:var(--font-display);color:#c9a766}.desk .dk-bname{font-size:18px;letter-spacing:.22em;text-transform:uppercase;text-shadow:0 1px 0 hsla(42,44%,92%,.16),0 -1px 1px rgba(0,0,0,.55)}.desk .dk-nav{display:flex;flex-direction:column;gap:4px;padding:0 16px}.desk .dk-navitem{padding:15px 18px;border-radius:11px;color:#93a0ae;text-decoration:none;text-align:center;font-family:var(--font-display);font-size:22px;transition:background .15s ease,color .15s ease}.desk .dk-navitem:hover{color:#f4efe3}.desk .dk-navitem.on{background:hsla(39,48%,59%,.15);color:#f4efe3}.desk .dk-navitem-group{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;width:100%;cursor:pointer;font-family:var(--font-display);font-size:22px;text-align:center;color:#93a0ae;display:flex;align-items:center;justify-content:center;margin-top:10px;position:relative}.desk .dk-navitem-group .dk-caret{position:absolute;left:18px;top:0;bottom:0;margin:auto 0}.desk .dk-navitem-group.on{color:#f4efe3}.desk .dk-caret{display:inline-block;width:.72em;height:.72em;opacity:.55;transform-origin:50% 50%;transition:transform .2s ease,opacity .2s ease;vertical-align:-.05em}.desk .dk-caret.open{transform:rotate(90deg);opacity:.9}.desk .dk-navitem-sub{padding-left:36px;font-size:16px;color:#7e8a96;animation:dk-sub-in .22s ease both}.desk .dk-navitem-sub.on{color:#f4efe3}@keyframes dk-sub-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.desk .dk-cta-side{display:block;margin:22px 18px 0;padding:17px 18px;text-align:center;background:#c9a766;color:#0e1b2c;border-radius:11px;text-decoration:none;font-family:var(--font-mono);font-size:13px;letter-spacing:.1em;text-transform:uppercase;transition:background .15s ease}.desk .dk-cta-side:hover{background:#d9bc7e}.desk .dk-mkt-nav{display:flex;flex-direction:column;margin:26px 16px 0;padding-top:22px;border-top:1px solid hsla(39,48%,59%,.25)}.desk .dk-mkt-link{padding:15px 16px;border-radius:10px;text-decoration:none;text-align:center;font-family:var(--font-display);font-size:20px;letter-spacing:.01em;color:#c7d0da;transition:background .15s ease,color .15s ease}.desk .dk-mkt-link:hover{color:#f4efe3;background:hsla(39,48%,59%,.12)}.desk .dk-mkt-tail{margin-top:auto;padding-bottom:4px}.desk .dk-mkt-mandate{display:block;text-align:center;text-decoration:none;margin:0 16px;padding:14px 16px;border-top:1px solid hsla(39,48%,59%,.25);font-family:var(--font-display);font-size:20px;line-height:1;color:#c7d0da;transition:color .15s ease}.desk .dk-mkt-mandate:hover{color:#f4efe3}.desk .dk-mkt-foot{margin:0 16px;padding:12px 8px 4px;text-align:center;font-family:var(--font-mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:#6e7b88;border-top:1px solid hsla(42,44%,92%,.12)}.desk .dk-side-acct{padding:18px 24px 0;border-top:1px solid hsla(42,44%,92%,.12);display:flex;flex-direction:column;align-items:center;gap:10px}.desk .dk-acct-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;cursor:pointer;width:100%;display:flex;align-items:center;justify-content:center;gap:14px;color:inherit}.desk .dk-side-avatar{width:52px;height:52px;border-radius:50%;overflow:hidden;border:1px solid #c9a766;background:hsla(39,48%,59%,.2);display:grid;place-items:center;font-family:var(--font-display);font-style:italic;font-size:24px;color:#c9a766;flex:none}.desk .dk-side-avatar img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.desk .dk-side-name{font-family:var(--font-display);font-size:18px;color:#f4efe3;text-align:center;max-width:170px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.desk .dk-side-signout{font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#93a0ae;text-decoration:none}.desk .dk-side-signout:hover{color:#c9a766}@media (max-width:1100px){.desk .dk-shell{grid-template-columns:1fr}.desk .dk-side{order:-1;position:static;height:auto;flex-direction:row;align-items:center;flex-wrap:wrap;gap:8px;padding:14px 18px}.desk .dk-brand{padding:0 12px 0 0;margin-bottom:0;min-height:0}.desk .dk-brand:after{display:none}.desk .dk-nav{flex-direction:row;flex-wrap:wrap;gap:4px;padding:0}.desk .dk-navitem{font-size:15px;padding:9px 12px}.desk .dk-navitem-group{font-size:15px;width:auto;margin-top:0}.desk .dk-cta-side{margin:0 0 0 auto;padding:9px 14px}.desk .dk-mkt-nav{flex-direction:row;flex-wrap:wrap;margin:0;padding:0;border-top:none}.desk .dk-mkt-link{font-size:15px;padding:9px 12px}.desk .dk-mkt-tail{display:none}.desk .dk-side-acct{margin:0 0 0 auto;padding:0;border-top:none}.desk .dk-side-avatar{width:36px;height:36px;font-size:16px}.desk .dk-main{padding:24px 20px 56px}}.cert-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;width:100%;max-width:880px;margin:24px auto 0}.cert-action{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;border:1px solid var(--border-bright);background:var(--bg-elev);color:var(--text);font-family:var(--font-mono);font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:12px 22px;border-radius:10px;cursor:pointer;text-decoration:none;transition:background .15s ease,border-color .15s ease,color .15s ease,transform .15s ease}.cert-action:hover{background:var(--bg-elev-2);border-color:var(--accent);color:var(--accent-bright);transform:translateY(-1px)}.cert-action-primary{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}.cert-action-primary:hover{background:var(--accent-bright);border-color:var(--accent-bright);color:var(--accent-text)}.cert-action:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media print{.cert-wrap,.desk,.desk .dk-main,.desk .dk-shell,body,html{background:#fff!important;background-image:none!important;color:#0e1b2c!important}.cert-wrap{padding:0!important;min-height:0!important}.cert-actions,.cert-meta,.desk .dk-side,footer,header,nav{display:none!important}.desk .dk-shell{grid-template-columns:1fr!important}.desk .dk-main{padding:0!important}.cert-paper,.cert-tpl{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;color-adjust:exact!important;box-shadow:none!important;max-width:none!important;width:100%!important;page-break-inside:avoid}.cert-paper{background:#fffdf8!important;border:2px solid #b8924d!important;color:#0e1b2c!important;padding:56px 64px!important}.cert-paper:after,.cert-paper:before{border-color:#b8924d!important}.cert-eyebrow{color:#b8924d!important}.cert-heading,.cert-level-line,.cert-sig-line,.cert-sig-name,.cert-sub{color:#0e1b2c!important}.cert-level-line em,.cert-recipient{color:#b8924d!important}.cert-stat{background:#fffdf8!important;border:1px solid rgba(14,27,44,.18)!important}.cert-verified{background:#fff!important;border-color:#2f7a47!important;color:#2f7a47!important}@page{size:letter landscape;margin:.25in}}