/* Evans Health Care admin brand theme */

:root,
[data-bs-theme="light"] {
  --ehc-navy: #1a428a;
  --ehc-navy-deep: #0f2d5c;
  --ehc-mint: #e8f5ee;
  --ehc-green: #2eae6d;
  --ehc-bg: #f3f6fb;
  --ehc-surface: #ffffff;
  --ehc-surface-2: #f7fafc;
  --ehc-border: #d7e0ee;
  --ehc-text: #14233d;
  --ehc-muted: #5b6b82;
  --ehc-sidebar-bg: #0f2d5c;
  --ehc-sidebar-text: #d7e4f7;
  --ehc-sidebar-active: #5aa7ff;
  --ehc-navbar-bg: #ffffff;
  --ehc-navbar-text: #14233d;
  --ehc-primary: #1a428a;
  --ehc-primary-hover: #14356f;
}

[data-bs-theme="dark"] {
  --ehc-navy: #5aa7ff;
  --ehc-navy-deep: #0b1f42;
  --ehc-mint: #123024;
  --ehc-green: #3dcf86;
  --ehc-bg: #0b1220;
  --ehc-surface: #111827;
  --ehc-surface-2: #0f172a;
  --ehc-border: #243247;
  --ehc-text: #e8eef8;
  --ehc-muted: #9aa8bd;
  --ehc-sidebar-bg: #081427;
  --ehc-sidebar-text: #c9d7ee;
  --ehc-sidebar-active: #5aa7ff;
  --ehc-navbar-bg: #111827;
  --ehc-navbar-text: #e8eef8;
  --ehc-primary: #3d7ad6;
  --ehc-primary-hover: #5aa7ff;
}

html,
body,
.app-wrapper,
.app-main,
.app-content,
.app-content-header {
  background: var(--ehc-bg) !important;
  color: var(--ehc-text) !important;
  font-family: "Segoe UI", Inter, system-ui, sans-serif !important;
}

/* Login */
body.login-page {
  min-height: 100vh;
  background:
    linear-gradient(135deg, rgba(15, 45, 92, 0.88), rgba(26, 66, 138, 0.82)),
    url("../img/login-bg.jpg") center/cover no-repeat fixed !important;
}

body.login-page .login-box {
  width: min(440px, 92vw) !important;
}

body.login-page .login-logo {
  margin-bottom: 1.25rem !important;
}

body.login-page .login-logo img {
  max-width: 132px !important;
  height: auto !important;
  background: #ffffff;
  border-radius: 999px;
  padding: 0.55rem;
  box-shadow: 0 12px 30px rgba(8, 20, 39, 0.25);
}

body.login-page .login-brand-title {
  margin-top: 0.85rem;
  color: #ffffff;
  font-size: 1.35rem;
  font-weight: 700;
  letter-spacing: 0.02em;
}

body.login-page .login-brand-sub {
  color: rgba(255, 255, 255, 0.82);
  font-size: 0.95rem;
}

body.login-page .card {
  border: 0 !important;
  border-radius: 22px !important;
  box-shadow: 0 24px 60px rgba(8, 20, 39, 0.28) !important;
}

body.login-page .login-card-body {
  padding: 2rem 1.75rem 1.75rem !important;
}

body.login-page .login-box-msg {
  color: var(--ehc-muted) !important;
  font-weight: 500;
}

body.login-page .btn-primary,
body.login-page input[type="submit"] {
  background: var(--ehc-navy) !important;
  border-color: var(--ehc-navy) !important;
  border-radius: 999px !important;
  font-weight: 600 !important;
  padding: 0.7rem 1.2rem !important;
}

/* Header + sidebar */
.app-header {
  background: var(--ehc-navbar-bg) !important;
  color: var(--ehc-navbar-text) !important;
  border-bottom: 1px solid var(--ehc-border) !important;
  box-shadow: 0 6px 20px rgba(20, 35, 61, 0.04);
}

