:root{
  --navy:#0f2540;
  --navy-dark:#0a1a2e;
  --sidebar-bg:#101d33;
  --sidebar-hover:#1a2c4a;
  --blue:#1d6feb;
  --green:#22c55e;
  --red:#ef4444;
  --orange:#f0883e;
  --bg-soft:#f4f7fb;
  --radius:12px;
}
*{box-sizing:border-box}
body{font-family:'Poppins',sans-serif;background:var(--bg-soft);color:#1e2a3a}
a{text-decoration:none}
h1,h2,h3,h4,h5,h6{font-weight:700}

/* Layout */
.admin-wrapper{display:flex;min-height:100vh}
.admin-sidebar{
  width:260px;background:var(--sidebar-bg);color:#c7d2e3;flex-shrink:0;
  position:fixed;top:0;left:0;bottom:0;overflow-y:auto;z-index:1030;transition:.25s;
}
.admin-sidebar .brand{padding:1.3rem 1.4rem;border-bottom:1px solid rgba(255,255,255,.08);display:flex;align-items:center;gap:.6rem}
.admin-sidebar .brand img{max-height:36px}
.admin-sidebar .brand span{color:#fff;font-weight:700;font-size:1.1rem}
.admin-nav{padding:1rem .8rem}
.admin-nav .nav-link{
  color:#c7d2e3;padding:.7rem 1rem;border-radius:8px;margin-bottom:.2rem;
  display:flex;align-items:center;gap:.7rem;font-weight:500;font-size:.93rem;
}
.admin-nav .nav-link i{width:20px;text-align:center}
.admin-nav .nav-link:hover{background:var(--sidebar-hover);color:#fff}
.admin-nav .nav-link.active{background:var(--blue);color:#fff}
.admin-content{margin-left:260px;flex:1;padding:1.6rem;width:calc(100% - 260px)}

.admin-topbar{
  background:#fff;border-radius:var(--radius);padding:.9rem 1.3rem;margin-bottom:1.4rem;
  display:flex;align-items:center;justify-content:between;box-shadow:0 2px 12px rgba(15,37,64,.05);
}
.sidebar-toggle-btn{display:none;background:none;border:none;font-size:1.3rem;color:var(--navy)}

/* Cards */
.stat-card{background:#fff;border-radius:var(--radius);padding:1.4rem;box-shadow:0 2px 14px rgba(15,37,64,.06);height:100%}
.stat-card .stat-icon{width:52px;height:52px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.4rem;color:#fff;margin-bottom:.8rem}
.stat-card .stat-value{font-size:1.6rem;font-weight:800}
.stat-card .stat-label{color:#6b7a90;font-size:.85rem}

.card{border:none;border-radius:var(--radius);box-shadow:0 2px 14px rgba(15,37,64,.06)}
.card-header{background:#fff;border-bottom:1px solid #eef1f6;font-weight:600;border-radius:var(--radius) var(--radius) 0 0!important}

/* Tables */
.table{margin-bottom:0}
.table thead th{background:#f8fafc;border-bottom:2px solid #eef1f6;font-size:.78rem;text-transform:uppercase;letter-spacing:.03em;color:#6b7a90;font-weight:600}
.table td{vertical-align:middle;font-size:.9rem}
.table-responsive{border-radius:var(--radius)}
.table-hover tbody tr:hover{background:#f8fafc}

/* Badges */
.badge{font-weight:600;font-size:.72rem;padding:.4em .7em;border-radius:6px}

/* Buttons */
.btn{border-radius:8px;font-weight:600;font-size:.88rem}
.btn-primary{background:var(--blue);border-color:var(--blue)}
.btn-primary:hover{background:#1557bf;border-color:#1557bf}
.btn-success{background:var(--green);border-color:var(--green)}
.btn-danger{background:var(--red);border-color:var(--red)}
.btn-whatsapp{background:#25d366;color:#fff;border:none}
.btn-whatsapp:hover{background:#1eb857;color:#fff}
.btn-sm{padding:.32rem .7rem;font-size:.8rem}
.btn-icon{width:34px;height:34px;padding:0;display:inline-flex;align-items:center;justify-content:center}

/* Forms */
.form-control,.form-select{border-radius:8px;border-color:#dde5ef;padding:.55rem .8rem;font-size:.9rem}
.form-control:focus,.form-select:focus{border-color:var(--blue);box-shadow:0 0 0 .15rem rgba(29,111,235,.15)}
.form-label{font-weight:600;font-size:.85rem;color:#334155}

/* Login page */
.login-wrapper{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--navy-dark),var(--navy))}
.login-card{background:#fff;border-radius:16px;padding:2.5rem;max-width:420px;width:100%;box-shadow:0 20px 60px rgba(0,0,0,.3)}

/* Timeline */
.timeline{position:relative;padding-left:2rem}
.timeline::before{content:'';position:absolute;left:8px;top:6px;bottom:6px;width:2px;background:#e2e8f0}
.timeline-item{position:relative;padding-bottom:1.6rem}
.timeline-item::before{content:'';position:absolute;left:-2rem;top:4px;width:14px;height:14px;border-radius:50%;background:var(--blue);border:3px solid #fff;box-shadow:0 0 0 2px var(--blue)}
.timeline-item .timeline-date{font-size:.78rem;color:#6b7a90;font-weight:600}
.timeline-item .timeline-title{font-weight:700}

/* Pipeline badges */
.status-pill{padding:.45rem .9rem;border-radius:50px;font-weight:600;font-size:.8rem;display:inline-block}

@media (max-width: 991px){
  .admin-sidebar{left:-260px}
  .admin-sidebar.show{left:0}
  .admin-content{margin-left:0;width:100%}
  .sidebar-toggle-btn{display:inline-block}
}
