/* ==================== DARK MODE STYLES ==================== */

/* CSS Variables for theming */
:root {
    --bg-primary: #ffffff;
    --bg-secondary: #f5f5f5;
    --bg-tertiary: #fafafa;
    --text-primary: #333333;
    --text-secondary: #666666;
    --text-tertiary: #999999;
    --border-color: #e0e0e0;
    --card-bg: #ffffff;
    --card-shadow: rgba(0, 0, 0, 0.1);
    --input-bg: #ffffff;
    --input-border: #ddd;
    --modal-bg: rgba(0, 0, 0, 0.5);
    --header-bg: linear-gradient(135deg, #4CAF50 0%, #388E3C 100%);
    --nav-bg: #ffffff;
    --nav-border: #e0e0e0;
}

body.dark-mode {
    --bg-primary: #121212 !important;
    --bg-secondary: #1e1e1e !important;
    --bg-tertiary: #2a2a2a !important;
    --text-primary: #f5f5f5 !important;
    --text-secondary: #d0d0d0 !important;
    --text-tertiary: #a8a8a8 !important;
    --border-color: #3a3a3a !important;
    --card-bg: #1e1e1e !important;
    --card-shadow: rgba(0, 0, 0, 0.5) !important;
    --input-bg: #2a2a2a !important;
    --input-border: #4a4a4a !important;
    --modal-bg: rgba(0, 0, 0, 0.85) !important;
    --header-bg: linear-gradient(135deg, #66BB6A 0%, #4CAF50 100%) !important;
    --nav-bg: #1e1e1e !important;
    --nav-border: #3a3a3a !important;
}

/* ==================== LOADING SCREEN - DARK MODE ==================== */

/* Dark mode loading screen: Black background with green accents */
body.dark-mode .loading-screen,
html.dark-mode .loading-screen {
    background: linear-gradient(to bottom, #1a1a1a, #000000) !important;
}

body.dark-mode .loading-text,
html.dark-mode .loading-text {
    color: #66BB6A !important;
}

/* Dark mode logo colors: Change SVG to green */
body.dark-mode .loading-logo-outline,
html.dark-mode .loading-logo-outline {
    filter: brightness(0) saturate(100%) invert(62%) sepia(89%) saturate(1686%) hue-rotate(359deg) brightness(102%) contrast(101%) !important;
}

body.dark-mode .loading-logo-fill,
html.dark-mode .loading-logo-fill {
    filter: brightness(0) saturate(100%) invert(62%) sepia(89%) saturate(1686%) hue-rotate(359deg) brightness(102%) contrast(101%) !important;
}

/* Dark mode glow effect: Green glow instead of white */
body.dark-mode .loading-logo-outline.glow,
html.dark-mode .loading-logo-outline.glow {
    animation: logoEntrance 0.6s ease-out, glowSweepDark 0.6s ease-in-out 0s !important;
}

@keyframes glowSweepDark {
    0% {
        filter: brightness(0) saturate(100%) invert(62%) sepia(89%) saturate(1686%) hue-rotate(359deg) brightness(102%) contrast(101%) drop-shadow(0 -30px 20px rgba(102, 187, 106, 0));
    }
    50% {
        filter: brightness(0) saturate(100%) invert(62%) sepia(89%) saturate(1686%) hue-rotate(359deg) brightness(102%) contrast(101%) drop-shadow(0 0 25px rgba(102, 187, 106, 1)) drop-shadow(0 0 40px rgba(102, 187, 106, 0.9)) drop-shadow(0 0 60px rgba(102, 187, 106, 0.7));
    }
    100% {
        filter: brightness(0) saturate(100%) invert(62%) sepia(89%) saturate(1686%) hue-rotate(359deg) brightness(102%) contrast(101%) drop-shadow(0 30px 20px rgba(102, 187, 106, 0));
    }
}

/* Dark Mode Toggle Button - Diseño consistente con otros botones */
.dark-mode-toggle {
    position: absolute;
    left: 15px;
    background: #4CAF50;
    border: 2px solid white;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
    z-index: 10;
}

.dark-mode-toggle:hover {
    background: #388E3C;
    transform: scale(1.05);
}

.dark-mode-toggle svg {
    color: white;
    transition: opacity 0.3s ease;
}

body.dark-mode .dark-mode-toggle .sun-icon {
    display: none;
}

body.dark-mode .dark-mode-toggle .moon-icon {
    display: block !important;
}

/* ==================== CORE ELEMENTS ==================== */

body.dark-mode {
    background-color: #121212 !important;
    color: #f5f5f5 !important;
}

body.dark-mode .content-section {
    background-color: #121212 !important;
}

/* ==================== NAVIGATION ==================== */

body.dark-mode .navigation-bar {
    background-color: #1e1e1e !important;
    border-bottom-color: #3a3a3a !important;
}

body.dark-mode .nav-btn {
    color: #d0d0d0 !important;
}

body.dark-mode .nav-btn.active {
    color: #66BB6A !important;
    border-bottom-color: #66BB6A !important;
}

body.dark-mode .nav-btn:hover {
    color: #81C784 !important;
}

/* ==================== PRODUCT CARDS ==================== */

body.dark-mode .product-card {
    background-color: #1e1e1e !important;
    border-color: #3a3a3a !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.5) !important;
    -webkit-tap-highlight-color: transparent !important;
    -webkit-touch-callout: none !important;
}

body.dark-mode .product-card:hover {
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.7) !important;
    border-color: #4a4a4a !important;
}

body.dark-mode .product-name {
    color: #f5f5f5 !important;
}

body.dark-mode .product-description {
    color: #d0d0d0 !important;
}

body.dark-mode .product-brand {
    color: #a8a8a8 !important;
}

body.dark-mode .product-price {
    color: #f5f5f5 !important;
}

/* BCV Prices and Badges */
body.dark-mode .bcv-price,
body.dark-mode .cart-total-bcv,
body.dark-mode .mobile-cart-total-bcv,
body.dark-mode .decant-bcv-price {
    color: #F57C00 !important;
}

body.dark-mode .promo-badge,
body.dark-mode .discount-badge {
    color: #121212 !important;
    background-color: #66BB6A !important;
}

/* ==================== SEARCH AND FILTERS ==================== */

/* User Controls Container */
body.dark-mode .user-controls-container {
    background-color: #1e1e1e !important;
    border-bottom-color: #3a3a3a !important;
}

/* Catalog Search Bar - Inverted colors in dark mode */
body.dark-mode .catalog-search-bar {
    background-color: #2a2a2a !important;
    border-color: #4a4a4a !important;
}

body.dark-mode .catalog-search-bar:focus-within {
    border-color: #66BB6A !important;
    box-shadow: 0 3px 10px rgba(102, 187, 106, 0.2) !important;
}

body.dark-mode .catalog-search-input {
    background-color: transparent !important;
    color: #f5f5f5 !important;
}

body.dark-mode .catalog-search-input::placeholder {
    color: #a8a8a8 !important;
}

body.dark-mode .catalog-search-icon {
    color: #a8a8a8 !important;
}

/* View Toggle - Inverted colors in dark mode */
body.dark-mode .view-toggle {
    background-color: #2a2a2a !important;
    border-color: #4a4a4a !important;
}

body.dark-mode .view-toggle-btn {
    background-color: #2a2a2a !important;
    color: #d0d0d0 !important;
}

body.dark-mode .view-toggle-btn:hover {
    background-color: #3a3a3a !important;
    color: #f5f5f5 !important;
}

body.dark-mode .view-toggle-btn.active {
    background-color: #66BB6A !important;
    color: #121212 !important;
}

body.dark-mode .view-toggle-btn svg {
    color: inherit !important;
}

/* Sort Select - Inverted colors in dark mode */
body.dark-mode .sort-select {
    background-color: #2a2a2a !important;
    border-color: #4a4a4a !important;
    color: #f5f5f5 !important;
}

body.dark-mode .sort-select:hover {
    border-color: #66BB6A !important;
}

body.dark-mode .sort-select:focus {
    border-color: #66BB6A !important;
    box-shadow: 0 0 0 3px rgba(102, 187, 106, 0.15) !important;
}

body.dark-mode .sort-select option {
    background-color: #2a2a2a !important;
    color: #f5f5f5 !important;
}

/* Other Search Bars */
body.dark-mode .search-sort-container,
body.dark-mode .search-container {
    background-color: #1e1e1e !important;
    border-color: #3a3a3a !important;
}

body.dark-mode .search-input {
    background-color: #2a2a2a !important;
    border-color: #4a4a4a !important;
    color: #f5f5f5 !important;
}

body.dark-mode .search-input::placeholder {
    color: #a8a8a8 !important;
}

/* ==================== SIDEBAR FILTERS ==================== */

body.dark-mode .sidebar,
body.dark-mode .filter-sidebar {
    background-color: #1e1e1e !important;
    border-color: #3a3a3a !important;
}

body.dark-mode .filter-sidebar .filter-header {
    background: #1e1e1e !important;
    color: #f5f5f5 !important;
}

body.dark-mode .filter-sidebar .filter-section {
    background: #1e1e1e !important;
}

body.dark-mode .filter-sidebar #dynamicFilters {
    background: #1e1e1e !important;
}

body.dark-mode .filter-section {
    background-color: #1e1e1e !important;
}

body.dark-mode .filter-section h3,
body.dark-mode .filter-section h4 {
    color: #f5f5f5 !important;
    border-bottom-color: #3a3a3a !important;
}

body.dark-mode .filter-option label {
    color: #f5f5f5 !important;
}

body.dark-mode .filter-option input[type="checkbox"] {
    border-color: #4a4a4a !important;
    background-color: #2a2a2a !important;
}

body.dark-mode .filter-option input[type="checkbox"]:checked {
    background-color: #66BB6A !important;
    border-color: #66BB6A !important;
}

body.dark-mode .price-inputs input {
    background-color: #2a2a2a !important;
    border-color: #4a4a4a !important;
    color: #f5f5f5 !important;
}

body.dark-mode .price-inputs input::placeholder {
    color: #a8a8a8 !important;
}

body.dark-mode .apply-filters-btn {
    background-color: #66BB6A !important;
    color: #121212 !important;
}

body.dark-mode .apply-filters-btn:hover {
    background-color: #81C784 !important;
}

body.dark-mode .clear-filters-btn {
    background-color: #2a2a2a !important;
    color: #f5f5f5 !important;
    border-color: #4a4a4a !important;
}

body.dark-mode .clear-filters-btn:hover {
    background-color: #3a3a3a !important;
}

body.dark-mode .filter-header h2,
body.dark-mode .filter-header h3 {
    color: #f5f5f5 !important;
}

body.dark-mode .close-filters-btn {
    color: #f5f5f5 !important;
    background-color: transparent !important;
}

body.dark-mode .close-filters-btn:hover {
    background-color: #2a2a2a !important;
}

/* ==================== FORMS ==================== */

body.dark-mode .form-group input,
body.dark-mode .form-group select,
body.dark-mode .form-group textarea {
    background-color: #2a2a2a !important;
    border-color: #4a4a4a !important;
    color: #f5f5f5 !important;
}

body.dark-mode .form-group input::placeholder,
body.dark-mode .form-group textarea::placeholder {
    color: #a8a8a8 !important;
}

body.dark-mode .form-group input:focus,
body.dark-mode .form-group select:focus,
body.dark-mode .form-group textarea:focus {
    border-color: #66BB6A !important;
    background-color: #2a2a2a !important;
}

body.dark-mode .form-group label {
    color: #f5f5f5 !important;
}

body.dark-mode .form-group select option {
    background-color: #2a2a2a !important;
    color: #f5f5f5 !important;
}

body.dark-mode .radio-group label,
body.dark-mode .checkbox-label {
    color: #f5f5f5 !important;
}

body.dark-mode .delivery-warning {
    background-color: rgba(102, 187, 106, 0.15) !important;
    border-color: #66BB6A !important;
    color: #f5f5f5 !important;
}

body.dark-mode .error-message {
    color: #ef5350 !important;
    background-color: rgba(239, 83, 80, 0.15) !important;
}

/* ==================== MODALS ==================== */

/* Modal Overlays */
body.dark-mode .modal,
body.dark-mode .checkout-modal,
body.dark-mode .info-modal {
    background-color: rgba(0, 0, 0, 0.85) !important;
}

/* Modal Content Backgrounds */
body.dark-mode .modal-content,
body.dark-mode .checkout-modal-content,
body.dark-mode .info-modal-content {
    background-color: #1e1e1e !important;
    border-color: #3a3a3a !important;
}

/* Modal Headers */
body.dark-mode .checkout-modal-header,
body.dark-mode .info-modal-header,
body.dark-mode .product-page-header,
body.dark-mode .category-header {
    background: linear-gradient(135deg, #66BB6A 0%, #4CAF50 100%) !important;
}

/* Modal Close Buttons */
body.dark-mode .close,
body.dark-mode .close-checkout,
body.dark-mode .close-info-modal {
    color: #f5f5f5 !important;
}

body.dark-mode .close:hover,
body.dark-mode .close-checkout:hover,
body.dark-mode .close-info-modal:hover {
    color: #ffffff !important;
    background: rgba(255, 255, 255, 0.2) !important;
}

/* Form Sections */
body.dark-mode .form-section,
body.dark-mode .datos-section,
body.dark-mode .order-summary-section {
    background-color: #2a2a2a !important;
}

body.dark-mode .form-section h3,
body.dark-mode .datos-section h3,
body.dark-mode .order-summary-section h3 {
    color: #66BB6A !important;
    border-bottom-color: #66BB6A !important;
}

/* Checkout Summary */
body.dark-mode .checkout-summary {
    background-color: #2a2a2a !important;
}

body.dark-mode .checkout-summary h3 {
    color: #f5f5f5 !important;
}

body.dark-mode .checkout-summary-item {
    background-color: #1e1e1e !important;
    border-color: #3a3a3a !important;
}

body.dark-mode .checkout-summary-item-name {
    color: #f5f5f5 !important;
}

body.dark-mode .checkout-summary-item-qty {
    color: #d0d0d0 !important;
}

body.dark-mode .checkout-summary-item-separator {
    color: #a8a8a8 !important;
}

body.dark-mode .checkout-summary-item-price {
    color: #66BB6A !important;
}

/* Checkout Total */
body.dark-mode .checkout-total {
    background: linear-gradient(135deg, #66BB6A 0%, #4CAF50 100%) !important;
    color: #121212 !important;
}

body.dark-mode .checkout-total span {
    color: #121212 !important;
}

/* Checkout Success Modal */
body.dark-mode .checkout-success {
    background-color: #1e1e1e !important;
}

body.dark-mode .checkout-success h2 {
    color: #4ade80 !important;
}

body.dark-mode .checkout-success p {
    color: #d0d0d0 !important;
}

body.dark-mode .checkout-success strong {
    color: #66BB6A !important;
}

/* Order Number Container */
body.dark-mode .order-number-container {
    background-color: #2a2a2a !important;
    border-color: #66BB6A !important;
}

body.dark-mode .order-number-container p {
    color: #f5f5f5 !important;
}

/* Contact Instructions */
body.dark-mode .contact-instructions {
    background-color: rgba(255, 193, 7, 0.15) !important;
    border-left-color: #FDD835 !important;
    color: #FDD835 !important;
}

body.dark-mode .whatsapp-hint {
    color: #a8a8a8 !important;
}

/* Info Modal Body */
body.dark-mode .info-modal-body {
    background-color: #1e1e1e !important;
}

body.dark-mode .info-modal-body li {
    color: #f5f5f5 !important;
}

body.dark-mode .info-modal-footer {
    background-color: #1e1e1e !important;
    border-top-color: #3a3a3a !important;
}

/* Bulk Edit Modal */
body.dark-mode .bulk-edit-modal,
body.dark-mode .bulk-upload-modal {
    background-color: #1e1e1e !important;
}

body.dark-mode .bulk-select-controls {
    background-color: #2a2a2a !important;
}

body.dark-mode .selected-count {
    color: #f5f5f5 !important;
}

/* Warning Messages */
body.dark-mode .warning-message {
    background-color: rgba(220, 53, 69, 0.15) !important;
    border-left-color: #dc3545 !important;
    color: #ef5350 !important;
}

body.dark-mode .warning-message .info-button {
    background-color: #dc3545 !important;
}

body.dark-mode .warning-message .info-button:hover {
    background-color: #c82333 !important;
}

/* ==================== CART ==================== */

body.dark-mode .cart-sidebar {
    background-color: #1e1e1e !important;
    border-left-color: #3a3a3a !important;
}

body.dark-mode .cart-header h3 {
    color: #f5f5f5 !important;
}

body.dark-mode .cart-item {
    background-color: #2a2a2a !important;
}

body.dark-mode .cart-item-name {
    color: #f5f5f5 !important;
}

body.dark-mode .cart-item-price {
    color: #121212 !important;
    background-color: #66BB6A !important;
}

body.dark-mode .cart-size-label {
    color: #b0b0b0 !important;
}

body.dark-mode .cart-size-selector {
    background-color: #2a2a2a !important;
    border-color: #4a4a4a !important;
    color: #f5f5f5 !important;
}

body.dark-mode .cart-size-selector:focus {
    border-color: #66BB6A !important;
    box-shadow: 0 0 0 2px rgba(102, 187, 106, 0.2) !important;
}

/* Quantity Controls - Desktop */
body.dark-mode .quantity-controls {
    background-color: #1e1e1e !important;
    border-color: #4a4a4a !important;
}

body.dark-mode .quantity-display {
    color: #f5f5f5 !important;
}

/* Quantity Controls - Mobile */
body.dark-mode .mobile-quantity-controls {
    background-color: #1e1e1e !important;
    border-color: #4a4a4a !important;
}

body.dark-mode .mobile-quantity-display {
    color: #f5f5f5 !important;
}

body.dark-mode .cart-total {
    background-color: #2a2a2a !important;
    color: #f5f5f5 !important;
}

body.dark-mode .cart-totals {
    background: #2a2a2a !important;
    border-top-color: #66BB6A !important;
}

body.dark-mode .cart-total-section h4 {
    color: #f5f5f5 !important;
}

body.dark-mode .cart-total-bs,
body.dark-mode .cart-total-promo {
    color: #f5f5f5 !important;
}

body.dark-mode .mobile-cart-totals {
    background: #2a2a2a !important;
    border-top-color: #66BB6A !important;
}

body.dark-mode .mobile-cart-total-section h4 {
    color: #f5f5f5 !important;
}

body.dark-mode .mobile-cart-total-bs,
body.dark-mode .mobile-cart-total-promo {
    color: #f5f5f5 !important;
}

body.dark-mode .mobile-cart-item {
    background-color: #1e1e1e !important;
    border-color: #3a3a3a !important;
}

body.dark-mode .mobile-cart-item-name {
    color: #f5f5f5 !important;
}

body.dark-mode .mobile-cart-item-price {
    color: #121212 !important;
    background-color: #66BB6A !important;
}

/* ==================== CONTACT SECTION ==================== */

body.dark-mode .contact-container {
    background-color: #1e1e1e !important;
}

body.dark-mode .social-button-card {
    background-color: #2a2a2a !important;
    border-color: #3a3a3a !important;
}

body.dark-mode .social-button-card:hover {
    background-color: #3a3a3a !important;
}

body.dark-mode .social-handle,
body.dark-mode .social-description {
    color: #d0d0d0 !important;
}

body.dark-mode .contact-header h2 {
    color: #f5f5f5 !important;
}

body.dark-mode .contact-header p {
    color: #d0d0d0 !important;
}

/* ==================== LOCATION SECTION ==================== */

body.dark-mode .location-card,
body.dark-mode .address-card,
body.dark-mode .hours-card {
    background-color: #1e1e1e !important;
    border-color: #3a3a3a !important;
}

body.dark-mode .location-card h3,
body.dark-mode .address-details h3,
body.dark-mode .hours-details h3 {
    color: #f5f5f5 !important;
}

body.dark-mode .location-card p,
body.dark-mode .address-details p,
body.dark-mode .hours-details p {
    color: #f5f5f5 !important;
}

body.dark-mode .address-icon,
body.dark-mode .hours-icon {
    background-color: rgba(102, 187, 106, 0.15) !important;
}

body.dark-mode .map-container {
    background-color: #1e1e1e !important;
    border-color: #3a3a3a !important;
}

body.dark-mode .map-header {
    background-color: #2a2a2a !important;
    border-bottom-color: #3a3a3a !important;
}

body.dark-mode .map-header h3 {
    color: #f5f5f5 !important;
}

/* ==================== NEWS BAR ==================== */

body.dark-mode .news-bar {
    background-color: #1e1e1e !important;
    border-bottom-color: #3a3a3a !important;
}

body.dark-mode .news-text {
    color: #f5f5f5 !important;
}

/* ==================== BUTTONS ==================== */

body.dark-mode .btn-primary,
body.dark-mode .add-to-cart-btn {
    background-color: #66BB6A !important;
    color: #121212 !important;
}

body.dark-mode .btn-primary:hover,
body.dark-mode .add-to-cart-btn:hover {
    background-color: #81C784 !important;
}

body.dark-mode .btn-secondary {
    background-color: #2a2a2a !important;
    color: #f5f5f5 !important;
    border-color: #4a4a4a !important;
}

body.dark-mode .btn-secondary:hover {
    background-color: #3a3a3a !important;
}

/* ==================== CHECKOUT SUMMARY ==================== */

body.dark-mode .checkout-summary-items {
    background-color: #2a2a2a !important;
}

body.dark-mode .checkout-summary-item {
    background-color: #1e1e1e !important;
    border-color: #3a3a3a !important;
}

body.dark-mode .checkout-summary-item-name {
    color: #f5f5f5 !important;
}

body.dark-mode .checkout-summary-item-qty {
    color: #d0d0d0 !important;
}

body.dark-mode .checkout-summary-item-price {
    color: #66BB6A !important;
}

body.dark-mode .checkout-total {
    background-color: #2a2a2a !important;
    color: #f5f5f5 !important;
}

/* ==================== MISC ==================== */

body.dark-mode hr,
body.dark-mode .divider {
    border-color: #3a3a3a !important;
}

body.dark-mode a {
    color: #66BB6A !important;
}

body.dark-mode a:hover {
    color: #81C784 !important;
}

body.dark-mode ::-webkit-scrollbar {
    background-color: #1e1e1e !important;
}

body.dark-mode ::-webkit-scrollbar-thumb {
    background-color: #3a3a3a !important;
}

body.dark-mode ::-webkit-scrollbar-thumb:hover {
    background-color: #4a4a4a !important;
}

body.dark-mode .tag,
body.dark-mode .product-tag {
    background-color: #2a2a2a !important;
    color: #f5f5f5 !important;
    border-color: #3a3a3a !important;
}

/* Smooth transitions */
body,
.product-card,
.navigation-bar,
.sidebar,
.cart-sidebar,
input,
select,
textarea,
button {
    transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease !important;
}


/* ==================== ADDITIONAL HARDCODED ELEMENTS ==================== */

/* Catalog Search Bar */
body.dark-mode .catalog-search-bar,
body.dark-mode .product-search-bar,
body.dark-mode .tag-search-bar,
body.dark-mode .news-search-bar {
    background: #2a2a2a !important;
    border-color: #4a4a4a !important;
}

body.dark-mode .catalog-search-input,
body.dark-mode .product-search-input,
body.dark-mode .tag-search-input,
body.dark-mode .news-search-input {
    background: transparent !important;
    color: #f5f5f5 !important;
}

body.dark-mode .catalog-search-input::placeholder,
body.dark-mode .product-search-input::placeholder,
body.dark-mode .tag-search-input::placeholder,
body.dark-mode .news-search-input::placeholder {
    color: #a8a8a8 !important;
}

body.dark-mode .catalog-search-icon,
body.dark-mode .product-search-icon,
body.dark-mode .tag-search-icon,
body.dark-mode .news-search-icon {
    color: #a8a8a8 !important;
}

/* View Toggle */
body.dark-mode .view-toggle,
body.dark-mode .bulk-view-toggle {
    background: #2a2a2a !important;
    border-color: #4a4a4a !important;
}

body.dark-mode .view-toggle-btn,
body.dark-mode .bulk-view-toggle-btn {
    background: #2a2a2a !important;
    color: #f5f5f5 !important;
}

body.dark-mode .view-toggle-btn.active,
body.dark-mode .bulk-view-toggle-btn.active {
    background: #66BB6A !important;
    color: #121212 !important;
}

/* Sort Select */
body.dark-mode .sort-select {
    background: #2a2a2a !important;
    border-color: #4a4a4a !important;
    color: #f5f5f5 !important;
}

/* Location Cards */
body.dark-mode .address-card,
body.dark-mode .hours-card {
    background: #1e1e1e !important;
    border-color: #3a3a3a !important;
}

body.dark-mode .address-icon,
body.dark-mode .hours-icon {
    background: rgba(102, 187, 106, 0.15) !important;
}

body.dark-mode .map-container {
    background: #1e1e1e !important;
    border-color: #3a3a3a !important;
}

/* Description Box */
body.dark-mode .description-box {
    background: #1e1e1e !important;
    border-color: #3a3a3a !important;
}

body.dark-mode .description-box h3,
body.dark-mode .description-box p {
    color: #f5f5f5 !important;
}

/* Perfume Section */
body.dark-mode .perfume-section {
    background: #1e1e1e !important;
}

/* Mobile Cart Bar */
body.dark-mode .mobile-cart-bar-button,
body.dark-mode .mobile-cart-bar-close {
    background: #2a2a2a !important;
    color: #66BB6A !important;
    border-color: #4a4a4a !important;
}

/* Admin Elements (if visible) */
body.dark-mode .analytics-card,
body.dark-mode .analytics-searches,
body.dark-mode .analytics-chart {
    background: #1e1e1e !important;
    border-color: #66BB6A !important;
}

body.dark-mode .admin-news-item,
body.dark-mode .admin-product-item,
body.dark-mode .admin-tag-item {
    background: #1e1e1e !important;
    border-color: #3a3a3a !important;
}

/* Dropdown menu dark mode */
body.dark-mode .dropdown-menu {
    background: #2a2a2a !important;
    border-color: #3a3a3a !important;
}

body.dark-mode .dropdown-item {
    background: #2a2a2a !important;
    color: #e0e0e0 !important;
}

body.dark-mode .dropdown-item:hover {
    background: #333 !important;
}

/* View toggle dark mode */
body.dark-mode .view-toggle-container {
    background: #2a2a2a !important;
}

body.dark-mode .view-toggle-btn {
    color: #999 !important;
}

body.dark-mode .view-toggle-btn.active {
    background: #3a3a3a !important;
    color: #66BB6A !important;
}

/* Bulk Product Items */
body.dark-mode .bulk-product-item {
    background: #1e1e1e !important;
    border-color: #3a3a3a !important;
}

body.dark-mode .bulk-product-item.selected {
    border-color: #66BB6A !important;
    background: rgba(102, 187, 106, 0.15) !important;
}

body.dark-mode .bulk-field-content,
body.dark-mode .global-field-content {
    background: #1e1e1e !important;
    border-color: #3a3a3a !important;
}

/* Search Results */
body.dark-mode .search-results-info {
    color: #d0d0d0 !important;
}

body.dark-mode .search-results-count {
    background: #66BB6A !important;
    color: #121212 !important;
}

/* Semantic Search Indicator */
body.dark-mode .semantic-search-indicator {
    background: rgba(102, 187, 106, 0.15) !important;
    border-color: #66BB6A !important;
    color: #f5f5f5 !important;
}

body.dark-mode .semantic-search-indicator.advanced {
    background: rgba(0, 102, 204, 0.15) !important;
    border-color: #3399ff !important;
}

body.dark-mode .semantic-search-indicator.advanced .context-info {
    background: rgba(255, 255, 255, 0.05) !important;
    border-left-color: #3399ff !important;
    color: #ccc !important;
}

body.dark-mode .semantic-text {
    color: #e0e0e0 !important;
}

body.dark-mode .semantic-text strong {
    color: #66BB6A !important;
}

body.dark-mode .semantic-search-indicator.advanced .semantic-text strong {
    color: #3399ff !important;
}

/* Modal Content */
body.dark-mode .modal-content {
    background-color: #1e1e1e !important;
    border-color: #3a3a3a !important;
}

/* Product Modal Grid Dark Mode */
body.dark-mode .product-form-center {
    border-left-color: #3a3a3a;
    border-right-color: #3a3a3a;
}

body.dark-mode .product-form-full-width {
    border-top-color: #3a3a3a;
}

body.dark-mode .product-form-left .image-upload-container {
    border-color: #3a3a3a;
    background: #2a2a2a;
}

@media (max-width: 1024px) {
    body.dark-mode .product-form-center {
        border-top-color: #3a3a3a;
        border-bottom-color: #3a3a3a;
    }
}

/* Admin Icon Button */
body.dark-mode .admin-icon-btn:hover {
    background: #2a2a2a !important;
    color: #66BB6A !important;
}

/* Toggle Switch */
body.dark-mode .toggle-switch::before {
    background-color: #f5f5f5 !important;
}

/* Autocomplete Dropdown */
body.dark-mode .autocomplete-dropdown {
    background: #1e1e1e !important;
    border-color: #3a3a3a !important;
}

body.dark-mode .autocomplete-item {
    color: #f5f5f5 !important;
}

body.dark-mode .autocomplete-item:hover {
    background: #2a2a2a !important;
}

/* Loading Overlay */
body.dark-mode .loading-overlay {
    background: rgba(18, 18, 18, 0.9) !important;
}

/* ==================== PERFUME DESCRIPTIONS & DECANTS ==================== */

/* Perfume Sections Container */
body.dark-mode .perfume-sections {
    background: rgba(102, 187, 106, 0.08) !important;
    border-color: rgba(102, 187, 106, 0.2) !important;
}

/* Perfume Section Cards */
body.dark-mode .perfume-section {
    background-color: #1e1e1e !important;
    border-color: rgba(102, 187, 106, 0.3) !important;
}

body.dark-mode .section-title {
    color: #66BB6A !important;
}

body.dark-mode .section-icon {
    color: #66BB6A !important;
}

body.dark-mode .usage-icon,
body.dark-mode .performance-icon {
    color: #66BB6A !important;
}

body.dark-mode .usage-label,
body.dark-mode .performance-label {
    color: #d0d0d0 !important;
}

/* Decant Price Boxes */
body.dark-mode .decant-price-box {
    background-color: #1e1e1e !important;
    border-color: rgba(102, 187, 106, 0.3) !important;
}

body.dark-mode .decant-size-title {
    color: #66BB6A !important;
}

body.dark-mode .decant-bottle-icon svg {
    fill: #66BB6A !important;
}

body.dark-mode .decant-total-bs,
body.dark-mode .decant-promo-price {
    color: #f5f5f5 !important;
}

/* Decant Prices Container */
body.dark-mode .decant-prices-container {
    background-color: rgba(102, 187, 106, 0.08) !important;
    border-color: rgba(102, 187, 106, 0.2) !important;
}

body.dark-mode .decant-prices-title {
    color: #66BB6A !important;
    border-bottom-color: rgba(102, 187, 106, 0.3) !important;
}

/* ==================== HARDCODED TEXT COLOR OVERRIDES ==================== */

/* Analytics Text Colors */
body.dark-mode .analytics-value {
    color: #f5f5f5 !important;
}

body.dark-mode .analytics-subtitle,
body.dark-mode .analytics-unit {
    color: #d0d0d0 !important;
}

body.dark-mode .search-list h5 {
    color: #f5f5f5 !important;
}

body.dark-mode .admin-news-meta {
    color: #d0d0d0 !important;
}

/* Loading Indicator */
body.dark-mode .loading-indicator {
    color: #d0d0d0 !important;
}

/* Body Text */
body.dark-mode body {
    color: #f5f5f5 !important;
}

/* News Bar */
body.dark-mode .news-bar {
    color: #f5f5f5 !important;
}

/* Navigation Buttons */
body.dark-mode .nav-btn {
    color: #d0d0d0 !important;
}

/* Maintenance Message */
body.dark-mode .maintenance-message {
    color: #d0d0d0 !important;
}

/* Product Brand */
body.dark-mode .product-brand,
body.dark-mode .catalog.list-view .product-brand {
    color: #a8a8a8 !important;
}

/* Cart Item Price */
body.dark-mode .cart-item-price {
    color: #121212 !important;
    background: #66BB6A !important;
}

/* Cart Empty */
body.dark-mode .cart-empty {
    color: #d0d0d0 !important;
}

/* Cart Total BCV */
body.dark-mode .cart-total-bcv {
    color: #121212 !important;
    background: #66BB6A !important;
}

/* BCV Price */
body.dark-mode .bcv-price {
    color: #F57C00 !important;
}

/* Total BS and Promo Price */
body.dark-mode .total-bs,
body.dark-mode .promo-price {
    color: #f5f5f5 !important;
}

/* Close Button Hover */
body.dark-mode .close:hover {
    color: #f5f5f5 !important;
}

/* Bulk View Toggle */
body.dark-mode .bulk-view-toggle-btn {
    color: #d0d0d0 !important;
}

body.dark-mode .bulk-view-toggle-btn:hover {
    color: #f5f5f5 !important;
}

body.dark-mode .bulk-view-toggle-btn.active {
    color: #121212 !important;
}

/* Bulk Product Details */
body.dark-mode .bulk-product-details {
    color: #d0d0d0 !important;
}

body.dark-mode .bulk-product-name {
    color: #f5f5f5 !important;
}

/* Upload Hint */
body.dark-mode .upload-hint {
    color: #d0d0d0 !important;
}

/* Tag Options Display */
body.dark-mode .tag-options-display {
    color: #d0d0d0 !important;
}

/* Form Labels */
body.dark-mode .form-label {
    color: #f5f5f5 !important;
}

/* Decant Prices */
body.dark-mode .decant-bcv-price {
    color: #F57C00 !important;
}

body.dark-mode .decant-total-bs,
body.dark-mode .decant-promo-price {
    color: #f5f5f5 !important;
}

/* Decant Labels */
body.dark-mode .decant-label,
body.dark-mode .decant-size-label {
    color: #d0d0d0 !important;
}

/* File Upload */
body.dark-mode .file-upload-area {
    color: #d0d0d0 !important;
    background: #2a2a2a !important;
}

body.dark-mode .selected-file-name {
    color: #d0d0d0 !important;
}

/* Search Inputs */
body.dark-mode .catalog-search-input,
body.dark-mode .product-search-input,
body.dark-mode .tag-search-input,
body.dark-mode .news-search-input {
    color: #f5f5f5 !important;
}

body.dark-mode .catalog-search-icon,
body.dark-mode .product-search-icon,
body.dark-mode .tag-search-icon,
body.dark-mode .news-search-icon {
    color: #a8a8a8 !important;
}

/* No Results Messages */
body.dark-mode .no-products-message,
body.dark-mode .no-tags-message {
    color: #d0d0d0 !important;
}

body.dark-mode .search-results-count {
    color: #d0d0d0 !important;
}

/* No Description */
body.dark-mode .no-description {
    color: #d0d0d0 !important;
}

/* Semantic Text */
body.dark-mode .semantic-text {
    color: #f5f5f5 !important;
}

/* View Toggle */
body.dark-mode .view-toggle-btn {
    color: #d0d0d0 !important;
}

body.dark-mode .view-toggle-btn.active {
    color: #121212 !important;
}

/* Mobile Cart */
body.dark-mode .mobile-cart-item-price {
    color: #121212 !important;
    background: #66BB6A !important;
}

body.dark-mode .mobile-cart-size-label {
    color: #b0b0b0 !important;
}

body.dark-mode .mobile-cart-size-selector {
    background-color: #2a2a2a !important;
    border-color: #4a4a4a !important;
    color: #f5f5f5 !important;
}

body.dark-mode .mobile-cart-size-selector:focus {
    border-color: #66BB6A !important;
    box-shadow: 0 0 0 2px rgba(102, 187, 106, 0.2) !important;
}

body.dark-mode .mobile-cart-total-bcv {
    color: #121212 !important;
    background: #66BB6A !important;
}

/* Admin Elements */
body.dark-mode .admin-news-content {
    color: #f5f5f5 !important;
}

/* Placeholder Colors */
body.dark-mode input::placeholder,
body.dark-mode textarea::placeholder,
body.dark-mode select::placeholder {
    color: #a8a8a8 !important;
}

/* All text inputs and selects */
body.dark-mode input[type="text"],
body.dark-mode input[type="number"],
body.dark-mode input[type="email"],
body.dark-mode input[type="tel"],
body.dark-mode input[type="search"],
body.dark-mode textarea,
body.dark-mode select {
    color: #f5f5f5 !important;
    background-color: #2a2a2a !important;
    border-color: #4a4a4a !important;
}
/* Size display in checkout summary */
body.dark-mode .checkout-summary-item-size {
    color: #d0d0d0 !important;
}


/* Product Page Dark Mode */
body.dark-mode .product-page {
    background: #1a1a1a !important;
}

body.dark-mode .product-page-name {
    color: #f5f5f5 !important;
}

body.dark-mode .product-page-brand {
    color: #999 !important;
}

body.dark-mode .product-page-divider {
    background: #333 !important;
}

body.dark-mode .product-page-description {
    color: #d0d0d0 !important;
}

body.dark-mode .product-page-image-container {
    background: #2a2a2a !important;
}

body.dark-mode .product-zoom-overlay {
    background: rgba(0, 0, 0, 0.98) !important;
}

}

/* ==================== MOBILE STYLES ==================== */
@media (max-width: 768px) {
    .dark-mode-toggle svg {
        min-height: 20px;
        min-width: 20px;
    }
}

@media (max-width: 480px) {
    .dark-mode-toggle svg {
        min-height: 20px;
        min-width: 20px;
    }
}


