/* Lexogenix brand theme — navy #09172F + gold #EFB424 (matches logo) */

:root {
  --brand-navy: #09172F;
  --brand-navy-hover: #06101F;
  --brand-navy-soft: #122847;
  --brand-gold: #EFB424;
  --brand-gold-hover: #D9A018;
  --brand-gold-soft: #FFF4DE;
  --brand-shadow-navy: 0 10px 22px rgba(9, 23, 47, 0.22);
  --brand-shadow-navy-hover: 0 14px 28px rgba(9, 23, 47, 0.28);
  --brand-shadow-gold: 0 10px 22px rgba(239, 180, 36, 0.32);
  --brand-shadow-gold-hover: 0 14px 28px rgba(239, 180, 36, 0.38);
  --bs-primary: #09172F;
  --bs-secondary: #EFB424;
  --color-primary: #09172F;
  --color-secondary: #EFB424;
  --bg-primary: #09172F;
  --bg-secondary: #EFB424;
  --bg-primary-hover: #06101F;
  --bg-secondary-hover: #D9A018;
  --color-primary-rgba: 9, 23, 47;
  --color-secondary-rgba: 239, 180, 36;
  --bgcolor-add-listing-button: #09172F;
  --bgcolor-add-listing-button-hover: #06101F;
  --color-menu-hover: #09172F;
  --color-menu-active: #09172F;
  --color-breadcrumb-link-hover: #09172F;
  --color-purple: #EFB424;
  --bg-purple: #EFB424;
}

/* ---- Logo sizing (login + header same) ---- */
.login-brand-logo,
.navbar-brand-logo {
  max-height: 48px !important;
  width: auto !important;
  max-width: 200px !important;
  min-width: 0 !important;
  height: auto !important;
  object-fit: contain !important;
}

