.public-header { position: sticky; z-index: 40; top: 0; border-bottom: 1px solid var(--rc-color-border); background: rgba(255, 255, 255, .96); }
.public-header-inner { display: flex; min-height: 4.125rem; align-items: center; justify-content: space-between; gap: var(--rc-space-4); }
.public-nav { display: flex; align-items: center; gap: var(--rc-space-5); }
.public-nav-link { color: var(--rc-color-text-secondary); font-size: var(--rc-font-size-13); font-weight: 500; text-decoration: none; }
.public-nav-link:hover { color: var(--rc-color-text-primary); }
.public-nav-link[aria-current="page"] { color: var(--rc-color-brand); }
.public-actions { display: flex; align-items: center; gap: var(--rc-space-2); }
.public-mobile-toggle { display: none; }
.public-main { background: var(--rc-color-surface); }
.editorial-hero { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(19rem, .85fr); align-items: center; gap: var(--rc-space-16); padding-block: clamp(var(--rc-space-16), 10vw, var(--rc-space-24)); }
.marketing-display { max-width: 42rem; margin-bottom: var(--rc-space-5); font-size: clamp(2.625rem, 5vw, 3.5rem); font-weight: 600; line-height: 1.05; letter-spacing: -.042em; }
.marketing-lead { max-width: 38rem; color: var(--rc-color-text-secondary); font-size: clamp(1rem, 2vw, 1.125rem); line-height: 1.6; }
.hero-visual { display: grid; min-height: 20rem; align-content: end; padding: var(--rc-space-6); border-radius: var(--rc-radius-panel); background: var(--rc-color-navy); color: var(--rc-color-surface); }
.hero-visual h2, .hero-visual p { color: inherit; }
.hero-visual p { margin-bottom: 0; color: rgba(255, 255, 255, .72); }
.public-section { padding-block: var(--rc-space-20); border-top: 1px solid var(--rc-color-border); }
.public-section-heading { display: flex; align-items: end; justify-content: space-between; gap: var(--rc-space-5); margin-bottom: var(--rc-space-8); }
.public-section-heading p { max-width: 34rem; margin-bottom: 0; }
.public-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--rc-space-5); }
.public-page-hero { padding-block: var(--rc-space-16); background: var(--rc-color-surface); }
.public-page-heading { max-width: var(--rc-public-width); }
.public-page-heading > :last-child { margin-bottom: 0; }
.public-page-heading .marketing-lead { max-width: 44rem; }
.public-section-subtle { background: var(--rc-color-surface-subtle); }
.public-section-tight { padding-block: var(--rc-space-12); }
.public-split { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); align-items: start; gap: var(--rc-space-16); }
.public-copy { max-width: 46rem; }
.public-copy h2 { margin-top: var(--rc-space-10); }
.public-copy h2:first-child { margin-top: 0; }
.public-copy .alert + h2, .public-copy .public-notice + h2 { margin-top: var(--rc-space-8); }
.public-copy p { font-size: var(--rc-font-size-15); line-height: var(--rc-line-24); }
.public-copy-block { padding-top: var(--rc-space-5); border-top: 1px solid var(--rc-color-border); }
.public-copy-block p { max-width: 34rem; color: var(--rc-color-text-secondary); }
.public-search-layout { display: grid; grid-template-columns: minmax(16rem, .7fr) minmax(20rem, 1.3fr); align-items: end; gap: var(--rc-space-12); }
.public-search-form, .jobs-search { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: var(--rc-space-3); }
.department-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 0; padding: 0; border-top: 1px solid var(--rc-color-border); list-style: none; }
.department-list li { min-height: 3rem; padding: var(--rc-space-3); border-bottom: 1px solid var(--rc-color-border); color: var(--rc-color-text-secondary); font-weight: 500; }
.public-result-surface { padding-inline: var(--rc-space-5); }
.result-summary { display: flex; min-height: 3.5rem; align-items: center; justify-content: space-between; gap: var(--rc-space-3); margin-top: var(--rc-space-6); }
.public-feature-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-block: 1px solid var(--rc-color-border); }
.public-feature-list > div { padding: var(--rc-space-5); border-right: 1px solid var(--rc-color-border); }
.public-feature-list > div:last-child { border-right: 0; }
.public-feature-list p { color: var(--rc-color-text-secondary); }
.public-notice { display: flex; gap: var(--rc-space-3); padding: var(--rc-space-5); border: 1px solid var(--rc-color-border); border-radius: var(--rc-radius-card); background: var(--rc-color-surface-subtle); }
.public-notice > .ui-icon { color: var(--rc-color-brand); }
.public-notice h2 { margin: 0 0 var(--rc-space-2); font-size: var(--rc-font-size-16); line-height: var(--rc-line-24); }
.public-notice p { margin: 0; color: var(--rc-color-text-secondary); font-size: var(--rc-font-size-14); line-height: var(--rc-line-21); }
.public-cta-row { display: flex; align-items: center; justify-content: space-between; gap: var(--rc-space-8); }
.job-detail-copy { min-height: 16rem; }
.public-footer { padding-top: var(--rc-space-12); border-top: 1px solid var(--rc-color-border); background: var(--rc-color-surface-subtle); }
.footer-grid { display: grid; grid-template-columns: minmax(14rem, 1.6fr) repeat(4, minmax(7rem, 1fr)); gap: var(--rc-space-8); }
.footer-intro p { max-width: 17rem; margin-top: var(--rc-space-4); }
.footer-group { display: grid; align-content: start; gap: var(--rc-space-2); }
.footer-group h2 { margin-bottom: var(--rc-space-2); font-size: var(--rc-font-size-13); line-height: var(--rc-line-18); }
.footer-group a { color: var(--rc-color-text-secondary); font-size: var(--rc-font-size-13); text-decoration: none; }
.footer-group a:hover { color: var(--rc-color-text-primary); text-decoration: underline; }
.footer-bottom { display: flex; justify-content: space-between; gap: var(--rc-space-4); margin-top: var(--rc-space-10); padding-block: var(--rc-space-5); border-top: 1px solid var(--rc-color-border); color: var(--rc-color-text-secondary); font-size: var(--rc-font-size-12); }
.auth-page { min-height: 100vh; background: var(--rc-color-surface); }
.auth-topbar { display: flex; min-height: 4.125rem; align-items: center; border-bottom: 1px solid var(--rc-color-border); }
.auth-main { display: grid; min-height: calc(100vh - 4.125rem); place-items: center; padding: var(--rc-space-10) var(--rc-space-4); }
.auth-shell { width: min(100%, 26rem); }
.error-actions { justify-content: center; }
.auth-intro { margin-bottom: var(--rc-page-header-gap, var(--rc-space-6)); }
.auth-intro .eyebrow { margin-bottom: var(--rc-space-2); color: var(--rc-color-brand); font-size: var(--rc-font-size-12); line-height: var(--rc-line-16); }
.auth-intro h1 { margin-bottom: var(--rc-space-2); }
.auth-intro > p:not(.eyebrow) { margin-bottom: 0; color: var(--rc-color-text-secondary); font-size: var(--rc-font-size-15); line-height: var(--rc-line-23); }
.auth-footer { margin-top: var(--rc-space-6); color: var(--rc-color-text-secondary); font-size: var(--rc-font-size-13); text-align: center; }
.account-shell { display: grid; min-height: 100vh; grid-template-columns: 15rem minmax(0,1fr); }
.account-sidebar { position: sticky; top: 0; display: flex; height: 100vh; flex-direction: column; padding: var(--rc-space-5) var(--rc-space-3); border-right: 1px solid var(--rc-color-border); background: var(--rc-color-surface); }
.account-nav { margin-top: var(--rc-space-8); }
.account-main { width: min(calc(100% - 2rem), 48rem); margin-inline: auto; padding-block: var(--rc-page-padding, var(--rc-space-10)); }
.candidate-main { width: min(calc(100% - 2rem), 74rem); }
.candidate-card-stack { display: grid; gap: var(--rc-card-stack-gap); }
.account-section-stack { display: grid; gap: var(--rc-card-stack-gap); }
.account-panel { padding: var(--rc-space-6); }
.account-form { display: grid; gap: var(--rc-form-gap, var(--rc-space-4)); max-width: 34rem; }
.account-handoff { padding: var(--rc-space-8); }
.account-handoff p { max-width: 38rem; }
.preference-row { display: flex; align-items: center; justify-content: space-between; gap: var(--rc-space-4); }
.preference-row h2, .preference-row p { margin-bottom: 0; }
.app-page { min-height: 100vh; background: var(--rc-color-surface-subtle); }
.preview-banner { padding: var(--rc-space-1) var(--rc-space-3); border-bottom: 1px solid var(--rc-color-border); background: var(--rc-color-warning-subtle); color: var(--rc-color-warning); font-size: var(--rc-font-size-12); text-align: center; }
.app-shell { display: grid; min-height: calc(100vh - 1.5rem); grid-template-columns: var(--rc-sidebar-width) minmax(0, 1fr); }
.sidebar { position: sticky; top: 0; display: flex; height: 100vh; flex-direction: column; padding: var(--rc-space-4) var(--rc-space-3); border-right: 1px solid var(--rc-color-border); background: var(--rc-color-surface); }
.sidebar-section-label { margin: var(--rc-space-6) var(--rc-space-2) var(--rc-space-2); color: var(--rc-color-text-tertiary); font-size: .6875rem; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; }
.sidebar-nav { display: grid; gap: var(--rc-space-1); }
.sidebar-nav a { display: flex; min-height: 2.375rem; align-items: center; gap: var(--rc-space-2); padding: 0 var(--rc-space-2); border-radius: var(--rc-radius-small); color: var(--rc-color-text-secondary); font-size: var(--rc-font-size-14); font-weight: 500; text-decoration: none; }
.sidebar-nav a:hover { background: var(--rc-color-surface-hover); color: var(--rc-color-text-primary); }
.sidebar-nav a[aria-current="page"] { background: var(--rc-color-brand-subtle); color: var(--rc-color-brand); }
.sidebar-foot { margin-top: auto; padding-top: var(--rc-space-4); border-top: 1px solid var(--rc-color-border); }
.app-area { min-width: 0; }
.app-topbar { display: flex; min-height: 3.625rem; align-items: center; justify-content: space-between; gap: var(--rc-space-3); padding-inline: var(--rc-space-5); border-bottom: 1px solid var(--rc-color-border); background: var(--rc-color-surface); }
.app-topbar-start, .app-topbar-end { display: flex; align-items: center; gap: var(--rc-space-2); }
.mobile-menu { display: none; }
.app-main { width: min(100%, 90rem); min-width: 0; margin-inline: auto; padding: var(--rc-page-padding, var(--rc-space-6)); }
.app-main > * { min-width: 0; }
.app-main, .account-main, .employer-setup-shell { display: grid; align-content: start; gap: var(--rc-section-stack-gap); }
.candidate-main > form:not(.form-content):not(.form-content-wide) { width: min(100%, var(--rc-form-content-width-wide)); justify-self: start; }
.candidate-main:has(> form.form-content) > :is(.page-header, .alert) { width: min(100%, var(--rc-form-content-width)); justify-self: start; }
.candidate-main:has(> form.form-content-wide) > :is(.page-header, .alert) { width: min(100%, var(--rc-form-content-width-wide)); justify-self: start; }
.candidate-main:has(> form:not(.form-content):not(.form-content-wide)) > :is(.page-header, .alert, .danger-zone) { width: min(100%, var(--rc-form-content-width-wide)); justify-self: start; }
.profile-form-section > form.two-column { width: min(100%, var(--rc-form-content-width)); }
:is(.app-main, .account-main, .employer-setup-shell) > :is(.page-header, .auth-intro) { margin-bottom: 0; }
:is(.app-main, .account-main, .employer-setup-shell) > .alert { margin-bottom: 0; }
:is(.app-main, .account-main, .employer-setup-shell) > .workspace-section { margin-top: 0; }
.employer-setup-shell > :is(.auth-footer, .auth-secondary-form) { margin: 0; }
.page-header { display: flex; align-items: flex-start; justify-content: space-between; gap: var(--rc-space-5); margin-bottom: var(--rc-page-header-gap, var(--rc-space-5)); }
.page-header .eyebrow { margin-bottom: var(--rc-space-2); }
.page-header h1 { margin-bottom: var(--rc-space-2); }
.page-header > div > p:not(.eyebrow) { max-width: 42rem; margin-bottom: 0; color: var(--rc-color-text-secondary); font-size: var(--rc-font-size-14); }
.page-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: var(--rc-action-gap, var(--rc-space-2)); }
.workspace-section { margin-top: var(--rc-density-section, var(--rc-space-6)); }
.app-main > .page-header ~ .workspace-section:first-of-type { margin-top: 0; }
.workspace-grid { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(16rem, .75fr); gap: var(--rc-space-6); }
.section-header, .section-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: var(--rc-space-4); margin-bottom: var(--rc-card-stack-gap); }
.section-header > :first-child, .section-heading > :first-child { min-width: 0; }
.section-header :is(h2, h3, p):last-child, .section-heading :is(h2, h3, p):last-child { margin-bottom: 0; }
.career-sections { border-top: 1px solid var(--rc-color-border); }
.career-section { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: var(--rc-space-4); padding-block: var(--rc-space-5); border-bottom: 1px solid var(--rc-color-border); }
.career-section p { margin-bottom: 0; }
.lab-page { width: min(calc(100% - 2rem), 82rem); margin-inline: auto; padding-block: var(--rc-space-10); }
.lab-nav { position: sticky; z-index: 20; top: 0; display: flex; gap: var(--rc-space-4); padding: var(--rc-space-3) 0; overflow-x: auto; border-bottom: 1px solid var(--rc-color-border); background: var(--rc-color-surface); }
.lab-nav a { color: var(--rc-color-text-secondary); font-size: var(--rc-font-size-12); font-weight: 500; text-decoration: none; white-space: nowrap; }
.lab-section { padding-block: var(--rc-space-10); border-bottom: 1px solid var(--rc-color-border); }
.lab-section:last-child { border-bottom: 0; }
.lab-section-header { display: grid; grid-template-columns: 14rem minmax(0, 1fr); gap: var(--rc-space-8); margin-bottom: var(--rc-space-6); }
.lab-section-header p { margin-bottom: 0; }
.lab-content { margin-left: 16rem; }
.swatch-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--rc-space-3); }
.swatch { overflow: hidden; border: 1px solid var(--rc-color-border); border-radius: var(--rc-radius-control); }
.swatch-color { height: 4rem; }
.swatch-label { padding: var(--rc-space-2); background: var(--rc-color-surface); font-size: var(--rc-font-size-12); }
.swatch-brand { background: var(--rc-color-brand); }
.swatch-navy { background: var(--rc-color-navy); }
.swatch-mist { background: var(--rc-color-surface-subtle); }
.swatch-charcoal { background: var(--rc-color-text-primary); }
.swatch-success { background: var(--rc-color-success); }
.swatch-warning { background: var(--rc-color-warning); }
.swatch-danger { background: var(--rc-color-danger); }
.swatch-info { background: var(--rc-color-info); }
.component-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--rc-space-5); }
.component-demo { padding: var(--rc-space-5); border: 1px solid var(--rc-color-border); border-radius: var(--rc-radius-card); }
.employer-setup-main { display: grid; min-height: calc(100vh - 4.125rem); place-items: center; padding: var(--rc-space-10) var(--rc-space-4); background: var(--rc-color-surface-subtle); }
.employer-setup-shell { width: min(100%, 42rem); }
.employer-setup-shell-wide { width: min(100%, 58rem); }
.record-row, .request-row { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: var(--rc-space-4); padding: var(--rc-space-4); border: 1px solid var(--rc-color-border); border-radius: var(--rc-radius-card); background: var(--rc-color-surface); }
.pending-summary { display: grid; gap: var(--rc-space-4); }
.pending-summary h2 { margin-bottom: 0; }
.selection-list { display: grid; gap: var(--rc-record-stack-gap); margin: 0; padding: 0; list-style: none; }
.selection-row { display: flex; min-height: 3.5rem; align-items: center; justify-content: space-between; gap: var(--rc-space-4); padding: var(--rc-space-3) var(--rc-space-4); border: 1px solid var(--rc-color-border); border-radius: var(--rc-radius-control); background: var(--rc-color-surface); }
.status-strip { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); border: 1px solid var(--rc-color-border); border-radius: var(--rc-radius-card); background: var(--rc-color-surface); }
.status-strip > div { display: grid; gap: var(--rc-space-1); padding: var(--rc-space-4); border-right: 1px solid var(--rc-color-border); }
.status-strip > div:last-child { border-right: 0; }
.request-row { align-items: start; grid-template-columns: minmax(12rem,.8fr) minmax(20rem,1.2fr) auto; }
.request-review { display: grid; gap: var(--rc-space-3); }
.request-actions { display: flex; align-items: center; gap: var(--rc-space-3); }
.request-actions .select { width: auto; min-width: 12rem; }
.checkbox-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); align-content: start; gap: var(--rc-space-1) var(--rc-space-4); margin: 0; padding: var(--rc-space-3); border: 1px solid var(--rc-color-border); border-radius: var(--rc-radius-control); }
.checkbox-grid legend { padding-inline: var(--rc-space-1); color: var(--rc-color-text-secondary); font-size: var(--rc-font-size-12); font-weight: 600; }
.checkbox-row { display: inline-flex; min-height: 2.25rem; align-items: center; gap: var(--rc-space-2); padding-block: var(--rc-space-1); color: var(--rc-color-text-secondary); font-size: var(--rc-font-size-13); }
.checkbox-row input { width: 1rem; height: 1rem; accent-color: var(--rc-color-brand); }
.context-form .select { width: auto; min-width: 11rem; }
.verification-panel { display: grid; gap: var(--rc-space-4); padding: var(--rc-space-6); border: 1px solid var(--rc-color-border); border-radius: var(--rc-radius-panel); background: var(--rc-color-surface); }
.verification-panel .section-header { align-items: flex-start; margin-bottom: 0; }
.verification-panel .eyebrow { margin-bottom: var(--rc-space-2); }
.verification-panel h2, .verification-panel h3, .verification-panel p:not(.eyebrow) { margin-bottom: 0; }
.verification-next { padding-top: var(--rc-space-4); border-top: 1px solid var(--rc-color-border); }
.verification-next h3 { font-size: var(--rc-font-size-14); line-height: var(--rc-line-21); }
.verification-next ol { display: grid; gap: var(--rc-space-2); margin: var(--rc-space-3) 0 0; padding-left: var(--rc-space-5); color: var(--rc-color-text-secondary); font-size: var(--rc-font-size-14); line-height: var(--rc-line-21); }
.public-result-stack { display: grid; gap: var(--rc-card-stack-gap); }
.public-result-stack > :is(.result-summary, .pagination) { margin-top: 0; }

