/*
 * Custom code goes here.
 * A template should always ship with an empty custom.css
 */

 #products .products {
   display: flex;
   width: 100%;
 
}

 
.products .product-miniature,
.products .thumbnail-container {
/*   box-sizing: border-box; */
   max-width: 280px;
   background-color: #f5f5f5;
}

@media (max-width: 300px) {
 .products .product-miniature,
 .products .thumbnail-container {
	width: 150px;
}} 

  
@media (min-width: 301px) and (max-width: 575px) {
 .products .product-miniature,
 .products .thumbnail-container {
	width: 150px;
}} 

@media (min-width: 576px) and (max-width: 767px) {
 .products .product-miniature,
 .products .thumbnail-container {
	width: 150px;
}}

@media (min-width: 768px) and (max-width: 991px) {
 .products .product-miniature,
 .products .thumbnail-container {
	width: 150px;
}}

@media (min-width: 992px) and (max-width: 1199px) {
 .products .product-miniature,
 .products .thumbnail-container {
	width: 150px;
}}
@media (min-width: 1200px) and (max-width: 1600px) { 
 .products .product-miniature,
 .products .thumbnail-container {
	width: 150px;
}}
@media (min-width: 1601px) { 
 .products .product-miniature,
 .products .thumbnail-container {
	width: 150px;
}}

