/**
 * UAWPF Form Locker Pro - Frontend Styles
 *
 * @package FormLockerPro
 * @since 1.0.0
 */

/* Age Verification Form */
.uawpf-form-locker-age-wrapper {
	width: 100%;
	max-width: 100%;
	margin: 0;
	padding: 0;
}

.uawpf-form-locker-age-container {
	background: #f8f9fa;
	border: 1px solid #e0e0e0;
	border-radius: 8px;
	padding: 40px 30px;
	text-align: center;
	max-width: 500px;
	margin: 0 auto;
}

.uawpf-form-locker-age-icon {
	margin-bottom: 20px;
}

.uawpf-form-locker-age-icon svg {
	color: #6c757d;
}

.uawpf-form-locker-age-message {
	margin-bottom: 25px;
	color: #495057;
	font-size: 15px;
	line-height: 1.6;
}

.uawpf-form-locker-age-form {
	max-width: 400px;
	margin: 0 auto;
}

.uawpf-form-locker-age-selects {
	display: flex;
	gap: 10px;
	justify-content: center;
	margin-bottom: 15px;
}

.uawpf-form-locker-age-select {
	flex: 1;
	padding: 12px 8px;
	font-size: 15px;
	line-height: 1.5;
	color: #495057;
	background-color: #fff;
	border: 1px solid #ced4da;
	border-radius: 6px;
	cursor: pointer;
	transition: border-color 0.15s ease-in-out;
	text-align: center;
	appearance: none;
	-webkit-appearance: none;
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");
	background-position: right 8px center;
	background-repeat: no-repeat;
	background-size: 16px 16px;
	padding-right: 32px;
}

.uawpf-form-locker-age-select:focus {
	border-color: #e27730;
	outline: 0;
	box-shadow: 0 0 0 3px rgba(226, 119, 48, 0.15);
}

.uawpf-form-locker-age-error {
	margin-bottom: 15px;
	padding: 10px 15px;
	background: #fef0f0;
	border: 1px solid #f5c6cb;
	border-radius: 6px;
	color: #721c24;
	font-size: 14px;
	text-align: center;
}

.uawpf-form-locker-age-submit {
	margin-top: 15px;
}

.uawpf-form-locker-age-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding: 12px 24px;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.5;
	color: #fff;
	background-color: #e27730;
	border: none;
	border-radius: 6px;
	cursor: pointer;
	transition: background-color 0.15s ease-in-out, transform 0.1s ease;
}

.uawpf-form-locker-age-button:hover {
	background-color: #c9661f;
}

.uawpf-form-locker-age-button:active {
	transform: scale(0.98);
}

.uawpf-form-locker-age-button:disabled {
	opacity: 0.7;
	cursor: not-allowed;
}

/* Email Verification Form */
.uawpf-form-locker-email-wrapper {
	width: 100%;
	max-width: 100%;
	margin: 0;
	padding: 0;
}

.uawpf-form-locker-email-container {
	background: #f8f9fa;
	border: 1px solid #e0e0e0;
	border-radius: 8px;
	padding: 40px 30px;
	text-align: center;
	max-width: 450px;
	margin: 0 auto;
}

.uawpf-form-locker-email-icon {
	margin-bottom: 20px;
}

.uawpf-form-locker-email-icon svg {
	color: #6c757d;
}

.uawpf-form-locker-email-message {
	margin-bottom: 25px;
	color: #495057;
	font-size: 15px;
	line-height: 1.6;
}

.uawpf-form-locker-email-form {
	max-width: 300px;
	margin: 0 auto;
}

.uawpf-form-locker-email-field {
	margin-bottom: 15px;
}

.uawpf-form-locker-email-input {
	display: block;
	width: 100%;
	padding: 12px 16px;
	font-size: 15px;
	line-height: 1.5;
	color: #495057;
	background-color: #fff;
	border: 1px solid #ced4da;
	border-radius: 6px;
	transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
	text-align: center;
}

.uawpf-form-locker-email-input:focus {
	border-color: #e27730;
	outline: 0;
	box-shadow: 0 0 0 3px rgba(226, 119, 48, 0.15);
}

