@charset "utf-8";
body{background-image: url("../images/pc_home.jpg"); background-repeat: no-repeat; background-size: cover; height:100vh; width:100vw;height: 100dvh;padding: 30px; margin: 0; box-sizing: border-box; font-family: "Anybody", sans-serif; font-weight: 500; font-style: normal; color:#FFF; font-size:22px; line-height: 1.2;}
header{text-align:right}

footer{position: absolute;  bottom: 30px;  display: grid;  grid-template-columns: 1fr 1fr 1fr;  width: calc(100% - 60px);  grid-gap: 30px;}
#clock {display: flex;align-items: end;justify-content: start;}
#clock #date-time{margin:0;text-transform: uppercase;margin-bottom:-13px;}
#clock span{font-size:42px; display:block}
#logo{display: flex; align-items: center; justify-content: center}
#logo img {max-width: 140px;}
#privacy{display: flex;  align-items: end;  justify-content: end;}
.content{height: calc(100dvh - 230px); display: flex; flex-direction: column; text-align: center; align-items: center;  justify-content: center;}

h1,h2,h3{text-transform: uppercase; margin: 0; line-height: 1}
h1{font-size:70px;margin-bottom:0px;}
h2{font-size:38px;font-weight:500;margin-bottom:8px;}
.width500 {width:500px;}

#checking_step_1 h1 {font-size: 80px;margin-bottom:0;}
.subheading {font-size:30px;}
.button, input[type="submit"]{border:none; background-color:#ffffff; color:#192F3E; text-transform: uppercase; padding: 16px 10px;font-family: "Anybody", sans-serif; font-weight:700; font-size: 24px; cursor: pointer; transition: 0.3s all ease-out; text-decoration: none; display: inline-block;box-sizing: border-box;}
.button.active {background-color: rgba(255, 255, 255, 0.5);}
.scanner .camera{background-color:#000; width: 300px; margin: 0px auto;  border-radius: 15px; padding: 0; box-sizing: border-box; position: relative;}
.scanner .camera-inner{ background-color: transparent; position: absolute; top: 15px; left: 15px; bottom: 15px; right: 15px;}
.scanner .camera-inner:before{content:""; position:absolute; background-image: url("../images/camera-corners.png"); background-size: contain; width: 100%;  height: 100%;  left: 0;  opacity: 1;  z-index: 2; background-repeat: no-repeat;}
#camera, #qr-shaded-region, video{border-radius: 15px;}
video{transform: scaleX(-1);}
#cameras > div{margin-bottom:20px;}
#court_buttons .button {padding:16px 60px;}

.manual-checkin .content{align-items: initial;padding-bottom:40px;box-sizing: border-box;}
.manual-checkin h2{text-align: center}
.manual-checkin .location{text-align: left; font-size: 32px; margin-top: 0; background-image: url("../images/location.svg"); background-repeat: no-repeat; background-position: center left; padding-left: 30px;  background-size: 20px; margin-bottom: 0px;}
.manual-checkin .courtno{text-align: left; margin-bottom: 40px; font-size: 22px; margin-top: 0; padding-left: 30px; text-transform: uppercase;}
.manual-checkin form{width:500px; margin: 0px auto; text-align: left}
.manual-checkin form label{text-transform:uppercase; font-size:16px; margin-bottom: 5px;  display: block;}
.manual-checkin form input::-webkit-outer-spin-button, .manual-checkin form input::-webkit-inner-spin-button {-webkit-appearance: none;  margin: 0}
.manual-checkin form input[type=number] {-moz-appearance: textfield}
.manual-checkin form input[type=number], .manual-checkin form input[type=email] {
    background-color: rgb(255, 255, 255, 0.6);
    border: 3px solid #fff;padding: 15px;  width: 100%; box-sizing: border-box;
    transition: 0.3s all ease-out}
.manual-checkin form input:focus{outline: none; border:3px solid #3aa5de; opacity: 1}
.manual-checkin form .form-element{margin-bottom:15px}
.manual-checkin form p{text-align:center; font-size:22px; margin: 10px 0;}
.manual-checkin form input[type="submit"]{opacity:1; width:100%}


#language select{ -webkit-appearance: none; background-color: transparent;  border: none;  color: #fff; font-family: "Anybody", sans-serif; font-weight:500; font-size:22px;  padding-right: 30px; background-position: center right; background-size:25px; background-repeat: no-repeat;}
#language option{color:#000; font-size:22px}

#language select:has(option[value="EN"]:checked) {background-image: url("../images/flag-gb.svg")}
#language select:has(option[value="FR"]:checked) {background-image: url("../images/flag-fr.svg")}
#language select:has(option[value="DE"]:checked) {background-image: url("../images/flag-de.svg")}
#language select:has(option[value="ES"]:checked) {background-image: url("../images/flag-es.svg")}
#language select:has(option[value="IT"]:checked) {background-image: url("../images/flag-it.svg")}

#admin .button{background-color:transparent; padding:0; color: #fff;  text-decoration: none; text-transform: none;font-weight:500;}

#privacy .button{background-color:transparent; padding:0;color: #fff;  text-decoration: none; text-transform: none;font-weight:500;width:initial}
#privacyDialog{max-width: 80%; max-height: 80%; font-size: 14px;  font-weight: 500; position: relative; outline: none; padding: 40px;  box-sizing: border-box;}
#privacyDialog::backdrop,
#adminDialog::backdrop
{background-color: rgba(4, 28, 33, 0.6);}
#adminDialog {padding:90px 30px 50px 30px;box-sizing: border-box;position: relative;width: 500px;}
#adminPassword,#adminPassword:focus {outline:none;width: 100%;height:58px;margin: 20px 0px 0px 0px;padding:10px;box-sizing: border-box;border:1px solid #707070;}
#adminPassword::placeholder {color:#bbb}
#adminDialog h2 {
    text-align: center;
    font-size: 42px;
    font-weight: 700;
}

#adminDialog .admin-ok {display:block;background-color:#041C2C;color:#fff;font-size:22px;font-weight: 700;text-align: center;margin:12px 0px;padding: 16px 10px;}
#adminDialog .admin-cancel {border:0px;color:#041C2C;font-size:22px;font-weight: 700;text-align:center;padding: 14px;display: block;}

.dialog-close{position: absolute;top:10px;right:10px;padding: 0;  height: 40px;  width: 40px; display: flex;  align-items: center;  justify-content: center;}
#adminDialog .dialog-close {position: absolute;top:5px;right:5px}


h2.name{text-align: center; font-size: 50px; }
h2.fail{text-align: center; font-size: 36px; margin-bottom: 20px}
h3.confirmed{margin-top: 30px;  margin-bottom: 40px; font-size: 36px;}
h3.confirmed span{display:block; font-size: 22px;}
a.next-player, a.reenter{margin: 0px auto; min-width: 230px;}
.tickbox label{display: grid !important;  grid-template-columns: 30px auto;  margin-top: 15px;  grid-gap: 10px;  text-transform: none !important;  align-items: start;}
input[type="checkbox"]{appearance: none; -webkit-appearance: none;  display: flex;  align-content: center;  justify-content: center;}
input[type="checkbox"] {display: grid;  place-content: center;}
input[type="checkbox"]::before { content: "";  width: 20px; height:20px; background-color: #041C2C; border:2px solid #FFF; border-radius: 5px}
input[type="checkbox"]:checked::before {background-image:url("../images/tick.svg"); background-size: 16px;  background-repeat: no-repeat;  background-position: center;}
input[type="checkbox"]:focus{border:none !important}
input[type="submit"]:disabled{opacity: 0.8 !important;}

.courts.flex{display:flex; flex-wrap: wrap; gap: 15px; margin-top: 20px;}
.courts.flex .court{background-color: #FFF;  border-radius: 26px; padding: 10px; color: #707070; line-height: 0; min-width: 220px;  flex-grow: 1; box-sizing: border-box; }
.courts .court-no{color: #041C2C;}
.courts .court-time{margin-bottom:15px; margin-top:15px; color: #041C2C;}


.courts.table{background-color: #ffffff; padding:10px; margin-top: 10px;}
.courts.table table{border-collapse: collapse;}
.courts.table table th{color:#00405D; text-align: left}
.courts.table table td{ border-right: 1px dotted #00405d;  padding: 5px; height:50px; }
.courts.table table tr td:last-of-type{border-right: none;}
.courts.table table td .button{font-size:13px; display: block;}
.courts.table .times th{text-align:right; font-size: 14px; padding-right: 5px; position: relative; height:20px}
.courts.table .times th span{position: absolute;  right: -30px;  top: 0;  width: 60px;  text-align: center;}
.courts.table .times th:last-of-type span{right:0; text-align: right}
.courts.table .button{padding:12px;}
.courts.table .button span{display: block;}
.courts.table .button.start{border-top-left-radius: 0; border-bottom-left-radius: 0}
.courts.table .button.end{border-top-right-radius: 0; border-bottom-right-radius: 0}
.home{width: 25px;  height: 28px;  position: absolute;}

.courts.table .button {border:none; background-color:#192F3E; color:#ffffff; text-transform: uppercase; padding: 15px 10px;
    font-family: "Anybody", sans-serif; font-weight:700; font-size: 22px; cursor: pointer; transition: 0.3s all ease-out; text-decoration: none;
    display: inline-block;}

#checking_step_0 select {
    color:#00405D;
    font-size:24px;
    font-weight:700;
    padding:18px 40px;
    margin:20px;
    text-transform:uppercase;
    appearance: none;
    background-image: url('data:image/svg+xml;utf8,%3Csvg%20color%3D%22%2300405D%22%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M6%209L12%2015L18%209%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke%3D%22currentColor%22%2F%3E%3C%2Fsvg%3E');
    background-repeat: no-repeat;
    background-position: right 20px center;
    background-size: 28px;
    font-family: "Anybody", sans-serif;
}
#home_location {
    background-image: url("../images/location.svg");
    font-size: 22px;
    font-weight: 500;
    background-repeat: no-repeat;
    background-position: left center;
    padding-left: 28px;
}
#home_back {
    margin-right:30px;
    vertical-align: top;
}