.alert {
  position: relative;
}
.alert i.close {
  position: absolute;
  top: var(--s-3);
  right: var(--s-3);
  z-index: 1;
}
.alert .title {
  text-align: left;
  padding: var(--s2) var(--s2) 0;
}
.alert .body {
  display: flex;
  flex-flow: column nowrap;
  padding: var(--s0) var(--s2) 1px;
  display: flex;
  flex-flow: column nowrap;
  justify-items: flex-start;
  gap: var(--s0);
  width: 100%;
  overflow: hidden;
  overflow-y: auto;
}
.alert .footer {
  flex-flow: column;
  position: relative;
  padding: var(--s0) var(--s2);
  width: 100%;
}
.alert-no {
  margin-top: var(--s-3);
}
.alert-yes {
  max-width: none !important;
}
.alert .error {
  border: none;
}
.alert .error::after {
  display: none;
}
.alert .error[data-error]::after {
  display: block;
  content: attr(data-error);
  margin: var(--s-5) 0;
  color: var(--secondaryRed);
  text-align: center;
}
.alert-photo {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-flow: column nowrap;
  
  margin: var(--s0) 0;
}
.alert-photo img,
.alert-photo i {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 7rem;
  height: 7rem;
  border-radius: 50%;
  pointer-events: none;
}

.alert > * {
  opacity: 1;
  transition: opacity 0.15s;
}
.alert > *.hide {
  opacity: 0;
}