/* Aiterich Gate/Auth Visual Shell V1 — presentation only
 * TASK_ID=T-WEBSITE-GATE-AUTH-VISUAL-SHELL-20260920-V1
 * Tokens align with aiterich-design-system (--ank-*). No contract change.
 * V1.1: stronger /auth/ overrides vs recovery + ideal orange/green.
 */
:root {
  --ank-ink: #1A1F26;
  --ank-primary: #1F3A4D;
  --ank-primary-hover: #0E2233;
  --ank-bg: #FFFFFF;
  --ank-bg-soft: #F5F7FA;
  --ank-border: #D9E1EA;
  --ank-accent: #C84630;
  --ank-data: #176B8A;
  --ank-text: #4B5563;
  --ank-text-weak: #6B7280;
  --ank-radius: 6px;
  --ank-font: "Noto Sans SC", "Source Han Sans SC", "Microsoft YaHei", "PingFang SC", sans-serif;
}

/* Gate single */
body:has(.agf-single) {
  margin: 0;
  min-height: 100vh;
  background:
    radial-gradient(ellipse 70% 45% at 50% 0%, rgba(31, 58, 77, 0.06), transparent 70%),
    var(--ank-bg-soft);
  font-family: var(--ank-font);
  color: var(--ank-ink);
}
.agf-single {
  max-width: 720px !important;
  margin: 56px auto 80px !important;
  padding: 40px 40px 36px !important;
  background: var(--ank-bg);
  border: 1px solid var(--ank-border);
  border-radius: 10px;
  box-shadow: 0 12px 36px rgba(14, 34, 51, 0.06);
  font-family: var(--ank-font) !important;
}
.agf-single-header { margin-bottom: 20px !important; }
.agf-single-title {
  font-size: 26px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  margin: 0 0 14px !important;
  color: var(--ank-ink) !important;
  letter-spacing: -0.01em;
}
.agf-single-meta {
  display: flex !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  margin-bottom: 8px !important;
}
.agf-single-badge {
  padding: 4px 12px !important;
  border-radius: var(--ank-radius) !important;
  background: #EEF3F7 !important;
  color: var(--ank-primary) !important;
  border: 1px solid var(--ank-border);
  font-size: 13px !important;
  font-weight: 600 !important;
}
.agf-single-version,
.agf-single-downloads {
  color: var(--ank-text-weak) !important;
  font-size: 13px !important;
}
.agf-single-desc {
  color: var(--ank-text) !important;
  line-height: 1.75 !important;
  font-size: 15px !important;
  margin: 18px 0 28px !important;
  padding: 14px 16px;
  background: var(--ank-bg-soft);
  border-left: 3px solid var(--ank-primary);
  border-radius: 0 var(--ank-radius) var(--ank-radius) 0;
}
.agf-single-cta,
a.agf-single-cta {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 48px !important;
  padding: 12px 28px !important;
  background: var(--ank-primary) !important;
  color: #fff !important;
  border-radius: var(--ank-radius) !important;
  text-decoration: none !important;
  font-size: 15px !important;
  font-weight: 650 !important;
  border: 1px solid var(--ank-primary) !important;
  box-shadow: none !important;
  transition: background .15s ease, border-color .15s ease;
}
.agf-single-cta:hover,
a.agf-single-cta:hover {
  background: var(--ank-primary-hover) !important;
  border-color: var(--ank-primary-hover) !important;
  color: #fff !important;
}
.agf-single-back,
a.agf-single-back {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  margin-top: 22px !important;
  color: var(--ank-data) !important;
  text-decoration: none !important;
  font-size: 14px !important;
  font-weight: 500 !important;
}
.agf-single-back:hover { color: var(--ank-primary) !important; }
@media (max-width: 640px) {
  .agf-single { margin: 24px 14px 48px !important; padding: 28px 20px !important; }
  .agf-single-title { font-size: 22px !important; }
}