#products .thumbnail-container,
.featured-products .thumbnail-container,
.product-accessories .thumbnail-container,
.product-miniature .thumbnail-container {
    background: #f5f5f5; }
	
#products .product-description,
.featured-products .product-description,
.product-accessories .product-description,
.product-miniature .product-description {
  background: #f5f5f5; }

#products .thumbnail-container:hover,
.featured-products .thumbnail-container:hover,
.product-accessories .thumbnail-container:hover,
.product-miniature .thumbnail-container:hover {
    border: 3px solid #2592a9;}
  
#products .thumbnail-container:focus,
.featured-products .thumbnail-container:focus,
.product-accessories .thumbnail-container:focus,
.product-miniature .thumbnail-container:focus {
    border: 3px solid #2592a9;}

#products .product-title,
.featured-products .product-title,
.product-accessories .product-title,
.product-miniature .product-title {
  text-transform: initial;
  margin-top: .7rem;
  height: 40px;
  overflow: hidden;
  color: var(--color_font);
  font-size: .875rem;
  text-decoration: none;
  font-weight: 400;
  line-height: 1.4;
  padding: 0 .5rem;
  text-align: center;
  font-weight: 400; }
  
#products .product-price-and-shipping,
.featured-products .product-price-and-shipping,
.product-accessories .product-price-and-shipping,
.product-miniature .product-price-and-shipping {
  font-weight: 700;
  color: var(--color_font);
  text-align: center;
  font-size: 19px; }
  #products .product-price-and-shipping .discount-product,
  .featured-products .product-price-and-shipping .discount-product,
  .product-accessories .product-price-and-shipping .discount-product,
  .product-miniature .product-price-and-shipping .discount-product {
    display: none; }

#products .product-description .add-to-cart-category,
  .featured-products .product-description .add-to-cart-category,
  .product-accessories .product-description .add-to-cart-category,
  .product-miniature .product-description .add-to-cart-category {
    text-transform: initial;
	text-align: center;
    display: block;
    margin: 0 auto;
    max-width: 100%;
    width: 100%;
    font-weight: 400; }
/* Lo siguiente para que se vea bien el selector de idioma */
.dropdown-menu {
display: none;
}

.dropdown-menu:hover .dropdown-menu {
display:block;
}

#header .header-nav .headernav_flex .displayNav2 {
    justify-content: flex-start;
}

/*
#products
.products .product-miniature:hover
.products .thumbnail-container:hover {
     background-color: #fff;
	 
}

#products
.product-miniature .thumbnail-container {
	width: 150px;
	box-sizing: border-box;
}*/

/*#products .thumbnail-container {width: 150px;}
#products .highlighted-informations {width: 150px;}
#products img{width: 100%; margin: 0;}
#products .product-description {width: 150px;}*/

/*#products .product,
.featured-products .product,
.product-accessories .product,
.product-miniature .product {
  padding: 0; }
  .page-index #products .product, .page-search #products .product, .page-index .featured-products .product, .page-search .featured-products .product, .page-index .product-accessories .product, .page-search .product-accessories .product, .page-index .product-miniature .product, .page-search .product-miniature .product {
    border: 8px solid green;
	width: 15%;
    min-width: 100px; }
 
#products .thumbnail-container,
.featured-products .thumbnail-container,
.product-accessories .thumbnail-container,
.product-miniature .thumbnail-container
 {
  border: 4px solid red;
  position: relative;
  width: 50%;
  max-width: 50%;
  height: auto;
  margin-bottom: 1.563rem;
  overflow: hidden;
  background: #fff; }
 
*/
  
/* @media (min-width: 1200px) {
  .container {
    border: 8px solid green;
	display: flex;
	width: 1270px;
    max-width: 100%; }
  .full_width_generic > .container {
    border: 8px solid green;
	display: flex;
	width: 1624px; } }
 */

/*#products .product,
.featured-products .product,
.product-accessories .product,
.product-miniature .product {
  border: 4px solid green;
  width: 10%;
  padding: 0; }
  .page-index #products .product, .page-search #products .product, .page-index .featured-products .product, .page-search .featured-products .product, .page-index .product-accessories .product, .page-search .product-accessories .product, .page-index .product-miniature .product, .page-search .product-miniature .product {
    width: 10%;
 }
*/
/* DESDE AQUI #js-product-list-top {
  margin: 1rem 0; }
  #js-product-list-top > div {
    padding: 0; }
  #js-product-list-top #selectProductSort {
    
display: inline-block;
    width: 50%;
    color: var(--color_font);
    background: #fff !important;
    padding: 5px;
    cursor: pointer;
    max-width: 100px;
    float: right;
    height: auto !important;
    font-size: 1rem;
    z-index: 999; }
 
 #wrapper #content-wrapper {
    display: flex;
	border: 4px solid black;
	padding-right: 0; }
*/
/* PRUEBAS
#products 
.featured-products .products,
.product-accessories .products,
/*.product-miniature,*/ 
/* PRUEBAS 
.products { */ /*Esta línea afecta al bloque de productos con todas las miniaturas*/
 /* PRUEBAS 
  width:auto; 
  border: 4px solid green; */
/*  display: flex; */
/* PRUEBAS  
 align: left;	
  flex-wrap: wrap;
  align-items: left;
  justify-content: flex-start;
  white-space: wrap;}
  
#products 
.products .product-miniature {

width:100%; */ /* Afecta a cada una de las miniaturas de productos, disminuye el tamaño pero no se alinean a más por línea*/
/* PRUEBAS  
max-width: 100%;
border: 4px solid yellow;}

#products 
.product-miniature .thumbnail-container{

max-width: 50%;
align: center;
border: 4px solid black;}

#products .js-product-list .products
{border; 4px solid black;
 width: 50%}
 
 HASTA AQUÍ */

/* EXTRAIDO DE https://mypresta.eu/prestashop-17/grid-list-switcher-in-category-view.html 
.show_list, .show_grid {
    cursor:pointer;
    opacity:1.0;
}
 
.show_list:hover, .show_grid:hover {
    opacity:0.7;
}
 
.product_show_list {
    width:100%;
}
 
.product_show_list .highlighted-informations, .product_show_list .product-description, .product_show_list .thumbnail-container {
    width:100%!important;
}
 
.product_show_list .product-thumbnail {
    text-align:center;
}
 HASTA AQUÍ */

/*
 .products-row
 .product-miniature {
   width: 10%;
   height: auto;
  border: 4px solid green;
  display: flex;
  flex-wrap: wrap;
  align-items: left;
  justify-content: flex-start; 
  white-space: wrap;	 
 }
 */
/*
#products .thumbnail-container,
.featured-products .thumbnail-container,
.product-accessories .thumbnail-container,
.product-miniature .thumbnail-container {
  border: 4px solid;
  position: relative;
  left: 2px;
  right: 2px;
  width: 60%;
  max-width: 60%;
  height: auto;
  margin-bottom: 1.563rem;
  overflow: hidden;
  background: #f5f5f5; }

#products .product-thumbnail,
.featured-products .product-thumbnail,
.product-accessories .product-thumbnail,
.product-miniature .product-thumbnail {
  border: 8px solid black;
  display: flex;
  }

@media (max-width: 1600px) {
  #products .products > div {
    width: 25%; } }
*/

/*
#products .thumbnail-container:hover .highlighted-informations, #products .thumbnail-container:focus .highlighted-informations,
  .featured-products .thumbnail-container:hover .highlighted-informations,
  .featured-products .thumbnail-container:focus .highlighted-informations,
  .product-accessories .thumbnail-container:hover .highlighted-informations,
  .product-accessories .thumbnail-container:focus .highlighted-informations,
  .product-miniature .thumbnail-container:hover .highlighted-informations,
  .product-miniature .thumbnail-container:focus .highlighted-informations {
	border: 8px solid;  
    top: calc(250px - 4.4rem);
    bottom: 5.5rem; }
#products .thumbnail-container:hover .highlighted-informations::after, #products .thumbnail-container:focus .highlighted-informations::after,
    .featured-products .thumbnail-container:hover .highlighted-informations::after,
    .featured-products .thumbnail-container:focus .highlighted-informations::after,
    .product-accessories .thumbnail-container:hover .highlighted-informations::after,
    .product-accessories .thumbnail-container:focus .highlighted-informations::after,
    .product-miniature .thumbnail-container:hover .highlighted-informations::after,
    .product-miniature .thumbnail-container:focus .highlighted-informations::after {
      opacity: 1; }
 #products .thumbnail-container:hover .highlighted-informations.no-variants, #products .thumbnail-container:focus .highlighted-informations.no-variants,
    .featured-products .thumbnail-container:hover .highlighted-informations.no-variants,
    .featured-products .thumbnail-container:focus .highlighted-informations.no-variants,
    .product-accessories .thumbnail-container:hover .highlighted-informations.no-variants,
    .product-accessories .thumbnail-container:focus .highlighted-informations.no-variants,
    .product-miniature .thumbnail-container:hover .highlighted-informations.no-variants,
    .product-miniature .thumbnail-container:focus .highlighted-informations.no-variants {
      top: calc(250px - 2.5rem);
      bottom: 2.2rem; }
#products .thumbnail-container .product-thumbnail,
  .featured-products .thumbnail-container .product-thumbnail,
  .product-accessories .thumbnail-container .product-thumbnail,
  .product-miniature .thumbnail-container .product-thumbnail {
    position: relative;
    height: calc(100% - 70px); }
 #products .thumbnail-container .product-thumbnail img,
    .featured-products .thumbnail-container .product-thumbnail img,
    .product-accessories .thumbnail-container .product-thumbnail img,
    .product-miniature .thumbnail-container .product-thumbnail img {
      position: relative;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      max-width: 75%;
      width: 75%;
      max-height: 100%;
      height: auto;
      margin: auto; }
	  
@media (max-width: 1199px) {
  #products .products > div {
    width: 25%; } }

@media (max-width: 991px) {
  .featured-products .products {
    justify-content: center; }
  .featured-products .products > div,
  .product-accessories .products > div,
  .product-miniature .products > div {
    width: 50%; }
  #products .products {
    padding: 0 5px; }
  #products .product-miniature,
  .featured-products .product-miniature,
  .splide__slide .product-miniature {
    margin: 0 10px; }
  .splide .splide__track {
    margin-left: -10px;
    margin-right: -10px; }
  #products .products > div {
    width: 33%; } }

@media (max-width: 767px) {
  .featured-products .products {
    justify-content: center; }
  .featured-products .products > div,
  .product-accessories .products > div,
  .product-miniature .products > div {
    width: 50%; }
  #products .products {
    padding: 0 8px; }
  #products .product-miniature,
  .featured-products .product-miniature,
  .splide__slide .product-miniature {
    margin: 0 7px; }
  .splide .splide__track {
    margin-left: -7px;
    margin-right: -7px; }
  #products .products > div {
    width: 50%; } 
   /* Mostrar selector de idiomas en móvil para ClassicBlinders - comentado
   #_desktop_language_selector {
        display: block !important;
    }  
    .language-selector-wrapper {
        display: inline-block;
        padding: 10px;
    }
    */	
    #_mobile_language_selector .language-selector-wrapper {
        padding-left: 5px !important;  /* Reduce espacio a la izquierda */
        padding-right: 5px !important; /* Reduce espacio a la derecha */
    }

    #_mobile_language_selector .language-selector {
        margin: 0 !important; /* Elimina márgenes externos sobrantes */
    }

    /* Opcional: Si quieres que el texto sea un pelín más pequeño para que encaje mejor */
    #_mobile_language_selector .expand-more {
        font-size: 13px !important;
	font-weight: 700 !important; /* Esto aplica la negrita */
    }
 }

