/* Modo oscuro. Se activa con <html data-bs-theme="dark"> (ver assets/js/theme.js).
   Bootstrap 5.3 ya oscurece sus propios componentes; acá se ajustan las
   variables propias (style.css) y los colores fijos de vender.php y catalogo.php.
   Los selectores con [data-bs-theme="dark"] pesan más que los <style> de cada
   página, así que ganan sin importar el orden de carga. */

[data-bs-theme="dark"] {
    color-scheme: dark;
    --color-text: #e5e7eb;
    --color-bg: #0f1412;
    --color-border: #2c3833;
    --bs-body-bg: #0f1412;
    --bs-body-bg-rgb: 15, 20, 18;
    --bs-body-color: #e5e7eb;
    --bs-body-color-rgb: 229, 231, 235;
    --bs-border-color: #2c3833;
    --bs-tertiary-bg: #18201d;
    --bs-tertiary-bg-rgb: 24, 32, 29;
    --bs-secondary-bg: #212b27;
    --bs-secondary-bg-rgb: 33, 43, 39;
    --dark-surface: #18201d;
    --dark-surface-2: #212b27;
    --dark-muted: #9ca3af;
}

/* Botón del selector de apariencia: el catálogo no carga style.css, así que el
   tamaño se define acá (en el resto de las pantallas coincide con .settings-gear-btn). */
.theme-toggle .settings-gear-btn {
    width: 2.4rem; height: 2.4rem; padding: 0; flex-shrink: 0;
    display: inline-flex; align-items: center; justify-content: center; font-size: 1.05rem;
}

