:root { --ink:#0F1B2A; --card:#13212F; --line:#D9DFE4; --page:#F3F5F6; --white:#fff; --muted:#4A5868; --muted-dark:#C9D5E1; --sky:#7DB6F2; --sky-tint:#E4EEF9; --blue:#1F5A9E; --warm:#FBF0DF; --warm-text:#8A4E05; --danger:#8A4E05; }
* { box-sizing:border-box; }
body { margin:0; min-width:320px; background:var(--page); color:var(--ink); font-family:"IBM Plex Sans",Arial,sans-serif; font-size:17px; line-height:1.55; }
a { color:inherit; } button,input,select,textarea { font:inherit; } button { cursor:pointer; } button:disabled { cursor:wait; opacity:.62; } :focus-visible { outline:3px solid var(--sky); outline-offset:3px; }
.test-body { min-height:100vh; background:var(--ink); }.admin-body { min-height:100vh; background:var(--page); }
.test-logo { display:inline-flex; align-items:center; gap:10px; color:var(--white); font-family:"Bricolage Grotesque",Arial,sans-serif; font-size:22px; font-weight:800; letter-spacing:.12em; text-decoration:none; }.test-logo svg { width:35px; height:35px; stroke:var(--sky); stroke-width:1.5; fill:none; }.test-logo svg path { stroke:var(--white); }
.access-shell { width:min(100% - 32px, 680px); margin:0 auto; padding:clamp(32px,8vw,86px) 0; }.access-shell .test-logo { margin-bottom:clamp(38px,7vw,76px); }.access-card { padding:clamp(28px,5vw,54px); border:1px solid #2A3A4C; border-radius:28px; background:var(--card); color:var(--white); }.access-card-wide { width:min(100%,820px); }.access-card h1,.test-shell h1,.admin-heading h1 { margin:0 0 18px; font-family:"Bricolage Grotesque",Arial,sans-serif; font-size:clamp(34px,6vw,58px); font-weight:800; letter-spacing:-.03em; line-height:1.02; }.access-card p { color:var(--muted-dark); }.test-eyebrow { margin:0 0 12px; color:var(--sky); font-family:"IBM Plex Mono",monospace; font-size:12px; font-weight:500; letter-spacing:.12em; text-transform:uppercase; }
form { margin-top:32px; } label { display:block; margin:18px 0 8px; font-weight:600; } input:not([type=checkbox]):not([type=radio]),select,textarea { width:100%; min-height:48px; padding:11px 13px; border:1px solid #AEBCC8; border-radius:10px; background:#fff; color:var(--ink); } textarea { min-height:auto; resize:vertical; line-height:1.5; } .test-button { display:inline-flex; align-items:center; justify-content:center; min-height:52px; margin-top:24px; padding:12px 22px; border:0; border-radius:999px; background:var(--sky); color:var(--ink); font-weight:600; }.form-error { min-height:1.5em; margin:14px 0 0; color:#FFD499!important; }.check-control { display:flex; gap:11px; align-items:flex-start; margin-top:22px; color:var(--muted-dark); font-size:15px; font-weight:400; }.check-control input { width:18px; height:18px; flex:none; margin-top:3px; accent-color:var(--sky); }.check-control a { color:var(--sky); }.notice { padding:16px 18px; border-left:3px solid var(--sky); background:#1B2B3B; font-size:16px; }.form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }.form-grid.three { grid-template-columns:repeat(3,minmax(0,1fr)); }
.test-header { position:sticky; top:0; z-index:5; border-bottom:1px solid #2A3A4C; background:var(--ink); color:var(--white); }.test-header-inner { display:flex; align-items:center; justify-content:space-between; gap:20px; width:min(100% - 32px,1200px); min-height:76px; margin:0 auto; }.timer-group { display:grid; grid-template-columns:auto auto; align-items:center; gap:2px 12px; font-family:"IBM Plex Mono",monospace; font-size:10px; letter-spacing:.1em; }.timer-group span { color:#9FB2C5; }.timer-group strong { color:var(--white); font-size:15px; letter-spacing:.04em; }.test-main { width:min(100% - 32px,1040px); margin:0 auto; padding:clamp(36px,7vw,74px) 0; }.test-shell { padding:clamp(24px,4vw,46px); border:1px solid var(--line); border-radius:24px; background:var(--white); }.module-heading { display:flex; justify-content:space-between; gap:24px; align-items:flex-start; padding-bottom:26px; border-bottom:1px solid var(--line); }.module-heading h1 { font-size:clamp(34px,5vw,54px); }.module-time { flex:none; margin:5px 0 0; padding:7px 10px; border:1px solid var(--line); border-radius:999px; color:var(--blue); font-family:"IBM Plex Mono",monospace; font-size:11px; letter-spacing:.08em; }.test-instruction { margin:28px 0; padding:19px 20px; border-radius:14px; background:var(--sky-tint); }.test-instruction p { margin:0; }.question-section { padding:34px 0; border-top:1px solid var(--line); }.test-instruction + .question-section { border-top:0; }.question-section h2 { margin:0 0 10px; font-family:"Bricolage Grotesque",Arial,sans-serif; font-size:30px; letter-spacing:-.025em; line-height:1.08; }.question-section > p { margin:0 0 22px; color:var(--muted); }.inbox-list,.decision-list { display:grid; gap:14px; }.inbox-item { display:grid; grid-template-columns:36px minmax(0,1fr) minmax(200px,.36fr); gap:17px; align-items:start; padding:20px; border:1px solid var(--line); border-radius:15px; }.item-number { color:var(--blue); font-family:"IBM Plex Mono",monospace; font-size:12px; letter-spacing:.1em; }.inbox-item h3,.decision-card h3 { margin:0 0 6px; font-size:18px; line-height:1.25; }.inbox-item p,.decision-card p { margin:0; color:var(--muted); font-size:15px; }.select-label { margin:0; font-weight:400; }.choice-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:9px; }.choice,.radio-row { display:flex; gap:10px; align-items:flex-start; margin:0; padding:12px 13px; border:1px solid var(--line); border-radius:10px; font-size:15px; font-weight:400; line-height:1.35; }.choice input,.radio-row input { width:17px; height:17px; flex:none; margin-top:1px; accent-color:var(--blue); }.field-help,.inline-note { color:var(--muted); font-size:14px; }.decision-card { padding:23px; border:1px solid var(--line); border-radius:15px; }.decision-card > .item-number { margin:0 0 13px; }.option-list { margin:17px 0; padding-left:24px; }.option-list li { margin:8px 0; color:var(--muted); font-size:15px; }.decision-selects { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }.decision-selects label { margin:0; font-size:14px; }.decision-selects select { min-height:43px; margin-top:6px; }.table-wrap { overflow-x:auto; border:1px solid var(--line); border-radius:14px; } table { width:100%; border-collapse:collapse; font-size:14px; } th,td { padding:12px 14px; border-bottom:1px solid var(--line); text-align:left; vertical-align:top; } th { background:var(--sky-tint); font-family:"IBM Plex Mono",monospace; font-size:10px; letter-spacing:.08em; text-transform:uppercase; } tr:last-child td { border-bottom:0; } fieldset { display:grid; gap:8px; margin:24px 0 0; padding:0; border:0; } legend { margin-bottom:10px; font-weight:600; }.compact-questions { display:grid; gap:8px; }.test-actions { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:16px; margin-top:4px; padding-top:24px; border-top:1px solid var(--line); }.test-actions .test-button { margin:0; }.save-status { margin:0; color:var(--muted); font-size:14px; }.loading,.empty-state { color:var(--muted); }.error-card { padding:36px; border-radius:20px; background:var(--white); }.sr-only { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
.admin-main { width:min(100% - 32px,1300px); margin:0 auto; padding:52px 0 72px; }.admin-heading { display:flex; justify-content:space-between; gap:32px; margin-bottom:34px; }.admin-heading h1 { font-size:clamp(38px,5vw,58px); }.admin-heading p { max-width:780px; margin:0; color:var(--muted); }.admin-layout { display:grid; grid-template-columns:minmax(280px,.68fr) minmax(0,1.32fr); gap:18px; }.admin-list,.admin-detail { min-height:600px; padding:26px; border:1px solid var(--line); border-radius:20px; background:var(--white); }.admin-list h2,.admin-detail h2 { margin:0 0 20px; font-family:"Bricolage Grotesque",Arial,sans-serif; letter-spacing:-.025em; }.results-list { display:grid; gap:9px; }.result-row { display:grid; gap:4px; width:100%; padding:15px; border:1px solid var(--line); border-radius:12px; background:var(--white); color:var(--ink); text-align:left; }.result-row:hover,.result-row.selected { border-color:var(--blue); background:var(--sky-tint); }.result-row span { color:var(--muted); font-size:13px; }.ko-warning { color:var(--danger)!important; font-weight:600; }.ko-clear { color:var(--blue)!important; }.quiet-button { padding:9px 12px; border:1px solid #50647A; border-radius:999px; background:transparent; color:var(--white); font-size:14px; }.detail-heading { display:flex; flex-wrap:wrap; justify-content:space-between; gap:8px 18px; align-items:flex-start; }.detail-heading p { width:100%; margin:-14px 0 0; color:var(--muted); }.export-link { padding:9px 12px; border:1px solid var(--line); border-radius:999px; color:var(--blue); font-size:14px; font-weight:600; text-decoration:none; }.score-summary { margin:24px 0; padding:20px; border-radius:14px; background:var(--sky-tint); }.score-summary p { margin:8px 0 0; color:var(--muted); font-size:14px; }.summary-score { font-family:"Bricolage Grotesque",Arial,sans-serif; font-size:32px; font-weight:800; letter-spacing:-.03em; }.detail-block { margin-top:18px; padding-top:18px; border-top:1px solid var(--line); }.detail-block h3 { margin:0 0 10px; font-size:18px; }.detail-block pre { margin:0; white-space:pre-wrap; overflow-wrap:anywhere; color:var(--muted); font-family:"IBM Plex Sans",Arial,sans-serif; font-size:14px; line-height:1.55; }.module-scores { display:grid; gap:8px; margin:0; }.module-scores div { display:flex; justify-content:space-between; gap:20px; padding-bottom:8px; border-bottom:1px solid var(--line); }.module-scores dt { color:var(--muted); }.module-scores dd { margin:0; font-weight:600; }
@media (max-width:760px) { .form-grid,.form-grid.three,.inbox-item,.admin-layout { grid-template-columns:1fr; }.decision-selects { grid-template-columns:1fr; }.inbox-item .select-label { margin-top:0; }.test-header-inner { min-height:66px; }.timer-group { gap:1px 8px; }.test-logo { font-size:18px; }.test-logo svg { width:29px; height:29px; }.module-heading { flex-direction:column; gap:8px; }.module-time { margin:0; }.test-actions { align-items:stretch; }.test-actions .test-button { width:100%; }.admin-list,.admin-detail { min-height:auto; }.admin-main { padding-top:34px; }.access-card { border-radius:20px; }.choice-grid { grid-template-columns:1fr; } }
@media (max-width:480px) { .access-shell { padding:32px 0 52px; }.access-shell .test-logo { margin-bottom:36px; }.access-card { padding:24px; }.access-card h1,.test-shell h1,.admin-heading h1 { font-size:clamp(30px,8vw,40px); overflow-wrap:anywhere; hyphens:auto; }.test-main { padding:28px 0 48px; }.test-shell { padding:20px; border-radius:20px; }.question-section { padding:28px 0; }.question-section h2 { font-size:27px; }.choice,.radio-row { padding:12px; }.editor-panel { padding:20px; }.editor-card { padding:16px; } }
@media (prefers-reduced-motion:reduce) { *,*:before,*:after { scroll-behavior:auto!important; transition:none!important; } }

.access-shell-wide{width:min(100% - 32px,920px)}.start-clock{display:inline-grid;gap:2px;margin:0 0 24px;padding:12px 15px;border:1px solid #50647A;border-radius:12px;color:var(--sky);font-family:"IBM Plex Mono",monospace}.start-clock span,.start-clock small{font-size:10px;letter-spacing:.1em;text-transform:uppercase}.start-clock strong{font-size:31px;letter-spacing:.04em}.start-clock small{color:var(--muted-dark);letter-spacing:0;text-transform:none}.portal-fieldset{margin-top:28px}.portal-fieldset legend{font-size:17px}.portal-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px}.portal-grid label{margin:0;font-size:14px}.metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.metric-grid>div{padding:16px;border:1px solid var(--line);border-radius:12px}.editor-panel{margin-top:28px;padding:26px;border:1px solid var(--line);border-radius:20px;background:var(--white)}.editor-panel h2{margin:0 0 8px;font-family:"Bricolage Grotesque",Arial,sans-serif;letter-spacing:-.025em}.editor-controls{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.editor-card{margin-top:18px;padding:20px;border:1px solid var(--line);border-radius:14px}.editor-card h3{margin:0 0 10px;font-family:"Bricolage Grotesque",Arial,sans-serif}.editor-options{display:grid;gap:10px}.editor-options label{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:8px;margin:0;font-size:14px}.editor-options input[type=radio],.editor-options input[type=checkbox]{width:18px;height:18px;margin:0;accent-color:var(--blue)}.editor-section{margin-top:28px;padding-top:20px;border-top:1px solid var(--line)}.admin-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.admin-actions .test-button{margin:0}.profile-list{display:grid;gap:10px;margin:0}.profile-list div{padding:10px 0;border-bottom:1px solid var(--line)}.profile-list dt{font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.profile-list dd{margin:4px 0 0}@media(max-width:760px){.metric-grid{grid-template-columns:1fr}.editor-options label{grid-template-columns:28px minmax(0,1fr)}}