@media (max-width: 575px) {
  #products .products > div {
    width: 50%; } }
	
#js-product-list-top {
  margin: 1rem 0; }
  #js-product-list-top > div {
    padding: 0; }
  #js-product-list-top #selectProductSort {
    hover: 2px solid;
	display: inline-block;
    width: 50%;
    color: var(--color_font);
    background: #fff !important;
    padding: 5px;
    cursor: pointer;
    max-width: 200px;
    float: right;
    height: auto !important;
    font-size: 1rem;
    z-index: 999; }
	
#products .highlighted-informations,
.featured-products .highlighted-informations,
.product-accessories .highlighted-informations,
.product-miniature .highlighted-informations {
  position: absolute;
  top: 250px;
  bottom: 1.25rem;
  z-index: 2;
  width: 150px;
  height: auto;
  padding-top: 0.625rem;
  text-align: center;
  background: #fff;
  transition: top 0.3s, bottom 0.3s; }
  #products .highlighted-informations .quick-view,
  .featured-products .highlighted-informations .quick-view,
  .product-accessories .highlighted-informations .quick-view,
  .product-miniature .highlighted-informations .quick-view {
    font-size: 1rem;
    color: #7a7a7a; }
    #products .highlighted-informations .quick-view:hover,
    .featured-products .highlighted-informations .quick-view:hover,
    .product-accessories .highlighted-informations .quick-view:hover,
    .product-miniature .highlighted-informations .quick-view:hover {
      color: var(--color_hover); }
	  
#products .product-description,
.featured-products .product-description,
.product-accessories .product-description,
.product-miniature .product-description {
  position: relative;
  bottom: 0;
  z-index: 3;
  width: 100%;
  max-width: 100%;
  height: auto;
  padding: 0 .5rem;
  overflow: hidden;
  background: #f5f5f5; }
  #products .product-description .add-to-cart-category,
  .featured-products .product-description .add-to-cart-category,
  .product-accessories .product-description .add-to-cart-category,
  .product-miniature .product-description .add-to-cart-category {
    text-transform: initial;
    display: block;
    margin: 0 auto;
    max-width: 100%;
    width: 100%;
    font-weight: 400; 
}

*/

.block-categories {
    padding: 1rem;
    margin-bottom: 1.563rem;
    background: #f5f5f5;
}


.block-category {
    margin-bottom: 1.563rem;
	background-color: #f5f5f5;
}	

#category .block-category {
    padding: 1.25rem;
    background-color: #f5f5f5;
}

.dbcategorydesc {
    padding: 1.25rem;
    background-color: #f5f5f5;
}	
	

.block-category .block-category-inner .category-cover img {
    width: auto;
    height: 400px;
}


#subcategories ul {
	display: flex;
    flex-wrap: wrap;
    align-items: left;
    margin: 0 0 0 -10px;
    overflow: auto;
    white-space: wrap;
}	

