/**
 * Custom Theme Override
 * Load this file AFTER style.css to apply custom color scheme
 *
 * Usage: <link rel="stylesheet" href="assets/css/style-custom.css">
 */

:root {
  /* Custom Color Palette - Override default colors */
  --primary: #167699;
  --info: #02ace9;
  --warning: #ffd700;
  --light: #eefbff;
  --dark: #17242a;
}

/* ============================================
   BUTTONS
   ============================================ */

/* Primary Button */
.btn-primary {
  background-color: var(--primary) !important;
  border-color: var(--primary) !important;
}

.btn-primary:hover {
  background-color: #125a7a !important;
  border-color: #105070 !important;
}

.btn-primary:focus,
.btn-primary.focus {
  background-color: #125a7a !important;
  border-color: #105070 !important;
  box-shadow: 0 0 0 0.2rem rgba(22, 118, 153, 0.5) !important;
}

.btn-primary:not(:disabled):not(.disabled):active,
.btn-primary:not(:disabled):not(.disabled).active,
.show > .btn-primary.dropdown-toggle {
  background-color: #105070 !important;
  border-color: #0e4766 !important;
}

/* Info Button */
.btn-info {
  background-color: var(--info) !important;
  border-color: var(--info) !important;
}

.btn-info:hover {
  background-color: #0292c7 !important;
  border-color: #0287ba !important;
}

.btn-info:focus,
.btn-info.focus {
  background-color: #0292c7 !important;
  border-color: #0287ba !important;
  box-shadow: 0 0 0 0.2rem rgba(2, 172, 233, 0.5) !important;
}

.btn-info:not(:disabled):not(.disabled):active,
.btn-info:not(:disabled):not(.disabled).active,
.show > .btn-info.dropdown-toggle {
  background-color: #0287ba !important;
  border-color: #027dad !important;
}

/* Warning Button */
.btn-warning {
  background-color: var(--warning) !important;
  border-color: var(--warning) !important;
  color: #000 !important;
}

.btn-warning:hover {
  background-color: #e6c200 !important;
  border-color: #d9b800 !important;
  color: #000 !important;
}

.btn-warning:focus,
.btn-warning.focus {
  background-color: #e6c200 !important;
  border-color: #d9b800 !important;
  box-shadow: 0 0 0 0.2rem rgba(255, 215, 0, 0.5) !important;
  color: #000 !important;
}

.btn-warning:not(:disabled):not(.disabled):active,
.btn-warning:not(:disabled):not(.disabled).active,
.show > .btn-warning.dropdown-toggle {
  background-color: #d9b800 !important;
  border-color: #ccad00 !important;
  color: #000 !important;
}

/* Light Button */
.btn-light {
  background-color: var(--light) !important;
  border-color: var(--light) !important;
  color: #212529 !important;
}

.btn-light:hover {
  background-color: #d5f5ff !important;
  border-color: #c9f2ff !important;
  color: #212529 !important;
}

.btn-light:focus,
.btn-light.focus {
  background-color: #d5f5ff !important;
  border-color: #c9f2ff !important;
  box-shadow: 0 0 0 0.2rem rgba(238, 251, 255, 0.5) !important;
  color: #212529 !important;
}

/* Dark Button */
.btn-dark {
  background-color: var(--dark) !important;
  border-color: var(--dark) !important;
}

.btn-dark:hover {
  background-color: #0f1a1e !important;
  border-color: #0c1417 !important;
}

.btn-dark:focus,
.btn-dark.focus {
  background-color: #0f1a1e !important;
  border-color: #0c1417 !important;
  box-shadow: 0 0 0 0.2rem rgba(23, 36, 42, 0.5) !important;
}

.btn-dark:not(:disabled):not(.disabled):active,
.btn-dark:not(:disabled):not(.disabled).active,
.show > .btn-dark.dropdown-toggle {
  background-color: #0c1417 !important;
  border-color: #090e11 !important;
}

/* ============================================
   BACKGROUNDS
   ============================================ */

.bg-primary {
  background-color: var(--primary) !important;
}

a.bg-primary:hover,
a.bg-primary:focus,
button.bg-primary:hover,
button.bg-primary:focus {
  background-color: #125a7a !important;
}

