:root{--crm-bg:#f4f7fb;--crm-card:#fff;--crm-text:#111827;--crm-muted:#6b7280;--crm-primary:#2563eb;--crm-primary2:#7c3aed;--crm-success:#10b981;--crm-danger:#ef4444;--crm-border:#e5e7eb;--crm-shadow:0 18px 50px rgba(15,23,42,.08)}
*{box-sizing:border-box}body{font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;background:radial-gradient(circle at top left,#e0ecff 0,#f7f8fc 30%,#f6f8fb 100%);color:var(--crm-text)}.main{min-height:100vh;margin-left:280px}.page-wrap{padding:24px}.sidebar{position:fixed;left:0;top:0;bottom:0;width:280px;background:linear-gradient(180deg,#0f172a,#111827 50%,#1e1b4b);padding:18px 14px;z-index:1040;overflow:auto;box-shadow:16px 0 50px rgba(15,23,42,.18)}.brand{height:58px;display:flex;align-items:center;gap:12px;color:white;font-size:20px;font-weight:900;letter-spacing:-.03em;padding:0 12px;margin-bottom:12px}.brand i{width:40px;height:40px;border-radius:14px;background:linear-gradient(135deg,#60a5fa,#a78bfa);display:grid;place-items:center}.sidebar nav a{display:flex;align-items:center;gap:10px;color:#cbd5e1;text-decoration:none;border-radius:14px;padding:11px 13px;margin:3px 0;font-weight:700;font-size:14px}.sidebar nav a:hover,.sidebar nav a.active{color:#fff;background:rgba(255,255,255,.12);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}.topbar{background:rgba(255,255,255,.78);backdrop-filter:blur(16px);border-bottom:1px solid rgba(226,232,240,.8);position:sticky;top:0;z-index:1020}.card{border:1px solid rgba(226,232,240,.8);border-radius:22px;box-shadow:var(--crm-shadow);background:rgba(255,255,255,.92)}.card-header{background:transparent;border-bottom:1px solid var(--crm-border);padding:18px 20px;font-weight:900}.stat-card{position:relative;overflow:hidden}.stat-card:after{content:"";position:absolute;right:-24px;top:-24px;width:120px;height:120px;background:linear-gradient(135deg,rgba(37,99,235,.17),rgba(124,58,237,.13));border-radius:50%}.stat-value{font-size:34px;font-weight:900;letter-spacing:-.05em}.stat-label{color:var(--crm-muted);font-weight:800;text-transform:uppercase;font-size:12px;letter-spacing:.08em}.btn{border-radius:12px;font-weight:800}.btn-primary,.bg-primary{background:linear-gradient(135deg,var(--crm-primary),var(--crm-primary2))!important;border:0}.btn-success{background:linear-gradient(135deg,#10b981,#059669);border:0}.btn-danger{background:linear-gradient(135deg,#ef4444,#dc2626);border:0}.table{vertical-align:middle}.table thead th{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:#64748b;border-bottom:1px solid var(--crm-border);background:#f8fafc}.table tbody td{padding-top:14px;padding-bottom:14px}.action-group{display:flex;gap:6px;justify-content:flex-end;align-items:center;flex-wrap:nowrap}.action-group .btn{height:34px;width:34px;padding:0;display:inline-grid;place-items:center}.badge{border-radius:999px}.form-control,.form-select{border-radius:13px;border-color:#dbe3ef;padding:.68rem .85rem}.form-control:focus,.form-select:focus{border-color:#93c5fd;box-shadow:0 0 0 .25rem rgba(37,99,235,.12)}.kanban{display:flex;gap:16px;overflow:auto;padding-bottom:10px}.kanban-col{min-width:310px;background:#eef2ff;border:1px solid #dbeafe;border-radius:22px;padding:14px}.kanban-card{background:#fff;border:1px solid var(--crm-border);border-radius:18px;padding:14px;margin-bottom:12px;box-shadow:0 10px 28px rgba(15,23,42,.07);cursor:grab}.chat-shell{display:grid;grid-template-columns:330px 1fr;gap:18px}.conversation-list{max-height:74vh;overflow:auto}.bubble{max-width:78%;padding:11px 14px;border-radius:18px;margin:8px 0;box-shadow:0 8px 24px rgba(15,23,42,.06)}.bubble.in{background:#fff;border:1px solid #e5e7eb}.bubble.out{background:linear-gradient(135deg,#dbeafe,#ede9fe);margin-left:auto}.quotation-a4{background:#fff;max-width:920px;margin:auto;padding:34px;border-radius:18px;border:1px solid #e5e7eb}.empty-state{border:1px dashed #cbd5e1;background:#f8fafc;border-radius:18px;padding:32px;text-align:center;color:#64748b}.toast-container{z-index:2000}.mobile-actions{display:none}@media(max-width:991px){.sidebar{transform:translateX(-100%);transition:.25s}.sidebar.show{transform:translateX(0)}.main{margin-left:0}.chat-shell{grid-template-columns:1fr}.page-wrap{padding:16px}.action-group{justify-content:flex-start}.mobile-actions{display:flex;position:fixed;left:12px;right:12px;bottom:12px;background:white;border:1px solid var(--crm-border);box-shadow:var(--crm-shadow);border-radius:18px;padding:8px;gap:8px;z-index:1030}.table-responsive .table{min-width:850px}}
.dashboard-hero,.pipeline-toolbar{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:24px;border-radius:24px;background:linear-gradient(135deg,#0f172a,#1d4ed8 58%,#0f766e);color:#fff;box-shadow:0 24px 70px rgba(15,23,42,.2);overflow:hidden;position:relative}.dashboard-hero:after,.pipeline-toolbar:after{content:"";position:absolute;right:24%;top:-60px;width:260px;height:260px;border-radius:50%;background:rgba(255,255,255,.1);pointer-events:none}.dashboard-hero .text-muted,.pipeline-toolbar .text-muted{color:rgba(255,255,255,.76)!important}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:900;color:#93c5fd}.hero-actions{display:flex;gap:10px;flex-wrap:wrap;position:relative;z-index:1}.dashboard-tabs{gap:8px}.dashboard-tabs .nav-link{font-weight:900;border-radius:999px;color:#475569;background:#fff;border:1px solid #e2e8f0}.dashboard-tabs .nav-link.active{background:linear-gradient(135deg,#2563eb,#0f766e);box-shadow:0 12px 32px rgba(37,99,235,.22)}.dashboard-stat .stat-icon{font-size:28px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;padding:10px;line-height:1}.dash-list-row{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid #eef2f7}.dash-list-row:last-child{border-bottom:0}.health-ring{width:168px;height:168px;border-radius:50%;margin:0 auto;display:grid;place-items:center;text-align:center;background:conic-gradient(#10b981 0 68%,#dbeafe 68% 100%);box-shadow:inset 0 0 0 16px #fff}.health-ring span{display:block;font-size:34px;font-weight:900}.health-ring small{display:block;color:#64748b;font-weight:800;max-width:100px}.quick-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.quick-grid a,.mini-metric{display:flex;flex-direction:column;gap:6px;text-decoration:none;color:#0f172a;background:#fff;border:1px solid #e2e8f0;border-radius:20px;padding:18px;box-shadow:var(--crm-shadow)}.quick-grid i{font-size:26px;color:#2563eb}.quick-grid span,.mini-metric span{font-weight:900}.quick-grid small,.mini-metric small{color:#64748b}.mini-metric b{font-size:24px;letter-spacing:-.03em}.board-filters .card-body{padding:16px}.board-kanban{min-height:560px}.kanban-col-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}.drop-zone{min-height:440px;border-radius:18px;transition:.18s}.drop-zone.drop-active{background:rgba(37,99,235,.08);box-shadow:inset 0 0 0 2px rgba(37,99,235,.22)}.deal-card{transition:transform .16s,box-shadow .16s,border-color .16s}.deal-card:hover{transform:translateY(-2px);box-shadow:0 16px 36px rgba(15,23,42,.12);border-color:#bfdbfe}.deal-card.dragging{opacity:.55;transform:rotate(1deg) scale(.98)}.deal-title{color:#0f172a}.deal-meta{display:grid;grid-template-columns:1fr;gap:6px;color:#475569;font-size:13px}.drop-empty{display:none;border:1px dashed #93c5fd;border-radius:16px;color:#64748b;text-align:center;padding:14px;margin-top:8px;font-weight:800}.drop-zone.drop-active .drop-empty{display:block}.board-toast{position:fixed;right:24px;bottom:24px;background:#0f172a;color:#fff;padding:12px 16px;border-radius:14px;box-shadow:0 18px 50px rgba(15,23,42,.25);z-index:3000;font-weight:900}@media(max-width:991px){.dashboard-hero,.pipeline-toolbar{align-items:flex-start;flex-direction:column}.quick-grid{grid-template-columns:1fr}.board-kanban .kanban-col{min-width:280px}}
.contacts-hero{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:24px;border-radius:24px;background:linear-gradient(135deg,#111827,#0f766e 52%,#2563eb);color:#fff;box-shadow:0 24px 70px rgba(15,23,42,.2);position:relative;overflow:hidden}.contacts-hero:before{content:"";position:absolute;right:-70px;top:-90px;width:260px;height:260px;border-radius:50%;background:rgba(255,255,255,.12)}.contacts-hero .text-muted{color:rgba(255,255,255,.76)!important}.contact-kpi{background:#fff;border:1px solid #e2e8f0;border-radius:20px;padding:18px;box-shadow:var(--crm-shadow);display:flex;flex-direction:column;gap:4px}.contact-kpi span{color:#64748b;text-transform:uppercase;letter-spacing:.08em;font-size:12px;font-weight:900}.contact-kpi b{font-size:30px;letter-spacing:-.04em}.contact-kpi small{color:#64748b}.contact-status-strip{display:flex;gap:10px;overflow:auto;padding-bottom:2px}.contact-status-strip a{min-width:150px;background:#fff;border:1px solid #e2e8f0;border-radius:18px;padding:12px 14px;text-decoration:none;color:#0f172a;box-shadow:0 10px 28px rgba(15,23,42,.06);display:flex;justify-content:space-between;align-items:center}.contact-status-strip a span{font-weight:900}.contact-status-strip a b{color:#2563eb}.contact-status-strip a.active{background:linear-gradient(135deg,#2563eb,#0f766e);color:#fff}.contact-status-strip a.active b{color:#fff}.contact-filter-card .card-body{padding:16px}.contacts-table-card{overflow:hidden}.contact-bulkbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:14px 16px;background:linear-gradient(135deg,#f8fafc,#eef6ff);border-bottom:1px solid #e2e8f0}.contact-bulkbar .form-select{width:auto;min-width:160px}.contacts-table{font-size:15px}.contacts-table thead th{position:sticky;top:0;z-index:1}.contacts-table tbody td{font-size:15px;line-height:1.45}.contacts-table .small{font-size:13px}.contacts-table .fw-bold,.contacts-table b{font-weight:700!important}.contacts-table .action-group{gap:7px}.contacts-table .action-group .btn{width:28px;height:28px;border-radius:9px;font-size:13px}.contact-person{display:flex;align-items:center;gap:12px;min-width:210px}.contact-reach{display:flex;flex-direction:column;gap:4px;min-width:190px}.contact-reach a{color:#334155;text-decoration:none;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:230px}.contact-reach a:hover{color:#2563eb}.contacts-pagination{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;border-top:1px solid #e2e8f0;background:#fff}@media(max-width:991px){.contacts-hero{align-items:flex-start;flex-direction:column}.contacts-pagination{align-items:flex-start;flex-direction:column}.contact-bulkbar .form-select{width:100%}}
.automation-hero{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:24px;border-radius:24px;background:linear-gradient(135deg,#111827,#0f766e 48%,#2563eb);color:#fff;box-shadow:0 24px 70px rgba(15,23,42,.2);overflow:hidden}.automation-hero .text-muted{color:rgba(255,255,255,.78)!important}.automation-tabs{gap:8px}.automation-tabs .nav-link{border:1px solid #e2e8f0;background:#fff;border-radius:999px;color:#475569;font-weight:800}.automation-tabs .nav-link.active{background:linear-gradient(135deg,#2563eb,#0f766e);color:#fff;box-shadow:0 12px 28px rgba(37,99,235,.2)}.automation-card .card-footer{background:#fff;border-top:1px solid #eef2f7}.automation-icon{width:46px;height:46px;border-radius:14px;background:#eef6ff;color:#2563eb;display:grid;place-items:center;font-size:22px}.automation-status-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:4px}.automation-status-grid div{min-width:0;padding:10px 12px;border:1px solid #eef2f7;border-radius:12px;background:#f8fafc}.automation-status-grid span{display:block;color:#64748b;font-size:12px;font-weight:800;line-height:1.2;margin-bottom:4px}.automation-status-grid b{display:block;color:#0f172a;font-size:14px;line-height:1.25;font-weight:900;overflow-wrap:anywhere}.automation-status-grid div:nth-child(3){grid-column:1/-1}@media(max-width:991px){.automation-hero{align-items:flex-start;flex-direction:column}.automation-tabs{flex-wrap:nowrap;overflow:auto;padding-bottom:4px}.automation-tabs .nav-link{white-space:nowrap}.automation-status-grid{grid-template-columns:1fr}}
.doc-hero{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:24px;border-radius:24px;background:linear-gradient(135deg,#172554,#0f766e 52%,#4338ca);color:#fff;box-shadow:0 24px 70px rgba(15,23,42,.2);overflow:hidden}.doc-hero .text-muted{color:rgba(255,255,255,.78)!important}.doc-card .card-footer{background:#fff;border-top:1px solid #eef2f7}.doc-meta{display:grid;grid-template-columns:1fr;gap:10px}.doc-meta div{padding:10px 12px;border:1px solid #eef2f7;border-radius:12px;background:#f8fafc}.doc-meta span{display:block;color:#64748b;font-size:12px;font-weight:800;line-height:1.2;margin-bottom:4px}.doc-meta b{display:block;color:#0f172a;font-size:14px;line-height:1.25;font-weight:900}@media(max-width:991px){.doc-hero{align-items:flex-start;flex-direction:column}}
/* Premium SaaS redesign layer */
:root{
  --crm-bg:#f6f7fb;
  --crm-surface:#ffffff;
  --crm-surface-soft:#f8fafc;
  --crm-text:#101828;
  --crm-muted:#667085;
  --crm-border:#d9e2ef;
  --crm-border-soft:#edf1f7;
  --crm-primary:#1f6feb;
  --crm-primary-dark:#1555b7;
  --crm-teal:#0f766e;
  --crm-amber:#b7791f;
  --crm-success:#0f9f6e;
  --crm-danger:#d92d20;
  --crm-warning:#b7791f;
  --crm-info:#2563eb;
  --crm-sidebar:#101828;
  --crm-sidebar-2:#182230;
  --crm-shadow-sm:0 1px 2px rgba(16,24,40,.06);
  --crm-shadow:0 10px 30px rgba(16,24,40,.08);
  --crm-shadow-lg:0 22px 55px rgba(16,24,40,.12);
  --radius-card:8px;
  --radius-control:8px;
}

html{scroll-behavior:smooth}
body.crm-app,
body.auth-page{
  min-height:100vh;
  background:linear-gradient(180deg,#f8fafc 0,#f3f6fb 46%,#f6f7fb 100%);
  color:var(--crm-text);
  font-size:15px;
  letter-spacing:0;
}
a{transition:color .15s ease,background-color .15s ease,border-color .15s ease,box-shadow .15s ease,transform .15s ease}
a:focus-visible,
button:focus-visible,
.form-control:focus-visible,
.form-select:focus-visible,
.btn:focus-visible{
  outline:3px solid rgba(31,111,235,.22);
  outline-offset:2px;
}

.main{margin-left:288px;background:transparent}
.page-wrap{max-width:1760px;margin:0 auto;padding:28px}
.topbar{
  min-height:76px;
  padding:0 24px!important;
  background:rgba(255,255,255,.88);
  border-bottom:1px solid rgba(217,226,239,.9);
  box-shadow:var(--crm-shadow-sm);
}
.topbar-inner{width:100%;display:flex;align-items:center;gap:14px}
.topbar-title{display:flex;flex-direction:column;line-height:1.15}
.topbar-kicker{color:var(--crm-muted);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.topbar-name{font-size:18px;font-weight:900;color:var(--crm-text)}
.topbar-actions{margin-left:auto;display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.topbar-status,
.user-chip{
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:36px;
  padding:7px 11px;
  border:1px solid var(--crm-border);
  border-radius:var(--radius-control);
  background:#fff;
  color:#344054;
  font-weight:800;
  box-shadow:var(--crm-shadow-sm);
}
.topbar-status{color:#0f766e;background:#f0fdfa;border-color:#b7eee3}

.sidebar{
  width:288px;
  padding:18px 14px 22px;
  background:linear-gradient(180deg,var(--crm-sidebar),var(--crm-sidebar-2));
  border-right:1px solid rgba(255,255,255,.08);
  box-shadow:10px 0 35px rgba(16,24,40,.16);
}
.brand{
  height:54px;
  margin-bottom:14px;
  padding:0 10px;
  letter-spacing:0;
  font-size:18px;
}
.brand i{
  width:38px;
  height:38px;
  border-radius:var(--radius-control);
  background:#1f6feb;
  box-shadow:0 12px 24px rgba(31,111,235,.25);
}
.sidebar nav{display:flex;flex-direction:column;gap:3px}
.sidebar nav a{
  min-height:40px;
  margin:0;
  padding:9px 11px;
  border-radius:var(--radius-control);
  color:#d0d5dd;
  font-size:14px;
  font-weight:750;
  letter-spacing:0;
}
.sidebar nav a i{width:20px;text-align:center;color:#98a2b3;font-size:16px}
.sidebar nav a:hover{background:rgba(255,255,255,.08);color:#fff;transform:translateX(2px)}
.sidebar nav a:hover i,
.sidebar nav a.active i{color:#fff}
.sidebar nav a.active{
  background:#1f6feb;
  color:#fff;
  box-shadow:0 12px 24px rgba(31,111,235,.24);
}

.card,
.shadow-soft,
.quick-grid a,
.mini-metric,
.contact-kpi,
.contact-status-strip a,
.kanban-card,
.deal-card,
.auth-card{
  border:1px solid var(--crm-border);
  border-radius:var(--radius-card)!important;
  background:var(--crm-surface);
  box-shadow:var(--crm-shadow-sm);
}
.card:hover,
.quick-grid a:hover,
.contact-status-strip a:hover{box-shadow:var(--crm-shadow)}
.card-header,
.card-footer{background:#fff;border-color:var(--crm-border-soft)}
.card-body{padding:20px}

h1,h2,h3,h4,h5,h6{letter-spacing:0;color:var(--crm-text)}
.page-wrap>h2,
.page-wrap>h4,
.page-wrap>.d-flex:first-child h2,
.page-wrap>.d-flex:first-child h4{
  font-size:28px;
  line-height:1.2;
  margin-bottom:0;
}
.text-muted{color:var(--crm-muted)!important}
.eyebrow{color:var(--crm-primary);letter-spacing:.08em}

.btn{
  min-height:38px;
  border-radius:var(--radius-control);
  font-weight:800;
  letter-spacing:0;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  box-shadow:none!important;
}
.btn-sm{min-height:32px;padding:.35rem .65rem;font-size:.86rem}
.btn-icon{width:38px;padding:0}
.btn-primary,
.btn-success,
.btn-danger,
.btn-warning,
.btn-info{border-width:1px;background-image:none!important}
.btn-primary{background:var(--crm-primary)!important;border-color:var(--crm-primary)!important}
.btn-primary:hover{background:var(--crm-primary-dark)!important;border-color:var(--crm-primary-dark)!important}
.btn-success{background:var(--crm-success)!important;border-color:var(--crm-success)!important}
.btn-danger{background:var(--crm-danger)!important;border-color:var(--crm-danger)!important}
.btn-outline-primary{color:var(--crm-primary);border-color:#b8cdf4;background:#fff}
.btn-outline-primary:hover{color:#fff;background:var(--crm-primary);border-color:var(--crm-primary)}
.btn-outline-danger{background:#fff}

.form-label,
label{font-weight:800;color:#344054;margin-bottom:6px}
.form-control,
.form-select{
  min-height:42px;
  border-radius:var(--radius-control);
  border-color:var(--crm-border);
  background-color:#fff;
  color:var(--crm-text);
  box-shadow:none;
}
textarea.form-control{min-height:120px}
.form-control:hover,
.form-select:hover{border-color:#b9c7da}
.form-control:focus,
.form-select:focus{
  border-color:#84adf4;
  box-shadow:0 0 0 4px rgba(31,111,235,.12);
}

.table{margin-bottom:0;color:var(--crm-text)}
.table thead th{
  padding:12px 14px;
  color:#667085;
  background:#f8fafc;
  border-bottom:1px solid var(--crm-border);
  font-size:12px;
  font-weight:900;
  letter-spacing:.06em;
  white-space:nowrap;
}
.table tbody td{
  padding:14px;
  border-color:var(--crm-border-soft);
  color:#1d2939;
}
.table tbody tr{transition:background-color .14s ease}
.table tbody tr:hover{background:#f8fbff}
.card:has(>table.table){overflow-x:auto}
.card:has(>table.table)>table.table{min-width:760px}
.table-responsive{border-radius:var(--radius-card)}

.badge,
.status-badge{border-radius:999px;font-weight:850;letter-spacing:0}
.badge.text-bg-light{background:#f2f4f7!important;color:#344054!important;border-color:#e4e7ec!important}
.badge.text-bg-success{background:#dcfae6!important;color:#067647!important}
.badge.text-bg-danger{background:#fee4e2!important;color:#b42318!important}
.badge.text-bg-warning{background:#fef0c7!important;color:#93370d!important}
.badge.text-bg-primary{background:#dbeafe!important;color:#1d4ed8!important}

.alert{
  border-radius:var(--radius-card);
  border-width:1px;
  box-shadow:var(--crm-shadow-sm);
}
.dropdown-menu{
  border-radius:var(--radius-card);
  border-color:var(--crm-border);
  box-shadow:var(--crm-shadow);
}

.dashboard-hero,
.contacts-hero,
.pipeline-toolbar,
.automation-hero,
.doc-hero{
  border:1px solid var(--crm-border);
  border-radius:var(--radius-card);
  background:#fff;
  color:var(--crm-text);
  box-shadow:var(--crm-shadow-sm);
}
.dashboard-hero:after,
.contacts-hero:before,
.pipeline-toolbar:after{display:none}
.dashboard-hero .text-muted,
.contacts-hero .text-muted,
.pipeline-toolbar .text-muted,
.automation-hero .text-muted,
.doc-hero .text-muted{color:var(--crm-muted)!important}
.hero-actions{gap:8px}

.stat-card:after{display:none}
.stat-value,
.contact-kpi b{font-size:30px;letter-spacing:0}
.stat-label,
.contact-kpi span{color:var(--crm-muted);letter-spacing:.06em}
.quick-grid{gap:12px}
.quick-grid a,
.mini-metric{padding:16px}
.quick-grid i{color:var(--crm-primary)}
.health-ring{
  box-shadow:inset 0 0 0 14px #fff,var(--crm-shadow-sm);
  background:conic-gradient(var(--crm-success) 0 68%,#e6edf6 68% 100%);
}

.contact-status-strip a.active,
.dashboard-tabs .nav-link.active,
.automation-tabs .nav-link.active{
  background:var(--crm-primary);
  color:#fff;
  box-shadow:none;
}
.dashboard-tabs .nav-link,
.automation-tabs .nav-link{border-radius:var(--radius-control)}
.contact-bulkbar{background:#f8fafc;border-bottom-color:var(--crm-border)}
.contacts-table .action-group .btn,
.action-group .btn{
  width:30px;
  height:30px;
  border-radius:var(--radius-control);
}

.kanban-col{
  border-color:var(--crm-border);
  border-radius:var(--radius-card);
  background:#f8fafc;
}
.drop-zone{border-radius:var(--radius-card)}
.deal-card:hover,
.kanban-card:hover{transform:translateY(-2px);border-color:#b8cdf4}
.board-toast{border-radius:var(--radius-card);background:#101828}
.empty-state{border-radius:var(--radius-card);border-color:#b8cdf4;background:#f8fbff}

.auth-page{
  display:grid;
  place-items:center;
  padding:28px;
}
.auth-shell{
  width:min(1120px,100%);
  min-height:620px;
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(360px,.7fr);
  gap:22px;
  align-items:stretch;
}
.auth-panel{
  border-radius:var(--radius-card);
  padding:42px;
  color:#fff;
  background:linear-gradient(135deg,#101828,#164e63 58%,#1f6feb);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  box-shadow:var(--crm-shadow-lg);
}
.auth-brand{display:inline-flex;align-items:center;gap:10px;font-weight:900;margin-bottom:42px}
.auth-brand i{
  width:40px;
  height:40px;
  display:grid;
  place-items:center;
  border-radius:var(--radius-control);
  background:rgba(255,255,255,.16);
}
.auth-panel h1{max-width:620px;color:#fff;font-size:42px;line-height:1.08;font-weight:900;margin-bottom:14px}
.auth-panel p{max-width:620px;color:rgba(255,255,255,.78);font-size:17px;margin:0}
.auth-highlights{display:flex;gap:10px;flex-wrap:wrap}
.auth-highlights span{
  display:inline-flex;
  align-items:center;
  gap:8px;
  border:1px solid rgba(255,255,255,.22);
  border-radius:var(--radius-control);
  padding:9px 11px;
  color:#fff;
  background:rgba(255,255,255,.09);
  font-weight:800;
}
.auth-card{align-self:center}
.auth-card .card-body{padding:34px}

@media(max-width:991px){
  .main{margin-left:0}
  .page-wrap{padding:18px}
  .topbar{padding:0 14px!important}
  .topbar-inner{min-height:68px}
  .topbar-title{min-width:0}
  .topbar-kicker{display:none}
  .topbar-name{font-size:16px}
  .topbar-actions{gap:8px}
  .topbar-status{display:none}
  .user-chip{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .sidebar{transform:translateX(-100%);transition:transform .22s ease}
  .sidebar.show{transform:translateX(0)}
  body.sidebar-open:after{
    content:"";
    position:fixed;
    inset:0;
    background:rgba(16,24,40,.38);
    z-index:1030;
  }
  .sidebar.show{z-index:1040}
  .auth-shell{grid-template-columns:1fr;min-height:auto}
  .auth-panel{padding:28px}
  .auth-panel h1{font-size:32px}
  .auth-card .card-body{padding:24px}
}

@media(max-width:575px){
  body.auth-page{padding:14px}
  .page-wrap{padding:14px}
  .topbar-actions .btn{padding:.35rem .55rem}
  .user-chip{display:none}
  .auth-panel{display:none}
  .auth-shell{display:block}
  .page-wrap>h2,
  .page-wrap>h4,
  .page-wrap>.d-flex:first-child h2,
  .page-wrap>.d-flex:first-child h4{font-size:23px}
}

/* Chunk 1: Premium CRM design system */
:root{
  --crm-primary:#2563EB;
  --crm-primary-hover:#1D4ED8;
  --crm-primary-soft:#DBEAFE;
  --crm-secondary:#7C3AED;
  --crm-secondary-hover:#6D28D9;
  --crm-secondary-soft:#EDE9FE;
  --crm-accent:#06B6D4;
  --crm-accent-soft:#CFFAFE;
  --crm-success:#10B981;
  --crm-success-soft:#D1FAE5;
  --crm-warning:#F59E0B;
  --crm-warning-soft:#FEF3C7;
  --crm-danger:#EF4444;
  --crm-danger-soft:#FEE2E2;
  --crm-info:#3B82F6;
  --crm-info-soft:#DBEAFE;
  --crm-bg:#F8FAFC;
  --crm-surface:#FFFFFF;
  --crm-surface-soft:#F1F5F9;
  --crm-border:#E2E8F0;
  --crm-border-strong:#CBD5E1;
  --crm-text:#0F172A;
  --crm-text-secondary:#475569;
  --crm-muted:#94A3B8;
  --crm-sidebar:#111827;
  --crm-surface-elevated:#FFFFFF;
  --crm-radius-sm:10px;
  --crm-radius-md:14px;
  --crm-radius-lg:20px;
  --crm-radius-xl:24px;
  --crm-radius-2xl:28px;
  --crm-shadow-card:0 10px 30px rgba(15,23,42,.06);
  --crm-shadow-hover:0 16px 40px rgba(15,23,42,.10);
  --crm-shadow-panel:0 24px 70px rgba(15,23,42,.10);
  --crm-font:Inter,Manrope,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --crm-space-1:4px;
  --crm-space-2:8px;
  --crm-space-3:12px;
  --crm-space-4:16px;
  --crm-space-5:20px;
  --crm-space-6:24px;
  --crm-space-8:32px;
  --crm-space-10:40px;
  --radius-card:var(--crm-radius-lg);
  --radius-control:var(--crm-radius-sm);
}

body.dark-mode,
[data-theme="dark"]{
  --crm-bg:#0F172A;
  --crm-sidebar:#111827;
  --crm-surface:#1E293B;
  --crm-surface-elevated:#273449;
  --crm-surface-soft:#172033;
  --crm-border:#334155;
  --crm-border-strong:#475569;
  --crm-text:#F8FAFC;
  --crm-text-secondary:#CBD5E1;
  --crm-muted:#94A3B8;
  --crm-primary:#60A5FA;
  --crm-primary-hover:#3B82F6;
  --crm-primary-soft:rgba(96,165,250,.16);
  --crm-secondary:#A78BFA;
  --crm-secondary-hover:#8B5CF6;
  --crm-secondary-soft:rgba(167,139,250,.16);
  --crm-accent:#22D3EE;
  --crm-accent-soft:rgba(34,211,238,.16);
  --crm-success:#34D399;
  --crm-success-soft:rgba(52,211,153,.16);
  --crm-warning:#FBBF24;
  --crm-warning-soft:rgba(251,191,36,.16);
  --crm-danger:#F87171;
  --crm-danger-soft:rgba(248,113,113,.16);
  --crm-info:#60A5FA;
  --crm-info-soft:rgba(96,165,250,.16);
  --crm-shadow-card:0 10px 30px rgba(0,0,0,.18);
  --crm-shadow-hover:0 16px 40px rgba(0,0,0,.26);
  --crm-shadow-panel:0 24px 70px rgba(0,0,0,.30);
}

body,
body.crm-app,
body.auth-page{
  font-family:var(--crm-font);
  background:var(--crm-bg);
  color:var(--crm-text);
  font-size:15px;
  font-weight:400;
}

h1,.page-title{font-size:32px;line-height:1.15;font-weight:700;color:var(--crm-text)}
h2{font-size:28px;line-height:1.18;font-weight:700;color:var(--crm-text)}
h3,.section-title{font-size:22px;line-height:1.25;font-weight:700;color:var(--crm-text)}
h4{font-size:20px;line-height:1.3;font-weight:700;color:var(--crm-text)}
h5,.card-title{font-size:17px;line-height:1.35;font-weight:600;color:var(--crm-text)}
h6{font-size:15px;line-height:1.4;font-weight:600;color:var(--crm-text)}
p,.body-text{font-size:15px;line-height:1.6;color:var(--crm-text-secondary)}
.page-subtitle{font-size:15px;line-height:1.55;color:var(--crm-text-secondary)}
.small,small,.label-small{font-size:12px;line-height:1.45}
.text-muted{color:var(--crm-muted)!important}

.crm-card,
.card{
  background:var(--crm-surface);
  border:1px solid var(--crm-border);
  border-radius:var(--crm-radius-lg)!important;
  box-shadow:var(--crm-shadow-card);
  color:var(--crm-text);
}
.crm-card:hover,
.card:hover{box-shadow:var(--crm-shadow-hover)}
.crm-panel{
  background:var(--crm-surface);
  border:1px solid var(--crm-border);
  border-radius:var(--crm-radius-xl);
  box-shadow:var(--crm-shadow-panel);
  padding:var(--crm-space-6);
}
.crm-panel-soft{
  background:var(--crm-surface-soft);
  border:1px solid var(--crm-border);
  border-radius:var(--crm-radius-xl);
  padding:var(--crm-space-6);
}

.crm-btn,
.btn{
  min-height:42px;
  padding:10px 16px;
  border-radius:var(--crm-radius-sm);
  font-size:14px;
  font-weight:600;
  line-height:1;
}
.crm-btn-primary,
.btn-primary{
  color:#fff!important;
  background:linear-gradient(135deg,var(--crm-primary),var(--crm-secondary))!important;
  border-color:transparent!important;
}
.crm-btn-primary:hover,
.btn-primary:hover{
  color:#fff!important;
  background:linear-gradient(135deg,var(--crm-primary-hover),var(--crm-secondary-hover))!important;
}
.crm-btn-secondary{
  color:#fff!important;
  background:var(--crm-secondary)!important;
  border-color:var(--crm-secondary)!important;
}
.crm-btn-secondary:hover{background:var(--crm-secondary-hover)!important;border-color:var(--crm-secondary-hover)!important}
.crm-btn-outline,
.btn-outline-primary{
  color:var(--crm-primary)!important;
  background:var(--crm-surface)!important;
  border-color:var(--crm-border-strong)!important;
}
.crm-btn-outline:hover,
.btn-outline-primary:hover{
  color:#fff!important;
  background:var(--crm-primary)!important;
  border-color:var(--crm-primary)!important;
}
.crm-btn-danger,
.btn-danger{
  color:#fff!important;
  background:var(--crm-danger)!important;
  border-color:var(--crm-danger)!important;
}

.crm-input,
.crm-select,
.form-control,
.form-select{
  min-height:42px;
  border-radius:var(--crm-radius-sm);
  border:1px solid var(--crm-border);
  background:var(--crm-surface);
  color:var(--crm-text);
  font-size:14px;
}
.crm-input::placeholder,
.form-control::placeholder{color:var(--crm-muted)}
.crm-input:focus,
.crm-select:focus,
.form-control:focus,
.form-select:focus{
  border-color:var(--crm-primary);
  box-shadow:0 0 0 4px rgba(37,99,235,.14);
}

.crm-table,
.table{
  --bs-table-bg:transparent;
  color:var(--crm-text);
  font-size:14px;
}
.crm-table thead th,
.table thead th{
  background:var(--crm-surface-soft);
  color:var(--crm-text-secondary);
  border-color:var(--crm-border);
  font-size:12px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.crm-table tbody td,
.table tbody td{
  color:var(--crm-text-secondary);
  border-color:var(--crm-border);
  font-size:14px;
}

.crm-badge,
.badge{
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-height:24px;
  padding:5px 10px;
  border-radius:999px;
  font-size:12px;
  font-weight:700;
  line-height:1;
}
.crm-badge-success{background:var(--crm-success-soft);color:#047857}
.crm-badge-warning{background:var(--crm-warning-soft);color:#92400E}
.crm-badge-danger{background:var(--crm-danger-soft);color:#B91C1C}
.crm-badge-info{background:var(--crm-info-soft);color:#1D4ED8}
.crm-badge-primary{background:var(--crm-primary-soft);color:#1D4ED8}
.crm-badge-secondary{background:var(--crm-secondary-soft);color:#6D28D9}

.crm-alert,
.alert{
  border-radius:var(--crm-radius-md);
  border:1px solid var(--crm-border);
  box-shadow:var(--crm-shadow-card);
  font-size:14px;
}

.crm-modal,
.modal-content{
  border:1px solid var(--crm-border);
  border-radius:var(--crm-radius-xl);
  background:var(--crm-surface);
  color:var(--crm-text);
  box-shadow:var(--crm-shadow-panel);
}
.modal-header,
.modal-footer{border-color:var(--crm-border)}

.crm-empty-state,
.empty-state{
  padding:var(--crm-space-8);
  border:1px dashed var(--crm-border-strong);
  border-radius:var(--crm-radius-xl);
  background:linear-gradient(180deg,var(--crm-surface),var(--crm-surface-soft));
  color:var(--crm-text-secondary);
  text-align:center;
}

.crm-avatar{
  width:40px;
  height:40px;
  display:inline-grid;
  place-items:center;
  border-radius:999px;
  background:linear-gradient(135deg,var(--crm-primary-soft),var(--crm-secondary-soft));
  color:var(--crm-primary);
  font-weight:700;
  overflow:hidden;
}
.crm-avatar img{width:100%;height:100%;object-fit:cover}
.crm-icon-box{
  width:44px;
  height:44px;
  display:inline-grid;
  place-items:center;
  border-radius:var(--crm-radius-md);
  background:var(--crm-primary-soft);
  color:var(--crm-primary);
  font-size:20px;
}
.crm-icon-box.violet{background:var(--crm-secondary-soft);color:var(--crm-secondary)}
.crm-icon-box.cyan{background:var(--crm-accent-soft);color:#0E7490}
.crm-icon-box.success{background:var(--crm-success-soft);color:#047857}
.crm-icon-box.warning{background:var(--crm-warning-soft);color:#92400E}
.crm-icon-box.danger{background:var(--crm-danger-soft);color:#B91C1C}

.topbar,
.card-header,
.card-footer,
.dropdown-menu{background:var(--crm-surface);border-color:var(--crm-border);color:var(--crm-text)}
.sidebar{background:linear-gradient(180deg,var(--crm-sidebar),#172033)}
.dashboard-hero,
.contacts-hero,
.pipeline-toolbar,
.automation-hero,
.doc-hero{
  border-radius:var(--crm-radius-xl);
  background:linear-gradient(135deg,var(--crm-surface),var(--crm-surface-soft));
}
.auth-panel{
  border-radius:var(--crm-radius-xl);
  background:linear-gradient(135deg,#0F172A 0%,#1E3A8A 54%,#6D28D9 100%);
}

body.dark-mode .table tbody tr:hover,
[data-theme="dark"] .table tbody tr:hover{background:rgba(255,255,255,.04)}
body.dark-mode .badge.text-bg-light,
[data-theme="dark"] .badge.text-bg-light{background:var(--crm-surface-soft)!important;color:var(--crm-text-secondary)!important;border-color:var(--crm-border)!important}

/* Chunk 2: Main shell, sidebar, topbar, navigation */
.app-shell{min-height:100vh;background:var(--crm-bg)}
.sidebar{
  width:260px;
  padding:16px 12px;
  background:var(--crm-surface);
  border-right:1px solid var(--crm-border);
  box-shadow:0 12px 34px rgba(15,23,42,.06);
  color:var(--crm-text);
  transition:width .22s ease,transform .22s ease,background-color .18s ease;
}
.main{
  margin-left:260px;
  min-width:0;
  transition:margin-left .22s ease;
}
.sidebar-head{
  display:flex;
  align-items:center;
  gap:8px;
  margin-bottom:16px;
}
.brand{
  flex:1;
  min-width:0;
  height:48px;
  margin:0;
  padding:6px 8px;
  border-radius:var(--crm-radius-md);
  color:var(--crm-text);
  text-decoration:none;
}
.brand:hover{background:var(--crm-surface-soft);color:var(--crm-text)}
.brand i{
  width:36px;
  height:36px;
  flex:0 0 36px;
  border-radius:12px;
  color:#fff;
  background:linear-gradient(135deg,var(--crm-primary),var(--crm-secondary));
}
.brand-copy{display:flex;flex-direction:column;min-width:0}
.brand-copy strong{font-size:16px;line-height:1.1;font-weight:800;white-space:nowrap}
.brand-copy small{font-size:12px;color:var(--crm-muted);font-weight:700;line-height:1.25}
.sidebar-collapse-btn{
  width:36px;
  height:36px;
  display:grid;
  place-items:center;
  border:1px solid var(--crm-border);
  border-radius:var(--crm-radius-sm);
  background:var(--crm-surface);
  color:var(--crm-text-secondary);
}
.sidebar-collapse-btn:hover{background:var(--crm-primary-soft);color:var(--crm-primary);border-color:#bfdbfe}
.sidebar-nav{
  display:flex;
  flex-direction:column;
  gap:18px;
  padding-bottom:82px;
}
.nav-section-title{
  padding:0 10px 8px;
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:var(--crm-muted);
}
.sidebar nav a,
.sidebar-footer a{
  position:relative;
  display:flex;
  align-items:center;
  gap:11px;
  min-height:42px;
  margin:2px 0;
  padding:10px 11px;
  border-radius:var(--crm-radius-md);
  color:var(--crm-text-secondary);
  font-size:14px;
  font-weight:650;
  text-decoration:none;
}
.sidebar nav a i,
.sidebar-footer a i{
  width:20px;
  flex:0 0 20px;
  color:var(--crm-muted);
  font-size:17px;
}
.sidebar nav a:hover,
.sidebar-footer a:hover{
  color:var(--crm-text);
  background:var(--crm-surface-soft);
  transform:none;
}
.sidebar nav a:hover i,
.sidebar-footer a:hover i{color:var(--crm-primary)}
.sidebar nav a.active{
  color:var(--crm-primary);
  background:linear-gradient(135deg,var(--crm-primary-soft),var(--crm-secondary-soft));
  box-shadow:none;
}
.sidebar nav a.active i{color:var(--crm-primary)}
.nav-label{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.nav-badge{
  margin-left:auto;
  min-width:22px;
  height:22px;
  padding:0 7px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:var(--crm-danger-soft);
  color:#B91C1C;
  font-size:11px;
  font-weight:800;
}
.sidebar-footer{
  position:sticky;
  bottom:0;
  margin-top:auto;
  padding-top:12px;
  background:linear-gradient(180deg,rgba(255,255,255,0),var(--crm-surface) 28%);
}

body.sidebar-collapsed .sidebar{width:76px}
body.sidebar-collapsed .main{margin-left:76px}
body.sidebar-collapsed .brand{justify-content:center;padding:6px}
body.sidebar-collapsed .brand-copy,
body.sidebar-collapsed .nav-label,
body.sidebar-collapsed .nav-section-title,
body.sidebar-collapsed .nav-badge{display:none}
body.sidebar-collapsed .sidebar-head{justify-content:center;flex-direction:column}
body.sidebar-collapsed .sidebar-collapse-btn i{transform:rotate(180deg)}
body.sidebar-collapsed .sidebar nav a,
body.sidebar-collapsed .sidebar-footer a{
  justify-content:center;
  padding:10px;
}
body.sidebar-collapsed .sidebar nav a i,
body.sidebar-collapsed .sidebar-footer a i{margin:0}

.topbar{
  min-height:72px;
  padding:0 24px!important;
  position:sticky;
  top:0;
  z-index:1020;
  background:rgba(255,255,255,.88);
  backdrop-filter:blur(14px);
  border-bottom:1px solid var(--crm-border);
}
.topbar-inner{gap:16px}
.topbar-title{min-width:170px}
.topbar-kicker{font-size:11px}
.topbar-name{font-size:17px}
.topbar-search{
  flex:1;
  max-width:560px;
  height:44px;
  display:flex;
  align-items:center;
  gap:10px;
  padding:0 14px;
  border:1px solid var(--crm-border);
  border-radius:var(--crm-radius-md);
  background:var(--crm-surface);
  box-shadow:var(--crm-shadow-card);
}
.topbar-search i{color:var(--crm-muted)}
.topbar-search input{
  width:100%;
  border:0;
  outline:0;
  background:transparent;
  color:var(--crm-text);
  font-size:14px;
}
.topbar-search input::placeholder{color:var(--crm-muted)}
.topbar-actions{gap:8px}
.topbar-actions .btn-icon{width:40px;height:40px;min-height:40px}
.topbar-notify{position:relative}
.topbar-notify:after{
  content:"";
  position:absolute;
  top:8px;
  right:9px;
  width:8px;
  height:8px;
  border-radius:999px;
  background:var(--crm-danger);
  border:2px solid var(--crm-surface);
}
.user-menu{
  min-height:44px;
  display:flex;
  align-items:center;
  gap:10px;
  padding:5px 8px 5px 5px;
  border:1px solid var(--crm-border);
  border-radius:var(--crm-radius-md);
  background:var(--crm-surface);
  color:var(--crm-text);
  box-shadow:var(--crm-shadow-card);
}
.user-menu:hover{border-color:var(--crm-border-strong)}
.user-avatar{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:linear-gradient(135deg,var(--crm-primary),var(--crm-secondary));
  color:#fff;
  font-weight:800;
}
.user-menu-copy{display:flex;flex-direction:column;align-items:flex-start;line-height:1.1}
.user-menu-copy strong{font-size:13px;font-weight:800;max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.user-menu-copy small{font-size:11px;color:var(--crm-muted);font-weight:700}

.page-wrap{
  padding:28px 32px;
}
.page-wrap>.d-flex:first-child,
.page-header{
  margin-bottom:20px!important;
  padding:22px 24px;
  border:1px solid var(--crm-border);
  border-radius:var(--crm-radius-xl);
  background:linear-gradient(135deg,var(--crm-surface),var(--crm-surface-soft));
  box-shadow:var(--crm-shadow-card);
}
.page-wrap>.d-flex:first-child h2,
.page-wrap>.d-flex:first-child h4{
  font-size:30px;
  font-weight:700;
}

body.dark-mode,
body.dark-mode .app-shell{
  background:var(--crm-bg);
  color:var(--crm-text);
}
body.dark-mode .sidebar{
  background:var(--crm-sidebar);
  border-right-color:var(--crm-border);
  box-shadow:0 12px 34px rgba(0,0,0,.18);
}
body.dark-mode .brand,
body.dark-mode .sidebar nav a,
body.dark-mode .sidebar-footer a{color:var(--crm-text-secondary)}
body.dark-mode .brand:hover,
body.dark-mode .sidebar nav a:hover,
body.dark-mode .sidebar-footer a:hover{background:var(--crm-surface-soft);color:var(--crm-text)}
body.dark-mode .sidebar nav a.active{
  color:var(--crm-primary);
  background:rgba(96,165,250,.14);
}
body.dark-mode .sidebar-footer{background:linear-gradient(180deg,rgba(17,24,39,0),var(--crm-sidebar) 28%)}
body.dark-mode .topbar{
  background:rgba(30,41,59,.88);
  border-bottom-color:var(--crm-border);
}
body.dark-mode .topbar-search,
body.dark-mode .user-menu,
body.dark-mode .sidebar-collapse-btn{
  background:var(--crm-surface-elevated);
  border-color:var(--crm-border);
}
body.dark-mode .page-wrap>.d-flex:first-child,
body.dark-mode .page-header,
body.dark-mode .dashboard-hero,
body.dark-mode .contacts-hero,
body.dark-mode .pipeline-toolbar,
body.dark-mode .automation-hero,
body.dark-mode .doc-hero{
  background:linear-gradient(135deg,var(--crm-surface),var(--crm-surface-soft));
}

@media(max-width:1199px){
  .topbar-search{max-width:380px}
  .user-menu-copy{display:none}
}
@media(max-width:991px){
  .sidebar{
    width:280px;
    transform:translateX(-100%);
    z-index:1040;
  }
  .sidebar.show{transform:translateX(0)}
  .main,
  body.sidebar-collapsed .main{margin-left:0}
  body.sidebar-collapsed .sidebar{width:280px}
  body.sidebar-collapsed .brand-copy,
  body.sidebar-collapsed .nav-label,
  body.sidebar-collapsed .nav-section-title,
  body.sidebar-collapsed .nav-badge{display:initial}
  body.sidebar-collapsed .sidebar-head{flex-direction:row}
  body.sidebar-collapsed .sidebar nav a,
  body.sidebar-collapsed .sidebar-footer a{justify-content:flex-start}
  .sidebar-collapse-btn{display:none}
  .topbar{min-height:68px;padding:0 16px!important}
  .topbar-title{min-width:0}
  .topbar-search{order:3;flex-basis:100%;max-width:none}
  .topbar-inner{flex-wrap:wrap;padding:10px 0}
  .page-wrap{padding:20px 16px}
  .page-wrap>.d-flex:first-child,
  .page-header{padding:18px}
}
@media(max-width:767px){
  .topbar-import{display:none}
  .topbar-search{height:40px}
  .page-wrap>.d-flex:first-child{
    flex-direction:column;
    align-items:flex-start!important;
    gap:12px;
  }
  .page-wrap>.d-flex:first-child>div{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
  }
}
@media(max-width:575px){
  .topbar-add{font-size:0;padding:0;width:40px}
  .topbar-add i{font-size:16px;margin:0}
  .topbar-title{display:none}
  .topbar-actions{margin-left:auto}
  .page-wrap{padding:16px}
}

/* Chunk 3: Premium dashboard */
.dashboard-welcome{
  position:relative;
  overflow:hidden;
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
  min-height:230px;
  padding:32px;
  border-radius:24px;
  background:
    radial-gradient(circle at 88% 16%,rgba(255,255,255,.34) 0 120px,transparent 121px),
    radial-gradient(circle at 58% 78%,rgba(6,182,212,.24) 0 150px,transparent 151px),
    linear-gradient(135deg,#1d4ed8 0%,#2563eb 42%,#7c3aed 100%);
  color:#fff;
  box-shadow:var(--crm-shadow-panel);
}
.dashboard-welcome:before,
.dashboard-welcome:after{
  content:"";
  position:absolute;
  width:230px;
  height:230px;
  border-radius:999px;
  filter:blur(32px);
  pointer-events:none;
}
.dashboard-welcome:before{left:-70px;top:-90px;background:rgba(255,255,255,.16)}
.dashboard-welcome:after{right:80px;bottom:-130px;background:rgba(34,211,238,.20)}
.dashboard-welcome-copy,
.dashboard-hero-actions{position:relative;z-index:1}
.dashboard-date{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:7px 11px;
  margin-bottom:16px;
  border:1px solid rgba(255,255,255,.26);
  border-radius:999px;
  background:rgba(255,255,255,.12);
  color:rgba(255,255,255,.88);
  font-size:12px;
  font-weight:800;
}
.dashboard-welcome h1{
  max-width:720px;
  margin:0;
  color:#fff;
  font-size:36px;
  line-height:1.08;
  font-weight:800;
}
.dashboard-welcome p{
  margin:10px 0 0;
  color:rgba(255,255,255,.82);
  font-size:16px;
}
.dashboard-hero-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:10px;
  max-width:560px;
}
.dashboard-hero-actions .btn{
  border-color:rgba(255,255,255,.32)!important;
  white-space:nowrap;
}

.dashboard-kpi-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:16px;
}
.dashboard-kpi-card{
  display:flex;
  gap:14px;
  min-height:138px;
  padding:18px;
  border:1px solid var(--crm-border);
  border-radius:20px;
  background:var(--crm-surface);
  box-shadow:var(--crm-shadow-card);
  transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease;
}
.dashboard-kpi-card:hover{
  transform:translateY(-3px);
  border-color:var(--crm-border-strong);
  box-shadow:var(--crm-shadow-hover);
}
.dashboard-kpi-card .crm-icon-box{flex:0 0 44px}
.crm-icon-box.sm{
  width:34px;
  height:34px;
  flex:0 0 34px;
  border-radius:12px;
  font-size:16px;
}
.crm-icon-box.primary{background:var(--crm-primary-soft);color:var(--crm-primary)}
.kpi-label{
  color:var(--crm-text-secondary);
  font-size:12px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.kpi-value{
  margin-top:8px;
  color:var(--crm-text);
  font-size:30px;
  line-height:1;
  font-weight:800;
}
.kpi-helper{
  margin-top:8px;
  color:var(--crm-muted);
  font-size:12px;
  line-height:1.35;
}

.dashboard-main-grid{
  display:grid;
  grid-template-columns:minmax(0,1.28fr) minmax(360px,.72fr);
  gap:20px;
  align-items:start;
}
.dashboard-section{
  padding:22px;
  min-width:0;
}
.dashboard-section-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:16px;
  margin-bottom:18px;
}
.dashboard-section-head h2{
  margin:0;
  font-size:20px;
  line-height:1.25;
  font-weight:750;
}
.dashboard-section-head p{
  margin:5px 0 0;
  color:var(--crm-text-secondary);
  font-size:14px;
}
.dashboard-pipeline,
.dashboard-activity,
.dashboard-quick-actions{grid-column:1/-1}

.pipeline-snapshot-grid{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:12px;
}
.pipeline-stage-card{
  min-height:120px;
  padding:16px;
  border:1px solid var(--crm-border);
  border-radius:18px;
  background:linear-gradient(180deg,var(--crm-surface),var(--crm-surface-soft));
}
.pipeline-stage-card span{
  display:block;
  color:var(--crm-text-secondary);
  font-size:12px;
  font-weight:800;
}
.pipeline-stage-card strong{
  display:block;
  margin-top:8px;
  color:var(--crm-text);
  font-size:28px;
  line-height:1;
  font-weight:800;
}
.pipeline-stage-card small{
  color:var(--crm-muted);
  font-weight:800;
  text-align:right;
}
.stage-progress{
  height:8px;
  margin-top:16px;
  border-radius:999px;
  background:var(--crm-border);
  overflow:hidden;
}
.stage-progress i{
  display:block;
  height:100%;
  min-width:4px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--crm-primary),var(--crm-secondary));
}
.stage-5 .stage-progress i{background:var(--crm-success)}
.stage-6 .stage-progress i{background:var(--crm-danger)}

.dashboard-list{
  display:flex;
  flex-direction:column;
  gap:10px;
}
.dashboard-list-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:12px;
  border:1px solid var(--crm-border);
  border-radius:16px;
  background:var(--crm-surface-soft);
}
.dashboard-list-row .row-main{
  display:flex;
  align-items:center;
  gap:12px;
  min-width:0;
}
.dashboard-list-row a,
.dashboard-list-row strong{
  display:block;
  color:var(--crm-text);
  font-size:14px;
  font-weight:800;
  text-decoration:none;
}
.dashboard-list-row small{
  display:block;
  max-width:250px;
  overflow:hidden;
  color:var(--crm-muted);
  text-overflow:ellipsis;
  white-space:nowrap;
}
.dashboard-list-row .row-meta{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}

.campaign-metrics{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.campaign-metrics div{
  padding:14px;
  border:1px solid var(--crm-border);
  border-radius:16px;
  background:var(--crm-surface-soft);
}
.campaign-metrics span{
  display:block;
  color:var(--crm-muted);
  font-size:12px;
  font-weight:800;
}
.campaign-metrics strong{
  display:block;
  margin-top:7px;
  color:var(--crm-text);
  font-size:24px;
  font-weight:800;
}
.campaign-progress{
  display:flex;
  flex-direction:column;
  gap:12px;
}
.campaign-progress div{
  position:relative;
  height:34px;
  overflow:hidden;
  border-radius:999px;
  background:var(--crm-surface-soft);
  border:1px solid var(--crm-border);
}
.campaign-progress span{
  position:absolute;
  left:12px;
  top:50%;
  transform:translateY(-50%);
  z-index:1;
  color:var(--crm-text-secondary);
  font-size:12px;
  font-weight:800;
}
.campaign-progress i{
  display:block;
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg,var(--crm-primary-soft),var(--crm-primary));
}
.campaign-progress i.danger{background:linear-gradient(90deg,var(--crm-danger-soft),var(--crm-danger))}

.lead-performance-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
}
.lead-performance-grid h3{
  margin:0 0 12px;
  font-size:15px;
  font-weight:800;
}
.lead-bar-row{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  min-height:38px;
  margin-bottom:10px;
  padding:0 10px;
  overflow:hidden;
  border-radius:12px;
  background:var(--crm-surface-soft);
}
.lead-bar-row span,
.lead-bar-row b{
  position:relative;
  z-index:1;
  color:var(--crm-text);
  font-size:13px;
  font-weight:800;
}
.lead-bar-row i{
  position:absolute;
  inset:0 auto 0 0;
  border-radius:12px;
  background:linear-gradient(90deg,rgba(37,99,235,.18),rgba(37,99,235,.08));
}
.lead-bar-row.violet i{background:linear-gradient(90deg,rgba(124,58,237,.18),rgba(124,58,237,.08))}

.activity-timeline{
  position:relative;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}
.timeline-item{
  position:relative;
  min-height:112px;
  padding:14px;
  border:1px solid var(--crm-border);
  border-radius:16px;
  background:var(--crm-surface-soft);
}
.timeline-item>span{
  width:10px;
  height:10px;
  display:block;
  margin-bottom:14px;
  border-radius:999px;
  background:var(--crm-primary);
  box-shadow:0 0 0 5px var(--crm-primary-soft);
}
.timeline-item strong{
  display:block;
  color:var(--crm-text);
  font-size:14px;
  line-height:1.35;
}
.timeline-item small{
  display:block;
  margin-top:7px;
  color:var(--crm-muted);
  font-size:12px;
  line-height:1.4;
}

.dashboard-insights{
  background:
    linear-gradient(135deg,var(--crm-surface),var(--crm-surface-soft));
}
.insight-card{
  padding:14px;
  border:1px solid var(--crm-border);
  border-radius:16px;
  background:var(--crm-surface);
}
.insight-card p{
  margin:10px 0 6px;
  color:var(--crm-text-secondary);
  font-size:13px;
  line-height:1.55;
}
.insight-card small{color:var(--crm-muted);font-weight:700}
.dashboard-actions-grid{
  grid-template-columns:repeat(6,minmax(0,1fr));
}

body.dark-mode .dashboard-welcome{
  background:
    radial-gradient(circle at 88% 16%,rgba(255,255,255,.16) 0 120px,transparent 121px),
    radial-gradient(circle at 58% 78%,rgba(34,211,238,.14) 0 150px,transparent 151px),
    linear-gradient(135deg,#0f172a 0%,#1e3a8a 48%,#5b21b6 100%);
}
body.dark-mode .dashboard-kpi-card,
body.dark-mode .pipeline-stage-card,
body.dark-mode .dashboard-list-row,
body.dark-mode .campaign-metrics div,
body.dark-mode .campaign-progress div,
body.dark-mode .lead-bar-row,
body.dark-mode .timeline-item,
body.dark-mode .insight-card{
  background:var(--crm-surface-soft);
  border-color:var(--crm-border);
}

@media(max-width:1399px){
  .dashboard-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .pipeline-snapshot-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .dashboard-actions-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:1199px){
  .dashboard-main-grid{grid-template-columns:1fr}
  .dashboard-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .activity-timeline{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:991px){
  .dashboard-welcome{align-items:flex-start;flex-direction:column;padding:26px}
  .dashboard-hero-actions{justify-content:flex-start}
  .dashboard-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pipeline-snapshot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:767px){
  .dashboard-welcome h1{font-size:28px}
  .dashboard-section{padding:18px}
  .dashboard-section-head{align-items:flex-start;flex-direction:column}
  .campaign-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lead-performance-grid{grid-template-columns:1fr}
  .activity-timeline{grid-template-columns:1fr}
  .dashboard-actions-grid{grid-template-columns:1fr}
}
@media(max-width:575px){
  .dashboard-welcome{padding:22px;border-radius:20px}
  .dashboard-hero-actions .btn{width:100%;justify-content:center}
  .dashboard-kpi-grid{grid-template-columns:1fr}
  .pipeline-snapshot-grid{grid-template-columns:1fr}
  .campaign-metrics{grid-template-columns:1fr}
  .dashboard-list-row{align-items:flex-start;flex-direction:column}
  .dashboard-list-row .row-meta{justify-content:flex-start}
}

/* Chunk 4: Contacts, leads, forms, import */
.contacts-db-hero,
.contact-form-hero,
.contact-profile-header,
.import-hero{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:26px;
  border:1px solid var(--crm-border);
  border-radius:24px;
  background:linear-gradient(135deg,var(--crm-surface),var(--crm-surface-soft));
  box-shadow:var(--crm-shadow-card);
}
.contacts-table-card{
  border-radius:22px!important;
  overflow:hidden;
}
.contacts-table{
  min-width:1420px;
  font-size:13px;
}
.contacts-table thead th{
  position:sticky;
  top:0;
  z-index:2;
}
.contacts-table td a{
  color:var(--crm-primary);
  text-decoration:none;
}
.contacts-table td a:hover{text-decoration:underline}
.contacts-table .contact-person{
  min-width:220px;
}
.contacts-table .crm-avatar{
  width:38px;
  height:38px;
  flex:0 0 38px;
}
.contact-filter-card .card-body{
  padding:18px;
}
.contact-bulkbar{
  position:sticky;
  top:72px;
  z-index:3;
}

.contact-form-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) 360px;
  gap:20px;
  align-items:start;
}
.contact-form-main,
.contact-form-side{
  padding:24px;
}
.contact-form-side{
  position:sticky;
  top:96px;
}
.contact-form-section{
  padding-bottom:24px;
  margin-bottom:24px;
  border-bottom:1px solid var(--crm-border);
}
.contact-form-section:last-child{
  padding-bottom:0;
  margin-bottom:0;
  border-bottom:0;
}
.contact-form-section h3{
  margin:0 0 14px;
  font-size:18px;
  font-weight:750;
}
.contact-form-actions{
  display:flex;
  flex-direction:column;
  gap:10px;
}

.contact-profile-layout{
  display:grid;
  grid-template-columns:300px minmax(0,1fr) 320px;
  gap:20px;
  align-items:start;
}
.profile-summary-card,
.profile-actions-card,
.profile-tabs-card{
  padding:22px;
}
.profile-summary-card,
.profile-actions-card{
  position:sticky;
  top:96px;
}
.profile-avatar{
  width:74px;
  height:74px;
  display:grid;
  place-items:center;
  margin-bottom:16px;
  border-radius:24px;
  background:linear-gradient(135deg,var(--crm-primary),var(--crm-secondary));
  color:#fff;
  font-size:28px;
  font-weight:800;
}
.profile-summary-card h3{
  margin:0;
  font-size:22px;
  font-weight:800;
}
.profile-summary-card>p{
  margin:6px 0 12px;
  color:var(--crm-text-secondary);
}
.profile-contact-actions{
  display:grid;
  gap:8px;
  margin:18px 0;
}
.profile-detail-list p,
.detail-list p{
  display:flex;
  justify-content:space-between;
  gap:14px;
  padding:10px 0;
  margin:0;
  border-bottom:1px solid var(--crm-border);
}
.profile-detail-list b,
.detail-list b{
  color:var(--crm-muted);
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.profile-detail-list span,
.detail-list span{
  color:var(--crm-text);
  font-weight:700;
  text-align:right;
}
.profile-score{
  margin-top:18px;
  padding:16px;
  border-radius:18px;
  background:linear-gradient(135deg,var(--crm-primary-soft),var(--crm-secondary-soft));
}
.profile-score span,
.profile-score small{
  display:block;
  color:var(--crm-text-secondary);
  font-weight:800;
}
.profile-score strong{
  display:block;
  margin:8px 0;
  font-size:34px;
  color:var(--crm-text);
}
.profile-tabs{
  gap:8px;
  margin-bottom:20px;
}
.profile-tabs .nav-link{
  border-radius:999px;
  color:var(--crm-text-secondary);
  font-weight:800;
}
.profile-tabs .nav-link.active{
  background:var(--crm-primary);
}
.profile-overview-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.profile-overview-grid div{
  padding:14px;
  border:1px solid var(--crm-border);
  border-radius:16px;
  background:var(--crm-surface-soft);
}
.profile-overview-grid span{
  display:block;
  color:var(--crm-muted);
  font-size:12px;
  font-weight:800;
}
.profile-overview-grid b{
  display:block;
  margin-top:7px;
  color:var(--crm-text);
  font-size:14px;
  overflow-wrap:anywhere;
}
.profile-note-body{
  padding:18px;
  border:1px solid var(--crm-border);
  border-radius:18px;
  background:var(--crm-surface-soft);
  color:var(--crm-text-secondary);
  line-height:1.7;
}
.profile-message-list{
  display:flex;
  flex-direction:column;
  gap:10px;
}
.profile-message{
  max-width:78%;
  padding:14px;
  border-radius:18px;
  background:var(--crm-surface-soft);
  border:1px solid var(--crm-border);
}
.profile-message.out{
  margin-left:auto;
  background:linear-gradient(135deg,var(--crm-primary-soft),var(--crm-secondary-soft));
}
.profile-message p{
  margin:8px 0;
  color:var(--crm-text);
}
.profile-message small{color:var(--crm-muted)}
.profile-actions-card{
  display:flex;
  flex-direction:column;
  gap:10px;
}
.profile-actions-card h3{
  margin:0 0 6px;
  font-size:16px;
  font-weight:800;
}
.profile-actions-card form{
  margin:0;
}
.profile-mini-form{
  display:grid;
  gap:8px;
}
.profile-ai-history{
  display:grid;
  gap:10px;
  max-height:260px;
  overflow:auto;
}
.profile-ai-history div{
  padding:10px;
  border:1px solid var(--crm-border);
  border-radius:14px;
  background:var(--crm-surface-soft);
}
.profile-ai-history b,
.profile-ai-history small{
  display:block;
}
.profile-ai-history small{
  margin-top:4px;
  color:var(--crm-muted);
}

.import-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) 420px;
  gap:20px;
}
.import-upload-card,
.import-guide-card,
.import-result-card{
  padding:24px;
}
.import-drop-zone{
  min-height:300px;
  display:grid;
  place-items:center;
  align-content:center;
  gap:10px;
  padding:28px;
  border:2px dashed var(--crm-border-strong);
  border-radius:24px;
  background:linear-gradient(180deg,var(--crm-surface),var(--crm-surface-soft));
  text-align:center;
  cursor:pointer;
}
.import-drop-zone:hover{
  border-color:var(--crm-primary);
  background:var(--crm-primary-soft);
}
.import-drop-zone i{
  color:var(--crm-primary);
  font-size:46px;
}
.import-drop-zone strong{
  color:var(--crm-text);
  font-size:18px;
}
.import-drop-zone span{
  color:var(--crm-text-secondary);
}
.import-drop-zone input{
  width:min(360px,100%);
  margin-top:12px;
}
.import-guide-card h3{
  font-size:20px;
  font-weight:800;
}
.import-field-grid{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.import-field-grid span{
  padding:7px 10px;
  border-radius:999px;
  background:var(--crm-surface-soft);
  border:1px solid var(--crm-border);
  color:var(--crm-text-secondary);
  font-size:12px;
  font-weight:800;
}
.import-result-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}
.import-result-grid div{
  padding:16px;
  border:1px solid var(--crm-border);
  border-radius:18px;
  background:var(--crm-surface-soft);
}
.import-result-grid span{
  display:block;
  color:var(--crm-muted);
  font-size:12px;
  font-weight:800;
}
.import-result-grid strong{
  display:block;
  margin-top:8px;
  color:var(--crm-text);
  font-size:28px;
  font-weight:800;
}

@media(max-width:1399px){
  .contact-profile-layout{grid-template-columns:280px minmax(0,1fr)}
  .profile-actions-card{grid-column:1/-1;position:static}
  .profile-actions-card{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
  .profile-actions-card h3,.profile-actions-card hr,.profile-actions-card .profile-ai-history{grid-column:1/-1}
}
@media(max-width:1199px){
  .contact-form-grid,
  .import-layout{grid-template-columns:1fr}
  .contact-form-side{position:static}
  .profile-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:991px){
  .contacts-db-hero,
  .contact-form-hero,
  .contact-profile-header,
  .import-hero{align-items:flex-start;flex-direction:column}
  .contact-profile-layout{grid-template-columns:1fr}
  .profile-summary-card{position:static}
}
@media(max-width:767px){
  .profile-actions-card{display:flex}
  .profile-overview-grid,
  .import-result-grid{grid-template-columns:1fr}
  .profile-message{max-width:100%}
}

/* Chunk 5: Premium pipeline Kanban */
.pipeline-hero{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:28px;
  border:1px solid var(--crm-border);
  border-radius:24px;
  background:linear-gradient(135deg,var(--crm-surface),var(--crm-surface-soft));
  box-shadow:var(--crm-shadow-card);
}
.pipeline-summary-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
.pipeline-filter-card{
  padding:18px;
}
.pipeline-board-shell{
  overflow-x:auto;
  padding-bottom:10px;
  scroll-snap-type:x proximity;
}
.premium-kanban{
  align-items:stretch;
  min-height:650px;
  gap:16px;
  padding:2px 2px 14px;
}
.pipeline-col{
  width:340px;
  min-width:340px;
  max-width:340px;
  padding:14px;
  border:1px solid var(--crm-border);
  border-radius:22px;
  background:linear-gradient(180deg,var(--crm-surface),var(--crm-surface-soft));
  box-shadow:var(--crm-shadow-card);
  scroll-snap-align:start;
}
.pipeline-col .kanban-col-head{
  min-height:64px;
  padding:4px 2px 12px;
  border-bottom:1px solid var(--crm-border);
}
.stage-accent{
  width:38px;
  height:4px;
  display:block;
  margin-bottom:10px;
  border-radius:999px;
  background:var(--crm-primary);
}
.stage-tone-contacted .stage-accent{background:var(--crm-accent)}
.stage-tone-qualified .stage-accent{background:var(--crm-secondary)}
.stage-tone-proposal .stage-accent{background:var(--crm-warning)}
.stage-tone-won .stage-accent{background:var(--crm-success)}
.stage-tone-lost .stage-accent{background:var(--crm-danger)}
.pipeline-col .kanban-col-head b{
  font-size:16px;
  font-weight:800;
}
.pipeline-add-card{
  min-height:38px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  margin:12px 0;
  border:1px dashed var(--crm-border-strong);
  border-radius:14px;
  color:var(--crm-primary);
  background:var(--crm-surface);
  font-weight:800;
  text-decoration:none;
}
.pipeline-add-card:hover{
  border-color:var(--crm-primary);
  background:var(--crm-primary-soft);
}
.pipeline-col .drop-zone{
  min-height:500px;
  display:flex;
  flex-direction:column;
  gap:12px;
  padding:2px;
}
.pipeline-col .drop-zone.drop-active{
  background:rgba(37,99,235,.08);
  box-shadow:inset 0 0 0 2px rgba(37,99,235,.22);
}
.pipeline-deal-card{
  position:relative;
  padding:14px;
  border:1px solid var(--crm-border);
  border-radius:18px;
  background:var(--crm-surface);
  box-shadow:var(--crm-shadow-card);
  cursor:grab;
}
.pipeline-deal-card:active{cursor:grabbing}
.pipeline-deal-card.overdue-card{
  border-left:4px solid var(--crm-danger);
}
.pipeline-deal-card.dragging{
  opacity:.6;
  transform:rotate(.6deg) scale(.98);
}
.pipeline-deal-card.is-saving:after{
  content:"Saving...";
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  border-radius:18px;
  background:rgba(255,255,255,.78);
  color:var(--crm-primary);
  font-weight:900;
}
.deal-card-top{
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:flex-start;
}
.deal-card-top small{
  display:block;
  margin-top:5px;
  color:var(--crm-muted);
  line-height:1.35;
}
.pipeline-deal-card .deal-title{
  display:block;
  color:var(--crm-text);
  font-size:15px;
  font-weight:850;
  line-height:1.35;
  text-decoration:none;
}
.pipeline-deal-card .deal-title:hover{color:var(--crm-primary)}
.deal-contact-row{
  display:flex;
  align-items:center;
  gap:8px;
  margin-top:14px;
}
.deal-contact-row a,
.deal-contact-row span{
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border:1px solid var(--crm-border);
  border-radius:10px;
  color:var(--crm-primary);
  background:var(--crm-surface-soft);
  text-decoration:none;
}
.deal-contact-row span{color:var(--crm-muted)}
.deal-contact-row b{
  margin-left:auto;
  color:var(--crm-text);
  font-size:14px;
}
.deal-card-meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:12px;
}
.crm-badge-muted{
  background:var(--crm-surface-soft);
  color:var(--crm-text-secondary);
}
.deal-footer{
  display:flex;
  align-items:center;
  gap:10px;
  margin-top:14px;
}
.owner-chip{
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:linear-gradient(135deg,var(--crm-primary),var(--crm-secondary));
  color:#fff;
  font-size:12px;
  font-weight:900;
}
.deal-footer small{
  color:var(--crm-muted);
  line-height:1.35;
}
.deal-actions{
  display:flex;
  gap:7px;
  margin-top:14px;
}
.deal-actions .btn{
  width:32px;
  height:32px;
  min-height:32px;
  padding:0;
  border-radius:10px;
}
.pipeline-col .drop-empty{
  display:block;
  margin-top:0;
  padding:16px;
  border:1px dashed var(--crm-border-strong);
  border-radius:16px;
  background:rgba(255,255,255,.45);
  color:var(--crm-muted);
  text-align:center;
  font-weight:800;
}
.board-toast.error{
  background:var(--crm-danger);
}
body.dark-mode .pipeline-col,
body.dark-mode .pipeline-deal-card,
body.dark-mode .pipeline-add-card{
  background:var(--crm-surface);
  border-color:var(--crm-border);
}
body.dark-mode .pipeline-deal-card.is-saving:after{
  background:rgba(15,23,42,.78);
}
body.dark-mode .pipeline-col .drop-empty{
  background:rgba(255,255,255,.04);
}

@media(max-width:991px){
  .pipeline-hero{align-items:flex-start;flex-direction:column}
  .pipeline-summary-grid{grid-template-columns:1fr}
  .pipeline-col{width:310px;min-width:310px;max-width:310px}
}
@media(max-width:575px){
  .pipeline-hero{padding:22px}
  .pipeline-hero .hero-actions,
  .pipeline-hero .hero-actions .btn{width:100%}
  .pipeline-col{width:292px;min-width:292px;max-width:292px}
  .deal-actions .btn{width:34px;height:34px}
}

/* Chunk 6: WhatsApp, email, campaigns */
.messaging-hero,
.campaign-hero{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:28px;
  border:1px solid var(--crm-border);
  border-radius:24px;
  background:linear-gradient(135deg,var(--crm-surface),var(--crm-surface-soft));
  box-shadow:var(--crm-shadow-card);
}
.message-metrics,
.campaign-dashboard-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
.campaign-dashboard-grid{grid-template-columns:repeat(6,minmax(0,1fr))}
.inbox-shell{overflow:hidden}
.inbox-filter-bar{padding:18px;border-bottom:1px solid var(--crm-border)}
.conversation-list-modern{display:flex;flex-direction:column}
.conversation-row{
  display:grid;
  grid-template-columns:44px minmax(0,1fr) auto;
  gap:14px;
  padding:16px 18px;
  border-bottom:1px solid var(--crm-border);
  color:var(--crm-text);
  text-decoration:none;
}
.conversation-row:hover{background:var(--crm-surface-soft)}
.conversation-row-title{display:flex;justify-content:space-between;gap:12px}
.conversation-row-title time{color:var(--crm-muted);font-size:12px;font-weight:800}
.conversation-company{color:var(--crm-text-secondary);font-size:13px;font-weight:700}
.conversation-row p{margin:5px 0 0;color:var(--crm-muted);font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.conversation-row-meta{display:flex;flex-direction:column;align-items:flex-end;gap:6px}
.conversation-row-meta small{color:var(--crm-muted);font-weight:700}

.whatsapp-workspace{
  display:grid;
  grid-template-columns:300px minmax(0,1fr) 320px;
  gap:20px;
  align-items:stretch;
}
.wa-conversation-list,
.wa-chat-panel,
.wa-contact-panel{padding:18px}
.wa-panel-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}
.wa-panel-title h3,
.wa-contact-panel h3,
.campaign-wizard h3{font-size:18px;font-weight:800;margin:0}
.wa-mini-row{
  display:grid;
  grid-template-columns:38px minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  padding:10px;
  border-radius:14px;
  color:var(--crm-text);
  text-decoration:none;
}
.wa-mini-row:hover,.wa-mini-row.active{background:var(--crm-primary-soft)}
.wa-mini-row b,.wa-mini-row small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wa-mini-row small{color:var(--crm-muted)}
.wa-mini-row em{min-width:22px;height:22px;display:grid;place-items:center;border-radius:999px;background:var(--crm-success);color:#fff;font-style:normal;font-size:11px;font-weight:900}
.wa-chat-panel{display:flex;flex-direction:column;min-height:72vh}
.wa-chat-header{display:flex;justify-content:space-between;gap:16px;padding-bottom:14px;border-bottom:1px solid var(--crm-border)}
.wa-chat-header h3{font-size:20px;font-weight:800;margin:0}
.wa-chat-header span{color:var(--crm-text-secondary)}
.wa-chat-thread{
  flex:1;
  overflow:auto;
  display:flex;
  flex-direction:column;
  gap:10px;
  padding:18px;
  margin:0 -18px;
  background:var(--crm-surface-soft);
}
.wa-bubble{
  max-width:78%;
  padding:12px 14px;
  border:1px solid var(--crm-border);
  border-radius:18px;
  background:var(--crm-surface);
  box-shadow:var(--crm-shadow-card);
}
.wa-bubble.outgoing{align-self:flex-end;background:linear-gradient(135deg,var(--crm-primary-soft),var(--crm-secondary-soft))}
.wa-bubble.incoming{align-self:flex-start}
.wa-bubble p{margin:0;color:var(--crm-text)}
.wa-bubble small{display:block;margin-top:7px;color:var(--crm-muted)}
.wa-bubble details{margin-top:8px;color:var(--crm-text-secondary)}
.wa-bubble pre{white-space:pre-wrap;font-size:12px}
.wa-composer{padding-top:16px}
.wa-template-row{display:flex;gap:10px;align-items:center;margin-bottom:10px}
.wa-message-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px}
.wa-attach input{display:none}
.message-assign-form{display:flex;gap:10px}

.campaign-wizard{
  padding:24px;
}
.wizard-steps{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:22px;
}
.wizard-steps span{
  padding:8px 11px;
  border-radius:999px;
  background:var(--crm-surface-soft);
  color:var(--crm-text-secondary);
  font-size:12px;
  font-weight:800;
}
.wizard-steps span.active{background:var(--crm-primary);color:#fff}
.email-preview-box,
.wa-template-preview{
  min-height:260px;
  padding:18px;
  border:1px solid var(--crm-border);
  border-radius:18px;
  background:var(--crm-surface-soft);
}
.email-preview-box span{display:block;color:var(--crm-muted);font-size:12px;font-weight:800;text-transform:uppercase}
.email-preview-box strong{display:block;margin-top:8px;color:var(--crm-text);font-size:18px}
.email-preview-box p,
.wa-template-preview p{color:var(--crm-text-secondary);white-space:pre-wrap}
.wa-template-preview>div{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}
.campaign-recipient-list{
  max-height:320px;
  overflow:auto;
  display:flex;
  flex-direction:column;
  gap:8px;
  padding:10px;
  border:1px solid var(--crm-border);
  border-radius:18px;
  background:var(--crm-surface-soft);
}
.campaign-recipient-list label{
  display:flex;
  gap:10px;
  align-items:flex-start;
  padding:9px;
  border-radius:12px;
  background:var(--crm-surface);
  cursor:pointer;
}
.campaign-recipient-list span,
.campaign-recipient-list small{display:block}
.campaign-recipient-list small{color:var(--crm-muted)}
.recipient-check-all{font-weight:900!important}
.campaign-wizard-footer{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  margin-top:20px;
  padding-top:18px;
  border-top:1px solid var(--crm-border);
}
.campaign-table-card{overflow:hidden}
.table-progress{
  width:120px;
  height:8px;
  overflow:hidden;
  border-radius:999px;
  background:var(--crm-border);
}
.table-progress i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--crm-primary),var(--crm-secondary))}

@media(max-width:1399px){
  .whatsapp-workspace{grid-template-columns:260px minmax(0,1fr)}
  .wa-contact-panel{grid-column:1/-1}
  .campaign-dashboard-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:991px){
  .messaging-hero,.campaign-hero{align-items:flex-start;flex-direction:column}
  .message-metrics,.campaign-dashboard-grid{grid-template-columns:1fr}
  .whatsapp-workspace{grid-template-columns:1fr}
  .wa-conversation-list{max-height:360px;overflow:auto}
  .message-assign-form{width:100%;flex-wrap:wrap}
  .message-assign-form .form-select{flex:1}
}
@media(max-width:767px){
  .conversation-row{grid-template-columns:40px minmax(0,1fr)}
  .conversation-row-meta{grid-column:2;align-items:flex-start;flex-direction:row;flex-wrap:wrap}
  .wa-bubble{max-width:100%}
  .wa-template-row,.wa-message-row,.campaign-wizard-footer{display:flex;flex-direction:column;align-items:stretch}
}

/* Chunk 7: Operations, reports, settings, users */
.ops-hero{
  display:flex;align-items:center;justify-content:space-between;gap:20px;padding:28px;border:1px solid var(--crm-border);border-radius:24px;background:linear-gradient(135deg,var(--crm-surface),var(--crm-surface-soft));box-shadow:var(--crm-shadow-card)
}
.ops-summary-grid,.report-card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.report-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.ops-board{display:grid;grid-template-columns:repeat(4,minmax(280px,1fr));gap:16px;align-items:start}
.ops-column{padding:18px}
.ops-column-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}
.ops-column-head h3{font-size:18px;font-weight:800;margin:0}
.ops-task-list{display:flex;flex-direction:column;gap:12px}
.ops-task-card{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:12px;padding:14px;border:1px solid var(--crm-border);border-radius:18px;background:var(--crm-surface-soft)}
.ops-task-card.overdue{border-left:4px solid var(--crm-danger);background:linear-gradient(90deg,var(--crm-danger-soft),var(--crm-surface))}
.ops-task-card.today{border-left:4px solid var(--crm-warning);background:linear-gradient(90deg,var(--crm-warning-soft),var(--crm-surface))}
.ops-task-card.completed{opacity:.72}
.ops-task-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:14px;background:var(--crm-primary-soft);color:var(--crm-primary)}
.ops-task-title{display:flex;align-items:center;gap:8px;justify-content:space-between}
.ops-task-title strong{font-size:14px}
.ops-task-main p{margin:4px 0;color:var(--crm-text-secondary);font-size:13px}
.ops-task-main small{color:var(--crm-muted);font-weight:700}
.ops-note{margin-top:8px;color:var(--crm-text-secondary);font-size:13px}
.ops-task-actions{display:flex;flex-direction:column;gap:8px;align-items:flex-end}
.report-filter-card,.report-panel,.settings-panel{padding:24px}
.report-panel h3,.settings-panel h3{font-size:20px;font-weight:800;margin:0 0 16px}
.settings-tabs{gap:8px}
.settings-tabs .nav-link{border-radius:999px;color:var(--crm-text-secondary);font-weight:800;background:var(--crm-surface);border:1px solid var(--crm-border)}
.settings-tabs .nav-link.active{background:var(--crm-primary);color:#fff}
.settings-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.settings-link-card{display:flex;flex-direction:column;gap:8px;padding:22px;text-decoration:none;color:var(--crm-text)}
.settings-link-card i{font-size:28px;color:var(--crm-primary)}
.settings-link-card b{font-size:17px}
.settings-link-card span{color:var(--crm-text-secondary)}
.secret-field{display:flex;gap:8px}
.secret-field input{min-width:0}
.secret-field .btn{flex:0 0 auto}
.user-row{display:flex;align-items:center;gap:12px}
.user-row b,.user-row small{display:block}
.user-row small{color:var(--crm-muted)}
.users-table-card{overflow:hidden}
.alert{border:1px solid var(--crm-border)!important;border-radius:16px!important;box-shadow:var(--crm-shadow-card)}
.alert-success{background:var(--crm-success-soft)!important;color:#047857!important}
.alert-danger{background:var(--crm-danger-soft)!important;color:#B91C1C!important}
.alert-warning{background:var(--crm-warning-soft)!important;color:#92400E!important}
.alert-info{background:var(--crm-info-soft)!important;color:#1D4ED8!important}
.modal-content{border-radius:24px!important}
@media(max-width:1399px){.ops-board{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:991px){.ops-hero{align-items:flex-start;flex-direction:column}.ops-summary-grid,.report-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ops-board,.settings-card-grid{grid-template-columns:1fr}}
@media(max-width:575px){.ops-summary-grid,.report-card-grid{grid-template-columns:1fr}.ops-task-card{grid-template-columns:1fr}.ops-task-actions{align-items:stretch}.secret-field{flex-direction:column}}

/* Chunk 8: Auth, empty states, loading, accessibility QA */
.auth-shell-compact{max-width:1040px}
.auth-card h2{font-size:30px}
.auth-card .alert{margin-bottom:18px}
.auth-card .form-control{min-height:46px}
.auth-card .btn-primary{min-height:46px}

.crm-empty-state,
.empty-state{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:150px;
}
.crm-empty-state:before,
.empty-state:before{
  content:"\F4E1";
  font-family:"bootstrap-icons";
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border-radius:16px;
  background:linear-gradient(135deg,var(--crm-primary-soft),var(--crm-secondary-soft));
  color:var(--crm-primary);
  font-size:24px;
}
.crm-empty-state h3,
.empty-state h3{
  margin:0;
  font-size:18px;
  font-weight:800;
}
.crm-empty-state p,
.empty-state p{
  max-width:520px;
  margin:0;
  color:var(--crm-text-secondary);
  text-align:center;
}

.skeleton-card,
.skeleton-row{
  position:relative;
  overflow:hidden;
  background:var(--crm-surface-soft);
  border-radius:var(--crm-radius-lg);
}
.skeleton-card{height:120px}
.skeleton-row{height:44px}
.skeleton-card:after,
.skeleton-row:after{
  content:"";
  position:absolute;
  inset:0;
  transform:translateX(-100%);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);
  animation:crm-skeleton 1.5s infinite;
}
@keyframes crm-skeleton{to{transform:translateX(100%)}}

button.is-loading,
.btn.is-loading{
  pointer-events:none;
  opacity:.82;
}
form.is-submitting{
  cursor:progress;
}
.table-loading-row td{
  padding:18px!important;
}

.btn,
.form-control,
.form-select,
.nav-link,
.dropdown-item,
a{
  touch-action:manipulation;
}
.btn,
.action-group .btn{
  min-width:38px;
}
.action-group .btn[title]{
  position:relative;
}
input,
select,
textarea,
button{
  font:inherit;
}
@media (prefers-reduced-motion:reduce){
  *,
  *:before,
  *:after{
    animation-duration:.001ms!important;
    animation-iteration-count:1!important;
    scroll-behavior:auto!important;
    transition-duration:.001ms!important;
  }
}
@media(max-width:430px){
  .page-wrap{padding:14px}
  .card-body{padding:16px}
  .hero-actions{width:100%}
  .hero-actions .btn{flex:1 1 auto}
  .table-responsive{max-width:100%}
}
@media(max-width:390px){
  .btn{padding:9px 12px}
  .auth-card .card-body{padding:20px}
  .topbar{padding:0 10px!important}
}
@media(max-width:360px){
  body{font-size:14px}
  .crm-avatar{width:34px;height:34px}
  .topbar-actions .btn-icon{width:38px;height:38px}
}

/* Contacts/leads table layout fix */
.contacts-table-card{
  display:block;
  overflow:hidden;
}
.contacts-table-card .contact-bulkbar{
  position:relative;
  top:auto;
  z-index:1;
  min-height:0;
  margin:0;
  border-top:0;
}
.contacts-table-card .table-responsive{
  position:relative;
  overflow:auto;
}
.contacts-table-card .contacts-table thead th{
  position:static;
  top:auto;
  z-index:auto;
}

/* Dashboard alignment correction */
.dashboard-main-grid{
  align-items:stretch;
}
.dashboard-section{
  height:100%;
}
.dashboard-pipeline,
.dashboard-activity,
.dashboard-insights,
.dashboard-quick-actions{
  grid-column:1/-1;
}
.dashboard-kpi-card{
  align-items:flex-start;
}
.dashboard-kpi-card>div:last-child{
  min-width:0;
}
.dashboard-section-head .btn{
  flex:0 0 auto;
}
.pipeline-stage-card .d-flex{
  min-width:0;
}
.pipeline-stage-card small{
  max-width:120px;
  overflow-wrap:anywhere;
}
.dashboard-actions-grid a{
  min-height:118px;
}
@media(max-width:1399px){
  .dashboard-kpi-card{
    min-height:128px;
  }
}
@media(max-width:767px){
  .dashboard-section-head .btn{
    width:100%;
    justify-content:center;
  }
}

/* Workspace switcher and business management */
.workspace-switcher{
  flex:0 0 auto;
}
.workspace-switcher-btn{
  display:flex;
  align-items:center;
  gap:10px;
  min-height:48px;
  padding:7px 12px 7px 8px;
  border:1px solid var(--crm-border);
  border-radius:16px;
  background:var(--crm-surface);
  color:var(--crm-text);
  box-shadow:0 8px 20px rgba(15,23,42,.04);
}
.workspace-avatar{
  width:36px;
  height:36px;
  flex:0 0 36px;
  display:grid;
  place-items:center;
  overflow:hidden;
  border-radius:12px;
  background:linear-gradient(135deg,var(--crm-primary-soft),var(--crm-secondary-soft));
  color:var(--crm-primary);
  font-size:13px;
  font-weight:900;
}
.workspace-avatar.sm{width:32px;height:32px;flex-basis:32px;border-radius:10px;font-size:12px}
.workspace-avatar.lg{width:54px;height:54px;flex-basis:54px;border-radius:18px;font-size:18px}
.workspace-avatar img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.workspace-copy{
  min-width:0;
  text-align:left;
}
.workspace-copy small,
.workspace-copy strong{
  display:block;
  max-width:170px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.workspace-copy small{
  color:var(--crm-muted);
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
}
.workspace-copy strong{
  color:var(--crm-text);
  font-size:14px;
  line-height:1.25;
}
.workspace-menu{
  width:330px;
  padding:10px;
  border:1px solid var(--crm-border);
  border-radius:18px;
  box-shadow:var(--crm-shadow-hover);
}
.workspace-menu-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:6px 8px 10px;
  color:var(--crm-muted);
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
}
.workspace-menu-head a{
  color:var(--crm-primary);
  font-size:12px;
  font-weight:900;
  text-decoration:none;
  text-transform:none;
}
.workspace-current{
  display:flex;
  align-items:center;
  gap:12px;
  margin:0 0 10px;
  padding:12px;
  border:1px solid var(--crm-border);
  border-radius:16px;
  background:linear-gradient(135deg,rgba(37,99,235,.08),rgba(124,58,237,.08));
}
.workspace-current span:last-child{
  min-width:0;
}
.workspace-current b,
.workspace-current small{
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.workspace-current b{
  color:var(--crm-text);
  font-size:15px;
  font-weight:900;
}
.workspace-current small{
  color:var(--crm-text-secondary);
  font-size:12px;
  font-weight:800;
}
.workspace-menu-subhead{
  padding:4px 8px 8px;
  color:var(--crm-muted);
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
}
.workspace-menu-item{
  width:100%;
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:4px;
  padding:9px;
  border:0;
  border-radius:12px;
  background:transparent;
  color:var(--crm-text);
  text-align:left;
}
.workspace-menu-item:hover,
.workspace-menu-item.active{
  background:var(--crm-primary-soft);
}
.workspace-menu-item span:nth-child(2){
  min-width:0;
  flex:1;
}
.workspace-menu-item b,
.workspace-menu-item small{
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.workspace-menu-item b{font-size:14px}
.workspace-menu-item small{color:var(--crm-muted);font-size:12px;font-weight:800}
.workspace-menu-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
}
.workspace-menu-actions .btn{
  justify-content:center;
}
.sidebar-workspace{
  margin:0 14px 14px;
}
.sidebar-workspace-btn{
  width:100%;
  display:flex;
  align-items:center;
  gap:10px;
  min-height:54px;
  padding:9px;
  border:1px solid var(--crm-border);
  border-radius:16px;
  background:linear-gradient(135deg,rgba(37,99,235,.08),rgba(124,58,237,.07));
  color:var(--crm-text);
  text-align:left;
  transition:background .18s ease,border-color .18s ease,transform .18s ease;
}
.sidebar-workspace-btn:hover{
  border-color:rgba(37,99,235,.3);
  transform:translateY(-1px);
}
.sidebar-workspace-copy{
  min-width:0;
  flex:1;
}
.sidebar-workspace-copy small,
.sidebar-workspace-copy b{
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.sidebar-workspace-copy small{
  color:var(--crm-muted);
  font-size:10px;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.sidebar-workspace-copy b{
  color:var(--crm-text);
  font-size:13px;
  font-weight:900;
}
.sidebar-workspace-menu{
  margin-left:8px !important;
}
.business-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.business-card{
  padding:20px;
  display:flex;
  flex-direction:column;
}
.business-card-head{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:14px;
}
.business-card h3{
  margin:0;
  color:var(--crm-text);
  font-size:18px;
  font-weight:800;
}
.business-card p{
  margin:4px 0 0;
  color:var(--crm-text-secondary);
}
.business-meta-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin:18px 0;
}
.business-meta-grid div{
  padding:12px;
  border:1px solid var(--crm-border);
  border-radius:14px;
  background:var(--crm-surface-soft);
}
.business-meta-grid span,
.business-meta-grid b{
  display:block;
}
.business-meta-grid span{
  color:var(--crm-muted);
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
}
.business-meta-grid b{
  margin-top:5px;
  color:var(--crm-text);
  font-size:14px;
  font-weight:800;
}
.business-card-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:auto;
}
.workspace-auth-shell{
  max-width:1180px;
}
.workspace-select-card{
  display:flex;
  flex-direction:column;
  gap:14px;
  padding:22px;
  min-height:250px;
  border:1px solid var(--crm-border);
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.workspace-select-card:hover{
  transform:translateY(-2px);
  border-color:rgba(37,99,235,.28);
  box-shadow:var(--crm-shadow-hover);
}
.workspace-select-card b,
.workspace-select-card span{
  display:block;
}
.workspace-select-card b{
  color:var(--crm-text);
  font-size:19px;
  font-weight:900;
}
.workspace-select-card div > span{
  margin-top:4px;
  color:var(--crm-text-secondary);
  font-weight:650;
}
.workspace-select-card .crm-badge{
  align-self:flex-start;
}
body.dark-mode .workspace-switcher-btn,
body.dark-mode .workspace-menu,
body.dark-mode .workspace-current,
body.dark-mode .sidebar-workspace-btn,
body.dark-mode .business-card{
  background:var(--crm-surface);
  border-color:var(--crm-border);
}
body.dark-mode .workspace-current,
body.dark-mode .sidebar-workspace-btn{
  background:linear-gradient(135deg,rgba(96,165,250,.12),rgba(167,139,250,.10));
}
body.sidebar-collapsed .sidebar-workspace{
  margin:0 12px 14px;
}
body.sidebar-collapsed .sidebar-workspace-btn{
  justify-content:center;
  padding:9px;
}
body.sidebar-collapsed .sidebar-workspace-copy,
body.sidebar-collapsed .sidebar-workspace-btn > i{
  display:none;
}
@media(max-width:1199px){
  .business-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:991px){
  .workspace-copy{display:none}
  .workspace-switcher-btn{padding-right:9px}
  .sidebar-workspace-copy,
  .sidebar-workspace-btn > i{
    display:block;
  }
}
@media(max-width:767px){
  .business-grid{grid-template-columns:1fr}
  .business-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:430px){
  .workspace-menu{width:calc(100vw - 32px)}
}
.invite-summary{border:1px solid #e2e8f0;border-radius:18px;background:linear-gradient(135deg,#f8fafc,#eef6ff);padding:14px}
.invite-summary p{display:flex;justify-content:space-between;gap:14px;margin:0;padding:10px 0;border-bottom:1px solid rgba(148,163,184,.22)}
.invite-summary p:last-child{border-bottom:0}
.invite-summary b{color:#475569}
.invite-summary span{font-weight:800;text-align:right}

/* SaaS multi-business polish */
.auth-preview-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-top:30px;
  max-width:680px;
}
.auth-preview-grid div{
  border:1px solid rgba(255,255,255,.2);
  border-radius:18px;
  padding:14px;
  background:rgba(255,255,255,.1);
  backdrop-filter:blur(12px);
}
.auth-preview-grid b,
.auth-preview-grid span{display:block;color:#fff}
.auth-preview-grid b{font-size:14px;font-weight:900;margin-bottom:5px}
.auth-preview-grid span{font-size:12px;color:rgba(255,255,255,.74);line-height:1.35}
.auth-form .form-label{font-size:13px}
.auth-form .form-control{background:#f8fafc}

.workspace-page-shell{max-width:1180px}
.workspace-hero{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  padding:26px;
  border:1px solid var(--crm-border);
  border-radius:var(--crm-radius-xl);
  background:
    linear-gradient(135deg,rgba(37,99,235,.1),rgba(6,182,212,.08)),
    var(--crm-surface);
  box-shadow:var(--crm-shadow-card);
  position:relative;
  overflow:hidden;
}
.workspace-hero:after{
  content:"";
  position:absolute;
  right:-80px;
  top:-110px;
  width:240px;
  height:240px;
  border-radius:999px;
  background:rgba(37,99,235,.1);
  pointer-events:none;
}
.workspace-hero>div,
.workspace-hero>.btn,
.workspace-hero>.hero-actions,
.workspace-hero>.workspace-avatar{position:relative;z-index:1}
.workspace-hero h2{font-size:30px}
.workspace-hero p{max-width:760px}
.workspace-setup-grid{
  display:grid;
  grid-template-columns:340px minmax(0,1fr);
  gap:22px;
  align-items:start;
}
.workspace-guide-card,
.workspace-form-card{padding:24px}
.workspace-guide-card{
  position:sticky;
  top:94px;
  background:
    linear-gradient(180deg,rgba(37,99,235,.08),transparent 44%),
    var(--crm-surface);
}
.workspace-guide-card h3{margin:18px 0 8px;font-size:22px}
.workspace-guide-card p{margin-bottom:18px}
.workspace-guide-list{display:grid;gap:10px}
.workspace-guide-list span{
  display:flex;
  align-items:center;
  gap:9px;
  padding:10px 12px;
  border:1px solid var(--crm-border);
  border-radius:14px;
  background:var(--crm-surface-soft);
  color:var(--crm-text-secondary);
  font-weight:800;
}
.workspace-guide-list i{color:var(--crm-primary);font-size:17px}
.workspace-avatar.xl{
  width:72px;
  height:72px;
  flex-basis:72px;
  border-radius:24px;
  font-size:20px;
}
.settings-panel-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  padding-bottom:18px;
  margin-bottom:18px;
  border-bottom:1px solid var(--crm-border);
}
.settings-panel-head h3{margin:2px 0 0}

.workspace-select-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.workspace-select-card{
  border:0;
  width:100%;
  text-align:left;
  padding:20px;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.workspace-select-card:hover{
  transform:translateY(-3px);
  border-color:#bfdbfe;
}
.workspace-select-top{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:12px;
  margin-bottom:18px;
}
.workspace-select-copy{display:grid;gap:4px;margin-bottom:14px}
.workspace-select-copy b{font-size:20px;line-height:1.2}
.workspace-select-copy span{color:var(--crm-text-secondary);font-weight:700}
.workspace-summary-strip,
.team-metric-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.workspace-summary-strip div{
  min-height:86px;
  padding:18px;
  border:1px solid var(--crm-border);
  border-radius:var(--crm-radius-lg);
  background:var(--crm-surface);
  box-shadow:var(--crm-shadow-card);
}
.workspace-summary-strip span{
  display:block;
  color:var(--crm-muted);
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.07em;
  margin-bottom:6px;
}
.workspace-summary-strip b{
  display:block;
  font-size:24px;
  line-height:1.15;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.business-card{
  position:relative;
  overflow:hidden;
}
.business-card.active{
  border-color:#93c5fd;
  box-shadow:0 18px 42px rgba(37,99,235,.12);
}
.business-card.active:before{
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:4px;
  background:linear-gradient(90deg,var(--crm-primary),var(--crm-accent));
}
.business-status-stack{display:flex;align-items:flex-end;gap:6px;flex-direction:column}
.business-card-actions .btn,
.business-card-actions button{white-space:nowrap}

.team-hero{background:linear-gradient(135deg,rgba(16,185,129,.1),rgba(37,99,235,.08)),var(--crm-surface)}
.team-metric-grid>.col-lg-4{width:auto}
.invite-panel{background:linear-gradient(180deg,rgba(37,99,235,.06),transparent 42%),var(--crm-surface)}
.invite-role-preview{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
  margin-bottom:18px;
}
.invite-role-preview span{
  display:flex;
  align-items:center;
  gap:9px;
  padding:10px 12px;
  border:1px solid var(--crm-border);
  border-radius:14px;
  background:var(--crm-surface-soft);
  color:var(--crm-text-secondary);
  font-weight:800;
}
.invite-role-preview i{color:var(--crm-primary)}
.users-table-card .card-header{
  display:flex;
  justify-content:space-between;
  align-items:center;
  font-size:16px;
}
.settings-hero{
  background:linear-gradient(135deg,rgba(124,58,237,.09),rgba(37,99,235,.08)),var(--crm-surface);
}
.settings-tabs{
  padding:6px;
  border:1px solid var(--crm-border);
  border-radius:999px;
  background:var(--crm-surface);
  width:max-content;
  max-width:100%;
  overflow:auto;
}
.settings-tabs .nav-link{
  min-height:38px;
  display:inline-flex;
  align-items:center;
  white-space:nowrap;
}
.settings-link-card{
  position:relative;
  overflow:hidden;
}
.settings-link-card:after{
  content:"";
  position:absolute;
  right:18px;
  top:18px;
  width:38px;
  height:38px;
  border-radius:14px;
  background:var(--crm-primary-soft);
  opacity:.7;
}

.workspace-switcher-btn,
.sidebar-workspace-btn{
  box-shadow:0 10px 24px rgba(15,23,42,.08);
}
.workspace-menu{
  padding:10px;
}
.workspace-menu-item{
  border-radius:14px;
}
.workspace-current{
  background:linear-gradient(135deg,var(--crm-primary-soft),rgba(6,182,212,.08));
}

@media(max-width:1199px){
  .workspace-select-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .workspace-setup-grid{grid-template-columns:300px minmax(0,1fr)}
}
@media(max-width:991px){
  .auth-preview-grid{grid-template-columns:1fr}
  .workspace-hero{align-items:flex-start;flex-direction:column}
  .workspace-setup-grid,
  .workspace-select-grid,
  .workspace-summary-strip,
  .team-metric-grid{grid-template-columns:1fr}
  .workspace-guide-card{position:static}
  .settings-tabs{border-radius:18px;width:100%}
}
@media(max-width:575px){
  .workspace-hero,
  .workspace-guide-card,
  .workspace-form-card{padding:18px}
  .settings-panel-head{align-items:flex-start;flex-direction:column}
}

.email-template-hero{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:24px;border-radius:24px;background:linear-gradient(135deg,#111827,#1f6feb 54%,#0f766e);color:#fff;box-shadow:0 24px 70px rgba(15,23,42,.2);overflow:hidden}
.email-template-hero .text-muted{color:rgba(255,255,255,.78)!important}
.email-template-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:18px}
.email-template-create,.email-template-vars{padding:20px}
.email-template-token-grid{display:flex;flex-wrap:wrap;gap:8px}
.email-template-token-grid span{display:inline-flex;align-items:center;min-height:30px;padding:6px 10px;border:1px solid var(--crm-border);border-radius:999px;background:var(--crm-surface-soft);font-weight:800;color:var(--crm-primary)}
.email-template-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.email-template-card{padding:18px;display:flex;flex-direction:column;gap:14px;min-height:300px}
.email-template-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.email-template-card-head h3{font-size:18px;margin:10px 0 0;line-height:1.25}
.email-template-icon{width:42px;height:42px;border-radius:12px;background:#eef6ff;color:var(--crm-primary);display:grid;place-items:center;font-size:20px}
.email-template-subject{padding:10px 12px;border:1px solid var(--crm-border-soft);border-radius:10px;background:var(--crm-surface-soft);font-weight:800;color:var(--crm-text);overflow-wrap:anywhere}
.email-template-card p{color:var(--crm-muted);margin:0;line-height:1.55;flex:1}
.email-template-meta{display:flex;justify-content:space-between;gap:12px;padding-top:12px;border-top:1px solid var(--crm-border-soft)}
.email-template-meta span{color:var(--crm-muted);font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:900}
.email-template-meta b{font-size:13px}
.email-template-actions{display:flex;gap:8px;flex-wrap:wrap}
.email-template-actions form{margin:0}
@media(max-width:1200px){.email-template-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.email-template-layout{grid-template-columns:1fr}}
@media(max-width:700px){.email-template-grid{grid-template-columns:1fr}.email-template-hero{align-items:flex-start;flex-direction:column}.email-template-actions .btn,.email-template-actions form{width:100%}.email-template-actions .btn{justify-content:center}}

.email-template-gallery-hero{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:22px 0 6px;color:var(--crm-text)}
.email-template-gallery-hero h2{font-size:30px}
.email-gallery-toolbar{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:14px 16px;border:1px solid var(--crm-border);border-radius:18px;background:var(--crm-surface);box-shadow:var(--crm-shadow-card)}
.email-gallery-count{display:flex;align-items:baseline;gap:8px;color:var(--crm-muted);font-weight:800;white-space:nowrap}
.email-gallery-count b{font-size:28px;line-height:1;color:var(--crm-text)}
.email-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(260px,1fr));gap:26px;align-items:start}
.email-gallery-tile{position:relative;min-width:0;display:flex;flex-direction:column;gap:12px}
.email-preview-frame{position:relative;height:430px;background:#fff;border:1px solid var(--crm-border);box-shadow:0 12px 28px rgba(15,23,42,.10);overflow:hidden;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.email-preview-inner{height:100%;padding:18px;background:var(--tpl-bg);display:flex;align-items:stretch;justify-content:center;color:var(--tpl-text)}
.email-preview-inner>section,.email-preview-inner>article{min-width:0}
.email-preview-inner:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(15,23,42,.05))}
.email-preview-inner .email-preview-hero,.email-preview-body,.email-preview-footer{position:relative;z-index:1}
.email-preview-inner{flex-direction:column}
.email-preview-hero{min-height:132px;padding:18px;background:linear-gradient(135deg,var(--tpl-accent),rgba(15,23,42,.92));color:#fff;display:flex;flex-direction:column;justify-content:space-between}
.email-preview-brand{font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.14em;opacity:.86;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.email-preview-hero h3{margin:0;color:#fff;font-size:32px;line-height:1.02;letter-spacing:-.02em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.email-preview-body{flex:1;padding:18px;background:var(--tpl-panel);color:var(--tpl-text)}
.email-preview-kicker{font-size:10px;text-transform:uppercase;letter-spacing:.14em;font-weight:900;color:var(--tpl-accent);margin-bottom:9px}
.email-preview-body h4{margin:0 0 12px;color:var(--tpl-text);font-size:22px;line-height:1.08;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.email-preview-body p{margin:0;color:var(--tpl-muted);font-size:13px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}
.email-preview-block{height:54px;margin:15px 0 0;border-radius:12px;background:linear-gradient(135deg,rgba(255,255,255,.78),rgba(148,163,184,.20));border:1px solid rgba(148,163,184,.24)}
.email-preview-cta{display:inline-flex;margin-top:14px;padding:8px 14px;border-radius:999px;background:var(--tpl-accent);color:#fff;font-size:11px;font-weight:900}
.email-preview-footer{padding:11px 18px;background:var(--tpl-panel);border-top:1px solid rgba(148,163,184,.22);font-size:10px;color:var(--tpl-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.email-gallery-tile:hover .email-preview-frame{transform:translateY(-3px);box-shadow:0 22px 44px rgba(15,23,42,.16);border-color:rgba(37,99,235,.34)}
.email-gallery-card-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;align-items:center}
.email-gallery-card-actions form{margin:0}
.email-gallery-card-actions .btn{width:100%;box-shadow:none!important}
.email-gallery-caption{display:grid;gap:3px;min-height:44px}
.email-gallery-caption b{font-size:15px;line-height:1.25;color:var(--crm-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.email-gallery-caption span{font-size:13px;color:var(--crm-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:1200px){.email-gallery-grid{grid-template-columns:repeat(2,minmax(260px,1fr))}}
@media(max-width:700px){.email-template-gallery-hero{align-items:flex-start;flex-direction:column}.email-gallery-toolbar{align-items:flex-start;flex-direction:column}.email-gallery-grid{grid-template-columns:1fr}.email-preview-frame{height:390px}.email-gallery-card-actions{grid-template-columns:1fr}}