#subcategories ul li {
	
	border: 0.5px solid #969696;
    margin: 10px;
    text-align: center;
    background-color: #f5f5f5;
    padding: 0.5rem;
    max-width: 16.7%;
    flex-grow: 1;
	text-transform: uppercase;
}

#subcategories ul li:hover {
     border: 3px solid #101010;
	 
}

#subcategories ul li .subcategory-name img {
	height: auto;
    width: 160px;
    display: block;
    margin: 0 auto;
}

@media (max-width: 300px) {
 #subcategories ul li {
	width: calc(100% - 20px);
	max-width: 90%;
}} 

  
@media (min-width: 301px) and (max-width: 575px) {
 #subcategories ul li .subcategory-name img {
	height: auto;
    width: 140px;
    display: block;
    margin: 0 auto;
}
 #subcategories ul li {
	width: calc(100% / 2 - 20px);
	max-width: 45%;
}} 

@media (min-width: 576px) and (max-width: 767px) {
  #subcategories ul li {
    width: calc(100% / 2 - 20px);
    max-width: 45%;	
}}

@media (min-width: 768px) and (max-width: 991px) {
 #subcategories ul li {
	width: calc(100% / 3 - 20px);
	max-width: 30%;
}}

@media (min-width: 992px) and (max-width: 1199px) {
 #subcategories ul li {
	width: calc(100% / 5 - 20px);
	max-width: 18%;
}}
@media (min-width: 1200px) and (max-width: 1600px) { 
 #subcategories ul li {
	width: calc(100% / 6 - 20px);
	max-width: 16%;
}}
@media (min-width: 1601px) { 
 #subcategories ul li .subcategory-name img {
	height: auto;
    width: 180px;
    display: block;
    margin: 0 auto;
 }
 #subcategories ul li {
	width: calc(100% / 6 - 20px);
	max-width: 16%;
}}

