/* ==========================================================================
   mástersport · alerts.css — Tema SweetAlert2 alineado con los tokens
   ========================================================================== */

.ms-swal.swal2-popup {
  background: var(--ms-surface);
  color: var(--ms-text-1);
  border: 1px solid var(--ms-border);
  border-radius: var(--ms-radius-xl);
  box-shadow: var(--ms-shadow-xl);
  padding: 24px 26px 18px;
  font-family: var(--ms-font-body);
}

/* Icono pequeño arriba a la izquierda (34px, no círculo gigante) */
.ms-swal .swal2-icon {
  width: 34px;
  height: 34px;
  border-radius: var(--ms-radius-md);
  border-width: 0;
  font-size: 16px;
  line-height: 34px;
  margin: 0 0 14px;
  position: relative;
  float: none;
  box-shadow: none;
}

.ms-swal .swal2-icon.swal2-success { background: var(--ms-success-bg); color: var(--ms-success); border: 1px solid var(--ms-success-border); }
.ms-swal .swal2-icon.swal2-error   { background: var(--ms-danger-bg);  color: var(--ms-danger);  border: 1px solid var(--ms-danger-border); }
.ms-swal .swal2-icon.swal2-warning { background: var(--ms-warning-bg); color: var(--ms-warning); border: 1px solid var(--ms-warning-border); }
.ms-swal .swal2-icon.swal2-info    { background: var(--ms-info-bg);    color: var(--ms-info);    border: 1px solid var(--ms-info-border); }
.ms-swal .swal2-icon.swal2-question{ background: var(--ms-brand-soft); color: var(--ms-brand);   border: 1px solid var(--ms-brand-border); }

/* Textos alineados a la izquierda */
.ms-swal .swal2-title {
  text-align: left;
  font-size: var(--ms-fs-lg);
  font-weight: 700;
  color: var(--ms-text-1);
  padding: 0;
  margin: 0 0 6px;
}

.ms-swal .swal2-html-container {
  text-align: left;
  font-size: var(--ms-fs-md);
  color: var(--ms-text-3);
  margin: 0;
  padding: 0;
  line-height: 1.55;
}

/* Listas internas con viñetas */
.ms-swal .swal2-html-container ul {
  margin: 10px 0 0;
  padding-left: 18px;
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.ms-swal .swal2-html-container li::marker {
  color: var(--ms-brand);
}

/* Pie de botones igual que .ms-modal__footer */
.ms-swal .swal2-actions {
  margin-top: 18px;
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  background: var(--ms-surface-2);
  margin-right: -26px;
  margin-left: -26px;
  margin-bottom: -18px;
  padding: 14px 26px;
  border-radius: 0 0 var(--ms-radius-xl) var(--ms-radius-xl);
  border-top: 1px solid var(--ms-border);
}

.ms-swal .swal2-actions .swal2-styled {
  height: 38px;
  padding: 0 16px;
  border-radius: var(--ms-radius-md);
  font-size: var(--ms-fs-md);
  font-weight: 600;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  box-shadow: none;
  transition: background-color var(--ms-dur) var(--ms-ease), transform var(--ms-dur) var(--ms-ease);
}

.ms-swal .swal2-actions .swal2-styled:active {
  transform: translateY(1px);
}

.ms-swal .swal2-confirm {
  background: var(--ms-brand);
}

.ms-swal .swal2-confirm:hover {
  background: var(--ms-brand-hover);
  box-shadow: 0 4px 12px rgba(var(--ms-c-brand), .30);
}

.ms-swal .swal2-cancel {
  background: var(--ms-surface);
  color: var(--ms-text-1);
  border: 1px solid var(--ms-border-strong);
}

.ms-swal .swal2-cancel:hover {
  background: var(--ms-surface-2);
  color: var(--ms-text-1);
}

.ms-swal .swal2-deny {
  background: var(--ms-danger-bg);
  color: var(--ms-danger);
}

.ms-swal .swal2-deny:hover {
  background: var(--ms-danger);
  color: #fff;
}

/* Ajuste adicional: ancho natural */
.ms-swal.swal2-popup { width: 420px; padding: 24px 26px 18px; }
.ms-swal .swal2-title + .swal2-html-container { margin-top: 0; }