/* ===========================
    TYPOGRAPHY 
=========================== */

@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,200..800;1,200..800&display=swap');


body {
    width: auto;
}

/* CSS FC Acre variables */
:root {
    /* Colors */
    --acre-primary-blue: #1500FF;
    --acre-primary-black: #1E1E1E;
    --acre-primary-white: #FFFFFF;
    --acre-secondary-light: #BFE6FF;
    --acre-secondary-medium: #87E8EE;
    --acre-secondary-dark: #0E1F78;
    --acre-grayscale-light: #F1F1F1;
    --acre-grayscale-medium: #D9D9D9;
    --acre-grayscale-dark: #999999;
    --acre-body-black: #474747;
    --acre-blue-black: #1550FF;
    --acre-error-state: #EC6358;
    --acre-error-state-rgb: 236, 99, 88;
    --acre-state-bg: #FAD8D5;
    --acre-btn-hover: #1100D0;

    --family-title:         'Satoshi', Helvetica, sans-serif;
    --family-body:          'Plus Jakarta Sans', Helvetica, sans-serif;

  }


/* Añadimos las fuentes para Logicommerce */
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
    font-family: var(--family-title);
}

body {
     font-family: var(--family-body);
}




/* ===========================
	CSS PARA EL POP UP DEL CARRITO PROVISIONAL 
=========================== */ 




/* Contenedor flotante */
#ajax-float-container {
    position: fixed;
    top: 50%; /* Centrado verticalmente */
    left: 50%; /* Centrado horizontalmente */
    transform: translate(-50%, -50%);
    width: 40%; /* Ajusta el ancho */
    max-height: 80%; /* Limitar altura */
    background-color: #fff; /* Fondo blanco */
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    border-radius: 8px;
    padding: 20px;
    overflow-y: auto; /* Habilitar scroll si hay demasiado contenido */
    z-index: 9999;
    display: none; /* Oculto inicialmente */
}

/* Fondo oscuro para enfocar */
#offcanvas-backdrop {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5); /* Fondo semitransparente */
    z-index: 9998;
    display: none; /* Oculto inicialmente */
}

/* Botón de cierre */
#ajax-float-container .close-btn {
    position: absolute;
    top: 10px;
    right: 10px;
    background-color: #ff5f57;
    color: #fff;
    border: none;
    border-radius: 50%;
    width: 30px;
    height: 30px;
    cursor: pointer;
    font-size: 16px;
    text-align: center;
    line-height: 30px;
}

/* Quantity */
.basketTextQuantity {
  display: flex;
  align-items: center;
  justify-content: center;
}


/* default.css */

.basketProductImage {
  float: left;
  margin-right: 5px;
  width: 80px
}

.basketProductInfo {
  float: left
}

.basketOptions {
  padding: 5px 0
}

.basketOptions .basketOption {
  padding: 3px
}

.basketAlertIcon {
  float: left;
  margin: 10px;
  cursor: default
}

.basketInvalidMessages {
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 3px;
  box-shadow: 1px 1px 2px rgba(0,0,0,0.2);
  position: absolute;
  width: 200px;
  z-index: 100;
  padding: 5px
}

.basketAlertsTitle {
  font-weight: bold
}

.basketAlertsTitle:before {
  font-family: "Glyphicons Halflings";
  margin-right: 5px;
  font-weight: normal
}

.basketAlertsDangersTitle:before {
  content: "\e083"
}

.basketAlertsWarningsTitle:before {
  content: "\e107"
}

.basketAlertsInfoTitle:before {
  content: "\e086"
}

.basketButtons {
  float: left;
  clear: both;
  padding: 20px 0;
  width: 100%
}

.basketBundleItems,.orderBundleItems {
  clear: left
}

table.basket tbody tr td.basketProductAlerts {
  padding: 0px;
  text-align: left
}

table.basket tbody tr td.basketProductAlerts div.alert {
  border-radius: 0px;
  margin: 0px
}

table.basketDisclosure {
  width: 100%;
  margin-bottom: 10px
}

.miniBasketOutput {
  min-width: 400px
}

.miniBasketHeader {
  padding: 5px;
  border-bottom: 1px solid #ddd
}

.miniBasketHeaderTitle {
  font-weight: bold;
  font-size: 1.3em;
  margin: 0
}

.miniBasketItem {
  clear: both;
  border-bottom: 1px solid #ddd;
  padding: 5px
}

