/* ===== Habits ===== */
.habit-list { display: flex; flex-direction: column; gap: var(--toddyi-size-1rem); }
.habit-card {
  margin: 0; padding: var(--toddyi-size-1rem); box-shadow: var(--toddyi-card-shadow);
  border-inline-start: var(--toddyi-size-4px) solid var(--habit-color, var(--pico-primary));
}
.habit-card__header { display: flex; justify-content: space-between; align-items: center; }
.habit-streak { font-size: var(--toddyi-size-0-85rem); color: var(--pico-muted-color); margin-inline-start: var(--toddyi-size-0-5rem); }
.habit-days { display: flex; gap: var(--toddyi-size-0-4rem); margin-top: var(--toddyi-size-0-75rem); flex-wrap: wrap; }
.habit-day {
  display: flex; flex-direction: column; align-items: center;
  width: var(--toddyi-size-3rem); padding: var(--toddyi-size-0-4rem) 0; margin: 0; border-radius: var(--toddyi-size-0-5rem);
  background: var(--pico-secondary-background); color: var(--pico-color);
  border: var(--toddyi-size-1px) solid var(--pico-muted-border-color); cursor: pointer; line-height: 1.2;
}
.habit-day.is-done { background: var(--habit-color, var(--pico-primary)); color: var(--toddyi-text-on-dark); border-color: transparent; }
.habit-day.is-today { outline: var(--toddyi-size-2px) solid var(--pico-primary); }
.habit-day__dow { font-size: var(--toddyi-size-0-65rem); opacity: 0.8; }
.habit-day__num { font-size: var(--toddyi-size-0-95rem); font-weight: 700; }

/* Habit detail: stats + month heatmap (#117/#124) */
.habit-stats { display: flex; gap: var(--toddyi-size-1rem); flex-wrap: wrap; margin: var(--toddyi-size-1rem) 0; }
.habit-stat {
  flex: 1 1 var(--toddyi-size-8rem); text-align: center; padding: var(--toddyi-size-1rem);
  border: var(--toddyi-size-1px) solid var(--pico-muted-border-color);
  border-radius: var(--toddyi-size-0-5rem); background: var(--pico-card-background-color);
}
.habit-stat__num { font-size: var(--toddyi-size-1-8rem); font-weight: 800; color: var(--habit-color, var(--pico-primary)); }
.habit-stat__label { font-size: var(--toddyi-size-0-8rem); color: var(--pico-muted-color); }
.habit-heatmap { display: grid; grid-template-columns: repeat(7, 1fr); gap: var(--toddyi-size-0-4rem); max-width: var(--toddyi-size-24rem); }
.habit-heatmap__dow { text-align: center; font-size: var(--toddyi-size-0-7rem); color: var(--pico-muted-color); }
.habit-heatmap__cell {
  aspect-ratio: 1; display: flex; align-items: center; justify-content: center;
  border-radius: var(--toddyi-size-0-4rem); font-size: var(--toddyi-size-0-8rem);
  background: var(--pico-secondary-background); border: var(--toddyi-size-1px) solid var(--pico-muted-border-color);
}
.habit-heatmap__cell.is-done { background: var(--habit-color, var(--pico-primary)); color: var(--toddyi-text-on-dark); border-color: transparent; }
.habit-heatmap__cell.is-today { outline: var(--toddyi-size-2px) solid var(--pico-primary); }
.habit-heatmap__cell.is-blank { background: transparent; border-color: transparent; }

