/* GLOBAL ELEMENT STYLES */
* {
  box-sizing: border-box;
}
html {
  font-size: 16px;
}
h1 {
  font-size: 2.5rem;
}
h2 {
  font-size: 1.5rem;
}
h1, h2 {
  padding: 1rem;
}
label {
  display: block;
}
input,
label,
textarea,
button {
  margin: .5rem 0;
}

input[type="datetime-local"] {
  width: 100%;
}
/* Directory */
.Wireframes-list {
  list-style-type: none;
}
.Wireframes-list li {
  font-size: 1.25rem;
}
.Wireframes-list li a {
  text-decoration: none;
}
.Wireframes-list li a:hover {
  color: #3399DD;
}

/* SCAFFOLDING */
.App {
  display: flex;
  height: 100vh;
  width: 100vw;
  overflow-x: hidden;
  flex-direction: column;
}

.Header_wrapper,
.Main_wrapper,
.Footer_wrapper {
  padding: 0 1rem;
  display: flex;
  justify-content: center;
}

.Header_wrapper {
  flex-basis: 12.5%;
  background: #CCC;
}
.Main_wrapper {
  flex-basis: 77.5%;
  background: #FEFEFE;
}
.Main_wrapper.no-padding {
  padding: 0;
}
.Footer_wrapper {
  flex-basis: 10%;
  background: #CCC;
}

.Header_wrapper.launch {
  flex-basis: 20%;
}

.Main_wrapper.launch {
  flex-basis: 70%;
}

.Header,
.Main,
.Footer {
  display: flex;
  justify-content: center;
  width: 100%;
  max-width: 1280px;
}

.Header,
.Footer {
  align-items: center;
}

.Main {
  align-items: center;
  flex-direction: column;
  padding: 1rem 0;
}

/* HEADER ELEMENTS */
.Header h1 {
  font-size: 1.75rem;
}
.Header img {
  height: 2rem;
  border-radius: 1rem;
}
.launch .Header h1 {
  font-size: 2.5rem;
}
.launch .Header img {
  height: 4rem;
  border-radius: 2rem;
}

.box-shadow-menu {
  position: relative;
  padding-left: 2rem;
  margin-left: auto;
}

.box-shadow-menu:before {
  content: "";
  position: absolute;
  left: 0;
  top: -1rem;
  width: 2rem;
  height: 0.15rem;
  background: black;
  box-shadow: 
    0 0.75rem 0 0 black,
    0 1.5rem 0 0 black;
  opacity: 0.3;
}

.close {
  position: relative;
  width: 32px;
  height: 32px;
  opacity: 0.3;
  margin-left: auto;
}
.close:hover {
  opacity: 1;
}
.close:before, .close:after {
  position: absolute;
  left: 15px;
  content: ' ';
  height: 33px;
  width: 2px;
  background-color: #333;
}
.close:before {
  transform: rotate(45deg);
}
.close:after {
  transform: rotate(-45deg);
}

/* MAIN ELEMENTS */
.Main-heading {
  width: 100%;
  text-align: left;
}

.base-form {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  width: 100%;
  max-width: 480px;
}

/* FOOTER ELEMENTS */

/* PAGE SPECIFIC ELEMENTS */
/* ADD-* */
.form-checkbox-wrapper {
  display: flex;
  justify-content: flex-start;
  width: 100%;
}
.form-checkbox-wrapper input {
  margin-right: 0.5rem;
}
.form-checkbox-wrapper select {
  flex-grow: 1;
  margin-left: 1rem;
}

/* MENU */
.Menu {
  height: 100%;
  width: 100%;
}
.Menu ul {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-evenly;
  align-items: center;
  background: #999;
}

.Menu a {
  text-decoration: none;
  color: #FEFEFE;
  font-size: 2rem;
}


/* HYDRATION GAUGE */
.Hydration-gauge {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 1.25rem;
  font-size: 0.75rem;
  background: #CCC;
  border-radius: 1.25rem;
}

/* HOME */
.Tasks-list_wrapper {
  margin: 1rem 0;
  background: #CCC;
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  border-radius: 1rem;
}
.Tasks-list {
  width: 100%;
  padding: 0.5rem;
}
.Tasks-list_wrapper h2 {
  margin-right: auto;
}
.Task {
  width: 100%;
  display: flex;
  flex-direction: column;
  background: #FEFEFE;
  margin: 0.5rem 0;
  padding: 0.5rem;
}
.Task span {
  margin-left: auto;
  background: #DDD;
}
.Tasks-list {

}

