/* ========================================
   Login Page - Professional Design
   ======================================== */

.login-page-wrapper {
	/* min-height: calc(100vh - 200px); */
	/* padding: 40px 0; */
	/* background: linear-gradient(135deg, #f5f7fa 0%, #c3cfe2 100%); */
}

/* Login Form Wrapper */
.login-form-wrapper {
	max-width: 100%;
	position: relative;
	z-index: 1;
}

/* Feature Icons */
.feature-icon {
	transition: transform 0.3s ease;
}

.feature-icon:hover {
	transform: scale(1.1);
}

/* Form Styles */
.login-form-wrapper .form-control {
	border: 1px solid #e5eaee;
	transition: all 0.3s ease;
}

.login-form-wrapper .form-control:focus {
	border-color: #0066cc;
	box-shadow: 0 0 0 0.2rem rgba(0, 102, 204, 0.25);
}

.login-form-wrapper .form-control-lg {
	font-size: 1rem;
	padding: 0.5rem 0.75rem;
}

/* Horizontal Form Layout */
.login-form-wrapper .form-group.d-flex {
	margin-bottom: 1.5rem;
}

.login-form-wrapper .form-group.d-flex label {
	flex-shrink: 0;
}

@media (max-width: 767.98px) {
	.login-form-wrapper .form-group.d-flex {
		flex-direction: column;
		align-items: flex-start !important;
	}
	
	.login-form-wrapper .form-group.d-flex label {
		margin-bottom: 0.5rem;
		margin-right: 0 !important;
		min-width: auto !important;
	}
	
	.login-form-wrapper .form-group.d-flex .flex-grow-1 {
		width: 100%;
	}
}

/* Button Styles */
/* .login-form-wrapper .btn-primary {
	background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
	border: none;
	transition: all 0.3s ease;
	position: relative;
	overflow: hidden;
}

.login-form-wrapper .btn-primary:hover {
	transform: translateY(-2px);
	box-shadow: 0 8px 20px rgba(102, 126, 234, 0.4);
}

.login-form-wrapper .btn-primary:active {
	transform: translateY(0);
} */

/* Loading State */
.btn .indicator-progress {
	display: none;
}

.btn.active .indicator-label {
	display: none;
}

.btn.active .indicator-progress {
	display: inline-block;
}

/* Form Toggle Styles */
.login-signin,
.login-forgot {
	display: none;
	animation: fadeIn 0.3s ease;
}

.login-signin.active,
.login-forgot.active {
	display: block;
}

@keyframes fadeIn {
	from {
		opacity: 0;
		transform: translateY(10px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

/* Separator */
.separator {
	border-top: 1px solid #e5eaee;
}

.separator-content {
	display: flex;
	align-items: center;
	justify-content: center;
}

.separator-content::before,
.separator-content::after {
	content: '';
	flex: 1;
	border-top: 1px solid #e5eaee;
}

.separator-content::before {
	margin-right: 1rem;
}

.separator-content::after {
	margin-left: 1rem;
}

/* Responsive */
@media (max-width: 991.98px) {
	.login-page-wrapper {
		padding: 20px 0;
	}
	
	.login-form-wrapper {
		padding: 2rem !important;
	}
	
	.feature-list {
		margin-top: 2rem;
	}
}

/* Checkbox Styles */
.checkbox > input:checked ~ span {
	background-color: #0066cc;
	border-color: #0066cc;
}

.checkbox > input:checked ~ span::after {
	border-color: #ffffff;
}

/* Link Styles */
.login-form-wrapper a {
	transition: color 0.2s ease;
}

.login-form-wrapper a:hover {
	color: #0066cc !important;
	text-decoration: none;
}
