/* Connections page — integration connect/disconnect cards. */
.connections-locations {
 display: flex;
 flex-direction: column;
 gap: var(--space-6);
}

.connections-location {
 display: flex;
 flex-direction: column;
 gap: var(--space-3);
}

.connections-location-rename,
.connections-add-location {
 display: flex;
 flex-wrap: wrap;
 align-items: center;
 gap: var(--space-2);
 max-width: 42rem;
}

.connections-grid {
 display: flex;
 flex-direction: column;
 gap: var(--space-4);
 max-width: 42rem;
}

.connections-meta {
 display: flex;
 flex-direction: column;
 gap: var(--space-1);
 margin-bottom: var(--space-4);
}

.connections-actions {
 display: flex;
 flex-wrap: wrap;
 align-items: center;
 gap: var(--space-2);
}

.connections-test-badge {
 min-width: 6rem;
}

.connections-banner {
 margin-bottom: var(--space-4);
}

.connections-form {
 margin: var(--space-4) 0;
}

.connections-field-help {
 font-size: 0.85rem;
}

.connections-error {
 display: flex;
 flex-direction: column;
 gap: var(--space-3);
 margin-top: var(--space-4);
}

.connections-tech-details {
 font-size: 0.85rem;
}

.connections-tech-details summary {
 cursor: pointer;
}

.connections-tech-pre {
 margin: var(--space-2) 0 0;
 padding: var(--space-3);
 overflow: auto;
 overscroll-behavior: contain;
 max-height: 24rem;
 white-space: pre-wrap;
 word-break: break-word;
 font-size: 0.75rem;
}

.connections-feedback:not(:empty) {
 margin: var(--space-4) 0;
}

/* Toast connects one location per GUID and Plaid one item per bank login,
 * so those cards list their connections individually instead of showing a
 * single connection summary. */
.toast-location-count,
.plaid-item-count {
 font-weight: 600;
 margin-bottom: var(--space-2);
}

.toast-location-list,
.plaid-item-list {
 display: flex;
 flex-direction: column;
 gap: var(--space-3);
 margin-bottom: var(--space-4);
}

.toast-location,
.plaid-item {
 display: flex;
 flex-direction: column;
 gap: var(--space-1);
 padding: var(--space-3);
 border: 1px solid var(--border);
 border-radius: var(--radius-md);
}

.toast-location-name,
.plaid-item-name {
 font-weight: 500;
}

.toast-location-guid,
.plaid-item-id {
 font-family:
  ui-monospace, SFMono-Regular, Menlo,
  monospace;
 font-size: var(--text-sm);
 word-break: break-all;
}

.toast-location .connections-actions,
.plaid-item .connections-actions {
 margin-top: var(--space-1);
}

/* Accounts load per item after the row renders, so the block has to look
 * deliberate while it is still a single line of placeholder text. */
.plaid-accounts {
 margin-top: var(--space-2);
}

.plaid-accounts-count {
 margin-bottom: var(--space-1);
}

.plaid-account-list {
 display: flex;
 flex-direction: column;
 gap: var(--space-1);
 margin: 0;
 padding: 0;
 list-style: none;
}

.plaid-account {
 display: flex;
 flex-wrap: wrap;
 align-items: center;
 gap: var(--space-2);
}

.plaid-account-name {
 font-weight: 500;
}

.plaid-account-mask {
 font-family:
  ui-monospace, SFMono-Regular, Menlo,
  monospace;
 font-size: var(--text-sm);
}

.toast-form-heading {
 font-weight: 600;
}
