
.btn-tema {
    width: 42px;
    height: 42px;
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 2px solid var(--border-color);
    border-radius: 50%;
    background: var(--surface);
    font-size: 1.15rem;
    line-height: 1;
    cursor: pointer;
    transition: border-color 0.2s, transform 0.2s;
}

.btn-tema:hover {
    border-color: var(--maldonado-blue);
    transform: rotate(-15deg);
}

.btn-tema:focus-visible {
    outline: 2px solid var(--maldonado-yellow);
    outline-offset: 2px;
}

.top-bar-horario {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 0.15rem 0.9rem;
}

.top-bar .btn-tema {
    width: 28px;
    height: 28px;
    font-size: 0.85rem;
    border: 1px solid rgba(255, 255, 255, 0.35);
    background: rgba(255, 255, 255, 0.12);
}

.top-bar .btn-tema:hover {
    border-color: var(--maldonado-yellow);
}

html[data-tema="oscuro"] {
    color-scheme: dark;

    --bg-page: #0b1220;
    --surface: #131c2e;
    --surface-2: #1c2740;
    --text-main: #e2e8f0;
    --text-muted: #94a3b8;
    --border-color: #27344d;
    --shadow-sm: 0 2px 4px rgba(0,0,0,0.4);
    --shadow-md: 0 4px 14px rgba(0,0,0,0.5);

    --texto-azul: #8cbcff;
    --texto-rojo: #ff6b6b;
    --linea-azul: #3b6fb6;
}

html[data-tema="oscuro"] body {
    background-color: var(--bg-page);
    color: var(--text-main);
}

html[data-tema="oscuro"] .btn-tema:hover {
    border-color: var(--maldonado-yellow);
}

html[data-tema="oscuro"] .logo-sub { color: var(--texto-azul); }
html[data-tema="oscuro"] .logo-main { color: var(--texto-rojo); }
html[data-tema="oscuro"] .action-item { color: var(--texto-azul); }