.bg-info {
  background-color: var(--info) !important;
}

a.bg-info:hover,
a.bg-info:focus,
button.bg-info:hover,
button.bg-info:focus {
  background-color: #0292c7 !important;
}

.bg-warning {
  background-color: var(--warning) !important;
}

a.bg-warning:hover,
a.bg-warning:focus,
button.bg-warning:hover,
button.bg-warning:focus {
  background-color: #e6c200 !important;
}

.bg-light {
  background-color: var(--light) !important;
}

a.bg-light:hover,
a.bg-light:focus,
button.bg-light:hover,
button.bg-light:focus {
  background-color: #d5f5ff !important;
}

.bg-dark {
  background-color: var(--dark) !important;
}

a.bg-dark:hover,
a.bg-dark:focus,
button.bg-dark:hover,
button.bg-dark:focus {
  background-color: #0f1a1e !important;
}

/* ============================================
   TEXT COLORS
   ============================================ */

.text-primary {
  color: var(--primary) !important;
}

a.text-primary:hover,
a.text-primary:focus {
  color: #105070 !important;
}

.text-info {
  color: var(--info) !important;
}

a.text-info:hover,
a.text-info:focus {
  color: #027dad !important;
}

.text-warning {
  color: var(--warning) !important;
}

a.text-warning:hover,
a.text-warning:focus {
  color: #ccad00 !important;
}

.text-light {
  color: var(--light) !important;
}

a.text-light:hover,
a.text-light:focus {
  color: #bceeff !important;
}

.text-dark {
  color: var(--dark) !important;
}

a.text-dark:hover,
a.text-dark:focus {
  color: #090e11 !important;
}

/* ============================================
   BORDERS
   ============================================ */

.border-primary {
  border-color: var(--primary) !important;
}

.border-info {
  border-color: var(--info) !important;
}

.border-warning {
  border-color: var(--warning) !important;
}

.border-light {
  border-color: var(--light) !important;
}

.border-dark {
  border-color: var(--dark) !important;
}

/* ============================================
   OUTLINE BUTTONS
   ============================================ */

.btn-outline-primary {
  color: var(--primary) !important;
  border-color: var(--primary) !important;
}

.btn-outline-primary:hover {
  color: #fff !important;
  background-color: var(--primary) !important;
  border-color: var(--primary) !important;
}

.btn-outline-info {
  color: var(--info) !important;
  border-color: var(--info) !important;
}

.btn-outline-info:hover {
  background-color: var(--info) !important;
  border-color: var(--info) !important;
}

.btn-outline-warning {
  color: var(--warning) !important;
  border-color: var(--warning) !important;
}

.btn-outline-warning:hover {
  background-color: var(--warning) !important;
  border-color: var(--warning) !important;
  color: #000 !important;
}

.btn-outline-dark {
  color: var(--dark) !important;
  border-color: var(--dark) !important;
}

.btn-outline-dark:hover {
  background-color: var(--dark) !important;
  border-color: var(--dark) !important;
}

/* ============================================
   ALERTS
   ============================================ */

.alert-primary {
  background-color: rgba(22, 118, 153, 0.1) !important;
  border-color: rgba(22, 118, 153, 0.2) !important;
  color: #105070 !important;
}

.alert-info {
  background-color: rgba(2, 172, 233, 0.1) !important;
  border-color: rgba(2, 172, 233, 0.2) !important;
  color: #027dad !important;
}

.alert-warning {
  background-color: rgba(255, 215, 0, 0.1) !important;
  border-color: rgba(255, 215, 0, 0.2) !important;
  color: #8c7a00 !important;
}

/* ============================================
   BADGES
   ============================================ */

.badge-primary {
  background-color: var(--primary) !important;
}

.badge-info {
  background-color: var(--info) !important;
}

.badge-warning {
  background-color: var(--warning) !important;
  color: #000 !important;
}

.badge-light {
  background-color: var(--light) !important;
  color: #212529 !important;
}

.badge-dark {
  background-color: var(--dark) !important;
}

/* ============================================
   CUSTOM UTILITY CLASSES
   ============================================ */

