diff --git a/frontend/js/views/settings.js b/frontend/js/views/settings.js
index ef1bdce..b552cee 100644
--- a/frontend/js/views/settings.js
+++ b/frontend/js/views/settings.js
@@ -743,8 +743,12 @@ export async function render(container) {
${d.verified ? '' : `
${esc(t('sso.dns_instructions'))}
${esc(d.record_name)} TXT ${esc(d.txt_value)}
- ${d.last_error ? `${esc(d.last_error)}
` : ''}`}
-
+`}
+
+ ${d.verified ? '' : esc(d.last_error || '')}
`).join('')}
` : ''}
@@ -797,7 +801,7 @@ export async function render(container) {
// `a-b-test`, and getElementById would put one domain's answer in the other's box.
const out = document.getElementById(`ssoVerify-${id}-${btn.dataset.di}`);
btn.disabled = true;
- if (out) out.textContent = t('sso.verifying');
+ if (out) { out.style.color = 'var(--text-muted)'; out.textContent = t('sso.verifying'); }
try {
const res = await fetch(`/api/organizations/${orgId}/sso/${id}/domains/${encodeURIComponent(domain)}/verify`, {
method: 'POST',
@@ -816,9 +820,9 @@ export async function render(container) {
await loadSso();
return;
}
- if (out) out.textContent = body.error || t('sso.verify_failed');
+ if (out) { out.style.color = 'var(--danger,#b91c1c)'; out.textContent = body.error || t('sso.verify_failed'); }
} catch {
- if (out) out.textContent = t('sso.verify_failed');
+ if (out) { out.style.color = 'var(--danger,#b91c1c)'; out.textContent = t('sso.verify_failed'); }
} finally {
btn.disabled = false;
}