/* Account tools inherit the Hall's typography, materials and scrolling panel. */
.hall-account-settings { gap: var(--kott-space-6); }
.hall-account-settings > * { flex-shrink: 0; }
.hall-account-card > svg { flex-shrink: 0; }
.hall-account-card > div { min-width: 0; overflow-wrap: anywhere; }
.account-center { display: grid; min-width: 0; gap: var(--kott-space-6); color: var(--kott-color-ivory); font: var(--kott-type-body); }
.account-center p { margin: 0; color: var(--kott-color-parchment); line-height: 1.5; }
.account-center__identity { display: grid; min-width: 0; gap: var(--kott-space-2); }
.account-center__identity > span, .account-center dt { color: var(--kott-color-quiet); }
.account-center__id { display: flex; min-width: 0; align-items: center; gap: var(--kott-space-3); }
.account-center__id code { flex: 1; min-width: 0; user-select: all; overflow-wrap: anywhere; font: 500 17px/1.5 var(--font-ui); font-variant-numeric: tabular-nums; }
.account-center button, .account-center input { min-height: var(--kott-touch-target); min-width: 0; padding: var(--kott-space-2) var(--kott-space-4); color: var(--kott-color-ivory); font: inherit; background: var(--kott-color-surface); border: 1px solid var(--kott-line-brass); border-radius: var(--kott-radius-sm); }
.account-center button { cursor: pointer; transition: border-color var(--kott-motion-micro), background var(--kott-motion-micro); }
.account-center button:hover:not(:disabled) { border-color: var(--kott-color-gold-bright); }
.account-center button:active:not(:disabled) { transform: translateY(1px); }
.account-center :is(button,input):focus-visible { outline: 2px solid var(--kott-color-gold-bright); outline-offset: 3px; }
.account-center :disabled { opacity: .6; cursor: wait; }
.account-center__details { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--kott-space-4); margin: 0; padding-block: var(--kott-space-4); border-block: 1px solid var(--kott-line-quiet); }
.account-center dd { margin: var(--kott-space-1) 0 0; overflow-wrap: anywhere; }
.account-center__verification { display: block; margin-top: var(--kott-space-1); color: var(--kott-color-parchment); font: var(--kott-type-small); }
.account-center__link { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--kott-space-3); }
.account-center__link h3, .account-center__link > p, .account-center__link > button { grid-column: 1 / -1; }
.account-center__link h3 { margin: 0; font: var(--kott-type-h3); }
.account-center__link label { display: grid; min-width: 0; gap: var(--kott-space-2); }
.account-center__link input { width: 100%; box-sizing: border-box; }
.account-center button.account-center__primary { justify-self: start; color: var(--kott-color-black); background: var(--kott-gold-gradient); font-weight: 600; }
.account-center__actions { display: flex; flex-wrap: wrap; gap: var(--kott-space-2); }
.account-center__status:empty { display: none; }
.account-center__error { display: grid; gap: var(--kott-space-3); border-inline-start: 2px solid var(--kott-color-error); padding-inline-start: var(--kott-space-3); }
.account-center__error button { justify-self: start; }
@media (max-width: 600px) {
  .hall-account-settings { gap: var(--kott-space-4); }
  .hall-account-card { padding: var(--kott-space-4); gap: var(--kott-space-3); }
  .account-center__details, .account-center__link { grid-template-columns: minmax(0, 1fr); }
  .account-center__id { align-items: stretch; flex-direction: column; }
  .account-center__id button { align-self: start; }
  .account-center__actions > button { flex: 1 1 100%; }
}
@media (max-height: 500px) and (orientation: landscape) {
  .hall-account-settings { gap: var(--kott-space-4); }
  .account-center { gap: var(--kott-space-4); }
}
@media (prefers-reduced-motion: reduce) { .account-center button { transition: none; } }

.legacy-account-link { margin-top: var(--kott-space-4); padding-top: var(--kott-space-4); border-top: 1px solid var(--kott-line-brass); gap: var(--kott-space-3); }
.legacy-account-link label { display: grid; gap: var(--kott-space-2); }
.legacy-account-link input { width: 100%; box-sizing: border-box; }

/* Legacy proof appears only on a credential conflict; keep every action reachable. */
.form-panel:has([data-legacy-account-link]) { overflow-y: auto; overscroll-behavior: contain; }
.legacy-account-link { flex: 0 0 auto; }
