/* ==========================================================
   CROWN-F PORTAL — Design Enhancement Layer
   Layered over main.css — retains all UI/UX, refines aesthetics
   ========================================================== */

@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800&family=Mulish:ital,wght@0,400;0,500;0,600;0,700;1,400&display=swap');

/* ----------------------------------------------------------
   CSS DESIGN TOKENS
   ---------------------------------------------------------- */
:root {
  --brand:        #2AB575;
  --brand-hover:  #1E9E63;
  --brand-light:  rgba(42, 181, 117, 0.10);
  --brand-mid:    rgba(42, 181, 117, 0.20);

  --surface:      #FFFFFF;
  --surface-2:    #F5F7FA;
  --surface-3:    #EDEEF4;

  --text-1:       #181C2E;
  --text-2:       #4B5168;
  --text-3:       #8F97B2;

  --border:       #E6E8F0;
  --border-focus: #2AB575;

  --sh-xs: 0 1px 3px rgba(24,28,46,0.06);
  --sh-sm: 0 2px 8px rgba(24,28,46,0.07), 0 1px 2px rgba(24,28,46,0.04);
  --sh-md: 0 6px 20px rgba(24,28,46,0.09), 0 2px 6px rgba(24,28,46,0.05);
  --sh-lg: 0 16px 40px rgba(24,28,46,0.11), 0 4px 12px rgba(24,28,46,0.06);

  --rad:    12px;
  --rad-sm: 8px;
  --rad-xs: 6px;
  --ease:   cubic-bezier(0.4, 0, 0.2, 1);
  --dur:    0.22s;
}

/* ----------------------------------------------------------
   TYPOGRAPHY UPGRADE
   ---------------------------------------------------------- */
body {
  font-family: 'Mulish', sans-serif !important;
  font-size: 13.5px !important;
  color: var(--text-2) !important;
  background-color: var(--surface-2) !important;
  -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4, h5, h6 {
  font-family: 'Outfit', sans-serif !important;
  color: var(--text-1) !important;
  letter-spacing: -0.01em;
}

h1 { font-size: 32px !important; font-weight: 700 !important; }
h2 { font-size: 26px !important; font-weight: 700 !important; }
h3 { font-size: 20px !important; font-weight: 600 !important; }
h4 { font-size: 16px !important; font-weight: 600 !important; }
h5 { font-size: 14px !important; font-weight: 600 !important; }
h6 { font-size: 13px !important; font-weight: 600 !important; }

.content-title {
  font-size: 22px !important;
  font-weight: 700 !important;
  letter-spacing: -0.02em !important;
}

/* ----------------------------------------------------------
   SIDEBAR / ASIDE
   ---------------------------------------------------------- */
.navbar-aside {
  background: var(--text-1) !important;
  border-right: none !important;
  box-shadow: var(--sh-lg) !important;
}

.navbar-aside .aside-top {
  border-bottom: 1px solid rgba(255,255,255,0.07) !important;
  padding: 16px !important;
}

.navbar-aside .brand-wrap {
  font-family: 'Outfit', sans-serif !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  color: #fff !important;
  letter-spacing: -0.03em;
}

.navbar-aside nav hr {
  border-color: rgba(255,255,255,0.08) !important;
  margin: 8px 16px !important;
}

/* Menu items */
.menu-aside .menu-link {
  color: rgba(255,255,255,0.62) !important;
  border-radius: var(--rad-sm) !important;
  font-family: 'Outfit', sans-serif !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  padding: 10px 12px !important;
  transition: background var(--dur) var(--ease), color var(--dur) var(--ease) !important;
}

.menu-aside .menu-link:hover {
  background: rgba(255,255,255,0.07) !important;
  color: #fff !important;
}

.menu-aside .menu-item.active > .menu-link {
  background: var(--brand-light) !important;
  color: #fff !important;
  border-left: 3px solid var(--brand);
}

.menu-aside .menu-item .icon {
  color: rgba(255,255,255,0.4) !important;
}

.menu-aside .menu-item.active .icon {
  color: var(--brand) !important;
}

/* Submenu */
.menu-aside .submenu a {
  color: rgba(255,255,255,0.5) !important;
  font-size: 12.5px !important;
  transition: color var(--dur) var(--ease) !important;
}

.menu-aside .submenu a:hover,
.menu-aside .menu-item.active .submenu a.active {
  color: var(--brand) !important;
}

.menu-aside .submenu a::before {
  background-color: rgba(255,255,255,0.3) !important;
}

/* ----------------------------------------------------------
   TOP NAVBAR
   ---------------------------------------------------------- */
.main-header.navbar {
  background: rgba(255,255,255,0.92) !important;
  backdrop-filter: blur(12px) saturate(160%) !important;
  -webkit-backdrop-filter: blur(12px) saturate(160%) !important;
  border-bottom: 1px solid var(--border) !important;
  box-shadow: var(--sh-xs) !important;
}

.main-header.style-2 {
  background: rgba(255,255,255,0.95) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  border-bottom: 1px solid var(--border) !important;
}

/* ----------------------------------------------------------
   CARDS
   ---------------------------------------------------------- */
.card {
  background: var(--surface) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--rad) !important;
  box-shadow: var(--sh-sm) !important;
  transition: box-shadow var(--dur) var(--ease), transform var(--dur) var(--ease) !important;
  overflow: visible !important;
}