.miniBasketItemImage {
  display: block;
  float: left;
  max-width: 56px;
  margin-right: 5px
}

.miniBasketItemNum {
  display: inline-block;
  margin: 0 5px 0 0
}

.miniBasketItemName {
  font-weight: bold
}

.miniBasketButtons {
  margin-top: 5px;
  padding: 5px;
  overflow: hidden
}

.miniBasketEndOrder {
  float: right
}

.miniBasketBundleItems {
  clear: left
}

.miniBasketItemGrid {
  clear: left
}

.miniBasketItemGrid .miniBasketGrid {
  display: flex;
  flex-wrap: wrap
}

.miniBasketItemGrid .miniBasketGrid .cellGrid {
  width: 25%;
  font-size: 12px;
  color: gray;
  text-align: center;
  padding: 5px
}

.miniBasketItemGrid .combinationGrid {
  padding-left: 20px;
  border-bottom: 1px solid #ddd
}

div#mobileBasketModal div.lcModalContainer>div {
  width: 90%;
  margin: 0px auto;
  clear: both;
  margin-bottom: 20px
}

div.basketSelectorPickUp {
  display: none
}

div.basketSelectorPickUp.basketSelectorPickUpActive {
  display: block
}



/* mini-basket.css */

.miniBasketHeader {
  padding: 1rem 1.5rem;
  position: relative;
}

.miniBasketHeaderTitle {
  width: 50%;
}

#miniBasketModuleHeader {
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translateY(-50%);
  color: var(--bs-gray-600);
}

#miniBasketModuleHeaderTitle:not(:hover) {
  color: inherit;
}

#miniBasketProductSubtotal {
  display: none;
}

.miniBasketItem {
  padding: 1rem;
  position: relative;
}

span.miniBasketBundleItemImage,
span.miniBasketItemImage {
  margin-right: 1rem;
  max-width: 75px;
}

img.miniBasketItemImage {
  width: 100%;
  margin-right: 0;
}

.miniBasketItemContent {
  float: left;
  width: calc(100% - 92px);
  padding-right: 1.5rem;
}

.miniBasketOutput,
.mini-basket-empty-content {
  min-width: 380px;
}

.btn-close-mb-empty {
  margin-top: 1.25rem;
}

[data-lc-mini-basket-delete],
[data-lc-mini-basket-delete-grid] {
  position: absolute;
  top: 0;
  right: 0;
  padding: 1rem;
  color: var(--bs-gray-600);
}

[data-lc-mini-basket-delete]:hover,
[data-lc-mini-basket-delete-grid]:hover {
  color: #000;
}

[data-lc-mini-basket-delete] .icon-delete,
[data-lc-mini-basket-delete-grid] .icon-delete {
  width: 1rem;
  height: 1rem;
  display: block;
}

.miniBasketItemOptions {
  display: block;
  font-size: 12px;
  color: var(--bs-gray-600);
}

.miniBasketItemName {
  display: block;
  margin-bottom: .5rem;
  font-weight: normal;
  font-size: small;
}

.miniBasketItemName a:not(:hover) {
  color: inherit;
}

.miniBasketItemNum {
  display: block;
  position: absolute;
  height: 20px;
  width: 20px;
  top: 10px;
  left: 10px;
  background-color: #333;
  text-align: center;
  color: #fff;
  font-size: 12px;
  line-height: 20px;
  border-radius: 50%;
}

.miniBasketItemPrice {
  font-weight: 500;
  line-height: 1.1;
  margin-top: .5rem;
}

.miniBasketBody {
  max-height: 380px;
  overflow: auto;
}

.miniBasketOutput .row {
  margin: 0;
}

.miniBasketOutput .row>div {
  width: 50%;
}

.miniBasketOutput .row>.col-md-5 {
  text-align: right;
}

#miniBasketOutput .miniBasketTotals {
  padding: 1rem 0 0;
}

.miniBasketOutput .row+.row {
  padding-top: .75rem;
}

.miniBasketShowTotal {
  font-weight: 500;
}

.miniBasketButtons {
  margin-top: 0;
  padding: 1rem .75rem;
}

.miniBasketContinueShopping {
  display: none;
}

.miniBasketEndOrder {
  display: block;
  width: 100%;
  font-size: 16px;
}

