.payment-page { padding-top:max(20px,env(safe-area-inset-top)); }
.payment-page .account-shell { margin:2svh auto; }
.payment-page .account-brand { margin-bottom:24px; }
.payment-page .account-card { padding:clamp(18px,5vw,28px); min-width:0; }
.payment-page .account-card h1 { margin:0 0 16px; }
.payment-page .account-actions { gap:12px; grid-template-columns:minmax(0,1fr); }
.payment-page .pixel-button { width:100%; min-width:0; max-width:100%; min-height:46px; white-space:normal; overflow-wrap:anywhere; line-height:1.2; text-align:center; font-size:20px; text-decoration:none; }
.payment-page .text-button { white-space:normal; text-align:center; justify-self:center; font-size:18px; padding:10px; }
.payment-page .account-note { font-size:17px; }
#payment-test { font-size:14px; margin:0 0 16px; }
#payment-status { font-size:24px; line-height:1.3; overflow-wrap:anywhere; margin:0 0 18px; }
#payment-detail { margin-top:-6px; }
#payment-return { min-height:54px; margin-top:6px; }
#payment-return-help { margin-top:16px; }
#payment-return-help:empty { display:none; }
#payment-status.error,#withdrawal-error { color:var(--error); }
#payment-consent { border:0; border-top:1px solid var(--edge); padding:14px 0 0; margin:20px 0; font-family:Verdana,sans-serif; font-size:14px; line-height:1.5; min-width:0; }
#payment-consent legend { color:var(--accent); padding:0 6px; }
#payment-consent label { display:flex; align-items:flex-start; gap:12px; margin-top:16px; cursor:pointer; }
#payment-consent input { flex:none; width:21px; height:21px; margin:3px 0 0; accent-color:var(--accent); }
#payment-consent span { min-width:0; }
#payment-contracts { margin-top:28px; }
.payment-contract,#payment-admin { border-top:2px solid var(--edge); margin-top:24px; padding-top:20px; }
.payment-contract h2 { font-size:24px; }
.payment-contract .account-actions { gap:12px; }
.payment-contract p { overflow-wrap:anywhere; }
.payment-page[data-payment-view="checkout"] .account-card:has(#payment-return:not([hidden])) { border-color:var(--accent); }
.withdrawal-dialog { max-width:480px; width:calc(100% - 32px); max-height:calc(100dvh - 32px); overflow:auto; background:var(--surface); color:var(--ink); border:3px solid var(--edge-light); box-shadow:5px 5px 0 var(--shadow); padding:24px; }
.withdrawal-dialog::backdrop { background:#080e19b8; }
.withdrawal-dialog h2 { color:var(--accent); font-size:28px; }
.withdrawal-dialog p { font-size:20px; line-height:1.45; }
.mail-dialog { max-width:700px; }
.mail-dialog-heading { display:flex; align-items:flex-start; gap:16px; justify-content:space-between; }
.mail-dialog-heading h2 { margin-top:0; font-size:24px; overflow-wrap:anywhere; }
.mail-dialog-heading button { flex:none; }
#payment-mail-preview { display:block; width:100%; height:min(58dvh,560px); border:0; margin:16px 0; background:#111722; }
#payment-mail-list h3 { color:var(--accent); font-size:22px; }
@media(min-width:720px) { .account-shell:has(#payment-status) { width:min(100%,620px); } }
