/* Account controls use the existing Barlow, red and ruled form language. */
.account-tabs { display: flex; gap: 0; border-bottom: var(--rule) solid var(--line); margin-bottom: 1.5rem; }
.account-tabs button { flex: 1; padding: .9rem 1rem; border: 0; border-bottom: 2px solid transparent; background: transparent; color: var(--muted); font: 600 1rem var(--body-font); cursor: pointer; }
.account-tabs button[aria-pressed='true'] { color: var(--text); border-bottom-color: var(--accent-light); }
.account-tabs button:focus-visible, [data-account-submit]:focus-visible { outline: 2px solid var(--accent-light); outline-offset: .25rem; }
.account-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 1.25rem; }
.account-password-hint { color: var(--muted); display: block; font-size: .8rem; line-height: 1.5; margin-top: .4rem; }
.account-submit { display: inline-flex; align-items: center; justify-content: center; min-height: 3.2rem; padding: .8rem 1.5rem; margin-top: 1.5rem; background: var(--accent); border: 0; color: var(--white); font: 600 1rem var(--body-font); cursor: pointer; }
.account-submit:hover { background: var(--accent-hover); }
.account-status { color: var(--accent-light); margin-top: 1rem; line-height: 1.5; }
.account-note { color: var(--muted); font-size: .875rem; line-height: 1.5; margin-top: 1rem; }
.qw [aria-busy='true'] { cursor: progress; }
.qw button:disabled { cursor: wait; opacity: .65; }
.gd-request-state { color: var(--accent-light); font-size: .7rem; text-transform: uppercase; letter-spacing: .06em; }
.header-account { display: inline-flex; align-items: center; justify-content: center; gap: .6rem; min-height: 2.75rem; padding: .6rem .8rem; background: transparent; border: var(--rule) solid var(--line); color: var(--text); cursor: pointer; font: 600 .85rem var(--body-font); }
.header-account:hover { border-color: var(--accent-light); }
.header-account .icon { flex: none; width: 1.2rem; height: 1.2rem; }
.gd :is(.gd-link, .gd-btn, .gd-del) { display: inline-flex; align-items: center; justify-content: center; min-width: 2.75rem; min-height: 2.75rem; padding-inline: .5rem; }
.gd-car-txt { min-width: 0; overflow-wrap: anywhere; }
.gd-auth[hidden], .gd-dashboard[hidden], .gd-auth [hidden] { display: none !important; }
.gd-auth .account-tabs { margin: 1.4rem 0; }
.gd-auth-fields { display: grid; gap: 1.1rem; }
.gd-auth .gd-field > span:first-child { color: var(--text); }
.gd-auth .account-password-hint { margin: 0; text-transform: none; letter-spacing: normal; }
.gd-password { position: relative; display: flex; }
.gd-password input { padding-right: 4.5rem; }
.gd-password-toggle { position: absolute; inset: 0 0 0 auto; min-width: 4rem; padding: .5rem; border: 0; background: transparent; color: var(--text); font: 600 .8125rem var(--body-font); cursor: pointer; }
.gd-password-toggle:focus-visible, .gd-auth-submit:focus-visible, .gd-welcome .gd-btn:focus-visible { outline: 2px solid var(--accent-light); outline-offset: .2rem; }
.gd-auth input[aria-invalid='true'] { border-color: var(--accent-light); }
.gd-auth-submit { width: 100%; margin-top: 1.25rem; }
.gd-welcome h3 { color: var(--text); line-height: 1.5; overflow-wrap: anywhere; }
.gd-welcome .gd-btn { display: flex; justify-content: space-between; align-items: center; gap: 2rem; width: 100%; margin-top: 1.2rem; }
.gd button:disabled { cursor: wait; opacity: .65; }
.gd .gd-field input, .gd .gd-field select { scroll-margin-block: 1rem; }
@media (max-width: 850px) { .header-account { width: 2.75rem; padding: .6rem; flex: none; } .header-account span { display: none; } }
@media (max-width: 560px) { .account-fields { grid-template-columns: 1fr; } .account-submit { width: 100%; } }
