/* ===============================================
   WIDGET: BOUTON RÉUTILISABLE
   ===============================================
   Bouton gradient avec bordure basse et halo
   Utilisé pour les CTA du site (Gratuit, liens, ...)
   =============================================== */

.widget-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;

  font-weight: 600;
  text-align: center;
  text-decoration: none;
  color: #ffffff;

  padding: 1rem 1.5rem;
  border: none;
  border-radius: 0.75rem;
  border-bottom: 4px solid var(--widget-button-border, #0c2a6b);

  background: linear-gradient(to right, #06b6d4, #3b82f6);
  box-shadow: 0 10px 15px -3px rgba(6, 182, 212, 0.3);

  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.widget-button:hover {
  background: linear-gradient(to right, #22d3ee, #60a5fa);
  box-shadow: 0 20px 25px -5px rgba(6, 182, 212, 0.5);
  color: #ffffff;
}

.widget-button:active {
  border-bottom-width: 0;
  transform: translateY(4px);
}

/* ===== SIZE VARIANTS ===== */

.widget-button.size-sm {
  padding: 0.625rem 1.5rem;
  font-size: 0.78rem;
  letter-spacing: 0.6px;
  text-transform: uppercase;
}

.widget-button.size-lg {
  padding: 1rem 2rem;
  font-size: 1rem;
}

/* ===== DISABLED ===== */

.widget-button.disabled,
.widget-button:disabled {
  background: rgba(255, 255, 255, 0.07);
  border-bottom-color: rgba(255, 255, 255, 0.12);
  color: rgba(255, 255, 255, 0.4);
  box-shadow: none;
  cursor: not-allowed;
  pointer-events: none;
}

/* ===== LAYOUT VARIANTS ===== */

.widget-button.full {
  display: flex;
  width: 100%;
}