.card:hover {
  box-shadow: var(--sh-md) !important;
  transform: translateY(-1px) !important;
}

.card-header {
  background: transparent !important;
  border-bottom: 1px solid var(--border) !important;
  padding: 16px 20px !important;
  font-family: 'Outfit', sans-serif !important;
}

.card-header h4 {
  margin: 0 !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  color: var(--text-1) !important;
}

.card-body {
  padding: 20px !important;
}

/* ----------------------------------------------------------
   CONTENT HEADER (PAGE TITLE BAR)
   ---------------------------------------------------------- */
.content-header {
  padding-bottom: 20px !important;
  margin-bottom: 4px !important;
}

.content-header h2 {
  font-size: 20px !important;
  letter-spacing: -0.02em !important;
}

/* ----------------------------------------------------------
   FORM CONTROLS
   ---------------------------------------------------------- */
.form-control,
.form-select {
  background-color: var(--surface) !important;
  border: 1.5px solid var(--border) !important;
  border-radius: var(--rad-xs) !important;
  color: var(--text-1) !important;
  font-size: 13px !important;
  height: 40px !important;
  padding: 0 14px !important;
  transition: border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease) !important;
  -webkit-appearance: auto !important;
  appearance: auto !important;
}

select.form-select,
select.form-control {
  background-color: #ffffff !important;
  color: #181C2E !important;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e") !important;
  background-repeat: no-repeat !important;
  background-position: right 12px center !important;
  background-size: 12px !important;
  padding-right: 36px !important;
  -webkit-appearance: none !important;
  appearance: none !important;
}

select.form-select option,
select.form-control option {
  background-color: #ffffff !important;
  color: #181C2E !important;
}

.form-control:focus,
.form-select:focus {
  background-color: var(--surface) !important;
  border-color: var(--brand) !important;
  box-shadow: 0 0 0 3px var(--brand-light) !important;
}

.form-control:disabled,
.form-control[readonly],
.form-select:disabled {
  background-color: var(--surface-2) !important;
  color: var(--text-3) !important;
  border-color: var(--border) !important;
}

.form-label {
  font-size: 12px !important;
  font-weight: 600 !important;
  color: var(--text-2) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
  margin-bottom: 5px !important;
}

textarea.form-control {
  height: auto !important;
  padding: 10px 14px !important;
}

/* ----------------------------------------------------------
   BUTTONS
   ---------------------------------------------------------- */
.btn {
  font-family: 'Outfit', sans-serif !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  letter-spacing: 0.01em !important;
  border-radius: var(--rad-xs) !important;
  transition: background var(--dur) var(--ease),
              box-shadow var(--dur) var(--ease),
              transform 0.12s var(--ease) !important;
}

.btn:active {
  transform: scale(0.97) !important;
}

.btn.btn-primary {
  background: var(--brand) !important;
  border: none !important;
  box-shadow: 0 2px 8px rgba(42,181,117,0.28) !important;
}

.btn.btn-primary:hover {
  background: var(--brand-hover) !important;
  box-shadow: 0 4px 14px rgba(42,181,117,0.38) !important;
}

.btn.btn-secondary {
  background: var(--surface-3) !important;
  color: var(--text-2) !important;
  border: 1px solid var(--border) !important;
  box-shadow: var(--sh-xs) !important;
}

.btn.btn-secondary:hover {
  background: var(--border) !important;
  color: var(--text-1) !important;
}

.btn-brand {
  background: var(--brand) !important;
  box-shadow: 0 2px 8px rgba(42,181,117,0.28) !important;
}