/*
.cart-item .cart__product-qty {
    width: 35%;
    text-align: center;
}
.cart-item .cart__product-qty .input-group {
    margin: 0 auto;
    display: table;
    float: none;
    z-index: 1000;
}
.cart-item .cart__product-qty .input-group .js-cart-line-product-quantity {
    height: 38px !important;
    left: 29px;
    width: 35px;
    text-align: center;
    line-height: 24px;
    border-left: 0;
    border-top: 0.8px solid var(--primary_color);
    border-bottom: 0.8px solid var(--primary_color);
    border-right: 0;
}
*/
.bootstrap-touchspin .input-group-btn-vertical .touchspin-up:after {
    content: "\e145";}
.bootstrap-touchspin .input-group-btn-vertical .touchspin-down:after {
    content: "\e15b";}
/*
.cart-item .cart__product-qty .bootstrap-touchspin #quantity_wanted, .cart-item .cart__product-qty .bootstrap-touchspin #quantity_wanted_miniature { */
 bootstrap-touchspin #quantity_wanted, .bootstrap-touchspin #quantity_wanted_miniature {
    left: 29px;
    width: 50px;
    height: 44px !important;
    padding: 0;
    text-align: center;
    line-height: 24px;
    border-left: 0;
    border-top: 0.8px solid var(--primary_color);
    border-bottom: 0.8px solid var(--primary_color);
    border-right: 0;
}


/*.cart-item .cart__product-qty .bootstrap-touchspin .input-group-btn-vertical { */
.bootstrap-touchspin .input-group-btn-vertical {
    display: flex;
    flex-direction: row;
    align-items: center;
    height: 100%;
    border-color: var(--primary_color); 	
	}
