/* LendSure theme — Teal/Green Analogous */

/* =========================
   TOKENS (custom + Bootstrap)
   ========================= */
:root {
  /* Brand palette */
  --brand-primary:      #02c9b5; /* teal */
  --brand-primary-rgb:  2,201,181;
  --brand-secondary:    #01c951; /* green */
  --brand-light:        #66fea3;
  --brand-dark-accent:  #00983d;
  --brand-dark-teal:    #01645a;
  --brand-error:        #c90115;

  /* Neutrals */
  --neutral-dark:       #3a4257;
  --neutral-mid:        #7f7f7f;
  --neutral-light:      #e1e1e1;
  --surface:            #ffffff;

  /* Map to Bootstrap CSS variables */
  --bs-primary:           var(--brand-primary);
  --bs-primary-rgb:       var(--brand-primary-rgb);
  --bs-success:           var(--brand-secondary);
  --bs-success-rgb:       1,201,81;
  --bs-info:              var(--brand-light);
  --bs-danger:            var(--brand-error);
  --bs-body-bg:           var(--surface);
  --bs-body-color:        var(--neutral-dark);
  --bs-border-color:      var(--neutral-light);
  --bs-heading-color:     var(--neutral-dark);
  --bs-link-color:        var(--brand-primary);
  --bs-link-hover-color:  var(--brand-dark-teal);
  --bs-focus-ring-color:  rgba(var(--brand-primary-rgb), .25);

  /* Radii */
  --bs-border-radius:     .75rem;
  --bs-border-radius-lg:  1rem;
  --bs-btn-border-radius: .6rem;

  /* Theme helpers */
  --sidebar-bg:           #f7f7f7;
  --sidebar-active:       var(--brand-dark-teal);
}

/* =========================
   GLOBAL POLISH
   ========================= */
body { background: var(--bs-body-bg); color: var(--bs-body-color); }

.card {
  border: 1px solid var(--bs-border-color);
  border-radius: var(--bs-border-radius-lg);
  box-shadow: 0 8px 24px rgba(1,100,90,.06);
}

.table > :not(caption) > * > * { background-color: transparent; }
.table thead th {
  font-weight: 600;
  color: var(--neutral-mid);
  border-bottom-color: var(--neutral-light);
  background: #f7f7f7;
}
.table-hover tbody tr:hover { background: #f8fffd; }

hr { color: var(--bs-border-color); opacity: 1; }
code, .code { color: var(--brand-dark-teal); }

/* =========================
   BUTTONS & LINKS
   ========================= */
.btn { border-width: 1px; }

/* Solid primary */
.btn-primary {
  background: var(--bs-primary) !important;
  border-color: var(--bs-primary) !important;
  color: #fff;
  box-shadow: 0 1px 2px rgba(0,0,0,.08);
}
.btn-primary:hover,
.btn-primary:focus {
  background: var(--brand-dark-teal) !important;
  border-color: var(--brand-dark-teal) !important;
  color: #fff !important;
}

/* Outline primary (ensure readable hover) */
.btn-outline-primary {
  color: var(--bs-primary);
  border-color: var(--bs-primary);
  background: transparent;
}
.btn-outline-primary:hover,
.btn-outline-primary:focus {
  background: var(--brand-dark-teal) !important;  /* darker for contrast */
  border-color: var(--brand-dark-teal) !important;
  color: #fff !important;
}
/* warning buttons */
.btn-outline-warning {
    --bs-btn-color: #eb9621;
    --bs-btn-border-color: #eb9621;
    --bs-btn-hover-color: #000;
    --bs-btn-hover-bg: #eb9621;
    --bs-btn-hover-border-color: #eb9621;
    --bs-btn-focus-shadow-rgb: 255, 193, 7;
    --bs-btn-active-color
#000
: #000;
    --bs-btn-active-bg: #eb9621;
    --bs-btn-active-border-color: #eb9621;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #eb9621;
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: #eb9621;
    --bs-gradient: none;
}

/* Success matches secondary green */
.btn-success,
.badge.text-bg-success,
.alert-success {
  background: var(--bs-primary) !important;
  border-color: var(--brand-secondary) !important;
  color: #fff;
}

/* Links */
a { color: var(--bs-primary); }
a:hover { color: var(--bs-link-hover-color); }

/* =========================
   FORMS & FOCUS
   ========================= */
.form-control:focus,
.form-select:focus,
.form-check-input:focus {
  border-color: var(--bs-primary);
  box-shadow: 0 0 0 .25rem var(--bs-focus-ring-color);
}
.form-text { color: var(--neutral-mid); }

/* =========================
   ALERTS
   ========================= */
.alert-primary {
  color: var(--brand-dark-teal);
  background: rgba(var(--brand-primary-rgb), .10);
  border-color: rgba(var(--brand-primary-rgb), .25);
}
.alert-danger {
  color: #7a000c;
  background: rgba(201,1,21,.08);
  border-color: rgba(201,1,21,.25);
}
.alert-info {
  background: #e8fffa;
  color: var(--neutral-dark);
  border-color: #c4f7ea;
}

/* =========================
   PROGRESS
   ========================= */
.progress-bar { background: var(--bs-primary); }

/* =========================
   SIDEBAR
   ========================= */
.ls-sidebar {
  background: var(--sidebar-bg);
  color: #fff;
}
.ls-sidebar .nav-link {
  color: rgba(255,255,255,.85);
  border-radius: .6rem;
}
.ls-sidebar .nav-link:hover {
  color: #000;
  
  background: #ededed;
}
.ls-sidebar .nav-link.active {
  background: var(--brand-primary) !important;
  color: #fff !important;
}
.ls-sidebar .text-muted { color: #192523 !important; }

/* Header brand dot */
.ls-brand .rounded-circle {
  background: rgba(var(--brand-primary-rgb), .12) !important;
  color: var(--bs-primary) !important;
}

/* =========================
   UTIL CHIPS / KPI
   ========================= */
.chip {
  display: inline-block; padding: .25rem .5rem; border-radius: 999px;
  background: #f4fffc; color: var(--brand-dark-teal);
  border: 1px solid #d7f7f1;
}
.kpi {
  display: inline-block; padding:.4rem .7rem; border-radius: 10px;
  background:#fff; border:1px solid var(--neutral-light);
  box-shadow: 0 4px 16px rgba(1,100,90,.05);
}
