/* ========================================
   LTS - Dark Mode Styles
   ======================================== */

/* Dark Mode Variables */
body.dark-mode {
    --bg-primary: #1a1a1a;
    --bg-secondary: #2B2B2B;
    --bg-tertiary: #3A3A3A;
    --text-primary: #F5E6E0;
    --text-secondary: #F5E6E0;
    --text-light: #D4C4BC;
    --border-color: #555555;
    --card-bg: #252525;
    --input-bg: #2B2B2B;
    --shadow-dark: 0 4px 20px rgba(0, 0, 0, 0.5);
}

/* Dark Mode Toggle Button */
.dark-mode-toggle {
    background: none;
    border: 2px solid #E8A1B2;
    border-radius: 50%;
    width: 44px;
    height: 44px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all var(--transition-fast);
    color: #E8A1B2;
    font-size: 18px;
}

.dark-mode-toggle:hover {
    background: #E8A1B2;
    color: var(--color-negro);
    transform: rotate(15deg);
}

/* Dark Mode Body Styles */
body.dark-mode {
    background: var(--bg-primary);
    color: var(--text-primary);
}

/* Contenedores principales - Sin fondo */
body.dark-mode .container,
body.dark-mode .container-fluid {
    background: transparent !important;
}

body.dark-mode .header-navbar {
    background: var(--bg-secondary);
    box-shadow: var(--shadow-dark);
}

body.dark-mode .header-top-bar {
    background: var(--bg-tertiary);
}

body.dark-mode .dropdown-menu {
    background: var(--bg-secondary);
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.5);
}

body.dark-mode .dropdown-menu a {
    color: var(--text-primary);
}

body.dark-mode .dropdown-menu a:hover {
    background: var(--bg-tertiary);
}

/* Forzar fondos oscuros en todos los elementos */
body.dark-mode .white,
body.dark-mode .bg-white,
body.dark-mode [class*="bg-white"] {
    background: var(--white) !important;
}

body.dark-mode .off-white,
body.dark-mode [class*="off-white"] {
    background: var(--off-white) !important;
}

/* Forzar colores en elementos comunes */
body.dark-mode body,
body.dark-mode main {
    background-color: var(--bg-primary);
    color: var(--text-primary);
}

body.dark-mode section,
body.dark-mode article {
    background-color: transparent;
}

body.dark-mode .card,
body.dark-mode .product-card,
body.dark-mode .feature-card,
body.dark-mode .category-card {
    background: var(--white) !important;
    color: var(--text-primary);
}

body.dark-mode input,
body.dark-mode textarea,
body.dark-mode select {
    background: var(--white);
    color: var(--text-primary);
}

/* Hero & Carousel */
body.dark-mode .hero-carousel {
    background: #2B2B2B;
}

body.dark-mode .carousel-caption h2 {
    color: #E8A1B2;
}

/* Sections */
body.dark-mode .features-new {
    background: #2B2B2B;
}

body.dark-mode .feature-item {
    background: var(--card-bg);
    border: 1px solid var(--border-color);
    color: var(--text-primary);
}

body.dark-mode .feature-item h3 {
    color: #E8A1B2;
}

body.dark-mode .feature-item p {
    color: var(--text-secondary);
}

body.dark-mode .categories-new {
    background: #2B2B2B;
}

body.dark-mode .products-new {
    background: #2B2B2B;
}

body.dark-mode .product-card-new {
    background: var(--card-bg);
    border: 1px solid var(--border-color);
    color: var(--text-primary);
}

body.dark-mode .product-image-new {
    background: #3A3A3A;
}

body.dark-mode .product-title-new {
    color: var(--text-primary);
}

body.dark-mode .product-price-new {
    color: #E8A1B2;
}

body.dark-mode .product-actions-new {
    background: rgba(31, 31, 31, 0.95);
}

/* Cart Sidebar */
body.dark-mode .cart-sidebar {
    background: #2B2B2B;
    color: var(--text-primary);
}

body.dark-mode .cart-items {
    background: #1F1F1F;
    color: var(--text-primary);
}

body.dark-mode .cart-item {
    border-bottom: 1px solid var(--border-color);
    color: var(--text-primary);
}

body.dark-mode .cart-footer {
    background: #3A3A3A;
    border-top: 1px solid var(--border-color);
}

body.dark-mode .qty-btn {
    background: #3A3A3A;
    border-color: #444444;
    color: var(--text-primary);
}

body.dark-mode .qty-btn:hover {
    background: #E8A1B2;
    color: var(--color-negro);
}