/* ---- Estructura común (style.css) ---- */
[data-bs-theme="dark"] .site-header,
[data-bs-theme="dark"] .pillar-card,
[data-bs-theme="dark"] .support-widget-panel {
    background: var(--dark-surface);
}
[data-bs-theme="dark"] .navbar.bg-body { background-color: var(--dark-surface) !important; }
[data-bs-theme="dark"] .pillar-card { box-shadow: 0 .5rem 1.5rem rgba(0, 0, 0, .35); }
[data-bs-theme="dark"] .site-footer,
[data-bs-theme="dark"] .auth-hero-subtitle { color: var(--dark-muted); }
[data-bs-theme="dark"] .feature-icon,
[data-bs-theme="dark"] .auth-hero-eyebrow { background: rgba(0, 178, 143, .2); color: #34d3b3; }
[data-bs-theme="dark"] .support-widget-feedback-success { background: rgba(0, 178, 143, .2); color: #34d3b3; }
[data-bs-theme="dark"] .support-widget-feedback-error { background: rgba(220, 53, 69, .22); color: #f1a0a8; }
[data-bs-theme="dark"] .form input,
[data-bs-theme="dark"] .form textarea { background: var(--dark-surface-2); color: var(--color-text); }
[data-bs-theme="dark"] .brand-word { color: #34d3b3; }
[data-bs-theme="dark"] .text-primary { color: #34d3b3 !important; }

/* ---- Mostrador (vender.php) ---- */
[data-bs-theme="dark"] body.pos-page { background: #0b0f0e; }
[data-bs-theme="dark"] .pos-topbar,
[data-bs-theme="dark"] .pos-sidebar,
[data-bs-theme="dark"] .product-card,
[data-bs-theme="dark"] .pos-cart,
[data-bs-theme="dark"] .qty-btn,
[data-bs-theme="dark"] .pos-adjust .pos-adjust-btn { background: var(--dark-surface); }
[data-bs-theme="dark"] .pos-nav-link:hover,
[data-bs-theme="dark"] .qty-btn:hover:not(:disabled) { background: var(--dark-surface-2); }
[data-bs-theme="dark"] .pos-nav-link.active { background: rgba(0, 178, 143, .2); color: #34d3b3; }
[data-bs-theme="dark"] .product-card-image,
[data-bs-theme="dark"] .cart-item-thumb { background: var(--dark-surface-2); color: #6b7280; }
[data-bs-theme="dark"] .product-card:hover { box-shadow: 0 .5rem 1rem rgba(0, 0, 0, .5); }
[data-bs-theme="dark"] .product-card-price { color: #34d3b3; }
[data-bs-theme="dark"] .product-card-desc,
[data-bs-theme="dark"] .cart-item-unit-price,
[data-bs-theme="dark"] .cart-amount-row,
[data-bs-theme="dark"] .pos-cart-empty { color: var(--dark-muted); }
[data-bs-theme="dark"] .cart-item { border-bottom-color: var(--color-border); }
[data-bs-theme="dark"] .pos-adjust .pos-adjust-discount { color: #4ade80; border-color: #2f9e62; }
[data-bs-theme="dark"] .pos-adjust .pos-adjust-discount:hover { color: #86efac; background: rgba(74, 222, 128, .12); }
[data-bs-theme="dark"] .pos-adjust .pos-adjust-surcharge { color: #fb923c; border-color: #c2570a; }
[data-bs-theme="dark"] .pos-adjust .pos-adjust-surcharge:hover { color: #fdba74; background: rgba(251, 146, 60, .12); }
[data-bs-theme="dark"] .pos-adjust .btn-check:checked + .pos-adjust-discount,
[data-bs-theme="dark"] .pos-adjust .btn-check:checked + .pos-adjust-discount:hover { color: #fff; background: #198754; }
[data-bs-theme="dark"] .pos-adjust .btn-check:checked + .pos-adjust-surcharge,
[data-bs-theme="dark"] .pos-adjust .btn-check:checked + .pos-adjust-surcharge:hover { color: #fff; background: #d9630a; }
[data-bs-theme="dark"] .pos-line-discount { color: #4ade80; }
[data-bs-theme="dark"] .pos-line-surcharge { color: #fb923c; }

/* ---- Catálogo público (catalogo.php) ---- */
[data-bs-theme="dark"] body { background-color: #0b0f0e; }
[data-bs-theme="dark"] .catalog-header,
[data-bs-theme="dark"] .catalog-card,
[data-bs-theme="dark"] .detail-presentation-pill { background: var(--dark-surface); border-color: var(--color-border); color: var(--color-text); }
[data-bs-theme="dark"] .catalog-header { border-bottom-color: var(--color-border); }
[data-bs-theme="dark"] .catalog-card-image,
[data-bs-theme="dark"] .detail-image,
[data-bs-theme="dark"] .detail-placeholder { background: var(--dark-surface-2); color: #6b7280; }
[data-bs-theme="dark"] .catalog-card:hover { box-shadow: 0 .4rem .8rem rgba(0, 0, 0, .5); }
[data-bs-theme="dark"] .catalog-card-sku,
[data-bs-theme="dark"] .catalog-card-desc-text,
[data-bs-theme="dark"] .cart-item-row .cart-item-unit-price { color: var(--dark-muted); }
[data-bs-theme="dark"] .cart-item-row { border-bottom-color: var(--color-border); }
[data-bs-theme="dark"] .detail-presentation-pill.active { background: #00b28f; border-color: #00b28f; color: #fff; }
[data-bs-theme="dark"] .catalog-card-price,
[data-bs-theme="dark"] .catalog-in-cart-note,
[data-bs-theme="dark"] .catalog-card-desc-toggle { color: #34d3b3; }

/* ---- Chats flotantes (catalog_chat_widget.php y catalog_chat_admin_widget.php) ---- */
[data-bs-theme="dark"] .catalog-chat-panel { background: var(--dark-surface); box-shadow: 0 1.75rem 4rem rgba(0, 0, 0, .6); }
[data-bs-theme="dark"] .catalog-chat-body { background: var(--color-bg); }
[data-bs-theme="dark"] .catalog-chat-greeting-bubble,
[data-bs-theme="dark"] .catalog-chat-bubble-admin,
[data-bs-theme="dark"] .catalog-chat-conv-item,
[data-bs-theme="dark"] .catalog-chat-field input,
[data-bs-theme="dark"] .catalog-chat-input-row { background: var(--dark-surface-2); border-color: var(--color-border); color: var(--color-text); }
[data-bs-theme="dark"] .catalog-chat-input-row textarea { background: transparent; color: var(--color-text); }
[data-bs-theme="dark"] .catalog-chat-conv-name,
[data-bs-theme="dark"] .catalog-chat-thread-name,
[data-bs-theme="dark"] .catalog-chat-back-btn:hover { color: var(--color-text); }
[data-bs-theme="dark"] .catalog-chat-conv-preview,
[data-bs-theme="dark"] .catalog-chat-thread-contact,
[data-bs-theme="dark"] .catalog-chat-conv-empty,
[data-bs-theme="dark"] .catalog-chat-footer,
[data-bs-theme="dark"] .catalog-chat-back-btn { color: var(--dark-muted); }
[data-bs-theme="dark"] .catalog-chat-thread-header { border-bottom-color: var(--color-border); }
[data-bs-theme="dark"] .catalog-chat-feedback-success { background: rgba(0, 178, 143, .2); color: #34d3b3; }
[data-bs-theme="dark"] .catalog-chat-feedback-error { background: rgba(220, 53, 69, .22); color: #f1a0a8; }

/* ---- Tabla de productos: columna de Acciones fija y barra de scroll ---- */
[data-bs-theme="dark"] .sticky-col { background: var(--bs-body-bg); box-shadow: -6px 0 6px -6px rgba(0, 0, 0, .6); }
[data-bs-theme="dark"] .table-responsive { scrollbar-color: #3a4640 transparent; }
[data-bs-theme="dark"] .table-responsive::-webkit-scrollbar-thumb { background-color: #3a4640; }
[data-bs-theme="dark"] .stock-inline-input.flash-error { background-color: rgba(220, 53, 69, .25); }

/* ---- Campos de formulario y barras de búsqueda ---- */
[data-bs-theme="dark"] .input-group-text.bg-body { background-color: var(--dark-surface-2) !important; }
[data-bs-theme="dark"] .form-control,
[data-bs-theme="dark"] .form-select { background-color: var(--dark-surface-2); border-color: var(--color-border); }
[data-bs-theme="dark"] .form-control:focus,
[data-bs-theme="dark"] .form-select:focus { background-color: var(--dark-surface-2); }
[data-bs-theme="dark"] .modal-content,
[data-bs-theme="dark"] .offcanvas,
[data-bs-theme="dark"] .dropdown-menu,
[data-bs-theme="dark"] .card { background-color: var(--dark-surface); }
[data-bs-theme="dark"] .settings-logo-preview { background: var(--dark-surface-2); border-color: var(--color-border); color: #6b7280; }
