[hidden] { display: none !important; }
fieldset { border: 0; margin: 0; padding: 0; min-width: 0; }
legend { font-size: 16px; margin: 12px 0; }
.account-tabs { display: flex; gap: 12px; margin-bottom: 24px; }
.account-tabs button { flex: 1; min-height: 44px; border: 1px solid var(--line); border-radius: 12px; padding: 10px; background: transparent; color: var(--ink); }
.account-tabs button[aria-pressed="true"] { background: var(--green); color: white; }
#account-entry-form label { display: grid; gap: 8px; margin: 16px 0; }
#account-entry-form input { min-width: 0; width: 100%; min-height: 48px; font-size: 16px; }
#account-submit, #account-enter { width: 100%; min-height: 48px; }
#account-recovery-code { display: block; overflow-wrap: anywhere; padding: 16px; margin: 18px 0; background: var(--paper-soft); user-select: all; }
.account-forgot { width: 100%; min-height: 44px; margin-top: 12px; padding: 8px; background: transparent; color: var(--ink); border: 0; text-decoration: underline; cursor: pointer; }
@media(max-width: 600px) { .entry-context { display: none; } .entry-layout { padding-top: 100px; } .entry-card { margin-bottom: 32px; } }

/* Registration feedback stays visible and focusable without moving form input. */
#account-entry-status[data-state="error"] { padding: 12px; border: 1px solid currentColor; border-radius: 10px; font-weight: 600; }
#account-entry-status:focus { outline: 2px solid #8b4437; outline-offset: 3px; }
