/* Account / portal pages — builds on style.css brand variables. */
.pform { max-width: 440px; }
.pform .field { display: flex; flex-direction: column; gap: 6px; margin-bottom: 16px; }
.pform label { font-size: 13px; color: var(--text-dim); }
.pform input {
  padding: 11px 13px; border-radius: 8px; border: 1px solid var(--border);
  background: var(--bg-soft); color: var(--text); font-size: 15px;
}
.pform input:focus { border-color: var(--accent); outline: none; }

.banner { padding: 14px 16px; border-radius: 8px; margin: 18px 0; max-width: 620px; }
.banner.ok { background: rgba(224,169,60,.08); border: 1px solid var(--gold); color: var(--cream); }
.banner.err { background: rgba(178,58,30,.12); border: 1px solid var(--oxblood); color: #f0b8a8; }

.acct-table { width: 100%; border-collapse: collapse; margin: 12px 0; max-width: 820px; }
.acct-table th, .acct-table td {
  border: 1px solid var(--border); padding: 9px 11px; text-align: left; font-size: 13px;
  vertical-align: middle;
}
.acct-table th { color: var(--text-dim); font-weight: 600; }
.acct-table code { font-size: 12px; word-break: break-all; }

.btn-sm { padding: 6px 12px; font-size: 13px; }
.muted { color: var(--text-dim); }
.hidden { display: none; }
.row-actions { display: flex; gap: 8px; flex-wrap: wrap; }

/* Key reveal row (verify + portal) */
.key-reveal-row { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; margin: 8px 0; }
.key-value { font-family: monospace; font-size: 14px; word-break: break-all; color: var(--cream); }
.key-value-input {
  font-family: monospace; font-size: 13px; flex: 1; min-width: 0;
  padding: 9px 12px; border-radius: 8px; border: 1px solid var(--border);
  background: var(--bg-soft); color: var(--cream);
}