/* Auth page — beat recovery + ideal (orange/green) */
.v21-auth-page {
  --ank-danger: #A93724;
  --ank-danger-bg: #FBF1EF;
  --ank-danger-line: #E8C4BD;
}
.v21-auth-page #main {
  --auth-ink: #1A1F26 !important;
  --auth-copy: #4B5563 !important;
  --auth-muted: #6B7280 !important;
  --auth-line: #D9E1EA !important;
  --auth-blue: #1F3A4D !important;
  --auth-wash: #F5F7FA !important;
  background:
    radial-gradient(ellipse 55% 40% at 50% 0%, rgba(31, 58, 77, 0.05), transparent 70%),
    #F5F7FA !important;
}
.v21-auth-page #main .v21-auth-content { padding: 36px 20px 56px !important; }
.v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal {
  max-width: 920px !important;
  width: min(920px, 100%) !important;
}
.v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal .aiterich-auth-shell {
  display: grid !important;
  grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr) !important;
  border: 1px solid #D9E1EA !important;
  border-radius: 10px !important;
  overflow: hidden !important;
  background: #fff !important;
  box-shadow: 0 14px 40px rgba(14, 34, 51, 0.07) !important;
}
.v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal .aiterich-auth-shell-hero {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: stretch !important;
  padding: 40px 36px !important;
  background: linear-gradient(165deg, #F7F9FB 0%, #EEF3F7 100%) !important;
  color: #1A1F26 !important;
  border: 0 !important;
  box-shadow: none !important;
}
.v21-auth-page #main #aiterich-auth-unified .aiterich-auth-shell-kicker {
  margin: 0 0 10px !important;
  color: #1F3A4D !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.06em !important;
  text-transform: none !important;
}
.v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal .aiterich-auth-shell-kicker {
  color: #1F3A4D !important;
}
.v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal .aiterich-auth-shell-title,
.v21-auth-page #main #aiterich-auth-unified .aiterich-auth-shell-title {
  margin: 0 0 12px !important;
  color: #1A1F26 !important;
  font-size: 30px !important;
  line-height: 1.25 !important;
  letter-spacing: -0.02em !important;
  text-shadow: none !important;
}
.v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal .aiterich-auth-shell-desc,
.v21-auth-page #main #aiterich-auth-unified .aiterich-auth-shell-desc {
  margin: 0 !important;
  max-width: none !important;
  color: #4B5563 !important;
  font-size: 15px !important;
  line-height: 1.75 !important;
  text-shadow: none !important;
}
.v21-auth-page #main #aiterich-auth-unified .aiterich-auth-shell-actions {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  margin: 28px 0 0 !important;
}
.v21-auth-page #main #aiterich-auth-unified .aiterich-auth-pill,
.v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal .aiterich-auth-pill {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 42px !important;
  padding: 8px 16px !important;
  border: 1px solid #D9E1EA !important;
  border-radius: 6px !important;
  background: #fff !important;
  color: #1F3A4D !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  box-shadow: none !important;
}
.v21-auth-page #main #aiterich-auth-unified .aiterich-auth-pill:hover {
  background: #EEF3F7 !important;
}
.v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal .aiterich-auth-pill:first-child,
.v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--logged-out .aiterich-auth-pill:first-child {
  background: #1F3A4D !important;
  border-color: #1F3A4D !important;
  color: #fff !important;
}
.v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal .aiterich-auth-shell-panel--forms {
  padding: 32px 36px !important;
  background: #fff !important;
  border: 0 !important;
  box-shadow: none !important;
}
.v21-auth-page #main #aiterich-auth-unified .aiterich-auth-primary-tabs {
  gap: 24px !important;
  margin: 0 0 8px !important;
  border-bottom: 1px solid #D9E1EA !important;
  background: transparent !important;
}
.v21-auth-page #main #aiterich-auth-unified .aiterich-auth-primary-tab {
  color: #6B7280 !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.v21-auth-page #main #aiterich-auth-unified .aiterich-auth-primary-tab.active { color: #1A1F26 !important; }
