/* =====================================================================
   ZAM ERP - Corporate Grey & Blue Theme
   Overrides the default palette with a professional slate-blue and
   grey scheme suitable for corporate / enterprise use.
   This file is auto-loaded by the app whenever it exists, and is always
   applied after the core stylesheets, so these rules win the cascade.
   ===================================================================== */

:root {
  --pc-navy:        #1E3A5F;
  --pc-navy-dark:   #14273D;
  --pc-blue:        #2C5282;
  --pc-blue-hover:  #234163;
  --pc-blue-light:  #3B6EA5;
  --pc-blue-accent: #7FB2E5;
  --pc-slate-900:   #1E293B;
  --pc-slate-700:   #334155;
  --pc-slate-500:   #64748B;
  --pc-slate-300:   #CBD5E1;
  --pc-slate-100:   #F1F5F9;
  --pc-slate-50:    #F8FAFC;
}

/* ---------- Base typography ---------- */
body {
  color: var(--pc-slate-700);
}
a {
  color: var(--pc-blue);
}
a:hover,
a:focus {
  color: var(--pc-navy);
}

/* ---------- Bootstrap "primary" brand color ---------- */
.btn-primary,
.btn-primary.disabled,
.btn-primary[disabled] {
  background-color: var(--pc-blue) !important;
  border-color: var(--pc-blue-hover) !important;
}
.btn-primary:hover,
.btn-primary:focus,
.btn-primary.focus,
.btn-primary:active,
.btn-primary.active,
.open > .dropdown-toggle.btn-primary {
  background-color: var(--pc-navy) !important;
  border-color: var(--pc-navy-dark) !important;
}
.btn-primary .badge {
  color: var(--pc-blue) !important;
}
.btn-link {
  color: var(--pc-blue) !important;
}

.text-primary,
a.text-primary:hover,
a.text-primary:focus {
  color: var(--pc-blue) !important;
}
.bg-primary,
a.bg-primary:hover,
a.bg-primary:focus {
  background-color: var(--pc-blue) !important;
}

.label-primary {
  background-color: var(--pc-blue) !important;
}
.label-primary[href]:hover,
.label-primary[href]:focus {
  background-color: var(--pc-navy) !important;
}

.panel-primary {
  border-color: var(--pc-blue) !important;
}
.panel-primary > .panel-heading {
  color: #fff !important;
  background-color: var(--pc-blue) !important;
  border-color: var(--pc-blue) !important;
}
.panel-primary > .panel-heading .badge {
  color: var(--pc-blue) !important;
}

.nav-pills > li.active > a,
.nav-pills > li.active > a:hover,
.nav-pills > li.active > a:focus {
  background-color: var(--pc-blue) !important;
}
.nav .open > a,
.nav .open > a:hover,
.nav .open > a:focus {
  border-color: var(--pc-blue) !important;
}

.pagination > .active > a,
.pagination > .active > a:hover,
.pagination > .active > a:focus,
.pagination > .active > span,
.pagination > .active > span:hover,
.pagination > .active > span:focus {
  background-color: var(--pc-blue) !important;
  border-color: var(--pc-blue) !important;
}
.pagination > li > a,
.pagination > li > span {
  color: var(--pc-blue);
}

.list-group-item.active,
.list-group-item.active:hover,
.list-group-item.active:focus {
  background-color: var(--pc-blue) !important;
  border-color: var(--pc-blue) !important;
}

.dropdown-menu > .active > a,
.dropdown-menu > .active > a:hover,
.dropdown-menu > .active > a:focus {
  background-color: var(--pc-blue) !important;
}

.progress-bar {
  background-color: var(--pc-blue) !important;
}

/* ZAM ERP "primary-bg" accent util (was cyan) */
.primary-bg {
  background: var(--pc-blue) !important;
  border: 1px solid var(--pc-blue) !important;
}

/* Checkboxes / radios / form focus rings */
.form-control:focus {
  border-color: var(--pc-blue-light);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px rgba(44, 82, 130, .35);
}
input[type="checkbox"]:checked,
input[type="radio"]:checked {
  accent-color: var(--pc-blue);
}

/* ---------- Tailwind "primary" utility scale ---------- */
.tw-bg-primary-50  { background-color: #EFF3F8 !important; }
.tw-bg-primary-100 { background-color: #DCE6F0 !important; }
.tw-bg-primary-200 { background-color: #B9CCE0 !important; }
.tw-bg-primary-300 { background-color: #96B2D1 !important; }
.tw-bg-primary-400 { background-color: #6E93BC !important; }
.tw-bg-primary-500 { background-color: #4A76A3 !important; }
.tw-bg-primary-600 { background-color: #2C5282 !important; }
.tw-bg-primary-700 { background-color: #1E3A5F !important; }
.tw-bg-primary-800 { background-color: #16304F !important; }
.tw-bg-primary-900 { background-color: #0F2038 !important; }
.tw-bg-primary-950 { background-color: #0A1626 !important; }

.tw-text-primary-50  { color: #EFF3F8 !important; }
.tw-text-primary-100 { color: #DCE6F0 !important; }
.tw-text-primary-200 { color: #B9CCE0 !important; }
.tw-text-primary-300 { color: #96B2D1 !important; }
.tw-text-primary-400 { color: #6E93BC !important; }
.tw-text-primary-500 { color: #4A76A3 !important; }
.tw-text-primary-600 { color: #2C5282 !important; }
.tw-text-primary-700 { color: #1E3A5F !important; }
.tw-text-primary-800 { color: #16304F !important; }
.tw-text-primary-900 { color: #0F2038 !important; }
.tw-text-primary-950 { color: #0A1626 !important; }

.tw-border-primary-50  { border-color: #EFF3F8 !important; }
.tw-border-primary-100 { border-color: #DCE6F0 !important; }
.tw-border-primary-200 { border-color: #B9CCE0 !important; }
.tw-border-primary-300 { border-color: #96B2D1 !important; }
.tw-border-primary-400 { border-color: #6E93BC !important; }
.tw-border-primary-500 { border-color: #4A76A3 !important; }
.tw-border-primary-600 { border-color: #2C5282 !important; }
.tw-border-primary-700 { border-color: #1E3A5F !important; }
.tw-border-primary-800 { border-color: #16304F !important; }
.tw-border-primary-900 { border-color: #0F2038 !important; }
.tw-border-primary-950 { border-color: #0A1626 !important; }

/* ---------- Login / auth screens ---------- */
body.login_admin {
  background-color: var(--pc-slate-100) !important;
}
.authentication-form-wrapper h1 {
  color: var(--pc-slate-900) !important;
}

/* ---------- Top navigation / client portal header ---------- */
.navbar.header {
  background-color: #ffffff;
  border-bottom: 1px solid var(--pc-slate-300);
}
.navbar.header .navbar-nav > li > a {
  color: var(--pc-slate-700);
}
.navbar.header .navbar-nav > li > a:hover,
.navbar.header .navbar-nav > li.active > a {
  color: var(--pc-blue);
}

/* ---------- Company logo sizing ---------- */
.logo img {
  max-height: 46px;
  width: auto;
}

/* ---------- Misc corporate polish ---------- */
::selection {
  background: var(--pc-blue-accent);
  color: var(--pc-navy-dark);
}
.divider,
hr {
  border-color: var(--pc-slate-300);
}
