/* Ribal auth — match homepage teal/gold, compact fingerprint */
:root{
  --ribal-teal:#0F766E;
  --ribal-teal-2:#12867d;
  --ribal-ink:#12312e;
  --ribal-sand:#f4f1e6;
  --ribal-mist:#eef6f3;
  --ribal-gold:#c9a227;
}
html[data-theme="golden"] body,
body.auth-body,
.auth-shell,
.auth-page,
.login-page{
  background:
    radial-gradient(1200px 420px at 10% -10%, rgba(15,118,110,.14), transparent 60%),
    linear-gradient(180deg, var(--ribal-mist) 0%, var(--ribal-sand) 100%) !important;
}

/* form card */
.auth-form,
.login-card,
.gdk-auth__form,
.auth-form-wrapper,
.theme-auth .card{
  background:#fff !important;
  border-radius:22px !important;
  box-shadow:0 18px 40px rgba(18,49,46,.08) !important;
  border:1px solid rgba(15,118,110,.08) !important;
}

/* title: User Login */
.auth-form h2,
.auth-form h3,
.login-title,
.gdk-auth__title,
.auth-form__title,
.theme-auth h2{
  color:var(--ribal-teal) !important;
  font-weight:800 !important;
  letter-spacing:-.02em !important;
  font-size:26px !important;
}
.auth-form p,
.auth-form__desc,
.gdk-auth__desc{
  color:#5b6b68 !important;
  font-size:13.5px !important;
}

/* top wallet icon — quieter, teal */
.auth-form .auth-icon,
.auth-form__icon,
.gdk-auth__mark,
.login-icon{
  color:var(--ribal-teal) !important;
  background:rgba(15,118,110,.08) !important;
  border-radius:14px !important;
}

/* User Account pill */
.auth-form .badge,
.gdk-auth__chip,
.portal-chip{
  background:rgba(15,118,110,.1) !important;
  color:var(--ribal-teal) !important;
  border:0 !important;
}

/* Sign In — homepage teal */
.auth-form button[type="submit"],
.auth-form .theme-btn,
.auth-form .btn-primary,
.gdk-auth__submit{
  background:linear-gradient(90deg,#0F766E 0%,#1aa39a 55%,#c9a227 160%) !important;
  border:0 !important;
  border-radius:14px !important;
  height:46px !important;
  font-weight:700 !important;
  box-shadow:0 8px 18px rgba(15,118,110,.22) !important;
}

/* fingerprint — compact, icon + text */
#ribal-bio-login,
.ribal-bio-login{
  margin-top:10px !important;
}
#ribal-bio-login-btn,
.ribal-bio-btn{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
  width:100% !important;
  height:40px !important;
  max-height:40px !important;
  padding:0 14px !important;
  border:1px solid #c9d6d2 !important;
  background:#fff !important;
  border-radius:12px !important;
  color:var(--ribal-ink) !important;
  font-size:13px !important;
  font-weight:650 !important;
  line-height:1 !important;
  box-shadow:none !important;
  white-space:nowrap !important;
}
#ribal-bio-login-btn .ribal-bio-btn__icon,
.ribal-bio-btn__icon{
  display:inline-flex !important;
  width:18px !important;
  height:18px !important;
  color:var(--ribal-teal) !important;
  flex:0 0 18px !important;
}
#ribal-bio-login-btn svg,
.ribal-bio-btn svg{
  width:18px !important;
  height:18px !important;
  display:block !important;
}
#ribal-bio-login-btn:hover,
.ribal-bio-btn:hover{
  border-color:var(--ribal-teal) !important;
  color:var(--ribal-teal) !important;
  background:#f3faf8 !important;
}
.ribal-bio-msg{
  min-height:1.1em;
  margin-top:6px;
  text-align:center;
  font-size:12px;
  color:#b42318;
}

/* portal switch */
.auth-portal,
.gdk-auth__switch,
.switch-portal{
  background:#fff !important;
  border:1px solid #e6eeeb !important;
  border-radius:999px !important;
}

@media (max-width: 768px){
  .auth-form h2, .gdk-auth__title, .theme-auth h2{ font-size:22px !important; }
  #ribal-bio-login-btn, .ribal-bio-btn{ height:38px !important; font-size:12.5px !important; }
}

/* LOGINFLASH1: keep login light even if saved theme is dark */
html.frontend-auth-html,
html.frontend-auth-html[data-theme="dark"] {
  color-scheme: light !important;
}
html.frontend-auth-html .auth-card .form-control,
html.frontend-auth-html .auth-card .input-group-text,
html.frontend-auth-html .auth-card input[type="text"],
html.frontend-auth-html .auth-card input[type="password"],
html.frontend-auth-html .auth-card input[type="email"],
html.frontend-auth-html .auth-card .form-check-input,
html.frontend-auth-html[data-theme="dark"] .auth-card .form-control,
html.frontend-auth-html[data-theme="dark"] .auth-card .input-group-text,
html.frontend-auth-html[data-theme="dark"] .auth-card input[type="text"],
html.frontend-auth-html[data-theme="dark"] .auth-card input[type="password"],
html.frontend-auth-html[data-theme="dark"] .auth-card input[type="email"],
html.frontend-auth-html[data-theme="dark"] .auth-card .form-check-input {
  background: #fff !important;
  background-color: #fff !important;
  color: #12312e !important;
  border-color: #d5e0dc !important;
  color-scheme: light !important;
}
html.frontend-auth-html .auth-card .form-control::placeholder,
html.frontend-auth-html[data-theme="dark"] .auth-card .form-control::placeholder,
html.frontend-auth-html[data-theme="dark"] .auth-card input::placeholder {
  color: #8a9a96 !important;
}

/* LOGINFLASH2: readable ink on light login card */
html.frontend-auth-html[data-theme="dark"] .auth-card .form-check-label,
html.frontend-auth-html[data-theme="dark"] .auth-card label.form-check-label {
  color: #12312e !important;
}
html.frontend-auth-html[data-theme="dark"] .auth-card .form-control::placeholder,
html.frontend-auth-html[data-theme="dark"] .auth-card input::placeholder {
  color: #5b6b68 !important;
}