.app-header .nav-link,
.app-header .navbar-nav .nav-link {
  color: var(--ehc-navbar-text) !important;
  font-weight: 600;
}

#jazzy-sidebar,
#jazzy-sidebar .sidebar-wrapper,
#jazzy-sidebar .sidebar-brand {
  background: var(--ehc-sidebar-bg) !important;
}

#jazzy-sidebar .sidebar-brand {
  padding: 1.1rem 1rem !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
}

#jazzy-sidebar #jazzy-logo {
  display: flex !important;
  align-items: center !important;
  gap: 0.7rem;
}

#jazzy-sidebar .brand-image {
  width: 46px !important;
  height: 46px !important;
  object-fit: contain !important;
  background: #ffffff !important;
  border-radius: 50% !important;
  padding: 4px !important;
  opacity: 1 !important;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.22) !important;
}

#jazzy-sidebar .brand-text {
  color: #ffffff !important;
  font-weight: 700 !important;
  font-size: 0.98rem !important;
}

#jazzy-sidebar .nav-link,
#jazzy-sidebar .nav-header,
#jazzy-sidebar .info a,
#jazzy-sidebar .info span {
  color: var(--ehc-sidebar-text) !important;
}

#jazzy-sidebar .user-panel {
  margin: 0.7rem 0.7rem 0.95rem !important;
  padding: 0.75rem !important;
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.06) !important;
}

#jazzy-sidebar .nav-header {
  margin: 0.85rem 0.9rem 0.3rem !important;
  font-size: 0.68rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

#jazzy-sidebar .nav-item {
  margin: 0 0.55rem !important;
}

#jazzy-sidebar .nav-link {
  border-radius: 12px !important;
  min-height: 40px;
  padding: 0.55rem 0.75rem !important;
}

#jazzy-sidebar .nav-link:hover,
#jazzy-sidebar .nav-link.active {
  color: #ffffff !important;
  background: rgba(90, 167, 255, 0.18) !important;
}

.card,
.module,
.app-footer,
.dropdown-menu {
  background: var(--ehc-surface) !important;
  color: var(--ehc-text) !important;
  border-color: var(--ehc-border) !important;
}

.card {
  border-radius: 16px !important;
  box-shadow: 0 10px 30px rgba(20, 35, 61, 0.05) !important;
}

.card-header,
.module h2,
.module caption,
fieldset.module h2 {
  background: var(--ehc-surface-2) !important;
  color: var(--ehc-navy) !important;
  border-color: var(--ehc-border) !important;
  font-weight: 700 !important;
}

.btn-primary,
.btn-info,
.submit-row input.default {
  background: var(--ehc-primary) !important;
  border-color: var(--ehc-primary) !important;
  color: #ffffff !important;
}

.btn-primary:hover,
.btn-info:hover,
.submit-row input.default:hover {
  background: var(--ehc-primary-hover) !important;
  border-color: var(--ehc-primary-hover) !important;
}

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

input,
select,
textarea,
.form-control,
.form-select {
  background: var(--ehc-surface-2) !important;
  color: var(--ehc-text) !important;
  border-color: var(--ehc-border) !important;
}

.app-content-header h3,
.app-content-header h1 {
  color: var(--ehc-navy) !important;
  font-weight: 700 !important;
}

.app-footer {
  border-top: 1px solid var(--ehc-border) !important;
}

.small-box {
  border-radius: 16px !important;
  box-shadow: none !important;
}

.small-box.bg-info,
.small-box.bg-success,
.small-box.bg-warning,
.small-box.bg-secondary {
  background: var(--ehc-navy) !important;
  color: #ffffff !important;
}

.small-box.bg-success { background: #1f6a8a !important; }
.small-box.bg-warning { background: #2e6b4f !important; }
.small-box.bg-secondary { background: #3d4f73 !important; }

.fb-progress > span {
  background: linear-gradient(90deg, #1a428a, #2eae6d) !important;
}
