body { background-color: var(--bg-color); }

/* Global Color Overrides */
h1, h2, h3, h4, h5, h6 { color: var(--theme-color); }
a { color: var(--theme-color); text-decoration: none; }
a:hover { color: var(--theme-color); filter: brightness(1.2); text-decoration: underline; }

/* Component Overrides */
.navbar { background-color: var(--theme-color) !important; }
.navbar-dark .navbar-nav .nav-link { color: rgba(255,255,255,.75); }
.navbar-dark .navbar-nav .nav-link:hover { color: rgba(255,255,255,1); }
.navbar-brand { color: #fff !important; }
.btn-primary { background-color: var(--theme-color) !important; border-color: var(--theme-color) !important; }
.btn-outline-primary { color: var(--theme-color) !important; border-color: var(--theme-color) !important; }
.btn-outline-primary:hover, .btn-outline-primary.active, .btn-outline-primary:active { 
    background-color: var(--theme-color) !important; 
    color: #fff !important; 
    box-shadow: none !important;
}

/* Specific styling for the directory buttons in active state (to be less jarring) */
.btn-group .btn-outline-primary.active {
    background-color: rgba(18, 30, 73, 0.18) !important; /* Slightly darkened mix */
    color: var(--theme-color) !important;
    font-weight: bold;
    box-shadow: none !important;
}

.btn-link { color: var(--theme-color) !important; }
.btn-link:hover { color: var(--theme-color) !important; filter: brightness(1.2) !important; }

/* Buttons that should match theme but might use dark/other classes */
.btn-dark { background-color: var(--theme-color) !important; border-color: var(--theme-color) !important; }
.btn-outline-dark { color: var(--theme-color) !important; border-color: var(--theme-color) !important; }
.btn-outline-dark:hover, .btn-outline-dark.active, .btn-outline-dark:active { 
    background-color: var(--theme-color) !important; 
    color: #fff !important; 
}

.card-header.bg-primary, .card-header.bg-dark { background-color: var(--theme-color) !important; color: #fff !important; }
.card-footer {background-color:#e2e2e2}

.breadcrumb-item a { color: var(--theme-color) !important; text-decoration: none; }
.breadcrumb-item a:hover { text-decoration: underline; }

.list-group-item-action:hover { border-left: 4px solid var(--theme-color); }
.recent-obits .card { margin-bottom: 1rem; }

/* Table Headers */
.table-dark { --bs-table-bg: var(--theme-color) !important; }
.site_footer_msg {
    margin-top:50px;border-top:1px dotted #ccc;border-bottom:1px dotted #ccc;
    padding:15px 10px 0px 10px;text-align:center;font-size:.9rem;color:#777;
}
/* Badges */
.badge { background-color: var(--theme-color) !important; }
