/* Forms share the existing palette and keep CAPTCHA inside the available width. */
.auth-hint { display:block; font-size:11px; color:var(--rw-muted); line-height:1.6; margin-top:7px; }
.auth-error { color:#eea3af; font-size:12px; line-height:1.6; margin:6px 0; }
.auth-error:empty { display:none; }
.auth-captcha { margin-block:20px 12px; min-width:0; }
.auth-captcha > label { display:block; margin-bottom:8px; color:#d6cbd0; font-size:12px; }
.auth-captcha-image { display:block; width:280px; max-width:100%; height:auto; border:1px solid var(--rw-border); border-radius:6px; margin-bottom:10px; }
.auth-captcha input[name=captcha] { width:100%; text-transform:uppercase; letter-spacing:3px; }
.rw-login-form .auth-captcha { margin-top:18px; }
.rw-login-form .auth-pin { width:100%; }
.auth-pin { direction:ltr; text-align:start; }
.auth-captcha .rw-captcha-wrap { margin-top:0; }
.auth-captcha .rw-captcha-wrap + label { margin-top:18px; }
.auth-captcha .g-recaptcha { transform-origin:top left; }
[dir=rtl] .auth-captcha .g-recaptcha { transform-origin:top right; }

/* The official Google checkbox stays intact inside a Mosha card. Only its empty
   1–2px outer canvas edge is clipped; branding, links and controls stay visible. */
.auth-google-card { max-width:334px; padding:13px 14px 14px; border:1px solid #d7b37d30; border-radius:9px; background:linear-gradient(135deg,#30212c80,#151119); box-shadow:0 5px 18px #0002,inset 0 1px 0 #f0d3a509; }
.auth-google-heading { display:flex; align-items:center; gap:8px; margin-bottom:12px; color:var(--rw-pale); }
.auth-google-heading svg { flex-shrink:0; fill:none; stroke:var(--rw-gold); stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }
.auth-google-heading > span { flex:1; min-width:0; overflow-wrap:anywhere; font-size:11px; line-height:1.5; }
.auth-google-heading small { font-size:9px; color:var(--rw-muted); white-space:nowrap; }
.auth-google-viewport { width:304px; max-width:100%; height:78px; margin-inline:auto; background:#222; border-radius:4px; }
.auth-google-viewport .g-recaptcha { width:304px; max-width:none; height:78px; line-height:0; color-scheme:light; clip-path:inset(1px 2px 2px 1px round 3px); }
.auth-google-viewport .g-recaptcha iframe { display:block; border:0; box-shadow:none; color-scheme:light; }
.auth-google-card:focus-within { outline:2px solid var(--rw-gold); outline-offset:3px; }
.auth-google-card[data-state=verified] { border-color:#86b89b70; }
.auth-google-card[data-state=required],.auth-google-card[data-state=error] { border-color:#eea3af70; }

/* Small native checkbox; override the full-width login input styles. */
.auth-remember, .rw-login-form .auth-remember { display:flex; align-items:center; gap:9px; margin:16px 0 18px; color:var(--rw-text); font-size:12px; line-height:1.6; cursor:pointer; }
.auth-remember input[type=checkbox], .rw-login-form .auth-remember input[type=checkbox] { flex:0 0 18px; width:18px; height:18px; min-width:18px; padding:0; margin:0; accent-color:var(--rw-gold); cursor:pointer; }
.auth-remember input:focus-visible { outline:2px solid var(--rw-gold); outline-offset:3px; }
.auth-remember span { min-width:0; overflow-wrap:anywhere; }
.rw-email-page { overflow-wrap: anywhere; }
.rw-email-form { display: grid; gap: 12px; margin: 24px 0; }
.rw-email-form label { color: #e9dfd6; font-size: 13px; margin-top: 8px; }
.rw-email-form .form-control { width: 100%; min-width: 0; min-height: 46px; border: 1px solid #342d37; background: #151219; color: #f2e9df; border-radius: 7px; padding: 12px; }
.rw-email-form select.form-control { color-scheme: dark; height: auto; }
.rw-email-form .user-input-area { margin-top: 10px; }
.rw-email-form .auth-captcha { margin-top: 12px; }
.rw-email-account { border: 1px solid #473b2e; border-radius: 8px; padding: 14px; color: #e5c894; }
.rw-email-links { margin-top: 24px; line-height: 1.8; }