*/
/*.cart-item .cart__product-qty .bootstrap-touchspin .input-group-btn-vertical .btn {*/
.bootstrap-touchspin .input-group-btn-vertical .btn {
    height: 38px !important;
    padding: 1px 6px !important;
    top: 0;
    margin-top: 0;
	border-color: var(--primary_color);

}
*/
/*
.cart-item .cart__product-qty .bootstrap-touchspin .input-group-btn-vertical .btn i { */
.bootstrap-touchspin .input-group-btn-vertical .btn i {
    position: relative;
    top: 0;
    left: 0;
}
.cart-item .cart__product-qty .bootstrap-touchspin .input-group-btn-vertical .btn.bootstrap-touchspin-down {
    left: -61px;
    margin: 0;
    border-color: var(--primary_color);
}
.cart-item .cart__product-qty .bootstrap-touchspin .input-group-btn-vertical .btn.bootstrap-touchspin-up { 
	left: 30px;
    border-color: var(--primary_color);
    border-left: 0;}

.block-category .block-category-inner .category-cover img {
    width: auto;
    height: 380px;
}
/* Oscurecer el texto de paginación para legibilidad */
.showing {
    color: #414141 !important; /* Un gris oscuro con buen contraste */
}

/* Ocultar el texto "Idioma:" solo en el selector móvil */
/* Eliminar definitivamente el texto "Idioma :" en móviles */
#language-selector-label {
    display: none !important;
}

/* 2. Botón de suscripción (Newsletter) */
/* Usamos un azul un poco más intenso para que el texto blanco destaque */
#footer .btn-primary[name="submitNewsletter"],
.btn-primary[name="submitNewsletter"] {
    background-color: #008291 !important; 
    color: #FFFFFF !important;
    border-color: #008291 !important;
}

/* 1. Reservar espacio para el logo en móvil 
@media (max-width: 767px) {
     .logo.img-responsive {
        width: 150px !important;
        height: 67px !important;
        aspect-ratio: 150 / 67;
    }  
*/
    /* 2. Evitar el salto de los productos destacados */
    /* Le damos una altura mínima aproximada para que el pie de página no suba y baje */
    section.featured-products {
        min-height: 400px; 
        overflow: hidden;
    }
    
    /* 3. Corregir el selector de idiomas móvil que también marca 0 */
    #_mobile_language_selector {
        min-height: 40px;
    }
/* Contenedor principal para dar margen */
#module-myprestaloyalty-default #content {
    background: #fff;
    padding: 20px;
    border-radius: 8px;
}

/* Estilo de la tabla principal */
#module-myprestaloyalty-default table.table {
    border: none;
    margin-bottom: 2rem;
    box-shadow: 0 4px 15px rgba(0,0,0,0.05);
}

/* Encabezados de tabla */
#module-myprestaloyalty-default table.table thead th {
    background-color: #f8f9fa;
    color: #333;
    border-bottom: 2px solid #2fb5d2; /* Color corporativo */
    padding: 15px;
    text-transform: uppercase;
    font-size: 0.8rem;
}

/* Celdas de la tabla */
#module-myprestaloyalty-default table.table tbody td {
    padding: 12px 15px;
    vertical-align: middle;
    border-top: 1px solid #f1f1f1;
}

/* Estilizar el texto de "Transformar mis puntos..." */
#module-myprestaloyalty-default a[href*="transform-points"] {
    display: inline-block;
    margin: 20px 0;
    padding: 12px 25px;
    background-color: #2fb5d2;
    color: white !important;
    border-radius: 4px;
    font-weight: bold;
    text-decoration: none;
    transition: background 0.3s ease;
}

#module-myprestaloyalty-default a[href*="transform-points"]:hover {
    background-color: #232323;
}

/* Títulos H2 (Mis cupones...) */
#module-myprestaloyalty-default h2 {
    font-size: 1.4rem;
    margin-top: 30px;
    padding-bottom: 10px;
    border-bottom: 1px solid #eee;
}

/* Arreglar los inputs de paginación/filtro (el 59 y summary) */
.bottom-pagination-content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 15px;
    background: #fdfdfd;
    border: 1px solid #eee;
    border-radius: 4px;
}
/* Contenedor de cada bloque en la columna izquierda */
.navigation_desktop .card.navigation_account {
    border: 1px solid #eeeeee;
    background: #ffffff;
    margin-bottom: 15px;
    border-radius: 4px;
    overflow: hidden;
}