.v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal .aiterich-auth-primary-tab.active:after,
.v21-auth-page #main #aiterich-auth-unified .aiterich-auth-primary-tab.active:after {
  background: #1F3A4D !important;
  height: 2px !important;
}
.v21-auth-page #main #aiterich-auth-unified .aiterich-auth-title {
  color: #1A1F26 !important;
  font-size: 24px !important;
  margin: 0 0 6px !important;
}
.v21-auth-page #main #aiterich-auth-unified .aiterich-auth-panel-subtitle {
  color: #6B7280 !important;
  font-size: 14px !important;
  line-height: 1.65 !important;
  margin: 0 0 18px !important;
}
.v21-auth-page #main #aiterich-auth-unified .aiterich-tabs {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 0 !important;
  margin: 0 0 20px !important;
  padding: 4px !important;
  border: 1px solid #D9E1EA !important;
  border-radius: 6px !important;
  background: #F5F7FA !important;
}
.v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal .aiterich-tab,
.v21-auth-page #main #aiterich-auth-unified .aiterich-tab {
  flex: none !important;
  min-height: 40px !important;
  margin: 0 !important;
  padding: 8px 10px !important;
  border: 0 !important;
  border-radius: 4px !important;
  background: transparent !important;
  color: #6B7280 !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  text-align: center !important;
  box-shadow: none !important;
}
.v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal .aiterich-tab.active,
.v21-auth-page #main #aiterich-auth-unified .aiterich-tab.active {
  background: #fff !important;
  color: #1F3A4D !important;
  box-shadow: 0 1px 2px rgba(14, 34, 51, 0.06) !important;
}
.v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal .aiterich-tab.active::after,
.v21-auth-page #main #aiterich-auth-unified .aiterich-tab.active::after {
  display: none !important;
  content: none !important;
}
.v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal .aiterich-tab--recommended::before {
  display: none !important;
}
.v21-auth-page #main #aiterich-auth-unified .aiterich-float-field input,
.v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal .aiterich-float-field input {
  height: 48px !important;
  border: 1px solid #D9E1EA !important;
  border-radius: 6px !important;
  background: #fff !important;
  color: #1A1F26 !important;
  box-shadow: none !important;
}
.v21-auth-page #main #aiterich-auth-unified .aiterich-float-field input:focus,
.v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal .aiterich-float-field input:focus {
  border-color: #1F3A4D !important;
  outline: 3px solid rgba(31, 58, 77, 0.12) !important;
  outline-offset: 0 !important;
  box-shadow: none !important;
}
.v21-auth-page #main #aiterich-auth-unified .aiterich-float-field input:focus ~ label,
.v21-auth-page #main #aiterich-auth-unified .aiterich-float-field input:not(:placeholder-shown) ~ label {
  color: #1F3A4D !important;
}
.v21-auth-page #main #aiterich-auth-unified input[aria-invalid="true"],
.v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal input[aria-invalid="true"],
.v21-auth-page #main #aiterich-auth-unified .aiterich-float-field input[aria-invalid="true"] {
  border-color: #A93724 !important;
  background: #FFFCFA !important;
  outline: none !important;
  box-shadow: none !important;
}
.v21-auth-page #main #aiterich-auth-unified .aiterich-error,
.v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal .aiterich-error {
  margin: 0 0 14px !important;
  padding: 12px 14px !important;
  border: 1px solid #E8C4BD !important;
  border-radius: 6px !important;
  background: #FBF1EF !important;
  color: #A93724 !important;
  font-size: 13px !important;
  line-height: 1.55 !important;
  box-shadow: none !important;
}
.v21-auth-page #main #aiterich-auth-unified .aiterich-field-error { color: #A93724 !important; }
.v21-auth-page #main #aiterich-auth-unified .aiterich-btn,
.v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal .aiterich-btn {
  min-height: 48px !important;
  background: #1F3A4D !important;
  border: 1px solid #1F3A4D !important;
  color: #fff !important;
  font-size: 15px !important;
  font-weight: 650 !important;
  border-radius: 6px !important;
  box-shadow: none !important;
}
.v21-auth-page #main #aiterich-auth-unified .aiterich-btn:hover:not(:disabled),
.v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal .aiterich-btn:hover:not(:disabled) {
  background: #0E2233 !important;
  border-color: #0E2233 !important;
}
.v21-auth-page #main #aiterich-auth-unified .aiterich-btn-outline,
.v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal .aiterich-btn-outline {
  background: #fff !important;
  border: 1px solid #D9E1EA !important;
  color: #1F3A4D !important;
  border-radius: 6px !important;
}
.v21-auth-page #main #aiterich-auth-unified .aiterich-auth-text-link,
.v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal .aiterich-auth-text-link,
.v21-auth-page #main #aiterich-auth-unified .aiterich-auth-privacy a {
  color: #176B8A !important;
}
.v21-auth-page #main #aiterich-auth-unified .aiterich-eye { color: #6B7280 !important; }
.v21-auth-page #main #aiterich-auth-unified .aiterich-auth-progress li.active,
.v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal .aiterich-auth-progress li.active {
  color: #1A1F26 !important;
  border-color: #1F3A4D !important;
}
.v21-auth-page #main #aiterich-auth-unified .aiterich-auth-progress li.active::before,
.v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal .aiterich-auth-progress li.active:before {
  background: #1F3A4D !important;
  color: #fff !important;
}
.v21-auth-page #main :is(button,a):focus-visible {
  outline: 3px solid rgba(31, 58, 77, 0.35) !important;
  outline-offset: 2px !important;
}
@media (max-width: 760px) {
  .v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal .aiterich-auth-shell {
    display: block !important;
  }
  .v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal .aiterich-auth-shell-hero {
    padding: 24px 20px !important;
  }
  .v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal .aiterich-auth-shell-title {
    font-size: 26px !important;
  }
  .v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal .aiterich-auth-shell-panel--forms {
    padding: 24px 20px !important;
  }
}

