.payment-panel{box-sizing:border-box;width:100%;max-width:540px;margin:0 auto;padding:24px 0;color:var(--ink,#46536a);font-family:Nunito,system-ui,sans-serif;line-height:1.5}
.payment-panel [hidden]{display:none!important}
.payment-hero{text-align:center;margin:0 0 20px}
.payment-hero img{display:block;width:144px;height:144px;object-fit:contain;margin:0 auto 8px}
.payment-hero h2{font-family:Fredoka,Nunito,system-ui,sans-serif;font-size:30px;line-height:1.2;margin:0;font-weight:700}
.payment-sandbox{text-align:center;margin:0 0 16px;color:var(--ink-2,#596579);font-size:14px;font-weight:800}
.payment-card{padding:22px;border:2px solid var(--line-2,#dce2e8);border-radius:22px;background:var(--paper,#fff);box-shadow:0 4px 0 var(--line-2,#dce2e8)}
.payment-message{font-size:17px;line-height:1.5;margin:0 0 20px;overflow-wrap:anywhere}
.payment-actions{display:grid;gap:14px}
.payment-panel button{box-sizing:border-box;display:block;width:100%;min-height:52px;padding:12px 16px;border:2px solid var(--line-2,#dce2e8);border-radius:15px;background:var(--paper,#fff);box-shadow:0 4px 0 var(--line-2,#dce2e8);color:var(--ink,#46536a);font:800 16px/1.35 Nunito,system-ui,sans-serif;cursor:pointer;margin:0;overflow-wrap:anywhere;touch-action:manipulation}
.payment-panel [data-payment-buy],.payment-panel [data-payment-retry],.payment-panel [data-payment-check],.payment-panel [data-payment-redeem]{color:#fff;background:#0879ba;border-color:#0879ba;box-shadow:0 4px 0 #045a8d}
.payment-panel button:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px 0 var(--line-2,#dce2e8)}
.payment-panel button:disabled{opacity:.6;cursor:wait}
.payment-panel :is(button,a,input,summary):focus-visible{outline:3px solid #0879ba;outline-offset:4px}
.payment-panel label{display:block;font-weight:800;margin:0 0 12px}
.payment-panel input{box-sizing:border-box;display:block;width:100%;margin-top:7px;padding:12px;border:2px solid var(--line-2,#dce2e8);border-radius:12px;background:var(--paper,#fff);color:inherit;font:400 17px/1.4 Nunito,system-ui,sans-serif}
.payment-panel [data-payment-email-note]{font-size:14px;margin:0 0 20px;color:var(--ink-2,#596579)}
.payment-panel .payment-keep{margin-top:22px;border:0;background:transparent;box-shadow:none;color:var(--brand-ink,#0879ba)}
.payment-links{display:flex;flex-wrap:wrap;justify-content:center;gap:0 18px;margin-top:14px}
.payment-links a{display:inline-flex;align-items:center;min-height:44px;color:var(--brand-ink,#0879ba);font-size:14px;font-weight:700;text-underline-offset:3px}
.payment-debug{margin-top:20px;font-size:13px;color:var(--ink-2,#596579)}
.payment-debug summary{cursor:pointer;min-height:28px}
.payment-debug p{overflow-wrap:anywhere;margin:8px 0 0}
.payment-recovery{margin-top:24px;padding-top:20px;border-top:1px solid var(--line-2,#dce2e8)}
.payment-recovery h3{margin:0 0 8px;font-size:20px}
.payment-recovery p{margin:0 0 16px}
@media(max-width:359px){.payment-card{padding:16px}.payment-hero img{width:116px;height:116px}.payment-hero h2{font-size:27px}}
@media(prefers-reduced-motion:reduce){.payment-panel button:active:not(:disabled){transform:none}}
