/* =========================
   NOTIFICACIONES (DARK TECH)
========================= */
.notificacion {
  position: fixed;
  top: 20px;
  right: 20px;
  max-width: 340px;
  margin-top: 2.5rem;
  padding: 16px 18px;

  background: rgba(255, 255, 255, 0.08);
  color: #e8ecff;

  border-radius: 14px;
  border: 1px solid rgba(255, 255, 255, 0.14);

  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.45);
  backdrop-filter: blur(14px);

  z-index: 9999;
  font-size: 14px;
  line-height: 1.45;

  animation: slideIn 0.3s ease;
  transition:
    opacity 0.6s ease,
    transform 0.6s ease;
}

.notificacion strong {
  display: block;
  margin-bottom: 4px;
  font-weight: 800;
  letter-spacing: 0.2px;
}

/* =========================
   VARIANTES
========================= */
.notificacion-ok {
  border-left: 5px solid rgba(34, 211, 238, 0.95); /* neon cyan */
}

.notificacion-error {
  border-left: 5px solid rgba(255, 77, 109, 0.95); /* neon rojo */
}

/* =========================
   ANIMACIONES
========================= */
@keyframes slideIn {
  from {
    opacity: 0;
    transform: translateX(24px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

.notificacion-hide {
  opacity: 0;
  transform: translateY(-10px);
  pointer-events: none;
}

/* =========================
   RESPONSIVE
========================= */
@media (max-width: 600px) {
  .notificacion {
    right: 12px;
    left: 12px;
    max-width: none;
  }
}

/* =========================
   NOTIFICACION INLINE (NO TOAST)
   Para mensajes dentro del layout (ej: cupón)
========================= */
.notificacion-inline {
  position: relative; /* NO fixed */
  top: auto;
  right: auto;
  left: auto;

  max-width: 100%;
  margin-top: 0; /* ya lo controlás con margin */

  padding: 14px 16px;
  border-radius: 14px;

  background: rgba(255, 255, 255, 0.08);
  color: #e8ecff;

  border: 1px solid rgba(255, 255, 255, 0.14);
  box-shadow: 0 10px 22px rgba(0, 0, 0, 0.25);
  backdrop-filter: blur(14px);

  z-index: 1; /* no tapa todo */
  font-size: 14px;
  line-height: 1.45;

  animation: none; /* opcional: sin slideIn */
}

.notificacion-inline strong {
  display: block;
  margin-bottom: 4px;
  font-weight: 800;
  letter-spacing: 0.2px;
}

/* Mantiene las variantes */
.notificacion-inline.notificacion-ok {
  border-left: 5px solid rgba(34, 211, 238, 0.95);
}
.notificacion-inline.notificacion-error {
  border-left: 5px solid rgba(255, 77, 109, 0.95);
}

/* Para que tu JS no las “oculte” como toast */
.notificacion-inline.notificacion-hide {
  opacity: 1;
  transform: none;
}