/* 404 */
body.error404 .site-content {
  background:
    radial-gradient(ellipse 60% 40% at 50% 18%, rgba(31, 58, 77, 0.05), transparent 65%),
    var(--ank-bg-soft) !important;
}
body.error404 .page-content,
body.error404 .entry-content,
body.error404 .ast-404-layout-1 {
  max-width: 640px;
  margin: 48px auto 72px !important;
  padding: 48px 36px !important;
  text-align: center;
  background: var(--ank-bg);
  border: 1px solid var(--ank-border);
  border-radius: 10px;
  box-shadow: 0 12px 36px rgba(14, 34, 51, 0.05);
}
body.error404 .page-content > h1:first-child,
body.error404 .entry-content > h1:first-child,
body.error404 .ast-404-layout-1 .page-header .page-title,
body.error404 .error-404 .page-title {
  color: #C5CED8 !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em;
}
body.error404 .page-content p,
body.error404 .entry-content p { color: var(--ank-text) !important; }
body.error404 a.button,
body.error404 .wp-block-button__link,
body.error404 .ast-button,
body.error404 a.elementor-button {
  background: var(--ank-primary) !important;
  border-color: var(--ank-primary) !important;
  color: #fff !important;
  border-radius: var(--ank-radius) !important;
}

/* AUTH_ERROR_AUTOFILL_KILL_V12 */

/* Kill peach/earthy #fff4ef error wash + Chrome autofill yellow.
 * Specificity + late inject must beat .aiterich-auth-unified--ideal .aiterich-error.
 */
