#app .noselect {
  user-select: none;
}

#app .anc {
  opacity: 0.5;
}

#app .space {
  margin-bottom: 16px;
}

#app .clickable {
  cursor: pointer;
}

#app .good {
  background: #efe;
  border: solid 1px #bfb;
  border-radius: 4px;
}

#app .bad {
  background: #fee;
  border: solid 1px #fbb;
  border-radius: 4px;
}

#app .red {
  color: #f88;
}

#app table {
  border-collapse: collapse;
}

#app .right {
  text-align: right;
}

#app .container {
  width: 100%;
  padding: 10px;
}

@media (max-width: 600px) {

  #app .main-page h1 {
    font-size: 4rem;
  }

}

@media (max-width: 500px) {

  #app .main-page h1 {
    font-size: 3.2rem;
  }

}

@media (max-width: 400px) {

  #app .main-page h1 {
    font-size: 2.6rem;
  }

}

#app .journal-page textarea {
  width: 100%;
  height: auto;
}

#app .chore-page .chore {
  display: flex;
  justify-content: space-between;
  padding: 0.75rem 1.5rem;
  margin-bottom: 1.5rem;
}

@media (max-width: 1000px) {

  #app .chore-page .chore {
    flex-direction: column;
  }

}

#app .plan-page .due-date-items {
  margin-bottom: 3rem;
}

#app .plan-page .plan-item {
  border: solid 1px #bbb;
  border-radius: 4px;
  padding: 0.75rem 1.5rem;
  margin-bottom: 1.5rem;
}

#app .plan-page .plan-item svg {
  border: solid 1px #bbb;
  border-radius: 4px;
}

#app .relm-page {
  display: flex;
  flex-direction: row;
}

#app .relm-page textarea {
  width: 100%;
  height: auto;
}

#app .relm-page button.button-primary {
  display: inline-block;
  position: relative;
  top: -1px;
}

#app .relm-page .selected {
  background-color: #f8f8ff;
}

#app .relm-page .right-area {
  flex-grow: 3;
}