:root{--sun:#ffcc00;--ink:#222;--muted:#687078;--paper:#f7f7f4;--bs-primary:#ffcc00;--bs-primary-rgb:255,204,0;--bs-body-color:#222;--bs-body-bg:#f7f7f4;--bs-link-color:#343434;--bs-link-hover-color:#856900;--bs-border-color:#dedfd9;--bs-border-radius:.65rem;--bs-body-font-family:system-ui,-apple-system,"Segoe UI",sans-serif}body{min-height:100vh}.shell{max-width:1280px;padding-left:36px;padding-right:36px}.brand-header{background:white;border-bottom:1px solid #e8e8e2;padding:24px 0}.brand{display:flex;align-items:center;gap:24px;text-decoration:none;color:var(--ink)}.brand img{width:146px;height:auto}.brand-divider{width:1px;height:27px;background:#dedfd9}.brand-caption{font-size:14px;color:#72756e}.app-footer{margin-left:auto;margin-right:auto;display:flex;justify-content:space-between;color:#85897f;font-size:12px;padding-top:24px;padding-bottom:24px;border-top:1px solid #e1e2da;margin-top:30px}.local-banner{background:#fff2bc;color:#705b18;text-align:center;font-size:12px;padding:7px}.eyebrow{font-size:11px;font-weight:750;letter-spacing:1.8px;text-transform:uppercase;color:#767b6e}h1,h2,h3{font-weight:760;letter-spacing:-.03em}h1{font-size:clamp(36px,5vw,66px);line-height:1.08}.yellow-underline{position:relative;z-index:1;display:inline-block}.yellow-underline:after{content:"";height:.26em;position:absolute;bottom:.03em;left:-.04em;right:-.07em;background:var(--sun);z-index:-1;border-radius:3px}.surface{background:white;border:1px solid #e1e2db;border-radius:18px;box-shadow:0 2px 6px #20252003}.btn{font-weight:650}.btn-primary{--bs-btn-color:#222;--bs-btn-bg:#ffcc00;--bs-btn-border-color:#ffcc00;--bs-btn-hover-color:#222;--bs-btn-hover-bg:#edbe00;--bs-btn-hover-border-color:#edbe00;--bs-btn-active-color:#222;--bs-btn-active-bg:#e3b600;--bs-btn-active-border-color:#e3b600;--bs-btn-disabled-color:#222;--bs-btn-disabled-bg:#ffcc00;--bs-btn-disabled-border-color:#ffcc00}.btn-lg{font-size:15px;padding:14px 22px}.form-control,.form-select{padding:11px 13px;border-color:#d6d9d0;background:#fff;min-height:45px;font-size:15px}.form-control:focus,.form-select:focus{border-color:#d5b100;box-shadow:0 0 0 .22rem #ffcc0025}.form-control[readonly]{background:#f4f5f1;color:#73776d}.form-label{font-weight:600;font-size:15px}.form-label.small{font-size:13px}.form-text{font-size:12px;color:#7a7f73}.form-check-input:checked{background-color:#343a30;border-color:#343a30}.form-check-input:focus{box-shadow:0 0 0 .2rem #ffcc0030;border-color:#d5b100}.landing-layout{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:70px;min-height:64vh}.hero-copy{padding:30px 0}.landing-card{padding:40px;max-width:510px}.sun-symbol{font-size:56px;color:#8b6e00;background:#fff5c7;width:96px;height:96px;text-align:center;line-height:88px;border-radius:28px}.thanks-card{max-width:670px;margin-top:35px;margin-bottom:55px;padding:65px 35px}.completion-icon{background:#ffcc00;border-radius:50%;width:84px;height:84px;display:inline-grid;place-items:center;font-size:42px;font-weight:700}.candidate-top{display:flex;justify-content:space-between;align-items:center;gap:20px}.deadline{padding:10px 14px;border:1px solid #dedfd7;background:white;border-radius:25px;font-size:12px;white-space:nowrap}.deadline-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#c5a012;margin-right:7px}.intro-hero{padding:30px 0}.intro-feature{display:flex;gap:18px;margin-top:22px;align-items:start}.intro-feature span{border-radius:50%;min-width:30px;height:30px;display:grid;place-items:center;background:#ffe78a;font-size:11px;font-weight:750}.intro-feature p{margin:2px 0;font-size:14px;color:#62685d}.chapter-preview{padding-left:26px;font-size:15px}.chapter-preview li{padding:9px 0}.chapter-preview li::marker{font-weight:750;color:#ad8600}.privacy-text{font-size:13px;color:#686e62;line-height:1.7}.privacy-text p{margin-bottom:10px}.workspace-layout{display:grid;grid-template-columns:285px minmax(0,1fr);gap:45px}.sidebar-inner{position:sticky;top:24px;padding-top:8px}.progress{height:6px;background:#e6e8df}.progress-bar{background:var(--sun)}.chapter-nav{display:flex;flex-direction:column;gap:8px}.chapter-link{display:flex;gap:12px;align-items:center;padding:14px 12px;border-radius:12px;text-decoration:none;color:#5e6558;font-size:13px;font-weight:600}.chapter-link.active{background:#ffed9c;color:#222}.chapter-link:hover{background:#fff4c7;color:#222}.chapter-link small{display:block;font-weight:400;font-size:11px;color:#7b826f;margin-top:4px}.chapter-index{width:31px;min-width:31px;height:31px;border:1px solid #d9ddd0;border-radius:50%;display:grid;place-items:center;font-size:12px;background:white;color:#464f3e;font-weight:750}.active .chapter-index{background:#222;color:#ffcc00;border-color:#222}.section-heading{margin:4px 0 18px}.section-heading h1{font-size:34px}.save-status{font-size:12px;color:#65755d;text-align:right;margin-bottom:12px;min-height:20px}.save-failed{color:#a33928}.question-group{padding:30px;margin-bottom:22px}.group-title{font-size:17px;padding-bottom:18px;border-bottom:1px solid #edf0e8;margin-bottom:6px}.question{padding:21px 0;border-bottom:1px solid #f0f1eb}.question:last-child{border-bottom:0;padding-bottom:0}.required-mark{color:#8a6a00}.optional-badge{font-size:10px;font-weight:500;letter-spacing:.2px;color:#93998b;white-space:nowrap;margin-top:3px}.options-fieldset{display:flex;flex-wrap:wrap;gap:10px;border:0;padding:0;margin:0}.option-tile{display:flex;gap:9px;align-items:center;background:white;border:1px solid #dce0d4;padding:11px 14px;border-radius:9px;font-size:14px;cursor:pointer}.option-tile:has(input:checked){border-color:#d4aa00;background:#fff8dc}.option-tile .form-check-input{margin:0;float:none;flex-shrink:0}.repeat-row{padding:18px;background:#f8f9f5;border:1px solid #e3e6db;border-radius:10px;margin-bottom:12px}.repeat-row .form-label{display:block}.form-bottom{padding:8px 0}.metric{background:white;border:1px solid #e1e2db;border-radius:14px;padding:22px;height:100%}.metric small{display:block;color:#7e8575;font-size:12px;margin-bottom:10px}.metric strong{display:block;font-size:30px;letter-spacing:-.02em}.admin-table{overflow:hidden}.table thead th{background:#f3f5ed;font-size:11px;font-weight:700;color:#7b816f;text-transform:uppercase;letter-spacing:.6px;padding:14px 20px;white-space:nowrap}.table td{padding:18px 20px;font-size:14px}.empty-state{text-align:center;padding:60px 25px!important;color:#859078!important}.state-pill{background:#f1f2eb;color:#626d57;padding:6px 9px;font-size:11px;border-radius:6px;white-space:nowrap}.state-pill.completed{background:#e6f1de;color:#3c6530}.back-link{font-size:13px;text-decoration:none;color:#6c735f}.form-width{max-width:900px}.hours-input{width:105px}.detail-top{display:flex;justify-content:space-between;align-items:center}.answer-section{padding:0 28px}.answer-section-heading{padding:22px 0;display:flex;align-items:center;gap:12px;border-bottom:1px solid #e7ebe0}.answer-row{padding:18px 0;border-bottom:1px solid #f0f2eb;break-inside:avoid}.answer-row:last-child{border:0}.answer-row h3{font-size:13px;font-weight:650}.answer-value{white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.65}.mail-body{font:14px/1.75 system-ui,sans-serif;white-space:pre-wrap;overflow-wrap:anywhere;background:#f6f7f2;border-radius:12px;padding:24px}[hidden]{display:none!important}a:focus-visible,button:focus-visible{outline:3px solid #bc9700;outline-offset:3px}.text-secondary{color:#747b6c!important}@media(max-width:991px){.workspace-layout{grid-template-columns:1fr;gap:26px}.sidebar-inner{position:static}.chapter-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr))}.chapter-link{flex-direction:column;text-align:center;font-size:11px;padding:10px 5px;gap:8px}.chapter-link small{display:none}.sidebar-inner>p{display:none}.landing-layout{gap:30px}.landing-card{padding:30px}}@media(max-width:575px){.shell{padding-left:18px;padding-right:18px}.brand-header{padding:18px 0}.brand img{width:112px}.brand-divider,.brand-caption{display:none}.candidate-top{align-items:start;flex-direction:column;gap:12px}.deadline{font-size:11px}.landing-layout{grid-template-columns:1fr;gap:20px;min-height:auto}.hero-copy{padding:10px 0}.hero-copy h1{font-size:43px}.landing-card{padding:25px}.chapter-link{font-size:10px;line-height:1.4}.chapter-index{width:26px;min-width:26px;height:26px}.section-heading h1{font-size:28px}.question-group{padding:22px 18px;border-radius:14px}.form-label{font-size:14px}.optional-badge{font-size:9px}.form-bottom{align-items:stretch!important}.form-bottom .btn{font-size:12px;padding:13px 12px}.metric{padding:16px}.metric strong{font-size:26px}.answer-section{padding:0 18px}.app-footer{flex-direction:column;gap:8px}.intro-hero{padding:10px 0}.thanks-card{padding:40px 22px}.table td{padding:14px 16px}.answer-section-heading{flex-wrap:wrap}.answer-section-heading h2{max-width:80%}}@media print{@page{size:A4;margin:15mm}body{background:white;font-size:10pt}.brand-header,.app-footer,.local-banner,.no-print{display:none!important}.shell{padding:0;max-width:none}.surface{box-shadow:none}.answer-section{border:0;border-radius:0;padding:0}.answer-section-heading{break-after:avoid;border-bottom:2px solid #999}.answer-row{break-inside:avoid}.metric{padding:10px;border:0}.answer-value{font-size:10pt}.answer-row h3{font-size:10pt}.page-heading{margin-top:0!important}.answer-section-heading h2{font-size:13pt}}

.chapter-name-short{display:none}@media(max-width:575px){.chapter-name-full{display:none}.chapter-name-short{display:inline}}

/* Compact applicant layout; administration keeps its own header. */
.candidate-app .field-error:empty{display:none}
.candidate-main{padding-top:24px;padding-bottom:24px}.candidate-app .workspace-layout{grid-template-columns:250px minmax(0,1fr);gap:32px}.candidate-app .sidebar-inner{padding-top:0;top:24px}.sidebar-brand{margin-bottom:20px}.sidebar-brand img{width:132px;height:auto}.candidate-context{font-size:14px;margin-bottom:20px;line-height:1.6;overflow-wrap:anywhere}.candidate-context strong{display:block;font-size:14px}.candidate-context .deadline{padding:0;border:0;border-radius:0;background:none;margin-top:6px;color:var(--muted);white-space:normal;font-size:11px}.candidate-app .chapter-nav{gap:4px}.candidate-app .chapter-link{padding:10px;border-radius:8px;gap:10px}.candidate-app .chapter-link small{margin-top:2px}.candidate-app .chapter-index{width:28px;min-width:28px;height:28px}.candidate-app .section-heading{margin:0 0 8px}.candidate-app .section-heading h1{font-size:28px;margin-bottom:0}.chapter-counter{font-size:12px;color:var(--muted)}.candidate-app .save-status{margin-bottom:8px;min-height:18px}.candidate-app .question-group{padding:20px 24px;margin-bottom:16px;border-radius:12px}.candidate-app .group-title{font-size:16px;padding-bottom:12px;margin-bottom:0}.candidate-app .question{padding:14px 0}.candidate-app .question:last-child{padding-bottom:0}.candidate-app .form-control,.candidate-app .form-select{padding:8px 11px;min-height:40px}.candidate-app .option-tile{padding:8px 12px;min-height:40px}.candidate-app .btn-lg{padding:10px 18px}.candidate-app .app-footer{margin-top:0;padding-top:16px;padding-bottom:16px}.intro-instructions{font-size:14px;color:var(--muted);margin-bottom:20px}.intro-privacy{padding:24px}.candidate-app .chapter-preview{font-size:13px;margin:0;padding-left:20px}.candidate-app .chapter-preview li{padding:6px 0}.access-layout{max-width:560px;margin:20px auto}.access-card{padding:28px;border-radius:12px}
@media(max-width:991px){.candidate-app .workspace-layout{grid-template-columns:1fr;gap:20px}.candidate-app .sidebar-inner{position:static}.candidate-app .sidebar-brand{margin-bottom:12px}.candidate-context{margin-bottom:12px}.candidate-context .deadline{margin-top:2px}.candidate-app .chapter-link{padding:8px 5px;gap:5px}.candidate-app .chapter-preview{display:none}}
@media(max-width:575px){.candidate-main{padding-top:16px;padding-bottom:16px}.candidate-app .shell{padding-left:14px;padding-right:14px}.sidebar-brand img{width:112px}.candidate-app .candidate-context>strong{display:inline}.candidate-app .candidate-context>span{display:inline!important}.candidate-app .candidate-context>span:first-child{display:none!important}.candidate-app .candidate-context>span:last-of-type:before{content:" · "}.candidate-app .section-heading h1{font-size:24px}.candidate-app .workspace-layout{gap:16px}.candidate-app .question-group{padding:16px;border-radius:10px}.candidate-app .question{padding:12px 0}.candidate-app .chapter-index{width:26px;min-width:26px;height:26px}.intro-privacy,.access-card{padding:18px}.candidate-app .app-footer{flex-direction:row}.candidate-app .form-bottom .btn{font-size:12px;padding:11px 12px}}
@media print{.sidebar-brand,.candidate-context,.chapter-sidebar{display:none!important}}

.admin-login-layout{display:flex;align-items:center;justify-content:center;min-height:64vh}.admin-login-card{width:100%;max-width:480px;padding:32px}@media(max-width:575px){.admin-login-card{padding:24px}.admin-login-layout{min-height:60vh}}

/* Validation keeps field positions stable and uses a compact summary. */
.candidate-app .has-error .form-control,.candidate-app .has-error .form-select{border-color:#d4aaa3;background-color:#fffcfb}.candidate-app .has-error .form-check-input{border-color:#bd857b}.candidate-app .has-error .option-tile{border-color:#d4aaa3}.candidate-app .has-error .form-control:focus,.candidate-app .has-error .form-select:focus{border-color:#c8a667;box-shadow:0 0 0 .2rem #ffcc0025}.field-error{font-size:12px;line-height:1.4;color:#9b4233;margin-top:6px}.validation-summary{background:#fffdf5;border:1px solid #e7d9a5;border-radius:12px;padding:16px 18px;margin:0 0 18px;scroll-margin-top:20px}.validation-summary:focus{outline:none}.validation-summary-heading{display:flex;align-items:center;gap:10px}.validation-summary-icon{display:grid;place-items:center;flex-shrink:0;width:23px;height:23px;border-radius:50%;background:#fff0b7;color:#79621d;font-size:13px;font-weight:700}.validation-summary-title{margin:0;font-size:14px;font-weight:650;color:#414339}.validation-summary-links{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px;padding-left:33px}.validation-summary-link{display:inline-flex;align-items:center;max-width:100%;border:1px solid #e1decf;border-radius:7px;padding:6px 10px;background:#fff;color:#53584b;font-size:12px;line-height:1.4;text-decoration:none;overflow-wrap:anywhere}.validation-summary-link:hover{color:#222;border-color:#c4af69;background:#fff7d7}.question{scroll-margin-top:24px}@media(max-width:575px){.validation-summary{padding:14px}.validation-summary-links{padding-left:0}.validation-summary-title{font-size:13px}}

.privacy-document-layout{max-width:880px;margin:0 auto}.privacy-document-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.privacy-document-top .sidebar-brand{margin:0}.privacy-document{padding:32px 36px;line-height:1.75}.privacy-document h1{font-size:28px;line-height:1.25;margin-bottom:24px}.privacy-document h2{font-size:19px;margin:28px 0 12px}.privacy-document p:last-child{margin-bottom:0}.privacy-document li{margin-bottom:6px}.privacy-document a{overflow-wrap:anywhere}@media(max-width:575px){.privacy-document{padding:20px 18px}.privacy-document h1{font-size:24px}.privacy-document h2{font-size:18px}.privacy-document-top{gap:12px}.privacy-document-top>a{font-size:12px}}

.intro-privacy .intro-confirmation,.intro-privacy .form-check-label{font-size:14px;line-height:1.6}

.intro-privacy .form-label,.intro-privacy .form-select{font-size:14px;line-height:1.6}