/* Light variations */
.bg-light-primary {
  background-color: rgba(22, 118, 153, 0.1) !important;
  color: var(--primary) !important;
}

.bg-light-info {
  background-color: rgba(2, 172, 233, 0.1) !important;
  color: var(--info) !important;
}

.bg-light-warning {
  background-color: rgba(255, 215, 0, 0.1) !important;
  color: #8c7a00 !important;
}

/* Icon colors */
.icon-svg-primary {
  color: var(--primary) !important;
}

.icon-svg-info {
  color: var(--info) !important;
}

.icon-svg-warning {
  color: var(--warning) !important;
}

.icon-svg-dark {
  color: var(--dark) !important;
}

/* ============================================
   ADVANCE LAYOUT (Customer View)
   ============================================ */

.advance-layout {
  background-color: var(--primary) !important;
  background-image: linear-gradient(to bottom, transparent 250px, #f0f2f8 0);
}

/* ============================================
   CUSTOMIZER CSS OVERRIDES
   ============================================ */

/* Theme color preview - Primary */
.doc-img.header-color > a[data-value='bg-primary'] > span:nth-child(1):after,
.theme-color.header-color > a[data-value='bg-primary'] > span:nth-child(1):after,
.doc-img.brand-color > a[data-value='bg-primary'] > span:nth-child(1):before,
.theme-color.brand-color > a[data-value='bg-primary'] > span:nth-child(1):before {
  background: var(--primary) !important;
}

/* Theme color preview - Info */
.doc-img.header-color > a[data-value='bg-info'] > span:nth-child(1):after,
.theme-color.header-color > a[data-value='bg-info'] > span:nth-child(1):after,
.doc-img.brand-color > a[data-value='bg-info'] > span:nth-child(1):before,
.theme-color.brand-color > a[data-value='bg-info'] > span:nth-child(1):before {
  background: var(--info) !important;
}

/* Theme color preview - Warning */
.doc-img.header-color > a[data-value='bg-warning'] > span:nth-child(1):after,
.theme-color.header-color > a[data-value='bg-warning'] > span:nth-child(1):after,
.doc-img.brand-color > a[data-value='bg-warning'] > span:nth-child(1):before,
.theme-color.brand-color > a[data-value='bg-warning'] > span:nth-child(1):before {
  background: var(--warning) !important;
}

/* Theme color preview - Dark */
.doc-img.header-color > a[data-value='bg-dark'] > span:nth-child(1):after,
.theme-color.header-color > a[data-value='bg-dark'] > span:nth-child(1):after,
.doc-img.brand-color > a[data-value='bg-dark'] > span:nth-child(1):before,
.theme-color.brand-color > a[data-value='bg-dark'] > span:nth-child(1):before,
.doc-img > a span:before,
.theme-color > a span:before {
  background: var(--dark) !important;
}

/* Sidebar caption & links color */
.pc-sidebar.light-sidebar .pc-caption {
  color: var(--primary) !important;
}

.pc-sidebar.light-sidebar .pc-link:active,
.pc-sidebar.light-sidebar .pc-link:focus,
.pc-sidebar.light-sidebar .pc-link:hover,
.pc-sidebar.light-sidebar .pc-item:hover > .pc-link,
.pc-sidebar.light-sidebar .pc-item.active > .pc-link,
.pc-sidebar.light-sidebar .pc-navbar > .pc-item.active .pc-link,
.pc-sidebar.light-sidebar .pc-navbar > .pc-item:focus .pc-link,
.pc-sidebar.light-sidebar .pc-navbar > .pc-item:hover .pc-link,
.pc-sidebar.light-sidebar .pc-navbar > .pc-item.active > .pc-link,
.pc-sidebar.light-sidebar .pc-navbar > .pc-item:focus > .pc-link,
.pc-sidebar.light-sidebar .pc-navbar > .pc-item:hover > .pc-link {
  color: var(--primary) !important;
}

.pc-horizontal .topbar.light-sidebar .pc-link:active,
.pc-horizontal .topbar.light-sidebar .pc-link:focus,
.pc-horizontal .topbar.light-sidebar .pc-link:hover {
  color: var(--primary) !important;
}