/* ---- Global surfaces ---- */
body {
  background: linear-gradient(165deg, #f6f8fc 0%, #fff9ed 38%, #f3f6fb 100%) !important;
}
.contents,
.main-content {
  background: transparent;
}

/* ---- Buttons: same feel as login ---- */
.btn,
button.btn,
input.btn {
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  font-weight: 500;
}

.btn-primary,
.btn-primary:focus,
.btn-primary.focus,
.btn-primary-hover,
.signIn-createBtn {
  background: linear-gradient(180deg, #0d1f3d 0%, var(--brand-navy) 100%) !important;
  border-color: var(--brand-navy) !important;
  color: #fff !important;
  box-shadow: var(--brand-shadow-navy) !important;
}
.btn-primary:hover,
.btn-primary:active,
.btn-primary.active,
.show > .btn-primary.dropdown-toggle,
.btn-primary-hover:hover,
.signIn-createBtn:hover {
  background: linear-gradient(180deg, var(--brand-navy-hover) 0%, #040d1a 100%) !important;
  border-color: var(--brand-navy-hover) !important;
  color: #fff !important;
  box-shadow: var(--brand-shadow-navy-hover) !important;
  transform: translateY(-1px);
}
.btn-primary:active,
.signIn-createBtn:active {
  transform: translateY(0);
  box-shadow: 0 6px 14px rgba(9, 23, 47, 0.2) !important;
}

.btn-outline-primary {
  color: var(--brand-navy) !important;
  border: 1.5px solid var(--brand-navy) !important;
  background: transparent !important;
  box-shadow: none !important;
}
.btn-outline-primary:hover,
.btn-outline-primary:active,
.btn-outline-primary.active {
  background: linear-gradient(180deg, #0d1f3d 0%, var(--brand-navy) 100%) !important;
  border-color: var(--brand-navy) !important;
  color: #fff !important;
  box-shadow: var(--brand-shadow-navy) !important;
  transform: translateY(-1px);
}

.btn-secondary,
.btn-secondary:focus,
.btn-secondary-hover {
  background: linear-gradient(180deg, #f5c84a 0%, var(--brand-gold) 100%) !important;
  border-color: var(--brand-gold) !important;
  color: var(--brand-navy) !important;
  box-shadow: var(--brand-shadow-gold) !important;
}
.btn-secondary:hover,
.btn-secondary:active,
.btn-secondary.active,
.btn-secondary-hover:hover {
  background: linear-gradient(180deg, var(--brand-gold-hover) 0%, #c89410 100%) !important;
  border-color: var(--brand-gold-hover) !important;
  color: var(--brand-navy) !important;
  box-shadow: var(--brand-shadow-gold-hover) !important;
  transform: translateY(-1px);
}

.btn-outline-secondary {
  color: var(--brand-gold-hover) !important;
  border: 1.5px solid var(--brand-gold) !important;
  background: transparent !important;
}
.btn-outline-secondary:hover,
.btn-outline-secondary:active {
  background: linear-gradient(180deg, #f5c84a 0%, var(--brand-gold) 100%) !important;
  border-color: var(--brand-gold) !important;
  color: var(--brand-navy) !important;
  box-shadow: var(--brand-shadow-gold) !important;
  transform: translateY(-1px);
}

.btn-warning {
  background: linear-gradient(180deg, #f5c84a 0%, var(--brand-gold) 100%) !important;
  border-color: var(--brand-gold) !important;
  color: var(--brand-navy) !important;
  box-shadow: var(--brand-shadow-gold) !important;
}
.btn-warning:hover {
  background: linear-gradient(180deg, var(--brand-gold-hover) 0%, #c89410 100%) !important;
  border-color: var(--brand-gold-hover) !important;
  color: var(--brand-navy) !important;
  box-shadow: var(--brand-shadow-gold-hover) !important;
  transform: translateY(-1px);
}

.btn-shadow-primary,
.btn-shadow-secondary {
  box-shadow: var(--brand-shadow-navy) !important;
}

/* ---- Text / background utilities ---- */
.text-primary { color: var(--brand-navy) !important; }
.text-secondary { color: var(--brand-gold-hover) !important; }
.bg-primary { background-color: var(--brand-navy) !important; }
.bg-secondary { background-color: var(--brand-gold) !important; }
.border-primary { border-color: var(--brand-navy) !important; }
.color-purple,
.text-purple { color: var(--brand-gold) !important; }
.bg-purple { background: var(--brand-gold) !important; }
.btn-outline-purple {
  border-color: var(--brand-gold) !important;
  color: var(--brand-gold-hover) !important;
}
.btn-outline-purple:hover,
.btn-purple {
  background-color: var(--brand-gold) !important;
  border-color: var(--brand-gold) !important;
  color: var(--brand-navy) !important;
}

.badge.bg-primary,
.badge-primary,
.order-bg-opacity-primary {
  background-color: rgba(9, 23, 47, 0.12) !important;
  color: var(--brand-navy) !important;
}
.badge-secondary,
.badge.bg-secondary {
  background-color: var(--brand-gold) !important;
  color: var(--brand-navy) !important;
}

/* ---- Forms ---- */
.form-control:focus,
.form-select:focus,
.select2-container--default.select2-container--focus .select2-selection--multiple,
.select2-container--default .select2-selection--single:focus,
.select2-container--open .select2-selection {
  border-color: var(--brand-navy) !important;
  box-shadow: 0 0 0 0.2rem rgba(9, 23, 47, 0.14) !important;
}
.form-check-input:checked,
.form-switch-primary .form-check-input:checked,
.form-switch-secondary .form-check-input:checked {
  background-color: var(--brand-navy) !important;
  border-color: var(--brand-navy) !important;
}
.select2-container--default .select2-results__option[aria-selected=true],
.select2-container--default .select2-results__option--highlighted[aria-selected] {
  background-color: var(--brand-navy) !important;
  color: #fff !important;
}

/* ---- Pagination & tables ---- */
.page-item.active .page-link,
.page-link:hover,
.dataTables_wrapper .dataTables_paginate .paginate_button.current,
.dataTables_wrapper .dataTables_paginate .paginate_button:hover {
  background: linear-gradient(180deg, #0d1f3d 0%, var(--brand-navy) 100%) !important;
  border-color: var(--brand-navy) !important;
  color: #fff !important;
  box-shadow: 0 4px 12px rgba(9, 23, 47, 0.18) !important;
}
.table thead th {
  color: var(--brand-navy);
  border-bottom: 2px solid rgba(239, 180, 36, 0.35);
}

/* ---- Nav / sidebar / header ---- */
.header-top .navbar {
  border-bottom: 2px solid rgba(9, 23, 47, 0.08);
  background: linear-gradient(90deg, #fff 0%, #fffaf0 100%);
}
.sidebar__menu-group ul.sidebar_nav li.active {
  background-color: var(--brand-gold-soft) !important;
  border-left: 3px solid var(--brand-gold);
}
.sidebar__menu-group ul.sidebar_nav li.active > a {
  color: var(--brand-navy) !important;
  font-weight: 600;
}
.sidebar__menu-group ul.sidebar_nav li > a:hover,
.sidebar__menu-group ul.sidebar_nav li > a.active {
  color: var(--brand-navy) !important;
}
.sidebar__menu-group ul.sidebar_nav li > a:hover .nav-icon,
.sidebar__menu-group ul.sidebar_nav li > a.active .nav-icon,
.sidebar__menu-group ul.sidebar_nav li.active > a .nav-icon {
  color: var(--brand-gold) !important;
}
.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
  color: var(--brand-navy) !important;
  border-bottom: 2px solid var(--brand-gold) !important;
}
.breadcrumb-item a:hover,
.breadcrumb-item.active {
  color: var(--brand-navy) !important;
}
.page-title h4,
.card-header h6,
.dm-page-title h4 {
  color: var(--brand-navy) !important;
}
.card {
  border-color: rgba(9, 23, 47, 0.07);
  box-shadow: 0 4px 18px rgba(9, 23, 47, 0.04);
}
.card-header {
  border-bottom-color: rgba(9, 23, 47, 0.08);
  background: linear-gradient(90deg, #fff 0%, #fffdf7 100%);
}

/* ---- Progress / spinners / alerts ---- */
.progress-bar:not(.bg-success):not(.bg-danger):not(.bg-info) {
  background: linear-gradient(90deg, var(--brand-navy) 0%, var(--brand-navy-soft) 100%) !important;
}
.spinner-border.text-primary,
.spinner-grow.text-primary {
  color: var(--brand-navy) !important;
}
.badge-dot.dot-primary,
.dm-spin-dots .dot-primary {
  background-color: var(--brand-gold) !important;
}
.alert-primary {
  color: var(--brand-navy) !important;
  background-color: rgba(9, 23, 47, 0.08) !important;
  border-color: rgba(9, 23, 47, 0.12) !important;
}
.alert-secondary {
  color: var(--brand-navy) !important;
  background-color: var(--brand-gold-soft) !important;
  border-color: rgba(239, 180, 36, 0.35) !important;
}

/* ---- Links & dropdowns ---- */
a:not(.btn):not(.nav-link):not(.sidebar_nav a):hover {
  color: var(--brand-gold-hover);
}
.dropdown-item.active,
.dropdown-item:active {
  background-color: var(--brand-navy) !important;
}
.nav-author__info h6 a:hover,
.nav-author__options ul li a:hover {
  color: var(--brand-gold) !important;
}

/* ---- Daterangepicker apply button ---- */
.daterangepicker .drp-buttons .btn.applyBtn {
  background: var(--brand-navy) !important;
  border-color: var(--brand-navy) !important;
  color: #fff !important;
  box-shadow: var(--brand-shadow-navy) !important;
}

/* ---- SweetAlert2 ---- */
.swal2-styled.swal2-confirm {
  background: linear-gradient(180deg, #0d1f3d 0%, var(--brand-navy) 100%) !important;
  border-color: var(--brand-navy) !important;
  box-shadow: var(--brand-shadow-navy) !important;
}
.swal2-styled.swal2-confirm:hover {
  background: linear-gradient(180deg, var(--brand-navy-hover) 0%, #040d1a 100%) !important;
  box-shadow: var(--brand-shadow-navy-hover) !important;
}
.swal2-styled.swal2-cancel {
  background: linear-gradient(180deg, #f5c84a 0%, var(--brand-gold) 100%) !important;
  border-color: var(--brand-gold) !important;
  color: var(--brand-navy) !important;
  box-shadow: var(--brand-shadow-gold) !important;
}
.swal2-icon.swal2-warning {
  border-color: var(--brand-gold) !important;
  color: var(--brand-gold) !important;
}

/* ---- Dark layout ---- */
.layout-dark {
  --color-menu-hover: #EFB424;
  --color-menu-active: #EFB424;
  --color-breadcrumb-link-hover: #EFB424;
}
.layout-dark .btn-primary {
  background: linear-gradient(180deg, #f5c84a 0%, var(--brand-gold) 100%) !important;
  border-color: var(--brand-gold) !important;
  color: var(--brand-navy) !important;
  box-shadow: var(--brand-shadow-gold) !important;
}
.layout-dark .btn-primary:hover {
  background: linear-gradient(180deg, var(--brand-gold-hover) 0%, #c89410 100%) !important;
  border-color: var(--brand-gold-hover) !important;
  color: var(--brand-navy) !important;
  box-shadow: var(--brand-shadow-gold-hover) !important;
}
.layout-dark .header-top .navbar {
  background: linear-gradient(90deg, rgba(9, 23, 47, 0.97) 0%, rgba(18, 40, 71, 0.99) 100%);
  border-bottom-color: rgba(239, 180, 36, 0.28);
}
.layout-dark .sidebar__menu-group ul.sidebar_nav li.active {
  background-color: rgba(239, 180, 36, 0.12) !important;
  border-left-color: var(--brand-gold);
}
.layout-dark .sidebar__menu-group ul.sidebar_nav li.active > a,
.layout-dark .sidebar__menu-group ul.sidebar_nav li > a:hover,
.layout-dark .sidebar__menu-group ul.sidebar_nav li > a.active {
  color: var(--brand-gold) !important;
}
.layout-dark .sidebar__menu-group ul.sidebar_nav li > a:hover .nav-icon,
.layout-dark .sidebar__menu-group ul.sidebar_nav li > a.active .nav-icon,
.layout-dark .sidebar__menu-group ul.sidebar_nav li.active > a .nav-icon {
  color: var(--brand-gold) !important;
}
.layout-dark .card-header {
  background: rgba(255, 255, 255, 0.04);
}
