body, p, td {
  font-family: -apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji;
  font-size: 14px;
  line-height: 1.5;
  color: #24292e;
}

body {
  padding: 0;
  margin: 0;
}

h1 {
  margin-top: 0;
  margin-bottom: 0;
  margin-left: 47px;
  margin-right: 47px;
  padding: 9px;
  text-align: center;
  font-weight: normal;
  font-size: 1.4em;
  text-transform: uppercase;
  letter-spacing: 3px;
}

a:link,
a:visited,
a:hover,
a:active {
  color: #0C5DC1;
}

a:hover,
a:active {
  color: #0C5DC1AA;
}

.splash {
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: #FFFFFF;
  z-index: 1;
  text-align: center;
  padding-top: 100px;
}

body.loaded .splash {
  display: none;
}

.header {
  color: white;
  background-color: #0C5DC1;
}

/* Navigation */

.navigation {
  margin-bottom: 25px;
}

.navigation ul {
  list-style-type: none;
  margin: 0;
  padding-top: 10px;
  padding-left: 10px;
  padding-right: 10px;
  padding-bottom: 0px;
  overflow: scroll-x;
  background-color: #F0F0F0;
}

.navigation li {
  display: inline-block;
  text-align: center;
  padding: 8px 16px;
  margin-right: 5px;
  cursor: pointer;
  background-color: rgba(255,255,255,0.5);
  color: rgba(0,0,0,0.5);
}

.navigation li a:link,
.navigation li a:visited,
.navigation li a:hover,
.navigation li a:active {
  text-decoration: none;
  color: rgba(0,0,0,0.5);
}

.navigation li.active {
  background-color: #FFF;
}

.navigation li:hover {
  background-color: #FFF;
}

.main {
  padding: 0px 10px;
}

#timings {
  margin-bottom: 15px;
  text-align: center;
}

.timing {
  display: inline-block;
  padding: 0px 20px;
}

#foodTiming sl-progress-bar,
#sleepTiming sl-progress-bar,
#changingTiming sl-progress-bar {
  width: 70%;
  margin: 25px auto -5px;
  display: block;
  height: 20px;
  background: none;
  border: 0;
  border-radius: 50px;
  position: relative;
}

.timeDescription {
  font-size: 11px;
}

.timeValue {
  display: block;
  font-size: 16px;
  font-weight: bold;
}

.hide {
  display: none !important;
}

.timelinesHolder {
  margin: auto;
  margin-top: 25px;
}

.timelinesHolder h2 {
  text-align: center;
  display: block;
  font-size: 14px;
  margin-bottom: 4px;
}

.filteredTimelines .timelinesHolder h2 {
  text-align: center;
  position: absolute;
  left: 5px;
  display: block;
  font-size: 8px;
  margin-bottom: 4px;
}

.timelinesHolder h3 {
  text-align: center;
  font-size: 12px;
  font-weight: normal;
  margin-bottom: 16px;
}

/* Google Charts Timeline Hacks */

/* remove outer border */
.timeline svg > g:nth-child(2) > rect:last-child {
    display: none;
}

/* replace horizontal border colors */
.timeline svg > g:nth-child(2) > path[stroke="#b7b7b7"] {
    stroke: #F3F3F3;
}

.timeline svg text {
  font-weight: normal;
}

.filteredTimelines .timeline {
  margin-bottom: -80px;
}

.filteredTimelines .timeline:last-child {
  margin-bottom: 20px;
}

.refresh {
  position: absolute;
  top: 0;
  right: 0;
  height: 47px;
  width: 47px;
  font-size: 20px;
  color: white;
  background: none;
  border: none;
  cursor: pointer;
}

.profile {
  margin-bottom: 30px;
}

.profile .message {
  font-size: 20px;
  font-weight: bold;
}

.profile .username {
  font-size: 12px;
  color:  #aaaaaa;
}

#intakeForm {
  position: relative;
}

#intakeFormCloseButton {
  position: absolute;
  font-size: 1.5rem;
  top: -5px;
  left: 320px;
}

#intakeForm h3 {
  margin-top: 15px;
  margin-bottom: 2px;
  font-weight: normal;
  font-size: 15px;
}

button.account {
  position: absolute;
  top:  0;
  left: 0;
  width: 47px;
  height: 47px;
  font-size:  20px;
  color: white;
  background: none;
  border: none;
  cursor: pointer;
}

sl-icon-button#intakeFormToggle {
  font-size: 20px;
  background-color: #0C5DC1;
  border-radius: 100%;
  margin-bottom: 10px;
}

sl-icon-button#intakeFormToggle::part(base) {
  color: white;
}

sl-icon-button#intakeFormToggle:hover {
  background-color: #0C5DC1DD;
}

#submitSuccessDialog .json {
  white-space: pre;
  font-family: monospace;
  font-size: 9px;
  color: #777;
}

.formTitle {
  font-size: 20px;
  font-weight: bold;
  margin-top:  15px;
  margin-bottom: 15px;
}

