.auth-captcha { display: grid; gap: 8px; }
.auth-captcha-row { display: grid; grid-template-columns: minmax(0,1fr) 170px; gap: 10px; align-items: stretch; }
.auth-captcha-row input { min-width: 0; letter-spacing: .12em; }
#auth-captcha-refresh { display: flex; align-items: center; justify-content: center; gap: 7px; padding: 3px 6px; border: 1px solid #cddbd5; border-radius: 10px; color: #087f73; background: #f7faf9; }
#auth-captcha-refresh:hover { border-color: #087f73; }
#auth-captcha-refresh:focus-visible { outline: 2px solid #087f73; outline-offset: 2px; }
#auth-captcha-refresh img { flex: none; width: 112px; height: 44px; border-radius: 5px; }
#auth-captcha-refresh span { font-size: 12px; white-space: nowrap; }
#auth-captcha-refresh:disabled { cursor: wait; opacity: .7; }
#auth-captcha-status { margin: 0; color: #687889; font-size: 12px; line-height: 1.5; }
#auth-captcha-status:empty { display: none; }
@media(max-width:420px){.auth-captcha-row{grid-template-columns:minmax(0,1fr) 160px;gap:8px}#auth-captcha-refresh{gap:3px;padding:2px 4px}#auth-captcha-refresh img{width:106px}}