.btn-brand:hover {
  background: var(--brand-hover) !important;
  box-shadow: 0 4px 14px rgba(42,181,117,0.38) !important;
}

/* ----------------------------------------------------------
   TABLES
   ---------------------------------------------------------- */
table {
  font-size: 13px !important;
  color: var(--text-2) !important;
}

table thead {
  background: var(--surface-2) !important;
}

table thead th {
  font-family: 'Outfit', sans-serif !important;
  font-weight: 600 !important;
  font-size: 11.5px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  color: var(--text-3) !important;
  border-bottom: 2px solid var(--border) !important;
  padding: 10px 12px !important;
}

.table > :not(caption) > * > * {
  border-color: var(--border) !important;
  padding: 10px 12px !important;
}

.table > tbody > tr:hover > * {
  background-color: var(--brand-light) !important;
  transition: background-color var(--dur) var(--ease);
}

/* ----------------------------------------------------------
   TABS
   ---------------------------------------------------------- */
.nav-tabs {
  border-bottom: 2px solid var(--border) !important;
}

.nav-tabs .nav-link {
  font-family: 'Outfit', sans-serif !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  color: var(--text-3) !important;
  border: none !important;
  border-bottom: 2px solid transparent !important;
  margin-bottom: -2px !important;
  padding: 10px 16px !important;
  transition: color var(--dur) var(--ease) !important;
}

.nav-tabs .nav-link:hover {
  color: var(--text-1) !important;
  border-bottom-color: var(--border) !important;
}

.nav-tabs .nav-link.active {
  color: var(--brand) !important;
  border-bottom: 2px solid var(--brand) !important;
  background: transparent !important;
}

/* ----------------------------------------------------------
   BADGES & TAGS
   ---------------------------------------------------------- */
.badge {
  font-family: 'Outfit', sans-serif !important;
  font-weight: 600 !important;
  font-size: 11px !important;
  letter-spacing: 0.03em !important;
  padding: 4px 9px !important;
  border-radius: 20px !important;
}

.badge-soft-primary,
.badge.bg-primary {
  background: var(--brand-light) !important;
  color: var(--brand) !important;
}

/* ----------------------------------------------------------
   DROPDOWNS
   ---------------------------------------------------------- */
.dropdown-menu {
  border: 1px solid var(--border) !important;
  border-radius: var(--rad-sm) !important;
  box-shadow: var(--sh-md) !important;
  padding: 6px !important;
  animation: dropIn 0.16s var(--ease) !important;
}

@keyframes dropIn {
  from { opacity: 0; transform: translateY(-6px); }
  to   { opacity: 1; transform: translateY(0); }
}

.dropdown-menu .dropdown-item {
  border-radius: var(--rad-xs) !important;
  font-size: 13px !important;
  padding: 8px 12px !important;
  transition: background var(--dur) var(--ease) !important;
}

.dropdown-menu .dropdown-item:hover {
  background: var(--brand-light) !important;
  color: var(--brand) !important;
}

.dropdown-menu .dropdown-item.text-danger:hover {
  background: rgba(244, 63, 63, 0.08) !important;
  color: #E03C3C !important;
}

/* ----------------------------------------------------------
   PAGINATION
   ---------------------------------------------------------- */
.pagination-area .page-item.active .page-link,
.pagination-area .page-item:hover .page-link {
  background: var(--brand) !important;
  box-shadow: 0 2px 8px rgba(42,181,117,0.28) !important;
}

/* ----------------------------------------------------------
   LINKS
   ---------------------------------------------------------- */
a { color: var(--brand) !important; }
a:hover { color: var(--brand-hover) !important; }

/* ----------------------------------------------------------
   PAGE CONTENT AREA
   ---------------------------------------------------------- */
.content-main {
  background: var(--surface-2) !important;
  min-height: calc(100vh - 70px);
}

.content-main > div {
  padding: 24px !important;
}

/* ----------------------------------------------------------
   FOOTER
   ---------------------------------------------------------- */
.main-footer {
  background: var(--surface) !important;
  border-top: 1px solid var(--border) !important;
  color: var(--text-3) !important;
  font-size: 12px !important;
}

/* ----------------------------------------------------------
   PROGRESS BAR
   ---------------------------------------------------------- */
.progress-bar {
  background: linear-gradient(90deg, var(--brand), var(--brand-hover)) !important;
  border-radius: 100px !important;
}

.progress {
  background: var(--surface-3) !important;
  border-radius: 100px !important;
  height: 6px !important;
}

