/* Lodging Department Styles - Using Theme CSS Variables */

/* Text colors that work with theme backgrounds */
.lodging-heading {
    color: var(--theme-primary, #6B4423);
}

.lodging-text {
    color: var(--theme-text-primary, #4A4540);
}

.lodging-text-muted {
    color: var(--theme-text-secondary, #6B6560);
}

.lodging-icon {
    color: var(--theme-secondary, #7C9070);
}

/* Cards with proper contrast - use theme variables */
.lodging-card {
    background-color: var(--theme-card-bg, #FFFFFF);
    border: 1px solid var(--theme-card-border, #DEE2E6);
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}

.lodging-card .card-header {
    background-color: var(--theme-secondary, #7C9070);
    color: var(--theme-btn-primary-text, #FFFFFF);
    border: none;
}

.lodging-card h1, .lodging-card h2, .lodging-card h3, 
.lodging-card h4, .lodging-card h5, .lodging-card h6,
.lodging-card p, .lodging-card td, .lodging-card th,
.lodging-card label, .lodging-card strong,
.lodging-card .display-4, .lodging-card .display-5 {
    color: var(--theme-text-primary, #4A4540);
}

.lodging-card .text-body-secondary,
.lodging-card small {
    color: var(--theme-text-secondary, #6B6560);
}

/* List group items inside lodging cards */
.lodging-card .list-group-item {
    background-color: var(--theme-card-bg, #FFFFFF);
    border-color: var(--theme-card-border, #DEE2E6);
    color: var(--theme-text-primary, #4A4540);
}

.lodging-card .list-group-item:hover,
.lodging-card .list-group-item-action:hover {
    background-color: var(--theme-surface-hover, #F1F3F5);
    color: var(--theme-text-primary, #4A4540);
}

.lodging-card .list-group-item h6,
.lodging-card .list-group-item p,
.lodging-card .list-group-item span:not(.badge) {
    color: var(--theme-text-primary, #4A4540);
}

.lodging-card .list-group-item small,
.lodging-card .list-group-item .text-body-secondary {
    color: var(--theme-text-secondary, #6B6560);
}

/* Table styling */
.lodging-table thead {
    background-color: var(--theme-table-header-bg, #4A4540);
}

.lodging-table th {
    color: var(--theme-table-header-text, #FFFFFF);
}

.lodging-table tbody tr:nth-of-type(odd) {
    background-color: var(--theme-table-stripe-bg, #F8F9FA);
}

/* Stat cards */
.lodging-stat-card {
    background-color: var(--theme-card-bg, #FFFFFF);
    border: 1px solid var(--theme-card-border, #DEE2E6);
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}

.lodging-stat-card h4,
.lodging-stat-card .display-4,
.lodging-stat-card .display-5 {
    color: var(--theme-primary, #6B4423);
}

/* Buttons - use theme variables */
.btn-lodging-primary {
    background-color: var(--theme-btn-primary-bg, #7C9070);
    border-color: var(--theme-btn-primary-bg, #7C9070);
    color: var(--theme-btn-primary-text, #FFFFFF);
}

.btn-lodging-primary:hover {
    background-color: var(--theme-secondary-dark, #5C7050);
    border-color: var(--theme-secondary-dark, #5C7050);
    color: var(--theme-btn-primary-text, #FFFFFF);
}

/* Icons in lodging cards */
.lodging-card .text-success,
.lodging-card i.text-success {
    color: var(--theme-secondary, #7C9070) !important;
}

/* Hero sections with dark backgrounds */
.lodging-hero {
    background: linear-gradient(135deg, var(--theme-secondary, #7C9070) 0%, var(--theme-secondary-dark, #5C7050) 100%);
    color: var(--theme-bg-secondary, #F5F0E6);
}

.lodging-hero h1, .lodging-hero h2, .lodging-hero h3,
.lodging-hero p, .lodging-hero .lead {
    color: var(--theme-bg-secondary, #F5F0E6);
}

/* Dark section styling - cream text on dark backgrounds */
.lodging-section-dark {
    background-color: var(--theme-nav-bg, #2D3A2D);
    color: var(--theme-nav-text, #F5F0E6);
}

.lodging-section-dark h1, .lodging-section-dark h2, .lodging-section-dark h3,
.lodging-section-dark h4, .lodging-section-dark h5, .lodging-section-dark h6,
.lodging-section-dark p, .lodging-section-dark label {
    color: var(--theme-nav-text, #F5F0E6);
}

/* Sage background sections - cream text */
.lodging-section-sage {
    background-color: var(--theme-secondary, #7C9070);
    color: var(--theme-bg-secondary, #F5F0E6);
}

.lodging-section-sage h1, .lodging-section-sage h2, .lodging-section-sage h3,
.lodging-section-sage h4, .lodging-section-sage h5, .lodging-section-sage h6,
.lodging-section-sage p, .lodging-section-sage label {
    color: var(--theme-bg-secondary, #F5F0E6);
}

/* Ensure icons on dark backgrounds are visible */
.lodging-section-dark .lodging-icon,
.lodging-section-sage .lodging-icon {
    color: var(--theme-bg-secondary, #F5F0E6);
}

/* Override for themed pages - ensure text readable on dark theme backgrounds */
[data-bs-theme="nature"] .lodging-heading,
[data-bs-theme="nature"] .lodging-text {
    color: inherit;
}

[data-bs-theme="nature"] .lodging-card h1,
[data-bs-theme="nature"] .lodging-card h2,
[data-bs-theme="nature"] .lodging-card h3,
[data-bs-theme="nature"] .lodging-card h4,
[data-bs-theme="nature"] .lodging-card h5,
[data-bs-theme="nature"] .lodging-card h6,
[data-bs-theme="nature"] .lodging-card p,
[data-bs-theme="nature"] .lodging-card td,
[data-bs-theme="nature"] .lodging-card th,
[data-bs-theme="nature"] .lodging-card label,
[data-bs-theme="nature"] .lodging-card strong {
    color: var(--theme-primary, #6B4423);
}

/* Page header styling - use theme-appropriate colors */
.lodging-page-header h1 {
    color: var(--bs-heading-color, var(--theme-bg-secondary, #F5F0E6));
}

/* Badge styling */
.badge-lodging {
    background-color: var(--theme-secondary, #7C9070);
    color: var(--theme-text-light, #FFFFFF);
}

/* Property type badges */
/* Note: rgba uses --theme-secondary (#7C9070 = rgb(124,144,112)) at 20% opacity */
.property-type-badge {
    background-color: rgba(124, 144, 112, 0.2);
    color: var(--theme-primary, #6B4423);
    border: 1px solid var(--theme-secondary, #7C9070);
}

/* Rating stars */
.lodging-stars {
    color: var(--theme-warning, #F5A623);
}

/* Price display */
.lodging-price {
    color: var(--theme-primary, #6B4423);
    font-weight: bold;
}

/* Search/filter cards */
.lodging-filter-card {
    background-color: var(--theme-bg-secondary, #F5F0E6);
    border: 1px solid var(--theme-card-border, #DEE2E6);
}

/* Empty state styling */
.lodging-empty-state {
    color: var(--theme-text-secondary, #6B6560);
    text-align: center;
    padding: 3rem;
}

.lodging-empty-state i {
    color: var(--theme-secondary, #7C9070);
    opacity: 0.5;
}

/* Holler theme compatibility - map to theme variables */
.bg-holler-cream {
    background-color: var(--theme-bg-secondary, #F5F0E6) !important;
}

.btn-holler-sage {
    background-color: var(--theme-secondary, #7C9070) !important;
    border-color: var(--theme-secondary, #7C9070) !important;
    color: var(--theme-btn-primary-text, #FFFFFF) !important;
}

.btn-holler-sage:hover {
    background-color: var(--theme-secondary-dark, #5C7050) !important;
    border-color: var(--theme-secondary-dark, #5C7050) !important;
    color: var(--theme-btn-primary-text, #FFFFFF) !important;
}

/* Card footer with cream background */
.card-footer.bg-holler-cream {
    background-color: var(--theme-bg-secondary, #F5F0E6) !important;
    color: var(--theme-text-primary, #4A4540);
}

/* Text contrast helper for cream backgrounds */
.text-contrast {
    color: var(--theme-text-primary, #4A4540);
}