html body.v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal .aiterich-error,
html body.v21-auth-page #main #aiterich-auth-unified .aiterich-error,
html body.v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal .aiterich-auth-status.error,
html body.v21-auth-page #main #aiterich-login-pw-error.aiterich-error,
html body.v21-auth-page #main #aiterich-login-otp-error.aiterich-error,
html body.v21-auth-page #main #aiterich-reg-identity-error.aiterich-error,
html body.v21-auth-page #main #aiterich-reg-otp-error.aiterich-error,
html body.v21-auth-page #main #aiterich-reg-pw-error.aiterich-error {
  background: #F7F8FA !important;
  background-color: #F7F8FA !important;
  background-image: none !important;
  border: 1px solid #D9E1EA !important;
  border-left: 3px solid #A93724 !important;
  border-radius: 6px !important;
  color: #8B2E1F !important;
  box-shadow: none !important;
  padding: 12px 14px !important;
}

html body.v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal input[aria-invalid="true"],
html body.v21-auth-page #main #aiterich-auth-unified input[aria-invalid="true"],
html body.v21-auth-page #main #aiterich-auth-unified .aiterich-float-field input[aria-invalid="true"] {
  border-color: #A93724 !important;
  background: #FFFFFF !important;
  background-color: #FFFFFF !important;
  box-shadow: none !important;
  outline: none !important;
}

/* Chrome/Edge autofill: kill yellow/blue wash */
html body.v21-auth-page #main #aiterich-auth-unified input:-webkit-autofill,
html body.v21-auth-page #main #aiterich-auth-unified input:-webkit-autofill:hover,
html body.v21-auth-page #main #aiterich-auth-unified input:-webkit-autofill:focus,
html body.v21-auth-page #main #aiterich-auth-unified input:-webkit-autofill:active,
html body.v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal input:-webkit-autofill,
html body.v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal input:-webkit-autofill:focus {
  -webkit-text-fill-color: #1A1F26 !important;
  caret-color: #1A1F26 !important;
  box-shadow: 0 0 0 1000px #FFFFFF inset !important;
  -webkit-box-shadow: 0 0 0 1000px #FFFFFF inset !important;
  background-color: #FFFFFF !important;
  transition: background-color 99999s ease-out 0s !important;
  filter: none !important;
}

/* AUTH_YELLOW_BORDER_KILL_V13 */

/* Beat late-loaded ideal #b83b18 / orange focus glow (土黄色描边) */
html body.v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal input[aria-invalid="true"],
html body.v21-auth-page #main #aiterich-auth-unified input[aria-invalid="true"],
html body.v21-auth-page #main #aiterich-auth-unified .aiterich-float-field input[aria-invalid="true"],
html body.v21-auth-page #main #aiterich-login-identity[aria-invalid="true"],
html body.v21-auth-page #main #aiterich-login-password[aria-invalid="true"],
html body.v21-auth-page #main #aiterich-login-otp-identity[aria-invalid="true"],
html body.v21-auth-page #main #aiterich-login-otp-code[aria-invalid="true"],
html body.v21-auth-page #main #aiterich-reg-identity[aria-invalid="true"],
html body.v21-auth-page #main #aiterich-reg-otp-code[aria-invalid="true"],
html body.v21-auth-page #main #aiterich-reg-password[aria-invalid="true"],
html body.v21-auth-page #main #aiterich-reg-password2[aria-invalid="true"] {
  border: 1px solid #A93724 !important;
  border-color: #A93724 !important;
  outline: none !important;
  outline-color: transparent !important;
  box-shadow: none !important;
  background-color: #FFFFFF !important;
}

html body.v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal :is(button, a, input):focus-visible,
html body.v21-auth-page #main #aiterich-auth-unified :is(button, a, input):focus-visible {
  outline: 3px solid rgba(31, 58, 77, 0.28) !important;
  outline-offset: 2px !important;
}

