     .dropdown-menu {
      display: none;
      position: absolute;
      top: 100%;
      left: 0;
      background-color: #f9f9f9;
      min-width: 160px;
      border: 1px solid #ccc;
      border-radius: 5px;
      z-index: 1000;
      box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
    }

    .dropdown-menu a {
      display: block;
      padding: 12px 16px;
      text-decoration: none;
      color: #333;
      transition: background-color 0.2s ease;
      font-size: 0.875rem;
    }

    .dropdown-menu a:hover {
      background-color: #f3f4f6;
    }

    .show {
      display: block;
    }

    /* Modal completamente responsive */
    .modal {
      display: none;
      position: fixed;
      z-index: 1000;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%;
      background-color: rgba(0,0,0,0.5);
      padding: 1rem;
      box-sizing: border-box;
    }

    .modal-content {
      background-color: #fefefe;
      margin: 2rem auto;
      padding: 1.5rem;
      border: 1px solid #e5e7eb;
      width: 100%;
      max-width: 500px;
      border-radius: 0.5rem;
      max-height: 90vh;
      overflow-y: auto;
      position: relative;
    }

    /* Scroll suave para el carrito */
    #vista-carrito {
      scrollbar-width: thin;
      scrollbar-color: #d1d5db transparent;
    }

    #vista-carrito::-webkit-scrollbar {
      width: 6px;
    }

    #vista-carrito::-webkit-scrollbar-track {
      background: transparent;
    }

    #vista-carrito::-webkit-scrollbar-thumb {
      background-color: #d1d5db;
      border-radius: 3px;
    }

    /* Animación suave para transiciones */
    .fade-in {
      animation: fadeIn 0.3s ease-in-out;
    }

    @keyframes fadeIn {
      from { opacity: 0; transform: translateY(10px); }
      to { opacity: 1; transform: translateY(0); }
    }

    /* Estilos para formularios de pago mejorados */
    .form-group {
      margin-bottom: 1rem;
    }

    .form-group label {
      display: block;
      margin-bottom: 0.5rem;
      font-weight: 600;
      font-size: 0.875rem;
      color: #374151;
    }

    .form-group input, 
    .form-group select, 
    .form-group textarea {
      width: 100%;
      padding: 0.75rem;
      border: 1px solid #d1d5db;
      border-radius: 0.375rem;
      box-sizing: border-box;
      font-size: 0.875rem;
      transition: border-color 0.2s ease;
    }

    .form-group input:focus, 
    .form-group select:focus, 
    .form-group textarea:focus {
      outline: none;
      border-color: #3b82f6;
      box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
    }

    /* Loading spinner mejorado */
    .loading {
      display: inline-block;
      width: 20px;
      height: 20px;
      border: 2px solid #f3f4f6;
      border-top: 2px solid #25D366;
      border-radius: 50%;
      animation: spin 1s linear infinite;
    }

    @keyframes spin {
      0% { transform: rotate(0deg); }
      100% { transform: rotate(360deg); }
    }

    /* WhatsApp button mejorado */
    .whatsapp-btn {
      background-color: #25D366 !important;
      color: white !important;
      border: none !important;
      transition: all 0.3s ease;
      display: inline-flex;
      align-items: center;
      gap: 0.5rem;
    }

    .whatsapp-btn:hover {
      background-color: #128C7E !important;
      transform: scale(1.05);
    }

    /* Botón flotante WhatsApp mejorado para móviles */
    .whatsapp-floating {
      position: fixed;
      bottom: 1.5rem;
      right: 1.5rem;
      background-color: #25D366;
      color: white;
      width: 3.5rem;
      height: 3.5rem;
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      box-shadow: 0 4px 12px rgba(37, 211, 102, 0.3);
      z-index: 1000;
      transition: all 0.3s ease;
      text-decoration: none;
    }

    .whatsapp-floating:hover {
      background-color: #128C7E;
      transform: scale(1.1);
      box-shadow: 0 6px 20px rgba(37, 211, 102, 0.4);
    }

    /* Mejoras para productos */
    .producto-card {
      transition: all 0.3s ease;
      position: relative;
      overflow: hidden;
    }

    .producto-card:hover {
      transform: translateY(-4px);
      box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
    }

    .producto-imagen {
      aspect-ratio: 1;
      object-fit: cover;
      transition: transform 0.3s ease;
    }

    .producto-card:hover .producto-imagen {
      transform: scale(1.05);
    }

    /* Badge de estado */
    .badge-nuevo {
      position: absolute;
      top: 8px;
      left: 8px;
      background-color: #10b981;
      color: white;
      padding: 0.25rem 0.5rem;
      border-radius: 9999px;
      font-size: 0.75rem;
      font-weight: 600;
      z-index: 10;
    }

    .badge-oferta {
      position: absolute;
      top: 8px;
      right: 8px;
      background-color: #ef4444;
      color: white;
      padding: 0.25rem 0.5rem;
      border-radius: 9999px;
      font-size: 0.75rem;
      font-weight: 600;
      z-index: 10;
    }

    /* Para pantallas muy pequeñas */
    @media (max-width: 360px) {
      .modal-content {
        margin: 1rem auto;
        padding: 1rem;
      }
      
      .form-group input,
      .form-group select,
      .form-group textarea {
        padding: 0.625rem;
        font-size: 0.875rem;
      }
    }

    /* Ocultar scrollbar en webkit para mejor UX */
    .no-scrollbar::-webkit-scrollbar {
      display: none;
    }

    .no-scrollbar {
      -ms-overflow-style: none;
      scrollbar-width: none;
    }