:root{--white: #FFFFFF;--bg: #F5F5F7;--border: #E0E0E5;--border-light: #F0F0F3;--text-primary: #1D1D1F;--text-secondary: #6E6E73;--text-tertiary: #AEAEB2;--accent: #0071E3;--accent-hover: #0077ED;--accent-light: #EAF3FF;--green: #34C759;--green-light: #E8F8ED;--orange: #FF9500;--orange-light: #FFF4E0;--red: #FF3B30;--red-light: #FFF0EE;--purple: #6B3FA0;--purple-light: #F4EEFF;--radius-sm: 8px;--radius-md: 12px;--shadow-md: 0 4px 16px rgba(0,0,0,.08);--font: "Inter", -apple-system, BlinkMacSystemFont, sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font);background:var(--bg);color:var(--text-primary);font-size:13px;-webkit-font-smoothing:antialiased}.screen{width:100%;min-height:100vh;display:flex;flex-direction:column}.app-nav{height:52px;background:#ffffffe6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border-light);display:flex;align-items:center;padding:0 20px;gap:16px;position:sticky;top:0;z-index:100;flex-shrink:0}.nav-logo{font-size:13px;font-weight:600;display:flex;align-items:center;gap:7px}.nav-logo-dot{width:7px;height:7px;border-radius:50%;background:var(--purple)}.nav-badge{font-size:10px;font-weight:500;padding:2px 7px;border-radius:20px;background:var(--purple-light);color:var(--purple)}.nav-links{display:flex;gap:2px;margin-left:8px}.nav-link{padding:5px 12px;border-radius:var(--radius-sm);font-size:12px;color:var(--text-secondary);cursor:pointer;border:none;background:none;font-family:var(--font);transition:color .15s;display:flex;align-items:center;gap:4px}.nav-link:hover{color:var(--text-primary)}.nav-right{margin-left:auto;display:flex;align-items:center;gap:12px}.nav-avatar{width:28px;height:28px;border-radius:50%;background:var(--purple);color:var(--white);font-size:11px;font-weight:600;display:flex;align-items:center;justify-content:center}.progress-strip{height:3px;background:var(--bg);flex-shrink:0}.progress-fill{height:100%;background:var(--accent);transition:width .4s ease}.steps-bar{display:flex;align-items:center;gap:0;padding:0 24px;height:44px;background:var(--white);border-bottom:1px solid var(--border-light);overflow-x:auto;flex-shrink:0}.step-item{display:flex;align-items:center;gap:6px;padding:0 12px;white-space:nowrap}.step-circle{width:20px;height:20px;border-radius:50%;font-size:10px;font-weight:600;display:flex;align-items:center;justify-content:center;border:1.5px solid var(--border);color:var(--text-tertiary);background:var(--white);flex-shrink:0}.step-circle.done{background:var(--green);border-color:var(--green);color:var(--white)}.step-circle.active{background:var(--accent);border-color:var(--accent);color:var(--white)}.step-text{font-size:11px;color:var(--text-tertiary)}.step-text.active{color:var(--text-primary);font-weight:500}.step-text.done{color:var(--green)}.step-arrow{color:var(--text-tertiary);font-size:12px}.home-body{flex:1;overflow-y:auto;padding:24px}.home-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.home-title{font-size:18px;font-weight:600}.new-ws-btn{padding:9px 16px;border-radius:var(--radius-md);border:none;background:var(--accent);color:var(--white);font-size:13px;font-weight:500;font-family:var(--font);cursor:pointer;display:flex;align-items:center;gap:6px;transition:background .15s}.new-ws-btn:hover{background:var(--accent-hover)}.ws-card{background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius-md);padding:16px;margin-bottom:10px;display:flex;align-items:center;gap:14px;cursor:default;transition:box-shadow .15s}.ws-card:hover{box-shadow:var(--shadow-md)}.ws-avatar{width:40px;height:40px;border-radius:var(--radius-md);background:var(--accent-light);color:var(--accent);font-size:15px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.ws-name{font-size:14px;font-weight:600}.ws-meta{font-size:11px;color:var(--text-secondary);margin-top:2px}.ws-status{margin-left:auto}.ws-status-pill{font-size:11px;font-weight:500;padding:4px 10px;border-radius:20px}.ws-status-pill.active{background:var(--green-light);color:var(--green)}.ws-status-pill.onboarding,.ws-status-pill.suspended{background:var(--orange-light);color:var(--orange)}.ws-status-pill.churned{background:var(--red-light);color:var(--red)}.home-header-actions{display:flex;align-items:center;gap:16px}.list-toggle{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none}.list-toggle input{cursor:pointer}.ws-menu-wrap{position:relative;margin-left:8px;flex-shrink:0}.ws-kebab{border:none;background:transparent;color:var(--text-tertiary);cursor:pointer;padding:6px;border-radius:var(--radius-sm);font-size:16px;line-height:1;display:flex;align-items:center;transition:background .15s,color .15s}.ws-kebab:hover{background:var(--bg);color:var(--text-secondary)}.ws-menu{position:absolute;right:0;top:calc(100% + 4px);z-index:20;background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-md);min-width:170px;padding:4px}.ws-menu-item{width:100%;text-align:left;border:none;background:transparent;padding:8px 10px;font-size:13px;font-family:var(--font);cursor:pointer;border-radius:var(--radius-sm);color:var(--text-primary)}.ws-menu-item:hover{background:var(--bg)}.ws-menu-item.danger{color:var(--red)}.ws-menu-item.danger:hover{background:var(--red-light)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;z-index:50;display:flex;align-items:center;justify-content:center;padding:20px}.modal{background:var(--white);border-radius:var(--radius-md);padding:22px;max-width:420px;width:100%;box-shadow:var(--shadow-md)}.modal-title{font-size:16px;font-weight:600;margin-bottom:8px}.modal-text{font-size:13px;color:var(--text-secondary);line-height:1.55;margin-bottom:18px}.modal-actions{display:flex;justify-content:flex-end;gap:10px}.btn-danger{padding:9px 16px;border-radius:var(--radius-md);border:none;background:var(--red);color:var(--white);font-size:13px;font-weight:500;font-family:var(--font);cursor:pointer;transition:background .15s;flex-shrink:0}.btn-danger:hover:not(:disabled){background:#e02e24}.btn-danger:disabled{opacity:.55;cursor:not-allowed}.danger-zone{margin-top:28px;border:1px solid var(--red-light);background:var(--red-light);border-radius:var(--radius-md);padding:16px;display:flex;align-items:center;justify-content:space-between;gap:16px}.danger-zone-title{font-size:13px;font-weight:600;color:var(--text-primary);margin-bottom:2px}.danger-zone-text{font-size:12px;color:var(--text-secondary);line-height:1.5}.page-body{flex:1;overflow-y:auto;padding:28px 24px;max-width:720px;margin:0 auto;width:100%}.page-title{font-size:20px;font-weight:600;letter-spacing:-.3px;margin-bottom:4px}.page-sub{font-size:13px;color:var(--text-secondary);margin-bottom:24px;line-height:1.5}.page-footer{padding:14px 24px;border-top:1px solid var(--border-light);background:var(--white);display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.footer-status{font-size:12px;color:var(--text-tertiary)}.field-group{margin-bottom:18px}.field-label{font-size:11px;font-weight:500;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px;display:block}.field-hint{font-size:11px;color:var(--text-tertiary);margin-bottom:7px}.field-input{width:100%;padding:9px 12px;font-size:13px;font-family:var(--font);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--white);color:var(--text-primary);outline:none;transition:border-color .15s}.field-input:focus{border-color:var(--accent)}.field-input::placeholder{color:var(--text-tertiary)}.field-input.error{border-color:var(--red)}.field-select{width:100%;padding:9px 12px;font-size:13px;font-family:var(--font);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--white);color:var(--text-primary);outline:none;cursor:pointer}.two-col{display:flex;gap:12px}.two-col>*{flex:1;min-width:0}.btn-primary{padding:9px 20px;border-radius:var(--radius-md);border:none;background:var(--accent);color:var(--white);font-size:13px;font-weight:500;font-family:var(--font);cursor:pointer;transition:background .15s}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-primary:disabled{opacity:.55;cursor:not-allowed}.btn-secondary{padding:9px 16px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--white);font-size:13px;font-family:var(--font);cursor:pointer;color:var(--text-secondary);transition:color .15s}.btn-secondary:hover{color:var(--text-primary)}.callout{display:flex;align-items:flex-start;gap:9px;padding:11px 13px;border-radius:var(--radius-md);margin-bottom:16px}.callout.info{background:var(--accent-light)}.callout.warn{background:var(--orange-light)}.callout.error{background:var(--red-light)}.callout-icon{font-size:14px;margin-top:1px;flex-shrink:0}.callout.info .callout-icon{color:var(--accent)}.callout.warn .callout-icon{color:var(--orange)}.callout.error .callout-icon{color:var(--red)}.callout-text{font-size:12px;line-height:1.55}.callout.info .callout-text{color:#0c447c}.callout.warn .callout-text{color:#7a4500}.callout.error .callout-text{color:#7a1000}.success-screen{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;text-align:center}.success-icon{width:56px;height:56px;border-radius:50%;background:var(--green-light);display:flex;align-items:center;justify-content:center;margin-bottom:16px}.success-title{font-size:20px;font-weight:600;margin-bottom:8px}.success-desc{font-size:13px;color:var(--text-secondary);max-width:400px;line-height:1.6;margin-bottom:28px}.success-meta{font-size:11px;color:var(--text-tertiary);font-family:monospace;background:var(--bg);padding:8px 14px;border-radius:var(--radius-sm);margin-bottom:24px}.success-actions{display:flex;gap:10px}.state-box{text-align:center;padding:60px 24px;color:var(--text-tertiary);font-size:13px}.state-box.error{background:var(--red-light);color:var(--red);border-radius:var(--radius-md);padding:14px 16px;text-align:left}.field-textarea{width:100%;padding:10px 12px;font-size:13px;font-family:var(--font);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--white);color:var(--text-primary);outline:none;resize:vertical;line-height:1.6;transition:border-color .15s}.field-textarea:focus{border-color:var(--accent)}.field-textarea::placeholder{color:var(--text-tertiary)}.q-card{background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius-md);padding:14px 16px;margin-bottom:10px}.q-card-label{font-size:10px;font-weight:500;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px}.q-card-question{font-size:13px;font-weight:500;color:var(--text-primary);margin-bottom:8px;font-style:italic}.q-card-maps{font-size:11px;color:var(--accent);margin-bottom:8px}.confirm-section{background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius-md);margin-bottom:12px;overflow:hidden}.confirm-header{padding:12px 14px;border-bottom:1px solid var(--border-light);display:flex;align-items:center;justify-content:space-between;background:var(--bg)}.confirm-header-title{font-size:12px;font-weight:600}.confirm-edit-btn{font-size:11px;color:var(--accent);cursor:pointer;border:none;background:none;font-family:var(--font)}.confirm-body{padding:12px 14px}.confirm-tag{display:inline-block;padding:3px 9px;border-radius:20px;font-size:11px;font-weight:500;margin:2px}.confirm-tag.vertical{background:var(--accent-light);color:var(--accent)}.confirm-tag.negative{background:var(--red-light);color:var(--red)}.confirm-tag.signal{background:var(--orange-light);color:var(--orange)}.confirm-tag.geo{background:var(--green-light);color:var(--green)}.confirm-row{display:flex;gap:8px;margin-bottom:6px;font-size:12px}.confirm-row-label{color:var(--text-tertiary);width:100px;flex-shrink:0}.confirm-row-value{color:var(--text-primary)}.ds-card{display:flex;align-items:center;gap:12px;padding:13px 14px;border:1px solid var(--border);border-radius:var(--radius-md);margin-bottom:8px;background:var(--white)}.ds-icon{width:36px;height:36px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-size:14px;flex-shrink:0;font-weight:700;color:var(--white);background:var(--text-tertiary)}.ds-icon.apollo{background:#1a73e8}.ds-icon.perplexity{background:var(--purple)}.ds-info{flex:1}.ds-name{font-size:13px;font-weight:600;margin-bottom:2px}.ds-desc{font-size:11px;color:var(--text-secondary)}.ds-right{display:flex;align-items:center;gap:8px}.ds-key-input{padding:7px 10px;font-size:12px;font-family:var(--font);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text-primary);width:180px;outline:none}.ds-key-input::placeholder{color:var(--text-tertiary)}.ds-key-input:focus{border-color:var(--accent)}.status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.status-dot.green{background:var(--green)}.status-dot.orange{background:var(--orange)}.status-dot.grey{background:var(--text-tertiary)}.test-btn{padding:6px 12px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--white);font-size:11px;font-family:var(--font);cursor:pointer;color:var(--text-secondary);white-space:nowrap}.test-btn:hover{border-color:var(--accent);color:var(--accent)}.test-btn:disabled{opacity:.5;cursor:default}.test-btn.success{border-color:var(--green);color:var(--green);background:var(--green-light)}.test-btn.failed{border-color:var(--red);color:var(--red);background:var(--red-light)}.ds-detail{font-size:11px;margin:-4px 0 10px 62px}.ds-detail.ok{color:var(--green)}.ds-detail.bad{color:var(--red)}.routing-table{width:100%;border-collapse:separate;border-spacing:0 6px}.routing-table th{text-align:left;font-size:11px;font-weight:500;color:var(--text-tertiary);padding:0 12px 4px;text-transform:uppercase;letter-spacing:.04em}.routing-table td{padding:12px;background:var(--white);border:1px solid var(--border-light);vertical-align:middle}.routing-table tr td:first-child{border-radius:var(--radius-sm) 0 0 var(--radius-sm);border-right:none}.routing-table tr td:last-child{border-radius:0 var(--radius-sm) var(--radius-sm) 0;border-left:none}.routing-select{width:100%;padding:7px 9px;font-size:12px;font-family:var(--font);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--white);outline:none}.source-label{font-size:12px;font-weight:600}.source-sub{font-size:11px;color:var(--text-secondary)}.not-rec{font-size:10px;color:var(--orange);margin-top:4px;display:block}.callout.brain{background:var(--purple-light)}.callout.brain .callout-icon{color:var(--purple)}.callout.brain .callout-text{color:#4a2d72}.handoff-section{background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius-md);padding:14px 16px;margin-bottom:12px}.handoff-section-title{font-size:12px;font-weight:600;margin-bottom:8px;display:flex;align-items:center;gap:6px;color:var(--text-primary)}.batch-wrap{overflow-x:auto}.batch-table{width:100%;border-collapse:separate;border-spacing:0 4px}.batch-table th{text-align:left;font-size:11px;font-weight:500;color:var(--text-tertiary);padding:0 10px 6px;white-space:nowrap}.batch-table td{padding:10px;background:var(--white);vertical-align:middle;font-size:12px}.batch-table tr td:first-child{border-radius:var(--radius-sm) 0 0 var(--radius-sm)}.batch-table tr td:last-child{border-radius:0 var(--radius-sm) var(--radius-sm) 0}.batch-table tr:hover td{background:var(--bg)}.batch-table tr.decided-rejected td{opacity:.5}.vtag{display:inline-block;padding:2px 7px;border-radius:20px;font-size:10px;font-weight:500;background:var(--accent-light);color:var(--accent)}.act-btn{padding:5px 10px;margin-right:6px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--white);font-size:11px;font-family:var(--font);cursor:pointer;color:var(--text-secondary)}.act-btn:hover{border-color:var(--accent);color:var(--accent)}.act-btn.on-approve{border-color:var(--green);color:var(--green);background:var(--green-light)}.act-btn.on-reject{border-color:var(--red);color:var(--red);background:var(--red-light)}.company-name{font-weight:600}.company-sub{font-size:11px;color:var(--text-secondary)}.add-row{display:flex;gap:8px;margin-bottom:14px}.add-row .field-input{flex:1}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}
