@font-face {
  font-family: "Roboto-kauppapeli";
  src: url("/assets/Roboto-kauppapeli-Regular.woff2") format('woff2');
}


:root {
--md-text-font: "Helvetica";

--color-reps: lightblue;

--color-pain: rgb(248, 165, 165);
--gradient-area-pain: 25%;
--gradient-area-exercise: 40%;
--color-hevy: rgb(195, 229, 254);
--color-climb: rgb(247, 244, 196);
--color-hover: rgba(255, 251, 235, 0.869);
}

p:has(.info-key) {
  margin-bottom: -15px;
}

.info-key {
  font-size: 7.5pt;
}

.failure-set {
  background-color: rgb(255, 181, 137);
}

.md-typeset table:not([class]) td {
  padding: 5px 16px 5px 16px;
  height: 10px;
}

.md-typeset table:not([class]) tr {
  padding: 5px 16px 5px 16px;
  height: 10px;
}

.md-typeset table:not([class]) th {
  padding: 5px 16px 5px 16px;
  background-color: cornsilk;
}

.table-subheader {
  font-weight: bold;
  background-color: rgb(242, 241, 240);
}

.table-subheader td {
  font-weight: bold;
  text-indent: 1em;
}

.golf-table {
  width: 100%;
  table-layout: fixed;
  border: 1px solid rgba(128, 128, 128, 0.5);
  text-wrap-mode: nowrap;
}

.golf-table thead {
  border: 1px solid rgba(128, 128, 128, 0.5);;
}

.golf-table tbody {
  border: 1px solid rgba(128, 128, 128, 0.5);;
}

.golf-table th+th {
  width: auto;
}

.golf-table th {
  width: 10%;
  text-align: right;
  padding-right: 4px;
  background-color: darkseagreen;
}

.golf-table tbody td {
  border-top: 1px solid rgba(128, 128, 128, 0.5);
  text-align: right;
  padding-right: 4px;
}

.golf-table .under-par {
  font-weight: bold;
}

.golf-table .hole-in-one {
  background-color: gold;
}

.golf-table .did-not-throw {
  background-color: gray;
  color: white;
}

.golf-table .golf-result--4 {
  background-color: greenyellow;
}

.golf-table .golf-result--3 {
  background-color: rgba(172, 255, 47, 0.75);
}

.golf-table .golf-result--2 {
  background-color: rgba(172, 255, 47, 0.5);
}

.golf-table .golf-result--1 {
  background-color: rgba(172, 255, 47, 0.2);
}

.golf-table .golf-result-0 {
  background-color: white;
}

.golf-table .golf-result-1 {
  background-color: rgba(255, 166, 0, 0.1);
}

.golf-table .golf-result-2 {
  background-color: rgba(255, 166, 0, 0.2);
}

.golf-table .golf-result-3 {
  background-color: rgba(255, 166, 0, 0.4);
}

.golf-table .golf-result-4 {
  background-color: rgba(255, 166, 0, 0.6);
}

.golf-table .golf-result-5 {
  background-color: rgba(255, 166, 0, 0.7);
}

.golf-table .golf-result-6 {
  background-color: rgba(255, 166, 0, 0.8);
}

.golf-table .golf-result-7 {
  background-color: rgba(255, 166, 0, 0.9);
}

.golf-table .golf-result-8 {
  background-color: orange;
}

.golf-table .golf-result-9 {
  background-color: orange;
}

.golf-table .golf-result-10 {
  background-color: orange;
}

@media (max-width: 960px) {
  .golf-table {
    font-size: 9pt;
  }
}

.program tbody .past-workout td {
  color: rgba(0, 0, 0, 0.479)
}

.program tbody .next-workout td {
  font-weight: bold;
  border-top-color: rgb(199, 174, 200);
  border-top-style: solid;
  border-top-width: 3px;
}

.program tbody .last-workout-of-cycle td {
  border-bottom-color: rgba(167, 128, 30, 0.66);
  border-bottom-style: solid;
  border-bottom-width: 1px;
}


/*
.program tbody .past-workout td:has(.double-set) {
  padding-top: 0px;
  padding-bottom: 0px;
}
  */

.program .double-set {
  font-size: 8pt;
  white-space: pre;
  margin-top: -5px;
  margin-bottom: -5px;
}

.program .double-set.top::after {
  content: "\A";
}

.program .double-set.top {
  margin-top: -3px;
  display: block;
}

.program .double-set.bottom {
  margin-top: -3px;
  display: block;
}

table td:has(.row-label) {
  position: relative;
}

table td span.row-label {
  position:absolute;
  display: block;
  margin-top: 0px;
  margin-left: 0px;
  background-color: rgb(199, 174, 200);
  padding-left: 2px;
  padding-right: 2px;
  color: white;
  top: 0px;
  right: 30px;
  font-size: 7pt;
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;

}

.md-typeset .calculate-sets-table table:not([class]) th {
  background-color: rgb(252, 220, 255);
}

.md-typeset .repmax-table table:not([class]) th {
  padding: 5px 16px 5px 16px;
  background-color: rgb(252, 220, 255);
}

