
*{
   box-sizing: border-box;
   font-family: 'Open Sans';
   color: #333;
}

a{
   text-decoration: none !important;
   cursor: pointer !important;
}

textarea:focus, input:focus, select:focus,
textarea:active, input:active, select:active{
   outline: none !important;
}

/* Remove input type number arrows Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Remove input type number Firefox */
input[type=number] {
  -moz-appearance: textfield;
}


body{
   margin: 0;
   padding: 0;
   border: 0;
   background: #f7f7f7;
   -webkit-text-size-adjust: none;
   -webkit-tap-highlight-color: transparent;
   user-select: none;
   -webkit-user-select: none;
}

.country-select{
   width: 100%;
   margin-bottom: 20px;
}

#country-name{
   -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
     -khtml-user-select: none; /* Konqueror HTML */
       -moz-user-select: none; /* Old versions of Firefox */
        -ms-user-select: none; /* Internet Explorer/Edge */
            user-select: none;
}

/* <LOGIN SCREEN> */

.login-body{
   overflow: hidden;
   position: fixed;
   width: 100%;
   height: 100%;
}

.container-login{
   margin: 1% auto;
   height: auto;
   width: 100%;
   max-width: 420px;
   background-color: #fff;
   border-radius: 8px;
   margin-bottom: 2em;
   padding: 1.5em;
   box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
}

.pupillam-logo{
   display: block;
   margin:  0 auto;
   width: 100%;
   max-width: 280px;
   padding: 30px 0px;
}

.login-label{
   display: block;
   width: 100%;
   font-size:12px;
}
.login-field{
   display: block;
   width: 100%;
   font-size:14px;
   line-height: 20px;
   padding: 10px;
   border-radius: 4px;
   border: 1px #d6d6d6 solid;
   margin-bottom: 20px;
}

.login-btn{
   width: 100%;
   border-radius: 4px;
   display: block;
   text-decoration: none;
   background: #d62528;
   font-size: 14px;
   font-weight: 400;
   color: #fff;
   text-align: center;
   padding: 1em 0.75em;
   margin-bottom: 20px;
   box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
   border: none;
   cursor: pointer;
}

.login-btn i{
   color: #fff;
}

/* </LOGIN SCREEN> */

/* <HEADER> */
.container-header{
   margin: 0 auto;
   height: auto;
   width: 100%;
   max-width: 1140px;
   background-color: #fff;
   border-radius: 8px;
   border-top-left-radius: 0px;
   border-top-right-radius: 0px;
   margin-bottom: 10px;
   padding: 0em 15px;
   box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
}

.header-left{
   display: table-cell;
   width: 50%;
}
.header-right{
   display: table-cell;
   width: 50%;
}

.pupillam-logo-small{
   display: block;
   width: 100%;
   max-width: 120px;
   padding: 15px 0px;
}

.user-profile{
   width: auto;
   border-radius: 4px;
   font-size: 14px;
   font-weight: 400;
   color: #333;
   padding: 1.2em 1em;
   border: none;
}

.user-profile i{
   color: #333 !important;
   font-size: 20px;
}

.logout-btn{
   width: auto;
   border-radius: 4px;
   text-decoration: none;
   font-size: 14px;
   font-weight: 400;
   color: #fff;
   background-color: #d62528;
   text-align: center;
   padding: 0.7em;
   box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
   cursor: pointer;
   margin-left: 10px;
}

.logout-btn i{
   color: #fff !important;
   font-size: 14px;
}

/* </HEADER> */

/* <MENU> */

.container-menu{
   margin: 0 auto;
   height: auto;
   width: 100%;
   max-width: 1140px;
   margin-bottom: 10px;
   padding: 0px;
}

.pupillam-menu{
   list-style: none;
   display: table;
   table-layout: fixed;
   width: 100%;
   margin: 0;
   padding: 0;
}

.pupillam-menu .link{
   display: table-cell;
   padding: 10px;
}

.pupillam-menu .link a{
   display: block;
   border-radius: 4px;
   font-size: 14px;
   font-weight: 400;
   color: #333;
   background-color: #fff;
   box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
   padding: 10px;
}

.pupillam-menu .link i{
   font-size: 18px;
   color:#d62528;
   display: inline-block;
   margin-right: 10px;
}

.pupillam-menu .link a > h1{
   font-size: 12px;
   font-weight: 600;
   display: inline-block;
   margin: 0;
}

.menu-selected,
.menu-selected i,
.menu-selected h1{
   background-color: #d62528 !important;
   color: #fff !important;
}

/* </MENU> */

/* <PAGES> */

.container{
   margin: 0 auto;
   height: auto;
   width: 100%;
   max-width: 1140px;
   background-color: #fff;
   border-radius: 8px;
   margin-bottom: 10px;
   padding: 1.5em;
   box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
}

