.signin-verification, .auth-security {
  --verification-accent: #5969dd;
  --verification-border: #dce1eb;
  --verification-panel: #f5f7fc;
  --verification-control-width: 420px;
  min-width: 0;
  color: inherit;
  line-height: 1.6;
  text-align: left;
}
.signin-verification *, .auth-security * { box-sizing: border-box; }
.signin-verification [hidden], .auth-security [hidden], .signin-verification[hidden], .auth-security[hidden] { display: none !important; }
.signin-verification { width: 100%; max-width: var(--verification-control-width); }
.auth-security { display: grid; gap: 16px; }
.signin-verification form, .auth-security form,
#users-modal :is(.signin-verification, .auth-security) form {
  display: grid;
  gap: 16px;
  width: 100%;
  max-width: var(--verification-control-width);
  margin: 0;
}
.signin-verification h3, .auth-security h3 { margin: 0; font-size: 20px; line-height: 1.35; color: inherit; }
.signin-verification p, .auth-security p { margin: 0; font-size: 14px; }
.signin-verification label, .auth-security label {
  display: grid;
  gap: 8px;
  width: 100%;
  max-width: var(--verification-control-width);
  min-width: 0;
  margin: 0;
  font-size: 14px;
  font-weight: 600;
}
.signin-verification input, .auth-security input, .auth-security select,
#users-modal :is(.signin-verification, .auth-security) :is(input, select) {
  display: block;
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  height: 48px;
  min-height: 48px;
  padding: 10px 12px;
  margin: 0;
  color: inherit;
  background: transparent;
  border: 1px solid var(--verification-border);
  border-radius: 8px;
  font: inherit;
  font-size: 16px;
  line-height: 1.5;
}
.signin-verification input[data-verification-code],
.signin-verification input[data-verification-authenticator-code],
.auth-security input[data-security-enroll-code],
#users-modal :is(.signin-verification, .auth-security) :is([data-verification-code], [data-verification-authenticator-code], [data-security-enroll-code]) {
  font: 24px/1 ui-monospace, SFMono-Regular, Consolas, monospace;
  font-variant-numeric: tabular-nums;
  letter-spacing: .25em;
  text-indent: .25em;
  text-align: center;
}
.signin-verification button, .auth-security button,
#users-modal :is(.signin-verification, .auth-security) button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  min-width: 0;
  min-height: 48px;
  padding: 10px 12px;
  margin: 0;
  border: 1px solid var(--verification-border);
  border-radius: 8px;
  color: inherit;
  background: transparent;
  font: inherit;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.4;
  text-align: center;
  white-space: normal;
  cursor: pointer;
}
.signin-verification button:disabled, .auth-security button:disabled { opacity: .5; cursor: default; }
.signin-verification button.verification-primary, .auth-security button.verification-primary {
  background: var(--verification-accent);
  border-color: var(--verification-accent);
  color: white;
  width: 100%;
}
.verification-actions {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 180px), 1fr));
  gap: 10px;
  width: 100%;
  max-width: var(--verification-control-width, 420px);
  margin: 0;
}
.verification-actions > button { width: 100%; }
.auth-security > button { width: 100%; max-width: var(--verification-control-width); }
.auth-security [data-security-verification] {
  display: grid;
  gap: 16px;
  width: 100%;
  max-width: var(--verification-control-width);
  min-width: 0;
}
.signin-support { margin: 0; font-size: 13px; line-height: 1.6; overflow-wrap: anywhere; }
.signin-verification .signin-support { font-size: 13px; }
.signin-support a { color: var(--verification-accent, #5969dd); text-decoration: underline; text-underline-offset: 3px; }
.signin-verification .verification-status, .auth-security .verification-status { color: #b34820; overflow-wrap: anywhere; }
.signin-verification .verification-status:empty, .auth-security .verification-status:empty {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}
.verification-timer:empty { display: none; }
.signin-verification .verification-timer { font-size: 12px; opacity: .7; }
.signin-verification :focus-visible, .auth-security :focus-visible { outline: 2px solid var(--verification-accent); outline-offset: 3px; }
.authenticator-qr { display: block; max-width: 100%; height: auto; margin: 0; border-radius: 8px; background: white; }
.authenticator-secret { display: block; box-sizing: border-box; width: 100%; max-width: var(--verification-control-width, 420px); padding: 12px; background: var(--verification-panel); overflow-wrap: anywhere; user-select: all; }
#users-modal .signin-support a { --verification-accent: #ff9900; }
#users-modal .signin-verification, #users-modal .auth-security { --verification-accent: #ff9900; --verification-border: #49423a; --verification-panel: #2b241c; }
#users-modal .verification-status { color: #ffb36e; }
#users-modal .auth-security select option { background: #181818; }
#users-modal :is(.signin-verification, .auth-security) button {
  color: #ddd; background: #1c1c1c; border: 1px solid var(--verification-border); box-shadow: none;
}
#users-modal :is(.signin-verification, .auth-security) button.verification-primary {
  background: var(--verification-accent); color: #111; border-color: var(--verification-accent);
}
