/* =================================================================
   Modern Light Theme by Gemini
   ================================================================= */

:root {
  /* New Light Theme Palette */
  --primary-color: #0D6EFD;
  --primary-hover-color: #0B5ED7;
  --secondary-color: #6C757D;
  --background-color: #FFFFFF;
  --background-light-color: #F8F9FA;
  --text-color: #212529;
  --text-light-color: #6C757D;
  --heading-color: #495057;
  --homepage-text-color: #5a6268;
  --border-color: #DEE2E6;
  --footer-background-color: #212529;
  --footer-text-color: #FFFFFF;

  /* Standard Colors */
  --success-color: #198754;
  --danger-color: #DC3545;
  --warning-color: #FFC107;
  --info-color: #0DCAF0;
}

body {
    font-family: 'Source Sans Pro', sans-serif;
    color: var(--text-color);
    background-color: var(--background-light-color);
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    color: var(--heading-color);
}

a {
    color: var(--primary-color);
    text-decoration: none;
}

a:hover {
    color: var(--primary-hover-color);
    text-decoration: underline;
}

/* =================================================================
   Header
   ================================================================= */
header .bg-primary-custom {
    background-color: var(--primary-color);
}

header .bg-secondary-custom {
    background-color: var(--background-color);
    border-bottom: 1px solid var(--border-color);
    color: var(--text-light-color) !important;
}

header .bg-secondary-custom .breadcrumb a {
    color: var(--text-light-color);
}

header .bg-secondary-custom .breadcrumb .active {
    color: var(--text-color);
}

header .bg-secondary-custom .form-control {
    background-color: #FFF;
}

/* =================================================================
   Main Content & Cards
   ================================================================= */
.card {
    background-color: var(--background-color);
    border: 1px solid var(--border-color);
    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
    border-radius: 0.5rem;
    transition: box-shadow 0.3s ease-in-out;
}

.card:hover {
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
}

.card-title a {
    color: var(--heading-color);
    text-decoration: none;
}

.card-title a:hover {
    color: var(--primary-color);
}

.card-header {
    background-color: var(--background-light-color);
    border-bottom: 1px solid var(--border-color);
    font-weight: 600;
}

/* =================================================================
   Buttons & Forms
   ================================================================= */
.btn-primary-custom {
  background-color: var(--primary-color); 
  border-color: var(--primary-color);
  color: white;
}

.btn-primary-custom:hover {
  background-color: var(--primary-hover-color); 
  border-color: var(--primary-hover-color);
  color: white;
}

/* =================================================================
   Specific Sections
   ================================================================= */
.hero-section {
    background-color: var(--background-color);
    border-radius: 0.5rem;
}

.homepage-text {
    color: var(--homepage-text-color);
}

/* =================================================================
   Footer
   ================================================================= */
footer {
    background-color: var(--footer-background-color);
    color: var(--footer-text-color);
}

footer h5 {
    color: var(--footer-text-color);
    opacity: 0.9;
}

footer a {
    color: var(--footer-text-color);
    opacity: 0.7;
}

footer a:hover {
    opacity: 1;
}