/* My account pages. Logical properties only; colours come from site.css tokens. */
.me-section { margin-block: var(--space-4); }
.me-section > h2 { margin-block-start: 0; }
.me-total { font-size: 1.35rem; margin-block: 0 var(--space-2); }
.me-total strong { font-size: 1.6rem; }
.table-scroll { overflow-x: auto; }
.me-actions { display: flex; flex-wrap: wrap; gap: var(--space-2); align-items: center; margin-block: var(--space-2); }
.me-actions form { margin: 0; }
.me-stack > * + * { margin-block-start: var(--space-3); }
.me-radio { list-style: none; padding: 0; margin: 0 0 var(--space-3); }
.me-radio label { font-weight: 400; display: flex; gap: var(--space-2); align-items: center; }
.me-field { margin-block-end: var(--space-3); }
.me-field input[type="text"] { inline-size: 100%; max-inline-size: 24rem; }
.errorlist { color: var(--error); padding-inline-start: var(--space-3); margin-block: var(--space-1); }
.badge {
  display: inline-block;
  border: 1px solid currentColor;
  border-radius: var(--radius);
  padding: 0 var(--space-2);
  font-size: 0.85rem;
  font-weight: 600;
}
.button-danger { background: var(--error); color: var(--on-primary); }
.auth-box { max-inline-size: 28rem; }
.auth-box form p, .auth-box form > div { margin-block-end: var(--space-3); }
.auth-box input[type="email"], .auth-box input[type="text"] { inline-size: 100%; }
.visually-hidden {
  position: absolute; inline-size: 1px; block-size: 1px; overflow: hidden;
  clip-path: inset(50%); white-space: nowrap;
}
