:root {
  --bs-primary: #007bff !important;
  --bs-secondary: #6c757d !important;
  --bs-success: #28a745 !important;
  --bs-danger: #dc3545 !important;
  --bs-warning: #ffc107 !important;
  --bs-info: #17a2b8 !important;
  --bs-light: #f8f9fa !important;
  --bs-dark: #343a40 !important;
  --color-primary: #007bff !important;
  --color-primary-dark: #007bff !important;
  --color-primary-light: #007bff !important;
  --color-primary-hover: #007bff !important;
  --color-secondary: #6c757d !important;
  --color-secondary-dark: #6c757d !important;
  --color-secondary-light: #6c757d !important;
  --theme-font-family: 'Inter', sans-serif !important;
  --theme-font-size-base: 16px !important;
  --theme-border-radius: 0.375rem !important;
  --theme-box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;
  --theme-background-color: #ffffff !important;
  --theme-text-color: #212529 !important;
  --theme-header-background: #ffffff !important;
  --theme-navbar-background: #ffffff !important;
  --theme-footer-background: #343a40 !important;
  --theme-footer-text-color: #ffffff !important;
}

body {
  font-family: var(--theme-font-family) !important;
  font-size: var(--theme-font-size-base) !important;
  background-color: var(--theme-background-color) !important;
  color: var(--theme-text-color) !important;
}

.navbar {
  background-color: var(--theme-navbar-background) !important;
}

.top-bar {
  background: linear-gradient(135deg, var(--bs-primary) 0%, var(--bs-secondary) 100%) !important;
}

.card {
  border-radius: var(--theme-border-radius) !important;
  box-shadow: var(--theme-box-shadow) !important;
}

.btn {
  border-radius: var(--theme-border-radius) !important;
}

footer {
  background-color: var(--theme-footer-background) !important;
  color: var(--theme-footer-text-color) !important;
}

html .bg-primary, html body .bg-primary { background-color: var(--bs-primary) !important; }
html .text-primary, html body .text-primary { color: var(--bs-primary) !important; }
html .btn-primary, html body .btn-primary { background-color: var(--bs-primary) !important; border-color: var(--bs-primary) !important; }
html .btn-primary:hover, html body .btn-primary:hover, html .btn-primary:focus, html body .btn-primary:focus { background-color: var(--bs-primary) !important; border-color: var(--bs-primary) !important; opacity: 0.9; }
html .btn-outline-primary, html body .btn-outline-primary { color: var(--bs-primary) !important; border-color: var(--bs-primary) !important; }
html .btn-outline-primary:hover, html body .btn-outline-primary:hover { background-color: var(--bs-primary) !important; border-color: var(--bs-primary) !important; color: #fff !important; }
html .nav-link.active, html body .nav-link.active { color: var(--bs-primary) !important; }
html .badge.bg-primary, html body .badge.bg-primary { background-color: var(--bs-primary) !important; }
html .bg-secondary, html body .bg-secondary { background-color: var(--bs-secondary) !important; }
html .text-secondary, html body .text-secondary { color: var(--bs-secondary) !important; }
html .btn-secondary, html body .btn-secondary { background-color: var(--bs-secondary) !important; border-color: var(--bs-secondary) !important; }
html .bg-success, html body .bg-success { background-color: var(--bs-success) !important; }
html .text-success, html body .text-success { color: var(--bs-success) !important; }
html .btn-success, html body .btn-success { background-color: var(--bs-success) !important; border-color: var(--bs-success) !important; }
html .bg-danger, html body .bg-danger { background-color: var(--bs-danger) !important; }
html .text-danger, html body .text-danger { color: var(--bs-danger) !important; }
html .btn-danger, html body .btn-danger { background-color: var(--bs-danger) !important; border-color: var(--bs-danger) !important; }
html .bg-warning, html body .bg-warning { background-color: var(--bs-warning) !important; }
html .text-warning, html body .text-warning { color: var(--bs-warning) !important; }
html .btn-warning, html body .btn-warning { background-color: var(--bs-warning) !important; border-color: var(--bs-warning) !important; }
html .bg-info, html body .bg-info { background-color: var(--bs-info) !important; }
html .text-info, html body .text-info { color: var(--bs-info) !important; }
html .btn-info, html body .btn-info { background-color: var(--bs-info) !important; border-color: var(--bs-info) !important; }
html .site-header, html body .site-header { background-color: var(--theme-header-background) !important; }
html .main-navbar, html body .main-navbar { background-color: var(--theme-navbar-background) !important; }
html .site-footer, html body .site-footer { background-color: var(--theme-footer-background) !important; color: var(--theme-footer-text-color) !important; }
html .hero-section, html body .hero-section { background: linear-gradient(135deg, var(--bs-primary) 0%, var(--bs-secondary) 100%) !important; }
