/* 4EVERU Jewelry — /pay page */
.pay-panel {
  max-width: 640px; margin: 0 auto;
  background: var(--card);
  border-radius: 28px;
  border: 1px solid rgba(196, 181, 165, 0.4);
  padding: clamp(1.5rem, 4vw, 2.5rem);
  box-shadow: 0 16px 40px rgba(74, 63, 58, 0.05);
}
.pay-field { margin: 0 0 1.4rem; display: flex; flex-direction: column; gap: 0.4rem; }
.pay-field .hint { font-size: 0.78rem; color: var(--muted); }
.pay-input-wrap { position: relative; }
.pay-input-wrap .cur {
  position: absolute; left: 1rem; top: 50%; transform: translateY(-50%);
  color: var(--muted); pointer-events: none;
}
.pay-input { width: 100%; min-height: 52px; font-size: 1.05rem; }
.pay-input.has-cur { padding-left: 2.1rem; }
.pay-input[aria-invalid="true"] { border-color: #c0675a; }
.pay-error { color: #b0483a; font-size: 0.82rem; margin: 0; min-height: 1.2em; }
.pay-alert {
  margin: 1rem 0 0; padding: 0.9rem 1rem; font-size: 0.9rem; border-radius: 12px;
  border: 1px solid #c0675a; background: rgba(192,103,90,0.08); color: #8a3a2f;
}
.pay-alert a { color: var(--rose-deep); text-decoration: underline; }
.hidden { display: none !important; }
.pay-note { font-size: 0.78rem; color: var(--muted); margin: 1.25rem 0 0; text-align: center; }
#paypal-buttons { margin-top: 0.5rem; min-height: 60px; }
#paypal-messages { margin: 0 0 1.25rem; min-height: 0; }
.pay-stripe { margin-top: 1.75rem; text-align: center; }
.pay-or { display: flex; align-items: center; gap: 1rem; margin: 0 0 1.5rem; color: var(--muted); font-size: 0.68rem; letter-spacing: 0.25em; text-transform: uppercase; }
.pay-or::before, .pay-or::after { content: ""; flex: 1; height: 1px; background: rgba(196, 181, 165, 0.6); }
.pay-stripe-title { font-size: clamp(1.25rem, 3vw, 1.6rem); margin: 0 0 0.75rem; }
.pay-stripe-text { font-size: 0.9rem; color: var(--soft-text); margin: 0 auto 1.25rem; max-width: 34rem; }
.pay-stripe-btn { width: 100%; }
.pay-stripe-fine { font-size: 0.75rem; color: var(--muted); margin: 0.6rem 0 0; }
.pay-success { text-align: center; }
.pay-success .caps { color: var(--dusty-rose); display: block; margin-bottom: 0.5rem; }
.pay-success h2 { margin-bottom: 0.75rem; font-size: 2rem; }
.pay-success p { margin: 0.5rem auto; max-width: 34rem; }
.pay-success a:not(.btn) { color: var(--dusty-rose); }
.pay-success .txn {
  display: inline-block; margin: 0.5rem 0 1rem; padding: 0.6rem 1rem; border-radius: 12px;
  border: 1px solid rgba(196, 181, 165, 0.7); background: var(--ivory);
  letter-spacing: 0.1em; color: var(--charcoal); word-break: break-all;
}
