/* GLOBAL STYLES */
body {
  background: #f6f6f6;
  margin: 0;
  padding: 0;
  font-family: 'Roboto', sans-serif;
  font-size: 16px;
}

li {
  margin: 0;
  padding: 0;
  text-align: center;
  list-style-type: none;
}

.error-message {
  color: rgb(237, 28, 36);
  margin-left: -2.66rem;
}

.container {
  background: #fff;
  border-radius: 4px;
  margin: 1.5rem 3rem;
  padding: 0.5rem;
  box-shadow: 2px 4px 25px rgba(0, 0, 0, 0.1);

}

/* HEADER STYLES */
.header {
  padding: 0.5rem;
  text-transform: uppercase;
  text-align: center;
}

.header h1 {
  font-family: 'Baloo Bhai', cursive;
  font-size: 2.5rem;
  margin: 0;
  color: rgb(117, 80, 52);
}

.header a {
  color: #000;
  margin-right: 0.5rem;
  text-decoration: none;
}
.header a:active {
  color: rgb(0, 174, 239);
}
.header a:hover {
  color: rgb(0, 174, 239);
}

nav {
  margin-top: 1.2rem;
}

.error-message li {
  color: red;
  list-style-type: none;
}

/* INDEX STYLES */
.index {
  margin: 1rem;
}

/* LOGIN STYLES */
.login {
  text-align: center;
}

.login a {
  text-decoration: none;
  color: rgb(0, 174, 239);
}
.login a:hover {
  opacity: 0.7;
}
.login a:active {
  opacity: 0.7;
}

/* REGISTER STYLES */
.register {
  text-align: center;
}

/* REPORT STYLES */
.reports {
  text-align: center;
}

.report {
  padding: 0 1rem;
  text-align: center;
}

/* report header styles */
.report-header {
  text-align: center;
}

.pdf-button {
  background: rgb(0, 174, 239);
  border-radius: 6px;
  box-shadow: 2px 4px 25px rgba(0, 0, 0, 0.1);
  color: white;
  margin-bottom: 1rem;
  padding: 0.5rem;
  text-decoration: none;
}
.pdf-button:hover {
  opacity: 0.8;
}

/* report table styles */
.styled-table {
  margin: 2rem auto;
  border: none;
  border-collapse: collapse;
  white-space: nowrap;
  text-align: left;
  max-width: 100%;
}

.styled-table p {
  margin: 0;
  padding: 0;
}

.styled-table th {
  padding: 1rem;
}

.styled-table td {
  padding: 1rem;
  border: none;
}

.styled-table tr:nth-child(odd) {
  background: #e7dec9;
}

.authorized-text {
  font-size: 10px;
  width: 50px;
}

.error {
  color: red;
  font-size: 1rem;
}

/* report footer styles */
.report-footer {
  padding: 1rem;
}
.report-footer a {
  color: rgb(0, 174, 239);
  margin-right: 0.5rem;
  text-decoration: none;

}

/* checkbox table styles */
.checkbox-table {
  margin: 2rem auto;
  border: none;
  border-collapse: collapse;
  white-space: nowrap;
  text-align: center;
  max-width: 100%;
}

.checkbox-table-header {
  border-top: 1px solid #e7dec9;
  padding: 0.5rem;
}

.checkbox-table td {
  padding: 1rem 0;
}

.checkbox-table tr:nth-child(odd) {
  background: #e7dec9;
}

.checkbox {
  border: 1px solid black;
  width: 21px;
}

.checkbox td {
  padding: 0.25rem;
}

/* SUBMIT BUTTON STYLES */

#submit {
  color: #fff;
  background: rgb(0, 174, 239);
  border: none;
  border-radius: 8px;
  box-shadow: 2px 4px 25px rgba(0, 0, 0, 0.1);
  padding: 14px;
}
#submit:hover {
  opacity: 0.8;
  cursor: pointer;
}
#submit:active {
  opacity: 0.8;
  cursor: pointer;
}

/* MOBILE STYLES */
@media screen and (max-width: 767px) {
  /* MOBILE GLOBAL STYLES */
  .container {
    margin: 0.5rem;
  }

  /* MOBILE HEADER STYLES */

  .header a {
    font-weight: bold;
    font-size: .75rem;
  }

  /* MOBILE SEARCH PAGE STYLES */
  #sessions {
    width: 20rem;
  }


  /* MOBILE TABLE STYLES */
  .styled-table {
    /* border: 1px solid black; */
    margin: .25rem auto;
  }

  .checkbox-table p{
    margin: 0;
    padding: 0;
  }

  .styled-table td {
    padding: 0.5rem;
    /* border: 1px solid black; */
  }
  
  .styled-table tr:nth-child(odd) {
    background: #e7dec9;
  }
  
  .checkbox {
    border: 1px solid black;
    width: 21px;
  }
}

/* SUMMER CAMP STYLES */

.summer-camp-table {
  margin: 2rem auto;
  border: 1px solid gray;
  border-collapse: collapse;
  white-space: nowrap;
  text-align: center;
  max-width: 100%;
  width: 85%;
}

.summer-camp-table th {
  border: 1px solid gray;
}

.summer-camp-table td {
  border: 1px solid gray;
  text-align: left;
  padding: 0.1rem;
}

.summer-camp-table tr {
  border: 1px solid gray;
}

.in-out-row td {
  text-align: center;
}

.summer-camp-info-row td {
  padding: 0.5rem;
}

.summer-camp-monday {
  background: #fef2cb;
}

.summer-camp-tuesday {
  background: #d9e2f3;
}

.summer-camp-wednesday {
  background: #fbe4d5;
}

.summer-camp-thursday {
  background: #ececec;
}

.summer-camp-friday {
  background: #e2efd9;
}