.individual-onboarding { --ob-primary:#6544ef; --ob-soft:#f3f0ff; --ob-ink:#18243b; --ob-muted:#66738a; --ob-line:#e0e5ef; --ob-green:#168653; color:var(--ob-ink); background:#f6f8fc; font:14px/1.5 Inter,Arial,sans-serif; }
.individual-onboarding *, .signup-dialog * { box-sizing:border-box; }
.ob-verify-gate { min-height:560px; display:grid; place-items:center; padding:64px 20px; background:linear-gradient(145deg,#f8faff,#eef2ff); }
.ob-verify-card { width:min(520px,100%); padding:40px; border:1px solid var(--ob-line); border-radius:20px; background:#fff; text-align:center; box-shadow:0 16px 45px #23305c12; }
.ob-verify-card h1 { margin:0 0 14px; font-size:28px; line-height:1.25; }
.ob-verify-card p { margin:0 0 26px; color:var(--ob-muted); }
.ob-verify-card form { margin:0; }
.ob-linkedin-button { display:flex; align-items:center; justify-content:center; gap:12px; width:100%; min-height:52px; padding:12px 18px; border:0; border-radius:10px; background:#0a66c2; color:#fff; font:inherit; font-weight:700; cursor:pointer; }
.ob-linkedin-mark { font-size:25px; font-weight:800; }
.ob-retry-warning,.ob-alert { margin-bottom:18px; padding:12px 16px; border:1px solid #f0c7aa; border-radius:10px; background:#fff7ee; color:#854216; white-space:pre-line; }
.ob-topbar { display:grid; grid-template-columns:240px minmax(0,1fr) 250px; align-items:center; gap:24px; max-width:1440px; margin:auto; padding:24px 32px; }
.ob-page-label { font-size:18px; font-weight:700; }
.ob-page-label small { display:block; margin-top:4px; color:var(--ob-muted); font-size:12px; font-weight:400; }
.ob-progress { width:100%; max-width:460px; margin:auto; }
.ob-progress-copy { display:flex; justify-content:space-between; gap:12px; margin-bottom:9px; font-size:12px; }
.ob-progress-track { height:7px; overflow:hidden; border-radius:10px; background:#e3e7f2; }
.ob-progress-track span { display:block; width:0; height:100%; background:linear-gradient(90deg,#6544ef,#479cf0); transition:width .2s; }
.ob-verified { color:var(--ob-muted); text-align:right; font-size:12px; }
.ob-verified>strong { display:block; color:var(--ob-green); }
.ob-verified form { margin:5px 0 0; }
.ob-switch-account { padding:2px 0; border:0; background:none; color:var(--ob-primary); font:inherit; font-weight:600; cursor:pointer; }
.ob-layout { display:grid; grid-template-columns:225px minmax(0,1fr) 250px; max-width:1376px; margin:0 auto; background:#fff; border:1px solid var(--ob-line); border-radius:16px; overflow:clip; }
.individual-onboarding { padding-bottom:36px; }
.individual-onboarding:has(.ob-verify-gate) { padding-bottom:0; }
.ob-sidebar { padding:30px 22px; background:#f5f6fc; border-right:1px solid var(--ob-line); }
.ob-sidebar h2 { margin:0 0 12px; font-size:20px; line-height:1.3; }
.ob-sidebar>p { margin:0 0 28px; color:var(--ob-muted); font-size:12px; }
.ob-steps { margin:0; padding:0; list-style:none; }
.ob-steps li { position:relative; display:flex; gap:11px; min-height:68px; }
.ob-steps li:not(:last-child)::after { content:''; position:absolute; top:28px; bottom:5px; left:13px; width:1px; background:#d4daea; }
.ob-steps b { z-index:1; display:grid; place-items:center; flex:0 0 28px; width:28px; height:28px; border:1px solid #c4cddd; border-radius:50%; background:#fff; font-size:12px; }
.ob-steps span { display:flex; flex-direction:column; padding-top:3px; }
.ob-steps strong { font-size:12px; }
.ob-steps small { color:var(--ob-muted); font-size:10px; }
.ob-steps li.active b { border-color:var(--ob-primary); background:var(--ob-primary); color:#fff; }
.ob-steps li.complete b { border-color:var(--ob-green); background:var(--ob-green); color:#fff; }
.ob-safe { margin-top:20px; padding:14px; border-radius:10px; background:#fff; color:var(--ob-muted); font-size:11px; }
.ob-content { min-width:0; padding:32px; }
.ob-form { max-width:780px; margin:auto; }
.ob-section { display:none; min-height:430px; }
.ob-section.active { display:block; }
.ob-section h2 { display:flex; align-items:center; gap:10px; margin:0 0 24px; color:var(--ob-ink); font-size:20px; }
.ob-section h2>b { display:grid; place-items:center; width:28px; height:28px; border-radius:8px; background:var(--ob-primary); color:#fff; font-size:13px; }
.ob-section>p { color:var(--ob-muted); }
.ob-grid { display:grid; gap:4px 18px; }
.ob-grid.two { grid-template-columns:repeat(2,minmax(0,1fr)); }
.ob-field,.ob-title { display:block; margin:0 0 18px; font-size:12px; font-weight:600; }
.ob-field em,.ob-title em { color:#cc384b; font-style:normal; }
.ob-field small,.ob-title small { color:var(--ob-muted); font-weight:400; }
.ob-field input[type=text],.ob-field input[type=email],.ob-field input[type=url],.ob-field select,.ob-field textarea { display:block; width:100%; min-height:44px; margin-top:7px; padding:11px 12px; border:1px solid #ccd5e4; border-radius:8px; background:#fff; color:var(--ob-ink); font:inherit; }
.ob-field input:focus,.ob-field textarea:focus { outline:2px solid #6544ef44; outline-offset:1px; border-color:var(--ob-primary); }
.ob-readonly { background:#f4f6fa!important; color:#66738a!important; }
.ob-check-grid,.ob-card-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin-bottom:22px; }
.ob-check { display:flex; align-items:flex-start; gap:8px; font-size:12px; cursor:pointer; }
.ob-check input,.ob-consent input { margin-top:3px; accent-color:var(--ob-primary); }
.ob-pill-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; }
.ob-choice,.ob-pill { position:relative; cursor:pointer; }
.ob-choice input,.ob-pill input { position:absolute; opacity:0; }
.ob-choice span,.ob-pill span { display:block; height:100%; padding:12px; border:1px solid var(--ob-line); border-radius:8px; font-size:12px; }
.ob-choice span { display:grid; min-height:62px; place-items:center; text-align:center; }
.ob-choice input:checked+span,.ob-pill input:checked+span { border-color:var(--ob-primary); background:var(--ob-soft); color:#4d32c3; box-shadow:inset 0 0 0 1px var(--ob-primary); }
.ob-choice input:focus-visible+span,.ob-pill input:focus-visible+span { outline:2px solid var(--ob-primary); outline-offset:3px; }
.ob-search-select { position:relative; display:block; margin-top:7px; font-weight:400; }
.ob-search-toggle { display:flex; align-items:center; justify-content:space-between; gap:10px; min-height:44px; padding:10px 12px; border:1px solid #ccd5e4; border-radius:8px; background:#fff; list-style:none; cursor:pointer; }
.ob-search-toggle::-webkit-details-marker { display:none; }
.ob-search-menu { position:absolute; z-index:50; top:calc(100% + 6px); left:0; right:0; padding:8px; border:1px solid var(--ob-line); border-radius:10px; background:#fff; box-shadow:0 12px 28px #13213c26; }
.ob-search-box input { width:100%; margin-bottom:8px; padding:9px; border:1px solid var(--ob-line); border-radius:6px; }
.ob-search-options { max-height:210px; overflow:auto; }
.ob-search-option { display:flex; justify-content:space-between; width:100%; padding:8px 10px; border:0; border-radius:6px; background:#fff; text-align:left; font-size:12px; cursor:pointer; }
.ob-search-option.selected,.ob-search-option:hover { background:var(--ob-soft); color:var(--ob-primary); }
.ob-search-option b { display:none; }
.ob-search-option.selected b { display:block; }
.ob-native { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; opacity:0; pointer-events:none; }
.ob-about { display:grid; grid-template-columns:minmax(0,1fr) 155px; gap:22px; }
.ob-field textarea { min-height:180px; resize:vertical; }
.ob-counter { display:block; margin-top:5px; text-align:right; }
.ob-photo { text-align:center; }
.ob-photo-preview { display:grid; place-items:center; width:96px; height:96px; margin:12px auto; border:1px dashed #b9c3d5; border-radius:50%; overflow:hidden; color:var(--ob-muted); font-size:11px; }
.ob-photo-preview img,.ob-avatar img { width:100%; height:100%; object-fit:cover; }
.ob-photo input { width:100%; font-size:10px; }
.ob-review { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.ob-review>div { min-width:0; padding:13px; border:1px solid var(--ob-line); border-radius:9px; background:#f9faff; }
.ob-review>div.wide { grid-column:1/-1; }
.ob-review small { display:block; margin-bottom:5px; color:var(--ob-muted); font-size:11px; }
.ob-review strong { font-size:12px; overflow-wrap:anywhere; }
.ob-consent { display:flex; align-items:flex-start; gap:10px; margin-top:22px; color:var(--ob-muted); font-size:12px; }
.ob-consent a { color:var(--ob-primary); text-decoration:underline; }
.ob-nav { display:flex; justify-content:space-between; gap:12px; margin-top:28px; padding-top:20px; border-top:1px solid var(--ob-line); }
.ob-button { display:inline-flex; align-items:center; justify-content:center; min-height:46px; min-width:128px; padding:12px 20px; border:1px solid #cfd6e4; border-radius:9px; background:#fff; color:#43516b; font-weight:600; cursor:pointer; }
.ob-button.next,.ob-button.submit { margin-left:auto; border-color:var(--ob-primary); background:var(--ob-primary); color:#fff; }
.ob-button.submit { display:none; }
.ob-button:disabled { opacity:.65; cursor:wait; }
.ob-invalid { border-color:#cc384b!important; }
.ob-inline-error { display:block; margin:6px 0; color:#b72f40; font-size:11px; }
.ob-preview { padding:28px 18px; border-left:1px solid var(--ob-line); background:#fcfcff; }
.ob-preview-card,.ob-benefits { margin-bottom:18px; padding:18px; border:1px solid var(--ob-line); border-radius:12px; background:#fff; }
.ob-avatar { display:grid; place-items:center; width:80px; height:80px; margin:auto; border-radius:50%; overflow:hidden; background:#eeeafb; color:#7658c9; font-size:30px; font-weight:700; }
.ob-preview-card h3 { margin:12px 0 4px; text-align:center; font-size:16px; }
.ob-preview-card>p,.ob-preview-card>small { display:block; margin:0; text-align:center; color:var(--ob-muted); font-size:11px; }
.ob-preview-block { margin-top:18px; }
.ob-preview-block b { display:block; margin-bottom:7px; font-size:11px; }
.ob-preview-tag { padding:9px; border-radius:7px; background:var(--ob-soft); font-size:11px; overflow-wrap:anywhere; }
.ob-benefits h3 { margin:0 0 12px; font-size:14px; }
.ob-benefits p { color:var(--ob-muted); font-size:11px; }
.signup-dialog { box-sizing:border-box; position:fixed; inset:0; width:min(500px,calc(100vw - 32px)); max-height:calc(100dvh - 48px); margin:auto; padding:36px; overflow:auto; border:0; border-radius:20px; background:#fff; color:#18243b; font:14px/1.6 Inter,Arial,sans-serif; box-shadow:0 24px 80px #0f1a3b33; }
.signup-dialog::backdrop { background:#12203a99; backdrop-filter:blur(3px); }
.signup-dialog h2 { margin:0 0 14px; font-size:23px; line-height:1.3; color:#18243b; }
.signup-dialog p { margin:0 0 20px; color:#66738a; }
.signup-success { text-align:center; }
.signup-success-mark { display:grid; place-items:center; width:64px; height:64px; margin:0 auto 20px; border-radius:50%; background:#e8f8ef; color:#168653; font-size:32px; font-weight:700; }
.signup-email-card { padding:18px; margin:0 0 24px; border:1px solid #e1e6f0; border-radius:12px; background:#f7f9fd; }
.signup-email-card span,.signup-email-card small { display:block; color:#66738a; font-size:12px; }
.signup-email-card strong { display:block; margin:8px 0; font-size:15px; color:#18243b; overflow-wrap:anywhere; }
.signup-dialog-primary { display:inline-flex; align-items:center; justify-content:center; min-height:46px; padding:12px 22px; border:0; border-radius:9px; background:#6544ef; color:#fff; text-decoration:none; font:inherit; font-weight:600; cursor:pointer; }
.signup-success .signup-dialog-primary { width:100%; }
.signup-dialog-actions { display:flex; justify-content:flex-end; gap:12px; margin-top:24px; }
.signup-dialog-actions>button:not(.signup-dialog-primary) { padding:10px 16px; border:1px solid #d4dce9; border-radius:9px; background:#fff; color:#43516b; cursor:pointer; }
.signup-logout-link { color:#6544ef; text-decoration:underline; }
.signup-dialog-open { overflow:hidden; }
.signup-loading { position:fixed; inset:0; z-index:1000; display:grid; place-items:center; padding:20px; background:#12203a99; }
.signup-loading>div { width:min(380px,100%); padding:30px; border-radius:16px; background:#fff; text-align:center; }
.signup-loading strong { display:block; margin:16px 0 8px; color:#18243b; }
.signup-loading p { margin:0; color:#66738a; font-size:12px; }
.signup-spinner { display:inline-block; width:36px; height:36px; border:3px solid #e5e0fa; border-top-color:#6544ef; border-radius:50%; animation:signup-spin .8s linear infinite; }
@keyframes signup-spin { to { transform:rotate(360deg); } }
.individual-onboarding [hidden],.signup-loading[hidden] { display:none!important; }
@media(max-width:1200px) { .ob-layout { grid-template-columns:210px minmax(0,1fr); margin:0 20px; } .ob-preview { display:none; } }
@media(max-width:760px) { .ob-topbar { grid-template-columns:1fr auto; padding:20px; gap:16px; } .ob-progress { grid-column:1/-1; grid-row:2; max-width:none; } .ob-page-label { font-size:16px; } .ob-verified { max-width:170px; } .ob-layout { display:block; margin:0 12px; } .ob-sidebar { padding:18px; border-right:0; border-bottom:1px solid var(--ob-line); } .ob-sidebar h2 { font-size:17px; margin-bottom:5px; } .ob-sidebar>p { margin:0; } .ob-steps,.ob-safe { display:none; } .ob-content { padding:24px 18px; } .ob-section { min-height:0; } .ob-grid.two,.ob-about { grid-template-columns:1fr; } .ob-pill-grid,.ob-check-grid,.ob-card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .ob-verify-gate { min-height:460px; padding:40px 16px; } .ob-verify-card { padding:28px 22px; } .signup-dialog { padding:28px 22px; } .signup-dialog-actions { flex-wrap:wrap; } }
@media(prefers-reduced-motion:reduce) { .signup-spinner { animation:none; } .ob-progress-track span { transition:none; } }
