/* My Merch / sign-in — phone-first, same tokens as the wizard */
.acct-page .wiz-main { padding-bottom: 3rem; }
.acct-page [hidden] { display: none !important; }
.acct-form { display: flex; flex-direction: column; gap: 0.25rem; margin-top: 0.4rem; }
.acct-wide { width: 100%; min-height: 2.85rem; }
.acct-code { font-size: 1.6rem !important; letter-spacing: 0.4em; text-align: center; font-variant-numeric: tabular-nums; }
.acct-links { display: flex; justify-content: space-between; gap: 0.75rem; margin-top: 0.85rem; }
.acct-page .btn-text {
  background: none; border: 0; padding: 0; color: var(--mute2); font: inherit; font-size: 0.8rem;
  text-decoration: underline; text-underline-offset: 3px; cursor: pointer;
}
.acct-page .btn-text:hover { color: #fff; }
.acct-msg { margin: 0; font-size: 0.85rem; color: var(--mute2); }
.acct-msg.is-err { color: #fbbf24; }
.acct-who { margin: -0.3rem 0 0.15rem; font-size: 0.78rem; color: var(--mute2); overflow-wrap: anywhere; }
.acct-empty { text-align: center; color: var(--mute2); padding: 1.5rem 0.5rem; display: flex; flex-direction: column; align-items: center; gap: 0.9rem; }
.acct-empty p { margin: 0; }

.shirt-list { display: flex; flex-direction: column; gap: 0.7rem; }
.shirt-card {
  display: grid; grid-template-columns: 5.25rem 1fr; gap: 0.8rem; align-items: start;
  border: 1px solid var(--line2); border-radius: 0.65rem; padding: 0.75rem; background: #0a0a0a;
}
.shirt-thumb {
  width: 5.25rem; aspect-ratio: 4 / 5; border-radius: 0.45rem; overflow: hidden; background: #151515;
  display: flex; align-items: center; justify-content: center;
}
.shirt-thumb img { width: 100%; height: 100%; object-fit: contain; display: block; }
.shirt-info { min-width: 0; display: flex; flex-direction: column; gap: 0.15rem; }
.shirt-info strong { font-size: 0.98rem; line-height: 1.25; overflow-wrap: anywhere; }
.shirt-info .muted { font-size: 0.8rem; line-height: 1.35; }
.shirt-meta { font-size: 0.7rem; letter-spacing: 0.06em; color: var(--mute); margin-top: 0.2rem; }
.shirt-order { font-size: 0.78rem; line-height: 1.35; margin-top: 0.3rem; color: var(--ink); overflow-wrap: anywhere; }
.shirt-order::before { content: ""; display: inline-block; width: 0.45rem; height: 0.45rem; border-radius: 50%; background: var(--ink); margin-right: 0.4rem; vertical-align: 0.05rem; }
.shirt-order a { color: var(--ink); font-weight: 700; }
.shirt-actions { grid-column: 1 / -1; display: flex; align-items: center; gap: 0.9rem; }
.shirt-actions .btn { flex: 1; min-height: 2.6rem; }
.shirt-actions .btn[disabled] { opacity: 0.5; }

/* My info (contact + saved addresses) */
.acct-info { margin-top: 2rem; padding-top: 1.25rem; border-top: 1px solid var(--line2); }
.acct-info h2 { font-size: 0.95rem; letter-spacing: 0.1em; text-transform: uppercase; margin: 0 0 0.6rem; }
.info-sub { font-size: 0.72rem; letter-spacing: 0.12em; text-transform: uppercase; color: var(--mute2); margin: 1.3rem 0 0.5rem; font-weight: 600; }
.info-card { display: flex; align-items: center; justify-content: space-between; gap: 0.75rem; border: 1px solid var(--line2); border-radius: 0.75rem; padding: 0.75rem 0.85rem; }
.info-text { display: flex; flex-direction: column; gap: 0.1rem; min-width: 0; font-size: 0.85rem; color: var(--mute2); overflow-wrap: anywhere; }
.info-text strong { color: #fff; font-size: 0.95rem; }
.info-btn { flex: none; min-height: 2.75rem; padding: 0 1.1rem; }
.info-form { border: 1px solid var(--line2); border-radius: 0.75rem; padding: 0.85rem; margin-top: 0.6rem; }
.info-form .btn-row .btn { flex: 1; min-height: 2.75rem; }
.info-check { display: flex; align-items: center; gap: 0.55rem; min-height: 44px; font-size: 0.85rem; }
.info-check input { width: 1.15rem; height: 1.15rem; accent-color: #fff; }
.info-empty { font-size: 0.85rem; margin: 0 0 0.6rem; }
.addr-list { list-style: none; margin: 0 0 0.7rem; padding: 0; display: flex; flex-direction: column; gap: 0.55rem; }
.addr-card { border: 1px solid var(--line2); border-radius: 0.75rem; padding: 0.7rem 0.85rem 0.3rem; font-size: 0.85rem; overflow-wrap: anywhere; }
.addr-card.is-default { border-color: #fff; }
.addr-text { display: flex; flex-direction: column; gap: 0.15rem; }
.addr-top { display: flex; align-items: center; gap: 0.5rem; }
.addr-tag { font-size: 0.62rem; letter-spacing: 0.1em; text-transform: uppercase; background: #fff; color: #000; border-radius: 999px; padding: 0.12rem 0.5rem; }
.addr-actions { display: flex; gap: 1.1rem; }
.addr-actions .btn-text { min-height: 44px; }
.acct-info .acct-msg { margin: 0 0 0.55rem; }
/* [drafts] My Merch → Drafts (unfinished items) */
.acct-drafts { margin: 1.1rem 0 1.4rem; }
.acct-drafts h2 { font-size: 0.95rem; letter-spacing: 0.1em; text-transform: uppercase; margin: 0 0 0.6rem; }
.acct-drafts .acct-msg { margin: 0 0 0.55rem; }