.year-change-button-area {
  display: block;
  width: 100%;
  height: 50px;
  margin-top: -25px;
  margin-bottom: -25px;
}

.calendar.month {
  /*position:relative;*/
  width: 100%;
  height: 720px;
  float:none;
  padding-bottom: 3mm;
  overflow: hidden;
}

.calendar.day {
  width: 14%;
  height: 120px;
  border-style: solid;
  border-color: black;
  float:left;
  position: relative;
  display: block;
}

.calendar.day:hover {
  background-color: var(--color-hover);
}

.calendar .day_note {
  font-size: 9pt;
  overflow:hidden;
}


.tabbed-labels label no-data {
  color: rgb(255, 222, 209);
  text-decoration:line-through;
}

.tabbed-labels label no-data:focus,
.tabbed-labels label no-data:hover {
  color: rgb(213, 122, 86);
  text-decoration:line-through;
}

/*
.pain .day_number a {
  color: rgb(255, 252, 250);
}
  */

.day_number .weekday-label {
  top: 2px;
  position: absolute;
  text-transform: uppercase;
}

.calendar-filter-pain .calendar .day:has(.pain-indicator) .weekday-label {
  visibility: hidden;
}

:not(.calendar-filter-pain) .calendar .day .pain-indicator {
  visibility: hidden;
}

.calendar-filter-pain .calendar .day .pain-indicator {
  visibility: visible;
}

@media (min-width: 960px) {
.day_number {
  font-size: 12pt;
  margin-top: 2px;
  margin-bottom: 4px;
  padding-top: 0px;
  padding-left: 10px;
  font-weight: bold;
  color: var(--md-typeset-a-color);
}

.day_number .weekday-label {
  right: 10px;
  top: 3px;
  font-size: 11pt;
}

.calendar.day .pain-indicator {
  width: 16px;
  height: 16px;
  right: 10px;
  top: 0px;
  position:absolute;
}


.calendar .long-data.major-workout-list:has(+ .long-data.minor-workout-list:not(:empty)) {
  margin-top: -7px;
}
}

@media (max-width: 960px) {
.day_number {
  font-size: 9pt;
  margin-top: 2px;
  margin-bottom: 4px;
  padding-top: 0px;
  padding-left: 2px;
  font-weight: bold;
  color: var(--md-typeset-a-color);
}

.calendar.day .pain-indicator {
  width: 16px;
  height: 16px;
  right: 2px;
  top: 2px;
  position:absolute;
}

.day_number .weekday-label {
  right: 2px;
}

}

.calendar .day:first-of-type.ma {
  margin-left: 0%;
}

.calendar .day:first-of-type.ti {
  margin-left: 14%;
}

.calendar .day:first-of-type.ke {
  margin-left: 28%;
}

.calendar .day:first-of-type.to {
  margin-left: 42%;
}

.calendar .day:first-of-type.pe {
  margin-left: 56%;
}

.calendar .day:first-of-type.la {
  margin-left: 70%;
}

.calendar .day:first-of-type.su {
  margin-left: 84%;
}

.calendar-filter-workouts .calendar.day.Hevy_day {
  background-image: linear-gradient(to bottom, white var(--gradient-area-exercise), var(--color-hevy));
}

.calendar-filter-workouts .calendar.day.Hevy_day:hover {
  background-image: linear-gradient(to bottom, var(--color-hover) var(--gradient-area-exercise), var(--color-hevy));
}

.calendar.day .long-data .icon-Hevy a {
  color: rgba(114, 156, 233, 0.814)
}

.calendar-filter-workouts .calendar.day.HKWorkoutActivityTypeClimbing_day {
  background-image: linear-gradient(to bottom, white var(--gradient-area-exercise), var(--color-climb));
}

.calendar-filter-workouts .calendar.day.HKWorkoutActivityTypeClimbing_day:hover {
  background-image: linear-gradient(to bottom, var(--color-hover) var(--gradient-area-exercise), var(--color-climb));
}

.calendar-filter-workouts .calendar.day.HKWorkoutActivityTypeClimbing_day .icon-HKWorkoutActivityTypeClimbing a {
  color: rgba(182, 165, 33, 0.814)
}


.calendar-filter-pain .calendar.day.pain {
  background-image: linear-gradient(to bottom, var(--color-pain), white var(--gradient-area-pain));
}

.calendar-filter-pain .calendar.day.pain:hover {
  background-image: linear-gradient(to bottom, var(--color-pain), var(--color-hover) var(--gradient-area-pain));
}


  
.calendar-filter-pain.calendar-filter-workouts .calendar.day.Hevy_day.pain {
  background-image: linear-gradient(to bottom, var(--color-pain), white var(--gradient-area-pain), white var(--gradient-area-exercise), var(--color-hevy));
}

.calendar-filter-pain.calendar-filter-workouts .calendar.day.Hevy_day.pain:hover {
  background-image: linear-gradient(to bottom, var(--color-pain), var(--color-hover) var(--gradient-area-pain), var(--color-hover) var(--gradient-area-exercise), var(--color-hevy));
}

