/* Songti chapters, clear UI text, and restrained rounded short content. */
@font-face {
  font-family: "Life English";
  src: url("vendor/fonts/english/eb-garamond-500.woff2") format("woff2");
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  unicode-range: U+0000-00FF,U+2000-206F,U+2190-21FF;
}
@font-face {
  font-family: "Life English";
  src: url("vendor/fonts/english/eb-garamond-600.woff2") format("woff2");
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  unicode-range: U+0000-00FF,U+2000-206F,U+2190-21FF;
}
:root {
  --font-ui: -apple-system,BlinkMacSystemFont,"PingFang SC","Segoe UI",sans-serif;
  --font: var(--font-ui);
  --font-rounded: "Life Rounded","Yuanti SC",var(--font-ui);
  --font-letter: "Life Songti","Songti SC","STSong","Life Chinese",Georgia,serif;
}
/* Keep existing sizes and spacing; the face alone provides the softer edge. */
#screen :is(h1,h2,h3),
.info-content h2,
.life-index-name,
.life-detail-lens h2,
.life-detail-lens .life-lens-section h3 {
  font-family: var(--font-rounded);
  font-weight: 500;
}
/* The year keeps its original Georgia display numerals. */
#screen .life-year-title {
  font-family: var(--font-display);
  font-weight: 400;
}
:is(.life-week-page,.life-detail-time,.life-detail-review,.life-week-picker,
    .life-overview-index,.life-detail-lens) {
  --life-font-soft: var(--font-rounded);
}
#screen :is(.life-week-story h3,.life-week-discovery h3,.life-example-story>strong,
  .life-example-chapter>strong,.life-thread-copy>strong) {
  font-family: var(--font-rounded);
  font-weight: 500;
}
/* Life reads as chapters: section titles share one quiet Songti hierarchy. */
#screen .life-week-page .life-section-heading h2,
#screen .life-overview-index .life-section-heading h2 {
  font-family: var(--font-letter);
  font-size: 21px;
  font-weight: 600;
  font-synthesis: none;
  line-height: 1.6;
  letter-spacing: .015em;
  text-wrap: balance;
}
#screen .life-week-page .life-lights-heading h2 {
  font-family: var(--font-letter);
  font-size: 22px;
  font-weight: 600;
  font-synthesis: none;
  line-height: 1.6;
  text-wrap: balance;
}
.life-index-name {
  font-family: var(--font-letter);
  font-weight: 500;
  font-synthesis: none;
  text-wrap: balance;
}
.life-detail-lens h2,
.life-detail-time h2,
.life-detail-review h2 {
  font-family: var(--font-letter);
  font-weight: 600;
  font-synthesis: none;
  text-wrap: balance;
}
.life-detail-lens .life-lens-section h3 {
  font-family: var(--font-letter);
  font-weight: 600;
  font-synthesis: none;
  text-wrap: balance;
}
/* Story titles support the chapter heading rather than competing with it. */
#screen :is(.life-week-story h3,.life-week-discovery h3,
  .life-example-story>strong,.life-example-chapter>strong,.life-thread-copy>strong) {
  font-family: var(--font-letter);
  font-size: 17px;
  font-weight: 600;
  font-synthesis: none;
  line-height: 1.8;
  text-wrap: pretty;
}
/* An opening reflection is readable prose, not a second display headline. */
/* Phone titles need a clearer stroke at their smaller physical size. */
@media (max-width: 600px) {
  #screen .life-week-page .life-section-heading h2,
  #screen .life-overview-index .life-section-heading h2,
  #screen .life-week-page .life-lights-heading h2,
  #screen :is(.life-week-story h3,.life-week-discovery h3,
    .life-example-story>strong,.life-example-chapter>strong,.life-thread-copy>strong),
  .life-detail-lens h2,
  .life-detail-time h2,
  .life-detail-review h2,
  .life-detail-lens .life-lens-section h3 {
    font-weight: 700;
  }
  .life-index-name { font-weight: 600; }
}
#screen .life-example-chapter-headline {
  font-family: var(--font-rounded);
  font-size: 18px;
  font-weight: 700;
  font-synthesis: none;
  line-height: 1.9;
  letter-spacing: .01em;
  padding-inline: 19px;
  text-wrap: pretty;
  color: var(--spirit-ink, #30425f);
  color: color-mix(in srgb, var(--spirit-accent, #6283a8) 70%, var(--spirit-ink, #30425f));
}
@media (max-width: 360px) {
  #screen .life-example-chapter-headline { padding-inline: 16px; }
}
#screen :is(.home-now-card p,.home-editorial .task-copy,.life-week-event strong,
  .life-change-row strong,.life-progress-path>strong,.life-day-interval strong,
  .life-day-event>span,.life-period-record-group>summary,.life-period-record strong,
  .life-year-month strong),
.life-detail-lens .life-lens-row strong {
  font-family: var(--font-rounded);
  font-weight: 400;
}
/* Ordinary conversation and explanations stay light enough for long reading. */
body[data-page="chat"] .message-text,
#messageInput,
#screen :is(.life-week-story>p,.life-week-discovery>p,.life-example-story>p,
  .life-example-chapter>p,.life-week-review-open .life-review-line),
.life-review-document p,
.life-detail-lens .life-lens-question {
  font-family: var(--font-ui);
  font-weight: 400;
}
/* User words and Light retain the slower, book-like voice of Songti. */
.home-parallel :is(blockquote,.moment-echo),
.journal-original,.card-original,.card-first-line,
.card-letter>span:last-child,.journal-letter p,
.detail-text,
.life-light-quote,.life-period-light strong,
.life-week-light :is(p,strong,blockquote),
.life-review-user-note pre,
.life-detail-lens [data-lens-section="traces"] .life-lens-row strong {
  font-family: var(--font-letter);
  font-weight: 400;
}
/* English structure labels and clocks retain their established shape. */
#screen .home-section-head h2 {
  font-family: var(--font-ui);
  font-weight: 600;
}
.home-now-clock,.task-time,
.finance-flow>strong,.finance-totals b,.finance-record strong,
.finance-balance button {
  font-family: var(--font-ui);
  font-variant-numeric: tabular-nums;
}
/* A book-like English voice for Today; Chinese prose and clocks keep theirs. */
body[data-page="today"] {
  --font-home-english: "Life English",Georgia,var(--font-ui);
}
body[data-page="today"] .wordmark {
  font-family: var(--font-home-english);
  font-size: 28px;
  font-weight: 500;
  font-synthesis: none;
  line-height: 1.2;
  letter-spacing: -.015em;
}
body[data-page="today"] .wordmark::after {
  font-family: var(--font-home-english);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: .15em;
}
body[data-page="today"] #screen .home-section-head h2 {
  font-family: var(--font-home-english);
  font-size: 19px;
  font-weight: 600;
  font-synthesis: none;
  line-height: 1.35;
  letter-spacing: .055em;
}
body[data-page="today"] #screen .week-time-overview .week-heading h2 {
  font-family: var(--font-home-english);
  font-size: 18px;
  font-weight: 600;
  font-synthesis: none;
  letter-spacing: .05em;
}
body[data-page="today"] .moment-label,
body[data-page="today"] .home-more summary {
  font-family: var(--font-home-english);
  font-size: 15px;
  font-weight: 500;
  font-synthesis: none;
  letter-spacing: .035em;
}
body[data-page="today"] .bottom-nav .nav-item {
  font-family: var(--font-home-english);
  font-size: 15px;
  font-weight: 500;
  font-synthesis: none;
}
