/* WalletConnect overlay (поверх tw-wire лендинга) */
.wc-backdrop {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.55);
  z-index: 2000;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s;
  display: flex;
  align-items: flex-end;
  justify-content: center;
}
.wc-backdrop.open {
  opacity: 1;
  pointer-events: auto;
}
.wc-sheet {
  width: 100%;
  max-width: 480px;
  background: #fff;
  color: #111;
  border-radius: 20px 20px 0 0;
  padding: 28px 24px calc(28px + env(safe-area-inset-bottom));
  text-align: center;
  transform: translateY(100%);
  transition: transform 0.28s ease;
}
.wc-backdrop.open .wc-sheet {
  transform: translateY(0);
}
.wc-sheet h2 {
  font-size: 1.15rem;
  font-weight: 700;
  margin-bottom: 18px;
  color: #111;
}
.wc-dots {
  display: flex;
  justify-content: center;
  gap: 6px;
  margin-bottom: 12px;
}
.wc-dots span {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #2563eb;
  animation: wc-pulse 1.2s ease-in-out infinite;
}
.wc-dots span:nth-child(2) { animation-delay: 0.15s; }
.wc-dots span:nth-child(3) { animation-delay: 0.3s; }
@keyframes wc-pulse {
  0%, 80%, 100% { opacity: 0.3; transform: scale(0.85); }
  40% { opacity: 1; transform: scale(1); }
}
.wc-status {
  font-size: 0.95rem;
  color: #6b7280;
  line-height: 1.5;
}
.wc-open-tw {
  display: block;
  width: 100%;
  margin-top: 20px;
  padding: 14px 20px;
  border-radius: 999px;
  border: 0;
  background: #2563eb;
  color: #fff;
  font-size: 1rem;
  font-weight: 600;
  cursor: pointer;
}
.wc-open-tw:active {
  opacity: 0.92;
}
.wc-open-tw--secondary {
  margin-top: 10px;
  background: #fff;
  color: #2563eb;
  border: 2px solid #2563eb;
}
.wc-hint {
  margin-top: 12px;
  font-size: 0.85rem;
  color: #374151;
  line-height: 1.45;
  text-align: left;
  padding: 10px 12px;
  background: #f3f4f6;
  border-radius: 12px;
}
.hidden { display: none !important; }