html[data-tema="oscuro"] .nav-container .nav-item:not(.active) { color: var(--texto-azul); }
html[data-tema="oscuro"] nav:not(:has(a.nav-item .nav-icon)) .nav-item:hover { background-color: var(--surface-2); }
html[data-tema="oscuro"] nav:has(a.nav-item .nav-icon) .nav-item:not(.active) { color: rgba(255, 255, 255, 0.82); }
html[data-tema="oscuro"] nav:has(a.nav-item .nav-icon) .nav-item:not(.active):hover { color: #ffffff; }

@media (max-width: 768px) {
    html[data-tema="oscuro"] nav:not(:has(a.nav-item .nav-icon)) .nav-item:not(.active) { background-color: var(--surface-2); }
}

html[data-tema="oscuro"] .mega-menu-contenido { box-shadow: 0 16px 32px rgba(0, 0, 0, 0.5); }
html[data-tema="oscuro"] .mega-menu-titulo { color: var(--texto-azul); }
html[data-tema="oscuro"] .mega-menu-titulo:hover,
html[data-tema="oscuro"] .mega-menu-titulo.activa,
html[data-tema="oscuro"] .mega-menu-todo { color: var(--texto-rojo); }
html[data-tema="oscuro"] .mega-menu-sub a:hover,
html[data-tema="oscuro"] .mega-menu-sub a.activa,
html[data-tema="oscuro"] .mega-menu-desplegar { color: var(--texto-azul); }
html[data-tema="oscuro"] .catalogo-aviso { background: rgba(251, 192, 45, 0.1); }

html[data-tema="oscuro"] .feature-title,
html[data-tema="oscuro"] .steps-header h2,
html[data-tema="oscuro"] .step-card h3,
html[data-tema="oscuro"] .section-title,
html[data-tema="oscuro"] .product-title,
html[data-tema="oscuro"] .address-card h3,
html[data-tema="oscuro"] .address-text h4,
html[data-tema="oscuro"] .brand-progreso { color: var(--texto-azul); }

html[data-tema="oscuro"] .feature-subtitle,
html[data-tema="oscuro"] .product-sku,
html[data-tema="oscuro"] .section-link { color: var(--texto-rojo); }

html[data-tema="oscuro"] .section-header { border-bottom-color: var(--linea-azul); }

html[data-tema="oscuro"] .brand-multiblock { color: #9ca3af; }
html[data-tema="oscuro"] .brand-zasc { color: #cbd5e1; }

html[data-tema="oscuro"] .btn-outline {
    color: var(--texto-rojo);
    border-color: var(--texto-rojo);
}
html[data-tema="oscuro"] .btn-outline:hover {
    background-color: var(--maldonado-red);
    border-color: var(--maldonado-red);
    color: #ffffff;
}

html[data-tema="oscuro"] .map-wrapper { background-color: var(--surface-2); }

html[data-tema="oscuro"] .oferta-ahora,
html[data-tema="oscuro"] .zonas-nota a,
html[data-tema="oscuro"] .faq-item a,
html[data-tema="oscuro"] .faq-mas a,
html[data-tema="oscuro"] .faq-item summary::after { color: var(--texto-rojo); }
html[data-tema="oscuro"] .zonas-inner h3,
html[data-tema="oscuro"] .zonas-tiempo strong,
html[data-tema="oscuro"] .faq-item summary { color: var(--texto-azul); }
html[data-tema="oscuro"] .zonas-lista li {
    background-color: rgba(140, 188, 255, 0.12);
    color: var(--texto-azul);
}
html[data-tema="oscuro"] .zonas-gratis-tag {
    background-color: rgba(74, 222, 128, 0.15);
    color: #4ade80;
}
html[data-tema="oscuro"] .faq-item[open] { border-color: var(--texto-azul); }

html[data-tema="oscuro"] .address-text a { color: var(--texto-rojo); }
html[data-tema="oscuro"] .address-text .address-tels a {
    background-color: rgba(140, 188, 255, 0.12);
    color: var(--texto-azul);
}
html[data-tema="oscuro"] .address-text .address-tels a:hover {
    background-color: var(--texto-azul);
    color: #0b1220;
}

html[data-tema="oscuro"] .tienda-texto h3,
html[data-tema="oscuro"] .tienda-cifras strong,
html[data-tema="oscuro"] .resenas-nota,
html[data-tema="oscuro"] .resena-autor strong { color: var(--texto-azul); }
html[data-tema="oscuro"] .tienda-tag {
    background-color: rgba(211, 18, 25, 0.2);
    color: var(--texto-rojo);
}
html[data-tema="oscuro"] .address-icon { background-color: rgba(211, 18, 25, 0.18); }

html[data-tema="oscuro"] .catalog-title h1,
html[data-tema="oscuro"] .product-price,
html[data-tema="oscuro"] .widget-title { color: var(--texto-azul); }

html[data-tema="oscuro"] .search-resultado { color: var(--texto-azul); }
html[data-tema="oscuro"] .search-resultado.sin-resultados { color: var(--texto-rojo); }

html[data-tema="oscuro"] .search-box:focus-within {
    border-color: var(--texto-azul);
    box-shadow: 0 0 0 3px rgba(140, 188, 255, 0.2);
}

html[data-tema="oscuro"] .product-category {
    color: var(--texto-rojo);
    background-color: rgba(211, 18, 25, 0.18);
}
html[data-tema="oscuro"] .product-price-consultar,
html[data-tema="oscuro"] .product-price-antes + .product-price { color: var(--texto-rojo); }
html[data-tema="oscuro"] .filtro-ofertas:not(.activo):not(:hover) {
    color: var(--texto-rojo);
    border-color: var(--texto-rojo);
}
html[data-tema="oscuro"] .product-card-oferta { border-color: rgba(255, 107, 107, 0.45); }

html[data-tema="oscuro"] .category-link:hover,
html[data-tema="oscuro"] .category-link.active {
    background-color: var(--surface-2);
    color: var(--texto-rojo);
}

html[data-tema="oscuro"] .category-toggle:hover { background-color: var(--surface-2); color: var(--texto-rojo); }

html[data-tema="oscuro"] .paginacion-btn { color: var(--texto-azul); }
html[data-tema="oscuro"] .paginacion-btn:hover { border-color: var(--texto-azul); }
html[data-tema="oscuro"] .paginacion-btn.actual {
    color: #ffffff;
    border-color: var(--maldonado-red);
}

html[data-tema="oscuro"] .featured-section h2.featured-heading,
html[data-tema="oscuro"] .featured-title,
html[data-tema="oscuro"] .featured-price-new { color: var(--text-main); }

html[data-tema="oscuro"] .featured-toggle {
    background: var(--surface);
    color: var(--texto-azul);
    border-color: var(--border-color);
}
html[data-tema="oscuro"] .featured-toggle:hover { border-color: var(--texto-azul); }

html[data-tema="oscuro"] .featured-section.plegado .featured-top,
html[data-tema="oscuro"] .featured-card {
    background: var(--surface);
    border-color: var(--border-color);
    box-shadow: var(--shadow-sm);
}
html[data-tema="oscuro"] .featured-section.plegado .featured-top { border-left-color: var(--maldonado-red); }
html[data-tema="oscuro"] .featured-section.plegado .featured-toggle {
    background: var(--maldonado-red);
    border-color: var(--maldonado-red);
    color: #ffffff;
}

html[data-tema="oscuro"] .featured-thumb { border-color: var(--border-color); }
html[data-tema="oscuro"] .featured-thumb.active,
html[data-tema="oscuro"] .featured-thumb:hover { border-color: #f5b400; }
html[data-tema="oscuro"] .featured-main { border-color: var(--border-color); }

html[data-tema="oscuro"] .featured-meta,
html[data-tema="oscuro"] .featured-variant-label,
html[data-tema="oscuro"] .featured-price-unit { color: var(--text-muted); }
html[data-tema="oscuro"] .featured-desc { color: #cbd5e1; }
html[data-tema="oscuro"] .featured-stock,
html[data-tema="oscuro"] .featured-benefits { color: #4ade80; }

html[data-tema="oscuro"] .variant-btn {
    background: var(--surface-2);
    color: var(--text-main);
    border-color: var(--border-color);
}
html[data-tema="oscuro"] .variant-btn.active {
    background: var(--text-main);
    color: #0f172a;
    border-color: var(--text-main);
}

html[data-tema="oscuro"] .featured-more {
    background: rgba(245, 180, 0, 0.12);
    color: #fde68a;
}

html[data-tema="oscuro"] .selector-cantidad button,
html[data-tema="oscuro"] .cantidad-tarjeta,
html[data-tema="oscuro"] .carrito-item-info strong,
html[data-tema="oscuro"] .carrito-cantidad button,
html[data-tema="oscuro"] .carrito-fila,
html[data-tema="oscuro"] .carrito-form > label,
html[data-tema="oscuro"] .carrito-direccion,
html[data-tema="oscuro"] .carrito-form legend,
html[data-tema="oscuro"] .carrito-confirmacion h3 { color: var(--texto-azul); }

html[data-tema="oscuro"] .selector-cantidad button:hover { color: #ffffff; }

html[data-tema="oscuro"] .btn-whatsapp-link { color: #25d366; }
html[data-tema="oscuro"] .carrito-aviso { background: #334155; }
html[data-tema="oscuro"] .carrito-fondo { background: rgba(0, 0, 0, 0.65); }

html[data-tema="oscuro"] .carrito-cantidad input,
html[data-tema="oscuro"] .carrito-form input:not([type="radio"]):not([type="checkbox"]),
html[data-tema="oscuro"] .carrito-form textarea {
    background: var(--bg-page);
    color: var(--text-main);
    border-color: var(--border-color);
}
html[data-tema="oscuro"] .carrito-form input:focus,
html[data-tema="oscuro"] .carrito-form textarea:focus { outline-color: var(--texto-azul); }

html[data-tema="oscuro"] .carrito-quitar {
    background: rgba(211, 18, 25, 0.15);
    border-color: rgba(255, 107, 107, 0.35);
}
html[data-tema="oscuro"] .carrito-quitar:hover { background: rgba(211, 18, 25, 0.3); }

html[data-tema="oscuro"] .carrito-tipo label:has(input:checked) { background: rgba(211, 18, 25, 0.15); }

html[data-tema="oscuro"] .carrito-nota-correo {
    background: rgba(59, 130, 246, 0.12);
    border-color: rgba(96, 165, 250, 0.35);
}

html[data-tema="oscuro"] .carrito-error { color: var(--texto-rojo); }
html[data-tema="oscuro"] .carrito-check { background: rgba(34, 197, 94, 0.18); color: #4ade80; }

html[data-tema="oscuro"] .calc-section {
    --win-acento: #4cc2ff;
    --win-acento-hover: #62cbff;
    --win-fondo: #202020;
    --win-panel: #272727;
    --win-lateral: #1f1f1f;
    --win-borde: #3a3a3a;
    --win-control-borde: #454545;
    --win-texto: #f3f3f3;
    --win-texto-2: #b5b5b5;
    --win-seleccion: rgba(76, 194, 255, 0.14);
    --win-superficie: #2d2d2d;
    --win-linea: #353535;
    --win-fila-par: #303030;
    --win-control-hover: #323232;
}
html[data-tema="oscuro"] .calc-card { box-shadow: 0 8px 32px rgba(0, 0, 0, 0.55); }
html[data-tema="oscuro"] .calc-aviso-legal { background: #3a3110; border-top-color: #5c4a12; color: #ffe08a; }
html[data-tema="oscuro"] .calc-tab:hover { background: rgba(255, 255, 255, 0.06); }
html[data-tema="oscuro"] .calc-tab.active { background: var(--win-superficie); box-shadow: none; }
html[data-tema="oscuro"] .calc-field input,
html[data-tema="oscuro"] .calc-field select { border-bottom-color: #8a8a8a; color-scheme: dark; }
html[data-tema="oscuro"] .calc-btn { color: #000000; }
html[data-tema="oscuro"] .calc-btn:active { background: #3aa0d6; }
html[data-tema="oscuro"] .calc-tag-catalogo { background: rgba(108, 203, 95, 0.18); color: #9fe39a; }
html[data-tema="oscuro"] .calc-tag-adicional { background: #3a3a3a; color: #cfcfcf; }
html[data-tema="oscuro"] .calc-gate-error { color: #ff99a4; }
html[data-tema="oscuro"] .calc-table td:last-child { color: var(--text-main); }
