/* Centralized Multi-Theme Engine System CSS */

/* Background Utilities */
.bg-theme-primary { background-color: var(--color-primary) !important; }
.bg-theme-primary-dark { background-color: var(--color-primary-dark) !important; }
.bg-theme-primary-light { background-color: var(--color-primary-light) !important; }
.bg-theme-secondary { background-color: var(--color-secondary) !important; }
.bg-theme-accent { background-color: var(--color-accent) !important; }
.bg-theme-background { background-color: var(--color-background) !important; }
.bg-theme-section { background-color: var(--color-section-background) !important; }
.bg-theme-card { background-color: var(--color-card-bg, #FFFFFF) !important; }
.bg-theme-header { background-color: var(--color-header-bg, var(--color-primary-dark)) !important; }
.bg-theme-footer { background-color: var(--color-footer-bg, #0A192F) !important; }

/* Text Color Utilities */
.text-theme-heading { color: var(--color-heading) !important; }
.text-theme-primary { color: var(--color-primary) !important; }
.text-theme-primary-dark { color: var(--color-primary-dark) !important; }
.text-theme-secondary { color: var(--color-secondary) !important; }
.text-theme-accent { color: var(--color-accent) !important; }
.text-theme-body { color: var(--color-text) !important; }
.text-theme-muted { color: var(--color-muted) !important; }

/* Border Color Utilities */
.border-theme { border-color: var(--color-border) !important; }
.border-theme-primary { border-color: var(--color-primary) !important; }
.border-theme-light { border-color: var(--color-primary-light) !important; }

/* Button Components */
.btn-theme-primary {
    background-color: var(--color-primary) !important;
    color: var(--color-secondary) !important;
    transition: all 0.2s ease-in-out;
}
.btn-theme-primary:hover {
    background-color: var(--color-primary-dark) !important;
}

.btn-theme-secondary {
    background-color: var(--color-primary-light) !important;
    color: var(--color-primary) !important;
    border: 1px solid var(--color-border) !important;
    transition: all 0.2s ease-in-out;
}
.btn-theme-secondary:hover {
    background-color: var(--color-primary) !important;
    color: var(--color-secondary) !important;
}

.btn-theme-outline {
    background-color: transparent !important;
    color: var(--color-primary) !important;
    border: 1px solid var(--color-primary) !important;
    transition: all 0.2s ease-in-out;
}
.btn-theme-outline:hover {
    background-color: var(--color-primary) !important;
    color: var(--color-secondary) !important;
}

/* Badge & Tag Components */
.badge-theme {
    background-color: var(--color-primary-light) !important;
    color: var(--color-primary) !important;
    border: 1px solid var(--color-border) !important;
}

.badge-theme-solid {
    background-color: var(--color-primary) !important;
    color: var(--color-secondary) !important;
}

.badge-theme-accent {
    background-color: var(--color-accent) !important;
    color: var(--color-secondary) !important;
}

/* Card & Container Components */
.theme-card {
    background-color: var(--color-card-bg, #FFFFFF) !important;
    border: 1px solid var(--color-border) !important;
    transition: all 0.25s ease-in-out;
}
.theme-card:hover {
    border-color: var(--color-primary) !important;
    box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.08);
}

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