/* ============================================================
   e-bussines DARK THEME · Tiendas online (ecommerce público)
   Tema oscuro navy/cian que sobrescribe Bootstrap + skins claras.
   Aplica a index / producto / carrito / checkout.
   ============================================================ */
:root{
  --eb-bg:#0b1120; --eb-bg-2:#0f172a; --eb-card:#16213b;
  --eb-border:rgba(94,130,255,.16);
  --eb-primary:#3b82f6; --eb-primary-2:#22d3ee;
  --eb-text:#e6edf7; --eb-muted:#93a3c0;
  --eb-grad:linear-gradient(135deg,#3b82f6 0%,#22d3ee 100%);
  --primary:#3b82f6 !important;
  --pri:#3b82f6 !important;
  --bs-body-bg:#0b1120;
  --bs-body-color:#e6edf7;
}

/* ---------- Base ---------- */
html{color-scheme:dark}
body{
  background:#0b1120 !important;
  background-image:
    radial-gradient(900px 420px at 88% -12%,rgba(59,130,246,.22),transparent 60%),
    radial-gradient(700px 420px at -8% 110%,rgba(34,211,238,.10),transparent 55%),
    linear-gradient(160deg,#0b1120 0%,#0a1120 55%,#080d19 100%) !important;
  color:#e6edf7 !important;
  font-family:'Inter','Segoe UI',system-ui,sans-serif !important;
}
h1,h2,h3,h4,h5,h6{color:#f2f6fc !important}
a{color:#9cc3ff}
.text-muted,.text-secondary,.small{color:#93a3c0 !important}
.text-white-50{color:#aab6cc !important}
mark{color:#0b1120;background:#ffe9a8}

/* ---------- Navbars ---------- */
.navbar,
.top-bar{
  background:#0f172a !important;
  background-image:linear-gradient(120deg,#101d3a,#0f172a 60%) !important;
  border-bottom:1px solid var(--eb-border) !important;
  box-shadow:0 1px 12px rgba(0,0,0,.35) !important;
  color:#fff !important;
}
.navbar .navbar-brand,.top-bar span,.top-bar a{color:#fff !important}
.navbar .btn-light{background:var(--eb-grad) !important;border:none !important;color:#fff !important;font-weight:700}
.navbar .btn-light:hover{opacity:.9;color:#fff}
.navbar-light.bg-white.border-bottom{background:#0f172a !important}
.navbar-light .navbar-toggler{border-color:rgba(255,255,255,.2)}
.navbar-light .navbar-toggler-icon{filter:invert(1)}

/* ---------- Tarjetas / superficies ---------- */
.store-info,.store-info-card,
.card-product,.producto-card,.cart-item,
.header-card,.card-modern,.servicio-card,.card,
.panel,.box,.summary-box,.total-card,
.resumen-card{
  background:linear-gradient(170deg,#16213b,#101a30) !important;
  border:1px solid var(--eb-border) !important;
  border-radius:16px !important;
  box-shadow:0 2px 14px rgba(0,0,0,.35) !important;
  color:#e6edf7 !important;
}
.card-product:hover,.producto-card:hover,.cart-item:hover{border-color:rgba(125,211,252,.5) !important;box-shadow:0 14px 34px rgba(0,0,0,.45) !important;transform:translateY(-4px)}
.store-details h5,.product-title,.cart-item h5,.invoice-table .prod-info,
.producto-card h1{color:#f2f6fc !important}
.store-details .specialty,.product-desc,.sr-desc,.invoice-table .prod-info small,
.detalle-label{color:#93a3c0 !important}
.store-details .info-row{color:#c3cede !important}
.store-actions .btn-sm-action{background:rgba(255,255,255,.06) !important;color:#dbe6f5 !important;border-color:rgba(125,211,252,.25) !important}
.store-actions .btn-sm-action:hover{transform:translateX(2px);background:rgba(125,211,252,.15) !important}
.store-qr img{background:#fff;border-color:rgba(255,255,255,.15)}
.store-qr-label{color:#8494af}

/* Producto */
.product-price,.precio,.sr-price,.total-box .total{color:#38bdf8 !important}
.btn-view,.btn-add,.btn-pagar,.btn-confirmar{background:var(--eb-grad) !important;color:#fff !important;border:none !important}
.btn-view:hover,.btn-add:hover,.btn-pagar:hover,.btn-confirmar:hover{opacity:.92;color:#fff;transform:translateY(-1px)}
.total-box{background:#101d3a !important;border:1px solid var(--eb-border) !important;box-shadow:0 10px 30px rgba(0,0,0,.4) !important}
.total-box .total{background:var(--eb-grad);-webkit-background-clip:text;background-clip:text;color:transparent !important}

/* Item imagen / placeholders */
.item-img,.rel-img,.prod-img{background:#0d1730 !important}
.prod-img{background:#0d1730 !important}

/* ---------- Buscador ---------- */
.search-box,.form-control,.form-select,.qty-input,input.form-control,select.form-select,textarea.form-control{
  background:#0d1730 !important;border:1.5px solid rgba(125,211,252,.2) !important;color:#eaf1fb !important;border-radius:12px !important}
.search-box:focus,.form-control:focus,.form-select:focus{border-color:#7dd3fc !important;box-shadow:0 0 0 4px rgba(59,130,246,.2) !important;background:#101d3a !important;color:#fff !important}
.form-control::placeholder,.search-box::placeholder{color:#64748b !important}
select.form-select option{background:#101d3a;color:#eaf1fb}

#searchResults{background:#101d3a !important;border:1px solid var(--eb-border) !important;border-radius:14px !important;box-shadow:0 18px 40px rgba(0,0,0,.5) !important}
#searchResults .sr-item{border-bottom:1px solid rgba(255,255,255,.06) !important;color:#dbe6f5}
#searchResults .sr-item:hover{background:rgba(59,130,246,.12) !important}
.sr-code{color:#7e8ea9}
label,.form-floating-custom label{color:#b8c6dc}

/* Filtros de categoría */
.categoria-filtro-btn,.servicio-filtro-btn{background:#16213b !important;border:1.5px solid var(--eb-border) !important;color:#c9d6ea !important}
.categoria-filtro-btn:hover,.servicio-filtro-btn:hover{border-color:#7dd3fc !important;color:#7dd3fc !important}
.categoria-filtro-btn.active,.servicio-filtro-btn.active{background:var(--eb-grad) !important;border-color:transparent !important;color:#fff !important}
.categoria-filtro-row label{color:#93a3c0 !important}

/* ---------- Tablas / resumen ---------- */
.invoice-table thead th{color:#93a3c0 !important;border-bottom:2px solid rgba(125,211,252,.2) !important}
.invoice-table tbody td{border-bottom:1px solid rgba(255,255,255,.06) !important;color:#e6edf7 !important}
.invoice-table tfoot td{color:#dbe6f5}
.invoice-table tfoot .grand-total td{border-top:2px solid #38bdf8 !important;color:#fff}
.invoice-table .qty-badge{background:rgba(59,130,246,.2) !important;color:#9cc3ff !important}
.table{--bs-table-bg:transparent;color:#e6edf7}
.table thead th{color:#93a3c0;border-color:rgba(125,211,252,.15)}
.table td,.table th{border-color:rgba(255,255,255,.07);color:#e6edf7}

/* ---------- Checkout opciones / confirmación ---------- */
.payment-options .pay-opt{background:#0d1730 !important;border:2px solid var(--eb-border) !important;color:#c9d6ea !important}
.payment-options .pay-opt:hover{border-color:#7dd3fc !important}
.payment-options .pay-opt.selected{border-color:#7dd3fc !important;background:rgba(59,130,246,.18) !important;color:#7dd3fc !important}
.confirm-box{background:linear-gradient(170deg,#0e2a1e,#101a30) !important;border:1px solid rgba(34,197,94,.3) !important;color:#e6edf7 !important}
.header-card .ref,.header-card .ref span,.header-card .brand small,.section-title{color:#7dd3fc}
.header-card .ref strong{color:#fff}
.btn-continuar{background:var(--eb-grad) !important;color:#fff !important}
.btn-ws{background:#22c15e !important;color:#fff !important}

/* ---------- Dropdowns (farmacia megamenu) ---------- */
.dropdown-menu{background:#0f172a !important;border:1px solid var(--eb-border) !important;box-shadow:0 18px 40px rgba(0,0,0,.5) !important}
.dropdown-menu .dropdown-item{color:#dbe6f5 !important}
.dropdown-menu .dropdown-item:hover{background:rgba(59,130,246,.15) !important;color:#fff}
.navbar-light .nav-link.text-dark{color:#dbe6f5 !important}
.navbar-light .navbar-nav .nav-link{color:#dbe6f5 !important}

/* ---------- Modales / alertas / badges ---------- */
.modal-overlay{background:rgba(2,6,17,.78) !important}
.modal-box{background:linear-gradient(170deg,#16213b,#0f172a) !important;border:1px solid var(--eb-border) !important;color:#e6edf7}
.modal-box h3,.modal-box .close-btn{color:#e6edf7}
.modal-box .close-btn:hover{color:#fff}
.alert{background:rgba(255,255,255,.05) !important;border-color:var(--eb-border) !important;color:#e6edf7 !important}
.alert-danger{background:rgba(232,53,44,.15) !important;color:#fecaca !important}
.alert-success{background:rgba(34,193,94,.15) !important;color:#bbf7d0 !important}
.alert-info{background:rgba(59,130,246,.15) !important;color:#bfdbfe !important}
.badge.bg-info.text-info,.badge.text-info{color:#7dd3fc !important;background:rgba(34,211,238,.15) !important}
.badge.bg-success.text-white{background:#16a34a !important}
.badge.bg-danger.text-white{background:#dc2626 !important}
.text-info{color:#7dd3fc !important}
.text-primary{color:#7dd3fc !important}
.text-success{color:#4ade80 !important}
.text-danger{color:#f87171 !important}

/* ---------- Botones genéricos ---------- */
.btn-primary{background:var(--eb-grad) !important;border:none !important;color:#fff !important;font-weight:600}
.btn-primary:hover{opacity:.92;color:#fff}
.btn-outline-secondary{background:#16213b !important;border-color:var(--eb-border) !important;color:#c9d6ea !important}
.btn-outline-secondary:hover{background:rgba(59,130,246,.15) !important;color:#7dd3fc !important;border-color:#7dd3fc}
.btn-success{background:#22c15e !important;border:none !important}
.btn-link{color:#7dd3fc !important}
.input-group-text{background:#101d3a !important;border-color:var(--eb-border) !important;color:#c9d6ea}
.cart-badge{background:linear-gradient(135deg,#dc2626,#b91c1c) !important;color:#fff !important}

/* ---------- Bordes de foto de tienda ---------- */
.store-photo{border:3px solid #3b82f6 !important}

/* ---------- Footer ---------- */
footer.bg-dark,footer{background:#070c17 !important;background-image:linear-gradient(160deg,#0a1222,#070c17) !important;color:#93a3c0 !important}
footer a,footer.bg-dark a{color:#9cc3ff}