/* Forms */
body.dark-mode input,
body.dark-mode textarea,
body.dark-mode select {
    background: var(--input-bg);
    border-color: var(--border-color);
    color: var(--text-primary) !important;
}

body.dark-mode input:focus,
body.dark-mode textarea:focus,
body.dark-mode select:focus {
    border-color: #E8A1B2;
    color: var(--text-primary) !important;
}

body.dark-mode input::placeholder,
body.dark-mode textarea::placeholder {
    color: var(--text-light);
}

body.dark-mode label {
    color: var(--text-primary) !important;
}

body.dark-mode option {
    background: var(--bg-secondary);
    color: var(--text-primary);
}

/* Footer */
body.dark-mode .footer-mdl {
    background: #1F1F1F;
}

body.dark-mode .footer-emails-section h4 {
    color: #E8A1B2;
}

body.dark-mode .emails-list a {
    color: var(--text-secondary);
}

body.dark-mode .emails-list a:hover {
    color: #E8A1B2;
}

body.dark-mode .footer-info-col h5 {
    color: var(--text-primary);
}

body.dark-mode .footer-info-col ul li a {
    color: var(--text-secondary);
}

body.dark-mode .footer-info-col ul li a:hover {
    color: #E8A1B2;
}

body.dark-mode .social-icons-footer a {
    background: var(--bg-tertiary);
}

body.dark-mode .social-icons-footer a:hover {
    background: #E8A1B2;
    color: var(--color-negro);
}

/* Page Headers */
body.dark-mode .page-header {
    background: transparent;
}