html body.v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal input[aria-invalid="true"]:focus,
html body.v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal input[aria-invalid="true"]:focus-visible,
html body.v21-auth-page #main #aiterich-auth-unified input[aria-invalid="true"]:focus,
html body.v21-auth-page #main #aiterich-auth-unified input[aria-invalid="true"]:focus-visible {
  border-color: #A93724 !important;
  outline: 3px solid rgba(169, 55, 36, 0.18) !important;
  outline-offset: 0 !important;
  box-shadow: none !important;
}

html body.v21-auth-page #main #aiterich-auth-unified .aiterich-field-error,
html body.v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal .aiterich-field-error {
  color: #A93724 !important;
}

/* AUTH_COOL_RED_INVALID_V14 */

/* Cool clear red invalid state — kill ochre/amber/terracotta (#b83b18/#A93724/autofill amber) */
html body.v21-auth-page #main #aiterich-auth-unified input[aria-invalid="true"],
html body.v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal input[aria-invalid="true"],
html body.v21-auth-page #main #aiterich-auth-unified .aiterich-float-field input[aria-invalid="true"],
html body.v21-auth-page #main input#aiterich-login-identity[aria-invalid="true"],
html body.v21-auth-page #main input#aiterich-login-password[aria-invalid="true"],
html body.v21-auth-page #main input#aiterich-login-otp-identity[aria-invalid="true"],
html body.v21-auth-page #main input#aiterich-login-otp-code[aria-invalid="true"] {
  border: 1px solid #B91C1C !important;
  border-color: #B91C1C !important;
  outline: 0 !important;
  outline-width: 0 !important;
  outline-color: transparent !important;
  box-shadow: none !important;
  background-color: #FFFFFF !important;
  caret-color: #1A1F26 !important;
}
html body.v21-auth-page #main #aiterich-auth-unified input[aria-invalid="true"]:focus,
html body.v21-auth-page #main #aiterich-auth-unified input[aria-invalid="true"]:focus-visible,
html body.v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal input[aria-invalid="true"]:focus,
html body.v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal input[aria-invalid="true"]:focus-visible {
  border-color: #B91C1C !important;
  outline: 0 !important;
  box-shadow: 0 0 0 3px rgba(185, 28, 28, 0.12) !important;
}
html body.v21-auth-page #main #aiterich-auth-unified .aiterich-error,
html body.v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal .aiterich-error,
html body.v21-auth-page #main #aiterich-login-pw-error,
html body.v21-auth-page #main #aiterich-login-otp-error {
  background: #FEF2F2 !important;
  background-color: #FEF2F2 !important;
  background-image: none !important;
  border: 1px solid #FECACA !important;
  border-left: 3px solid #B91C1C !important;
  color: #B91C1C !important;
  box-shadow: none !important;
  outline: 0 !important;
}
html body.v21-auth-page #main #aiterich-auth-unified .aiterich-field-error {
  color: #B91C1C !important;
}
/* Kill Chrome amber autofill wash + credentials button tint */
html body.v21-auth-page #main #aiterich-auth-unified input:-webkit-autofill,
html body.v21-auth-page #main #aiterich-auth-unified input:-webkit-autofill:hover,
html body.v21-auth-page #main #aiterich-auth-unified input:-webkit-autofill:focus,
html body.v21-auth-page #main #aiterich-auth-unified input:-webkit-autofill:active {
  -webkit-text-fill-color: #1A1F26 !important;
  caret-color: #1A1F26 !important;
  box-shadow: 0 0 0 1000px #FFFFFF inset !important;
  -webkit-box-shadow: 0 0 0 1000px #FFFFFF inset !important;
  border: 1px solid #D9E1EA !important;
  transition: background-color 99999s ease-out 0s !important;
  filter: none !important;
}
html body.v21-auth-page #main #aiterich-auth-unified input[aria-invalid="true"]:-webkit-autofill,
html body.v21-auth-page #main #aiterich-auth-unified input[aria-invalid="true"]:-webkit-autofill:focus {
  box-shadow: 0 0 0 1000px #FFFFFF inset !important;
  -webkit-box-shadow: 0 0 0 1000px #FFFFFF inset !important;
  border: 1px solid #B91C1C !important;
  border-color: #B91C1C !important;
}
html body.v21-auth-page #main #aiterich-auth-unified input::-webkit-credentials-autofill-button,
html body.v21-auth-page #main #aiterich-auth-unified input::-webkit-strong-password-auto-fill-button {
  visibility: hidden !important;
  display: none !important;
  pointer-events: none !important;
}
html body.v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal :is(button, a, input):focus-visible {
  outline: 3px solid rgba(31, 58, 77, 0.28) !important;
  outline-offset: 2px !important;
}