.page-heading{
   display: table;
   width: 100%;
}

.page-heading-block{
   display: table-cell;
}

.page-heading i{
   color: #d62528;
   font-size: 28px;
   display: inline-block;
   margin-right: 5px;
}

.page-heading h1{
   color: #333;
   font-weight: 600;
   font-size: 16px;
   display: inline-block;
}

.search-form{
   display: inline-block;
}

.search-btn-small{
   width: auto;
   border-radius: 4px;
   display: inline-block;
   text-decoration: none;
   background: #d62528;
   font-size: 14px;
   font-weight: 400;
   color: #fff;
   text-align: center;
   padding: 1em;
   margin-bottom: 20px;
   box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
   border: none;
   cursor: pointer;
}

.search-btn-small i{
   color: #fff !important;
   font-size: 14px !important;
}

.export-btn-small{
   width: auto;
   border-radius: 4px;
   display: inline-block;
   text-decoration: none;
   background: #d62528;
   font-size: 14px;
   font-weight: 400;
   color: #fff;
   text-align: center;
   padding: 1em;
   margin-bottom: 20px;
   margin-right: 0px;
   box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
   border: none;
   cursor: pointer;
}

.export-btn-small i{
   color: #fff !important;
   font-size: 14px !important;
}

select.login-field{
   height: 40px;
}

.search-field{
   display: inline-block;
   width: 150px;
   font-size:14px;
   line-height: 26px;
   padding: 10px;
   border-radius: 4px;
   border: 1px #d6d6d6 solid;
}

.search-location{
   display: inline-block;
   width: 150px;
   height: 48px;
   font-size:14px;
   line-height: 26px;
   padding: 12px 4px 13px 4px;
   border-radius: 4px;
   border: 1px #d6d6d6 solid;
}

.search-name-field{
   display: block;
   width: 100%;
   font-size:14px;
   line-height: 26px;
   padding: 10px;
   border-radius: 4px;
   border: 1px #d6d6d6 solid;
}

.stat{
   font-size: 28px;
   width: 100%;
   text-align: right;
   padding: 20px 20px 0px 0px;
   font-weight: normal;
}

span.ct-label{
   font-size: 10px;
}


/* </PAGES> */

/* <BUTTONS> */

.primary-btn{
   width: auto;
   border-radius: 4px;
   display: inline-block;
   text-decoration: none;
   background: #d62528;
   font-size: 14px;
   font-weight: 400;
   color: #fff;
   text-align: center;
   padding: 1em;
   margin-bottom: 20px;
   box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
   border: none;
   cursor: pointer;
}

.secondary-btn{
   width: auto;
   border-radius: 4px;
   display: inline-block;
   text-decoration: none;
   background: #a4a0a0;
   font-size: 14px;
   font-weight: 400;
   color: #fff;
   text-align: center;
   padding: 1em;
   margin-bottom: 20px;
   box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
   border: none;
   cursor: pointer;
}

.trash-btn{
   width: auto;
   border-radius: 4px;
   display: inline-block;
   text-decoration: none;
   background: #544343;
   font-size: 14px;
   font-weight: 400;
   color: #fff;
   text-align: center;
   padding: 1em;
   margin-bottom: 20px;
   box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
   border: none;
   cursor: pointer;
}

.print-btn{
   width: 100%;
   border-radius: 4px;
   display: block;
   text-decoration: none;
   background: #d62528;
   font-size: 12px;
   font-weight: 400;
   color: #fff;
   text-align: center;
   padding: 1em;
   margin-bottom: 10px;
   box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
   border: none;
   cursor: pointer;
}

.delete-btn{
   width: 100%;
   border-radius: 4px;
   display: block;
   text-decoration: none;
   background: #544343;
   font-size: 12px;
   font-weight: 400;
   color: #fff;
   text-align: center;
   padding: 1em;
   margin-bottom: 10px;
   box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
   border: none;
   cursor: pointer;
}

.export-btn{
   width: 100%;
   border-radius: 4px;
   display: block;
   text-decoration: none;
   background: #d62528;
   font-size: 14px;
   font-weight: 400;
   color: #fff;
   text-align: center;
   padding: 0.5em 1em;
   margin-bottom: 10px;
   box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
   border: none;
   cursor: pointer;
}

.cezih-btn{
   width: 47%;
   border-radius: 4px;
   display: inline-block;
   text-decoration: none;
   background: #9f1f63;
   font-size: 12px;
   font-weight: 400;
   color: #fff;
   text-align: center;
   padding: 0.7em;
   margin-bottom: 10px;
   box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
   border: none;
   cursor: default;
}