.mini-basket-empty-content {
  padding: 40px 20px;
  text-align: center;
}

.mini-basket-empty-content .icon {
  width: 50px;
  height: 50px;
  color: var(--bs-gray-600);
  margin: 0 auto;
  display: block;
}

.mini-basket-empty-content .empty-basket-text {
  color: var(--bs-gray-600);
  margin-top: 1.25rem;
  line-height: 1;
}

.miniBasketItemImage[style*="none"] {
  display: block !important;
  opacity: 0;
  visibility: hidden;
  width: 0px;
  height: 1px;
}

/* Bundles ------------------------------ */
.miniBasketItemBundle .miniBasketBundleImage {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: .25rem;
  min-height: 75px;
  align-items: center;
  padding: 0;
  border: 0;
  background-color: transparent;
}

.miniBasketBundleItem {
  display: flex;
  width: 100%;
  padding-top: 1rem;
}

.miniBasketViewBundle {
  color: var(--tb-primary-500);
  border: 0;
  background-color: transparent;
  padding: .5rem;
  margin-left: -.5rem;
  font-size: 12px;
  gap: .25rem;
  display: flex;
  align-items: center;
}

.miniBasketViewBundle .icon {
  width: 1rem;
  height: 1rem;
  transition: transform 150ms ease-in-out;
  transform: rotate(180deg);
}

.miniBasketViewBundle.collapsed .icon {
  transform: rotate(0deg);
}





/*  mini-basket-offcanvas.css */

#miniBasketOffcanvas #miniBasket,
#miniBasketOffcanvas #miniBasketContent,
#miniBasketOffcanvas #miniBasketOutput {
  height: 100%;
}

#miniBasketOffcanvas .mini-basket-empty-content {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  min-width: initial;
}

#miniBasketOffcanvas .miniBasketHeader {
  display: flex;
  align-items: center;
}

#miniBasketOffcanvas .miniBasketHeaderTitle {
  width: auto;
  font-size: 1.1rem;
  font-weight: bold;
}

#miniBasketOffcanvas .miniBasketHeaderSubTitle {
  margin-left: 15px;
}

#miniBasketOffcanvas #miniBasketProductUnits::before {
  content: "(";
}

#miniBasketOffcanvas #miniBasketProductUnits::after {
  content: ")";
}

#miniBasketOffcanvas #miniBasketModuleHeader {
  position: relative;
  top: auto;
  right: auto;
  transform: none;
}

#miniBasketOffcanvas .miniBasketOutput {
  min-width: 0;
  display: flex;
  flex-direction: column;
}

#miniBasketOffcanvas .miniBasketBody {
  padding: 0 1.5rem;
  max-height: none;
}

#miniBasketOffcanvas .miniBasketItem {
  padding: 1rem 0;
  border-bottom: 0;
}

#miniBasketOffcanvas .miniBasketItem+.miniBasketItem {
  border-top: 1px solid #ddd;
}

#miniBasketOffcanvas .miniBasketTotals {
  margin-top: auto;
  padding-top: 1rem;
  background-color: var(--bs-gray-200);
  padding-left: .75rem;
  padding-right: .75rem;
}

#miniBasketOffcanvas .miniBasketButtons {
  background-color: var(--bs-gray-200);
  padding: 1rem 1.5rem;
  padding-bottom: calc(1rem + env(safe-area-inset-bottom));
  overflow: visible;
}

#miniBasketOffcanvas .miniBasketItemNum {
  top: 10px;
  left: -5px;
}

#miniBasketOffcanvas [data-lc-mini-basket-delete],
#miniBasketOffcanvas [data-lc-mini-basket-delete-grid] {
  padding: 0;
  top: 1rem;
  right: 0;
}

#miniBasketOffcanvas .miniBasketTotals div>.col+.col {
  text-align: right;
}

#miniBasketOffcanvas .btn-close {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1;
  box-shadow: none;
  height: 60px;
  width: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  padding: 0;
}

@media(min-width: 992px) {
  #miniBasketOffcanvas .miniBasketButtons {
    padding-bottom: calc(1.5rem + env(safe-area-inset-bottom));
  }
}



/* CUSTOM CSS */

#sidebar_menu_side #miniBasketOffcanvas {
  position: unset;
  visibility: visible;
  transform: none;
}
#sidebar_menu_side #miniBasketOffcanvas .btn-close {
  display: none;
}