/* LeadPulse Classic Theme — Clean rebuild */
:root {
    --lp-brand:#6366f1;--lp-brand-dark:#4f46e5;--lp-brand-light:#a5b4fc;--lp-accent:#8b5cf6;
    --lp-gradient:linear-gradient(135deg,#6366f1,#8b5cf6);
    --lp-bg:#f8fafc;--lp-surface:#fff;--lp-surface-2:#f1f5f9;
    --lp-border:#e2e8f0;--lp-border-soft:#f1f5f9;
    --lp-text:#0f172a;--lp-text-muted:#64748b;--lp-text-soft:#94a3b8;
    --lp-success:#10b981;--lp-warning:#f59e0b;--lp-danger:#ef4444;--lp-info:#3b82f6;
    --lp-sidebar-bg:#fff;--lp-sidebar-hover:#f1f5f9;--lp-sidebar-active:rgba(99,102,241,0.08);
    --lp-sidebar-text:#475569;--lp-sidebar-text-muted:#94a3b8;--lp-sidebar-text-active:#6366f1;
    --lp-sidebar-border:#e2e8f0;
    --lp-shadow-sm:0 1px 2px rgba(15,23,42,0.04);--lp-shadow-md:0 4px 6px -1px rgba(15,23,42,0.06);
    --lp-shadow-lg:0 10px 15px -3px rgba(15,23,42,0.08);
    --lp-radius:10px;--lp-radius-sm:6px;--lp-radius-lg:14px;
    --lp-font:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
}
body{font-family:var(--lp-font);background:var(--lp-bg);color:var(--lp-text);-webkit-font-smoothing:antialiased;}

/* ── Sidebar ── */
aside,.sidebar{background:var(--lp-sidebar-bg)!important;color:var(--lp-sidebar-text);border-right:1px solid var(--lp-sidebar-border);}
aside nav a,aside nav a:visited{color:var(--lp-sidebar-text)!important;text-decoration:none!important;}
aside nav a:hover{background:var(--lp-sidebar-hover)!important;color:var(--lp-text)!important;}
aside nav a.active{background:var(--lp-sidebar-active)!important;color:var(--lp-sidebar-text-active)!important;}
aside nav a.active i{color:var(--lp-sidebar-text-active);}
.nav-section-label{color:var(--lp-sidebar-text-muted)!important;}
.sidebar-footer{display:none!important;}
.sidebar-logo,.sidebar>div:first-child,aside>div:first-child{color:var(--lp-text);}

/* ── Layout ── */
.main-wrap{padding:0!important;}
.page-content{padding:5rem 2rem 2rem!important;width:100%!important;max-width:none!important;margin:0!important;}
.page-content>div{width:100%!important;max-width:none!important;}

/* ── Top bar ── */
.lp-topbar{position:fixed;top:1rem;right:1.5rem;z-index:1000;display:flex;align-items:center;gap:0.625rem;}
.lp-topbar .usage-pill,.lp-topbar .user-pill{background:#fff;border:1px solid var(--lp-border);border-radius:var(--lp-radius);padding:0.375rem 0.75rem;display:flex;align-items:center;gap:0.625rem;font-size:0.8125rem;box-shadow:var(--lp-shadow-sm);}
.lp-topbar .user-pill{cursor:pointer;font-family:inherit;border:1px solid var(--lp-border);}
.lp-topbar .user-avatar{width:30px;height:30px;border-radius:50%;background:var(--lp-gradient);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:0.8125rem;}
#topbar-menu.open{display:block!important;}

/* ── Cards ── */
.card,.stat-card,.panel{background:var(--lp-surface);border:1px solid var(--lp-border);border-radius:var(--lp-radius-lg);box-shadow:var(--lp-shadow-sm);padding:1.5rem;}
.stat-card:hover{box-shadow:var(--lp-shadow-md);transform:translateY(-2px);}
.stat-label{font-size:0.8125rem;color:var(--lp-text-muted);font-weight:500;margin-bottom:0.4rem;}
.stat-value{font-size:1.875rem;font-weight:700;color:var(--lp-text);line-height:1.1;}
.stats-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:1rem!important;width:100%!important;margin-bottom:1.5rem;}
@media(max-width:1100px){.stats-grid{grid-template-columns:repeat(2,1fr)!important;}}
@media(max-width:640px){.stats-grid{grid-template-columns:1fr!important;}}

/* ── Buttons ── */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:0.5rem;padding:0.625rem 1.125rem;border-radius:var(--lp-radius);border:none;font-family:inherit;font-size:0.875rem;font-weight:600;cursor:pointer;text-decoration:none;transition:all 0.15s;}
.btn:hover{transform:translateY(-1px);box-shadow:var(--lp-shadow-md);}
.btn-primary{background:var(--lp-brand);color:#fff!important;}
.btn-primary:hover{background:var(--lp-brand-dark);}
.btn-secondary{background:var(--lp-surface);color:var(--lp-text)!important;border:1px solid var(--lp-border);}
.btn-outline{background:transparent;color:var(--lp-brand)!important;border:1.5px solid var(--lp-brand);}
.btn-sm{padding:0.4rem 0.875rem;font-size:0.8125rem;}
.btn-danger{background:var(--lp-danger);color:#fff!important;}

/* ── Forms ── */
input[type=text],input[type=email],input[type=password],input[type=number],input[type=tel],input[type=url],input[type=search],textarea,select{width:100%;padding:0.65rem 0.875rem;border:1px solid var(--lp-border);border-radius:var(--lp-radius);font-family:inherit;font-size:0.875rem;color:var(--lp-text);background:#fff;transition:all 0.15s;}
input:focus,textarea:focus,select:focus{outline:none;border-color:var(--lp-brand);box-shadow:0 0 0 3px rgba(99,102,241,0.1);}
label{display:block;font-size:0.8125rem;font-weight:600;color:var(--lp-text);margin-bottom:0.4rem;}

/* ── Tables ── */
table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border-radius:var(--lp-radius-lg);overflow:hidden;border:1px solid var(--lp-border);}
th{background:var(--lp-surface-2);padding:0.875rem 1rem;font-size:0.75rem;font-weight:600;color:var(--lp-text-muted);text-transform:uppercase;letter-spacing:0.03em;text-align:left;border-bottom:1px solid var(--lp-border);}
td{padding:0.875rem 1rem;font-size:0.875rem;border-bottom:1px solid var(--lp-border-soft);color:var(--lp-text);}
tr:last-child td{border-bottom:none;}

/* ── Badges ── */
.badge{display:inline-flex;align-items:center;gap:0.25rem;padding:0.25rem 0.625rem;border-radius:999px;font-size:0.6875rem;font-weight:600;}
.badge-primary{background:rgba(99,102,241,0.1);color:var(--lp-brand);}
.badge-success{background:rgba(16,185,129,0.1);color:var(--lp-success);}
.badge-warning{background:rgba(245,158,11,0.1);color:var(--lp-warning);}
.badge-danger{background:rgba(239,68,68,0.1);color:var(--lp-danger);}

/* ── Empty states ── */
.empty-state{padding:4rem 2rem;text-align:center;background:#fff;border-radius:var(--lp-radius-lg);border:1px dashed var(--lp-border);}
.empty-state i{font-size:3rem;color:var(--lp-border);margin-bottom:1rem;display:block;}
.empty-state h3{font-size:1.125rem;font-weight:600;margin:0 0 0.5rem;}
.empty-state p{color:var(--lp-text-muted);margin:0 0 1.25rem;font-size:0.9375rem;}

/* ── Hide topbar from layout (we use lp-topbar) ── */
.topbar,.dashboard-topbar{display:none!important;}