/* AUTH_RESTRAINED_ERR_V15 */

/* Restrained invalid: gray input border + red text only; no red ring / no peach box */
html body.v21-auth-page #main #aiterich-auth-unified input[aria-invalid="true"],
html body.v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal input[aria-invalid="true"],
html body.v21-auth-page #main #aiterich-auth-unified .aiterich-float-field input[aria-invalid="true"],
html body.v21-auth-page #main input#aiterich-login-identity[aria-invalid="true"],
html body.v21-auth-page #main input#aiterich-login-password[aria-invalid="true"],
html body.v21-auth-page #main input#aiterich-login-otp-identity[aria-invalid="true"],
html body.v21-auth-page #main input#aiterich-login-otp-code[aria-invalid="true"],
html body.v21-auth-page #main input#aiterich-reg-identity[aria-invalid="true"],
html body.v21-auth-page #main input#aiterich-reg-otp-code[aria-invalid="true"],
html body.v21-auth-page #main input#aiterich-reg-password[aria-invalid="true"],
html body.v21-auth-page #main input#aiterich-reg-password2[aria-invalid="true"] {
  border: 1px solid #D9E1EA !important;
  border-color: #D9E1EA !important;
  outline: 0 !important;
  outline-width: 0 !important;
  box-shadow: none !important;
  background-color: #FFFFFF !important;
}
html body.v21-auth-page #main #aiterich-auth-unified input[aria-invalid="true"]:focus,
html body.v21-auth-page #main #aiterich-auth-unified input[aria-invalid="true"]:focus-visible,
html body.v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal input[aria-invalid="true"]:focus,
html body.v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal input[aria-invalid="true"]:focus-visible {
  border-color: #1F3A4D !important;
  outline: 0 !important;
  box-shadow: 0 0 0 3px rgba(31, 58, 77, 0.12) !important;
}
html body.v21-auth-page #main #aiterich-auth-unified .aiterich-error,
html body.v21-auth-page #main #aiterich-auth-unified.aiterich-auth-unified--ideal .aiterich-error,
html body.v21-auth-page #main #aiterich-login-pw-error,
html body.v21-auth-page #main #aiterich-login-otp-error,
html body.v21-auth-page #main #aiterich-reg-identity-error,
html body.v21-auth-page #main #aiterich-reg-otp-error,
html body.v21-auth-page #main #aiterich-reg-pw-error {
  margin: 0 0 14px !important;
  padding: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: 0 !important;
  border-left: 0 !important;
  border-radius: 0 !important;
  color: #C84630 !important;
  box-shadow: none !important;
  outline: 0 !important;
  font-size: 13px !important;
  line-height: 1.55 !important;
}
html body.v21-auth-page #main #aiterich-auth-unified .aiterich-field-error {
  color: #C84630 !important;
}
html body.v21-auth-page #main #aiterich-auth-unified input[aria-invalid="true"]:-webkit-autofill,
html body.v21-auth-page #main #aiterich-auth-unified input[aria-invalid="true"]:-webkit-autofill:focus {
  border: 1px solid #D9E1EA !important;
  border-color: #D9E1EA !important;
  box-shadow: 0 0 0 1000px #FFFFFF inset !important;
  -webkit-box-shadow: 0 0 0 1000px #FFFFFF inset !important;
}
