/* ZIC Landing — fenêtre « succès + compte à rebours » avant l'activation
   (static/js/zic-activation.js). Préfixe `zah-`. Au-dessus de tous les popups
   de module (leurs overlays plafonnent vers 10000). */
.zah-overlay {
  position: fixed;
  inset: 0;
  z-index: 2147483000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  background: rgba(15, 8, 32, .62);
  font-family: "DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
  animation: zah-fade .2s ease;
}
.zah-card {
  width: 100%;
  max-width: 400px;
  background: #fff;
  color: #1F1340;
  border-radius: 22px;
  padding: 28px 24px 22px;
  text-align: center;
  box-shadow: 0 24px 70px rgba(31, 19, 64, .35);
  animation: zah-pop .35s cubic-bezier(.2, .9, .3, 1.2);
}
.zah-check {
  width: 64px;
  height: 64px;
  margin: 0 auto 14px;
  border-radius: 50%;
  background: linear-gradient(135deg, #16A34A, #4ADE80);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 12px 26px rgba(34, 197, 94, .35);
}
.zah-check svg { width: 30px; height: 30px; }
.zah-title { margin: 0; font-family: "Space Grotesk", "DM Sans", sans-serif; font-weight: 800; font-size: 22px; letter-spacing: -.4px; line-height: 1.2; }
.zah-text { margin: 8px 0 0; font-size: 14.5px; color: #6B6484; line-height: 1.5; }
.zah-bar { margin: 18px 0 0; height: 5px; border-radius: 99px; background: #ECE7F6; overflow: hidden; }
.zah-bar-fill { display: block; height: 100%; width: 100%; background: linear-gradient(90deg, #7B3FF2, #DB2777); transform-origin: left; animation: zah-countdown 5s linear forwards; }
.zah-count { margin: 8px 0 0; font-size: 12.5px; color: #8E87A3; }
.zah-actions { display: flex; flex-direction: column; gap: 8px; margin-top: 16px; }
.zah-btn {
  min-height: 48px;
  padding: 12px 16px;
  border-radius: 14px;
  border: 0;
  font-family: "Space Grotesk", "DM Sans", sans-serif;
  font-weight: 800;
  font-size: 15px;
  cursor: pointer;
}
.zah-btn--primary { background: linear-gradient(135deg, #7B3FF2, #4F46E5); color: #fff; box-shadow: 0 12px 26px rgba(123, 63, 242, .34); }
.zah-btn--ghost { background: transparent; color: #6B6484; font-family: "DM Sans", sans-serif; font-weight: 700; font-size: 14px; min-height: 40px; }
.zah-btn:focus-visible { outline: 3px solid rgba(123, 63, 242, .45); outline-offset: 2px; }
@media (max-width: 480px) {
  .zah-overlay { align-items: flex-end; padding: 0; }
  .zah-card { max-width: none; border-radius: 22px 22px 0 0; padding-bottom: calc(22px + env(safe-area-inset-bottom)); }
}
@keyframes zah-fade { from { opacity: 0; } to { opacity: 1; } }
@keyframes zah-pop { from { opacity: 0; transform: translateY(14px) scale(.96); } to { opacity: 1; transform: none; } }
@keyframes zah-countdown { from { transform: scaleX(1); } to { transform: scaleX(0); } }
@media (prefers-reduced-motion: reduce) {
  .zah-overlay, .zah-card { animation: none; }
  .zah-bar-fill { animation: none; }
}
