.pay-card { max-width: 560px; margin: 0 auto; }
.pay-top { display:flex; justify-content:space-between; gap:12px; flex-wrap:wrap; margin-bottom:16px; }
.pay-amount { font-size: 2rem; font-weight: 700; letter-spacing: .02em; }
.pay-amount span { font-size: 1rem; color: var(--muted); font-weight: 500; }
.countdown { color: #fde68a; font-size: .9rem; }
.proto-grid { display:grid; gap:10px; margin-top:12px; }
.proto-btn {
  text-align:left; padding:14px 16px; border-radius:12px; cursor:pointer;
  border:1px solid var(--border); background: var(--card2); color: var(--text);
}
.proto-btn strong { display:block; margin-bottom:4px; }
.proto-btn span { color: var(--muted); font-size:.85rem; }
.proto-btn:hover { border-color: #3b82f6; }
.proto-demo { opacity: .85; }
.mono-box {
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  background:#0d121a; border:1px solid var(--border); border-radius:10px;
  padding:12px; word-break:break-all; margin:6px 0 10px;
}
.amount-hl { border-color:#166534; background:#0b1f14; color:#86efac; font-size:1.25rem; font-weight:700; }
.kv { display:grid; grid-template-columns: 100px 1fr; gap:8px 12px; margin-top:16px; }
.kv dt { color: var(--muted); }
.kv dd { margin:0; }
.mono { font-family: ui-monospace, Menlo, Consolas, monospace; word-break:break-all; }
.badge.processing { color:#93c5fd; border-color:#1e40af; background:#0f1c33; }
.badge.complete { color:#bbf7d0; border-color:#166534; background:#10261a; }
.badge.expired { color:#fecaca; border-color:#991b1b; background:#2a1212; }
.badge.pending { color:#fde68a; border-color:#92400e; background:#2a1f0a; }
.badge.underpaid,.badge.held { color:#fde68a; border-color:#92400e; background:#2a1f0a; }
.warn-box {
  background:#1a1508; border:1px solid #854d0e; color:#fde68a;
  padding:12px; border-radius:10px; font-size:.9rem; margin-bottom:14px;
}
input[type=password], input[type=text], input[type=number] {
  width:100%; padding:10px 12px; border-radius:10px;
  border:1px solid var(--border); background:#0d121a; color:var(--text); font-size:1rem;
}
