/* Light mode (default) — surface tokens */
.boa-banking-wrap {
	--boa-bg: #f4f6f8;
	--boa-surface: #ffffff;
	--boa-surface-muted: #f7f8fa;
	--boa-border: #e0e0e0;
	--boa-text: #333333;
	--boa-text-muted: #666666;
	--boa-input-bg: #ffffff;
	--boa-input-border: #cccccc;
	--boa-shadow: rgba(0, 0, 0, 0.08);
	--boa-header-text: #ffffff;
	background: var(--boa-bg);
	color: var(--boa-text);
}

.boa-banking-wrap .boa-login-card,
.boa-banking-wrap .boa-account-detail,
.boa-banking-wrap .boa-transfer-form,
.boa-banking-wrap .boa-accounts-sidebar {
	background: var(--boa-surface);
	border-color: var(--boa-border);
	color: var(--boa-text);
}

.boa-banking-wrap .boa-accounts-sidebar {
	background: var(--boa-surface-muted);
}

.boa-banking-wrap .boa-account-item a {
	background: var(--boa-surface);
	border-color: var(--boa-border);
	color: var(--boa-text);
}

.boa-banking-wrap .boa-form input,
.boa-banking-wrap .boa-form select {
	background: var(--boa-input-bg);
	border-color: var(--boa-input-border);
	color: var(--boa-text);
}

.boa-banking-wrap .boa-form label {
	color: var(--boa-text-muted);
}

.boa-banking-wrap .boa-login-card {
	box-shadow: 0 2px 12px var(--boa-shadow);
}

.boa-banking-wrap .boa-login-card h1,
.boa-banking-wrap .boa-page-title,
.boa-banking-wrap .boa-accounts-sidebar h2,
.boa-banking-wrap .boa-detail-header h2 {
	color: var(--boa-primary);
}

.boa-banking-wrap .boa-txn-table th {
	color: var(--boa-text-muted);
}

.boa-banking-wrap .boa-txn-table td {
	border-bottom-color: var(--boa-border);
}

.boa-banking-wrap .boa-header {
	color: var(--boa-header-text);
}

.boa-banking-wrap .boa-logo-text {
	color: var(--boa-header-text);
}

.boa-banking-wrap .description {
	color: var(--boa-text-muted);
}

/* Dark mode */
.boa-banking-wrap[data-theme="dark"] {
	--boa-bg: #0d1117;
	--boa-surface: #161b22;
	--boa-surface-muted: #1c2128;
	--boa-border: #30363d;
	--boa-text: #e6edf3;
	--boa-text-muted: #8b949e;
	--boa-input-bg: #0d1117;
	--boa-input-border: #484f58;
	--boa-shadow: rgba(0, 0, 0, 0.45);
}

.boa-banking-wrap[data-theme="dark"] .boa-login-card h1,
.boa-banking-wrap[data-theme="dark"] .boa-page-title,
.boa-banking-wrap[data-theme="dark"] .boa-accounts-sidebar h2,
.boa-banking-wrap[data-theme="dark"] .boa-detail-header h2 {
	color: #58a6ff;
}

.boa-banking-wrap[data-theme="dark"] .boa-balance-large,
.boa-banking-wrap[data-theme="dark"] .boa-acc-balance {
	color: #e6edf3;
}

.boa-banking-wrap[data-theme="dark"] .boa-nav a {
	color: rgba(255, 255, 255, 0.85);
}

.boa-banking-wrap[data-theme="dark"] .boa-nav a:hover,
.boa-banking-wrap[data-theme="dark"] .boa-nav a.active {
	color: #fff;
}

.boa-banking-wrap[data-theme="dark"] .boa-message.success {
	background: #1a3d2e;
	color: #7ee787;
}

.boa-banking-wrap[data-theme="dark"] .boa-message.error {
	background: #3d1a1f;
	color: #ff7b72;
}

.boa-banking-wrap[data-theme="dark"] .boa-status-pending {
	background: #3d3200;
	color: #e3b341;
}

.boa-banking-wrap[data-theme="dark"] .boa-status-approved {
	background: #1a3d2e;
	color: #7ee787;
}

.boa-banking-wrap[data-theme="dark"] .boa-status-declined,
.boa-banking-wrap[data-theme="dark"] .boa-status-failed {
	background: #3d1a1f;
	color: #ff7b72;
}

.boa-banking-wrap[data-theme="dark"] .boa-tab {
	color: var(--boa-text-muted);
}

.boa-banking-wrap[data-theme="dark"] .boa-tab.active {
	color: #58a6ff;
}

.boa-banking-wrap[data-theme="dark"] .boa-transfer-tabs {
	border-bottom-color: var(--boa-border);
}

.boa-banking-wrap[data-theme="dark"] .boa-btn-link {
	color: #58a6ff;
}