.uawpf-form-locker-email-error {
	margin-bottom: 15px;
	padding: 10px 15px;
	background: #fef0f0;
	border: 1px solid #f5c6cb;
	border-radius: 6px;
	color: #721c24;
	font-size: 14px;
	text-align: center;
}

.uawpf-form-locker-email-submit {
	margin-top: 15px;
}

.uawpf-form-locker-email-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding: 12px 24px;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.5;
	color: #fff;
	background-color: #e27730;
	border: none;
	border-radius: 6px;
	cursor: pointer;
	transition: background-color 0.15s ease-in-out, transform 0.1s ease;
}

.uawpf-form-locker-email-button:hover {
	background-color: #c9661f;
}

.uawpf-form-locker-email-button:disabled {
	opacity: 0.7;
	cursor: not-allowed;
}

.uawpf-form-locker-email-sent {
	background: #d4edda;
	border: 1px solid #c3e6cb;
	border-radius: 6px;
	padding: 20px;
	margin-top: 15px;
	color: #155724;
	text-align: center;
}

.uawpf-form-locker-email-sent-icon {
	margin-bottom: 10px;
}

.uawpf-form-locker-email-sent-icon svg {
	color: #28a745;
}

.uawpf-form-locker-email-sent p {
	margin: 0;
	font-size: 14px;
	line-height: 1.5;
}

/* Restriction Messages */
.uawpf-form-locker-restriction {
	background: #f8f9fa;
	border: 1px solid #e0e0e0;
	border-radius: 8px;
	padding: 40px 30px;
	text-align: center;
	max-width: 450px;
	margin: 0 auto;
}

.uawpf-form-locker-restriction-icon {
	margin-bottom: 20px;
}

.uawpf-form-locker-restriction-icon svg {
	color: #6c757d;
}

.uawpf-form-locker-restriction-message {
	color: #495057;
	font-size: 15px;
	line-height: 1.6;
}

/* Login Link */
.uawpf-form-locker-login-link {
	margin-top: 20px;
}

.uawpf-form-locker-login-link a {
	display: inline-block;
	padding: 10px 20px;
	background: #e27730;
	color: #fff;
	text-decoration: none;
	border-radius: 6px;
	font-weight: 500;
	transition: background-color 0.15s ease;
}

.uawpf-form-locker-login-link a:hover {
	background: #c9661f;
	color: #fff;
}

/* Schedule Icons */
.uawpf-form-locker-restriction-schedule .uawpf-form-locker-restriction-icon svg {
	color: #6c757d;
}

/* Limit Reached */
.uawpf-form-locker-restriction-limit .uawpf-form-locker-restriction-icon svg,
.uawpf-form-locker-restriction-user_limit .uawpf-form-locker-restriction-icon svg {
	color: #dc3545;
}

/* Locked Classes */
.uawpf-form-locker-locked.uawpf-form-locker-age-required .wpforms-form,
.uawpf-form-locker-locked.uawpf-form-locker-email-required .wpforms-form,
.uawpf-form-locker-locked.uawpf-form-locker-schedule-blocked .wpforms-form,
.uawpf-form-locker-locked.uawpf-form-locker-user-required .wpforms-form,
.uawpf-form-locker-locked.uawpf-form-locker-limit-reached .wpforms-form {
	display: none !important;
}

/* Animations */
.uawpf-form-locker-age-wrapper.uawpf-form-locker-success,
.uawpf-form-locker-email-wrapper.uawpf-form-locker-success {
	animation: uawpf-form-locker-fadeout 0.3s ease-out forwards;
}

/* Screen Reader Only */
.uawpf-form-locker-sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

/* Responsive */
@media screen and (max-width: 480px) {
	.uawpf-form-locker-age-container,
	.uawpf-form-locker-email-container,
	.uawpf-form-locker-restriction {
		padding: 30px 20px;
	}
	
	.uawpf-form-locker-age-selects {
		flex-direction: column;
	}
	
	.uawpf-form-locker-age-select {
		padding-right: 32px;
	}
}