/* Título de cada sección (ej. "Mis pedidos") */
.navigation_desktop .card.navigation_account .title {
    display: block;
    background: #f8f9fa;
    padding: 10px 15px;
    font-weight: bold;
    color: #333;
    border-bottom: 1px solid #eeeeee;
    text-transform: uppercase;
    font-size: 0.85rem;
}

/* Ajuste de los enlaces (items) */
.navigation_desktop .card.navigation_account a.item {
    display: flex; /* Alinea icono y texto en línea */
    align-items: center;
    padding: 12px 15px;
    color: #2fb5d2; /* Tu color azul */
    text-decoration: none;
    transition: background 0.2s, color 0.2s;
    border-bottom: 1px solid #f9f9f9;
}

.navigation_desktop .card.navigation_account a.item:last-child {
    border-bottom: none;
}

.navigation_desktop .card.navigation_account a.item:hover {
    background-color: #f0faff;
    color: #232323;
}

/* Ajuste de los iconos */
.navigation_desktop .card.navigation_account a.item i.material-icons {
    margin-right: 10px;
    font-size: 1.2rem;
    vertical-align: middle;
    color: #7a7a7a; /* Color neutro para los iconos */
}

/* Espaciado general del aside */
#left-column {
    padding-right: 20px;
}
/* =========================================
   ESTILO DE LA TABLA DE VALES (CUPONES)
   ========================================= */

/* 1. Contenedor principal de la tabla para dar "aire" */
#content section.page-content #discount_table,
#content section.page-content table.table {
    margin: 2rem 0;
    box-shadow: 0 4px 15px rgba(0,0,0,0.05);
    border: none; /* Quitamos bordes externos feos */
    background: #fff;
}

/* 2. Estilo de los encabezados de tabla (Código, Valor, etc.) */
#content table.table thead th {
    background-color: #f8f9fa; /* Fondo gris muy suave */
    color: #333;
    padding: 15px !important;
    text-transform: uppercase;
    font-size: 0.85rem;
    font-weight: 700;
    border-bottom: 2px solid #2fb5d2; /* Tu color azul corporativo */
    vertical-align: middle;
}

/* 3. Estilo de las filas y celdas del cuerpo (tbody) */
#content table.table tbody tr {
    transition: background 0.2s;
}

#content table.table tbody tr:hover {
    background-color: #fcfcfc; /* Un suave hover al pasar el ratón */
}

#content table.table tbody td {
    padding: 12px 15px;
    vertical-align: middle;
    border-top: 1px solid #eeeeee;
}

/* 4. SOLUCIÓN AL PROBLEMA DE ALINEACIÓN: CANTIDAD Y VALOR */
/* Primero, forzamos que todas las celdas se alineen al centro o izquierda por defecto */
#content table.table.table-striped tbody td,
#content table.table.table-striped thead th {
    text-align: left !important;
}

/* Alineamos el Código (la primera columna) a la izquierda */
#content table.table tbody th {
    text-align: left;
    padding: 12px 15px;
    font-family: monospace; /* Fuente de código para el código */
}

/* Centramos la columna Cantidad (la tercera, `.text-xs-right` en tu imagen) */
/* Usamos :nth-child(3) para asegurarnos de que es la columna exacta */
#content table.table tbody td:nth-child(3) {
    text-align: center !important; 
    font-weight: bold;
    color: #333;
}

/* Alineamos el Valor (la cuarta columna, ej: 10,08 €) a la derecha */
#content table.table tbody td:nth-child(4) {
    text-align: right !important; 
    font-weight: bold;
    color: #008291; /* Un color verde/azul más intenso para resaltar el valor económico */
    white-space: nowrap; /* Evita que el euro se baje de línea */
}
/* Que aparezcan correctamente los espacios para cupones en el carrito */

/* Ocultar el mensaje de error por defecto */
#promo-code .js-error {
    display: none;
}

/* Mostrar el error solo cuando haya clase de error */
#promo-code .promo-code.has-error .js-error {
    display: block;