/* v3.5.14 — fully visible icon panorama and space-efficient workout logging. */

/* Deliberate full-opacity preview: the source artwork has NO dark gradient,
   opacity reduction, or backdrop blur. We can reintroduce subtler readability
   treatment after Christopher judges the real image on his devices. */
body.kkSubpage {
  background: var(--kk-subpage-art, url("art/training.webp")) center center / cover no-repeat fixed !important;
}
body.kkSubpage .shell > .kkRouteActive {
  background: transparent !important;
  background-image: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  text-shadow: 0 1px 3px rgba(0, 0, 0, .8);
}
body.kkSubpage .shell > .kkRouteActive.modulecontent::before,
body.kkSubpage .shell > .kkRouteActive::before {
  display: none !important;
  background: none !important;
}
/* No dark wash in the current-race or utility backgrounds either. */
.kkRacePage {
  background-image: var(--kk-race-page-art, url("art/races/imca-journey.webp")) !important;
}
.kkRacePageInner { background: transparent !important; text-shadow: 0 1px 3px #000c; }
#athleteProfilePanel:not(.hide) { background-image: url("art/training.webp") !important; }
#kkUtilityPanel[data-mode="Ideas"] { background-image: url("art/ask.webp") !important; }
#kkUtilityPanel[data-mode="Examples"] { background-image: url("art/missions.webp") !important; }
#kkUtilityPanel[data-mode="Settings"] { background-image: url("art/finances.webp") !important; }

/* Keep workout controls to their intrinsic widths; wrap naturally on narrow
   screens, rather than stretching every input across half or a whole panel. */
#workoutForm {
  gap: 12px !important;
  max-width: 100%;
}
#workoutForm .workoutFields {
  display: flex;
  align-items: flex-end;
  flex-wrap: wrap;
  gap: 12px 19px;
  max-width: 100%;
}
#workoutForm .workoutField,
#workoutForm .workoutTimePart {
  display: flex;
  flex-direction: column;
  flex: 0 0 auto;
  align-items: flex-start;
  gap: 4px;
  margin: 0 !important;
  font-size: 12px;
  line-height: 1.25;
}
#workoutForm #workoutCustomField[hidden] { display: none !important; }
#workoutForm .workoutField > input,
#workoutForm .workoutField > select,
#workoutForm .workoutTimePart > input {
  display: block;
  margin: 0 !important;
  height: 35px !important;
  min-height: 0 !important;
  padding: 4px 4px 5px 2px !important;
  box-sizing: border-box !important;
  line-height: 1.25 !important;
}
#workoutForm #workoutDateInput {
  width: 173px !important;
  max-width: 100%;
}
#workoutForm #workoutType {
  width: 102px;
  max-width: 230px !important;
  padding-right: 18px !important;
}
#workoutForm #workoutCustomActivity {
  width: min(270px, 78vw) !important;
  max-width: 100% !important;
}
#workoutForm .workoutDuration {
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  min-width: 0;
}
#workoutForm .workoutDuration legend {
  padding: 0 0 4px;
  font-size: 12px;
  color: #dcf1ff;
}
#workoutForm .workoutDurationParts {
  display: flex;
  align-items: flex-end;
  gap: 9px;
}
#workoutForm .workoutTimePart { gap: 1px; }
#workoutForm #workoutHours,
#workoutForm #workoutMinutePart { width: 63px !important; }
#workoutForm #workoutMiles { width: 99px !important; }
#workoutForm #workoutRpe { width: 65px !important; }
#workoutForm #workoutSource { width: 183px !important; }
#workoutForm .workoutNotesField {
  display: block;
  width: min(620px, 100%);
  margin: 3px 0 0 !important;
}
#workoutForm #workoutNotes {
  display: block;
  width: 100% !important;
  height: 59px;
  min-height: 48px !important;
  margin-top: 4px !important;
  padding: 6px 2px !important;
  resize: vertical;
}
#workoutForm .rowcheck {
  margin: 0 !important;
}
#workoutForm .workoutEntryActions {
  gap: 18px;
  padding-top: 0;
}
#workoutForm #editWorkoutHint:empty { display: none; }
@media (max-width: 700px) {
  body.kkSubpage {
    background-attachment: scroll !important;
  }
  #workoutForm .workoutFields { gap: 13px 14px; }
}
