.precio-descuento {
  display: none;
  padding: .2rem 0.8rem !important;
  border: 0.5px solid transparent;
  border-radius: 0.3rem;
  background-color: #fcebea !important;
  border-color: #f5c6cb !important;
  color: #a71d2a !important;
  font-weight: bold !important;
  font-size: 11px !important;
}

.show-discount {
  display: block !important;
}

.noshow-discount {
  display: none !important;
}

/* Alerta base */
.alert {
    padding: .8rem 1rem;
    margin-bottom: .5rem;
    border: 1px solid transparent;
    border-radius: 0.5rem;
    font-size: 1rem;
    font-family: system-ui, sans-serif;
    line-height: 1.5;
    position: relative;
  }
  
  /* Colores personalizados */
  .alert-success {
    background-color: #e6f4ea;
    border-color: #b6e0c2;
    color: #276738;
  }
  
  .alert-danger {
    background-color: #fcebea;
    border-color: #f5c6cb;
    color: #a71d2a;
  }
  
  .alert-warning {
    background-color: #fff3cd;
    border-color: #e5cf8a;
    color: #856404;
  }
  
  .alert-info {
    background-color: #e7f3fe;
    border-color: #b8daff;
    color: #0c5460;
  }
  
  /* Tipografía dentro de la alerta */
  .alert strong {
    font-weight: bold;
  }
  
  .alert a {
    color: inherit;
    font-weight: 500;
    text-decoration: underline;
    transition: color 0.2s ease-in-out;
  }
  
  .alert a:hover {
    color: #000;
  }
  
  /* Cierre opcional */
  .alert .close {
    position: absolute;
    top: 0.5rem;
    right: 1rem;
    background: transparent;
    border: none;
    font-size: 1.2rem;
    color: inherit;
    cursor: pointer;
  }
  
/****************************************************************/
    .tabla-apilada {
      width: 100%;
      border-collapse: collapse;
      margin-top: 10px;      
    }

    .tabla-apilada thead {
      background:rgb(237, 237, 237);
    }

    .tabla-apilada th {
    background:rgb(237, 237, 237);
    font-size: 12px;
    font-weight: 500;
    padding: 10px;
    border: 1px solid #ccc;
    text-align: left;      
    }    

    .tabla-apilada td {    
    font-size: 12px;
    font-weight: 500;
    padding: 10px;
    border: 1px solid #ccc;
    text-align: left;
    }

    .tabla-apilada tr:nth-child(even) {
      background-color: #f9f9f9;
    }

    /* Tooltips visibles SIEMPRE */
    .tooltip {
      position: relative;
      cursor: help;
    }

    .tooltip::after {
      content: attr(data-tooltip);
      position: absolute;
      bottom: 125%;
      left: 0;
      background: rgba(0, 0, 0, 0.85);
      color: #fff;
      padding: 8px 12px;
      font-size: 12px;
      border-radius: 6px;
      white-space: normal;
      max-width: 250px;
      width: max-content;
      line-height: 1.3;
      opacity: 0;
      pointer-events: none;
      transform: translateY(5px);
      transition: opacity 0.3s ease, transform 0.3s ease;
      z-index: 10;
    }

    .tooltip:hover::after {
      opacity: 1;
      transform: translateY(0);
    }

        /* Ajustes responsivos para tooltips */
    @media screen and (max-width: 600px) {
      .tooltip::after {
        font-size: 12px;
        max-width: 90vw;
        left: 0;
        right: auto;
        bottom: auto;
        top: 100%;
        margin-top: 5px;
      }
    }

    /* Modo apilado en móvil */
    @media screen and (max-width: 768px) {
      .tabla-apilada,
      .tabla-apilada thead,
      .tabla-apilada tbody,
      .tabla-apilada th,
      .tabla-apilada td,
      .tabla-apilada tr {
        display: block;
      }

      .tabla-apilada thead {
        display: none;
      }

      .tabla-apilada tr {
        margin-bottom: 15px;
        background: #fff;
        border: 1px solid #ccc;
        border-radius: 10px;
        padding: 10px;
      }

      .tabla-apilada td {
        border: none;
        border-bottom: 1px solid #eee;
        padding-left: 0;
      }

      .tabla-apilada td::before {
        content: attr(data-label);
        font-weight: bold;
        display: block;
        margin-bottom: 5px;
      }

      .tabla-apilada td:last-child {
        border-bottom: none;
      }
    }