.btn.btn-soft {
  --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-content)) 15%, var(--color-base-100));
  --btn-border: color-mix(in oklab, var(--btn-color, var(--color-base-content)) 20%, var(--color-base-100));
}

.input:focus, .textarea:focus {
  outline: none;
  box-shadow: none;
}

@media (prefers-color-scheme: light) {
  .input,
  .textarea {
    background-color: var(--color-base-300);
  }
}

h1 { font-size: 1.875rem; line-height: 2.25rem; font-weight: 600; }
h2 { font-size: 1.5rem; line-height: 2rem; font-weight: 600; }
h3 { font-size: 1.25rem; line-height: 1.75rem; font-weight: 600; }
h4 { font-size: 1.125rem; line-height: 1.75rem; font-weight: 600; }

body:has(.bottom-nav) {
  /* Account for both search bar and nav bar */
  padding-bottom: 8.75rem;
}

h1 {
  font-weight: 600 !important;
}

/* Inclusively hidden (borrowed from the internet) */
.visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

summary {
  list-style: none;
}

summary::-webkit-details-marker {
  display: none;
}

details {
  cursor: pointer;
  border: 1px solid color-mix(in oklch, var(--color-base-content) 20%, transparent);
  border-radius: .5rem;
  padding: 0.5rem;
  margin: 0.5rem auto;
}

details>summary {
  padding: 0.5rem;
  padding-right: 0;
}

details[open]>summary {
  margin-bottom: 1rem;
}

details[open] {
  border-left: .2rem solid #F97316;
}

.dragging {
  opacity: 0.6;
  background-color: #f0f0f0;
}

.dragging :where(summary, .card) {
  opacity: 0.3;
}

.drag-handle:hover {
  cursor: grab;
}

.drag-handle {
  padding-left: 1rem;
}

.drag-handle>i {
  font-size: 1.2rem;
}

[data-sortable-accordion-target="handle"] {
  cursor: move;
}

[data-sortable-accordion-target="handle"] svg,
[data-sortable-accordion-target="handle"] i {
  pointer-events: none;
}

.exercise-log-volume-container {
  display: flex;
  justify-content: end;
  flex-basis: 100%;
  margin-bottom: 1.2rem;
}