/**
 * Evolution 2.0 - Register Form Responsive Styles
 * Modern Space Theme - Registro
 */

/* ========================================
   FORM ROWS - Responsive Design
   ======================================== */
.rowForm {
	display: block;
	text-align: left;
	margin-bottom: 1.5rem;
	padding: 0;
}

.rowForm:first-child {
	padding-top: 0;
}

/* Labels - Modern stacked layout */
.rowForm label {
	display: block;
	float: none;
	width: 100%;
	margin: 0 0 0.5rem 0;
	text-align: left;
	font-weight: 500;
	font-size: 0.875rem;
	color: #A8B2D1;
}

/* Input Fields - Full width responsive */
.rowForm select {
	width: 100% !important;
	box-sizing: border-box;
}

.rowForm input[type="text"],
.rowForm input[type="password"],
.rowForm input[type="email"] {
	width: 100% !important;
	box-sizing: border-box;
	max-width: 100%;
}

/* Checkbox special styling */
.rowForm #rules {
	margin: 0 0.5rem 0 0;
	padding: 0;
	width: auto !important;
	display: inline-block;
	vertical-align: middle;
}

/* Text elements */
.rowForm span.text {
	display: block;
	margin: 0.5rem 0;
	text-align: left;
	color: #E8ECFF;
	font-weight: 500;
}

/* Facebook connect button */
.rowForm .fbname {
	background: #1877F2;
	padding: 0.5rem 1rem 0.5rem 2.5rem;
	border-radius: 0.375rem;
	display: inline-block;
	color: #FFF;
	font-weight: 600;
	position: relative;
	overflow: visible;
	height: auto;
	margin: 0.5rem 0 !important;
}

.rowForm .fbname::before {
	content: '\f09a';
	font-family: 'Font Awesome 5 Brands';
	position: absolute;
	left: 0.75rem;
	top: 50%;
	transform: translateY(-50%);
	font-size: 1.125rem;
}

/* Input descriptions */
.rowForm .inputDesc {
	display: block;
	font-size: 0.75rem;
	padding: 0.25rem 0 0 0;
	margin-top: 0.25rem;
	overflow: visible;
	color: #6B7599;
	line-height: 1.4;
}

.rowForm label + .inputDesc {
	padding-top: 0.25rem;
}

/* ========================================
   RECAPTCHA
   ======================================== */
#captchaRow {
	margin-bottom: 1.5rem;
}

#captchaRow label {
	margin-bottom: 0.5rem;
}

.g-recaptcha {
	margin-top: 0.5rem;
}

/* Legacy recaptcha (if still used) */
#recaptcha_image > img {
	background: #FFF;
	color: #FFF;
	border: 2px solid #9EB4CB;
	border-radius: 0.375rem;
}

#recaptcha_image {
	float: left;
	padding: 0.5rem 0;
	margin-bottom: 0.5rem;
}

#recaptcha_input_wrap {
	clear: both;
	width: 100%;
	max-width: 100%;
}

#recaptcha_response_field {
	float: none;
	display: block;
	margin: 0;
	width: 100%;
	box-sizing: border-box;
}

.captchaButtons {
	font-size: 0.6875rem;
	margin-top: 0.5rem;
}

/* ========================================
   RESPONSIVE BREAKPOINTS
   ======================================== */

/* Tablets y pantallas medianas */
@media screen and (max-width: 768px) {
	.rowForm {
		margin-bottom: 1.25rem;
	}
	
	.rowForm label {
		font-size: 0.8125rem;
	}
	
	.rowForm input[type="text"],
	.rowForm input[type="password"],
	.rowForm input[type="email"],
	.rowForm select {
		width: 100% !important;
		padding: 0.75rem;
		font-size: 0.9375rem;
	}
	
	.rowForm .inputDesc {
		font-size: 0.6875rem;
	}
}

/* Móviles pequeños */
@media screen and (max-width: 480px) {
	.rowForm {
		margin-bottom: 1rem;
	}
	
	.rowForm label {
		font-size: 0.8125rem;
		margin-bottom: 0.375rem;
	}
	
	.rowForm input[type="text"],
	.rowForm input[type="password"],
	.rowForm input[type="email"],
	.rowForm select {
		width: 100% !important;
		padding: 0.75rem;
		font-size: 0.9375rem;
		margin-bottom: 0;
	}
	
	.rowForm .inputDesc {
		font-size: 0.6875rem;
		margin-top: 0.25rem;
	}
	
	#captchaRow {
		margin-bottom: 1rem;
	}
	
	.g-recaptcha {
		transform: scale(0.9);
		transform-origin: 0 0;
	}
}