.covid-pass-btn{
   width: 47%;
   border-radius: 4px;
   display: inline-block;
   text-decoration: none;
   background: #72bf44;
   font-size: 12px;
   font-weight: 400;
   color: #fff;
   text-align: center;
   padding: 0.7em;
   margin-bottom: 10px;
   margin-left: 6%;
   box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
   border: none;
   cursor: pointer;
}

.primary-btn i,
.secondary-btn i,
.trash-btn i,
.print-btn i,
.delete-btn i,
.export-btn i,
.cezih-btn i,
.covid-pass-btn i{
   color: #fff !important;
   font-size: 14px !important;
}

.covid-pass-btn.no-pass{
   background: #cde0c2; 
   color: #333;
   font-weight: bold; 
   cursor: default;
}
.covid-pass-btn.no-pass i{
   color: #d62528 !important;
   font-size: 16px !important;
}

.covid-pass-btn span.pin{
   display: none; 
}

.covid-pass-btn span{
   color: #fff;
   font-weight: bold; 
}

/* </BUTTONS> */

/* <ALERTS> */

.alert-container{
   position: absolute;
   visibility: hidden;
   width: 100%;
   padding: 1.6em;
}

.alert{
   margin: 0 auto;
   height: auto;
   width: 96%;
   max-width: 380px;
   border-radius: 8px;
   text-align: center;
   font-size: 13px;
   font-weight: 600;
   padding: 1em;
   box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
}
.alert.error{
   background: #d62528;
   color: #fff;
}

.alert.success{
   background: #75ce5f;
   color:#fff;
}

.fade-out {
   -moz-animation-name: fade-out;
   -webkit-animation-name: fade-out;
   -ms-animation-name: fade-out;
   animation-name: fade-out;
   -moz-animation-duration: 4s;
   -webkit-animation-duration: 4s;
   -ms-animation-duration: 4s;
   animation-duration: 4s;
 }

 @keyframes fade-out { 0% { opacity: 1; visibility: visible; } 100% { opacity: 0; visibility: hidden;  }} 
 @-moz-keyframes fade-out { 0% { opacity: 1; visibility: visible; }  100% { opacity: 0; visibility: hidden; }} 
 @-webkit-keyframes fade-out { 0% { opacity: 1; visibility: visible; }  100% { opacity: 0; visibility: hidden; }} 
 @-ms-keyframes fade-out { 0% { opacity: 1; visibility: visible; } 100% { opacity: 0; visibility: hidden; }} 



/* </ALERTS> */


/* <LISTINGS> */

.shadow-box{
   border-radius: 4px;
   font-size: 14px;
   font-weight: 400;
   color: #fff;
   background-color: #fff;
   padding: 0.2em 1em;
   margin: 10px;
   box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
}

.shadow-box i{
   font-size: 28px;
   color:#d62528;
   display: inline-block;
}

.shadow-box h1{
   font-size: 1em;
   font-weight: 300;
   margin: 20px 0px 20px 15px;
   display: inline-block;
}

.test-result{
   font-size: 12px;
   font-weight: bold;
   color:#d62528;
}

.stopwatch{
   display: inline-block;
   margin-left: 10px;
   font-weight: bold;
}

/* </LISTINGS> */


.big-box{
   border-radius: 4px;
   font-size: 14px;
   font-weight: 400;
   color: #fff;
   padding: 2em;
   margin: 10px;
   box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
}

.big-box i{
   font-size: 48px;
   color: #fff !important;
}

.big-box h1{
   font-size: 1.3em;
   font-weight: 300;
   margin: 20px 0px 20px 50px;
   display: inline-block;
   color: #fff !important;
}

.big-box h3{
   color: #fff !important;
}

.white{
   background-color: #fff;
}

.red{
   background-color: #d62528;  
}

.gray{
   background-color: #a4a0a0;
}

p{
   font-weight: 300;
}

h1{
   line-height: 1.5em;
   padding: 0px;
   margin: 0 0 1em 0;
   font-size: 1.2em;
   font-weight: 300;
}

h2{
   padding: 0;
   font-weight: 600;
   margin: 0 0 1em 0;
   font-size: 1.2em;
   line-height: 1.8em;
}   

h3{
   font-size: 12px;
   font-weight: 300;
}

h3 i{
   font-size: inherit !important;
   font-weight: inherit !important;
   color: inherit !important;
}

h4{
   font-size: 16px;
   font-weight: 400;
}

h4 i{
   font-size: 18px !important;
   color: inherit !important;
}

ul{
   list-style: none;
}
li{
   font-weight: 300;
}

hr.separator{
   width: 100%;
   background-color: #d62528;
   border:0;
   height: 2px;
   margin-bottom: 20px;
}

.row{
   display: table;
   width: 100%;
}