.calendar-filter-pain.calendar-filter-workouts .calendar.day.HKWorkoutActivityTypeClimbing_day.pain {
  background-image: linear-gradient(to bottom, var(--color-pain), white var(--gradient-area-pain), white var(--gradient-area-exercise), var(--color-climb));
}

.calendar-filter-pain.calendar-filter-workouts .calendar.day.HKWorkoutActivityTypeClimbing_day.pain:hover {
  background-image: linear-gradient(to bottom, var(--color-pain), var(--color-hover) var(--gradient-area-pain), var(--color-hover) var(--gradient-area-exercise), var(--color-climb));
}
  

p:has(.legend) {
  margin-top: -25px;
  margin-bottom: 25px;
}

.legend a {
  color: black;
}


.md-typeset h1 {
  margin-left: 10px;
  font-weight: bold;
  color: orange;
}

.md-typeset h2 {
  margin-left: 15px;
  font-weight: bold;
}

.md-typeset h3 {
  margin-left: 20px;
  font-weight: bold;
}


.button-icon img {
  top: 10px;
}

.quarter-width {
  width: 24%;
}

.half-width {
  width: 49%;
}


.md-content__inner {
  position: relative;
}

.md-tag {
  height: 20px;
}


@media (min-width: 960px) {
  .info-card {
    position: absolute;
    right: -260px;
    top: 0px;
    text-align: left;
    padding-top: 3px;
    padding-bottom: 3px;
    padding-right: 10px;
    padding-left: 10px;
    margin-right: 0px;
    width: 240px;
  }

}

.day-page-table-area {
  margin-top: -20px;
}

@media (pointer:none), (pointer:coarse) {
  .day-page-table-area {
    margin-top: -35px;
  }

  .day-page-nav-area {
    margin-top: -30px;
  }
}

.center {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.long-data {
  display: block;
  margin: 0 auto;
  padding-left: 0px;/*3px;*/
  text-align: center;
  padding-right: 2px;
}

.long-data.minor-workout-list {
  font-size: 9pt;
  display: block;
  position: absolute;
  text-align: center;
  padding-left: 0px;
  margin-bottom: 2px;
  width: 100%;
  bottom: 2px;
  padding-right: 2px;
}

.long-data.long-data.minor-workout-list a {
  color: rgb(243, 189, 114);
}

.auto-width {
  width: auto;
}



.full-width {
  width: 100%;
}

.md-button.full-width {
  width: 100%;
  text-align: center;
}

.md-button.end {
  float: right;
}

.md-button.thin-button {
  height: 25px;
  padding-top: 0%;
  padding-bottom: 0%;
  font-size: small;
}

.md-button.md-button--disabled {
  color:rgba(128, 128, 128, 0.311);
  pointer-events: none;
}

.md-button.md-button--primary.md-button--disabled {
  background-color:rgba(232, 172, 137, 0.263);
  border-color: rgba(232, 172, 137, 0.263);
  pointer-events: none;
}


section.day-page-table-area .md-typeset__scrollwrap {
  margin-bottom: 0px;
  margin-top: 0px;
}

p:has(.footnote) {
  margin-top: -2em;
  text-wrap-mode: nowrap;
}

tr.sub-nutrient {
  height: 4px;
}

tr.sub-nutrient td {
  font-size: 7.5pt;
  background-color: #F0F0F0;
}


.calendar.day .pain-indicator p {
  margin: 0px;
  padding: 0px;
  color: red;
}


.filter-banner {
  position: fixed;
  left: 0px;
  right: 0px;
  height: 50px;
  background-color: var(--md-primary-fg-color);
  bottom: 0px;
  z-index: 1;
  justify-content: center;
  align-items: center;
  display: flex;
  border-top-color: var(--md-primary-fg-color--dark);
  border-top-width: 2px;
  border-top-style: solid;
  color: white;
  font-weight: bold;
}

.filter-banner select {
  margin-left: 0.6em;
}



.filter-banner .calendarSelector {
  left: auto;
  right: auto;
  position: absolute;
}

body.program-filter-plan .shown-with-plan {
  display: unset;
}

body.program-filter-actual .shown-with-actual {
  display: unset;
}

body.program-filter-intensity .shown-with-intensity {
  display: unset;
}

body:not(.program-filter-plan) .shown-with-plan {
  display: none;
}

body:not(.program-filter-actual) .shown-with-actual {
  display: none;
}

body:not(.program-filter-intensity) .shown-with-intensity {
  display: none;
}

body.program-filter-plan .hidden-by-plan {
  display: none;
}

body.program-filter-actual .hidden-by-actual {
  display: none;
}

body.program-filter-intensity .hidden-by-intensity {
  display: none;
}

body:not(.program-filter-plan) .hidden-by-plan {
  display: unset;
}

body:not(.program-filter-actual) .hidden-by-actual {
  display: unset;
}

body:not(.program-filter-intensity) .hidden-by-intensity {
  display: unset;
}