input[type="checkbox"] {
  width: 22px;
  height: 22px;
}

/* Start Time */

input.calDate,
input.calTime {
  font-size: 21px;
}

/* Event Type */

.eventType label {
  position: relative;
  display: inline-block;
}

.eventType input {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;

  border-radius: 10px;
  width: 60px;
  height: 60px;

  border: 1px solid #e3e3e3;
  transition: 0.2s all linear;
  margin: 0;

  position: relative;
  top: 4px;
}

.eventType input:checked {
  border: 3px solid #0C5DC1;
  background-color: #0C5DC133;
}
.eventType input:checked + .label {
  font-size:  30px;
}

.eventType .label {
  position: absolute;
  left: 50%;
  top: 50%;
  font-size: 25px;
  transform: translate(-50%, -50%);
  transition: 0.2s all linear;
}

/* Feeding Type */

.feedingType label {
  position: relative;
  display:  inline-block;
}

.feedingType input {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;

  border-radius: 10px;
  width: 120px;
  height: 60px;

  border: 1px solid #e3e3e3;
  transition: 0.2s all linear;
  margin: 0;

  position: relative;
  top: 4px;
}

.feedingType input.doublewide {
  width: 244px;
}
.feedingType input:checked {
  border: 3px solid #0C5DC1;
  background-color: #0C5DC133;
}
.feedingType input:checked + .label {
  font-weight:  bold;
}

.feedingType .label {
  position: absolute;
  left: 50%;
  top: 50%;
  font-size: 13px;
  transform: translate(-50%, -50%);
  transition: 0.2s all linear;
  width: 95%;
  text-align: center;
}

/* Milk Amount */

.milkAmount input {
  font-size: 20px;
  width: 150px;
}


/* Notes */

.notes textarea {
  font-size: 16px;
  width: 90%;
  max-width: 320px;
  height: 70px;
}

.notes input#file {
  display: block;
}

/* Submit Button */

.submit {
  width: 150px;
  height: 40px;
  font-size: 16px;
  margin: 25px;
}

.callOption {
  display: inline-block;
  width: 45%;
  text-align: center;
  opacity: 1;
  border:  2px dotted rgba(0,0,0,0.3);
  border-radius: 20px;
}

.callOption.diminish {
  opacity: 0.25;
  border: none;
}

.callOption a {
  font-weight: bold;
  font-size: 18px;
}

sl-progress-bar {
  --height: 10px;
  --track-color: #dadada;
}

sl-progress-bar.firstThird {
  --indicator-color: #14bd00aa; /* semi-transparent green */
}

sl-progress-bar.secondThird {
  --indicator-color: #ffeb00ee; /* semi-transparent yellow */
}

sl-progress-bar.thirdThird {
  --indicator-color: #ff0000aa; /* semi-transparent red */
}

sl-progress-bar[indeterminate] {
  --indicator-color: #0c5dc1bd; /* semi-transparent blue */
}

#infoPanel sl-details {
  margin-bottom: 15px;
}

#translatePanel sl-details {
  margin-bottom: 15px;
}

#translatePanel tr:nth-child(odd){
  background-color: #FAFAFA;
}

.eventsHolder {
  font-size:  15px;
}

.eventsHolder .row {
  position: relative;
  margin-bottom: 8px;
  background-color: #00000009;
  padding: 5px 10px 15px;
}
.eventsHolder .row.searchHide {
  display: none;
}

.eventsHolder .author {
  opacity: 40%;
  font-size: 12px;
  font-style: italic;
  padding: 15px 20px 0px;
  text-align: right;
}

.eventsHolder .emoji {
  font-size:  26px;
  vertical-align: middle;
}

.eventsHolder .times {
  font-family: monospace;
  font-size: 16px;
  font-weight: bold;
  margin-left: 5px;
}

.eventsHolder .info {
  margin-left:  36px;
}

.eventsHolder sl-icon-button {
  position: absolute;
  top: 6px;
  right: 6px;
}

.timelineSummary {
  display: inline-block;
  background-color: #F8f8f8;
  border-radius: 10px;
  padding: 4px 12px;
  margin: 2px;
}

.filteredTimelines .timelineSummary {
  display: none;
}

#dailyGoals {
  user-select: none;
}

#dailyGoals .dailyGoal {
  display: inline-block;
  text-align: center;
}

#dailyGoals .dailyGoal h2 {
  font-size: 2.5em;
  margin-bottom:0;
}

#dailyGoals .dailyGoal sl-progress-ring {
  --size: 70px;
  --track-width: 10px;
  margin: 14px 15px;
}

/* Temporarily turn off the focus ring on the main nav bar
   for the iOS app to feel more native.
   TODO:  Turn this back on in an accessible manner */
sl-tab-group#tabGroup sl-tab::part(base){
    box-shadow: none !important;
}

.hanyupinyin {
  font-size: 0.8rem;
  color: #CCC;
}
