/* ==========================================================================
   UNDETECTABLE UGC — THANK YOU PAGE
   Section-specific styles for thank-you.html. Requires base.css.
   ========================================================================== */

.confirm {
  min-height: 100svh;
  display: grid;
  align-content: center;
  padding-block: clamp(4rem, 12vw, 7rem);
  position: relative;
  background:
    radial-gradient(ellipse 70% 55% at 50% 0%, rgba(212, 255, 63, 0.11), transparent 62%),
    var(--ink);
}

.confirm__inner {
  max-width: 720px;
  margin-inline: auto;
  text-align: center;
}

/* ---- The check seal ------------------------------------------------------ */

.check {
  position: relative;
  width: 84px;
  height: 84px;
  margin: 0 auto 2.25rem;
  border-radius: 50%;
  border: 2px solid var(--lime);
  display: grid;
  place-content: center;
  background: var(--lime-glow);
  animation: seal 0.7s var(--ease) both;
}

.check svg {
  width: 34px;
  height: 34px;
  overflow: visible;
}

.check path {
  fill: none;
  stroke: var(--lime);
  stroke-width: 2.75;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-dasharray: 40;
  stroke-dashoffset: 40;
  animation: draw 0.5s var(--ease) 0.45s forwards;
}

@keyframes seal {
  from { opacity: 0; transform: scale(0.6); }
  to   { opacity: 1; transform: none; }
}

@keyframes draw {
  to { stroke-dashoffset: 0; }
}

/* Halo pulse behind the seal */
.check::after {
  content: "";
  position: absolute;
  width: 84px;
  height: 84px;
  border-radius: 50%;
  border: 1px solid var(--lime);
  animation: halo 2.6s var(--ease) 1s infinite;
}

@keyframes halo {
  0%   { opacity: 0.55; transform: scale(1); }
  70%  { opacity: 0; transform: scale(1.9); }
  100% { opacity: 0; transform: scale(1.9); }
}

.confirm__inner > * {
  animation: rise 0.85s var(--ease) both;
}

.confirm__inner > *:nth-child(2) { animation-delay: 0.12s; }
.confirm__inner > *:nth-child(3) { animation-delay: 0.22s; }
.confirm__inner > *:nth-child(4) { animation-delay: 0.32s; }
.confirm__inner > *:nth-child(5) { animation-delay: 0.42s; }
.confirm__inner > *:nth-child(6) { animation-delay: 0.52s; }

@keyframes rise {
  from { opacity: 0; transform: translateY(22px); }
  to   { opacity: 1; transform: none; }
}

/* ---- Order summary line -------------------------------------------------- */

.receipt {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.75rem 2rem;
  padding: 1.1rem 1.5rem;
  margin-block: 2.25rem;
  border: 1px solid var(--ink-line);
  border-radius: 4px;
  background: var(--ink-card);
  font-family: var(--mono);
  font-size: 0.75rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--paper-mute);
}

.receipt b {
  color: var(--paper);
  font-weight: 500;
  margin-left: 0.5em;
}

.receipt .ok { color: var(--lime); }

/* ---- Next steps ---------------------------------------------------------- */

.next {
  display: grid;
  gap: 1px;
  background: var(--ink-line);
  border: 1px solid var(--ink-line);
  border-radius: 4px;
  overflow: hidden;
  text-align: left;
  margin-bottom: 2.5rem;
}

@media (min-width: 760px) {
  .next { grid-template-columns: repeat(3, 1fr); }
}

.next__step {
  background: var(--ink-card);
  padding: clamp(1.4rem, 3vw, 1.85rem);
}

.next__no {
  font-family: var(--mono);
  font-size: 0.6875rem;
  font-weight: 500;
  letter-spacing: 0.18em;
  color: var(--lime-deep);
  display: block;
  margin-bottom: 1rem;
}

.next__step h3 {
  font-family: var(--display);
  font-size: 1.25rem;
  text-transform: uppercase;
  line-height: 1.05;
  margin-bottom: 0.6rem;
}

.next__step p {
  font-size: 0.875rem;
  font-weight: 300;
  color: var(--paper-dim);
  line-height: 1.55;
}

/* ---- Spam warning -------------------------------------------------------- */

.notice {
  display: flex;
  gap: 0.9rem;
  align-items: flex-start;
  text-align: left;
  padding: 1.15rem 1.35rem;
  border: 1px dashed var(--ink-line-2);
  border-radius: 4px;
  margin-top: 2.5rem;
}

.notice__icon {
  font-family: var(--mono);
  font-size: 0.75rem;
  color: var(--lime);
  flex: none;
  line-height: 1.7;
}

.notice p { font-size: 0.875rem; font-weight: 300; color: var(--paper-dim); }
.notice a { color: var(--lime); }
