:root{--navy-950:#0b1f33;--navy-900:#102a43;--navy-800:#183b56;--powder-200:#c9ddeb;--powder-100:#e7f0f6;--cream-100:#f6f1e7;--cream-50:#fcfaf5;--paper:#fffdf8;--orange-500:#d9662b;--orange-100:#f5dfd2;--ink:#172839;--muted:#5b6975;--line:#c8c8c0;--success:#287255;--danger:#9b2c2c;color:var(--ink);background:var(--cream-100);font-synthesis:none;font-family:Avenir Next,Avenir,Segoe UI,Helvetica,Arial,sans-serif}*{box-sizing:border-box}html{background:var(--cream-100);min-width:320px}body{background:linear-gradient(90deg, transparent 0 47px, #d9662b21 47px 48px, transparent 48px), var(--cream-100);min-width:320px;min-height:100vh;margin:0}button,input,textarea,select{color:inherit;font:inherit}button,input,textarea{min-height:44px}button{cursor:pointer}button:disabled{cursor:not-allowed}:focus-visible{outline:3px solid var(--orange-500);outline-offset:3px}::selection{color:var(--paper);background:var(--navy-800)}h1,h2,p{margin-top:0}h1,h2{color:var(--navy-950);font-family:Georgia,Times New Roman,serif;font-weight:600}h1{letter-spacing:-.035em;margin-bottom:1rem;font-size:clamp(2rem,5vw,3.5rem);line-height:1.02}h2{font-size:1.35rem}p,li{line-height:1.6}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.candidate-page{min-height:100vh;padding:1.25rem clamp(1rem,4vw,4rem) 3rem}.admin-page,.admin-denied{width:min(100%,92rem);min-height:100vh;margin:0 auto;padding:clamp(1.25rem,4vw,3.5rem)}.admin-title,.admin-section-heading,.admin-detail-grid,.admin-dashboard-grid{gap:1.5rem;display:grid}.admin-title{border-bottom:4px solid var(--orange-500);grid-template-columns:1fr auto;align-items:end;padding:0 0 1.5rem 1.25rem}.admin-eyebrow,.admin-file-count,.candidate-table th,.attempt-timeline>li>div>p{color:var(--navy-800);letter-spacing:.12em;text-transform:uppercase;margin:0 0 .45rem;font-size:.72rem;font-weight:800}.admin-title>div>p:last-child{color:var(--muted);margin:0}.admin-file-count{background:var(--powder-100);margin:0;padding:.5rem .7rem}.admin-dashboard-grid{grid-template-columns:minmax(16rem,24rem) minmax(0,1fr);margin-top:2rem}.admin-invitation-form,.admin-files,.candidate-detail,.attempt-actions{background:var(--paper);border:1px solid #102a4340;box-shadow:0 12px 28px #0b1f3312}.admin-invitation-form{border-top:5px solid var(--navy-900);align-self:start;gap:.8rem;padding:1.35rem;display:grid}.admin-invitation-form h2,.admin-files h2,.attempt-actions h2{margin:0}.admin-invitation-form label,.admin-confirm label{color:var(--navy-900);gap:.35rem;font-size:.8rem;font-weight:800;display:grid}.admin-primary,.admin-secondary,.admin-danger{border:1px solid var(--navy-900);border-radius:0;min-height:42px;padding:.6rem .85rem;font-size:.82rem;font-weight:800}.admin-primary{color:var(--paper);background:var(--navy-900)}.admin-secondary{color:var(--navy-900);background:0 0}.admin-danger{color:#fff;border-color:var(--danger);background:var(--danger)}.admin-form-message{color:var(--navy-800);margin:0;font-size:.88rem;font-weight:700}.admin-files{min-width:0;overflow:hidden}.admin-section-heading{border-bottom:1px solid var(--line);grid-template-columns:1fr auto;align-items:end;padding:1.25rem 1.25rem 1rem}.admin-table-scroll{overflow-x:auto}.candidate-table{border-collapse:collapse;width:100%;min-width:65rem;font-size:.84rem}.candidate-table th,.candidate-table td{text-align:left;vertical-align:top;border-bottom:1px solid #e1ded5;padding:.85rem 1rem}.candidate-table thead th{background:var(--powder-100);white-space:nowrap}.admin-sort{min-height:0;color:inherit;font:inherit;text-transform:inherit;letter-spacing:inherit;background:0 0;border:0;padding:0}.candidate-table tbody th{min-width:13rem;color:var(--navy-900);letter-spacing:0;text-transform:none;font-size:.86rem}.candidate-table tbody th a{color:inherit;font-size:1rem}.candidate-table tbody th span{color:var(--muted);letter-spacing:0;margin-top:.25rem;font-size:.78rem;font-weight:500;display:block}.admin-status{background:var(--powder-100);color:var(--navy-900);text-transform:capitalize;padding:.25rem .45rem;font-size:.72rem;font-weight:800;display:inline-block}.status-submitted{color:var(--success);background:#d8eadf}.status-revoked{background:var(--orange-100);color:var(--danger)}.admin-detail-grid{grid-template-columns:minmax(0,1fr) minmax(15rem,20rem);align-items:start;margin-top:1.5rem}.admin-back{color:var(--navy-900);font-size:.85rem;font-weight:800}.candidate-detail{padding:clamp(1.25rem,3vw,2.25rem)}.candidate-detail header{border-bottom:1px solid var(--line);padding-bottom:1.2rem}.candidate-detail header p:last-child{color:var(--muted);margin:0}.attempt-timeline{gap:1.25rem;margin:1.5rem 0 0;padding:0;list-style:none;display:grid}.attempt-timeline>li{border-left:3px solid var(--powder-200);padding-left:1rem}.attempt-timeline h2{text-transform:capitalize;margin-bottom:.4rem}.attempt-timeline>li>div>p:last-child{color:var(--muted);letter-spacing:0;text-transform:none;font-size:.88rem}.score-profile{background:var(--powder-100);margin-top:1rem;padding:1rem}.score-profile h3,.response-review h3{margin-bottom:.8rem}.score-profile dl{flex-wrap:wrap;gap:.5rem;margin:0;display:flex}.score-profile dl div{background:var(--paper);min-width:3.25rem;padding:.45rem}.score-profile dt{color:var(--muted);font-size:.7rem;font-weight:800}.score-profile dd{color:var(--navy-900);margin:.15rem 0 0;font-size:1.25rem;font-weight:800}.response-review{margin-top:1rem}.response-review article{border-top:1px solid var(--line);padding:1rem 0}.response-review h4{color:var(--navy-900);margin:.25rem 0 .75rem}.response-review pre{white-space:pre-wrap;color:var(--ink);background:var(--cream-50);padding:1rem;font:.9rem/1.55 Avenir Next,sans-serif;overflow-x:auto}.response-review aside{border-left:3px solid var(--orange-500);background:var(--orange-100);padding:.8rem 1rem}.response-review aside p{margin:.35rem 0 0}.attempt-actions{gap:.75rem;padding:1.25rem;display:grid;position:sticky;top:1rem}.admin-confirm{border:1px solid var(--orange-500);background:var(--cream-50);gap:.7rem;padding:.9rem;display:grid}.admin-confirm p{margin:0;font-size:.88rem}.admin-denied{width:min(100%,44rem);padding-top:20vh}.admin-denied p:last-child{color:var(--muted)}@media (max-width:760px){.admin-title,.admin-dashboard-grid,.admin-detail-grid{grid-template-columns:1fr}.admin-title{padding-left:0}.admin-file-count{justify-self:start}.attempt-actions{position:static}.admin-page{padding:1rem}.candidate-detail{padding:1.2rem}}.site-masthead{width:min(100%,88rem);min-height:48px;color:var(--navy-800);border-bottom:1px solid #102a4340;justify-content:space-between;align-items:center;margin:0 auto 2rem;display:flex}.site-masthead>p:last-child{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:700}.p3-mark,.wordmark{color:var(--navy-950);letter-spacing:.16em;margin:0;font-size:1.25rem;font-weight:900}.access-page,.briefing-page,.completion-page{flex-direction:column;display:flex}.access-panel,.briefing-file,.completion-file{background:var(--paper);border:1px solid #102a4340;width:min(100%,48rem);margin:auto;box-shadow:0 18px 50px #0b1f331a}.access-panel{border-top:5px solid var(--navy-900);padding:clamp(1.5rem,5vw,3.75rem)}.access-panel:before{background:var(--orange-500);content:"";width:3.25rem;height:.35rem;margin:-.1rem 0 2.25rem;display:block}.file-kicker,.file-header,.question-header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.file-kicker{color:var(--navy-800);letter-spacing:.13em;text-transform:uppercase;margin-bottom:1.25rem;font-size:.69rem;font-weight:800}.lede,.briefing-intro{max-width:42rem;color:var(--muted);font-size:1.05rem}.candidate-form{gap:.65rem;margin-top:2rem;display:grid}.candidate-form label,.written-field>label,.numeric-field>label,.allocation-grid label{color:var(--navy-900);letter-spacing:.035em;font-size:.82rem;font-weight:800}input,textarea{background:#fff;border:1px solid #8b9398;border-radius:3px;width:100%}input{padding:.7rem .8rem}textarea{resize:vertical;min-height:11rem;padding:.85rem;line-height:1.55}input:hover,textarea:hover{border-color:var(--navy-800)}input:disabled,textarea:disabled{color:#6d747a;background:#eeece7}.field-note,.cooldown-copy,.no-back-note,.rail-note,.receipt-note{color:var(--muted);margin:0;font-size:.8rem;line-height:1.5}.primary-action,.secondary-action{border:1px solid var(--navy-950);letter-spacing:.02em;border-radius:2px;min-height:48px;padding:.75rem 1.25rem;font-weight:800}.primary-action{color:#fff;background:var(--navy-950);box-shadow:4px 4px 0 var(--orange-500)}.link-action{justify-content:center;align-items:center;min-height:48px;text-decoration:none;display:inline-flex}.primary-action:hover:not(:disabled){background:var(--navy-800);box-shadow:5px 5px 0 var(--orange-500);transform:translate(-1px,-1px)}.primary-action:disabled{color:#c5cbd0;background:#64717d;box-shadow:3px 3px #aeb4b7}.secondary-action{color:var(--navy-900);background:var(--powder-100)}.text-action,.status-action,.rank-action{min-height:44px;color:var(--navy-900);text-underline-offset:3px;background:0 0;border:0;font-weight:800;text-decoration:underline;text-decoration-thickness:1px}.text-action:disabled,.rank-action:disabled{color:#7b8389;text-decoration:none}.form-status{min-height:1.5rem;color:var(--success);margin:.2rem 0 0;font-size:.85rem;font-weight:700}.is-error,.form-status.is-error{color:var(--danger)}.access-secondary-actions{flex-wrap:wrap;justify-content:space-between;gap:.5rem;display:flex}.access-footer{width:min(100%,48rem);color:var(--muted);letter-spacing:.08em;text-align:center;text-transform:uppercase;margin:2rem auto 0;font-size:.72rem}.otp-fieldset,.choice-list,.allocation-field{border:0;min-width:0;padding:0}.otp-fieldset legend{color:var(--navy-900);margin-bottom:.75rem;font-size:.82rem;font-weight:800}.otp-row{grid-template-columns:repeat(6,minmax(0,1fr));gap:clamp(.3rem,2vw,.65rem);display:grid}.otp-row input{min-height:clamp(46px,12vw,58px);color:var(--navy-950);text-align:center;padding:.35rem;font-size:clamp(1.1rem,4vw,1.5rem);font-weight:800}.file-header{color:#fff;background:var(--navy-950);border-bottom:4px solid var(--orange-500);padding:1rem clamp(1rem,4vw,2rem)}.file-label,.file-code,.file-status{margin:0}.file-label{color:var(--powder-200);letter-spacing:.15em;text-transform:uppercase;font-size:.66rem;font-weight:800}.file-code{letter-spacing:.08em;margin-top:.15rem;font-family:SFMono-Regular,Consolas,monospace;font-size:.92rem}.file-status{letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:.5rem;font-size:.75rem;font-weight:800;display:flex}.file-status span{background:var(--orange-500);border:2px solid;border-radius:50%;width:.65rem;height:.65rem}.file-status.is-locked span{background:var(--success)}.briefing-body,.completion-body{padding:clamp(1.5rem,5vw,3.75rem)}.eyebrow,.question-section,.question-number,.question-id,.rail-label,.fact-label,.position-label{color:var(--navy-800);letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:.67rem;font-weight:850}.briefing-facts{border:1px solid var(--line);grid-template-columns:repeat(2,1fr);margin:2rem 0;display:grid}.briefing-facts section{padding:1.25rem}.briefing-facts section+section{border-left:1px solid var(--line)}.briefing-facts p:last-child{color:var(--muted);margin-bottom:0;font-size:.85rem}.fact-value{color:var(--navy-950);margin:.3rem 0 .4rem;font-family:Georgia,Times New Roman,serif;font-size:1.6rem}.briefing-rules{background:var(--powder-100);border-left:4px solid var(--navy-800);padding:1.5rem}.briefing-rules ul{gap:.75rem;margin:0;padding-left:1.25rem;display:grid}.briefing-action-row{justify-content:space-between;align-items:center;gap:1.5rem;margin-top:2rem;display:flex}.briefing-action-row p{color:var(--muted);margin:0;font-size:.8rem}.assessment-layout{grid-template-columns:minmax(14rem,18rem) minmax(0,52rem);justify-content:center;align-items:start;gap:clamp(1.25rem,4vw,4rem);width:min(100%,88rem);margin:0 auto;display:grid}.status-rail{color:#fff;background:var(--navy-950);border-top:4px solid var(--orange-500);box-shadow:8px 8px 0 var(--powder-200);position:sticky;top:1rem;overflow:hidden}.rail-file,.rail-item{padding:1.25rem}.rail-file,.rail-item+.rail-item{border-bottom:1px solid #c9ddeb38}.rail-label{color:var(--powder-200)}.rail-value,.timer-value{color:#fff;letter-spacing:.06em;margin:.25rem 0 0;font-family:SFMono-Regular,Consolas,monospace;font-size:1.2rem;font-weight:700;display:block}.timer-value{font-size:1.55rem}.rail-note{color:var(--powder-200);margin-top:.5rem}.progress-track{background:#c9ddeb3d;height:5px;margin-top:.8rem;overflow:hidden}.progress-track span{background:var(--orange-500);height:100%;display:block}.rail-save{border-bottom:0}.autosave-status{color:#fff;grid-template-columns:auto 1fr;align-items:center;gap:.5rem;margin-top:.5rem;font-size:.8rem;line-height:1.4;display:grid}.autosave-status .status-action{min-height:44px;color:var(--powder-200);text-align:left;grid-column:2;padding:0}.status-dot{border:2px solid;border-radius:50%;width:.62rem;height:.62rem}.is-saving .status-dot,.is-idle .status-dot{background:0 0}.is-saved .status-dot{background:#6ac49e}.is-failed .status-dot,.is-conflict .status-dot{background:var(--orange-500)}.assessment-workspace{background:var(--paper);border:1px solid #102a4338;min-width:0;box-shadow:0 14px 38px #0b1f3314}.question-document{padding:clamp(1.4rem,5vw,3.5rem)}.scenario-document{min-height:34rem}.scenario-file-header{background:var(--powder-100);border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:1rem;padding:1rem clamp(1.4rem,5vw,3.5rem);display:flex}.scenario-file-label{color:var(--navy-950);letter-spacing:.08em;text-transform:uppercase;margin:.25rem 0 0;font-family:SFMono-Regular,Consolas,monospace;font-size:.78rem;font-weight:800}.scenario-body{padding:clamp(1.4rem,5vw,3.5rem)}.scenario-blocks{border:1px solid var(--line);border-top:4px solid var(--navy-900);box-shadow:inset 5px 0 0 var(--powder-200);background:#fff;margin-top:2rem;padding:clamp(1.1rem,4vw,2rem)}.scenario-copy{white-space:pre-line;margin-bottom:1.25rem}.scenario-copy:last-child{margin-bottom:0}.scenario-action-row{justify-content:space-between;align-items:center;gap:1.5rem;margin-top:2rem;display:flex}.scenario-action-row p{max-width:30rem;color:var(--muted);margin:0;font-size:.8rem}.question-header{border-bottom:1px solid var(--line);margin-bottom:1.5rem;padding-bottom:1rem}.question-number{color:var(--muted);margin-top:.25rem}.question-id{background:var(--powder-100);padding:.3rem .45rem;font-family:SFMono-Regular,Consolas,monospace}.question-copy{white-space:pre-line}.position-block{border:1px solid var(--line);border-left:4px solid var(--powder-200);background:#fff;margin:1.25rem 0;padding:1.15rem 1.25rem}.position-block p:last-child{white-space:pre-line;margin:.35rem 0 0}.content-list{gap:.5rem;display:grid}.table-scroll{border:1px solid var(--line);width:100%;margin:1.5rem 0;overflow-x:auto}table{border-collapse:collapse;background:#fff;width:100%;min-width:36rem}caption,th,td{border-bottom:1px solid var(--line);text-align:left;padding:.7rem}caption{color:var(--navy-900);background:var(--powder-100);font-weight:800}th{color:var(--navy-900);font-size:.8rem}td{font-size:.85rem}.response-section{border-top:3px double var(--line);margin-top:2rem;padding-top:1.75rem}.choice-list{gap:.75rem;display:grid}.choice-card{border:1px solid var(--line);cursor:pointer;background:#fff;grid-template-columns:auto 1fr;gap:.85rem;min-height:54px;padding:1rem;display:grid}.choice-card:has(input:checked){background:var(--powder-100);border-color:var(--navy-800);box-shadow:inset 4px 0 0 var(--orange-500)}.choice-card input{width:1.25rem;min-height:1.25rem;accent-color:var(--navy-900);margin:.1rem 0 0}.choice-cost{color:var(--muted);margin-top:.4rem;font-size:.85rem;font-weight:500;line-height:1.5;display:block}.written-field{gap:.55rem;margin-top:1.5rem;display:grid}.ranking-list{counter-reset:rank;gap:.6rem;padding:0;list-style:none;display:grid}.ranking-list li{border:1px solid var(--line);background:#fff;grid-template-columns:2.25rem minmax(0,1fr) auto;align-items:center;min-height:58px;display:grid}.rank-number{color:#fff;background:var(--navy-900);place-items:center;height:100%;min-height:58px;font-family:SFMono-Regular,Consolas,monospace;font-weight:800;display:grid}.rank-label{padding:.75rem}.rank-actions{display:flex}.rank-action{border-left:1px solid var(--line);width:44px;padding:0;font-size:1.15rem;text-decoration:none}.confirm-order{margin-top:1rem}.allocation-total{color:var(--navy-950);background:var(--orange-100);border-left:4px solid var(--orange-500);margin-bottom:1.25rem;padding:.8rem 1rem;font-size:1.1rem;font-weight:850}.allocation-total.is-complete{border-left-color:var(--success);background:#dcefe7}.allocation-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.allocation-grid label{border:1px solid var(--line);background:#fff;gap:.45rem;padding:.8rem;display:grid}.numeric-field{gap:.55rem;display:grid}.numeric-input-wrap{align-items:center;max-width:18rem;display:flex}.numeric-input-wrap span{color:#fff;background:var(--navy-900);align-self:stretch;place-items:center;min-width:3rem;font-weight:800;display:grid}.assessment-actions{background:var(--powder-100);border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:1.5rem;padding:1.25rem clamp(1.4rem,5vw,3.5rem);display:flex}.assessment-actions>div{min-width:0}.assessment-actions .primary-action{flex:none}.centered-state{text-align:center;align-content:center;place-items:center;display:grid}.completion-body{text-align:center}.completion-check{color:#fff;background:var(--success);width:4.5rem;height:4.5rem;box-shadow:5px 5px 0 var(--powder-200);border-radius:50%;place-items:center;margin:0 auto 1.5rem;font-size:2rem;font-weight:900;display:grid}.completion-message{max-width:34rem;color:var(--navy-800);margin:0 auto 2rem;font-size:1.1rem}.receipt-details{border-top:1px solid var(--line);text-align:left;margin:0 auto 2rem}.receipt-details>div{border-bottom:1px solid var(--line);grid-template-columns:minmax(9rem,.7fr) 1.3fr;gap:1rem;padding:.9rem 0;display:grid}.receipt-details dt{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;font-size:.7rem;font-weight:850}.receipt-details dd{color:var(--navy-950);margin:0;font-weight:750}.assessment-shell{place-items:center;min-height:100vh;padding:2rem;display:grid}.assessment-card{background:var(--paper);border:1px solid var(--line);border-top:5px solid var(--navy-900);width:min(100%,32rem);padding:2.5rem;box-shadow:0 1rem 3rem #0b1f331a}.assessment-shell .wordmark{position:fixed;top:1.5rem;left:1.5rem}.assessment-card form{gap:.5rem;margin-top:2rem;display:grid}@media (max-width:760px){body{background:var(--cream-100)}.candidate-page{padding:.75rem .75rem 2rem}.site-masthead{margin-bottom:1rem}.site-masthead>p:last-child{text-align:right;max-width:12rem}.assessment-layout{grid-template-columns:minmax(0,1fr);gap:.75rem}.status-rail{box-shadow:none;grid-template-columns:repeat(3,minmax(0,1fr));display:grid;position:static}.rail-file,.rail-item{border-right:1px solid #c9ddeb38;padding:.8rem}.rail-file,.rail-item+.rail-item{border-bottom:0}.rail-save{border-top:1px solid #c9ddeb38;grid-column:1/-1}.rail-note{display:none}.rail-value,.timer-value{font-size:.95rem}.assessment-actions,.briefing-action-row,.scenario-action-row{flex-direction:column;align-items:stretch}.assessment-actions .primary-action,.briefing-action-row .primary-action,.scenario-action-row .primary-action{width:100%}.briefing-facts{grid-template-columns:1fr}.briefing-facts section+section{border-top:1px solid var(--line);border-left:0}.allocation-grid{grid-template-columns:1fr}}@media (max-width:390px){h1{font-size:1.85rem}.site-masthead>p:last-child{max-width:9rem;font-size:.59rem}.access-panel,.briefing-file,.completion-file,.assessment-workspace{border-left:0;border-right:0}.access-panel,.briefing-body,.completion-body,.question-document,.scenario-body{padding:1.25rem 1rem}.file-kicker{gap:.5rem;font-size:.6rem}.otp-row{gap:.28rem}.otp-row input{min-height:46px;padding:.2rem}.status-rail{grid-template-columns:repeat(2,minmax(0,1fr))}.rail-item:nth-child(3){border-top:1px solid #c9ddeb38}.rail-save{grid-column:auto}.ranking-list li{grid-template-columns:2rem minmax(0,1fr)}.rank-actions{border-top:1px solid var(--line);grid-column:1/-1;justify-content:flex-end}.receipt-details>div{grid-template-columns:1fr;gap:.25rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
