/* Assistant visual system — neutral hierarchy, compact surfaces, consistent controls. */
:root{--background:#f4f6f8;--surface:#fff;--surface-muted:#f7f8fa;--surface-elevated:#fff;--text-primary:#1b2735;--text-secondary:#52606d;--text-muted:#667085;--border:#e1e5ea;--border-strong:#c7ced7;--primary:#2449d2;--primary-hover:#193ba9;--success:#18794e;--warning:#8f5700;--danger:#b42318;--color-info:#2449d2;--focus-ring:#315cf5;--radius-sm:6px;--radius-md:9px;--radius-lg:12px;--elevation-1:0 2px 8px #1420330a;--font-sans:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;font:14px/1.5 var(--font-sans)}
html[data-theme=dark]{--background:#111821;--surface:#18222e;--surface-muted:#202c39;--surface-elevated:#222f3d;--text-primary:#edf2f7;--text-secondary:#bdc8d4;--text-muted:#9aa8b7;--border:#344150;--border-strong:#506071;--primary:#91adff;--primary-hover:#b1c4ff;--focus-ring:#b1c4ff;--color-on-primary:#101a28;--success:#69d5a0;--warning:#ffd083;--danger:#ff9aa5;--elevation-1:0 2px 10px #0003}
body{font:14px/1.5 var(--font-sans);background:var(--background);color:var(--text-primary)}
.shell{grid-template-columns:240px minmax(0,1fr);background:var(--background)}
.side{background:var(--surface);border-right:1px solid var(--border);padding:22px 12px}
.brand{font-size:18px;letter-spacing:-.02em;padding:2px 12px 26px}
.nav{display:grid;gap:3px}.nav .nav-group{padding:16px 12px 5px;color:var(--text-muted);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.nav a{min-height:40px;padding:9px 12px;border-radius:7px;font-size:13px}.nav a[aria-current=page]{font-weight:650}
.top{min-height:64px;padding:10px clamp(18px,2.5vw,32px);background:var(--surface);border-bottom-color:var(--border);box-shadow:0 1px 2px #14203308}
.content{width:min(100%,1480px);padding:clamp(22px,2.8vw,36px)}
.page-head{align-items:flex-start;gap:20px;margin-bottom:22px}.page-head h1,.settings-header h1{font-size:clamp(26px,3vw,32px);line-height:1.2;letter-spacing:-.035em;font-weight:700;margin:3px 0 0}.page-head p,.settings-header p,.review-explainer p{margin:6px 0 0;color:var(--text-secondary);font-size:14px;line-height:1.55}
.eyebrow{font-size:11px;letter-spacing:.09em;color:var(--text-secondary)}
h2{letter-spacing:-.015em;line-height:1.3}h3{line-height:1.35}
.card,.u-card,.settings-card,.settings-metric,.mcp-client,.automation-card,.webhook-status-grid>div,.review-confirm,.connector-table-wrap,.connector-mobile-item{border-color:var(--border);border-radius:var(--radius-md);box-shadow:var(--elevation-1)}
.card{padding:18px}.panel-head{margin-bottom:14px}
.btn{min-height:44px;padding:9px 13px;border-radius:7px;border-color:var(--border-strong);font-size:13px;font-weight:600;transition:background-color var(--motion-fast),border-color var(--motion-fast),color var(--motion-fast),box-shadow var(--motion-fast)}
.btn:hover:not(:disabled){background:var(--surface-muted);border-color:var(--border-strong)}.btn.primary{background:var(--primary);border-color:var(--primary);color:var(--color-on-primary);font-weight:650}.btn.primary:hover:not(:disabled){background:var(--primary-hover);border-color:var(--primary-hover)}.btn.danger{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 45%,var(--border));background:var(--surface)}.btn.danger:hover:not(:disabled){background:color-mix(in srgb,var(--danger) 8%,var(--surface));border-color:var(--danger)}
input,select,textarea{border-color:var(--border-strong);border-radius:7px;background:var(--surface);color:var(--text-primary);font:inherit}input::placeholder,textarea::placeholder{color:var(--text-muted);opacity:1}
.status,.u-status,.kpi-status{border:1px solid var(--border);background:var(--surface-muted);color:var(--text-secondary);font-weight:600}
.connector-table-wrap{border-color:var(--border);box-shadow:none}
.connector-table-wrap{overflow:hidden}.connector-table{min-width:0;width:100%;table-layout:fixed}.connector-table th{white-space:normal;background:var(--surface-muted);color:var(--text-secondary);font-size:12px;font-weight:650;border-bottom-color:var(--border)}
.connector-table th:nth-child(1){width:10%}.connector-table th:nth-child(2){width:13%}.connector-table th:nth-child(3){width:15%}.connector-table th:nth-child(4){width:12%}.connector-table th:nth-child(5){width:13%}.connector-table th:nth-child(6){width:7%}.connector-table th:nth-child(7){width:30%}
.connector-table td{font-size:13px;overflow-wrap:anywhere}.connector-table .connector-name{overflow-wrap:anywhere}.connector-table .connector-badge{white-space:nowrap;max-width:100%;overflow-wrap:normal}
.connector-control{justify-content:center;min-width:0;max-width:100%;min-height:38px;margin:0 auto}.connector-control label{white-space:nowrap;min-width:0}.connector-control .connector-na{font-size:18px}
.connector-control-reason{display:none}
.connector-actions{min-width:0;max-width:100%;gap:4px;background:transparent;border:0;padding:4px;flex-wrap:wrap;justify-content:center}.connector-actions .connector-action-btn{flex:none;min-height:36px;white-space:normal;padding:4px 5px;border-radius:6px;font-size:11px}.connector-actions [role=status]{flex:1 1 100%;overflow-wrap:anywhere}.connector-actions .btn.primary{color:var(--color-on-primary)}.connector-table .connector-actions{padding:0}.connector-table .connector-action-btn[aria-label^="Check connection for"]{white-space:nowrap;max-width:none}
.connector-table tbody tr:hover{background:color-mix(in srgb,var(--primary) 4%,var(--surface))}.connector-icon-btn{border:1px solid transparent}.connector-icon-btn:hover{border-color:var(--border)}
@media(max-width:1279px){.connector-table-wrap{display:none}.connector-mobile-list{display:grid;gap:12px}}
.mcp-table th,.mcp-table td{padding:11px 12px;border-bottom-color:var(--border)}.mcp-table th{background:var(--surface-muted);color:var(--text-secondary);font-size:12px;font-weight:650}
.review-list .candidate-row,.candidate-row{border-color:var(--border);border-radius:var(--radius-md);box-shadow:none}.review-list .candidate-row:hover{border-color:var(--border-strong);box-shadow:var(--elevation-1)}.review-filters{align-items:end;gap:12px}.review-filters>label{gap:5px;color:var(--text-secondary);font-size:12px;font-weight:600}
.drawer,.review-confirm,.connector-setup{background:var(--surface-elevated);border-color:var(--border)}.drawer{padding:24px}.drawer-head{background:var(--surface-elevated);border-bottom:1px solid var(--border)}.review-detail-footer,.drawer-actions,.connector-form-actions{background:var(--surface-elevated);border-color:var(--border)}.review-confirm{padding:22px}
.connector-form legend,.field-label,.connector-form label{color:var(--text-primary)}.connector-form fieldset{padding:14px 16px;border:1px solid var(--border);border-radius:var(--radius-sm)}.connector-form legend{padding:0 5px}.provider-card{border-color:var(--border);border-radius:var(--radius-sm)}.provider-card:hover{border-color:var(--border-strong);background:var(--surface-muted)}.provider-card:has(input:checked){border-color:var(--primary);box-shadow:inset 0 0 0 1px var(--primary)}
.settings-section{padding:18px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface)}.settings-nav{box-shadow:none;border-color:var(--border)}.settings-nav a[aria-current=page]{background:var(--surface-muted);color:var(--text-primary);font-weight:650}
.page-actions,.inline-actions,.candidate-actions,.connector-pagination{align-items:center}.page-actions .btn,.inline-actions .btn{white-space:nowrap}
@media(max-width:760px){.content{padding:20px 16px}.side{background:var(--surface)}.drawer{padding:20px}.settings-section{padding:15px}}
.connector-mobile-controls{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;min-height:44px}.connector-attachment-unavailable{display:inline-block;color:var(--text-muted);text-align:center;min-width:44px}
