:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--water-900:#113f4d;--water-700:#176b78;--water-100:#e9f5f6;--green:#287a4b;--green-soft:#e7f4ec;--text:#1d2629;--muted:#657176;--border:#d7dfe1;--background:#f6f8f8;--white:#fff;--danger:#a43b3b}*{box-sizing:border-box}html{background:var(--background);color:var(--text);font-family:Arial,Helvetica,sans-serif}body{min-height:100vh;margin:0}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}.topBar{background:var(--white);border-bottom:1px solid var(--border);grid-template-columns:minmax(180px,1fr) auto minmax(180px,1fr);align-items:center;gap:24px;min-height:84px;padding:14px clamp(18px,4vw,48px);display:grid}.brandBlock,.candidateBlock{flex-direction:column;gap:4px;display:flex}.brandText{color:var(--water-900);letter-spacing:.01em;font-weight:800}.campaignName,.candidateBlock span{color:var(--muted);font-size:.9rem}.candidateBlock{text-align:center}.headerActions{justify-self:end;align-items:center;gap:14px;display:flex}.textButton{color:var(--water-700);cursor:pointer;background:0 0;border:0;padding:10px}.textButton:hover{text-decoration:underline}.portalMain{padding:48px 20px 70px}.componentList{gap:14px;width:min(680px,100%);margin:0 auto;display:grid}.componentCard,.submitCard{border:1px solid var(--border);background:var(--white);width:100%;color:inherit;text-align:left;border-radius:10px;align-items:center;gap:18px;padding:18px 20px;text-decoration:none;display:flex}.componentCard:hover{border-color:var(--water-700)}.submitCard:disabled{color:#7b8589;cursor:not-allowed;background:#f1f3f3}.statusDot{color:#fff;background:#d8dddf;border-radius:50%;flex:0 0 32px;place-items:center;width:32px;height:32px;font-weight:800;display:grid}.statusDot.complete{background:var(--green)}.componentInfo{flex-direction:column;gap:4px;min-width:0;display:flex}.componentInfo strong{font-size:1.05rem}.componentInfo span{color:var(--muted);font-size:.9rem}.overlay{z-index:100;background:#0e1f2494;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.overlayCard,.messageCard{background:var(--white);border:1px solid var(--border);border-radius:12px;width:min(620px,100%);padding:clamp(24px,5vw,40px)}.overlayCard h2,.messageCard h1{color:var(--water-900);margin-top:0}.overlayCard p,.messageCard p{line-height:1.6}.primaryButton,.secondaryButton{cursor:pointer;border-radius:8px;justify-content:center;align-items:center;min-height:44px;padding:11px 17px;text-decoration:none;display:inline-flex}.primaryButton{background:var(--water-700);color:#fff;border:0;margin-top:12px}.secondaryButton{border:1px solid var(--border);background:var(--white);color:var(--water-900)}.primaryButton:disabled,.secondaryButton:disabled{opacity:.6;cursor:wait}.linkButton{text-decoration:none}.simplePage{place-items:center;min-height:100vh;padding:40px 20px;display:grid}.componentPage{padding:34px 20px 70px}.componentPanel{background:var(--white);border:1px solid var(--border);border-radius:12px;width:min(760px,100%);margin:0 auto;padding:clamp(22px,4vw,38px)}.componentPanel.wide{width:min(1080px,100%)}.componentHeading h1,.questionnairePage h1{color:var(--water-900);margin-top:0}.componentHeading p,.questionnairePage>p{line-height:1.6}.formStack{gap:18px;display:grid}.formStack.compact{gap:14px;margin-top:18px}.formError{color:#7e2626;background:#fff3f3;border:1px solid #d8aaaa;border-radius:8px;padding:12px 14px}.formHint{color:var(--muted);font-size:.9rem;line-height:1.5}.documentRow{border:1px solid var(--border);border-radius:9px;grid-template-columns:minmax(220px,1fr) minmax(280px,1fr);align-items:center;gap:24px;padding:18px;display:grid}.documentCopy h3{color:var(--water-900);margin:0 0 6px}.documentCopy p{color:var(--muted);margin:0;line-height:1.45}.documentControls{gap:10px;display:grid}.documentControls input[type=file]{width:100%}.currentFile{flex-wrap:wrap;align-items:baseline;gap:8px 14px;margin-top:12px;font-size:.9rem;display:flex}.currentFile span{color:var(--muted)}.currentFile a{color:var(--water-700)}.buttonRow{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.textDangerButton{color:var(--danger);cursor:pointer;background:0 0;border:0;padding:9px 6px}.questionnairePage{min-height:520px}.questionnaireMeta{min-height:34px;color:var(--muted);justify-content:space-between;gap:12px;margin-bottom:18px;font-size:.9rem;display:flex}.questionnaireMetaRight{align-items:center;gap:14px;display:flex}.saveStatus.error{color:var(--danger)}.pageActions{justify-content:space-between;align-items:center;gap:12px;margin-top:30px;display:flex}.pageActions.left{justify-content:flex-start}.radioStack{gap:10px;margin:20px 0;display:grid}.radioStack label{border:1px solid var(--border);cursor:pointer;border-radius:8px;align-items:flex-start;gap:10px;padding:12px 14px;display:flex}.radioStack input{margin-top:3px}.fieldStack{gap:7px;margin-top:18px;display:grid}.fieldStack>span{font-weight:700}.fieldStack input,.fieldStack textarea,.fieldStack select,.availabilityTable select{background:#fff;border:1px solid #bcc8cb;border-radius:7px;width:100%;padding:10px}.fieldStack textarea{resize:vertical;min-height:110px}.fieldStack small{color:var(--muted);line-height:1.45}.availabilityLegend{background:var(--water-100);border-radius:8px;margin:18px 0;padding:10px 15px}.availabilityLegend p{margin:7px 0;line-height:1.45}.availabilityTableWrap{width:100%;overflow-x:auto}.availabilityTable{border-collapse:collapse;width:100%;min-width:820px}.availabilityTable th,.availabilityTable td{border-bottom:1px solid var(--border);vertical-align:middle;text-align:left;padding:10px 8px}.availabilityTable thead th{color:var(--water-900);font-size:.9rem}.availabilityTable tbody th{white-space:nowrap}.periodRow{border:1px solid var(--border);border-radius:8px;grid-template-columns:1fr 1fr 1fr auto;align-items:end;gap:12px;padding:16px;display:grid}.periodRow .fieldStack{margin-top:0}@media (max-width:720px){.topBar{grid-template-columns:1fr;gap:10px}.candidateBlock{text-align:left}.headerActions{justify-self:start;margin-left:-10px}.portalMain{padding-top:24px}.componentCard,.submitCard{padding:16px}.componentPage{padding:18px 12px 50px}.componentPanel{padding:20px 16px}.documentRow{grid-template-columns:1fr;gap:14px}.periodRow{grid-template-columns:1fr;align-items:stretch}.questionnaireMeta{align-items:flex-start}.questionnaireMetaRight{flex-direction:column;align-items:flex-end;gap:2px}}.assessmentPage{padding-top:24px}.assessmentPanel{width:min(900px,100%)}.assessmentStart h1,.assessmentStatus h1,.assessmentProtected h1{color:var(--water-900);margin-top:0}.assessmentInstructions p,.assessmentStatus p,.assessmentPrompt,.assessmentScenario p{line-height:1.65}.assessmentWarning{background:#fff9e7;border:1px solid #d8c78f;border-radius:8px;gap:5px;margin-top:24px;padding:15px 17px;display:grid}.assessmentTopLine{border-bottom:1px solid var(--border);min-height:42px;color:var(--muted);justify-content:space-between;align-items:center;gap:18px;margin-bottom:20px;padding-bottom:12px;font-size:.92rem;display:flex}.assessmentTopRight{align-items:center;gap:18px;display:flex}.assessmentTimer{color:var(--water-900);font-variant-numeric:tabular-nums;font-weight:700}.assessmentTimer.urgent{color:var(--danger)}.assessmentProtected,.assessmentProtected textarea,.assessmentProtected select{-webkit-user-select:none;user-select:none}.assessmentPoints{padding-left:24px;line-height:1.6}.assessmentPoints li{margin:5px 0}.assessmentResponseField textarea{width:100%;min-height:320px;line-height:1.55}.assessmentScenario{background:var(--water-100);border-radius:8px;margin:16px 0 22px;padding:16px 18px}.assessmentScenario p{margin:0 0 10px}.assessmentScenario p:last-child{margin-bottom:0}.rankingInstruction{margin:22px 0 12px}.rankingList{gap:12px;display:grid}.rankingRow{border:1px solid var(--border);border-radius:9px;grid-template-columns:minmax(0,1fr) 190px;align-items:center;gap:18px;padding:15px 16px;display:grid}.rankingOption{grid-template-columns:24px minmax(0,1fr);gap:6px;line-height:1.5;display:grid}.rankingRow select{background:#fff;border:1px solid #bcc8cb;border-radius:7px;width:100%;padding:10px}.assessmentActions{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;margin-top:28px;padding-top:18px;display:flex}.assessmentActions .primaryButton{flex:none;margin-top:0}.assessmentError{margin-top:20px}.assessmentConfirm .buttonRow.end{justify-content:flex-end;margin-top:22px}.assessmentConfirm .primaryButton{margin-top:0}.srOnly{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (max-width:720px){.assessmentTopLine{align-items:flex-start}.assessmentTopRight{flex-direction:column;align-items:flex-end;gap:3px}.rankingRow{grid-template-columns:1fr;gap:10px}.rankingRow label{width:100%}.assessmentActions{flex-direction:column;align-items:stretch}.assessmentActions .primaryButton{width:100%}}.personalTraitsRunner{min-height:620px}.personalTraitsIntro{margin-bottom:22px}.personalTraitsIntro h1{color:var(--water-900);margin:0 0 8px}.personalTraitsIntro p{color:var(--muted);margin:0;line-height:1.5}.traitQuestionList{gap:18px;display:grid}.traitQuestion{border:1px solid var(--border);background:var(--white);border-radius:10px;margin:0;padding:18px}.traitQuestion legend{color:var(--water-900);padding:0 6px;font-weight:700;line-height:1.45}.traitQuestionNumber{color:var(--muted);margin-right:6px}.traitChoices{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:14px;display:grid}.traitChoice{border:1px solid var(--border);text-align:center;cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-height:58px;padding:9px 8px;font-size:.88rem;line-height:1.25;display:flex}.traitChoice:hover{border-color:var(--water-700)}.traitChoice.selected{border-color:var(--water-700);background:var(--water-100)}.traitChoice input{flex:none}.personalTraitsActions .primaryButton{margin-top:0}@media (max-width:800px){.traitChoices{grid-template-columns:1fr}.traitChoice{text-align:left;justify-content:flex-start;min-height:44px;padding:10px 12px}}.submitCard{cursor:pointer}.submitCard:hover{border-color:var(--water-700)}.statusMeta{color:var(--muted);margin-top:22px;font-size:.92rem}.submissionPagePanel{width:min(760px,100%)}.submissionPanel>h1{color:var(--water-900);margin-top:0}.submissionPanel>p{line-height:1.6}.submissionStatusList{gap:10px;margin:24px 0;display:grid}.submissionStatusRow{border:1px solid var(--border);border-radius:9px;align-items:center;gap:14px;padding:13px 15px;display:flex}.submissionStatusRow>div{gap:3px;display:grid}.submissionStatusRow>div span{color:var(--muted);font-size:.9rem}.submissionNotice{border-radius:9px;margin:22px 0;padding:18px}.submissionNotice h2{margin:0 0 8px;font-size:1.1rem}.submissionNotice p{margin:8px 0;line-height:1.55}.submissionNotice ul,.submissionConfirm ul{margin:12px 0;padding-left:22px;line-height:1.6}.submissionNotice.ready{background:var(--green-soft);border:1px solid #a8cfb8}.submissionNotice.warning{background:#fff3f1;border:1px solid #dfb0a7}.dangerSubmitButton{color:#fff;cursor:pointer;background:#a43b3b;border:0;border-radius:8px;justify-content:center;align-items:center;min-height:44px;padding:11px 17px;display:inline-flex}.dangerSubmitButton:disabled{opacity:.6;cursor:wait}.submissionConfirm .buttonRow.end{justify-content:flex-end;margin-top:22px}.submissionConfirm .primaryButton,.submissionConfirm .dangerSubmitButton{margin-top:0}.adminMain{background:var(--background);min-height:100vh;padding:32px 20px 70px}.adminShell{width:min(1180px,100%);margin:0 auto}.adminLoginCard{width:min(520px,100%)}.adminHeader{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:24px;display:flex}.adminHeader h1{color:var(--water-900);margin:5px 0}.adminHeader p{color:var(--muted);margin:0}.adminBackLink{color:var(--water-700);font-size:.9rem;text-decoration:none}.adminBackLink:hover{text-decoration:underline}.adminSearch{gap:10px;margin:20px 0;display:flex}.adminSearch input{border:1px solid #bcc8cb;border-radius:8px;flex:1;min-width:0;padding:11px 12px}.adminSearch .primaryButton{margin-top:0}.adminTableWrap{border:1px solid var(--border);background:#fff;border-radius:10px;overflow-x:auto}.adminTable{border-collapse:collapse;width:100%;min-width:850px}.adminTable th,.adminTable td{text-align:left;vertical-align:top;border-bottom:1px solid var(--border);padding:13px 15px}.adminTable th{color:var(--water-900);background:#fbfcfc;font-size:.88rem}.adminTable tr:last-child td{border-bottom:0}.adminTable a{color:var(--water-700);text-decoration:none}.adminTable a:hover{text-decoration:underline}.adminSubtext{color:var(--muted);margin-top:3px;font-size:.86rem;display:block}.adminEmpty{color:var(--muted);font-style:italic}.adminNotice{border-radius:8px;margin:14px 0;padding:12px 14px}.adminNotice.success{background:var(--green-soft);border:1px solid #a8cfb8}.adminSummaryGrid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:22px 0;display:grid}.adminSummaryGrid>div{border:1px solid var(--border);background:#fff;border-radius:9px;gap:5px;padding:14px;display:grid}.adminSummaryGrid span{color:var(--muted);font-size:.83rem}.adminSection{border:1px solid var(--border);background:#fff;border-radius:10px;margin-top:18px;padding:20px}.adminSection h2{color:var(--water-900);margin:0 0 10px}.adminSectionHeading{justify-content:space-between;gap:16px;display:flex}.adminSectionHeading p{color:var(--muted);margin:0 0 14px;line-height:1.5}.adminActionRow{flex-wrap:wrap;gap:10px;display:flex}.adminActionRow .primaryButton,.adminActionRow .secondaryButton{margin-top:0}.adminComponentList,.adminHistoryList{gap:10px;display:grid}.adminComponentRow{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:18px;padding-top:12px;display:flex}.adminComponentRow:first-child{border-top:0;padding-top:0}.adminComponentMain{align-items:center;gap:12px;min-width:0;display:flex}.adminComponentMain>div{gap:3px;display:grid}.adminComponentMain span{color:var(--muted);font-size:.86rem}.adminHistoryList>div{border-top:1px solid var(--border);gap:3px;padding-top:10px;display:grid}.adminHistoryList>div:first-child{border-top:0;padding-top:0}.adminHistoryList span{color:var(--muted);font-size:.86rem}.adminErrorText{color:var(--danger)!important}@media (max-width:780px){.adminHeader{flex-direction:column}.adminSearch{flex-wrap:wrap}.adminSearch input{flex-basis:100%}.adminSummaryGrid{grid-template-columns:1fr 1fr}.adminComponentRow{flex-direction:column;align-items:flex-start}}@media (max-width:520px){.adminSummaryGrid{grid-template-columns:1fr}}
