/* Online payment page */
.pay-wrap{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:clamp(24px,3vw,40px);align-items:start;max-width:1040px!important}
.pay-card{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:clamp(20px,3vw,32px);box-shadow:var(--shadow-2)}
.pay-card h2{font-size:1.35rem;margin-bottom:1.1rem}
.pf-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
.pay-card .field{margin-bottom:1rem;display:flex;flex-direction:column;gap:.35rem}
.pay-card .field label{font-size:.82rem;font-weight:600;color:var(--ink-soft)}
.pay-card .field input,.pay-card .field select{font:inherit;font-size:.98rem;padding:.7rem .85rem;border:1px solid var(--line-strong);border-radius:10px;background:var(--surface);color:var(--ink);width:100%}
.pay-card .field input:focus,.pay-card .field select:focus{outline:2px solid var(--purple-light);outline-offset:1px}
.pay-card .hint{font-size:.78rem;color:var(--ink-faint)}
.pf-consent{display:flex;gap:.6rem;align-items:flex-start;font-size:.88rem;color:var(--ink-soft);margin:.4rem 0 1rem;line-height:1.5}
.pf-consent input{margin-top:.25rem;accent-color:var(--purple)}
.pf-consent a{color:var(--purple);text-decoration:underline}
.pf-fine{font-size:.8rem;color:var(--ink-faint);margin-top:.8rem;line-height:1.5}
.pay-banner{background:var(--gold-tint);color:var(--gold-strong);padding:.6rem .9rem;border-radius:10px;font-weight:600;font-size:.88rem;margin-bottom:1rem}
.w-note-pay{background:var(--gold-tint);color:var(--ink);padding:1rem 1.1rem;border-radius:12px;line-height:1.55}
.w-note-pay a{color:var(--purple);text-decoration:underline}
.pay-ok{width:58px;height:58px;border-radius:50%;background:var(--success-tint);color:var(--success);display:flex;align-items:center;justify-content:center;margin-bottom:1rem}
.pay-dl{display:grid;grid-template-columns:auto 1fr;gap:.4rem 1rem;margin:1rem 0;font-size:.95rem}
.pay-dl dt{color:var(--ink-faint)}
.pay-dl dd{margin:0;font-family:"IBM Plex Mono",monospace;font-size:.88rem;word-break:break-all}
#pay-done p{margin-bottom:.8rem;color:var(--ink-soft)}
.pay-aside{background:var(--surface-alt);border:1px solid var(--line);border-radius:16px;padding:20px 22px}
.pay-aside h3{font-size:1rem;margin:0 0 .6rem}
.pay-aside ol{padding-left:1.2rem;color:var(--ink-soft);font-size:.92rem;line-height:1.6;margin-bottom:1.2rem}
.pay-aside p{font-size:.9rem;color:var(--ink-soft);margin-bottom:.8rem}
.pay-aside a:not(.btn){color:var(--purple);text-decoration:underline}
@media(max-width:860px){.pay-wrap{grid-template-columns:1fr}.pf-grid{grid-template-columns:1fr}}
