.identity-form { display: grid; grid-template-columns: minmax(0, 1fr); gap: 10px; }
.identity-form > label { margin-top: 5px; font-size: 13px; font-weight: 500; }
.identity-form input { width: 100%; min-width: 0; height: 44px; padding: 10px 12px; border: 1px solid var(--line); border-radius: 8px; background: var(--panel); font-size: 14px; }
.identity-form input:disabled { background: var(--bg); }
.identity-form input[name='code'] { letter-spacing: .1em; font-variant-numeric: tabular-nums; }
.identity-form input[name='code']::placeholder { letter-spacing: 0; }
.identity-form .field-hint { margin: 0; line-height: 1.8; }
.identity-trap { position: absolute; left: -10000px; width: 1px !important; height: 1px !important; opacity: 0; pointer-events: none; }
.code-row { display: flex; gap: 8px; min-width: 0; }
.code-row > input { flex: 1; }
.secondary-button { flex-shrink: 0; min-height: 44px; padding: 9px 12px; border: 1px solid var(--line-strong); border-radius: 8px; background: var(--panel-soft); font-size: 12px; font-weight: 550; }
.secondary-button:hover:not(:disabled) { background: var(--hover); }
.auth-alternative, .composer-footer .text-button { padding: 0; color: var(--accent-text); font-size: 12px; text-align: left; text-decoration: underline; text-underline-offset: 4px; }
.auth-alternative:hover, .composer-footer .text-button:hover { color: var(--text); }
.auth-alternative { display: block; margin-top: 24px; line-height: 1.8; }
#email-panel > .eyebrow { margin: 0 0 18px; }
#email-panel h2 { font-size: clamp(20px, 2vw, 24px); }
#email-panel > .muted { margin: 10px 0 24px; line-height: 1.9; font-size: 13px; }
#auth-panel > .muted { margin: 0 0 24px; font-size: 13px; }
.optional-invite { margin: 8px 0 2px; }
.optional-invite summary { width: fit-content; padding: 4px 0; cursor: pointer; font-size: 12px; color: var(--muted); }
.optional-invite summary span { margin-left: 6px; padding: 1px 5px; border-radius: 4px; background: var(--panel-soft); font-size: 10px; }
.optional-invite input { margin: 8px 0; }
.human-check { display: flex; justify-content: center; min-height: 65px; margin-top: 3px; }
.composer-footer > div { min-width: 0; }
.composer-footer .text-button { display: inline-block; margin: 2px 0; font-size: 11px; }
.account-dialog { width: min(480px, calc(100vw - 28px)); max-height: calc(100dvh - 40px); padding: 26px; border: 1px solid var(--line); border-radius: 18px; background: var(--bg); color: var(--text); overflow-y: auto; box-shadow: 0 25px 100px #1b251d20; }
.account-dialog::backdrop { background: #242b274d; backdrop-filter: blur(3px); }
.account-dialog-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; }
.account-dialog h2 { font-size: 23px; font-weight: 600; letter-spacing: -.03em; margin: 0; }
.account-dialog .eyebrow { margin: 0 0 6px; }
.account-balance { padding: 18px; margin: 22px 0 0; background: var(--accent-soft); border: 1px solid var(--accent-border); border-radius: 12px; }
.account-balance > div { display: flex; align-items: center; justify-content: space-between; font-size: 13px; color: var(--accent-text); }
.account-balance strong { font-size: 32px; font-weight: 550; line-height: 1.3; color: var(--text); }
.account-balance p { margin: 8px 0 0; font-size: 11px; color: var(--accent-text); }
.account-section { padding: 24px 0 0; }
.account-section + .account-section { margin-top: 24px; border-top: 1px solid var(--line); }
.account-section h3 { margin: 0 0 7px; font-size: 14px; font-weight: 600; }
.account-section .muted { font-size: 12px; margin: 5px 0 16px; }
.account-email { font-size: 14px; margin: 0; overflow-wrap: anywhere; }
.inline-success { margin: 0; padding: 10px 12px; border-radius: 8px; background: var(--success-soft); color: var(--success); font-size: 12px; }
@media (max-width: 760px) {
  .account-dialog { padding: 21px; }
  .human-check { margin-left: -3px; margin-right: -3px; }
}
@media (max-width: 370px) {
  #email-panel h2 { font-size: 19px; }
  .auth-card { padding: 20px; }
  .secondary-button { padding: 9px; }
  .identity-form input { padding: 10px; }
}
