
/* Dynamic Theme CSS - Generated from config.json */
:root {
    --theme-primary: #DC143C;
    --theme-primary-hover: #B01030;
    --theme-primary-dark: #800020;
    --theme-primary-rgb: 220, 20, 60;
}

/* Update existing primary color references */
.btn-primary {
    background-color: var(--theme-primary) !important;
    border-color: var(--theme-primary) !important;
}

.btn-primary:hover {
    background-color: var(--theme-primary-hover) !important;
    border-color: var(--theme-primary-hover) !important;
}

.btn-primary:focus, .btn-primary:active {
    background-color: var(--theme-primary-dark) !important;
    border-color: var(--theme-primary-dark) !important;
    box-shadow: 0 0 0 0.2rem rgba(var(--theme-primary-rgb), 0.25) !important;
}

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

.btn-outline-primary:hover {
    background-color: var(--theme-primary) !important;
    border-color: var(--theme-primary) !important;
}

.btn-outline-primary:focus, .btn-outline-primary:active {
    background-color: var(--theme-primary-hover) !important;
    border-color: var(--theme-primary-hover) !important;
    box-shadow: 0 0 0 0.2rem rgba(var(--theme-primary-rgb), 0.25) !important;
}

/* Badge styling */
.badge.bg-primary {
    background-color: var(--theme-primary) !important;
}

/* Navbar brand and primary text */
.navbar-brand {
    color: var(--theme-primary) !important;
}

/* Logo gradient */
.square-logo {
    background: linear-gradient(135deg, var(--theme-primary), var(--theme-primary-dark)) !important;
}

/* Links */
a {
    color: var(--theme-primary);
}

a:hover {
    color: var(--theme-primary-hover);
}

/* Progress bars */
.progress-bar {
    background-color: var(--theme-primary) !important;
}

/* Form controls focus */
.form-control:focus {
    border-color: var(--theme-primary) !important;
    box-shadow: 0 0 0 0.2rem rgba(var(--theme-primary-rgb), 0.25) !important;
}

/* Pagination */
.page-link {
    color: var(--theme-primary) !important;
}

.page-link:hover {
    color: var(--theme-primary-hover) !important;
    background-color: rgba(var(--theme-primary-rgb), 0.1) !important;
    border-color: var(--theme-primary) !important;
}

.page-item.active .page-link {
    background-color: var(--theme-primary) !important;
    border-color: var(--theme-primary) !important;
    color: white !important;
}

/* Fluid Player skip button */
.fluid_video_wrapper .fluid_ad_playing .fluid_skip_button {
    background-color: rgba(var(--theme-primary-rgb), 0.9) !important;
}

.fluid_video_wrapper .fluid_ad_playing .fluid_skip_button:hover {
    background-color: var(--theme-primary) !important;
}

/* Custom primary accent variable update */
:root {
    --primary-accent: var(--theme-primary);
}

/* Text links */
.text-primary {
    color: var(--theme-primary) !important;
}

/* Headers with primary styling */
h1, h2, h3, h4, h5, h6 {
    color: var(--text-primary);
}

h1.text-primary, h2.text-primary, h3.text-primary, 
h4.text-primary, h5.text-primary, h6.text-primary {
    color: var(--theme-primary) !important;
}

/* Sponsor and model page headers */
.display-4, .display-5, .display-6 {
    color: var(--text-primary);
}

/* Video info text */
.video-info .text-muted {
    color: var(--text-secondary) !important;
}

/* Console styling - keep blue for debug console */
%cVideoStream Platform {
    color: var(--theme-primary) !important;
}

/* Sponsor links */
.sponsor-link {
    color: var(--theme-primary) !important;
}

.sponsor-link:hover {
    color: var(--theme-primary-hover) !important;
}

/* Category, model, sponsor listing cards */
.card-title {
    color: var(--text-primary) !important;
}

.card-text {
    color: var(--text-secondary) !important;
}

/* Alert styling */
.alert-info {
    background-color: rgba(var(--theme-primary-rgb), 0.1) !important;
    border-color: var(--theme-primary) !important;
    color: var(--theme-primary) !important;
}

/* Focus states for forms */
.form-select:focus {
    border-color: var(--theme-primary) !important;
    box-shadow: 0 0 0 0.2rem rgba(var(--theme-primary-rgb), 0.25) !important;
}

.form-check-input:checked {
    background-color: var(--theme-primary) !important;
    border-color: var(--theme-primary) !important;
}

/* Text selection highlighting */
::selection {
    background-color: rgba(var(--theme-primary-rgb), 0.3);
    color: var(--text-primary);
}

::-moz-selection {
    background-color: rgba(var(--theme-primary-rgb), 0.3);
    color: var(--text-primary);
}

/* Bootstrap component overrides */
.btn-primary {
    background-color: var(--theme-primary) !important;
    border-color: var(--theme-primary) !important;
    color: white !important;
}

.btn-primary:hover {
    background-color: var(--theme-primary-hover) !important;
    border-color: var(--theme-primary-hover) !important;
}

.btn-primary:focus, .btn-primary.focus {
    box-shadow: 0 0 0 0.2rem rgba(var(--theme-primary-rgb), 0.5) !important;
}

.btn-primary:not(:disabled):not(.disabled):active {
    background-color: var(--theme-primary-dark) !important;
    border-color: var(--theme-primary-dark) !important;
}

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

.btn-outline-primary:hover {
    background-color: var(--theme-primary) !important;
    border-color: var(--theme-primary) !important;
    color: white !important;
}

/* Bootstrap links */
a {
    color: var(--theme-primary) !important;
}

a:hover {
    color: var(--theme-primary-hover) !important;
}

/* Bootstrap navbar and nav components */
.navbar-brand {
    color: var(--theme-primary) !important;
}

.nav-link.active {
    color: var(--theme-primary) !important;
}

.nav-link:hover {
    color: var(--theme-primary-hover) !important;
}

/* Bootstrap badges */
.badge-primary {
    background-color: var(--theme-primary) !important;
}

/* Bootstrap list groups */
.list-group-item.active {
    background-color: var(--theme-primary) !important;
    border-color: var(--theme-primary) !important;
}

/* Bootstrap progress bars */
.progress-bar {
    background-color: var(--theme-primary) !important;
}

/* Bootstrap dropdowns */
.dropdown-item.active, .dropdown-item:active {
    background-color: var(--theme-primary) !important;
}

/* Bootstrap pagination */
.page-link {
    color: var(--theme-primary) !important;
}

.page-item.active .page-link {
    background-color: var(--theme-primary) !important;
    border-color: var(--theme-primary) !important;
    color: white !important;
}

.page-link:hover {
    color: var(--theme-primary-hover) !important;
}

/* Video grid card title override */
.video-grid .card-title a {
    color: var(--text-primary) !important;
}

.video-grid .card-title a:hover {
    color: var(--theme-primary) !important;
}
