/* Hulenoolja — small enhancements on top of Tailwind */

html { scroll-behavior: smooth; }

body {
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

/* selection */
::selection { background: #d1a060; color: #603732; }

/* day card */
.day-card {
  transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease, background .15s ease;
}
.day-card:hover { transform: translateY(-2px); }
.day-card.is-selected {
  background: #603732;
  color: #fff;
  border-color: #603732;
  box-shadow: 0 12px 30px -12px rgba(96,55,50,0.5);
}
.day-card.is-disabled {
  opacity: 0.35;
  pointer-events: none;
}

/* slot chip */
.slot-chip {
  transition: all .15s ease;
}
.slot-chip:hover:not(.is-disabled):not(.is-selected) {
  border-color: #9d6142;
  color: #603732;
}
.slot-chip.is-selected {
  background: #603732;
  color: #fff;
  border-color: #603732;
  box-shadow: 0 8px 20px -8px rgba(96,55,50,0.5);
}
.slot-chip.is-disabled {
  opacity: 0.35;
  text-decoration: line-through;
  pointer-events: none;
  background: #f3ead9;
}

/* item card */
.item-card {
  transition: all .15s ease;
}
.item-card.is-selected {
  border-color: #603732;
  background: #faf5ef;
  box-shadow: 0 0 0 3px rgba(96,55,50,0.12);
}
.item-card.is-selected .item-tag {
  background: #603732;
  color: #fff;
}

/* reserved tag */
.reserved-tag {
  background: linear-gradient(135deg, #603732 0%, #9d6142 100%);
}

/* progress bar */
#progressBar { transition: width .5s ease; }

/* hide step labels that aren't current */
[data-step-label] { color: rgba(96,55,50,0.45); }
[data-step-label].is-active { color: #603732; }

/* small details */
button:focus-visible, a:focus-visible, input:focus-visible, label:focus-visible {
  outline: 2px solid #9d6142;
  outline-offset: 2px;
  border-radius: 8px;
}

/* mobile tweaks */
@media (max-width: 640px) {
  .day-card .day-num { font-size: 1.75rem; }
}