/* ----------------------------------------------------------
   HR
   ---------------------------------------------------------- */
hr {
  border-color: var(--border) !important;
  opacity: 1 !important;
}

/* ----------------------------------------------------------
   SCROLLBAR (webkit)
   ---------------------------------------------------------- */
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: var(--border); border-radius: 100px; }
::-webkit-scrollbar-thumb:hover { background: var(--text-3); }

/* ----------------------------------------------------------
   PAGE LOAD ANIMATION
   ---------------------------------------------------------- */
.card {
  animation: fadeUp 0.32s var(--ease) both;
}

.card:nth-child(1) { animation-delay: 0.03s; }
.card:nth-child(2) { animation-delay: 0.07s; }
.card:nth-child(3) { animation-delay: 0.11s; }
.card:nth-child(4) { animation-delay: 0.15s; }

@keyframes fadeUp {
  from { opacity: 0; transform: translateY(10px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* Content header fade in */
.content-header {
  animation: fadeUp 0.28s var(--ease) both;
}

/* ----------------------------------------------------------
   TOASTR OVERRIDE — sharper
   ---------------------------------------------------------- */
.toast-success  { border-radius: var(--rad-sm) !important; }
.toast-error    { border-radius: var(--rad-sm) !important; }
.toast-warning  { border-radius: var(--rad-sm) !important; }
.toast-info     { border-radius: var(--rad-sm) !important; }

/* ----------------------------------------------------------
   LOGIN / SIGNUP PAGE CARD
   ---------------------------------------------------------- */
.card-login {
  border-radius: var(--rad) !important;
  box-shadow: var(--sh-lg) !important;
  border: none !important;
  max-width: 400px !important;
}

.main-header.style-2 .brand-wrap {
  font-family: 'Outfit', sans-serif !important;
  font-weight: 800 !important;
  font-size: 20px !important;
  color: var(--text-1) !important;
  letter-spacing: -0.03em !important;
}

/* ----------------------------------------------------------
   GRIDVIEW (ASP.NET) — force table styles
   ---------------------------------------------------------- */
[id*="gv_"] {
  border-collapse: collapse !important;
  width: 100% !important;
}

[id*="gv_"] th {
  font-family: 'Outfit', sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  color: var(--text-3) !important;
  background: var(--surface-2) !important;
  padding: 10px 12px !important;
  border-bottom: 2px solid var(--border) !important;
}

[id*="gv_"] td {
  padding: 9px 12px !important;
  border-bottom: 1px solid var(--border) !important;
  font-size: 13px !important;
  color: var(--text-2) !important;
  transition: background var(--dur) var(--ease);
}

[id*="gv_"] tr:hover td {
  background: var(--brand-light) !important;
}

/* ----------------------------------------------------------
   ACTIVE STATES — nav links
   ---------------------------------------------------------- */
.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
  background: var(--brand-mid) !important;
  color: var(--brand) !important;
  font-weight: 600 !important;
}

/* ----------------------------------------------------------
   SUMMARY / AMOUNT LABELS (upgrade page)
   ---------------------------------------------------------- */
label.form-label + asp\:Label,
.text-danger {
  font-family: 'Outfit', sans-serif !important;
}

/* ==========================================================
   PAGE-SPECIFIC REDESIGNS
   ========================================================== */

/* ----------------------------------------------------------
   [LOGIN PAGE] — Premium dark canvas, gold-accent card
   ---------------------------------------------------------- */
body:has(.main-header.style-2) {
  background:
    radial-gradient(ellipse at 20% 50%, rgba(42,181,117,0.06) 0%, transparent 60%),
    radial-gradient(ellipse at 80% 20%, rgba(212,175,55,0.08) 0%, transparent 55%),
    #0f1117 !important;
  min-height: 100vh;
}

body:has(.main-header.style-2) .main-header.style-2 {
  background: transparent !important;
  border-bottom: none !important;
  box-shadow: none !important;
}

body:has(.main-header.style-2) .main-footer {
  background: transparent !important;
  border-top: none !important;
  color: rgba(255,255,255,0.3) !important;
}

body:has(.main-header.style-2) .content-main {
  background: transparent !important;
}

.card-login {
  background: rgba(255,255,255,0.97) !important;
  border: none !important;
  border-radius: 20px !important;
  box-shadow:
    0 0 0 1px rgba(255,255,255,0.08),
    0 24px 60px rgba(0,0,0,0.45),
    0 8px 20px rgba(0,0,0,0.3) !important;
  max-width: 420px !important;
  overflow: hidden !important;
  position: relative;
}

.card-login::before {
  content: '';
  display: block;
  height: 4px;
  background: linear-gradient(90deg, #D4AF37 0%, #2AB575 50%, #D4AF37 100%);
  position: absolute;
  top: 0; left: 0; right: 0;
}

.card-login .card-body {
  padding: 36px 32px 32px !important;
}

.card-login h4.card-title {
  font-family: 'Outfit', sans-serif !important;
  font-size: 28px !important;
  font-weight: 800 !important;
  color: #0f1117 !important;
  letter-spacing: -0.04em !important;
  margin-bottom: 24px !important;
}

.card-login .form-control {
  background: #f8f9fb !important;
  border: 1.5px solid #e8eaf0 !important;
  border-radius: 10px !important;
  height: 48px !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  text-align: left !important;
  padding: 0 18px !important;
  color: #181c2e !important;
}

.card-login .form-control:focus {
  border-color: #2AB575 !important;
  background: #fff !important;
  box-shadow: 0 0 0 3px rgba(42,181,117,0.12) !important;
}

.card-login .btn.btn-primary {
  width: 100% !important;
  height: 48px !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  letter-spacing: 0.02em !important;
  background: linear-gradient(135deg, #2AB575 0%, #1E9E63 100%) !important;
  border-radius: 10px !important;
  box-shadow: 0 4px 16px rgba(42,181,117,0.35) !important;
  justify-content: center !important;
}

.card-login .btn.btn-primary:hover {
  background: linear-gradient(135deg, #1E9E63 0%, #18835A 100%) !important;
  box-shadow: 0 6px 20px rgba(42,181,117,0.45) !important;
}

.card-login hr {
  border-color: #f0f0f0 !important;
  margin: 20px 0 !important;
}

/* ----------------------------------------------------------
   [HOME PAGE] — Rich stat cards, editorial chart section
   ---------------------------------------------------------- */

/* Stat card icon circles — each gets a unique gradient */
.col-lg-3:nth-child(1) .icontext .icon {
  background: linear-gradient(135deg, rgba(42,181,117,0.18), rgba(42,181,117,0.08)) !important;
  border: 1px solid rgba(42,181,117,0.2) !important;
}

.col-lg-3:nth-child(2) .icontext .icon {
  background: linear-gradient(135deg, rgba(80,165,241,0.18), rgba(80,165,241,0.06)) !important;
  border: 1px solid rgba(80,165,241,0.2) !important;
}

.col-lg-3:nth-child(3) .icontext .icon {
  background: linear-gradient(135deg, rgba(241,180,76,0.18), rgba(241,180,76,0.06)) !important;
  border: 1px solid rgba(241,180,76,0.2) !important;
}

.col-lg-3:nth-child(4) .icontext .icon {
  background: linear-gradient(135deg, rgba(212,175,55,0.18), rgba(212,175,55,0.06)) !important;
  border: 1px solid rgba(212,175,55,0.2) !important;
}

/* Stat numbers */
.icontext .text span:first-of-type {
  font-family: 'Outfit', sans-serif !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  color: var(--text-1) !important;
  letter-spacing: -0.02em !important;
  line-height: 1.2 !important;
}

.icontext h6.card-title {
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.07em !important;
  color: var(--text-3) !important;
}

.icontext .text-sm {
  font-size: 11.5px !important;
  color: var(--text-3) !important;
  letter-spacing: 0.01em !important;
}

/* Chart card — editorial header */
.card article.card-body h5.card-title {
  font-family: 'Outfit', sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.06em !important;
  color: var(--text-3) !important;
  margin-bottom: 16px !important;
}

/* Content-header enhanced */
.content-header h2.content-title {
  position: relative !important;
  display: inline-block !important;
}

.content-header h2.content-title::after {
  content: '';
  display: block;
  width: 36px;
  height: 3px;
  background: linear-gradient(90deg, var(--brand), #D4AF37);
  border-radius: 2px;
  margin-top: 6px;
}

.content-header p {
  font-size: 13px !important;
  color: var(--text-3) !important;
  margin-top: 4px !important;
}

/* ----------------------------------------------------------
   [KYC APPROVAL PAGE] — Status-aware table, action buttons
   ---------------------------------------------------------- */

/* Status filter dropdown */
.card-header asp\.DropDownList,
.card-header select {
  max-width: 220px !important;
  font-weight: 600 !important;
  font-family: 'Outfit', sans-serif !important;
}

/* KYC table approve / reject button sizing */
.btn.btn-sm.btn-success {
  background: linear-gradient(135deg, #2AB575, #1E9E63) !important;
  border: none !important;
  color: #fff !important;
  border-radius: var(--rad-xs) !important;
  font-size: 11.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.03em !important;
  padding: 5px 12px !important;
  box-shadow: 0 2px 6px rgba(42,181,117,0.3) !important;
  display: inline-flex !important;
  align-items: center !important;
}

.btn.btn-sm.btn-danger {
  background: linear-gradient(135deg, #f46a6a, #e03c3c) !important;
  border: none !important;
  color: #fff !important;
  border-radius: var(--rad-xs) !important;
  font-size: 11.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.03em !important;
  padding: 5px 12px !important;
  box-shadow: 0 2px 6px rgba(244,106,106,0.3) !important;
  display: inline-flex !important;
  align-items: center !important;
}

.btn.btn-sm.btn-success:hover {
  box-shadow: 0 4px 12px rgba(42,181,117,0.45) !important;
  transform: translateY(-1px) !important;
}

.btn.btn-sm.btn-danger:hover {
  box-shadow: 0 4px 12px rgba(244,106,106,0.45) !important;
  transform: translateY(-1px) !important;
}

/* KYC table striping with brand tints */
.table-striped > tbody > tr:nth-of-type(odd) > * {
  background-color: rgba(42,181,117,0.03) !important;
}

/* ----------------------------------------------------------
   [POS UPGRADE & MEMBERSHIP] — Ref# badge, amounts, sections
   ---------------------------------------------------------- */

/* Ref # — styled as a badge chip */
.card-header .text-danger {
  font-family: 'Outfit', sans-serif !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  background: rgba(244,106,106,0.1) !important;
  color: #d63031 !important;
  padding: 3px 10px !important;
  border-radius: 20px !important;
  letter-spacing: 0.05em !important;
}

/* Amount display labels in payment section */
.table td span,
.table td label {
  font-family: 'Outfit', sans-serif !important;
  font-weight: 600 !important;
}

/* Payment section tab — bolder active */
.nav-tabs .nav-link.active {
  font-weight: 700 !important;
  font-size: 13px !important;
}

/* Section headings on form pages */
.content-main section.content-main .content-header h2,
.content-main .content-header h2 {
  font-size: 22px !important;
  font-weight: 800 !important;
  letter-spacing: -0.025em !important;
}

/* Package dropdowns — highlight when populated */
select.form-select:not([value="0"]):not(:disabled) {
  border-color: var(--brand) !important;
  background-color: rgba(42,181,117,0.04) !important;
}

/* ----------------------------------------------------------
   [ALL PAGES] — Result / message label styling
   ---------------------------------------------------------- */
span[id$="lblResult"],
span[id$="lblMessage"] {
  display: inline-block !important;
  padding: 8px 14px !important;
  border-radius: var(--rad-xs) !important;
  font-size: 12.5px !important;
  font-weight: 600 !important;
  letter-spacing: 0.01em !important;
}

/* Print OR button */
.btn.btn-primary.print {
  background: linear-gradient(135deg, #4B5168, #2d3142) !important;
  box-shadow: none !important;
  padding: 8px 18px !important;
  font-size: 12.5px !important;
  letter-spacing: 0.04em !important;
}

.btn.btn-primary.print:hover {
  background: linear-gradient(135deg, #2d3142, #1a1d2e) !important;
}

/* ----------------------------------------------------------
   [CARD HEADER] — Accent rule on hover
   ---------------------------------------------------------- */
.card .card-header {
  position: relative !important;
  transition: background var(--dur) var(--ease) !important;
}

.card:hover .card-header {
  background: rgba(42,181,117,0.02) !important;
}

/* ----------------------------------------------------------
   [ICON] — Sidebar minimize button
   ---------------------------------------------------------- */
.btn-aside-minimize .material-icons {
  color: rgba(255,255,255,0.4) !important;
  transition: color var(--dur) var(--ease) !important;
}

.btn-aside-minimize:hover .material-icons {
  color: var(--brand) !important;
}

/* ----------------------------------------------------------
   [AVATAR] — Top nav user avatar ring
   ---------------------------------------------------------- */
.main-header .img-xs.rounded-circle {
  border: 2px solid var(--border) !important;
  transition: border-color var(--dur) var(--ease) !important;
}

.main-header .img-xs.rounded-circle:hover {
  border-color: var(--brand) !important;
}
