.form-group{
	display:flex;
	flex-direction:column;
	margin-bottom:20px;
}

.form-group label{
	font-weight:600;
	color:#444;
	margin-bottom:8px;
}

.form-group input,
.form-group select,
.form-group textarea{
	width:100%;
	padding:12px 15px;
	border:1px solid #ddd;
	border-radius:12px;
	font-size:15px;
	outline:none;
	transition:.3s;
	background:white;
}

.form-group textarea{
	resize:vertical;
	min-height:120px;
}

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus{
	border-color:var(--green-700);
	box-shadow:0 0 0 3px rgba(47,107,70,.15);
}

.input-error{
	border-color:#d32f2f!important;
	background:#fff5f5!important;
}

.field-error{
	display:block;
	margin-top:6px;
	color:#d32f2f;
	font-size:14px;
	font-weight:500;
}


.form-actions{
	display:flex;
	gap:15px;
	margin-top:30px;
	align-items:center;
}

.form-actions button,
.form-actions .cancel-btn{
	flex:1;
	height:45px;
	display:flex;
	justify-content:center;
	align-items:center;
	box-sizing:border-box;
	margin:0;
	padding:0 20px;
	border-radius:12px;
	font-size:15px;
	font-weight:600;
	cursor:pointer;
	transition:.25s;
	text-decoration:none;
	line-height:normal;
	font-family:inherit;
}

.form-actions button{
	border:none;
	background:var(--green-700);
	color:white;
	appearance:none;
}

.form-actions button:hover{
	background:var(--green-900);
	transform:translateY(-2px);
}

.cancel-btn{
	background:#eee;
	color:#444;
	border:0;
}

.cancel-btn:hover{
	background:#ddd;
	transform:translateY(-2px);
}


.success-box{
	padding:15px;
	margin-bottom:20px;
	border-radius:12px;
	background:var(--green-100);
	color:var(--green-800);
	font-weight:600;
}


.error-box{
	padding:15px;
	margin-bottom:20px;
	border-radius:12px;
	background:#ffebee;
	color:#c62828;
	font-weight:600;
}


@media(max-width:600px){

	.form-actions{
		flex-direction:column;
	}

	.form-actions button,
	.form-actions .cancel-btn{
		width:100%;
	}

}