/* Phase 2C job discovery and application composition */
.job-discovery-form { display: grid; gap: var(--rc-space-4); }
.job-search-primary { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: var(--rc-space-3); }
.job-filter-panel { border: 1px solid var(--rc-color-border); border-radius: var(--rc-radius-card); background: var(--rc-color-surface); }
.job-filter-panel > summary { min-height: 2.75rem; display: flex; align-items: center; gap: var(--rc-space-2); padding: var(--rc-space-2) var(--rc-space-4); color: var(--rc-color-text-primary); font-weight: 650; cursor: pointer; }
.job-filter-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: var(--rc-space-4); padding: var(--rc-space-4); border-top: 1px solid var(--rc-color-border); }
.job-filter-actions { align-self: end; display: flex; flex-wrap: wrap; gap: var(--rc-space-2); }
.job-discovery-panel { margin-bottom: var(--rc-card-stack-gap); }
.job-detail-header { align-items: flex-start; }
.job-primary-actions { display: flex; flex-wrap: wrap; align-items: center; gap: var(--rc-space-2); }
.job-primary-actions form { margin: 0; }
.job-detail-layout,.application-detail-layout { display: grid; grid-template-columns: minmax(0,2fr) minmax(17rem,1fr); gap: var(--rc-card-stack-gap); align-items: start; }
.job-facts,.job-readiness { padding: var(--rc-space-6); position: sticky; top: var(--rc-space-4); }
.prose > :first-child,.job-facts > :first-child,.job-readiness > :first-child { margin-top: 0; }
.prose p { white-space: pre-line; }
.application-review-form { display: grid; gap: var(--rc-card-stack-gap); }
.application-row { display: flex; align-items: center; justify-content: space-between; gap: var(--rc-space-5); padding: var(--rc-space-5) var(--rc-space-6); border-bottom: 1px solid var(--rc-color-border); }
.application-row:last-child { border-bottom: 0; }
.application-row h2 { margin: var(--rc-space-1) 0; font-size: var(--rc-font-size-16); }
.segmented-tabs { display: flex; gap: var(--rc-space-1); overflow-x: auto; margin-bottom: var(--rc-card-stack-gap); border-bottom: 1px solid var(--rc-color-border); }
.segmented-tabs a { min-height: 2.75rem; display: inline-flex; align-items: center; padding: 0 var(--rc-space-4); color: var(--rc-color-text-secondary); text-decoration: none; white-space: nowrap; }
.segmented-tabs a[aria-current="page"] { color: var(--rc-color-brand); border-bottom: 2px solid var(--rc-color-brand); font-weight: 650; }
.application-success { max-width: 44rem; margin-inline: auto; }
.reference-code { padding: var(--rc-space-3) var(--rc-space-4); border-radius: var(--rc-radius-card); background: var(--rc-color-surface-subtle); font-family: ui-monospace,SFMono-Regular,Consolas,monospace; }
.status-timeline { display: grid; gap: var(--rc-space-4); padding-left: var(--rc-space-5); }
.status-timeline li { padding-left: var(--rc-space-2); }
.status-timeline span { display: block; color: var(--rc-color-text-secondary); font-size: var(--rc-font-size-14); }
.danger-disclosure { margin-top: var(--rc-space-6); border-top: 1px solid var(--rc-color-border); padding-top: var(--rc-space-4); }
.danger-disclosure > summary { color: var(--rc-color-danger); font-weight: 650; cursor: pointer; }
.passport-page { min-height: 100vh; background: var(--rc-color-surface-subtle); color: var(--rc-color-text-primary); }
.passport-brand { border-bottom: 1px solid var(--rc-color-border); background: var(--rc-color-surface); }
.passport-brand .passport-container, .passport-footer .passport-container { display: flex; min-height: 4rem; align-items: center; justify-content: space-between; gap: var(--rc-space-4); }
.passport-main { min-height: calc(100vh - 8rem); }
.passport-footer { border-top: 1px solid var(--rc-color-border); color: var(--rc-color-text-secondary); font-size: var(--rc-font-size-12); }
