:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#182238;background:#f5f7fa;font-synthesis:none}
*{box-sizing:border-box}body{margin:0;min-height:100vh}button,input,textarea{font:inherit}button{background:#1957bb;color:white;border:1px solid #1957bb;border-radius:9px;padding:12px 18px;font-weight:650;cursor:pointer}button:disabled{opacity:.6;cursor:wait}button:hover:not(:disabled){background:#104592}.secondary{background:white;border-color:#d5dce6;color:#34445e}.secondary:hover:not(:disabled){background:#f0f3f9}.hidden{display:none!important}.site-header{padding:17px max(22px,calc((100% - 1180px)/2));background:#fff;border-bottom:1px solid #e5e9f0;display:flex;align-items:center;justify-content:space-between;gap:18px}.brand{display:flex;align-items:center;gap:12px;font-weight:800;letter-spacing:.035em;font-size:13px}.brand small{display:block;letter-spacing:0;font-weight:500;font-size:12px;color:#64748b;margin-top:3px}.brand-mark{display:inline-grid;place-items:center;background:#183d7e;color:white;width:38px;height:38px;border-radius:11px;font-size:15px}main{max-width:1180px;margin:43px auto 80px;padding:0 24px;min-height:calc(100vh - 185px)}.card{background:white;border:1px solid #e5eaf1;box-shadow:0 4px 18px rgba(29,48,85,.035);padding:27px;border-radius:15px}.narrow{max-width:440px;margin:70px auto}.eyebrow{text-transform:uppercase;color:#275cb6;letter-spacing:.1em;font-size:11px;font-weight:850;margin:0 0 11px}h1{font-size:clamp(27px,3vw,34px);letter-spacing:-.04em;margin:0 0 8px}h2{font-size:20px;margin:0}.muted{color:#607086;line-height:1.6;margin:0 0 23px}.fine{font-size:12px;margin:20px 0 0}label{display:block;font-size:13px;margin:19px 0 8px;font-weight:700}input,textarea{border:1px solid #cbd5e1;border-radius:9px;padding:12px 13px;width:100%;background:#fff;color:#182238}input:focus,textarea:focus{outline:3px solid #dce9ff;border-color:#3774d7}textarea{resize:vertical;line-height:1.6}form>button{width:100%;margin-top:23px}.page-top,.section-head{display:flex;align-items:center;justify-content:space-between;gap:20px}.page-top{margin-bottom:25px;align-items:flex-start}.page-top p.muted{margin-bottom:0}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:22px 0}.stat{padding:22px;border:1px solid #e5eaf1;background:white;border-radius:13px}.stat span{color:#657489;font-size:13px;display:block}.stat strong{font-size:31px;display:block;margin-top:8px;letter-spacing:-.04em}.section-head{margin-bottom:18px}.section-head input{width:255px}table{width:100%;border-collapse:collapse;text-align:left}th{font-size:12px;color:#607086;background:#f6f8fb}td,th{padding:16px 13px;border-bottom:1px solid #edf0f5}td{font-size:14px}.table-wrap{overflow:auto}.tag{background:#ecf2ff;color:#2459a9;font-weight:700;border-radius:999px;padding:5px 10px;text-transform:capitalize;font-size:12px}.message{max-width:1180px;margin:0 auto 22px;padding:13px 17px;border:1px solid #bfd8fc;background:#eaf3ff;color:#153f79;border-radius:9px}.message.error{background:#fff0f0;color:#9c2828;border-color:#f2c4c4}.required{color:#bb3030}.actions{display:flex;gap:10px;align-items:center;margin-top:23px}footer{text-align:center;color:#738197;font-size:12px;padding:30px}.narrow input{margin-bottom:7px}@media(max-width:700px){main{margin:25px auto 55px;padding:0 13px}.card{padding:18px}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.page-top{flex-direction:column}.section-head{flex-direction:column;align-items:stretch}.section-head input{width:100%}.site-header{padding:13px}.brand{font-size:11px}.brand small{font-size:10px}}
/* STEP 2: independent JD extraction and recruiter review */
select{width:100%;border:1px solid #cbd5e1;border-radius:9px;padding:12px 13px;background:white;color:#182238;font:inherit}
select:focus{outline:3px solid #dce9ff;border-color:#3774d7}
.compact{padding:7px 12px;font-size:12px;white-space:nowrap}
.two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.jd-preview{border:1px solid #e1e8f2;border-radius:9px;padding:13px;margin-bottom:20px}
.jd-preview summary{cursor:pointer;font-weight:650;color:#2459a9}
.jd-preview pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:13px;line-height:1.6;max-height:270px;overflow:auto}
.callout{background:#f4f7fc;border:1px solid #dce6f6;border-radius:9px;padding:14px;margin:16px 0;color:#34445e;font-size:14px;line-height:1.6}
.requirement-row{padding:15px;margin:13px 0;border:1px solid #e2e9f3;border-radius:11px;background:#fbfcff}
.requirement-row textarea{margin:10px 0 0}
.requirement-header{display:flex;align-items:center;justify-content:space-between;gap:12px}
.requirement-row .fine{margin:10px 0 0}
#requirements-form h2{margin:29px 0 12px}
#extraction-box .muted{margin:14px 0}
.success{background:#ecfbf4;border:1px solid #a1dec3;padding:17px;color:#125338;border-radius:9px}
#upload-status{margin:7px 0 0}
@media(max-width:700px){.two-col{grid-template-columns:1fr}.actions{flex-wrap:wrap}.actions button{flex:1}}

/* STEP 3: editable recruiter-only assessment */
.assessment-section{border-top:1px solid #e5eaf1;margin-top:29px;padding-top:28px}
.assessment-section .section-head{align-items:center}
.question-card{padding:19px;border:1px solid #e1e8f2;border-radius:11px;margin:19px 0;background:#fbfcff}
.question-card h3{font-size:15px;margin:0 0 9px;color:#233b63}
.question-card textarea{margin:6px 0 10px}
.question-card .two-col{margin:10px 0}
.question-card .options-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.question-card .options-grid label{font-weight:600;margin:6px 0 4px}
.question-card .fine{margin:9px 0 4px}
.question-card .tag{margin-left:8px}
.assessment-section .muted{margin:12px 0}
@media(max-width:700px){.question-card .options-grid{grid-template-columns:1fr}.assessment-section .section-head{align-items:flex-start}}
