/* Dynamic Theme - Generated from Database Settings */
:root {
/* Primary Colors */
--primary:
#1a365d;
--primary-light:
#2d4a7c;
--primary-dark:
#0f2341;
--primary-rgb:
26,
54,
93;

/* Accent Colors */
--accent:
#d4a574;
--accent-light:
#e8c9a8;
--accent-dark:
#b8864a;
--accent-rgb:
212,
165,
116;

/* Gradients using dynamic colors */
--gradient-primary: linear-gradient(135deg, var(--primary) 0%, var(--primary-light) 100%);
--gradient-gold: linear-gradient(135deg, var(--accent) 0%, var(--accent-light) 100%);
}

/* Override button colors with dynamic primary */
.btn-primary {
background: var(--gradient-primary) !important;
border-color: var(--primary) !important;
}

.btn-primary:hover {
background: var(--primary-dark) !important;
border-color: var(--primary-dark) !important;
}

.btn-outline-primary {
border-color: var(--primary) !important;
color: var(--primary) !important;
}

.btn-outline-primary:hover {
background: var(--primary) !important;
color: white !important;
}

/* Accent buttons */
.btn-accent {
background: var(--gradient-gold) !important;
}

.btn-accent:hover {
background: var(--accent-dark) !important;
}

/* Form focus states */
.form-control:focus,
.form-select:focus {
border-color: var(--primary) !important;
box-shadow: 0 0 0 3px rgba(var(--primary-rgb), 0.1) !important;
}

/* Links */
a {
color: var(--primary);
}

a:hover {
color: var(--primary-light);
}

/* Navbar brand */
.navbar-brand {
color: var(--primary) !important;
}

.navbar-brand span {
color: var(--accent) !important;
}

/* Navigation active states */
.nav-link.active,
.nav-link:hover {
color: var(--primary) !important;
}

/* Sidebar accent */
.sidebar-menu a:hover,
.sidebar-menu a.active {
border-left-color: var(--accent) !important;
}

.sidebar-logo span {
color: var(--accent) !important;
}

/* Stats and badges with primary color */
.stat-icon.primary {
background: rgba(var(--primary-rgb), 0.1) !important;
color: var(--primary) !important;
}

.badge-primary {
background: rgba(var(--primary-rgb), 0.1) !important;
color: var(--primary) !important;
}

/* Avatar placeholder */
.avatar-placeholder {
background: var(--gradient-primary) !important;
}

/* Accent text */
.text-accent {
color: var(--accent) !important;
}

.text-primary {
color: var(--primary) !important;
}

/* Room card accents */
.room-card-badge {
background: var(--accent) !important;
}

.room-card-price strong {
color: var(--primary) !important;
}

/* Hero section */
.hero h1 span {
color: var(--accent) !important;
}

/* Background utilities */
.bg-primary {
background: var(--primary) !important;
}

.bg-accent {
background: var(--accent) !important;
}

.bg-gradient-primary {
background: var(--gradient-primary) !important;
}

/* Dark background contrast: force white text on all dark-bg containers */
.bg-primary,
.bg-gradient-primary {
color: #fff;
}

.bg-primary h1, .bg-primary h2, .bg-primary h3,
.bg-primary h4, .bg-primary h5, .bg-primary h6,
.bg-gradient-primary h1, .bg-gradient-primary h2, .bg-gradient-primary h3,
.bg-gradient-primary h4, .bg-gradient-primary h5, .bg-gradient-primary h6 {
color: #fff;
}

.bg-primary p, .bg-primary span, .bg-primary label,
.bg-gradient-primary p, .bg-gradient-primary span, .bg-gradient-primary label {
color: rgba(255, 255, 255, 0.9);
}

.bg-primary i, .bg-gradient-primary i {
color: rgba(255, 255, 255, 0.9);
}

.card > .card-header.bg-primary,
.card > .card-header.bg-primary h1,
.card > .card-header.bg-primary h2,
.card > .card-header.bg-primary h3,
.card > .card-header.bg-primary h4,
.card > .card-header.bg-primary h5,
.card > .card-header.bg-primary h6,
.card > .card-header.bg-primary i {
color: #fff !important;
}