:root{
  --navy:#1F3B70; --navy-dark:#152A50; --accent:#2E5AAC; --accent-light:#EAF0FB;
  --success:#1D9E75; --success-bg:#E1F5EE; --danger:#D85A30; --danger-bg:#FAECE7;
  --warning:#BA7517; --warning-bg:#FAEEDA; --info:#2469B3; --info-bg:#E3EFFA;
  --bg:#F5F6F9; --card:#FFFFFF; --border:#E3E6ED;
  --text:#1A1F2B; --text-secondary:#5B6472; --text-muted:#8E95A3; --radius:10px; --radius-lg:16px;
}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:'Inter',-apple-system,sans-serif;background:var(--bg);color:var(--text);font-size:14px;line-height:1.5;display:flex;min-height:100vh}
h1,h2,h3,.brand{font-family:'Sora',sans-serif}
::-webkit-scrollbar{width:8px;height:8px} ::-webkit-scrollbar-thumb{background:#CBD2E0;border-radius:4px}
.sidebar{width:220px;background:var(--navy);color:#fff;display:flex;flex-direction:column;padding:24px 16px;flex-shrink:0;position:sticky;top:0;height:100vh}
.brand{font-size:17px;font-weight:700;color:#fff;margin-bottom:2px}
.brand-sub{font-size:11px;color:#9DB3DD;margin-bottom:32px;letter-spacing:0.02em}
.nav-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:var(--radius);color:#C7D3EA;font-size:14px;font-weight:500;cursor:pointer;margin-bottom:4px;transition:background .12s;border:none;background:none;width:100%;text-align:left}
.nav-item:hover{background:rgba(255,255,255,.06);color:#fff}
.nav-item.active{background:var(--accent);color:#fff}
.nav-icon{width:16px;height:16px;flex-shrink:0}
.nav-flyout-wrap{position:relative}
.nav-flyout-arrow{width:14px;height:14px;margin-left:auto;flex-shrink:0;color:#9DB3DD}
.sidebar-close{display:none}
.mobile-topbar{display:none}
.sidebar-backdrop{display:none;position:fixed;inset:0;background:rgba(10,15,30,.45);z-index:290}
.main{flex:1;min-width:0;padding:32px 40px;max-width:1280px}
.view{display:none} .view.active{display:block}
.page-header{margin-bottom:24px}
.page-title{font-size:22px;font-weight:600;margin-bottom:4px}
.page-sub{font-size:13px;color:var(--text-secondary)}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:28px}
.stat-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:18px 20px}
.stat-label{font-size:12px;color:var(--text-secondary);margin-bottom:6px;font-weight:500}
.stat-value{font-size:28px;font-weight:700;font-family:'Sora',sans-serif}
.insights-bar{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));border:1px solid var(--border);border-radius:var(--radius-lg);margin-bottom:20px;overflow:hidden}
.insights-bar-item{padding:16px 20px;border-right:1px solid var(--border);border-bottom:1px solid var(--border)}
.insights-bar-label{font-size:11px;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em;margin-bottom:8px;white-space:nowrap}
.insights-bar-value{font-size:24px;font-weight:700;font-family:'Sora',sans-serif;color:var(--accent)}
.stat-card.success .stat-value{color:var(--success)} .stat-card.danger .stat-value{color:var(--danger)} .stat-card.warning .stat-value{color:var(--warning)}
.stat-card.accent .stat-value{color:var(--accent)} .stat-card.info .stat-value{color:var(--info)}
.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px;margin-bottom:20px}
.chart-wrap{position:relative;width:100%}
.chart-wrap canvas{max-width:100%}
.card-title{font-size:15px;font-weight:600;margin-bottom:16px}
.card-sub{font-size:13px;color:var(--text-secondary);margin:-10px 0 16px}
.mode-toggle{display:flex;gap:8px;margin-bottom:20px}
.mode-btn{flex:1;padding:10px 16px;border-radius:var(--radius);border:1px solid var(--border);background:var(--card);color:var(--text-secondary);font-size:13px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px}
.mode-btn.active{background:var(--accent);color:#fff;border-color:var(--accent)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}
.form-grid.cols-3{grid-template-columns:1fr 1fr 1fr}
.form-grid.cols-4{grid-template-columns:1fr 1fr 1fr 1fr}
.field{display:flex;flex-direction:column;gap:5px}
.field label{font-size:12px;font-weight:600;color:var(--text-secondary)}
.static-field-value{height:38px;padding:0 12px;border:1px solid var(--border);border-radius:var(--radius);font-size:13px;background:var(--bg);color:var(--text);display:flex;align-items:center;box-sizing:border-box}
input[type=text],input[type=email],input[type=password],input[type=number],input[type=date],select,textarea{height:38px;padding:0 12px;border:1px solid var(--border);border-radius:var(--radius);font-size:13px;font-family:inherit;background:#fff;color:var(--text);outline:none;width:100%;box-sizing:border-box}
textarea{height:auto;padding:10px 12px;resize:vertical}
input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light)}
.section-block{background:var(--bg);border-radius:var(--radius);padding:16px 18px;margin-bottom:16px}
.section-block-title{font-size:12px;font-weight:600;color:var(--text-secondary);margin-bottom:10px;text-transform:uppercase;letter-spacing:.03em}
.qrow{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px solid var(--border)}
.qrow:last-child{border-bottom:none}
.qrow span{font-size:13px;flex:1}
.qrow select{width:100px;height:32px}
.badge-row{display:flex;gap:10px;margin-bottom:16px;flex-wrap:wrap}
.pill{font-size:12px;font-weight:600;padding:5px 12px;border-radius:20px;background:var(--bg);color:var(--text-muted)}
.pill.on-success{background:var(--success-bg);color:var(--success)} .pill.on-danger{background:var(--danger-bg);color:var(--danger)}
.tag{font-size:11px;font-weight:600;padding:3px 10px;border-radius:20px;background:var(--accent-light);color:var(--navy);display:inline-block;margin:2px 4px 2px 0}
.tag.dq{background:var(--danger-bg);color:var(--danger)}

.tag-input{border:1px solid var(--border);border-radius:var(--radius);padding:8px;display:flex;flex-wrap:wrap;align-items:center;gap:6px;background:#fff}
.tag-input-chips{display:flex;flex-wrap:wrap;gap:6px}
.tag-input-text{flex:1;min-width:120px;height:24px;border:none;padding:0;font-size:13px;outline:none}
.tag-chip{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;padding:3px 6px 3px 10px;border-radius:20px;background:var(--accent-light);color:var(--navy);white-space:nowrap}
.tag-chip-remove{background:none;border:none;color:var(--navy);cursor:pointer;font-size:13px;line-height:1;padding:0 2px;opacity:.6}
.tag-chip-remove:hover{opacity:1}
.result-banner{border-radius:var(--radius);padding:16px 18px;text-align:center;margin-bottom:10px;background:var(--bg)}
.result-banner-label{font-size:11px;color:var(--text-muted);display:block;margin-bottom:4px;font-weight:600;text-transform:uppercase}
.result-banner-value{font-size:20px;font-weight:700;color:var(--text-muted);font-family:'Sora',sans-serif}
.result-banner.on-success{background:var(--success-bg)} .result-banner.on-success .result-banner-value{color:var(--success)}
.result-banner.on-danger{background:var(--danger-bg)} .result-banner.on-danger .result-banner-value{color:var(--danger)}
.result-banner.on-warning{background:var(--warning-bg)} .result-banner.on-warning .result-banner-value{color:var(--warning)}
.result-meta{font-size:13px;color:var(--text-secondary);margin-bottom:6px}
.btn{height:40px;padding:0 20px;border-radius:var(--radius);border:1px solid var(--border);background:#fff;color:var(--text);font-size:13px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:8px;text-decoration:none}
.btn:hover{background:var(--bg)}
.btn-primary{background:var(--accent);color:#fff;border-color:var(--accent)} .btn-primary:hover{background:var(--navy)}
.btn-danger{background:var(--danger);color:#fff;border-color:var(--danger)} .btn-danger:hover{background:#B7431F}
.btn-block{width:100%;justify-content:center}
.btn-sm{height:32px;padding:0 12px;font-size:12px}
.btn-icon{width:32px;height:32px;padding:0;justify-content:center;color:var(--text-muted)} .btn-icon:hover{color:var(--danger);border-color:var(--danger-bg)}
.validation-msg{font-size:13px;color:var(--danger);margin:8px 0 0}
.upload-label{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 20px;border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;font-size:13px;font-weight:600}
.upload-label:hover{background:var(--bg)}
.import-note{font-size:13px;color:var(--text-secondary);margin-bottom:16px}
.import-status{font-size:13px;color:var(--text-muted);margin-top:12px}
.picker-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:20px}
.picker-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:22px;text-decoration:none;color:inherit;display:block;transition:border-color .12s,box-shadow .12s}
.picker-card:hover{border-color:var(--accent);box-shadow:0 2px 12px rgba(46,90,172,.1)}
.picker-icon{width:44px;height:44px;border-radius:12px;background:var(--accent-light);color:var(--accent);display:flex;align-items:center;justify-content:center;margin-bottom:14px}
.picker-icon svg{width:22px;height:22px}
.picker-icon i{font-size:18px}
.picker-title{font-size:15px;font-weight:600;margin-bottom:6px}
.picker-desc{font-size:13px;color:var(--text-secondary);margin-bottom:14px}
.picker-cta{font-size:13px;font-weight:600;color:var(--accent);display:inline-flex;align-items:center;gap:6px}
.picker-card-wrap{position:relative}
.picker-card-edit{position:absolute;top:14px;right:14px;background:#fff}
.picker-card-edit svg{width:15px;height:15px}
.icon-picker{display:flex;flex-wrap:wrap;gap:6px}
.icon-picker-btn{width:34px;height:34px;border:1px solid var(--border);border-radius:var(--radius);background:#fff;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}
.icon-picker-btn:hover{border-color:var(--accent)}
.icon-picker-btn.active{border-color:var(--accent);background:var(--accent-light);color:var(--accent)}
.dropzone{border:1.5px dashed var(--border);border-radius:var(--radius-lg);padding:32px 20px;text-align:center;cursor:pointer;display:block;transition:border-color .12s,background .12s}
.dropzone:hover,.dropzone.drag-over{border-color:var(--accent);background:var(--accent-light)}
.dropzone-icon{width:36px;height:36px;color:var(--text-muted);margin:0 auto 12px}
.dropzone-title{font-size:14px;font-weight:600;margin-bottom:4px}
.dropzone-sub{font-size:12px;color:var(--text-muted)}
.dropzone-file{font-size:13px;font-weight:600;color:var(--accent);margin-top:10px}
@media (max-width:960px){.picker-grid{grid-template-columns:1fr}}
.table-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;gap:12px;flex-wrap:wrap}
.table-search{flex:1;max-width:280px;border-radius:20px;padding-right:36px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238E95A3' stroke-width='2'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M21 21l-4.35-4.35'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:15px}
.bulk-bar{display:flex;align-items:center;gap:12px;background:var(--accent-light);border-radius:var(--radius);padding:10px 14px;margin-bottom:14px;font-size:13px;font-weight:600;color:var(--navy)}
.table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius-lg)}
table{width:100%;border-collapse:collapse;font-size:13px}
thead th{text-align:left;padding:12px 14px;background:var(--bg);font-weight:600;color:var(--text-secondary);white-space:nowrap;border-bottom:1px solid var(--border)}
tbody td{padding:12px 14px;border-bottom:1px solid var(--border);color:var(--text)}
tbody tr:last-child td{border-bottom:none} tbody tr:hover{background:var(--bg)} tbody tr.row-selected{background:var(--accent-light)}
.badge{font-size:11px;font-weight:700;padding:3px 10px;border-radius:20px;display:inline-block}
.badge.on-success{background:var(--success-bg);color:var(--success)} .badge.on-danger{background:var(--danger-bg);color:var(--danger)} .badge.on-warning{background:var(--warning-bg);color:var(--warning)}
.badge.on-info{background:var(--info-bg);color:var(--info)} .badge.on-accent{background:var(--accent-light);color:var(--accent)}
.badge-lg{font-size:14px;padding:6px 16px;border-radius:0}
.badge-select-btn{display:inline-flex;align-items:center;gap:6px;border:none;cursor:pointer;font-family:inherit;background-color:var(--bg);color:var(--text-secondary);font-size:14px;font-weight:700;padding:6px 14px;border-radius:0}
.badge-select-btn.on-success{background-color:var(--success-bg);color:var(--success)}
.badge-select-btn.on-danger{background-color:var(--danger-bg);color:var(--danger)}
.badge-select-btn.on-warning{background-color:var(--warning-bg);color:var(--warning)}
.badge-select-btn.on-info{background-color:var(--info-bg);color:var(--info)}
.badge-select-btn.on-accent{background-color:var(--accent-light);color:var(--accent)}
.tag-lg{font-size:14px;font-weight:600;padding:6px 16px;border-radius:0;background:var(--accent-light);color:var(--navy);display:inline-block;margin:0}
.avatar{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;font-size:10px;font-weight:700;color:#fff;flex-shrink:0;margin-right:8px;vertical-align:middle}
.row-name{display:inline-flex;align-items:center}
.filter-pills{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-bottom:16px}
.filter-pills select{height:auto;width:auto;min-width:0;padding:0 17px 0 0;border:none;background-color:transparent;font-size:13px;font-weight:600;color:var(--accent);cursor:pointer;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232E5AAC' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right center;background-size:13px}
.filter-pills select:hover{color:var(--navy)}
.filter-pills select:focus{outline:none;color:var(--navy)}
.ext-link-icon{width:12px;height:12px;margin-left:4px;color:var(--text-muted);vertical-align:middle}
.empty-state{padding:40px;text-align:center;color:var(--text-muted);font-size:13px}
.export-row{display:flex;gap:8px;flex-wrap:wrap}
.checkbox-list{display:flex;flex-wrap:wrap;gap:8px;background:var(--bg);border-radius:var(--radius);padding:12px}
.checkbox-chip{display:flex;align-items:center;gap:6px;background:#fff;border:1px solid var(--border);border-radius:20px;padding:5px 10px 5px 8px;font-size:12px;cursor:pointer}
.checkbox-chip input{margin:0}
.icp-card{border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;margin-bottom:10px}
code{background:var(--bg);padding:1px 6px;border-radius:4px;font-size:12px;color:var(--navy)}
.msg-card{border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;margin-bottom:10px}
.channel-card{border:1px solid var(--border);border-radius:var(--radius);padding:12px 14px;margin-bottom:10px}
.channel-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}
.channel-card-title{display:flex;align-items:center;gap:8px}
.channel-history-toggle{font-size:12px;color:var(--accent);cursor:pointer;background:none;border:none;padding:0;text-decoration:underline}
.channel-history{margin-top:10px;padding-top:10px;border-top:1px solid var(--border)}
.channel-history-row{display:flex;justify-content:space-between;font-size:12px;padding:4px 0;color:var(--text-secondary)}
.msg-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:8px}
.msg-body-preview{font-size:13px;color:var(--text);white-space:pre-wrap;background:var(--bg);border-radius:var(--radius);padding:10px 12px;margin-bottom:10px;max-height:120px;overflow-y:auto}
.msg-body-preview.msg-body-preview-full{max-height:none;overflow:visible}
.msg-stats{display:flex;gap:16px;font-size:12px;color:var(--text-secondary);flex-wrap:wrap;margin-bottom:10px}
.msg-stats strong{color:var(--text)}
.channel-badge{font-size:11px;font-weight:700;padding:3px 10px;border-radius:20px;background:var(--accent-light);color:var(--navy)}
.stepper-question{background:var(--bg);border-radius:var(--radius-lg);padding:28px 20px;margin-bottom:14px;text-align:center}
.stepper-question-text{font-size:17px;font-weight:600;margin-bottom:6px}
.stepper-guidance{font-size:12px;color:var(--text-secondary);margin-bottom:18px}
.stepper-btnrow{display:flex;gap:10px;justify-content:center}
.stepper-progress{font-size:12px;color:var(--text-muted);margin-bottom:10px;text-align:center}
.stepper-navrow{display:flex;gap:8px;justify-content:center;margin-bottom:16px}
.qualify-banner{display:flex;justify-content:space-between;align-items:center;background:var(--accent-light);border-radius:var(--radius);padding:10px 14px;margin-bottom:16px;font-size:13px;font-weight:600;color:var(--navy)}
.status-pill{font-size:11px;font-weight:700;padding:3px 10px;border-radius:20px;background:var(--bg);color:var(--text-secondary)}
.status-pill.on-success{background:var(--success-bg);color:var(--success)}
.status-pill.on-warning{background:var(--warning-bg);color:var(--warning)}
.status-pill.badge-lg{border-radius:0}
.insight-card{border-left:3px solid var(--accent);background:var(--accent-light);border-radius:0 var(--radius) var(--radius) 0;padding:12px 16px;margin-bottom:10px;font-size:13px}
.phase-label{font-size:11px;font-weight:700;color:var(--accent);text-transform:uppercase;letter-spacing:.04em;margin-bottom:10px}
.icp-pick-row{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius);margin-bottom:8px;cursor:pointer;background:#fff}
.icp-pick-row.recommended{border-color:var(--accent);background:var(--accent-light)}
.icp-pick-row input{margin-top:3px}
.icp-pick-row .icp-pick-name{font-weight:600;font-size:14px}
.icp-pick-row .icp-pick-meta{font-size:12px;color:var(--text-secondary);margin-top:2px}
.recommended-tag{font-size:10px;font-weight:700;background:var(--accent);color:#fff;padding:2px 8px;border-radius:10px;margin-left:8px;vertical-align:middle}
.insight-card strong{color:var(--navy)}
.icp-card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.icp-name{font-size:14px;font-weight:600}
.criteria-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--border)}
.criteria-row:last-child{border-bottom:none}
.criteria-label{font-size:13px;flex:1}
.criteria-type{font-size:11px;color:var(--text-muted);background:var(--bg);padding:2px 8px;border-radius:12px;margin-right:8px}
.page-header-top{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px}
.header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}
.dropdown{position:relative;display:inline-block}
.dropdown-menu{position:absolute;top:calc(100% + 6px);right:0;min-width:200px;background:#fff;border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 10px 28px rgba(20,30,60,.14);padding:6px;z-index:60;display:none}
.dropdown.open .dropdown-menu{display:block}
.dropdown-menu a,.dropdown-menu button{display:block;width:100%;text-align:left;padding:9px 10px;border-radius:7px;font-size:13px;font-weight:500;color:var(--text);text-decoration:none;background:none;border:none;cursor:pointer;font-family:inherit}
.dropdown-menu a:hover,.dropdown-menu button:hover{background:var(--bg)}
.dropdown-menu a.active,.dropdown-menu button.active{background:var(--accent-light);color:var(--navy);font-weight:600}
.dropdown-menu .divider{height:1px;background:var(--border);margin:6px 2px}
.dropdown-menu.nav-flyout{top:0;left:100%;right:auto;margin-left:8px;min-width:190px}
.kebab-btn{width:40px;height:40px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius);border:1px solid var(--border);background:#fff;cursor:pointer;color:var(--text-secondary)}
.kebab-btn:hover{background:var(--bg)}
.kebab-btn svg{width:18px;height:18px}
.object-switcher{position:relative;display:inline-block}
.object-switcher-toggle{display:flex;align-items:center;gap:6px;font-size:22px;font-weight:700;font-family:'Sora',sans-serif;background:none;border:none;cursor:pointer;color:var(--text);padding:0}
.object-switcher-toggle:hover{color:var(--accent)}
.object-switcher-toggle svg{width:16px;height:16px;color:var(--text-muted);flex-shrink:0}
.object-switcher-panel{position:absolute;top:calc(100% + 8px);left:0;width:260px;background:#fff;border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:0 14px 36px rgba(20,30,60,.18);padding:10px;z-index:60;display:none}
.object-switcher.open .object-switcher-panel{display:block}
.object-switcher-search{margin-bottom:8px;height:34px;font-size:13px}
.object-switcher-list{display:flex;flex-direction:column;gap:2px;max-height:280px;overflow-y:auto}
.object-switcher-list a{display:flex;align-items:center;padding:8px 10px;border-radius:8px;color:var(--text);text-decoration:none;font-size:13px;font-weight:500}
.object-switcher-list a:hover{background:var(--bg)}
.object-switcher-list a.active{background:var(--accent-light);color:var(--navy);font-weight:600}
.detail-grid{display:grid;grid-template-columns:280px 1fr 300px;gap:20px;align-items:start}
.detail-col{display:flex;flex-direction:column;gap:16px;min-width:0}

.detail-avatar{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:700;color:#fff;margin:0 auto 12px}
.detail-name{font-size:17px;font-weight:700;text-align:center;font-family:'Sora',sans-serif;margin-bottom:2px}
.detail-sub{font-size:12px;color:var(--text-secondary);text-align:center;margin-bottom:14px}
.detail-links{display:flex;justify-content:center;gap:14px;margin-bottom:16px;flex-wrap:wrap}
.detail-links a{font-size:12px;font-weight:600;color:var(--accent);text-decoration:none}
.detail-links a:hover{text-decoration:underline}
.detail-actions{display:flex;justify-content:center;gap:8px;margin-bottom:18px;flex-wrap:wrap}
.detail-actions .btn{flex:1}

.info-field{margin-bottom:14px}
.info-field:last-child{margin-bottom:0}
.info-field-label{font-size:11px;color:var(--text-secondary);font-weight:600;text-transform:uppercase;letter-spacing:.02em;margin-bottom:5px}
.info-field-value{font-size:13px;color:var(--text)}
.info-field select{height:34px;font-size:13px}

.timeline-tabs{display:flex;gap:4px;border-bottom:1px solid var(--border);margin-bottom:14px;overflow-x:auto}
.timeline-tab{padding:8px 12px;font-size:13px;font-weight:600;color:var(--text-secondary);cursor:pointer;border-bottom:2px solid transparent;white-space:nowrap;background:none;border-top:none;border-left:none;border-right:none}
.timeline-tab:hover{color:var(--text)}
.timeline-tab.active{color:var(--accent);border-bottom-color:var(--accent)}
.timeline-entry{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid var(--border)}
.timeline-entry:last-child{border-bottom:none}
.timeline-icon{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#fff;font-size:14px}
.timeline-icon.on-note{background:var(--warning)}
.timeline-icon.on-activity{background:#8B93A5}
.timeline-icon.on-outreach{background:var(--accent)}
.timeline-icon.on-linkedin{background:#0A66C2}
.timeline-body{flex:1;min-width:0}
.timeline-title{font-size:13px;font-weight:600;color:var(--text)}
.timeline-text{font-size:13px;color:var(--text-secondary);margin-top:3px;white-space:pre-wrap}
.timeline-meta{font-size:11px;color:var(--text-muted);margin-top:5px}

.richtext-content{font-size:13px;line-height:1.5}
.richtext-content p{margin:0 0 6px} .richtext-content p:last-child{margin-bottom:0}

.task-row{display:flex;gap:12px;align-items:flex-start;padding:12px 0;border-bottom:1px solid var(--border)}
.task-row:last-child{border-bottom:none}
.task-check{width:22px;height:22px;border-radius:50%;border:2px solid var(--border);background:#fff;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;padding:0;margin-top:1px}
.task-check svg{width:13px;height:13px}
.task-check.checked{background:var(--success);border-color:var(--success)}
.task-row-body{flex:1;min-width:0}
.task-row-title{font-size:13px;font-weight:600;color:var(--text)}
.task-row.done .task-row-title{text-decoration:line-through;color:var(--text-muted)}
.task-row-meta{font-size:12px;color:var(--text-secondary);margin-top:3px}
.task-row-notes{margin-top:6px;color:var(--text-secondary)}
.task-inline-delete{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:13px;padding:0;margin-left:4px}
.task-inline-delete:hover{color:var(--danger)}

.assoc-panel-title{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.02em;color:var(--text-secondary);margin-bottom:10px}
.assoc-item{display:block;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius);margin-bottom:8px;text-decoration:none;color:inherit}
.assoc-item:last-child{margin-bottom:0}
.assoc-item:hover{border-color:var(--accent)}
.assoc-item-title{font-size:13px;font-weight:600;color:var(--navy)}
.assoc-item-meta{font-size:12px;color:var(--text-secondary);margin-top:3px}

@media (max-width:960px){.detail-grid{grid-template-columns:1fr}}

.slideover-overlay{position:fixed;inset:0;background:rgba(15,23,42,.45);z-index:200;display:none}
.slideover-overlay.open{display:block}
.slideover-panel{position:fixed;top:0;right:0;height:100%;width:480px;max-width:100%;background:var(--card);box-shadow:-12px 0 40px rgba(20,30,60,.25);z-index:201;display:flex;flex-direction:column;transform:translateX(100%);transition:transform .25s ease}
.slideover-overlay.open .slideover-panel{transform:translateX(0)}
.slideover-head{background:linear-gradient(120deg,var(--navy),var(--accent));padding:22px 24px;display:flex;align-items:center;justify-content:space-between;flex-shrink:0}
.slideover-head-title{color:#fff;font-size:19px;font-weight:700;font-family:'Sora',sans-serif}
.slideover-close{background:none;border:none;color:#fff;cursor:pointer;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:8px;opacity:.85;flex-shrink:0}
.slideover-close:hover{background:rgba(255,255,255,.18);opacity:1}
.slideover-close svg{width:18px;height:18px}
.slideover-body{flex:1;overflow-y:auto;padding:24px}
.slideover-body .form-grid,.slideover-body .form-grid.cols-3{grid-template-columns:1fr}
.slideover-overlay.wide .slideover-panel{width:820px}
.slideover-overlay.wide [data-slideover-expand]{background:rgba(255,255,255,.22)}
.slideover-overlay.wide .slideover-body .form-grid{grid-template-columns:1fr 1fr}
.slideover-overlay.wide .slideover-body .form-grid.cols-3{grid-template-columns:1fr 1fr 1fr}
.slideover-loading{padding:40px 0;text-align:center;color:var(--text-muted);font-size:13px}
.slideover-success{background:var(--success-bg);color:var(--success);font-size:13px;font-weight:600;padding:10px 12px;border-radius:var(--radius);margin-bottom:18px}
.linkedin-match-banner{background:var(--warning-bg);color:var(--warning);font-size:13px;padding:10px 12px;border-radius:var(--radius);margin-top:8px;display:flex;align-items:center;justify-content:space-between;gap:10px}
.linkedin-match-banner a{color:var(--navy);font-weight:600}
.linkedin-match-banner-dismiss{background:none;border:none;color:var(--warning);cursor:pointer;font-size:16px;line-height:1;padding:0;flex-shrink:0}
.slideover-footer{position:sticky;bottom:0;margin:24px -24px -24px;padding:16px 24px;background:var(--card);border-top:1px solid var(--border);display:flex;gap:10px;align-items:center}
.slideover-footer .btn-cancel{margin-left:auto;color:var(--danger);border-color:var(--danger-bg);background:#fff}
.slideover-footer .btn-cancel:hover{background:var(--danger-bg)}
@media (max-width:560px){.slideover-panel{width:100%}}

.richtext{border:1px solid var(--border);border-radius:var(--radius);overflow:visible;display:flex;flex-direction:column}
.richtext-toolbar{display:flex;align-items:center;gap:2px;padding:6px 8px;border-top:1px solid var(--border);background:var(--bg);flex-wrap:wrap;border-radius:0 0 var(--radius) var(--radius);position:relative;order:2}
.richtext-btn{height:30px;min-width:30px;padding:0 8px;border:none;background:none;border-radius:6px;cursor:pointer;color:var(--text-secondary);font-size:13px;display:inline-flex;align-items:center;justify-content:center;gap:4px}
.richtext-btn:hover{background:var(--card);color:var(--text)}
.richtext-btn.active{background:var(--accent-light);color:var(--navy)}
.richtext-btn svg{width:16px;height:16px}
.richtext-sep{width:1px;height:20px;background:var(--border);margin:0 4px}
.richtext-insert{position:relative}
.richtext-insert-toggle{font-weight:600}
.richtext-insert .dropdown-menu{min-width:220px;max-height:320px;overflow-y:auto;left:0;right:auto;bottom:calc(100% + 6px);top:auto}
.richtext-insert-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);padding:8px 10px 4px}
.richtext-color-dropdown{position:relative}
.richtext-color-dropdown .dropdown-menu{min-width:0;left:0;right:auto;bottom:calc(100% + 6px);top:auto;padding:8px}
.richtext-swatch-row{display:flex;gap:6px}
.richtext-swatch{width:26px;height:26px;border-radius:6px;border:1px solid var(--border);background:#fff;cursor:pointer;padding:0;font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center;line-height:1}
.richtext-swatch:hover{border-color:var(--accent);transform:scale(1.06)}
.richtext-swatch-text{background:#fff}
.richtext-swatch-none{color:var(--text-muted);font-weight:400}
.richtext-editor{order:1;min-height:150px;max-height:320px;overflow-y:auto;padding:10px 12px;font-size:13px;line-height:1.55;color:var(--text);border-radius:var(--radius) var(--radius) 0 0}
.richtext-editor:focus{outline:none}
.richtext-editor:empty:before{content:attr(data-placeholder);color:var(--text-muted)}
.richtext-editor a{color:var(--accent)}
.richtext-editor ul,.richtext-editor ol,.richtext-content ul,.richtext-content ol,.kb-block-paragraph ul,.kb-block-paragraph ol,.kb-callout-text ul,.kb-callout-text ol,.kb-accordion-body ul,.kb-accordion-body ol,.kb-tabs-panel ul,.kb-tabs-panel ol{margin:0 0 8px 20px}
.richtext-editor li,.richtext-content li,.kb-block-paragraph li,.kb-callout-text li,.kb-accordion-body li,.kb-tabs-panel li{margin-bottom:2px}
.token-chip{display:inline-flex;align-items:center;gap:5px;background:var(--accent-light);border:1px solid var(--border);border-radius:20px;padding:2px 10px 2px 8px;font-size:12px;font-weight:600;color:var(--navy);white-space:nowrap;line-height:1.6}
.token-chip:before{content:"";width:12px;height:12px;flex-shrink:0;background-color:var(--navy);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 12a5 5 0 100-10 5 5 0 000 10zM4 22a8 8 0 0116 0'/%3E%3C/svg%3E") no-repeat center/contain;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 12a5 5 0 100-10 5 5 0 000 10zM4 22a8 8 0 0116 0'/%3E%3C/svg%3E") no-repeat center/contain}
.subject-token-picker .dropdown-menu{right:0;left:auto}
.kb-layout{display:grid;grid-template-columns:260px 1fr;gap:20px;align-items:start}
.kb-sidebar{padding:16px;position:sticky;top:20px}
.kb-sidebar-group{margin-bottom:4px}
.kb-sidebar-group-title{font-size:13px;font-weight:600;padding:8px 6px;border-radius:var(--radius);cursor:pointer;list-style:none}
.kb-sidebar-group-title::-webkit-details-marker{display:none}
.kb-sidebar-group-title:before{content:"›";display:inline-block;width:14px;color:var(--text-muted);transition:transform .12s}
.kb-sidebar-group[open]>.kb-sidebar-group-title:before{transform:rotate(90deg)}
.kb-sidebar-links{display:flex;flex-direction:column;padding:2px 0 6px 26px}
.kb-sidebar-link{font-size:13px;color:var(--text-secondary);padding:6px 8px;border-radius:var(--radius);text-decoration:none}
.kb-sidebar-link:hover{background:var(--bg);color:var(--text)}
.kb-sidebar-link.active{background:var(--accent-light);color:var(--navy);font-weight:600}
.kb-content{padding:28px 32px}
.kb-blocks{display:flex;flex-direction:column;gap:16px}
.kb-block-heading{font-size:20px;font-weight:700;margin:8px 0 0}
.kb-block-paragraph{font-size:14px;line-height:1.65;color:var(--text)}
.kb-block-paragraph a{color:var(--accent)}
.kb-block-image img{max-width:100%;border-radius:var(--radius);display:block}
.kb-block-image figcaption{font-size:12px;color:var(--text-muted);margin-top:6px}
.kb-block{border:1px solid var(--border);border-radius:var(--radius);padding:14px;background:var(--card)}
.kb-block.dragging{opacity:.4}
.kb-block-head{display:flex;align-items:center;gap:8px;margin-bottom:10px}
.kb-block-drag-handle{cursor:grab;color:var(--text-muted);font-size:14px;line-height:1;padding:2px 4px;user-select:none}
.kb-block-icon{width:24px;height:24px;border-radius:6px;background:var(--accent-light);color:var(--navy);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.kb-block-icon svg{width:14px;height:14px}
.kb-block-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);flex:1}
.kb-block-controls{display:flex;gap:6px}
.kb-block-controls .btn-icon{background:var(--bg)}
.kb-block-body input[type=text]{background:var(--bg)}
.kb-block-tabs{display:flex;gap:4px;margin-bottom:12px;background:var(--bg);border-radius:var(--radius);padding:3px}
.kb-block-tab{flex:1;height:28px;border:none;background:none;border-radius:7px;font-size:12px;font-weight:600;color:var(--text-secondary);cursor:pointer}
.kb-block-tab.active{background:var(--card);color:var(--text);box-shadow:0 1px 3px rgba(0,0,0,.08)}
.kb-block-tab-panel[hidden]{display:none}
.kb-align-group{display:flex;gap:6px}
.kb-align-btn{width:34px;height:34px;border:1px solid var(--border);background:var(--bg);border-radius:var(--radius);cursor:pointer;color:var(--text-secondary);display:flex;align-items:center;justify-content:center}
.kb-align-btn svg{width:16px;height:16px}
.kb-align-btn.active{background:var(--accent-light);border-color:var(--accent);color:var(--navy)}
.kb-page-actions{display:flex;gap:8px}
.kb-builder-layout{display:grid;grid-template-columns:220px 1fr 260px;gap:20px;align-items:start;margin-top:20px}
.kb-palette{padding:16px;position:sticky;top:20px}
.kb-palette-title{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--text-secondary);margin-bottom:12px}
.kb-palette-item{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid var(--border);border-radius:var(--radius);margin-bottom:8px;cursor:grab;background:var(--card);font-size:13px;font-weight:600}
.kb-palette-item:hover{border-color:var(--accent);background:var(--accent-light)}
.kb-palette-item:active{cursor:grabbing}
.kb-palette-item .kb-block-icon{background:var(--bg)}
.kb-palette-hint{font-size:12px;color:var(--text-muted);margin-top:10px;line-height:1.5}
.kb-canvas{border:2px dashed var(--border);border-radius:var(--radius-lg);padding:18px;min-height:320px;display:flex;flex-direction:column;gap:14px;transition:border-color .12s,background .12s}
.kb-canvas.drag-over{border-color:var(--accent);background:var(--accent-light)}
.kb-canvas-empty{margin:auto;text-align:center;color:var(--text-muted);font-size:13px;padding:30px}
.kb-drop-indicator{height:3px;border-radius:3px;background:var(--accent);flex-shrink:0}
@media (max-width:960px){.kb-layout{grid-template-columns:1fr}.kb-content{padding:20px}.kb-builder-layout{grid-template-columns:1fr}.kb-palette{position:static}.kb-inspector{position:static;max-height:none}}

/* Shared block style-panel output (KbBlockRenderer::styleAttributes + kb-editor.js applyLiveStyle) */
.kb-blocks > *{max-width:720px;margin-left:auto;margin-right:auto;width:100%}
.kb-blocks > .kb-w-wide{max-width:960px}
.kb-blocks > .kb-w-full{max-width:none}
.kb-w-wide{max-width:960px}
.kb-w-full{max-width:none}
.kb-shadow-sm,.kb-live-shadow-sm{box-shadow:0 1px 3px rgba(15,23,42,.08)}
.kb-shadow-md,.kb-live-shadow-md{box-shadow:0 4px 10px rgba(15,23,42,.10)}
.kb-shadow-lg,.kb-live-shadow-lg{box-shadow:0 10px 24px rgba(15,23,42,.14)}
.kb-radius-sm,.kb-live-radius-sm{border-radius:6px}
.kb-radius-md,.kb-live-radius-md{border-radius:var(--radius)}
.kb-radius-lg,.kb-live-radius-lg{border-radius:var(--radius-lg)}
.kb-radius-full,.kb-live-radius-full{border-radius:999px}
.kb-preset-primary,.kb-live-preset-primary{background:var(--accent-light);color:var(--navy);border-color:var(--navy)}
.kb-preset-info,.kb-live-preset-info{background:var(--info-bg);color:var(--info);border-color:var(--info)}
.kb-preset-success,.kb-live-preset-success{background:var(--success-bg);color:var(--success);border-color:var(--success)}
.kb-preset-warning,.kb-live-preset-warning{background:var(--warning-bg);color:var(--warning);border-color:var(--warning)}
.kb-preset-danger,.kb-live-preset-danger{background:var(--danger-bg);color:var(--danger);border-color:var(--danger)}

/* Display-side: new block types (KbBlockRenderer) */
.kb-block-divider{border:none;margin:16px 0}
.kb-block-callout{display:flex;gap:12px;padding:14px 16px;border-radius:var(--radius);background:var(--bg);border:1px solid var(--border)}
.kb-callout-icon{font-size:16px;line-height:1.4;flex-shrink:0}
.kb-callout-title{font-weight:700;margin-bottom:4px}
.kb-callout-text{font-size:14px;line-height:1.6}
.kb-block-code{background:#1B2333;color:#fff;border-radius:var(--radius);padding:14px 16px;overflow-x:auto;font-family:'SFMono-Regular',Consolas,monospace;font-size:13px}
.kb-upload-status{font-size:12px;color:var(--text-muted);margin-left:10px}
.kb-block-code pre code{color:#fff;background:none;padding:0;border-radius:0}
.kb-block-code .kb-code-lang{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#8FA2C7;margin-bottom:8px}
.kb-block-code pre{margin:0;white-space:pre-wrap;word-break:break-word}
.kb-block-code .kb-code-line{display:block}
.kb-code-linenumbers pre code{counter-reset:kb-line}
.kb-code-linenumbers .kb-code-line{padding-left:2.4em;position:relative}
.kb-code-linenumbers .kb-code-line:before{counter-increment:kb-line;content:counter(kb-line);position:absolute;left:0;width:2em;text-align:right;color:#5B6B8C}
.kb-block-table-wrap{overflow-x:auto}
.kb-block-table{width:100%;border-collapse:collapse;font-size:13px}
.kb-block-table th,.kb-block-table td{border:1px solid var(--border);padding:8px 10px;text-align:left}
.kb-block-table thead th{background:var(--bg);font-weight:700}
.kb-block-accordion{display:flex;flex-direction:column;gap:8px}
.kb-accordion-item{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}
.kb-accordion-item summary{padding:12px 14px;cursor:pointer;font-weight:600;list-style:none}
.kb-accordion-item summary::-webkit-details-marker{display:none}
.kb-accordion-item summary:before{content:"\203A";display:inline-block;width:16px;color:var(--text-muted);transition:transform .12s}
.kb-accordion-item[open] summary:before{transform:rotate(90deg)}
.kb-accordion-body{padding:0 14px 14px;font-size:14px;line-height:1.6}
.kb-block-tabs-view{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}
.kb-tabs-nav{display:flex;flex-wrap:wrap;border-bottom:1px solid var(--border);background:var(--bg)}
.kb-tabs-btn{padding:10px 16px;border:none;background:none;font-size:13px;font-weight:600;color:var(--text-secondary);cursor:pointer;border-bottom:2px solid transparent}
.kb-tabs-btn.active{color:var(--navy);border-bottom-color:var(--accent)}
.kb-tabs-panels{padding:16px}
.kb-tabs-panel[hidden]{display:none}
.kb-block-video .kb-video-frame{position:relative;width:100%;padding-top:56.25%;border-radius:var(--radius);overflow:hidden;background:#000}
.kb-block-video .kb-video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.kb-block-video figcaption{font-size:12px;color:var(--text-muted);margin-top:6px}
.kb-block-file{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius);text-decoration:none;color:var(--text);background:var(--card)}
.kb-block-file:hover{border-color:var(--accent);background:var(--accent-light)}
.kb-file-icon{width:36px;height:36px;border-radius:8px;background:var(--accent-light);color:var(--navy);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.kb-file-info{display:flex;flex-direction:column;gap:2px}
.kb-file-title{font-weight:600;font-size:14px}
.kb-file-meta{font-size:12px;color:var(--text-muted)}
.kb-block-toc{border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;background:var(--bg)}
.kb-toc-title{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--text-secondary);margin-bottom:8px}
.kb-toc-list{list-style:none;display:flex;flex-direction:column;gap:6px}
.kb-toc-list a{font-size:13px;color:var(--accent);text-decoration:none}
.kb-toc-list a:hover{text-decoration:underline}
.kb-toc-lvl-3{padding-left:14px}
.kb-toc-lvl-4{padding-left:28px}
.kb-toc-lvl-5{padding-left:42px}
.kb-toc-lvl-6{padding-left:56px}

/* Editor-side: inspector sidebar + new block editing widgets */
.kb-inspector{padding:16px;position:sticky;top:20px;max-height:calc(100vh - 40px);overflow-y:auto}
.kb-inspector-empty{font-size:13px;color:var(--text-muted);text-align:center;padding:24px 6px}
.kb-inspector-title{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--text-secondary);margin-bottom:12px}
.kb-inspector-section{margin-bottom:14px}
.kb-inspector-section label{display:block;font-size:12px;font-weight:600;color:var(--text-secondary);margin-bottom:5px}
.kb-inspector-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}
.kb-inspector-row .field label{margin-bottom:5px}
.kb-inspector input[type=color]{width:100%;height:34px;padding:2px;border:1px solid var(--border);border-radius:var(--radius);cursor:pointer}
.kb-block.active{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light)}
.kb-inline-check{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-secondary);cursor:pointer;height:38px}
.kb-inline-check input{width:auto}
.kb-code-textarea{font-family:'SFMono-Regular',Consolas,monospace;font-size:13px;min-height:160px}
.kb-table-editor-actions{display:flex;align-items:center;gap:16px;margin-top:10px;flex-wrap:wrap}
.kb-table-edit-grid{width:100%;border-collapse:collapse;font-size:13px}
.kb-table-edit-grid th,.kb-table-edit-grid td{border:1px solid var(--border);padding:4px}
.kb-table-edit-grid input[type=text]{border:none;height:32px;background:transparent;width:100%}
.kb-table-edit-grid th{background:var(--bg);position:relative;padding-right:26px}
.kb-table-col-remove{position:absolute;right:4px;top:50%;transform:translateY(-50%);width:18px;height:18px;border:none;background:none;color:var(--text-muted);cursor:pointer;font-size:11px}
.kb-table-add-col-cell{width:36px;text-align:center;background:var(--bg)}
.kb-table-row-actions{width:32px;text-align:center;background:var(--bg)}
.kb-table-row-actions button{border:none;background:none;color:var(--text-muted);cursor:pointer}
.kb-subitem-list{display:flex;flex-direction:column;gap:12px;margin-bottom:10px}
.kb-subitem{border:1px solid var(--border);border-radius:var(--radius);padding:12px;background:var(--bg)}
.kb-subitem-head{display:flex;gap:8px;align-items:center;margin-bottom:8px}
.kb-subitem-head input{flex:1}
@media (max-width:560px){.kb-blocks > *{max-width:none}}

.kanban-board{display:flex;gap:14px;overflow-x:auto;padding-bottom:6px}
.kanban-column{flex:0 0 260px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg);display:flex;flex-direction:column;max-height:calc(100vh - 340px);min-height:200px}
.kanban-column-head{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--text-secondary);padding:12px 14px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;flex-shrink:0}
.kanban-count{background:var(--card);border-radius:20px;padding:1px 8px;font-size:11px;color:var(--text-muted)}
.kanban-column-body{padding:10px;display:flex;flex-direction:column;gap:8px;overflow-y:auto;flex:1;transition:background .12s}
.kanban-column-body.drag-over{background:var(--accent-light)}
.kanban-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px;cursor:grab;box-shadow:0 1px 2px rgba(0,0,0,.04)}
.kanban-card:active{cursor:grabbing}
.kanban-card.dragging{opacity:.4}
.kanban-card-title{display:block;font-weight:600;color:var(--navy);text-decoration:none;font-size:13px;margin-bottom:4px}
.kanban-card-meta{font-size:12px;color:var(--text-secondary);margin-bottom:6px}
.kanban-empty{font-size:12px;color:var(--text-muted);text-align:center;padding:16px 0}

.funnel{display:flex;flex-direction:column;gap:10px}
.funnel-row{display:grid;grid-template-columns:140px 1fr 90px;align-items:center;gap:10px}
.funnel-label{font-size:12px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.funnel-bar-track{background:var(--bg);border-radius:20px;height:14px;overflow:hidden}
.funnel-bar-fill{height:100%;border-radius:20px;transition:width .2s}
.funnel-value{font-size:12px;font-weight:600;text-align:right;white-space:nowrap}
.funnel-pct{color:var(--text-muted);font-weight:500}
@media (max-width:560px){.funnel-row{grid-template-columns:100px 1fr 70px}}

.password-card{max-width:460px}
.password-card-header{display:flex;align-items:center;gap:12px;margin-bottom:22px}
.password-card-icon{width:44px;height:44px;border-radius:12px;background:var(--accent-light);color:var(--accent);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:18px}
.password-card-title{font-size:15px;font-weight:600}
.password-card-sub{font-size:12px;color:var(--text-secondary);margin-top:2px}
.password-section-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);margin:18px 0 10px}
.password-section-label:first-of-type{margin-top:0}
.password-field-wrap{position:relative}
.password-field-wrap input{padding-right:40px}
.password-toggle-btn{position:absolute;top:0;right:0;height:38px;width:38px;display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--text-muted);cursor:pointer}
.password-toggle-btn:hover{color:var(--text)}
.password-match-hint{font-size:12px;margin-top:6px;display:none;align-items:center;gap:5px}
.password-match-hint.show{display:flex}
.password-match-hint.ok{color:var(--success)}
.password-match-hint.no{color:var(--danger)}

/* TABLET tier (<=960px): sidebar becomes an off-canvas drawer behind a hamburger toggle. */
@media (max-width:960px){
  body{flex-direction:column}
  .mobile-topbar{display:flex;align-items:center;gap:14px;background:var(--navy);color:#fff;padding:14px 20px;position:sticky;top:0;z-index:250}
  .mobile-nav-toggle{background:none;border:none;color:#fff;cursor:pointer;padding:4px;display:flex}
  .mobile-nav-toggle svg{width:22px;height:22px}
  .mobile-topbar-brand{font-family:'Sora',sans-serif;font-size:15px;font-weight:700}
  .sidebar{position:fixed;top:0;left:0;width:260px;max-width:85vw;height:100vh;transform:translateX(-100%);transition:transform .22s ease;z-index:300}
  .sidebar.open{transform:translateX(0)}
  .sidebar-close{display:flex;align-items:center;justify-content:center;background:none;border:none;color:#C7D3EA;cursor:pointer;position:absolute;top:16px;right:16px;padding:4px}
  .sidebar-close svg{width:18px;height:18px}
  .sidebar-backdrop.open{display:block}
  .brand-sub{display:block}
  .dropdown-menu.nav-flyout{position:static;top:auto;left:auto;right:auto;margin-left:0;box-shadow:none;border:none;background:rgba(255,255,255,.05);padding:4px 4px 4px 18px;min-width:0}
  .dropdown-menu.nav-flyout a{color:#C7D3EA}
  .dropdown-menu.nav-flyout a:hover{background:rgba(255,255,255,.08)}
  .main{padding:20px}
  .stats-grid{grid-template-columns:1fr 1fr}
  .form-grid{grid-template-columns:1fr}
}
.toast-notification{position:fixed;bottom:20px;right:20px;background:var(--success);color:#fff;padding:12px 16px;border-radius:var(--radius);font-size:13px;font-weight:600;box-shadow:0 4px 12px rgba(0,0,0,0.15);z-index:10000;animation:slideInUp 0.3s ease-out}
@keyframes slideInUp{from{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}
/* PHONE tier (<=560px): drop remaining 2-column layouts to a single column. */
@media (max-width:560px){
  .main{padding:14px}
  .stats-grid{grid-template-columns:1fr}
  .kb-inspector-row{grid-template-columns:1fr}
  .insights-bar{grid-template-columns:1fr 1fr}
  .page-header-top{gap:12px}
  .toast-notification{bottom:14px;right:14px;font-size:12px;padding:10px 14px}
}
