:root{
	--purple:#6b4cff;
	--dark:#0f1724;
	--muted:#6b6b6b;
	--bg:#f7f7f8;
	--card:#ffffff;
}
h1,h2,h3,h4,h5,h6{
    color:var(--purple);
    font-weight:600;
}
.topnav{ background: linear-gradient(90deg, rgba(107,96,255,0.06), rgba(255,255,255,0.02)); border-radius:8px; }
body { font-family: Inter, system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial; color:var(--dark); background:var(--bg); }
.card { border: 0; box-shadow: 0 1px 6px rgba(15,23,36,0.04); background:var(--card); }
.table thead th { border-bottom: 1px solid rgba(0,0,0,0.06); }
.text-muted { color: var(--muted) !important; }

/* Top bar */
.topbar{ background: linear-gradient(90deg, rgba(107,96,255,0.08), rgba(0,0,0,0.02)); border-radius:8px; }
.app-title{ color:var(--purple); font-weight:700; text-decoration:none; }
.nav-link{ color:var(--dark); margin-left:10px; text-decoration:none; }
.nav-link:hover{ color:var(--purple); }
.status-badges .badge{ font-weight:600; }

/* Computed points box */
#computedPoints{ min-height:38px; font-weight:700; color:var(--purple); background:#fff; }

/* Table badges */
.badge-status-Converted{ background:linear-gradient(90deg,#32d583,#1fa56a); color:#fff; }
.badge-status-pending{ background:linear-gradient(90deg,#ffd166,#f4a261); color:#111; }
.badge-status-other{ background:var(--muted); color:#fff; }

/* SweetAlert small tweak for cleaner UI */
.swal2-popup{ font-family: inherit; border-radius:10px; }

/* Dashboard and minimal tables */
.dashboard-grid{ display:grid; grid-template-columns: repeat(auto-fit,minmax(180px,1fr)); gap:12px; }
.card-mini{ background:#fff; border-radius:10px; padding:16px; box-shadow:0 6px 18px rgba(107,76,255,0.06); }
.card-mini .title{ color:var(--muted); font-size:12px; }
.card-mini .value{ color:var(--purple); font-size:20px; font-weight:700; }

.table-minimal{ width:100%; border-collapse:collapse; }
.table-minimal thead th{ background:var(--purple); color:#fff; font-weight:600; padding:10px 12px; border:0; text-align:left; }
.table-minimal tbody td{ padding:10px 12px; border-bottom:1px solid rgba(0,0,0,0.04); }
.table-minimal tbody tr:hover{ background:rgba(107,76,255,0.03); }

.topnav{ background: linear-gradient(90deg, rgba(107,96,255,0.06), rgba(255,255,255,0.02)); border-radius:8px; padding:10px 14px; }
.topnav .app-title{ font-size:18px; color:var(--purple); font-weight:700; }

/* Buttons */
.btn-gradient{ background: linear-gradient(90deg,#6b4cff,#3ea3ff); color:#fff; border:0; border-radius:999px; padding:6px 14px; box-shadow: 0 6px 18px rgba(62,163,255,0.12); }
.btn-gradient:active{ transform: translateY(1px); }
.btn-rounded{ border-radius:999px; }

/* Form inputs */
.form-control{ border-radius:10px; border:1px solid rgba(15,23,36,0.06); }
.form-control:focus{ box-shadow: 0 6px 18px rgba(107,76,255,0.06); border-color: var(--purple); }
.is-invalid{ border-color:#d9534f !important; box-shadow: none; }

/* valid state */
.is-valid{ border-color: rgba(62,163,255,0.9) !important; box-shadow: 0 6px 18px rgba(62,163,255,0.12); }

/* inline invalid feedback */
.invalid-feedback{ display:none; color:#d9534f; font-size:0.85rem; }
.form-control.is-invalid + .invalid-feedback{ display:block; }

/* SweetAlert confirm gradient support */
.swal2-popup .btn-gradient{ padding:8px 18px; border-radius:999px; }

/* Compact badges */
.badge{ border-radius:999px; padding:6px 10px; }

/* light alert-style badges */
.badge-light-success{ background: rgba(40,167,69,0.12); color: #28a745; border: 1px solid rgba(40,167,69,0.18); }
.badge-light-danger{ background: rgba(220,53,69,0.08); color: #dc3545; border: 1px solid rgba(220,53,69,0.12); }
.badge-light-warning{ background: rgba(255,193,7,0.12); color: #ffc107; border: 1px solid rgba(255,193,7,0.14); }
.badge-light-info{ background: rgba(23,162,184,0.08); color: #17a2b8; border: 1px solid rgba(23,162,184,0.12); }
/* blue for Potential leads */
.badge-light-blue{ background: rgba(59,130,246,0.08); color: #2563eb; border: 1px solid rgba(59,130,246,0.12); }


