/* S04 다이어리 — semantic 토큰만, .dy- 접두사만 (mockup/screens-more.css 다이어리 블록 기준) */
.dy-stack { display: grid; gap: var(--stack-gap); }
.dy-num { font-variant-numeric: tabular-nums; margin: 0; }

.dy-weeknav { display: grid; grid-template-columns: var(--touch-min) 1fr var(--touch-min); align-items: center; text-align: center; }
.dy-weeknav__label { font-size: var(--font-size-lg); font-weight: var(--font-weight-bold); font-variant-numeric: tabular-nums; }

.dy-strip { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: var(--space-1); }
.dy-day {
  display: grid; justify-items: center; gap: 2px; min-height: 60px; padding: var(--space-1) 0;
  border: var(--border-width) solid transparent; border-radius: var(--radius-md); background: none; color: var(--color-text);
  font: inherit; font-size: var(--font-size-2xs); font-variant-numeric: tabular-nums;
  -webkit-tap-highlight-color: transparent;
}
.dy-day b { font-size: var(--font-size-md); }
.dy-day:active { transform: scale(0.96); }
.dy-day[aria-pressed="true"] { background: var(--color-primary-soft); border-color: var(--color-primary); color: var(--color-primary-text); }
.dy-day:disabled { color: var(--color-text-disabled); }
.dy-day__dot { width: 6px; height: 6px; border-radius: var(--radius-pill); background: var(--color-primary); }
.dy-day__dot--none { background: transparent; }

.dy-moods { display: flex; justify-content: space-between; gap: var(--space-2); }
.dy-mood {
  width: var(--touch-min); height: var(--touch-min); border-radius: var(--radius-pill);
  border: var(--border-width-strong) solid transparent; background: var(--color-surface); box-shadow: var(--shadow-1);
  font-size: 24px; line-height: 1; -webkit-tap-highlight-color: transparent;
}
.dy-mood:active { transform: scale(0.92); }
.dy-mood[aria-pressed="true"] { background: var(--color-primary-soft); border-color: var(--color-primary); }

@media (prefers-reduced-motion: reduce) { .dy-day:active, .dy-mood:active { transform: none; } }
