/* Tracy Lowery LLC — member account page (squared, no shadows) */
:root, [data-theme='dark'] { --acct-err: #ec8d7e; --acct-ok: #8fc79a; }
[data-theme='light'] { --acct-err: #a8382a; --acct-ok: #2f7a43; }

.acct { padding-block: calc(var(--space-16, 4rem) + 40px) var(--space-16, 4rem); min-height: 70vh; }
.acct__wrap { max-width: 1040px; }
.acct__eyebrow { font-size: 0.72rem; letter-spacing: 0.18em; text-transform: uppercase; color: var(--color-primary); margin-bottom: var(--space-3); }
.acct__title { font-family: var(--font-display); font-weight: 500; font-size: var(--text-2xl); line-height: 1.05; margin-bottom: var(--space-4); max-width: 18ch; }
.acct__lede { color: var(--color-text-muted); max-width: 60ch; margin-bottom: var(--space-8); line-height: 1.6; }
.acct__lede strong { color: var(--color-text); font-weight: 600; }
.acct__muted { color: var(--color-text-muted); font-size: var(--text-sm); }

.acct__auth { max-width: 520px; }
.acct__tabs { display: grid; grid-template-columns: 1fr 1fr; border: 1px solid var(--color-border); margin-bottom: var(--space-6); }
.acct__tabs button { min-height: 48px; font: inherit; font-weight: 600; font-size: 0.95rem; background: transparent; color: var(--color-text-muted); border: 0; cursor: pointer; }
.acct__tabs button + button { border-left: 1px solid var(--color-border); }
.acct__tabs button[aria-selected='true'] { background: var(--color-primary); color: #14110b; }

.acct__form { display: grid; gap: var(--space-4); }
.acct__form[hidden] { display: none; }
.acct__form--tight { gap: var(--space-3); }
.acct__field { display: grid; gap: 6px; }
.acct__field > span { font-size: 0.82rem; font-weight: 600; color: var(--color-text-muted); }
.acct__field small { font-size: 0.78rem; color: var(--color-text-muted); }
.acct__input {
  width: 100%; min-height: 48px; padding: 0 var(--space-4);
  font: inherit; font-size: 16px; color: var(--color-text);
  background: var(--color-surface); border: 1px solid var(--color-border); border-radius: 0;
}
.acct__input:focus { outline: 2px solid var(--color-primary); outline-offset: -1px; border-color: var(--color-primary); }
.acct__error { color: var(--acct-err); font-size: var(--text-sm); }
.acct__ok { color: var(--acct-ok); font-size: var(--text-sm); }
.acct__error[hidden], .acct__ok[hidden] { display: none; }
.acct__fine { font-size: 0.8rem; color: var(--color-text-muted); line-height: 1.5; }

.acct__btn {
  min-height: 48px; padding: 0 var(--space-6); font: inherit; font-weight: 600; font-size: 0.95rem;
  background: transparent; color: var(--color-text); border: 1px solid var(--color-border); border-radius: 0; cursor: pointer;
  justify-self: start;
}
.acct__btn:hover { border-color: var(--color-text-muted); }
.acct__btn:disabled { opacity: 0.6; cursor: progress; }
.acct__btn--primary { background: var(--color-primary); border-color: var(--color-primary); color: #14110b; justify-self: stretch; }
.acct__btn--primary:hover { border-color: var(--color-primary); filter: brightness(1.05); }
.acct__btn--danger { border-color: var(--acct-err); color: var(--acct-err); }

.acct__guest { margin-top: var(--space-10); padding-top: var(--space-6); border-top: 1px solid var(--color-border); }
.acct__guest h2 { font-family: var(--font-display); font-weight: 500; font-size: 1.5rem; margin-bottom: var(--space-2); }
.acct__guest p { color: var(--color-text-muted); line-height: 1.6; }
.acct a:not(.acct__btn):not(.brand) { color: var(--color-text); text-decoration: underline; text-decoration-color: var(--color-primary); text-underline-offset: 3px; }

.acct__grid { display: grid; grid-template-columns: 1fr; gap: 1px; background: var(--color-border); border: 1px solid var(--color-border); margin-bottom: var(--space-6); }
@media (min-width: 760px) { .acct__grid { grid-template-columns: 1fr 1fr; } }
.acct__card { background: var(--color-surface); padding: var(--space-6); min-width: 0; }
.acct__card h2 { font-family: var(--font-display); font-weight: 500; font-size: 1.5rem; margin-bottom: var(--space-4); }
.acct__list { list-style: none; padding: 0; margin: 0 0 var(--space-3); display: grid; gap: var(--space-3); }
.acct__list li { display: grid; gap: 2px; padding-bottom: var(--space-3); border-bottom: 1px solid var(--color-border); }
.acct__list li:last-child { border-bottom: 0; padding-bottom: 0; }
.acct__list a { font-weight: 600; }

.acct__actions { margin-bottom: var(--space-8); }
.acct__danger { border: 1px solid var(--color-border); padding: var(--space-4) var(--space-6); }
.acct__danger summary { cursor: pointer; font-weight: 600; color: var(--acct-err); min-height: 32px; display: flex; align-items: center; }
.acct__danger form { margin-top: var(--space-4); }
.acct__danger p { color: var(--color-text-muted); font-size: var(--text-sm); line-height: 1.6; }

