:root{--ink:#1c1917;--muted:#6b6560;--border:#e4e1dc;--mint:#8ce2c5;--sun:#f9c37a;--bg:#f5f4f0;--card:#fafaf8;--accent:#2d6a4f;--danger:#b91c1c;--warn:#d97706;--ok:#2d6a4f}*{box-sizing:border-box}body{margin:0;font-family:var(--font-body,"DM Sans",system-ui,sans-serif);background:var(--bg);color:var(--ink);line-height:1.5}a{color:var(--accent)}header.app-header{background:var(--card);border-bottom:1px solid var(--border);padding:1rem 1.5rem;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem}header h1{margin:0;font-size:1.25rem}nav.tabs{display:flex;gap:.5rem;flex-wrap:wrap}nav.tabs a.tab,nav.tabs button{border:1px solid var(--border);background:var(--bg);padding:.4rem .85rem;border-radius:999px;cursor:pointer;font-size:.9rem;text-decoration:none;color:inherit}nav.tabs a.tab.active,nav.tabs button.active{background:var(--ink);color:#fff;border-color:var(--ink)}main{max-width:720px;margin:0 auto;padding:1.5rem}main.admin-root,main.client-root{max-width:none!important;width:100%!important;margin:0!important;padding:0!important;min-height:100dvh;box-sizing:border-box}main.admin-root .admin-app,main.client-root .client-app{width:100%;max-width:none}.panel{display:none}.panel.active{display:block}.card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:1.25rem 1.5rem;margin-bottom:1rem}.card h2{margin:0 0 .75rem;font-size:1.1rem}.card h3{margin:1rem 0 .5rem;font-size:.95rem}.grid-2{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem}@media (max-width:640px){.grid-2{grid-template-columns:1fr}}label{display:block;font-family:var(--font-body);font-size:.875rem;font-weight:600;margin-bottom:6px;color:var(--text)}.form-check-row{display:flex;align-items:center;gap:.6rem;margin:.65rem 0;min-height:1.25rem}.form-check-row input[type=checkbox]{width:1.05rem;height:1.05rem;margin:0;flex-shrink:0;accent-color:var(--accent);cursor:pointer}.form-check-row label,.form-check-row>span{margin:0;font-size:.9rem;font-weight:500;color:var(--ink);cursor:pointer;line-height:1.35}input:not([type=checkbox]):not([type=radio]):not([type=file]):not(.salary-input-group__field):not(.admin-search),select,textarea{width:100%;padding:.55rem .65rem;border:1px solid var(--border);border-radius:8px;font:inherit;margin-bottom:.75rem}textarea{min-height:120px;resize:vertical}.field-hint{font-size:.8rem;color:var(--muted);margin:-.5rem 0 .75rem}.chip-grid{display:flex;flex-wrap:wrap;gap:.5rem}.chip{padding:.35rem .75rem;font-size:.85rem;background:var(--bg)}.chip.selected{background:var(--accent);color:#fff;border-color:var(--accent)}.chip.disabled{opacity:.45;cursor:not-allowed}.chip.level-green{border-color:var(--ok)}.chip.level-yellow{border-color:var(--warn)}.chip.level-bridge{border-color:var(--accent)}.btn-row{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:1rem}button.primary{background:var(--ink);color:#fff;border:none;border-radius:8px;font-weight:600}button.primary,button.secondary{padding:.6rem 1.1rem;cursor:pointer}button.secondary{background:var(--card);border:1px solid var(--border);border-radius:8px}.alert{padding:.75rem 1rem;border-radius:8px;margin-bottom:1rem;font-size:.9rem}.alert.error{background:#fef2f2;color:var(--danger);border:1px solid #fecaca}.alert.warn{color:var(--warn);border:1px solid #fde68a}.alert.ok{background:#ecfdf5;color:var(--ok);border:1px solid #a7f3d0}table.matrix{width:100%;border-collapse:collapse;font-size:.85rem}table.matrix td,table.matrix th{border:1px solid var(--border);padding:.45rem .6rem;text-align:left}table.matrix th{background:var(--bg)}.badge{display:inline-block;padding:.15rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600}.badge.green{background:#d1fae5;color:#065f46}.badge.yellow{background:#fef3c7;color:#92400e}.badge.bridge{background:#e0e7ff;color:var(--accent)}.badge.red{background:#fee2e2;color:#991b1b}pre.export-preview{background:#0b1224;color:#e2e8f0;padding:1rem;border-radius:8px;overflow:auto;max-height:320px;font-size:.75rem}.word-count{font-size:.8rem;color:var(--muted);text-align:right;margin-top:-.5rem}.step-indicator{font-size:.85rem;color:var(--muted);margin-bottom:1rem}.employer-row{border:1px dashed var(--border);padding:1rem;border-radius:8px;margin-bottom:.75rem}.jr-layout{display:grid;grid-template-columns:220px 1fr;grid-gap:1.25rem;gap:1.25rem;align-items:start}@media (max-width:768px){.jr-layout{grid-template-columns:1fr}}.jr-sidebar h2{font-size:1.1rem;margin:0 0 .75rem}.jr-steps{margin:0 0 1rem;padding-left:1.2rem;font-size:.9rem;color:var(--muted)}.jr-steps li.done{color:var(--ok)}.jr-steps li.active{color:var(--ink);font-weight:600}.jr-summary-bar{display:flex;justify-content:space-between;align-items:center;background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:.65rem 1rem;margin-bottom:1rem}.jr-label,.jr-summary-bar{font-weight:600;font-size:.9rem}.jr-label{display:block;margin:1rem 0 .5rem}.jr-label .hint{font-weight:400;color:var(--muted);font-size:.8rem}.req{color:var(--danger)}.jr-chip-grid{display:flex;flex-wrap:wrap;gap:.45rem}.jr-chip{border:1px solid var(--border);background:var(--card);padding:.4rem .75rem;border-radius:999px;font-size:.82rem;cursor:pointer;color:var(--ink)}.jr-chip.selected,.jr-chip:hover{border-color:var(--accent)}.jr-chip.selected{background:var(--accent-soft,#e8f0ec);color:var(--accent);font-weight:600}.from-resume{font-size:.75rem;color:var(--ok);font-weight:600;margin-left:.35rem}.hidden{display:none!important}.jr-title-group{margin-bottom:1rem}.jr-group-label{margin:0 0 .4rem;font-size:.85rem;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.03em}.jr-selected-titles{background:var(--page-bg);border:1px solid var(--border);border-radius:8px;padding:.75rem;margin-bottom:.75rem;display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.jr-selected-label{font-size:.8rem;font-weight:600;color:var(--muted);width:100%;margin-bottom:.25rem}.jr-pill-remove{cursor:pointer}#title-search{margin-bottom:.5rem}.setup-wrap{max-width:640px;margin:0 auto}.setup-profile-banner{margin-bottom:1rem}.setup-profile-banner a{font-weight:600}.profile-wrap{max-width:1100px;margin:0 auto;padding:0 1rem 2rem}.profile-layout{display:grid;grid-template-columns:minmax(220px,280px) 1fr;grid-gap:1.25rem;gap:1.25rem;align-items:start}@media (max-width:768px){.profile-layout{grid-template-columns:1fr}}.profile-sidebar{position:-webkit-sticky;position:sticky;top:1rem}.profile-sidebar-title{margin:0 0 .25rem;font-size:1.1rem}.profile-name{margin:0;font-weight:600}.profile-status-badge{margin:1rem 0;padding:.5rem .65rem;border-radius:8px;font-size:.85rem;font-weight:600;background:#f3f4f6;color:var(--ink)}.profile-status-badge.status-approved{background:#ecfdf5;color:#065f46}.profile-status-badge.status-in_review,.profile-status-badge.status-pending{background:#fffbeb;color:#92400e}.profile-incomplete{margin:0 0 1rem;font-size:.85rem}.profile-incomplete ul{margin:.35rem 0 .5rem;padding-left:1.1rem}.profile-nav{display:flex;flex-direction:column;gap:.35rem;margin:1rem 0}.profile-nav-item{display:flex;justify-content:space-between;align-items:center;width:100%;text-align:left;border:1px solid var(--border);background:var(--card);border-radius:8px;padding:.55rem .65rem;font-size:.9rem;cursor:pointer;color:var(--ink)}.profile-nav-item.active,.profile-nav-item:hover{border-color:var(--accent)}.profile-nav-item.active{background:var(--accent-soft,#e8f0ec)}.profile-nav-badge{background:#fef3c7;color:#92400e;font-size:.75rem;font-weight:700;padding:.1rem .45rem;border-radius:999px}.profile-guided-link{display:block;margin-top:.5rem}.profile-section-card{max-width:none}.profile-empty{max-width:480px;margin:2rem auto;text-align:center}.alert.warn{background:#fffbeb;border-color:#fcd34d;color:#78350f}.setup-progress{display:flex;gap:.35rem;margin-bottom:1.25rem}.progress-dot{flex:1 1;border:1px solid var(--border);background:var(--card);border-radius:10px;padding:.5rem .35rem;cursor:pointer;text-align:center;font-size:.75rem;color:var(--muted)}.progress-dot .num{display:block;font-weight:700;font-size:.9rem;color:var(--ink)}.progress-dot.active{border-color:var(--accent);background:var(--accent-soft,#e8f0ec)}.progress-dot.done .num{color:var(--ok)}.setup-card h2{margin:0 0 .35rem;font-size:1.35rem}.setup-card .lead{margin:0 0 1.25rem;color:var(--muted);font-size:.95rem}.setup-nav{display:flex;justify-content:space-between;gap:.75rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--border)}.upload-zone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.35rem;border:1px dashed var(--border);border-radius:10px;padding:1.25rem 1rem;margin-bottom:.75rem;cursor:pointer;background:var(--page-bg);text-align:center}.upload-zone:hover{border-color:var(--accent);background:var(--accent-soft,#e8f0ec)}.upload-icon{font-size:1.75rem;color:var(--accent)}#resume-paste{min-height:100px;margin-bottom:.5rem}.ok-line{color:var(--ok);font-weight:600;font-size:.9rem}.chip-row,.chip-wall{display:flex;flex-wrap:wrap;gap:.4rem}.chip-wall{max-height:220px;overflow-y:auto;padding:.5rem 0;margin-bottom:1rem}.chip{border:1px solid var(--border);background:var(--card);padding:5px 11px;border-radius:999px;font-size:.8125rem;font-family:var(--font-body);cursor:pointer;color:var(--ink)}.chip.on{background:var(--accent-soft,#e8f0ec);border-color:var(--accent);color:var(--accent);font-weight:600}.selected-row{min-height:2.75rem;padding:.5rem .625rem;background:var(--page-bg);border-radius:8px;margin-bottom:0;align-items:center}.search{width:100%;margin-bottom:.5rem}.more-criteria{margin-top:1rem;font-size:.9rem}.more-criteria summary{cursor:pointer;font-weight:600;padding:.5rem 0}.sub{margin:1rem 0 .5rem;font-family:var(--font-body);font-size:.6875rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted)}.form-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:.75rem;gap:.75rem}.form-grid .full{grid-column:1/-1}.form-grid label{display:block;font-family:var(--font-body);font-size:.8125rem;font-weight:600;color:var(--text);margin-bottom:6px}.form-grid input,.form-grid select,.form-grid textarea{width:100%;margin:0;min-height:40px;padding:8px 12px;border:1px solid var(--input-border);border-radius:8px;font-family:var(--font-body);font-size:.875rem;color:var(--text);background:var(--card-bg);box-sizing:border-box}.job-block{border:1px solid var(--border);border-radius:10px;padding:1rem;margin-bottom:.75rem;background:var(--card-bg)}.link-btn{background:none;border:none;color:var(--danger);cursor:pointer;font-size:.85rem;padding:.25rem 0;margin-top:.5rem}.wc{text-align:right;font-size:.8rem;color:var(--muted);margin:-.5rem 0 1rem}.setup-missing{margin-top:.75rem;font-size:.85rem}.addr-pool-toolbar{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0 .75rem}.address-pool-table{margin-top:.5rem}.addr-row{display:grid;grid-template-columns:10rem 1fr auto;grid-gap:.5rem .75rem;gap:.5rem .75rem;align-items:center;padding:.5rem 0;border-bottom:1px solid var(--border,#e5e7eb)}.addr-row.addr-head{font-size:.75rem;font-weight:600;text-transform:uppercase;color:var(--muted,#6b7280)}.addr-market input{width:5.5rem;display:inline-block;margin-right:.25rem}.job-heading{margin:0 0 .5rem;font-size:.95rem;color:var(--muted,#6b7280)}.job-bullets-preview{margin:.5rem 0 0;font-size:.85rem}.job-bullets-preview ul{margin:.35rem 0 0;padding-left:1.25rem}.cert-note{margin:0 0 .75rem;padding:.5rem .65rem;background:#fffbeb;border-radius:6px;border:1px solid #fde68a}.chip .chip-x{background:none;border:none;padding:0 0 0 .25rem;cursor:pointer;font:inherit;color:inherit}.user-banner{background:#f0f4ff;padding:.65rem .85rem;border-radius:8px;font-size:.9rem;margin-top:.5rem}.section-title{margin:0 0 .75rem;font-size:1.05rem}.read-dl{margin:0;font-size:.9rem}.read-dl dt{font-weight:600;color:var(--muted);margin-top:.65rem}.read-dl dd{margin:.25rem 0 0}.prompt-preview{background:#0b1224;color:#e2e8f0;padding:1rem;border-radius:8px;overflow:auto;max-height:360px;font-size:.72rem;line-height:1.45;white-space:pre-wrap}.sticky-actions{position:-webkit-sticky;position:sticky;bottom:0;background:var(--bg);padding:.75rem 0}@media (max-width:640px){.form-grid{grid-template-columns:1fr;gap:12px}.progress-dot .lbl{display:none}}.custom-function-row,.inline-field-row{display:flex;flex-wrap:wrap;align-items:stretch;gap:8px;margin-top:8px}.custom-function-row .field-control,.inline-field-row .field-control{flex:1 1 12rem;min-width:0;width:auto;margin:0}.inline-field-row input:not([type=checkbox]):not([type=radio]):not([type=file]),.inline-field-row--add input:not([type=checkbox]):not([type=radio]):not([type=file]),.inline-field-row--triple input:not([type=checkbox]):not([type=radio]):not([type=file]){margin:0}.salary-row .field-control.salary-input{flex:0 1 auto;width:9rem;max-width:11rem;margin-bottom:0;height:var(--portal-form-control-h,40px);min-height:var(--portal-form-control-h,40px)}@media (max-width:640px){.salary-row{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;gap:8px}.salary-row .field-control.salary-input{flex:1 1 5rem;min-width:4.5rem;max-width:none;width:auto}}.inline-field-row--triple{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) auto;grid-gap:8px;gap:8px;align-items:stretch}.inline-field-row--triple input:not([type=checkbox]):not([type=radio]):not([type=file]){width:100%;flex:unset}.custom-function-row .btn,.inline-field-row .btn,.inline-field-row--triple .btn{width:auto;height:var(--client-control-h,40px);min-height:var(--client-control-h,40px);margin:0;padding:0 16px;flex-shrink:0;white-space:nowrap;font-family:var(--font-body)}@media (max-width:640px){.inline-field-row--triple{display:flex;flex-direction:column;align-items:stretch}.inline-field-row--triple .btn{width:100%;min-height:var(--client-control-h,40px)}.inline-field-row--add,.inline-field-row.inline-field-row--add{flex-direction:row;flex-wrap:nowrap;align-items:stretch}.inline-field-row--add .field-control{flex:1 1 auto;min-width:0;width:auto}.inline-field-row--add .btn,.inline-field-row--add .btn-inline-action{width:auto;min-height:var(--client-control-h,40px);height:var(--client-control-h,40px)}.custom-function-row,.inline-field-row:not(.inline-field-row--add):not(.inline-field-row--triple){flex-direction:column;align-items:stretch}.custom-function-row .btn,.inline-field-row:not(.inline-field-row--add) .btn{width:100%;min-height:var(--client-control-h,40px)}}.app-client-page .inline-field-row .btn,.app-client-page .inline-field-row .field-control,.app-client-page .inline-field-row--triple .btn{min-height:var(--client-control-h,40px);height:var(--client-control-h,40px)}