/* CSS moderno adaptado para las clases buzon existentes */

/* Header del formulario */
.buzon-head {
	background: linear-gradient(#494949, #8b8b8b);
	color: white;
	text-align: center;
	padding: 15px 20px;
	font-size: 30px;
	font-weight: normal;
	border-radius: 8px 8px 0 0;
}

	/* Contenedor principal */
	.container {
		max-width: 1150px;
		width: 100%;
		margin: 20px auto 0 auto;
		padding: 0 15px;
	}

	.row {
		display: flex;
		flex-wrap: wrap;
		margin: 0 -15px;
	}

	.col.s12.m6 {
		flex: 0 0 100%;
		max-width: 100%;
		padding: 0 15px;
	}
	/* Card principal del formulario */
	.buzon-card {
		 background: #e0e0e0; 
		border: 1px solid #dadce0;
		border-radius: 0 0 8px 8px;
		padding: 20px;
		box-shadow: 0 2px 2px 0 rgb(0 0 0 / 14%), 0 3px 1px -2px rgb(0 0 0 / 12%), 0 1px 5px 0 rgb(0 0 0 / 20%);
		margin-bottom: 30px;
		text-align: left;
		margin-left: auto;
		margin-right: auto;
	}
	/* Campos de entrada mejorados */
	.input-field {
		margin-bottom: 20px;
		position: relative;
	}

		.input-field input,
		.input-field textarea,
		.input-field .materialize-textarea {
			width: 100% !important;
			padding: 12px 16px !important;
			border: 1px solid #cccccc !important;
			border-radius: 4px !important;
			font-size: 14px !important;
			transition: all 0.3s ease !important;
			background: white !important;
			margin: 0 !important;
			box-sizing: border-box !important;
			display: block !important;
		}

			.input-field input:focus,
			.input-field textarea:focus,
			.input-field .materialize-textarea:focus {
				outline: none !important;
				border-color: #999999 !important;
				box-shadow: 0 0 0 2px rgba(153, 153, 153, 0.2) !important;
			}

		.input-field label {
			display: block !important;
			margin-bottom: 8px !important;
			color: #333333 !important;
			font-weight: 600 !important;
			font-size: 14px !important;
			position: static !important;
			transform: none !important;
			left: auto;
			top: auto;
		}

	/* Textarea espec�fico */
	.materialize-textarea {
		min-height: 120px !important;
		resize: vertical !important;
		font-family: inherit !important;
	}
	/* Checkbox mejorado */
	.buzon-card .politica {
		margin: 25px 0 !important;
		text-align: center !important; /* Cambiar de left a center */
	}

		.buzon-card .politica label {
			display: flex !important;
			align-items: flex-start !important;
			gap: 12px !important;
			cursor: pointer !important;
			justify-content: center !important; /* A�adir para centrar el contenido del flex */
		}

		.buzon-card .politica input[type="checkbox"] {
			width: 18px !important;
			height: 18px !important;
			margin: 0 !important;
			cursor: pointer !important;
			accent-color: #666666 !important;
			flex-shrink: 0 !important;
			position: static !important;
			opacity: 1 !important;
			pointer-events: auto !important;
		}

		.buzon-card .politica span {
			font-size: 14px !important;
			color: #333333 !important;
			font-weight: 600 !important;
			line-height: 1.4 !important;
			padding-left: 0 !important;
		}
	/* Contenedor de botones y reCAPTCHA */
	.buzon-card > .btn_enviar {
		display: flex !important;
		justify-content: center !important;
		align-items: center !important;
		flex-direction: column !important;
		gap: 20px !important;
		margin-top: 30px;
	}
	/* Bot�n enviar mejorado */
	.btn {
		background: #ff6600 !important;
		color: white !important;
		border: none !important;
		padding: 15px 40px !important;
		height: 100% !important;
		border-radius: 4px !important;
		font-size: 16px !important;
		font-weight: normal !important;
		cursor: pointer !important;
		transition: all 0.3s ease !important;
		text-decoration: none !important;
		display: inline-block !important;
		box-shadow: 0 2px 4px rgba(255, 102, 0, 0.3) !important;
		text-transform: none !important;
		line-height: normal !important;
	}

		.btn:hover,
		.btn:focus {
			background: #e55a00 !important;
			transform: translateY(-1px);
			box-shadow: 0 4px 8px rgba(255, 102, 0, 0.4);
		}

		.btn:active {
			transform: translateY(0);
		}

		.btn.waves-effect {
			position: relative;
			overflow: hidden;
		}
	/* reCAPTCHA */
	.g-recaptcha {
		margin: 10px 0;
		display: inline-block;
	}
	/* Estados de �xito */
	.buzon-success {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 15px;
		margin-bottom: 20px;
		padding: 20px;
		border-radius: 8px;
		background: rgba(76, 175, 80, 0.1);
		border: 1px solid #4CAF50;
		color: #4CAF50;
		font-size: 18px;
	}

		.buzon-success i {
			font-size: 30px;
			color: #4CAF50;
		}

		.buzon-success div {
			color: #4CAF50;
			font-weight: 500;
		}
		/* Estados de error */
		.buzon-success.orange-text {
			background: rgba(244, 67, 54, 0.1);
			border: 1px solid #ff6600;
			color: #ff6600;
		}

			.buzon-success.orange-text i {
				color: #ff6600;
			}

			.buzon-success.orange-text div {
				color: #ff6600;
			}
	/* T�tulos en las cards */
	.buzon-card h5 {
		color: #333333;
		font-size: 16px;
		line-height: 1.6;
		margin: 15px 0;
		text-align: center;
	}
	/* Botones grandes */
	.btn-large {
		background: #666666 !important;
		padding: 12px 30px !important;
		font-size: 14px !important;
		border-radius: 4px;
	}

		.btn-large:hover,
		.btn-large:focus {
			background: #555555 !important;
		}
	/* Textos de error */
	.orange-text {
		color: #ff6600 !important;
		font-weight: 600;
		font-size: 16px;
		margin-top: 5px;
	}

	.helper-text {
		font-size: 12px;
		color: #666666;
	}
	/* Bot�n oculto ASP.NET */
	#btn_submit {
		display: none !important;
	}
	/* Responsive */
	@media (max-width: 768px) {
		.buzon-card {
			padding: 20px;
			/* margin: 10px auto 30px auto; */
		}

		.input-field input,
		.input-field textarea,
		.input-field .materialize-textarea {
			padding: 10px 12px;
		}

		.btn {
			padding: 12px 30px !important;
			font-size: 14px !important;
		}

		.buzon-head {
			font-size: 14px;
			padding: 12px 15px;
		}

		.container {
			padding: 0 10px;
		}
	}
	/* Override espec�ficos para Materialize */
	.input-field input:focus:not([readonly]) + label,
	.input-field textarea:focus:not([readonly]) + label,
	.input-field .materialize-textarea:focus:not([readonly]) + label {
		color: #333333 !important;
	}

	.input-field input:focus,
	.input-field textarea:focus,
	.input-field .materialize-textarea:focus {
		border-bottom: 1px solid #cccccc !important;
		box-shadow: 0 0 0 2px rgba(153, 153, 153, 0.2) !important;
	}
	/* Material Icons */
	.material-icons {
		font-family: 'Material Icons';
		font-weight: normal;
		font-style: normal;
		font-size: 24px;
		line-height: 1;
		letter-spacing: normal;
		text-transform: none;
		display: inline-block;
		white-space: nowrap;
		word-wrap: normal;
		direction: ltr;
	}

	.politica > label > span > a {
		color: #ff6600;
		text-decoration: none;
	}

	.required {
		color: #ff6600;
	}
