*{box-sizing:border-box} :root{--ink:#152033;--muted:#667085;--line:#e5e7eb;--panel:#fff;--soft:#f6f7f9;--brand:#ba2027;--brand-dark:#94191f;--navy:#17233c;--ok:#177245;--warn:#a15c00} body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:#f7f8fa;line-height:1.5}.shell{width:min(1180px,calc(100% - 36px));margin:0 auto}.topbar{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.topbar-inner{height:72px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;gap:10px;align-items:center;color:var(--ink);text-decoration:none}.brand-mark{display:grid;place-items:center;width:38px;height:38px;background:var(--brand);color:#fff;font-weight:800;border-radius:9px}.brand span:last-child{display:flex;flex-direction:column;line-height:1.05}.brand small{font-size:9px;letter-spacing:.12em;color:var(--muted);margin-top:5px}.topnav{display:flex;gap:22px}.topnav a{color:var(--ink);text-decoration:none;font-weight:650}.footer{padding:36px 0;color:var(--muted);border-top:1px solid var(--line);background:#fff;margin-top:60px}.page-space{padding:40px 0}.page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:26px}.page-head.compact{align-items:center}.page-head h1,.section-title h2{margin:4px 0 5px}.page-head h1{font-size:32px}.eyebrow{font-size:11px;font-weight:800;letter-spacing:.14em;color:var(--brand);margin:0}.eyebrow.light{color:#ffb4b7}.muted,.section-title p{color:var(--muted);margin:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:9px;padding:11px 16px;font-weight:750;font-size:14px;text-decoration:none;cursor:pointer}.btn.primary{background:var(--brand);color:#fff}.btn.primary:hover{background:var(--brand-dark)}.btn.secondary{background:#fff;color:var(--ink);border-color:#d9dde5}.back{color:var(--muted);text-decoration:none;font-size:14px}.panel{background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 3px 12px rgba(16,24,40,.04)}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{padding:15px 17px;text-align:left;border-bottom:1px solid var(--line);vertical-align:middle}th{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);background:#fafafa}.right{text-align:right}.sub{font-size:12px;color:var(--muted);margin-top:3px}.status{display:inline-block;padding:4px 9px;border-radius:999px;font-size:12px;font-weight:750;background:#f1f3f5}.status.published{background:#e9f7ef;color:var(--ok)}.status.draft{background:#fff5df;color:#8a5900}.status.closed,.status.archived{background:#f1f3f5;color:#667085}.action-cell{white-space:nowrap}.action-cell form{display:inline}.text-link,.link-button{border:0;background:none;padding:4px 7px;color:#344054;text-decoration:none;font:inherit;font-size:13px;cursor:pointer}.danger-text{color:#a51d28}.empty{padding:40px;text-align:center;color:var(--muted)}.flash{margin-top:20px;padding:12px 14px;border-radius:10px}.flash.success{background:#e9f7ef;color:#115d39}.error-box{background:#fff1f2;border:1px solid #fecdd3;color:#881337;border-radius:12px;padding:14px 18px;margin-bottom:20px}.wizard-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:22px}.wizard-steps{display:flex;flex-direction:column;gap:5px;position:sticky;top:92px;align-self:start}.step-link{appearance:none;border:0;background:transparent;display:grid;grid-template-columns:34px 1fr;text-align:left;column-gap:10px;padding:10px;border-radius:10px;cursor:pointer;color:var(--muted)}.step-link span{grid-row:1/3;width:30px;height:30px;border:1px solid #d7dce3;border-radius:50%;display:grid;place-items:center;font-weight:800;background:#fff}.step-link b{color:#344054;font-size:14px}.step-link small{font-size:11px}.step-link.active{background:#fff;border:1px solid var(--line)}.step-link.active span{background:var(--brand);border-color:var(--brand);color:#fff}.wizard-form{background:#fff;border:1px solid var(--line);border-radius:15px;box-shadow:0 5px 20px rgba(16,24,40,.04);overflow:hidden}.wizard-page{display:none;padding:28px}.wizard-page.active{display:block}.section-title{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:24px;border-bottom:1px solid var(--line);padding-bottom:20px}.section-title h2{font-size:25px}.grid{display:grid;gap:17px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.full{grid-column:1/-1}.two-span{grid-column:span 2}.field{display:flex;flex-direction:column;gap:7px;font-weight:700;font-size:13px;color:#344054}.field input,.field select,.field textarea{width:100%;border:1px solid #d6dae1;border-radius:8px;padding:11px 12px;background:#fff;color:var(--ink);font:inherit;font-weight:450;outline:none}.field textarea{resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:#9299a6;box-shadow:0 0 0 3px #f0f1f3}.field small,.template-box small{font-weight:450;color:var(--muted)}.hint,.optional{font-weight:450;color:#8a94a6;font-size:11px}.subsection{border-top:1px solid var(--line);padding-top:23px;margin-top:24px}.subsection h3{margin:0 0 15px}.switch-row{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--line);padding:11px 12px;border-radius:9px;font-size:13px}.switch-row input[type=checkbox]{margin-top:3px}.switch-row span{display:flex;flex-direction:column}.switch-row small{color:var(--muted);font-weight:450}.template-box,.info-box{padding:16px;border-radius:10px;background:#f8f9fb;border:1px solid var(--line);margin-bottom:22px}.template-box label{display:block;font-weight:800;margin-bottom:8px}.inline-field{display:flex;gap:9px}.inline-field select{flex:1;border:1px solid #d6dae1;border-radius:8px;padding:10px}.poster-upload{display:flex;gap:20px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:16px;margin-bottom:22px}.poster-preview{width:190px;aspect-ratio:1.55;border-radius:9px;background:linear-gradient(135deg,#1b2742,#ba2027);display:grid;place-items:center;overflow:hidden;color:white;text-align:center;font-weight:900;letter-spacing:.12em}.poster-preview img{width:100%;height:100%;object-fit:cover}.grow{flex:1}.stack{display:grid;gap:17px}.repeater{display:grid;gap:13px}.repeat-card{border:1px solid var(--line);border-radius:12px;padding:16px}.repeat-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.remove-row{border:0;background:none;color:#a51d28;cursor:pointer;font-weight:700}.empty-helper{border:1px dashed #cfd4dc;border-radius:12px;padding:30px;text-align:center;color:var(--muted)}.review-card{border-radius:13px;background:var(--navy);color:#fff;padding:24px;margin-bottom:23px}.review-card h3{font-size:27px;margin:0 0 5px}.review-meta{color:#cbd4e5}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:22px}.review-grid div{background:rgba(255,255,255,.08);padding:13px;border-radius:9px}.review-grid span{display:block;color:#cbd4e5;font-size:12px}.review-grid b{font-size:22px}.publish-choice{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}.publish-choice label{display:flex;gap:10px;border:1px solid var(--line);border-radius:11px;padding:16px;cursor:pointer}.publish-choice span{display:flex;flex-direction:column}.publish-choice small{color:var(--muted)}.wizard-actions{display:flex;gap:10px;border-top:1px solid var(--line);padding:18px 28px;background:#fafafa}.spacer{flex:1}.hidden{display:none!important}.jobs-hero{background:linear-gradient(120deg,#15213b,#5d1a25);color:#fff;padding:55px 0}.jobs-hero h1{font-size:40px;margin:8px 0}.jobs-hero p{max-width:670px;color:#dce2ec}.job-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.job-card{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:0 4px 16px rgba(16,24,40,.05)}.job-image{display:block;aspect-ratio:1.6;position:relative;background:#eef0f3}.job-image img{width:100%;height:100%;object-fit:cover}.default-poster{height:100%;background:linear-gradient(135deg,#17233c,#8f2027);color:#fff;display:flex;flex-direction:column;justify-content:flex-end;padding:22px}.default-poster span{font-size:11px;letter-spacing:.18em}.default-poster b{font-size:22px;margin-top:4px}.featured-badge{position:absolute;top:12px;right:12px;background:#fff;color:var(--brand);font-weight:800;padding:5px 9px;border-radius:999px;font-size:11px}.job-card-body{padding:19px}.job-category{font-size:11px;color:var(--brand);font-weight:800;text-transform:uppercase;letter-spacing:.08em}.job-card h2{font-size:20px;margin:5px 0 13px}.job-card h2 a{color:var(--ink);text-decoration:none}.job-facts{display:grid;gap:5px;color:var(--muted);font-size:13px;margin-bottom:18px}.full-btn{width:100%}.pagination{padding:18px}.job-detail-space{padding:35px 0}.job-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:34px;margin-top:18px}.job-detail-grid article{background:#fff;border:1px solid var(--line);border-radius:14px;padding:30px}.job-detail-grid h1{font-size:36px;line-height:1.12;margin:8px 0 14px}.detail-poster{margin:-30px -30px 26px;aspect-ratio:2.1;overflow:hidden;border-radius:14px 14px 0 0}.detail-poster img{width:100%;height:100%;object-fit:cover}.detail-facts{display:flex;flex-wrap:wrap;gap:9px 18px;color:var(--muted);font-size:14px}.employer-line,.salary{margin:12px 0}.content-section{border-top:1px solid var(--line);padding-top:22px;margin-top:22px;color:#465064}.content-section h2{color:var(--ink);font-size:20px}.document-list{display:grid;gap:10px}.document-list>div{display:flex;gap:10px;border:1px solid var(--line);border-radius:9px;padding:11px}.document-list small{display:block;color:var(--muted)}.doc-icon{color:var(--brand)}.apply-card{position:relative}.apply-card-inner{position:sticky;top:94px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px;box-shadow:0 5px 20px rgba(16,24,40,.05)}.apply-card-inner h2{margin:7px 0}.apply-card-inner p{color:var(--muted)}.apply-card .btn[disabled]{opacity:.65;cursor:not-allowed}.ref{display:block;text-align:center;color:var(--muted);margin-top:12px}.preview-bar{background:#fff1cc;color:#7a4e00;text-align:center;padding:9px;font-weight:800;font-size:12px}.empty-state{grid-column:1/-1;text-align:center;background:#fff;border:1px solid var(--line);border-radius:14px;padding:50px}.pagination nav{display:flex;justify-content:center}.pagination svg{width:18px}.pagination p{display:none}
@media(max-width:900px){.wizard-layout,.job-detail-grid{grid-template-columns:1fr}.wizard-steps{position:static;display:grid;grid-template-columns:repeat(5,1fr)}.step-link{display:flex;justify-content:center}.step-link b,.step-link small{display:none}.job-grid{grid-template-columns:repeat(2,1fr)}.apply-card-inner{position:static}.grid.three{grid-template-columns:1fr 1fr}.two-span{grid-column:1/-1}}
@media(max-width:620px){.shell{width:min(100% - 24px,1180px)}.page-head{align-items:flex-start;flex-direction:column}.grid.two,.grid.three,.job-grid,.publish-choice{grid-template-columns:1fr}.full,.two-span{grid-column:auto}.wizard-page{padding:20px}.poster-upload{align-items:stretch;flex-direction:column}.poster-preview{width:100%}.wizard-actions{padding:15px 20px}.job-detail-grid article{padding:20px}.detail-poster{margin:-20px -20px 22px}.job-detail-grid h1{font-size:30px}.jobs-hero h1{font-size:33px}.topnav{gap:12px}}

/* Applicant + staff portal */
.portal-bg{min-height:calc(100vh - 72px);background:#f7f8fa}.nav-button{border:0;background:none;font:inherit;font-weight:650;cursor:pointer;color:var(--ink);padding:0}.topnav form{display:inline-flex}.user-pill{font-size:12px;color:var(--muted);background:#f3f4f6;border:1px solid var(--line);padding:7px 10px;border-radius:999px}.auth-wrap{min-height:calc(100vh - 170px);display:grid;place-items:center;padding:45px 18px}.auth-card{width:min(460px,100%);background:#fff;border:1px solid var(--line);border-radius:16px;padding:30px;box-shadow:0 12px 35px rgba(16,24,40,.08)}.auth-card h1{font-size:29px;margin:7px 0 8px}.auth-form{margin-top:24px}.email-chip,.security-note{background:#f7f8fa;border:1px solid var(--line);border-radius:9px;padding:11px 12px;font-size:13px}.security-note{margin:22px 0 0;color:var(--muted)}.resend{text-align:center;margin-top:8px}.narrow{width:min(760px,calc(100% - 36px))}.form-panel{padding:24px}.form-actions,.bottom-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px;border-top:1px solid var(--line);padding-top:18px}.check-line{display:flex;align-items:flex-start;gap:9px;font-size:13px}.check-line input{margin-top:4px}.application-cards{display:grid;gap:14px}.application-card{display:block;text-decoration:none;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px;box-shadow:0 3px 12px rgba(16,24,40,.035)}.application-card:hover{border-color:#c8ccd3;box-shadow:0 7px 20px rgba(16,24,40,.07)}.app-card-top{display:flex;justify-content:space-between;gap:20px}.app-card-top h2{margin:8px 0 4px}.app-card-top p{margin:0;color:var(--muted);font-size:13px}.chev{font-size:32px;color:#98a2b3}.progress{height:7px;background:#eceef2;border-radius:999px;overflow:hidden;margin:15px 0 6px}.progress span{display:block;height:100%;background:var(--brand);border-radius:inherit}.progress.large{height:10px}.action-alert{margin-top:14px;background:#fff5df;color:#865400;border-radius:8px;padding:9px 11px;font-size:13px;font-weight:750}.application-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:22px 0}.application-head h1{font-size:32px;margin:8px 0 4px}.progress-box{width:95px;height:95px;border-radius:50%;border:8px solid #f0d9db;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fff}.progress-box b{font-size:22px}.progress-box span{font-size:10px;color:var(--muted)}.action-panel{display:flex;justify-content:space-between;align-items:center;gap:20px;background:#fff8e8;border:1px solid #f0d28d;padding:16px 18px;border-radius:12px;margin-bottom:18px}.action-panel p{margin:3px 0 0;color:#7a5a18}.app-layout{display:grid;grid-template-columns:340px 1fr;gap:20px}.application-menu,.app-summary{padding:20px}.application-menu h3{margin:0 0 10px}.section-row{display:flex;gap:11px;padding:12px 4px;border-top:1px solid var(--line);text-decoration:none;color:var(--ink)}.section-row span:last-child{display:flex;flex-direction:column}.section-row small{color:var(--muted)}.section-check{width:27px;height:27px;border-radius:50%;background:#f1f3f5;display:grid;place-items:center;font-weight:900;flex:0 0 auto}.section-check.done{background:#e9f7ef;color:var(--ok)}.app-summary h2{margin-top:0}.status-large{display:inline-block;font-weight:800;font-size:22px;background:#f3f4f6;border-radius:10px;padding:10px 14px;margin:12px 0}.form-head{margin:25px 0 18px}.form-head h1{font-size:30px;margin:6px 0}.security-banner{border:1px solid #cfe4d6;background:#f1fbf5;padding:12px 14px;border-radius:10px;color:#24593a;margin-bottom:17px}.evidence-list{display:grid;gap:12px}.evidence-row{display:flex;justify-content:space-between;align-items:center;gap:18px;background:#fff;border:1px solid var(--line);border-radius:13px;padding:17px}.evidence-info{display:flex;gap:12px;align-items:flex-start}.evidence-info h3{margin:0 0 5px}.evidence-info p{margin:0 0 4px;color:var(--muted);font-size:13px}.evidence-info small{color:var(--muted)}.doc-state{width:34px;height:34px;border-radius:50%;background:#fff3e8;color:#a15c00;display:grid;place-items:center;font-weight:900}.doc-state.done{background:#e9f7ef;color:var(--ok)}.evidence-action{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.upload-inline{display:flex;align-items:center;gap:8px}.file-name{font-size:12px;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.declaration-box{display:grid;gap:14px;background:#f8f9fb;border:1px solid var(--line);border-radius:10px;padding:16px;margin-bottom:18px}.review-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:20px}.review-section{padding:20px}.review-section h3,.review-section h2{margin-top:0}.review-line{display:grid;grid-template-columns:40% 1fr;gap:18px;padding:10px 0;border-top:1px solid var(--line)}.review-line span{color:var(--muted);font-size:13px}.review-line b{font-size:13px;word-break:break-word}.submit-panel{padding:20px;align-self:start;position:sticky;top:90px}.ready-pill{padding:8px 12px;border-radius:999px;font-weight:800}.ready-pill.ready{background:#e9f7ef;color:var(--ok)}.ready-pill.not-ready{background:#fff0f1;color:#9b1c27}.small-warn{font-size:12px;color:#8a5900}.action-request-head{margin:25px 0}.action-request-head h1{margin:9px 0}.request-item{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:18px}.request-item h3{margin:0 0 4px}.request-item p{margin:0;color:var(--muted)}.request-item form{display:flex;gap:8px;align-items:center}

/* Admin shell */
.admin-body{background:#f6f7f9}.admin-shell{display:grid;grid-template-columns:210px minmax(0,1fr);width:min(1440px,100%);margin:0 auto;min-height:calc(100vh - 72px)}.admin-nav{border-right:1px solid var(--line);background:#fff;padding:22px 14px;display:flex;flex-direction:column;gap:4px}.admin-nav a{color:#344054;text-decoration:none;font-weight:700;font-size:14px;padding:10px 12px;border-radius:8px}.admin-nav a:hover{background:#f5f6f8}.admin-main{padding:28px 30px;min-width:0}.stat-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:20px}.stat-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px;text-decoration:none;color:var(--ink)}.stat-card span{display:block;color:var(--muted);font-size:12px}.stat-card b{font-size:28px;display:block;margin-top:4px}.stat-card.alert{background:#fff9ed}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:18px 20px;border-bottom:1px solid var(--line)}.panel-head h2{margin:0}.filter-bar{display:flex;gap:9px;padding:12px;margin-bottom:14px}.filter-bar input,.filter-bar select{border:1px solid #d6dae1;border-radius:8px;padding:10px 11px;background:#fff;min-width:170px}.filter-bar input{flex:1}.btn.small{padding:7px 10px;font-size:12px}.flagged-row{background:#fffaf0}.tiny-flag{font-size:10px;background:#fff0cf;color:#855500;border-radius:999px;padding:3px 7px;font-weight:800}.admin-review-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:18px}.admin-app-head{margin-top:14px}.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding-top:15px}.summary-grid div{background:#f8f9fb;border-radius:9px;padding:12px}.summary-grid span{display:block;color:var(--muted);font-size:11px}.summary-grid b{font-size:13px}.workflow-column{align-self:start}.side-panel{padding:18px}.side-panel h3{margin-top:0}.side-panel hr{border:0;border-top:1px solid var(--line);margin:18px 0}.evidence-admin-list{display:grid}.evidence-admin-row{display:grid;grid-template-columns:1.1fr 1.2fr auto 1.8fr;gap:12px;align-items:center;border-top:1px solid var(--line);padding:12px 0}.review-doc-form{display:grid;grid-template-columns:130px 1fr auto;gap:6px}.review-doc-form select,.review-doc-form input,.inline-compose textarea{border:1px solid #d6dae1;border-radius:7px;padding:8px}.notes-list{display:grid;gap:8px}.note{background:#f8f9fb;border-radius:9px;padding:11px}.note small{display:block;color:var(--muted)}.note p{margin:6px 0 0}.inline-compose{display:flex;gap:8px;margin-top:12px}.inline-compose textarea{flex:1}.mini-record{border-top:1px solid var(--line);padding-top:10px;margin-top:10px;display:flex;gap:6px;flex-wrap:wrap;align-items:center}.mini-record small{color:var(--muted)}.timeline{display:grid;gap:0}.timeline>div{display:flex;gap:10px}.timeline>div>span{width:9px;height:9px;background:#c3c8d0;border-radius:50%;margin-top:6px;position:relative}.timeline>div>span:after{content:"";position:absolute;width:1px;background:#d8dce2;height:100%;min-height:50px;left:4px;top:9px}.timeline>div:last-child>span:after{display:none}.timeline p{margin:0 0 15px;display:flex;flex-direction:column}.timeline small,.timeline em{color:var(--muted);font-size:11px}.timeline em{font-style:normal}.report-grid,.two-panel{display:grid;grid-template-columns:1fr 1fr;gap:18px}.report-panel{padding:20px}.report-panel h2{margin-top:0}.metric-row{display:flex;justify-content:space-between;gap:15px;padding:10px 0;border-top:1px solid var(--line)}.metric-row span{display:flex;flex-direction:column}.metric-row small{color:var(--muted)}.request-line{background:#f8f9fb;padding:10px;border-radius:8px}.request-line textarea{margin-top:5px}
.status.submitted,.status.pre_screening,.status.under_review{background:#eef4ff;color:#24488d}.status.information_required,.status.replacement_required,.status.open{background:#fff5df;color:#8a5900}.status.candidate_suitable,.status.accepted,.status.verified,.status.placed,.status.post_placement,.status.responded{background:#e9f7ef;color:#177245}.status.unsuccessful,.status.rejected{background:#fff0f1;color:#9b1c27}.status.interview,.status.offer,.status.referred_to_employer,.status.employer_review,.status.pre_employment{background:#f3efff;color:#5b3aa5}.status.withdrawn{background:#f1f3f5;color:#667085}.status.required{background:#fff0f1;color:#9b1c27}.status.optional{background:#f1f3f5;color:#667085}.status.conditional{background:#fff5df;color:#8a5900}

@media(max-width:1180px){.stat-grid{grid-template-columns:repeat(3,1fr)}.admin-review-grid{grid-template-columns:1fr}.workflow-column{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.summary-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.admin-shell{grid-template-columns:1fr}.admin-nav{border-right:0;border-bottom:1px solid var(--line);flex-direction:row;overflow:auto;position:sticky;top:72px;z-index:10}.admin-main{padding:20px}.app-layout,.review-layout{grid-template-columns:1fr}.submit-panel{position:static}.evidence-admin-row{grid-template-columns:1fr 1fr}.review-doc-form{grid-column:1/-1}.report-grid,.two-panel{grid-template-columns:1fr}}
@media(max-width:620px){.topnav a:nth-child(n+2){display:none}.user-pill{display:none}.stat-grid{grid-template-columns:repeat(2,1fr)}.workflow-column{grid-template-columns:1fr}.evidence-row,.request-item{align-items:flex-start;flex-direction:column}.evidence-action,.upload-inline{width:100%;justify-content:flex-start}.upload-inline{flex-direction:column;align-items:stretch}.application-head{align-items:flex-start}.progress-box{width:75px;height:75px;border-width:6px}.review-line{grid-template-columns:1fr;gap:3px}.summary-grid{grid-template-columns:1fr}.filter-bar{flex-direction:column}.filter-bar input,.filter-bar select{width:100%}}
.auth-options{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:22px;padding:4px;background:#f3f4f6;border-radius:10px}.auth-option{padding:9px 12px;border-radius:8px;text-align:center;text-decoration:none;color:var(--muted);font-size:13px;font-weight:800}.auth-option.active{background:#fff;color:var(--ink);box-shadow:0 1px 4px rgba(16,24,40,.08)}.auth-divider{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:12px;margin:20px 0 14px}.auth-divider:before,.auth-divider:after{content:"";height:1px;background:var(--line);flex:1}.auth-divider span{white-space:nowrap}

/* Applicant notifications — compact, readable and action-focused */
.notification-page{width:min(860px,calc(100% - 36px))}.notification-head{align-items:center}.notification-summary{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;background:#fff0f1;color:#9b1c27;border:1px solid #f4c8cc;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:800}.notification-list{display:grid;gap:14px}.notification-card{position:relative;display:grid;grid-template-columns:42px minmax(0,1fr);gap:15px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px 20px;box-shadow:0 3px 12px rgba(16,24,40,.04);overflow:hidden}.notification-card.is-unread{border-color:#efc4c7;box-shadow:0 5px 18px rgba(186,32,39,.08)}.notification-card.is-unread:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--brand)}.notification-card.is-read{background:#fcfcfd}.notification-icon{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#f1f3f5;color:#667085;font-size:16px;font-weight:900}.notification-card.is-unread .notification-icon{background:#fff0f1;color:var(--brand)}.notification-content{min-width:0}.notification-card-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.notification-title-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.notification-title-line h2{font-size:16px;line-height:1.3;margin:0;color:var(--ink)}.unread-pill{display:inline-flex;align-items:center;background:var(--brand);color:#fff;border-radius:999px;padding:3px 7px;font-size:9px;font-weight:850;letter-spacing:.05em;text-transform:uppercase}.notification-meta{display:flex;align-items:center;gap:0;flex-wrap:wrap;margin-top:5px;color:var(--muted);font-size:11px}.notification-meta span+span:before{content:"•";padding:0 7px;color:#c2c7cf}.notification-message{margin:12px 0 14px;color:#465064;font-size:14px;line-height:1.6}.notification-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.notification-actions form{margin:0}.notification-actions .btn{width:auto;min-width:0}.notification-empty{text-align:center;padding:42px 24px}.notification-empty-icon{width:48px;height:48px;margin:0 auto 12px;border-radius:50%;display:grid;place-items:center;background:#e9f7ef;color:var(--ok);font-weight:900}.notification-empty h2{margin:0 0 5px;font-size:20px}.notification-empty p{margin:0;color:var(--muted)}.nav-count{display:inline-grid;place-items:center;min-width:19px;height:19px;padding:0 5px;margin-left:3px;border-radius:999px;background:var(--brand);color:#fff;font-size:10px;font-weight:850;line-height:1}

/* Public job posters are served by Laravel, so no /public/storage symlink is required. */
.job-image img,.detail-poster img,.poster-preview img{display:block;background:#eef0f3}.job-image img{object-position:center}.detail-poster img{object-position:center}.poster-preview img{object-position:center}

@media(max-width:620px){.notification-head{align-items:flex-start;flex-direction:column}.notification-card{grid-template-columns:34px minmax(0,1fr);padding:16px;gap:11px}.notification-icon{width:34px;height:34px}.notification-actions{align-items:stretch}.notification-actions .btn,.notification-actions form{width:100%}.notification-actions form .btn{width:100%}.notification-meta span+span:before{padding:0 5px}}

/* Applicant header — compact icon navigation */
.applicant-nav{align-items:center;gap:22px}.applicant-nav>a:not(.nav-icon-link){display:inline-flex;align-items:center;min-height:40px}.nav-icon-link,.profile-menu-trigger{position:relative;width:40px;height:40px;display:grid;place-items:center;border-radius:10px;color:var(--ink);background:transparent;border:0;cursor:pointer;transition:background .15s ease,color .15s ease}.nav-icon-link:hover,.profile-menu-trigger:hover,.profile-menu[open] .profile-menu-trigger{background:#f3f4f6;color:var(--brand)}.nav-svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.notification-nav-link{margin-left:2px}.icon-count{position:absolute;top:1px;right:0;display:grid;place-items:center;min-width:17px;height:17px;padding:0 4px;background:var(--brand);color:#fff;border:2px solid #fff;border-radius:999px;font-size:9px;font-weight:850;line-height:1}.profile-menu{position:relative}.profile-menu>summary{list-style:none}.profile-menu>summary::-webkit-details-marker{display:none}.profile-dropdown{position:absolute;right:0;top:calc(100% + 10px);width:230px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 14px 36px rgba(16,24,40,.16);padding:7px;z-index:60}.profile-dropdown:before{content:"";position:absolute;right:13px;top:-6px;width:10px;height:10px;background:#fff;border-left:1px solid var(--line);border-top:1px solid var(--line);transform:rotate(45deg)}.profile-dropdown-head{padding:10px 10px 11px;border-bottom:1px solid var(--line);margin-bottom:5px;display:flex;flex-direction:column;min-width:0}.profile-dropdown-head strong{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-dropdown-head span{font-size:11px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:2px}.profile-dropdown>a,.profile-logout{width:100%;display:flex;align-items:center;gap:10px;padding:10px;border:0;border-radius:8px;background:transparent;color:#344054;text-decoration:none;font:inherit;font-size:13px;font-weight:700;text-align:left;cursor:pointer}.profile-dropdown>a:hover,.profile-logout:hover{background:#f5f6f8;color:var(--ink)}.profile-dropdown svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}.profile-dropdown-divider{height:1px;background:var(--line);margin:5px 4px}.profile-dropdown form{margin:0}.profile-logout{color:#9b1c27}.profile-logout:hover{background:#fff1f2;color:#9b1c27}

@media(max-width:620px){.topbar-inner{height:64px}.brand small{display:none}.applicant-nav{gap:6px}.applicant-nav>a:not(.nav-icon-link){font-size:13px}.applicant-nav>a:first-child{display:none}.nav-icon-link,.profile-menu-trigger{width:38px;height:38px}.profile-dropdown{position:fixed;right:14px;top:66px;width:min(260px,calc(100vw - 28px))}.profile-dropdown:before{display:none}}

/* ========================================================================== 
   Responsive portal refinements — tablet + mobile
   ========================================================================== */
.mobile-applicant-nav{display:none}
img,svg{max-width:100%}
input,select,textarea,button{max-width:100%}
input[type="file"]{max-width:100%;font-size:13px}

@media (max-width:1024px){
  .shell{width:min(100% - 32px,1180px)}
  .topnav{gap:14px}
  .applicant-nav{gap:12px}
  .wizard-layout{grid-template-columns:1fr}
  .wizard-steps{position:static;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}
  .step-link{display:flex;align-items:center;justify-content:center;padding:8px 5px}
  .step-link b,.step-link small{display:none}
  .job-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .job-detail-grid{grid-template-columns:minmax(0,1fr) 290px;gap:22px}
  .app-layout,.review-layout{grid-template-columns:1fr}
  .application-menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:16px}
  .application-menu h3{grid-column:1/-1}
  .submit-panel{position:static}
  .admin-main{padding:22px}
  .admin-review-grid{grid-template-columns:1fr}
  .workflow-column{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
  .stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}

@media (max-width:820px){
  .topbar-inner{height:64px}
  .brand-mark{width:36px;height:36px}
  .brand strong{font-size:14px}
  .applicant-nav .applicant-primary-link{display:none !important}
  .applicant-nav .nav-icon-link{display:grid !important}
  .mobile-applicant-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line);background:#fff;padding:0 10px}
  .mobile-applicant-nav a{min-height:50px;display:flex;align-items:center;justify-content:center;gap:5px;text-decoration:none;color:#475467;font-size:11px;font-weight:750;border-bottom:2px solid transparent;min-width:0}
  .mobile-applicant-nav a.active{color:var(--brand);border-bottom-color:var(--brand)}
  .mobile-applicant-nav svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}.mobile-applicant-nav span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .portal-bg{min-height:calc(100vh - 109px)}
  .profile-dropdown{top:calc(100% + 8px)}

  .page-space{padding:28px 0}
  .page-head{align-items:flex-start;flex-direction:column;gap:14px;margin-bottom:20px}
  .page-head h1,.application-head h1{font-size:28px}
  .page-head .btn{min-height:42px}
  .narrow,.notification-page{width:min(100% - 28px,860px)}
  .form-panel,.review-section,.application-menu,.app-summary{padding:18px}
  .grid.two,.grid.three{grid-template-columns:1fr}
  .two-span,.full{grid-column:auto}
  .poster-upload{align-items:stretch;flex-direction:column}
  .poster-preview{width:100%;max-width:460px}
  .publish-choice{grid-template-columns:1fr}
  .review-grid{grid-template-columns:1fr 1fr}

  .jobs-hero{padding:38px 0}
  .jobs-hero h1{font-size:34px;line-height:1.1}
  .job-detail-grid{grid-template-columns:1fr}
  .apply-card-inner{position:static}
  .filter-bar{flex-wrap:wrap}
  .filter-bar input{min-width:min(100%,260px)}

  .application-head{align-items:flex-start}
  .action-panel{align-items:flex-start;flex-direction:column}
  .action-panel .btn{width:100%}
  .application-menu{grid-template-columns:1fr 1fr}
  .evidence-row{align-items:flex-start}
  .evidence-action{min-width:230px}
  .request-item{align-items:flex-start}

  .admin-shell{grid-template-columns:1fr;min-height:calc(100vh - 64px)}
  .admin-nav{position:sticky;top:64px;z-index:15;display:flex;flex-direction:row;overflow-x:auto;overscroll-behavior-x:contain;white-space:nowrap;border-right:0;border-bottom:1px solid var(--line);padding:8px 12px;gap:4px;scrollbar-width:thin}
  .admin-nav a{flex:0 0 auto;padding:9px 12px}
  .admin-main{padding:18px 16px}
  .summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .evidence-admin-row{grid-template-columns:1fr 1fr}
  .review-doc-form{grid-column:1/-1}
  .report-grid,.two-panel{grid-template-columns:1fr}

  .table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
  .table-wrap table{min-width:720px}
  .table-wrap::-webkit-scrollbar{height:8px}
  .table-wrap::-webkit-scrollbar-thumb{background:#ccd1d8;border-radius:999px}
}

@media (max-width:600px){
  .shell{width:min(100% - 22px,1180px)}
  .brand small{display:none}
  .brand{gap:8px}
  .brand-mark{width:34px;height:34px;border-radius:8px}
  .applicant-nav{gap:3px}
  .nav-icon-link,.profile-menu-trigger{width:40px;height:40px}
  .profile-dropdown{position:fixed;right:11px;top:60px;width:min(280px,calc(100vw - 22px));max-height:calc(100vh - 75px);overflow:auto}
  .profile-dropdown:before{display:none}

  .page-space{padding:22px 0}
  .page-head h1,.application-head h1,.form-head h1{font-size:25px;line-height:1.15}
  .eyebrow{font-size:10px}
  .btn{min-height:42px;padding:10px 13px}
  .form-actions,.bottom-actions{flex-direction:column-reverse;align-items:stretch}
  .form-actions .btn,.bottom-actions .btn,.form-actions a,.bottom-actions a{width:100%}
  .auth-wrap{padding:24px 11px;align-items:start}
  .auth-card{padding:22px 18px;border-radius:13px}
  .auth-card h1{font-size:25px}
  .auth-options{grid-template-columns:1fr 1fr}

  .wizard-page{padding:18px 14px}
  .wizard-actions{padding:14px;flex-wrap:wrap}
  .wizard-actions .spacer{display:none}
  .wizard-actions .btn{flex:1 1 140px}
  .wizard-steps{grid-template-columns:repeat(5,1fr);overflow-x:auto}
  .step-link span{width:28px;height:28px}
  .inline-field{flex-direction:column}
  .review-card{padding:18px}
  .review-card h3{font-size:23px}
  .review-grid{grid-template-columns:1fr}

  .job-grid{grid-template-columns:1fr}
  .jobs-hero h1{font-size:30px}
  .public-filter{flex-direction:column;align-items:stretch}
  .public-filter input,.public-filter select,.public-filter button{width:100%;min-width:0}
  .job-detail-grid article{padding:18px}
  .detail-poster{margin:-18px -18px 20px}
  .job-detail-grid h1{font-size:28px}
  .detail-facts{display:grid;gap:7px}

  .application-card{padding:16px}
  .app-card-top{gap:10px}
  .app-card-top h2{font-size:19px}
  .chev{font-size:25px}
  .application-head{margin:16px 0}
  .progress-box{width:76px;height:76px;border-width:6px;flex:0 0 auto}
  .progress-box b{font-size:18px}
  .application-menu{grid-template-columns:1fr}
  .section-row{padding:11px 2px}
  .status-large{font-size:18px}
  .evidence-row,.request-item{flex-direction:column;align-items:stretch;padding:15px}
  .evidence-info{width:100%}
  .evidence-action,.upload-inline{width:100%;min-width:0;justify-content:flex-start;align-items:stretch;flex-direction:column}
  .evidence-action .btn,.upload-inline .btn{width:100%}
  .evidence-action input[type="file"],.upload-inline input[type="file"]{width:100%}
  .file-name{max-width:100%;white-space:normal;overflow-wrap:anywhere}
  .review-line{grid-template-columns:1fr;gap:3px}
  .request-item form{width:100%;flex-direction:column;align-items:stretch}

  .notification-card{grid-template-columns:1fr;padding:16px}
  .notification-icon{width:34px;height:34px}
  .notification-card-head{gap:8px}
  .notification-message{margin:9px 0 12px}
  .notification-actions,.notification-actions form{width:100%}
  .notification-actions .btn,.notification-actions form .btn{width:100%}

  .stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .stat-card{padding:13px}
  .stat-card b{font-size:23px}
  .workflow-column{grid-template-columns:1fr}
  .summary-grid{grid-template-columns:1fr}
  .panel-head{align-items:flex-start;flex-direction:column;padding:15px}
  .filter-bar{flex-direction:column;align-items:stretch}
  .filter-bar input,.filter-bar select,.filter-bar .btn{width:100%;min-width:0}
  .evidence-admin-row{grid-template-columns:1fr;align-items:start}
  .review-doc-form{grid-template-columns:1fr}
  .inline-compose{flex-direction:column}
  .inline-compose .btn{width:100%}
  .side-panel{padding:15px}
  .admin-main .page-head .btn{width:100%}

  .table-wrap{border-radius:12px}
  .table-wrap table{min-width:660px}
  th,td{padding:12px 13px}
}

@media (max-width:390px){
  .shell{width:min(100% - 16px,1180px)}
  .brand strong{font-size:13px}
  .brand-mark{width:32px;height:32px}
  .nav-icon-link,.profile-menu-trigger{width:37px;height:37px}
  .mobile-applicant-nav{padding:0 8px}
  .mobile-applicant-nav a{font-size:11px}
  .stat-grid{grid-template-columns:1fr 1fr;gap:8px}
  .notification-card{padding:14px}
  .application-card{padding:14px}
}
@media(max-width:600px){.public-nav .public-jobs-link{display:none!important}.public-nav .public-account-link{display:inline-flex!important;align-items:center;min-height:40px;font-size:13px}.public-nav{gap:6px}.public-nav a{white-space:nowrap}}

/* Mobile applicant account accessibility + logout reliability */
@media (max-width:820px){
  .applicant-nav .profile-menu{display:block!important;flex:0 0 auto}
  .applicant-nav .profile-menu-trigger{display:grid!important}
  .mobile-applicant-nav{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media (max-width:430px){
  .mobile-applicant-nav{padding:0 4px}
  .mobile-applicant-nav a{font-size:10px;gap:3px;min-height:48px}
  .mobile-applicant-nav svg{width:16px;height:16px}
}
.profile-dropdown .applicant-logout-form{display:block;width:100%;margin:0}
.profile-dropdown .profile-logout{display:flex;width:100%}
.profile-dropdown .profile-logout:disabled{opacity:.65;cursor:wait}


/* 2026-08-27 applicant photo, dashboard updates, evidence checklist and employer view */
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.candidate-photo-editor{display:flex;gap:20px;align-items:center;padding:18px;border:1px solid #e2e6ec;border-radius:16px;background:#fafbfc;margin-bottom:22px}.candidate-photo-preview{width:144px;height:144px;flex:0 0 144px;border-radius:12px;background:#eef1f5;border:1px solid #dde2e8;display:flex;align-items:center;justify-content:center;overflow:hidden;font-size:42px;font-weight:800;color:#c8202f}.candidate-photo-preview img{width:100%;height:100%;object-fit:cover}.candidate-photo-copy h3{margin:0 0 6px}.candidate-photo-copy p{margin:0 0 12px;color:#5f6b7d}.candidate-photo-actions{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:8px}
.dashboard-updates{margin:0 0 24px;padding:20px;border:1px solid #e2e6ec;border-radius:18px;background:#fff;box-shadow:0 5px 18px rgba(16,24,40,.04)}.dashboard-updates-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:14px}.dashboard-updates-head h2{margin:2px 0 3px}.dashboard-update-list{display:grid;gap:10px}.dashboard-update-card{display:grid;grid-template-columns:auto 1fr auto;gap:13px;align-items:center;padding:14px;border:1px solid #eceff3;border-radius:14px;background:#fbfcfd}.dashboard-update-icon{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#fff1f2;color:#bd1e2d;font-weight:900}.dashboard-update-copy p{margin:4px 0;color:#344054}.dashboard-update-copy small{color:#778196}.dashboard-update-title{display:flex;gap:8px;align-items:center}.dashboard-update-title span{font-size:10px;text-transform:uppercase;font-weight:800;color:#bd1e2d;background:#fff1f2;padding:3px 7px;border-radius:999px}
.evidence-checklist-builder{border:1px solid #e2e6ec;border-radius:16px;padding:16px;margin:16px 0 22px;background:#fbfcfd}.checklist-builder-head{display:flex;justify-content:space-between;gap:15px;align-items:flex-start;margin-bottom:14px}.checklist-builder-head h3{margin:0 0 4px}.checklist-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.checklist-group-card{background:#fff;border:1px solid #e2e6ec;border-radius:13px;padding:13px}.checklist-group-title{display:flex;justify-content:space-between;gap:12px;margin-bottom:10px}.checklist-group-title b{display:block}.checklist-group-title small{display:block;color:#667085;margin-top:3px;line-height:1.35}.checklist-options{display:grid;gap:7px}.checklist-option{display:flex;gap:8px;align-items:flex-start;font-size:13px}.checklist-option input{margin-top:2px}.checklist-group-badge{display:inline-block;margin-left:7px;padding:2px 6px;border-radius:999px;background:#f1f3f6;color:#667085;font-size:10px;font-weight:700}
.evidence-group-banner{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:12px 14px;margin:18px 0 8px;border-radius:12px;background:#eef4ff;border:1px solid #d8e4ff}.evidence-group-banner b{display:block}.evidence-group-banner small{display:block;color:#536078;margin-top:2px}.group-progress{white-space:nowrap;padding:5px 9px;border-radius:999px;background:#fff0f1;color:#bd1e2d;font-size:12px;font-weight:700}.group-progress.complete{background:#ecfdf3;color:#067647}
.admin-candidate-heading{display:flex;gap:14px;align-items:center}.admin-candidate-photo{width:74px;height:74px;object-fit:cover;border-radius:12px;border:1px solid #e2e6ec}.head-actions{display:flex;gap:8px;flex-wrap:wrap}
.employer-candidate-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.employer-candidate-card{background:#fff;border:1px solid #e2e6ec;border-radius:18px;overflow:hidden;box-shadow:0 5px 18px rgba(16,24,40,.04)}.employer-photo{aspect-ratio:1/1;background:#eef1f5;display:flex;align-items:center;justify-content:center;color:#c8202f;font-weight:900;font-size:60px;max-height:285px}.employer-photo img{width:100%;height:100%;object-fit:cover}.employer-card-body{padding:16px}.employer-card-top h2{margin:8px 0 2px;font-size:23px}.employer-card-top p{margin:0 0 14px;color:#667085}.candidate-facts{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:0}.candidate-facts div{min-width:0}.candidate-facts dt{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:#778196}.candidate-facts dd{margin:2px 0 0;font-weight:650;overflow-wrap:anywhere}.employer-card-actions{display:flex;justify-content:space-between;gap:10px;align-items:center;border-top:1px solid #edf0f3;margin-top:14px;padding-top:13px}.filter-bar{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin-bottom:20px}.filter-bar .field{min-width:210px;margin:0}
@media(max-width:1050px){.employer-candidate-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.checklist-groups{grid-template-columns:1fr}.dashboard-update-card{grid-template-columns:auto 1fr}.dashboard-update-action{grid-column:2}}
@media(max-width:720px){.candidate-photo-editor{align-items:flex-start}.candidate-photo-preview{width:112px;height:112px;flex-basis:112px}.dashboard-updates{padding:15px}.dashboard-updates-head{display:block}.dashboard-updates-head .btn{margin-top:10px}.dashboard-update-card{grid-template-columns:auto 1fr}.dashboard-update-action{grid-column:1/-1;width:100%}.employer-candidate-grid{grid-template-columns:1fr}.checklist-builder-head{display:block}.checklist-builder-head .btn{margin-top:10px}.evidence-group-banner{align-items:flex-start;flex-direction:column}.admin-candidate-heading{align-items:flex-start}.admin-candidate-photo{width:62px;height:62px}}
@media(max-width:520px){.candidate-photo-editor{flex-direction:column}.candidate-photo-preview{width:132px;height:132px}.candidate-photo-actions .btn{flex:1;justify-content:center}.candidate-facts{grid-template-columns:1fr}.employer-card-actions{align-items:stretch;flex-direction:column}.employer-card-actions .btn{text-align:center}}

.employer-profile-head{display:flex;gap:18px;align-items:center;margin-bottom:14px}.employer-profile-photo{width:150px;height:150px;flex:0 0 150px;border-radius:14px;overflow:hidden;background:#eef1f5;display:flex;align-items:center;justify-content:center;font-size:54px;font-weight:900;color:#c8202f}.employer-profile-photo img{width:100%;height:100%;object-fit:cover}.privacy-banner{padding:12px 14px;border:1px solid #f0d4d8;background:#fff7f8;color:#7e1d28;border-radius:12px;margin-bottom:18px}.employer-profile-grid{display:grid;grid-template-columns:2fr 1fr;gap:18px}@media(max-width:900px){.employer-profile-grid{grid-template-columns:1fr}}@media(max-width:600px){.employer-profile-head{align-items:flex-start;flex-wrap:wrap}.employer-profile-photo{width:112px;height:112px;flex-basis:112px}.employer-profile-head .spacer{display:none}.employer-profile-head>.btn{width:100%;text-align:center}}

/* ========================================================================== 
   Link-only Employer Candidate Directory
   ========================================================================== */
.employer-hero{padding:52px 0;background:linear-gradient(125deg,#17233c 0%,#253557 56%,#9e1d25 100%);color:#fff}.employer-hero h1{margin:4px 0 8px;font-size:42px;line-height:1.08}.employer-hero p:last-child{margin:0;max-width:720px;color:#e0e6ef}.employer-nav form{margin:0}.employer-nav .link-button{font-weight:650;color:var(--ink);padding:0}.employer-search-panel{padding:18px;margin-bottom:22px}.employer-search-main{display:grid;grid-template-columns:minmax(280px,1fr) minmax(190px,260px) auto;gap:12px;align-items:end}.employer-search-btn{min-height:43px}.advanced-search{border-top:1px solid var(--line);margin-top:17px;padding-top:15px}.advanced-search summary{cursor:pointer;font-size:13px;font-weight:800;color:#344054;list-style:none;display:inline-flex;align-items:center;gap:8px}.advanced-search summary::-webkit-details-marker{display:none}.advanced-search summary:after{content:'+';display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#f0f2f5}.advanced-search[open] summary:after{content:'−'}.advanced-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:16px}.advanced-actions{display:flex;gap:9px;margin-top:15px}.directory-results-head{display:flex;justify-content:space-between;gap:14px;align-items:center;margin:0 0 16px;color:#475467;font-size:13px}.directory-results-head strong{font-size:18px;color:var(--ink)}.directory-results-head span{color:var(--muted)}.public-candidate-card .employer-photo{color:inherit;text-decoration:none}.public-candidate-photo{max-height:none;aspect-ratio:1/1}.public-candidate-card .job-category{margin:0 0 5px}.public-candidate-card h2{margin:0;font-size:24px}.candidate-role{margin:2px 0 14px;color:var(--muted);font-weight:650}.public-candidate-card .candidate-facts{margin-top:5px}.employer-no-results{grid-column:1/-1}.employer-no-results h2{margin-top:0}.public-employer-profile-head{margin-top:17px}.public-employer-profile-grid{margin-top:18px}.employer-share-panel{padding:15px 17px;margin-bottom:18px;display:grid;grid-template-columns:minmax(200px,.8fr) minmax(320px,1.2fr);gap:18px;align-items:center}.employer-share-panel p{margin:3px 0 0;color:var(--muted);font-size:12px}.employer-share-actions{display:flex;gap:8px}.employer-share-actions input{min-width:0;flex:1;border:1px solid #d6dae1;border-radius:8px;padding:10px 11px;background:#f9fafb;color:#475467}.employer-share-actions .btn{white-space:nowrap}
@media(max-width:900px){.advanced-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.employer-search-main{grid-template-columns:1fr 1fr}.employer-search-btn{grid-column:1/-1}.employer-share-panel{grid-template-columns:1fr}.employer-share-actions{width:100%}}
@media(max-width:620px){.employer-hero{padding:36px 0}.employer-hero h1{font-size:32px}.employer-nav a{display:none}.employer-nav .link-button{font-size:12px}.employer-search-panel{padding:14px}.employer-search-main,.advanced-filter-grid{grid-template-columns:1fr}.employer-search-btn{grid-column:auto}.advanced-actions{flex-direction:column}.advanced-actions .btn{width:100%}.directory-results-head{align-items:flex-start;flex-direction:column}.employer-card-actions{align-items:stretch;flex-direction:column}.employer-card-actions .btn{width:100%}.public-employer-profile-head{align-items:flex-start;flex-direction:column}.public-employer-profile-head .spacer{display:none}.public-employer-profile-head .btn{width:100%}.employer-share-actions{flex-direction:column}.employer-share-actions .btn{width:100%}}


/* Add Job validation + rich content editor */
.required-mark{display:inline-flex;align-items:center;margin-left:5px;padding:2px 6px;border-radius:999px;background:#fff1f2;color:#b4232d;font-size:10px;font-weight:800;vertical-align:middle}
.field.is-invalid>input,.field.is-invalid>select,.field.is-invalid>textarea,.is-invalid-control{border-color:#d92d20!important;box-shadow:0 0 0 3px rgba(217,45,32,.10)!important}
.repeat-card.is-invalid{border-color:#f04438;background:#fffafa}.field-error{display:block;margin-top:2px;color:#b42318;font-size:12px;font-weight:650}.step-link.has-errors span{border-color:#d92d20;color:#d92d20}.step-link.has-errors:not(.active){background:#fff5f5}.step-link.has-errors b{color:#b42318}
.rich-field{gap:8px}.rich-label{display:block}.rich-editor{border:1px solid #d6dae1;border-radius:10px;background:#fff;overflow:hidden;transition:border-color .15s,box-shadow .15s}.rich-field.is-invalid .rich-editor{border-color:#d92d20;box-shadow:0 0 0 3px rgba(217,45,32,.10)}.rich-toolbar{display:flex;align-items:center;gap:4px;flex-wrap:wrap;padding:8px;background:#f8f9fb;border-bottom:1px solid #e5e7eb}.rich-toolbar button,.rich-toolbar select{min-height:32px;border:1px solid #d8dde5;background:#fff;color:#344054;border-radius:7px;padding:5px 9px;font:inherit;font-size:12px;font-weight:650;cursor:pointer}.rich-toolbar button:hover{background:#f1f3f5}.rich-toolbar button:disabled{opacity:.55;cursor:wait}.rich-toolbar select{padding-right:24px}.toolbar-divider{width:1px;height:24px;background:#d8dde5;margin:0 2px}.rich-surface{min-height:170px;padding:14px 15px;outline:none;color:var(--ink);font-size:14px;font-weight:450;line-height:1.65;overflow-wrap:anywhere}.rich-surface:empty:before{content:attr(data-placeholder);color:#98a2b3;pointer-events:none}.rich-surface p{margin:0 0 10px}.rich-surface h3,.rich-surface h4{margin:12px 0 7px;color:var(--ink)}.rich-surface ul,.rich-surface ol{padding-left:24px;margin:8px 0 12px}.rich-surface blockquote{margin:10px 0;padding:9px 13px;border-left:3px solid var(--brand);background:#fafafa;color:#596273}.rich-surface img{display:block;max-width:100%;height:auto;border-radius:8px;margin:12px auto}.rich-source{display:none!important}
.job-rich-content p{margin:0 0 12px}.job-rich-content ul,.job-rich-content ol{padding-left:24px;margin:10px 0 16px}.job-rich-content li{margin:5px 0}.job-rich-content h3{font-size:18px;color:var(--ink);margin:18px 0 8px}.job-rich-content h4{font-size:16px;color:var(--ink);margin:16px 0 7px}.job-rich-content blockquote{margin:14px 0;padding:11px 15px;border-left:4px solid var(--brand);background:#f8f9fb;border-radius:0 8px 8px 0}.job-rich-content a{color:var(--brand);text-decoration:underline}.job-rich-content img{display:block;max-width:100%;height:auto;border-radius:10px;margin:16px auto}
@media(max-width:620px){.rich-toolbar{gap:3px;padding:7px}.rich-toolbar button,.rich-toolbar select{font-size:11px;padding:5px 7px}.rich-surface{min-height:150px;padding:12px}.toolbar-divider{display:none}}
