@import url('https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,300;1,400;1,500;1,600;1,700;1,800&display=swap');

@keyframes fadeIn {
	from {opacity:0;}
	to {opacity:1;}
}

button {
    background-color: inherit;
    color: inherit;
    border: inherit;
    font-size: inherit;
    font-weight: inherit;
}

a {
    text-decoration: none;
	color: #76d6ff;
}

body {
	font-family: 'Open Sans', sans-serif;
	
	margin: 0;
    display: flex;
	flex-direction: column;
    align-items: center;
    justify-content: flex-end;
    height: 100vh;
	overflow: hidden;
	
	background-image: url(../img/background.jpg);
    background-size: cover;
    background-position: top left;
	background-repeat: no-repeat;
	
	color: #00000071;
    font-size: 15px;
    font-weight: 700;
}

body.admin {
	height: inherit;
	overflow-y: visible!important;
}


.btn {
	padding: 1rem;
	border-radius: 5px;
	width: 100%;
    background-color: #fff;
    border: 3px solid #76d6ff;
    color: #76d6ff;
	transition: all 0.2s cubic-bezier(0.25, 1, 0.5, 1);
}

.btn:hover {
	cursor: pointer;
    background-color: #76d6ff;
    color: #fff;
}

.form {
	position: relative;
	width: 100%;
    max-width: 450px;
    background-color: #fff;
    box-shadow: 15px 15px 30px 5px #00000028;
    padding: 2rem;
    border-radius: 5px 5px 0 0;
}

.form::after {
	opacity: 0;
	transition: all 0.2s cubic-bezier(0.25, 1, 0.5, 1);
}

.form.loading::after {
	content:"Envoi en cours...";
	color: #fff;
	font-size: 22px;
	z-index: 10;
	position: absolute;
	top:0;
	left:0;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: #00000070;
	border-radius: 5px 5px 0 0;
	
	opacity: 1;
}

.form-field {
    display: flex;
    flex-direction: column;
    margin-bottom: 1rem;
}

.form-field:last-child {
    margin-bottom: 0;
}

.form-field-date {
    display: flex;
    flex-direction: column;
    margin-bottom: 2rem;
}

.form-field label {
    margin-bottom: 0.75rem;
}

input, option, select {
    padding: 0.75rem;
    border-radius:5px;
    border: 3px solid #00000025;

    font-size: inherit;
    font-family: inherit;
    font-weight: inherit;
    color: #76d6ff;
}

input[type="submit"] {
	cursor: pointer;
}

input:focus {
    outline: none;
}

.form-field-conditions {
    flex-direction: row;
	align-items: center;
	margin: 2rem 0!important;
}

.form-field-conditions label {
    margin: 0;
}

.form-field-conditions input {
    margin-right: 10px;
}

.bottomText {
	position: relative;
	z-index: 10;
	display: flex;
	align-items:center;
	justify-content: center;
	height: 20vh;
    width: 100%;
	padding: 0 2rem;
    background-color: #009fe3;
	box-sizing: border-box;
	
	box-shadow: 0 -10px 20px 5px #00000010;
}

.bottomText-p {
	text-align: center;
    color: #fff;
	margin: 0;
	font-size: 60px;
	font-weight: 800;
}

.imgContainer {
    display: none;
}

.succes {
	position: fixed;
	z-index: 1000;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
	
	opacity:0;
	pointer-events: none;
	
	display: flex;
	justify-content:center;
	align-items: center;
    background-color: #00000070;
}

body.showSucces .succes {
	animation: fadeIn 0.2s;
	pointer-events: inherit;
}

.succes-card {
	background-color: #fff;
	border-radius: 5px;
	box-shadow: 0 -10px 20px 5px #00000010;
	padding: 2rem;
	max-width: 400px;
}

.succes-card p {
	text-align: center;
	margin: 0;
}

.succes-card span {
	color: rgb(157, 207, 63);
	font-weight: 800;
}

.succes-card .btn {
	margin-top: 2rem;
}

.warning.fadeIn {
	animation: fadeIn 0.2s;
}

.h1-white {
	color: #fff;
	font-weight: 800;
	text-align:center;
}

.tableContainer {
	max-height: 90vh;
	overflow-y: scroll;
}

table {
	position:relative;
	display:table;
	margin: auto;
    background-color: #fff;
    box-shadow: 15px 15px 30px 5px #00000028;
    padding: 2rem;
    border-radius: 5px;
}

th, td {
	padding: 10px;
}

tr {
	border-bottom: 1px solid #00000010!important;
}

@media (max-width: 1500px) {
    .form {
        margin-left: 200px;
    }
}

@media (max-width: 1000px) {
	body {
		display:block;
		overflow: visible!important;
	}
    .form {
		max-width: inherit;
        margin-left: 0;
		box-sizing: border-box;
    }
	
	.imgContainer {
        display: block;
		height: 250px;
    }
	
	.imgContainer img {
        width: 100%;
		height: 100%;
		object-fit: cover;
		object-position: top left;
    }
	
	.bottomText {
		height: 100px!important;
	}
	
	.bottomText-p {
		font-size: 30px!important;
	}
}

@media (max-width: 1000px) {
	tr {
		display: block;
	}
}