body.realq-consult-success-open {
  overflow: hidden;
}

.realq-consult-success {
  position: fixed;
  inset: 0;
  z-index: 12000;
  display: none;
  place-items: center;
  padding: 24px;
}

.realq-consult-success.is-open {
  display: grid;
}

.realq-consult-success-backdrop {
  position: absolute;
  inset: 0;
  border: 0;
  background: rgba(9, 22, 48, .58);
  backdrop-filter: blur(5px);
}

.realq-consult-success-panel {
  position: relative;
  width: min(100%, 504px);
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, .72);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 28px 80px rgba(15, 45, 100, .28);
  transform: translateY(18px) scale(.98);
  opacity: 0;
  transition: transform .24s ease, opacity .24s ease;
}

.realq-consult-success.is-visible .realq-consult-success-panel {
  transform: translateY(0) scale(1);
  opacity: 1;
}

.realq-consult-success-head {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 58px;
  padding: 12px 64px;
  background: linear-gradient(112deg, #2d88f5 0%, #285df0 58%, #493ce9 100%);
  color: #fff;
}

.realq-consult-success-brand {
  margin: 0;
  font-size: 16px;
  line-height: 1.25;
  font-weight: 900;
  letter-spacing: -.02em;
}

.realq-consult-success-brand small {
  margin-left: 4px;
  font-size: 12px;
  font-weight: 700;
  opacity: .88;
}

.realq-consult-success-close {
  position: absolute;
  top: 50%;
  right: 16px;
  width: 38px;
  height: 38px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: transparent;
  color: #fff;
  cursor: pointer;
  transform: translateY(-50%);
}

.realq-consult-success-close::before,
.realq-consult-success-close::after {
  content: "";
  position: absolute;
  top: 18px;
  left: 10px;
  width: 19px;
  height: 2px;
  border-radius: 3px;
  background: currentColor;
}

.realq-consult-success-close::before { transform: rotate(45deg); }
.realq-consult-success-close::after { transform: rotate(-45deg); }

.realq-consult-success-body {
  padding: 38px 46px 30px;
  text-align: center;
}

.realq-consult-success-celebration {
  position: relative;
  height: 132px;
  margin-bottom: 8px;
}

.realq-consult-success-check {
  position: absolute;
  top: 15px;
  left: 50%;
  display: grid;
  place-items: center;
  width: 96px;
  height: 96px;
  border-radius: 50%;
  background: linear-gradient(145deg, #49a5ff 0%, #1766f4 52%, #3436e8 100%);
  box-shadow: 0 18px 30px rgba(40, 99, 235, .3);
  transform: translateX(-50%);
}

.realq-consult-success-check svg {
  width: 51px;
  height: 51px;
  fill: none;
  stroke: #fff;
  stroke-width: 5.5;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.realq-consult-confetti {
  position: absolute;
  width: 8px;
  height: 8px;
  border-radius: 2px;
  background: #3c7df4;
  transform: rotate(35deg);
}

.realq-consult-confetti.c1 { top: 20px; left: 24%; background: #cfe3ff; transform: rotate(45deg); }
.realq-consult-confetti.c2 { top: 55px; left: 17%; width: 15px; height: 5px; background: #2476f3; }
.realq-consult-confetti.c3 { top: 93px; left: 14%; border-radius: 50%; background: #ffb845; }
.realq-consult-confetti.c4 { top: 21px; right: 25%; background: #83b8ff; transform: rotate(45deg); }
.realq-consult-confetti.c5 { top: 57px; right: 17%; width: 14px; height: 4px; background: #38d7cf; transform: rotate(-18deg); }
.realq-consult-confetti.c6 { top: 90px; right: 20%; width: 11px; height: 5px; background: #2864ee; transform: rotate(-38deg); }
.realq-consult-confetti.c7 { top: 73px; left: 28%; width: 5px; height: 5px; background: #72dfea; }
.realq-consult-confetti.c8 { top: 73px; right: 29%; width: 6px; height: 6px; background: #dbe9ff; }

.realq-consult-success-title {
  margin: 0;
  color: #101827;
  font-size: clamp(28px, 5.5vw, 35px);
  line-height: 1.28;
  font-weight: 950;
  letter-spacing: -.045em;
  word-break: keep-all;
}

.realq-consult-success-title span {
  display: block;
  color: #2466ed;
}

.realq-consult-success-separator {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 22px 0 18px;
}

.realq-consult-success-separator::before,
.realq-consult-success-separator::after {
  content: "";
  flex: 1;
  height: 1px;
  background: #dce4ef;
}

.realq-consult-success-separator span {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #5594ff;
}

.realq-consult-success-description {
  margin: 0;
  color: #626d7e;
  font-size: 15px;
  line-height: 1.75;
  word-break: keep-all;
}

.realq-consult-success-actions {
  display: grid;
  grid-template-columns: 1fr 1.22fr;
  gap: 14px;
  margin-top: 28px;
}

.realq-consult-success-actions button {
  min-height: 52px;
  padding: 12px 16px;
  border-radius: 6px;
  font-size: 15px;
  font-weight: 850;
  cursor: pointer;
}

.realq-consult-success-confirm {
  border: 1px solid #d4dce8;
  background: #fff;
  color: #253147;
}

.realq-consult-success-additional {
  border: 1px solid #2665ed;
  background: linear-gradient(100deg, #337ff3 0%, #295bea 68%, #303be1 100%);
  color: #fff;
  box-shadow: 0 9px 20px rgba(37, 93, 229, .22);
}

.realq-consult-success-additional span {
  margin-left: 8px;
  font-size: 20px;
  line-height: 0;
  vertical-align: -1px;
}

@media (max-width: 560px) {
  .realq-consult-success {
    align-items: center;
    padding: 14px;
  }

  .realq-consult-success-panel {
    max-height: calc(100dvh - 28px);
    overflow-y: auto;
    border-radius: 14px;
  }

  .realq-consult-success-head {
    min-height: 54px;
  }

  .realq-consult-success-body {
    padding: 28px 22px 22px;
  }

  .realq-consult-success-celebration {
    height: 115px;
  }

  .realq-consult-success-check {
    top: 10px;
    width: 86px;
    height: 86px;
  }

  .realq-consult-success-title {
    font-size: 28px;
  }

  .realq-consult-success-description {
    font-size: 14px;
  }

  .realq-consult-success-actions {
    grid-template-columns: 1fr;
    gap: 10px;
    margin-top: 24px;
  }

  .realq-consult-success-additional {
    grid-row: 1;
  }
}

@media (prefers-reduced-motion: reduce) {
  .realq-consult-success-panel {
    transition: none;
  }
}
