/* Fallback sizing & clickability for Google Identity button (defensive for Firefox) */
#g_id_signin, .g_id_signin {
	min-width: 240px;
	min-height: 40px;
	display: inline-block;
}
#gsi-container { text-align: center; }
/* Shared auth form layout, recaptcha container, and responsive buttons */
.recaptcha-centered { width:100%; display:flex; justify-content:center; overflow:hidden; margin:0 auto; box-sizing:border-box; }
.recaptcha-centered .recaptcha-target { transform-origin:center top; }
.card .g-recaptcha { width:100%!important; min-width:0!important; box-sizing:border-box; }
.no-transform:hover { transform:none!important; }
.auth-inner { width:100%; max-width:440px; margin:0 auto; padding:0 12px; }
@media (max-width:480px){ .auth-inner { max-width:100%; padding:0 8px; } }
.main-actions { display:grid; grid-template-columns:1fr; }
@media (min-width:576px){ .main-actions { grid-template-columns:repeat(2,1fr); } }
.main-actions > .btn { margin:0!important; display:flex; align-items:center; justify-content:center; }
.btn-equal { height:52px; padding-block:0; padding-inline:1rem; }
.password-strength { height:4px; margin-top:5px; transition:width .3s ease; }
.strength-0 { width:20%; background:#dc3545; }
.strength-1 { width:40%; background:#ffc107; }
.strength-2 { width:60%; background:#ffc107; }
.strength-3 { width:80%; background:#28a745; }
.strength-4 { width:100%; background:#28a745; }
