.te-diary-caption, .te-diary-card-note { color: var(--color-muted, #8f8b89); font-size: .76rem; line-height: 1.65; }
.te-diary-card-note { letter-spacing: .055em; margin: .35rem 0; }
.te-diary-moods { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: .45rem; }
.te-diary-mood { position: relative; display: flex; min-height: 66px; align-items: center; justify-content: center; flex-direction: column; gap: .2rem; border: 1px solid transparent; border-radius: 15px; background: transparent; color: #85817f; font: inherit; font-size: .72rem; cursor: pointer; }
.te-diary-mood__symbol { font-size: 1.65rem; color: var(--diary-mood); line-height: 1.3; }
.te-diary-mood[aria-pressed="true"] { border-color: var(--diary-mood); background: color-mix(in srgb, var(--diary-mood) 10%, transparent); }
.te-diary-mood__rank { position: absolute; right: .35rem; top: .2rem; color: var(--diary-mood); font-size: .6rem; }
.te-diary-seal-presets, .te-diary-segments { display: flex; gap: .35rem; flex-wrap: wrap; }
.te-diary-seal-presets button { border-radius: 16px; background: rgba(255,255,255,.48); padding: .45rem .7rem; }
.te-diary-seal-card { margin: 1rem 0; padding: 2rem 1rem; border: 1px solid rgba(255,255,255,.8); border-radius: 26px; text-align: center; background: linear-gradient(150deg,rgba(255,255,255,.52),rgba(224,219,212,.2)); box-shadow: inset 0 1px 0 #fff, 0 14px 40px rgba(81,70,68,.04); }
.te-diary-seal-card__symbol { display: grid; place-items: center; width: 100px; height: 100px; border-radius: 50%; margin: .5rem auto 1.5rem; font-size: 2.8rem; color: #77716d; background: radial-gradient(circle,rgba(244,241,234,.7),rgba(233,229,222,.13)); border: 1px solid rgba(226,219,208,.4); }
.te-diary-seal-card__title { font-family: var(--font-serif, serif); font-size: 1.25rem; letter-spacing: .06em; line-height: 1.8; }
.te-diary-countdown { font-family: var(--font-serif, serif); font-size: clamp(1.7rem, 8vw, 2.6rem); font-variant-numeric: tabular-nums; letter-spacing: .06em; margin: 1.4rem 0 .2rem; }
.te-diary-overview__toolbar { display: flex; align-items: center; justify-content: center; gap: 1rem; margin: .8rem 0 1rem; }
.te-diary-year { font: 3rem var(--font-serif, serif); font-variant-numeric: tabular-nums; }
.te-diary-segments { justify-content: center; padding: .15rem; margin: .7rem auto; width: fit-content; border-radius: 20px; background: rgba(221,216,208,.24); }
.te-diary-segments button { border-radius: 18px; padding: .45rem 1rem; }
.te-diary-segments button[aria-pressed="true"] { color: #655b57; background: rgba(255,255,255,.8); box-shadow: 0 2px 10px rgba(82,67,64,.06); }
.te-diary-calendar { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .65rem; }
.te-diary-month { padding: .65rem; border: 1px solid rgba(255,255,255,.66); background: rgba(236,232,225,.38); border-radius: 17px; }
.te-diary-month h3 { font-size: .75rem; font-weight: 500; margin: 0 0 .6rem; letter-spacing: .08em; color: #918880; }
.te-diary-month__days { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: .14rem; }
.te-diary-day { display: grid; place-items: center; width: 100%; aspect-ratio: 1; min-height: 19px; border: 0; border-radius: 5px; color: #9d9690; background: rgba(255,255,255,.14); font-size: .55rem; padding: 0; font-variant-numeric: tabular-nums; }
.te-diary-day[data-filled="true"] { color: #fff; background: #b6aea1; cursor: pointer; box-shadow: inset 0 1px 0 rgba(255,255,255,.25); }
.te-diary-mood-stat { border: 1px solid rgba(255,255,255,.66); border-radius: 17px; padding: .9rem; margin: .65rem 0; background: rgba(249,247,242,.62); }
.te-diary-mood-stat__line { display: flex; justify-content: space-between; gap: .5rem; align-items: center; font-size: .8rem; }
.te-diary-mood-stat__line strong { color: var(--diary-mood); font-weight: 500; }
.te-diary-mood-stat__track { height: 4px; border-radius: 3px; background: rgba(196,187,174,.19); margin: .65rem 0; overflow: hidden; }
.te-diary-mood-stat__track span { display: block; height: 100%; border-radius: inherit; background: var(--diary-mood); }
.te-diary-mood-stat small { color: #a29892; font-size: .68rem; }
@media (min-width: 520px) { .te-diary-calendar { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (prefers-reduced-motion: reduce) { .te-diary-seal-card * { animation: none; } }