body.dark-mode .about-hero {
    background: linear-gradient(135deg, #2B2B2B 0%, #1F1F1F 100%);
}

body.dark-mode .contact-hero {
    background: linear-gradient(135deg, #2B2B2B 0%, #1F1F1F 100%);
}

/* Cards */
body.dark-mode .mv-card {
    background: var(--card-bg);
    border-top: 4px solid #E8A1B2;
    color: var(--text-primary);
}

body.dark-mode .mv-card h3 {
    color: #E8A1B2;
}

body.dark-mode .mv-card p {
    color: var(--text-secondary);
}

body.dark-mode .valor-card {
    background: var(--card-bg);
    color: var(--text-primary);
}

body.dark-mode .valor-card h3 {
    color: #E8A1B2;
}

body.dark-mode .valor-card p {
    color: var(--text-secondary);
}

body.dark-mode .contact-info-card,
body.dark-mode .contact-form-card {
    background: var(--card-bg);
    color: var(--text-primary);
}

body.dark-mode .contact-info-card h2,
body.dark-mode .contact-form-card h2 {
    color: var(--text-primary);
}

body.dark-mode .info-item {
    background: var(--bg-tertiary);
    color: var(--text-primary);
}

/* Buttons */
body.dark-mode .btn-primary {
    background: linear-gradient(135deg, #E8A1B2 0%, #D48A9A 100%);
    color: var(--white) !important;
}

body.dark-mode .btn-primary:hover {
    background: linear-gradient(135deg, #D48A9A 0%, #C07585 100%);
}

body.dark-mode .btn-secondary {
    border-color: #E8A1B2;
    color: #E8A1B2 !important;
}

body.dark-mode .btn-secondary:hover {
    background: #E8A1B2;
    color: var(--white) !important;
}

/* Action Buttons */
body.dark-mode .action-btn {
    background: #3A3A3A;
    border: 1px solid #444444;
    color: var(--text-primary);
}

body.dark-mode .action-btn:hover {
    background: #E8A1B2;
    color: var(--color-negro);
    border-color: #E8A1B2;
}

body.dark-mode .action-btn-new {
    background: #E8A1B2;
    color: var(--color-negro);
}

body.dark-mode .action-btn-new:hover {
    background: var(--white);
}

/* Badges */
body.dark-mode .product-badge-new,
body.dark-mode .product-badge {
    background: #E8A1B2;
    color: var(--color-negro);
}

/* Cart Badge */
body.dark-mode .cart-count-badge {
    background: #E8A1B2;
    color: var(--color-negro);
}

/* Cart Header */
body.dark-mode .cart-header {
    border-bottom: 3px solid #E8A1B2;
}

/* Total Amount */
body.dark-mode .total-amount {
    color: #E8A1B2;
}

/* Cart Subtotal */
body.dark-mode .cart-item-subtotal {
    color: #E8A1B2;
}

/* Links */
body.dark-mode a {
    color: #E8A1B2;
}

body.dark-mode a:hover {
    color: var(--white);
}

/* Breadcrumb */
body.dark-mode .breadcrumb {
    background: transparent;
}

body.dark-mode .breadcrumb a {
    color: var(--text-secondary);
}

body.dark-mode .breadcrumb a:hover {
    color: #E8A1B2;
}

body.dark-mode .breadcrumb span {
    color: var(--text-light);
}

/* View Links */
body.dark-mode .view-link {
    color: #E8A1B2;
}

/* Tags */
body.dark-mode .tag {
    background: #3A3A3A;
    color: var(--text-primary);
}

body.dark-mode .tag:hover {
    background: #E8A1B2;
    color: var(--color-negro);
}

/* Spinner */
body.dark-mode .spinner {
    border-color: #444444;
    border-top-color: #E8A1B2;
}

/* Notification */
body.dark-mode .notification {
    background: #E8A1B2;
    color: var(--color-negro);
}

/* Modal */
body.dark-mode .modal-content {
    background: #242424;
    border: 1px solid #444444;
}

body.dark-mode .modal-header {
    border-bottom: 2px solid #444444;
}

body.dark-mode .modal-title {
    color: var(--text-primary);
}

body.dark-mode .modal-body {
    color: var(--text-primary);
}

/* Section Titles */
body.dark-mode .section-subtitle {
    color: #E8A1B2;
}

body.dark-mode .section-title {
    color: var(--text-primary);
}

body.dark-mode .section-title .highlight {
    color: #E8A1B2;
}

/* Category Cards */
body.dark-mode .category-card-new {
    border: 1px solid var(--border-color);
}

/* Footer Payments */
body.dark-mode .payments-content {
    background: #3A3A3A;
}

body.dark-mode .payments-left span,
body.dark-mode .payments-right span {
    color: var(--text-light);
}

body.dark-mode .shipping-info {
    color: var(--text-primary);
}

body.dark-mode .shipping-info i {
    color: #E8A1B2;
}

body.dark-mode .footer-copyright p {
    color: var(--text-light);
}

body.dark-mode .copyright-divider {
    background: var(--border-color);
}

/* Scrollbar */
body.dark-mode ::-webkit-scrollbar {
    width: 10px;
}

body.dark-mode ::-webkit-scrollbar-track {
    background: #2B2B2B;
}

body.dark-mode ::-webkit-scrollbar-thumb {
    background: #3A3A3A;
    border-radius: 5px;
}

body.dark-mode ::-webkit-scrollbar-thumb:hover {
    background: #E8A1B2;
}

/* Selection */
body.dark-mode ::selection {
    background: #E8A1B2;
    color: var(--white);
}

/* Reglas globales para texto */
body.dark-mode p,
body.dark-mode span,
body.dark-mode a,
body.dark-mode h1,
body.dark-mode h2,
body.dark-mode h3,
body.dark-mode h4,
body.dark-mode h5,
body.dark-mode h6,
body.dark-mode li,
body.dark-mode td,
body.dark-mode th,
body.dark-mode label,
body.dark-mode strong,
body.dark-mode b,
body.dark-mode em,
body.dark-mode i {
    color: var(--text-primary) !important;
}

body.dark-mode .text-muted,
body.dark-mode .text-light,
body.dark-mode small,
body.dark-mode .text-secondary {
    color: var(--text-light) !important;
}

/* Forzar fondos en elementos con estilo inline */
body.dark-mode [style*="background: white"],
body.dark-mode [style*="background:#fff"],
body.dark-mode [style*="background:#ffffff"],
body.dark-mode [style*="background-color: white"],
body.dark-mode [style*="background-color:#fff"],
body.dark-mode [style*="background-color:#ffffff"] {
    background: var(--bg-secondary) !important;
}

body.dark-mode [style*="color: black"],
body.dark-mode [style*="color:#000"],
body.dark-mode [style*="color:#000000"] {
    color: var(--text-primary) !important;
}

/* Mobile Menu */
body.dark-mode .mobile-menu {
    background: #2B2B2B;
}

body.dark-mode .mobile-nav-menu .header-nav-link {
    color: var(--text-primary);
}

body.dark-mode .mobile-nav-menu .header-nav-link:hover {
    color: #E8A1B2;
}

/* Dropdown Mobile */
body.dark-mode .dropdown-menu {
    background: #3A3A3A;
}

/* Image Placeholders */
body.dark-mode .image-placeholder {
    background: #3A3A3A;
}

/* Divider */
body.dark-mode .divider {
    background: #444444;
}

/* Care Colors */
body.dark-mode .care-recommendation {
    background: #3A3A3A;
    border-left: 3px solid #E8A1B2;
}

body.dark-mode .important-note {
    background: #3A3A3A;
    border-left: 4px solid #E8A1B2;
}

/* Policy Cards */
body.dark-mode .policy-card {
    background: #242424;
    border: 1px solid #444444;
}

body.dark-mode .policy-card h3 {
    color: var(--text-primary);
}

body.dark-mode .policy-card p {
    color: var(--text-secondary);
}

/* Size Tags */
body.dark-mode .size-tag {
    background: #3A3A3A;
    border-color: #444444;
    color: var(--text-secondary);
}

/* Product Category */
body.dark-mode .product-category {
    color: #E8A1B2 !important;
}

body.dark-mode .product-title {
    color: #ffffff !important;
}

body.dark-mode .product-price {
    color: #E8A1B2 !important;
}

body.dark-mode .product-card {
    background: #2B2B2B !important;
    border: 1px solid #444444;
}

body.dark-mode .product-card .product-category,
body.dark-mode .product-card .product-title,
body.dark-mode .product-card .product-price,
body.dark-mode .product-card .product-info * {
    color: #ffffff !important;
}

body.dark-mode .product-card .product-price,
body.dark-mode .product-card .product-price * {
    color: #E8A1B2 !important;
}

body.dark-mode .shop-filters {
    background: #2B2B2B !important;
    border: 1px solid #444444;
}

body.dark-mode .filter-section h3 {
    color: #ffffff !important;
}

body.dark-mode .filter-list a {
    color: #ffffff !important;
}

body.dark-mode .filter-list a:hover,
body.dark-mode .filter-list a.active {
    background: #E8A1B2 !important;
    color: #000000 !important;
}

body.dark-mode .shop-products {
    background: #2B2B2B !important;
}

body.dark-mode .products-count {
    color: #ffffff !important;
}

body.dark-mode .sort-select {
    background: #3A3A3A !important;
    color: #ffffff !important;
    border-color: #444444;
}

body.dark-mode .sort-select option {
    background: #3A3A3A;
    color: #ffffff;
}

/* Newsletter */
body.dark-mode .newsletter-content {
    background: #3A3A3A;
}

body.dark-mode .newsletter-input {
    background: #2B2B2B;
    color: var(--text-primary);
}

/* Footer Logo */
body.dark-mode .footer-logo {
    color: var(--text-primary);
}

body.dark-mode .footer-description {
    color: var(--text-secondary);
}

body.dark-mode .social-link {
    border-color: #444444;
}

body.dark-mode .social-link:hover {
    background: #E8A1B2;
    color: var(--color-negro);
}

/* Product Detail Page - Modo Oscuro */
body.dark-mode .product-info-detail {
    background: #2B2B2B !important;
    border-color: #444444;
}

body.dark-mode .product-info-detail * {
    color: #ffffff !important;
}

body.dark-mode .product-category-detail {
    color: #ffffff !important;
}

body.dark-mode .product-title-detail {
    color: #ffffff !important;
}

body.dark-mode .product-price-detail {
    color: #E8A1B2 !important;
}

body.dark-mode .sku-text {
    color: #ffffff !important;
    background: #3A3A3A !important;
}

body.dark-mode .product-description-detail {
    background: #3A3A3A !important;
    border-left-color: #ffffff;
}

body.dark-mode .product-description-detail p {
    color: #ffffff !important;
}

body.dark-mode .product-stock-detail h4,
body.dark-mode .size-selector-detail h4 {
    color: #ffffff !important;
}

body.dark-mode .stock-item {
    border-bottom-color: #444444;
}

body.dark-mode .stock-item span:first-child {
    color: #ffffff !important;
}

body.dark-mode .stock-count {
    color: #ffffff !important;
}

body.dark-mode .size-btn-detail {
    border-color: #ffffff;
    background: #2B2B2B;
    color: #ffffff;
}

body.dark-mode .size-btn-detail:hover,
body.dark-mode .size-btn-detail.active {
    border-color: #E8A1B2;
    background: #E8A1B2;
    color: #000000;
}

body.dark-mode .add-to-cart-btn-detail {
    background: #E8A1B2 !important;
    border-color: #E8A1B2 !important;
    color: #000000 !important;
}

body.dark-mode .add-to-cart-btn-detail:hover {
    background: #D48A9A !important;
    border-color: #D48A9A !important;
    color: #000000 !important;
}

body.dark-mode .add-to-cart-btn-detail i {
    color: #000000 !important;
}

body.dark-mode .product-meta-detail {
    border-top-color: #444444;
}

body.dark-mode .meta-item {
    border-bottom-color: #3A3A3A;
}

body.dark-mode .meta-item strong,
body.dark-mode .meta-item span {
    color: #ffffff !important;
}

body.dark-mode .product-badge,
body.dark-mode .product-badge-new {
    background: #E8A1B2 !important;
    color: #000000 !important;
}

/* Shop Filters - Modo Oscuro */
body.dark-mode .shop-filters {
    background: #2B2B2B !important;
}

body.dark-mode .filter-section h3 {
    color: #ffffff !important;
}

body.dark-mode .filter-list a {
    color: #ffffff !important;
}

body.dark-mode .filter-list a:hover,
body.dark-mode .filter-list a.active {
    background: #E8A1B2 !important;
    color: #000000 !important;
}

/* Checkout - Información de Envío y Resumen del Pedido */
body.dark-mode .checkout-form {
    background: #2B2B2B !important;
    border: 1px solid #444444;
}

body.dark-mode .checkout-form h2 {
    color: #ffffff !important;
}

body.dark-mode .checkout-form label {
    color: #ffffff !important;
}

body.dark-mode .checkout-form input,
body.dark-mode .checkout-form textarea,
body.dark-mode .checkout-form select {
    background: #3A3A3A !important;
    color: #ffffff !important;
    border-color: #444444;
}

body.dark-mode .checkout-form input::placeholder,
body.dark-mode .checkout-form textarea::placeholder {
    color: #999999;
}

body.dark-mode .checkout-form option {
    background: #3A3A3A;
    color: #ffffff;
}

body.dark-mode .order-summary {
    background: #2B2B2B !important;
    border: 1px solid #444444;
}

body.dark-mode .order-summary h2 {
    color: #ffffff !important;
}

body.dark-mode .order-item {
    border-bottom-color: #444444;
}

body.dark-mode .order-item strong {
    color: #ffffff !important;
}

body.dark-mode .order-item p {
    color: #cccccc !important;
}

body.dark-mode .order-total-row {
    color: #ffffff !important;
}

body.dark-mode .order-total-row.grand-total {
    color: #E8A1B2 !important;
    border-top-color: #444444;
}

body.dark-mode .payment-method {
    background: #3A3A3A;
    border-color: #444444;
}

body.dark-mode .payment-method strong {
    color: #ffffff !important;
}

body.dark-mode .payment-method p {
    color: #cccccc !important;
}

body.dark-mode .payment-method:hover,
body.dark-mode .payment-method.active {
    border-color: #E8A1B2;
    background: rgba(232, 161, 178, 0.2);
}

body.dark-mode .btn-checkout {
    background: var(--gradient-primary);
    color: #ffffff !important;
}

body.dark-mode .checkout-hero {
    background: linear-gradient(135deg, #2B2B2B 0%, #1F1F1F 100%);
}

body.dark-mode .checkout-hero h1 {
    color: #ffffff !important;
}

body.dark-mode .payment-info-box {
    background: #3A3A3A !important;
    border-color: #444444;
}

body.dark-mode .payment-info-box h4,
body.dark-mode .payment-info-box p {
    color: #ffffff !important;
}

body.dark-mode .payment-info-box input[type="file"] {
    background: #3A3A3A !important;
    color: #ffffff !important;
    border-color: #444444;
}

body.dark-mode .payment-info-box > div:not(.payment-info-box *) {
    background: #3A3A3A !important;
}

body.dark-mode .payment-info-box > div > div {
    background: #3A3A3A !important;
}

body.dark-mode .payment-info-box > div > div > div:first-child {
    color: #cccccc !important;
}

body.dark-mode .payment-info-box > div > div > div:last-child {
    color: #ffffff !important;
}

body.dark-mode #info-whatsapp {
    background: #3A3A3A !important;
    border-left-color: #25D366;
}

body.dark-mode #info-whatsapp h4,
body.dark-mode #info-whatsapp p {
    color: #ffffff !important;
}

body.dark-mode #info-transferencia {
    background: #3A3A3A !important;
    border-left-color: #007bff;
}

body.dark-mode #info-transferencia h4,
body.dark-mode #info-transferencia p {
    color: #ffffff !important;
}

body.dark-mode #terminos + span {
    color: #ffffff !important;
}

body.dark-mode #terminos {
    accent-color: #28a745;
}

body.dark-mode .terminos-box {
    background: #3A3A3A !important;
    border-color: #444444;
}

body.dark-mode .terminos-box span,
body.dark-mode .terminos-box span * {
    color: #ffffff !important;
}

/* Transition for smooth mode switch */
body {
    transition: background-color 0.3s ease, color 0.3s ease;
}

body * {
    transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease;
}