.col-first .shadow-box{
   margin-left: 0px !important;
}
.col-last .shadow-box{
   margin-right: 0px !important;
}

.col-100{
   display: table-cell;
   width: 100%;
}

.col-50{
   display: table-cell;
   width: 50%;
}

.col-25{
   display: table-cell;
   width: 25%;
}

.text-left{
   text-align: left;
}
.text-right{
   text-align: right;
}
.text-center{
   text-align: center;
}
.vertical-middle{
   vertical-align: middle;
}
@media screen and (max-width: 768px) {

   .pupillam-menu{
      padding: 0 10px;
   }

   .pupillam-menu .link {
      display: block;
      padding: 5px;
      width: 50%;
      float: left;
   }

   .header-left{
      display: inline-block;
      width: 30%;
   }

   .header-right{
      display: inline-block;
      width: 70%;
   }

   .container{
      width: 95%;
      max-width: auto;
   }

   .container-login{
      margin: 2vh auto;
      height: 96vh;
      width: 94%;
   }

   .page-heading-block{
      display: block;
      width: 100%;
   }

   .search-form{
      display: table;
      width: 100%;
   }
   .search-field{
      display: table-cell;
      width: 50%;
   }
   .search-btn-small{
      display: table-cell;
      width: 50%;
   }

   .export-btn-small{
      display: none;
   }

   .search-location{
      width: 90%;
      margin-bottom: 20px;
   }
   .primary-btn,
   .secondary-btn,
   .trash-btn{
      width: 100%;
      display: block;
   }



   
   .col-first .shadow-box{
      margin-left: 10px !important;
   }
   .col-last .shadow-box{
      margin-right: 10px !important;
   }

   .shadow-box.registrations i.reg{
      font-size: 35px;
      color:#d62528;
      display: block;
      text-align: center;
      margin-top: 15px;
   }
   
   .shadow-box.registrations h1{
      font-size: 1em;
      font-weight: 300;
      margin: 20px 0px;
      display: block;
      text-align: center;
   }

   .search-heading{
      display: block !important;
      width: 100% !important;
   }
   

   .col-50{
      display: block;
      width: 100%;
   }

   .col-25{
      display: inline-block;
      width: 50%;
   }

   .container{
      padding: 0.7em;
   }

   .big-box i{
      font-size: 32px;
   }

   .big-box h1{
      font-size: 1.2em;
      margin: 10px 0px 10px 5px;

   }
   

}

@media screen and (max-width: 480px) {
   .container-login{
      margin: 2vh auto;
      height: 96vh;
      width: 94%;
   }
   .container{
      width: 95%;
      max-width: auto;
   }

   .col-25{
      display: inline-block;
      width: 100%;
   }

}


/* Test BTN */
.test-btn {
   display: inline-block;
   width: 48%;
   height: 50px;
   position: relative;
   padding: 2.5em;
   margin: 0.5%;
   cursor: pointer;
   -webkit-user-select: none;
   -moz-user-select: none;
   -ms-user-select: none;
   user-select: none;
   border-radius: 4px;
   text-decoration: none;
   background: #ccc;
   color: #fff;
   box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
   text-align: center;
 }

 .full-btn{
    display: block !important;
    width:98% !important;
    margin: 0.5% 0% !important;
 }
 
 /* Hide the browser's default radio button */
 .test-btn input {
   position: absolute;
   opacity: 0;
   cursor: pointer;
 }
 
 /* Create a custom radio button */
 .checkmark {
   position: absolute;
   top: 0;
   left: 0;
   height: 100%;
   width: 100%;
   font-size: 18px;
   font-weight: 600;
   padding: 1.2em;
   border-radius: 4px;
 }

 .checkmark i{
    font-size: 28px;
    margin-right: 10px;
 }
 
 /* On mouse-over, add a grey background color */
 .test-btn:hover input ~ .checkmark {
   background-color: #d62528;
   color: #fff;
 }
 .test-btn:hover input ~ .checkmark i {
   color: #fff;
 }
 
 /* When the radio button is checked, add a red background */
 .test-btn input:checked ~ .checkmark{
   background-color: #d62528;
   color: #fff;
 }

 .test-btn input:checked ~ .checkmark i{
   color: #fff;
 }
 
 /* Create the indicator (the dot/circle - hidden when not checked) */
 .checkmark:after {
   content: "";
   position: absolute;
   display: none;
 }
 
 /* Show the indicator (dot/circle) when checked */
 .test-btn input:checked ~ .checkmark:after {
   display: block;
 }
 
 /* Style the indicator (dot/circle) */
 .test-btn .checkmark:after {
   top: 9px;
   left: 9px;
   width: 8px;
   height: 8px;
   border-radius: 50%;
   background: white;
 }