* {
  /* outline: 2.5px dotted rgba(0, 255, 13, 0.705); */
}

/* `Clear Floated Elements
----------------------------------------------------------------------------------------------------*/

/* http://sonspring.com/journal/clearing-floats */

.clear {
  clear: both;
  display: block;
  overflow: hidden;
  visibility: hidden;
  width: 0;
  height: 0;
}

html {
  /* overflow: hidden; */
}

body {
  color: #2C7A7A;
  font-family: Helvetica, Arial, sans-serif;
  background-color: #EDC9B4;
  margin: 1.3vw;
  transition: 350ms color;
  transition: 350ms background-color;
  font-size: 1.3vw;
}

.dark_mode {
  color: #eee;
  background-color: #333;
}

fieldset {
  border-width: 1.5px;
  border-style: solid;
  border-radius: .4em;
  padding: 0.2em 0.5em 0.5em 0.5em;
  margin: 0.4em 0 0.4em 0;
}

#report_container {
  margin: 1.3vw 0 1.3vw 0;
  padding: 1.3vw;
  border: 1.5px solid #2C7A7A;
  border-radius: .4em;
  /* transition: 350ms font-size; */
  text-align: center;
}

body.dark_mode #report_container {
  border: 1.5px solid #eee;
}

#report_container>h2:first-of-type {
  margin-top: 0;
}

.scrollable-element {
  scrollbar-color: #2C7A7A #EDC9B4;
}

body.dark_mode .scrollable-element {
  scrollbar-color: #eee #333;
}

body>header {
  border: 1px solid #2C7A7A;
  background-color: #2C7A7A;
  color: #BFE3E3;
  font-family: Helvetica, Arial, sans-serif;
  font-size: 1.25em;
  font-weight: bold;
  margin-top: 0.5em;
  margin-bottom: 0.5em;
  padding: 0.3em;
  box-shadow: 3px 6px 9px 4px hsla(0, 0%, 0%, 0.4);
  border-radius: 0.2em;
}

body>footer {
  border: 1px solid #2C7A7A;
  background-color: #2C7A7A;
  color: #BFE3E3;
  font-family: Helvetica, Arial, sans-serif;
  font-size: 1.25em;
  font-weight: bold;
  margin-top: 0.5em;
  margin-bottom: 0.5em;
  padding: 0.5em;
  box-shadow: 3px 6px 9px 4px hsla(0, 0%, 0%, 0.4);
  border-radius: 0.2em;
}

body>header>h1 {
  margin-top: 0;
  text-align: center;
  text-shadow: 2px 2px 4px hsla(0, 0%, 0%, 0.5);
}

body>header>nav>ul>li {
  background-color: #BFE3E3;
  padding: 0.25em 0.75em;
  border: 1px solid black;
  box-shadow: 2px 2px 3px hsla(0, 0%, 0%, 0.4);
  border-radius: 0.2em;
}

body>header>nav>ul>li>a {
  color: #2C7A7A;
}

body>header>nav>ul>li>a:visited {
  color: #2C7A7A;
}

ul {
  display: inline-block;
  color: #BFE3E3;
  font-family: Helvetica, Arial, sans-serif;
  font-size: 1.25em;
  font-weight: bold;
  margin-top: 0.2em;
  margin-bottom: 0.2em;
  margin-left: 2em;
  padding: 0.2em;
}

nav>ul>li {
  font-size: 1em;
  display: inline-block;
  margin-left: 0.75em;
}

li {
  /* border: 1px solid red; */
  font-size: 0.75em;
  font-weight: normal;
  list-style-type: none;
}

.logo {
  display: block;
  float: left;
  margin: auto;
  box-shadow: 3px 6px 9px 4px hsla(0, 0%, 0%, 0.4);
  background-color: #BFE3E3;
  padding: 1em;
  width: 20%;
  border-radius: 0.2em;
}

input[type="number"] {
  width: 3em;
}

input:invalid+span:after {
  position: absolute;
  content: '✖';
  padding-left: 5px;
}

input:valid+span:after {
  position: absolute;
  content: '✓';
  padding-left: 5px;
}

/* body>form> */
#submit_btn {
  /* position: absolute; */
  /* right: 0; */
  float: right;
  margin: 0.5em 0.5em 0.5em 0.5em;
}

#simulation_mode {
  float: left;
  width: 49.5%;
}

#dark_mode {
  float: right;
  width: 49.5%;
}

.report {
  display: inline-block;
  margin-bottom: .75em;
}

.report>table {
  margin: 0 auto;
}

.report>table tr td:first-child,
td:last-child {
  font-size: 1.17em;
}

.report>table tr {
  transition: 200ms color;
  transition: 200ms background-color;
}

.report>table>tbody td:nth-child(2n+1) {
  background-color: hsl(22, 61%, 88%);
}

body.dark_mode .report>table>tbody td:nth-child(2n+1) {
  background-color: #555;
}

.report>table>tbody tr:hover {
  background-color: hsl(22, 61%, 92%);
  outline: 1px solid;
}

body.dark_mode .report>table>tbody tr:hover {
  background-color: #666;
}

td,
th {
  /* border: 02px; */
  /* margin: 30px; */
  padding: 6px;
}

td {
  text-align: right;
}

thead,
tfoot {
  font-size: 1.17em;
}


h1 {
  font-size: 2em;
  margin: .67em 0;
}

h2 {
  font-size: 1.5em;
  margin: .75em 0
}

h3 {
  font-size: 1.17em;
  margin: .83em 0
}

h4 {
  margin: 1.12em 0
}

h5 {
  font-size: .83em;
  margin: 1.5em 0
}

h6 {
  font-size: .75em;
  margin: 1.67em 0
}

p {
  display: block;
  margin-top: 1em;
  margin-bottom: 1em;
  margin-left: 0;
  margin-right: 0;
}

b {
  font-weight: bold;
}

footer {
  text-align: center;
}