/* ───────────────── /support — giving and the optional donor account ─────────────────
   Two light bands under the dark page head, then the espresso closing band
   every receipt-like page shares (.subscribe-sec). Gold text on paper is only
   3.9:1, so every kicker and small label here takes --gold-deep (5.6:1). */

.support-give,.support-account{padding:56px 0 60px;text-align:center;}
.support-give{background:var(--paper);}
.support-account{background:var(--paper-card);border-top:1px solid var(--rule);}
.page-support .kicker{color:var(--gold-deep);}
.support-h{font-size:clamp(24px,3.4vw,32px);margin:0 0 18px;}
.support-give p,.support-account p{font-size:18px;line-height:1.7;max-width:600px;margin:0 auto 16px;}
.support-note{font-family:var(--head);font-style:italic;color:#6b5e49;font-size:17px !important;}

/* The Ko-fi door. Same champagne plate as the subscribe button, larger: it is
   the one thing on the page meant to be pressed. Espresso on champagne 8:1. */
.support-cta{margin:30px auto 26px !important;}
.support-kofi{
  display:inline-flex;align-items:center;gap:10px;
  font-family:var(--display);font-size:13px;letter-spacing:.2em;text-transform:uppercase;
  padding:16px 34px;border-radius:3px;color:var(--espresso);
  background:linear-gradient(135deg,var(--champagne),#b8942f);
  box-shadow:0 2px 10px rgba(154,122,46,.18);transition:transform .2s,box-shadow .2s;
}
.support-kofi:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(201,168,90,.4);}
.support-kofi:focus-visible{outline:2px solid var(--gold-deep);outline-offset:4px;}
@media(prefers-reduced-motion:reduce){
  .support-kofi{transition:none;}
  .support-kofi:hover{transform:none;}
}

.support-noscript{font-style:italic;color:var(--muted);}

/* ── The account box ── */
.donor{max-width:440px;margin:30px auto 0;text-align:left;}
.donor[hidden],.donor-panel[hidden],.donor-form[hidden],.donor-msg[hidden]{display:none;}

.donor-switch{display:flex;border:1px solid var(--rule);border-radius:3px;margin-bottom:22px;overflow:hidden;}
.donor-switch-btn{
  flex:1;padding:12px 10px;border:0;background:transparent;cursor:pointer;
  font-family:var(--display);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);
}
.donor-switch-btn+.donor-switch-btn{border-left:1px solid var(--rule);}
.donor-switch-btn[aria-pressed="true"]{background:var(--espresso);color:var(--champagne);}
.donor-switch-btn:focus-visible{outline:2px solid var(--gold-deep);outline-offset:-4px;}

.donor-form{display:flex;flex-direction:column;}
.donor-form label{font-family:var(--display);font-size:11px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--gold-deep);margin:14px 0 6px;}
.donor-form label:first-child{margin-top:0;}
.donor-opt{text-transform:none;letter-spacing:0;font-family:var(--head);font-style:italic;font-size:14px;color:var(--muted);}
.donor-form input{
  padding:12px 14px;border:1px solid var(--muted);border-radius:3px;background:#fff;
  font-family:var(--body);font-size:18px;color:var(--ink);
}
.donor-form input:focus-visible{outline:2px solid var(--gold-deep);outline-offset:1px;border-color:var(--gold-deep);}
.donor-form input[aria-invalid="true"]{border-color:#8b1a1a;}

.support-account .donor-hint{font-family:var(--head);font-size:15px;line-height:1.5;color:var(--muted);margin:6px 0 0;max-width:none;text-align:left;}

.donor-btn{
  margin-top:22px;padding:14px 24px;border:0;border-radius:3px;cursor:pointer;
  font-family:var(--display);font-size:12px;letter-spacing:.18em;text-transform:uppercase;
  color:var(--champagne);background:var(--espresso);transition:background .2s;
}
.donor-btn:hover{background:#2a1c11;}
.donor-btn:focus-visible{outline:2px solid var(--gold-deep);outline-offset:3px;}
.donor-btn[disabled]{opacity:.65;cursor:progress;}

.donor-link{
  align-self:flex-start;margin-top:16px;padding:4px 0;border:0;background:none;cursor:pointer;
  font-family:var(--head);font-size:16px;color:var(--gold-deep);
  text-decoration:underline;text-decoration-color:rgba(125,98,36,.4);text-underline-offset:3px;
}
.donor-link:hover{text-decoration-color:var(--gold-deep);}
.donor-link:focus-visible{outline:2px solid var(--gold-deep);outline-offset:3px;border-radius:2px;}

.support-account .donor-msg{font-family:var(--head);font-size:17px;line-height:1.5;text-align:left;max-width:none;
  margin:0 0 18px;padding:10px 14px;border-radius:3px;border:1px solid var(--rule);}
.donor-msg.is-ok{color:var(--ink);background:rgba(201,168,90,.14);border-color:rgba(154,122,46,.35);}
.donor-msg.is-err{color:#7a1717;background:rgba(160,70,45,.08);border-color:rgba(139,26,26,.35);}
.donor-msg.is-busy{color:var(--muted);font-style:italic;}

.support-account .donor-hello{text-align:left;max-width:none;}
.donor-gifts-h{font-family:var(--display);font-size:13px;letter-spacing:.18em;text-transform:uppercase;
  color:var(--gold-deep);margin:22px 0 10px;}
.donor-gifts{width:100%;border-collapse:collapse;font-size:17px;}
.donor-gifts th,.donor-gifts td{padding:9px 6px;border-bottom:1px solid var(--rule);text-align:left;vertical-align:top;}
.donor-gifts th{font-family:var(--display);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:600;}
.donor-gifts td.num,.donor-gifts th.num{text-align:right;white-space:nowrap;}
.donor-gifts tfoot td{font-weight:500;border-bottom:0;}
.support-account .donor-empty{font-family:var(--head);font-style:italic;color:var(--muted);text-align:left;max-width:none;}

@media(max-width:640px){
  .support-give,.support-account{padding:44px 0 48px;}
  .support-kofi{padding:15px 22px;letter-spacing:.16em;}
  .donor-gifts{font-size:16px;}
}
