/* ApoloCloud Night Shop v1.8.0 - catálogo grande, dark real y Bootstrap estable */
:root{
  --v18-bg:#05070d;
  --v18-bg2:#080d17;
  --v18-surface:#0d1422;
  --v18-surface2:#111b2d;
  --v18-card:#101827;
  --v18-card2:#0c1320;
  --v18-border:rgba(148,163,184,.18);
  --v18-border2:rgba(56,189,248,.22);
  --v18-text:#f8fafc;
  --v18-muted:#9ca3af;
  --v18-blue:#38bdf8;
  --v18-blue2:#0ea5e9;
  --v18-blue3:#7dd3fc;
  --v18-green:#22c55e;
  --v18-red:#fb7185;
  --v18-shadow:0 18px 45px rgba(0,0,0,.34);
}
html,html[data-bs-theme="dark"]{background:var(--v18-bg)!important;min-height:100%;scroll-behavior:smooth;}
body,body.apolo-dark-mode{
  min-height:100vh!important;
  background:
    radial-gradient(circle at 18% -10%, rgba(56,189,248,.10), transparent 30%),
    radial-gradient(circle at 90% 5%, rgba(14,165,233,.08), transparent 26%),
    linear-gradient(180deg,var(--v18-bg) 0%, var(--v18-bg2) 45%, #04060b 100%)!important;
  background-color:var(--v18-bg)!important;
  color:var(--v18-text)!important;
  overflow-x:hidden!important;
  font-family:Inter,Arial,Helvetica,sans-serif!important;
}
body:before{display:none!important;}
body.cart-open{overflow:hidden!important;}
a{color:var(--v18-blue3)!important;text-decoration:none!important;}a:hover{color:#e0f7ff!important;}
.text-muted,p,.section-head p,.cart_info p{color:var(--v18-muted)!important;}
.container{max-width:1320px!important;}

/* Header fijo estable */
.site-header,.header_middle{
  position:sticky!important;
  top:0!important;
  z-index:1050!important;
  background:rgba(5,7,13,.96)!important;
  border-bottom:1px solid var(--v18-border)!important;
  box-shadow:0 12px 34px rgba(0,0,0,.42)!important;
  backdrop-filter:blur(16px)!important;
  -webkit-backdrop-filter:blur(16px)!important;
  transform:none!important;
  opacity:1!important;
  visibility:visible!important;
}
.site-header .wrap,.header_middle .row{min-height:74px!important;height:auto!important;align-items:center!important;}
.logo img{max-height:56px!important;width:auto!important;filter:drop-shadow(0 8px 22px rgba(56,189,248,.16)) brightness(1.08)!important;}
.cart-trigger,.btn-primary,.checkout_btn a,.cart_button a,#sendWhatsapp,.order_button button,.add_to_cart_button{
  background:linear-gradient(135deg,var(--v18-blue),var(--v18-blue2))!important;
  color:#03111e!important;
  border:0!important;
  border-radius:16px!important;
  font-weight:950!important;
  text-decoration:none!important;
  box-shadow:0 12px 28px rgba(14,165,233,.25)!important;
  transition:transform .15s ease,box-shadow .15s ease,filter .15s ease!important;
}
.cart-trigger:hover,.btn-primary:hover,.checkout_btn a:hover,.cart_button a:hover,#sendWhatsapp:hover,.order_button button:hover,.add_to_cart_button:hover{transform:translateY(-1px)!important;box-shadow:0 16px 36px rgba(14,165,233,.32)!important;filter:saturate(1.08)!important;}
.cart-trigger .item_count{background:#e0f7ff!important;color:#03111e!important;border-radius:999px!important;font-weight:950!important;}

/* Banner: bajo y sin texto, no se corta al scrollear */
.hero,.slider_section{
  min-height:175px!important;
  height:auto!important;
  display:block!important;
  background:
    linear-gradient(135deg,rgba(5,7,13,.70),rgba(8,13,23,.88)),
    url('../img/slider/slider1.png') center/cover no-repeat!important;
  background-color:var(--v18-bg2)!important;
  border-bottom:1px solid var(--v18-border)!important;
  box-shadow:inset 0 -70px 80px rgba(5,7,13,.82)!important;
  overflow:hidden!important;
}
.hero:after,.slider_section:after,.hero-card,.slider_content{display:none!important;}

/* Layout catálogo grande */
main,.product_area,.shopping_cart_area,.Checkout_section{background:transparent!important;}
.product_area{padding-bottom:48px!important;}
.section-head{margin:32px 0 16px!important;align-items:center!important;}
.section-head h2,.checkout_form h3,.coupon_code h3,.cart_text h3{
  color:var(--v18-text)!important;
  font-weight:950!important;
  letter-spacing:-.02em!important;
  text-shadow:none!important;
}

/* Categorías: chips que envuelven, no sticky roto */
.tabs-scroll,.nav.tabs-scroll{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:10px!important;
  overflow:visible!important;
  position:relative!important;
  top:auto!important;
  z-index:1!important;
  background:transparent!important;
  margin:0 0 18px!important;
  padding:0!important;
  scrollbar-width:none!important;
}
.tabs-scroll::-webkit-scrollbar{display:none!important;}
.tabs-scroll a{
  display:inline-flex!important;
  align-items:center!important;
  min-height:42px!important;
  white-space:normal!important;
  line-height:1.1!important;
  background:rgba(16,24,39,.92)!important;
  color:#dbeafe!important;
  border:1px solid var(--v18-border)!important;
  border-radius:999px!important;
  padding:10px 15px!important;
  box-shadow:none!important;
  max-width:100%!important;
}
.tabs-scroll a.active,.tabs-scroll a:hover{
  background:linear-gradient(135deg,rgba(56,189,248,.95),rgba(14,165,233,.95))!important;
  color:#03111e!important;
  border-color:transparent!important;
}
.tab-content{min-height:400px!important;}
.tab-pane .row{row-gap:0!important;}

.product-card,.table_desc,.coupon_code,.checkout_form form,.order_table,.modal-content,.modal-store-closed .box{
  background:linear-gradient(180deg,var(--v18-card),var(--v18-card2))!important;
  color:var(--v18-text)!important;
  border:1px solid var(--v18-border)!important;
  border-radius:22px!important;
  box-shadow:var(--v18-shadow)!important;
}
.product-card{
  height:100%!important;
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
  transform:none!important;
}
.product-card:hover{transform:translateY(-3px)!important;border-color:var(--v18-border2)!important;box-shadow:0 22px 54px rgba(0,0,0,.42)!important;}
.product-img{
  height:205px!important;
  min-height:205px!important;
  background:#0b1220!important;
  border-bottom:1px solid var(--v18-border)!important;
  padding:14px!important;
}
.product-img img{max-width:100%!important;max-height:100%!important;object-fit:contain!important;filter:drop-shadow(0 12px 22px rgba(0,0,0,.35))!important;}
.product-body{display:flex!important;flex-direction:column!important;flex:1!important;min-height:178px!important;padding:16px!important;}
.product-title{color:var(--v18-text)!important;font-size:16px!important;font-weight:900!important;line-height:1.25!important;min-height:42px!important;margin:0 0 12px!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;}
.price-row{margin-top:auto!important;margin-bottom:14px!important;}
.current-price,.cart_amount_total,.price{color:var(--v18-blue3)!important;font-weight:950!important;}
.current-price{font-size:26px!important;line-height:1!important;}
.old-price{color:var(--v18-red)!important;}
.discount-badge{background:linear-gradient(135deg,var(--v18-green),#16a34a)!important;color:#ecfdf5!important;}
.add_to_cart_button{width:100%!important;min-height:46px!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;}
.add_to_cart_button.added{background:linear-gradient(135deg,var(--v18-green),#16a34a)!important;color:#ecfdf5!important;}

/* Carrito lateral */
.cart-backdrop{z-index:1100!important;background:rgba(0,0,0,.72)!important;backdrop-filter:blur(4px)!important;}
.mini_cart{
  z-index:1110!important;
  background:linear-gradient(180deg,#080d17,#0d1422)!important;
  border-left:1px solid var(--v18-border)!important;
  color:var(--v18-text)!important;
}
.cart_gallery,.mini_cart_table,.mini_cart_footer,.cart_close{background:transparent!important;}
.mini_cart_table,.mini_cart_footer,.cart_item{border-color:var(--v18-border)!important;}
.cart_info a,.cart_total,label{color:var(--v18-text)!important;}
.cart_img,.qty-actions,.empty-cart,.cart-empty{background:rgba(148,163,184,.08)!important;color:var(--v18-text)!important;}
.qty-actions button,.mini_cart_close a,.cart-close-btn{background:rgba(148,163,184,.12)!important;color:var(--v18-text)!important;border:1px solid var(--v18-border)!important;}
.qty-actions button:hover,.mini_cart_close a:hover,.cart-close-btn:hover{background:var(--v18-blue)!important;color:#03111e!important;}

/* Checkout/tablas/formularios */
.table{color:var(--v18-text)!important;background:transparent!important;}
table thead th,.order_table th{background:rgba(148,163,184,.10)!important;color:var(--v18-text)!important;border-color:var(--v18-border)!important;}
table td,table th,.order_table td{border-color:var(--v18-border)!important;color:var(--v18-text)!important;background:transparent!important;}
input,textarea,select,.form-control{
  background:rgba(15,23,42,.92)!important;
  border:1px solid var(--v18-border)!important;
  color:var(--v18-text)!important;
  border-radius:14px!important;
  min-height:46px!important;
  box-shadow:none!important;
}
input::placeholder,textarea::placeholder{color:#6b7280!important;}
input:focus,textarea:focus,select:focus,.form-control:focus{border-color:var(--v18-blue)!important;box-shadow:0 0 0 .22rem rgba(56,189,248,.16)!important;background:#0f172a!important;color:#fff!important;}
select option{background:#0f172a!important;color:#fff!important;}
.btn-outline-dark,.btn-outline-secondary{border-color:var(--v18-border2)!important;color:var(--v18-blue3)!important;background:transparent!important;border-radius:14px!important;font-weight:900!important;}
.btn-outline-dark:hover,.btn-outline-secondary:hover{background:var(--v18-blue)!important;color:#03111e!important;}
.btn-outline-danger{border-radius:12px!important;}
.badge.bg-dark{background:rgba(56,189,248,.12)!important;color:var(--v18-blue3)!important;border:1px solid var(--v18-border2)!important;}
#map{border-radius:22px!important;border:1px solid var(--v18-border)!important;box-shadow:var(--v18-shadow)!important;overflow:hidden!important;}
.footer_bottom{background:#05070d!important;color:#cbd5e1!important;border-top:1px solid var(--v18-border)!important;margin-top:52px!important;}
.footer_bottom p,.footer_bottom span{color:#cbd5e1!important;}

@media(max-width:1199px){.container{max-width:1140px!important}.product-img{height:195px!important;min-height:195px!important;}}
@media(max-width:991px){
  .hero,.slider_section{min-height:135px!important;}
  .site-header .wrap,.header_middle .row{min-height:66px!important;}
  .logo img{max-height:50px!important;}
  .section-head{margin:24px 0 14px!important;display:block!important;}
  .product-img{height:185px!important;min-height:185px!important;}
  .coupon_code{margin-top:18px!important;}
  .table-responsive{border-radius:18px!important;}
}
@media(max-width:767px){
  body{font-size:15px!important;}
  .container{padding-left:13px!important;padding-right:13px!important;}
  .site-header .wrap,.header_middle .row{min-height:62px!important;}
  .cart-trigger{padding:9px 12px!important;border-radius:14px!important;min-width:auto!important;}
  .logo img{max-height:44px!important;}
  .hero,.slider_section{min-height:105px!important;background-position:center!important;}
  .section-head h2{font-size:26px!important;}
  .tabs-scroll,.nav.tabs-scroll{gap:8px!important;margin-bottom:12px!important;}
  .tabs-scroll a{font-size:13px!important;min-height:38px!important;padding:9px 12px!important;}
  .product-img{height:165px!important;min-height:165px!important;}
  .product-body{min-height:160px!important;padding:14px!important;}
  .product-title{font-size:15px!important;min-height:38px!important;}
  .current-price{font-size:23px!important;}
  .mini_cart{width:100vw!important;right:-105vw!important;border-left:0!important;}
  .mini_cart.active{right:0!important;}
  .cart_close{position:sticky!important;top:0!important;background:#080d17!important;z-index:2!important;padding:8px 0 14px!important;border-bottom:1px solid var(--v18-border)!important;}
  .cart_gallery{padding:15px!important;}
  .mini_cart_table,.mini_cart_footer{padding:14px 15px!important;}
  .cart_item{align-items:flex-start!important;}
  .cart_img{width:56px!important;height:56px!important;flex-basis:56px!important;}
  .cart_page table,.order_table table{min-width:650px!important;}
  .checkout_form form,.coupon_code,.table_desc,.order_table{border-radius:18px!important;padding:15px!important;}
  #map{height:340px!important;}
  .footer_bottom{text-align:center!important;margin-top:36px!important;}
}
