/* Meditative Humanities · standalone app typography harmonization */

:root {
  --font-zh: "Noto Serif TC", Georgia, serif;
  --font-en: "EB Garamond", Georgia, serif;
}

body {
  font-size: var(--t-base);
  line-height: 1.75;
}

/* Page hierarchy */
.page-title,
.title-zh,
.intro-title,
.con-title,
.home-title .main,
h1 {
  font-size: var(--t-h1);
  line-height: 1.35;
}

.page-sub,
.title-en,
.intro-eyebrow,
.con-sub,
.home-title .sub {
  font-size: var(--t-sm);
}

h2,
.step-title,
.med-title,
.mod-title,
.section-title {
  font-size: var(--t-h2);
  line-height: 1.4;
}

/* Body & instructions */
.body-text,
.intro-p,
.step-body,
.med-prompt,
.med-intro-text,
.card p,
.card-p,
.mode-desc,
.core-sentence,
.gloss-def {
  font-size: var(--t-base);
  line-height: 1.75;
}

/* Bilingual EN pair — same tier, slightly smaller italic */
.text-en,
.title-en,
.page-title-en,
.layer-desc-en,
.edu-action-en,
.care-question-en,
.gbsd-desc-en,
.fi-title-en,
.bi-en,
.tc-en,
.guilt-en,
.recall-qen,
.rqen,
.koan-en,
.en-s,
.en-p .zh-s,
body.en .zh-s {
  font-size: var(--t-en);
  font-style: italic;
  line-height: 1.55;
}

/* Labels, tags, meta */
.tag,
.tag-label,
.page-label,
.label,
.mod-num,
.med-phase,
.guilt-head,
.t-name,
.act-label,
.app-title {
  font-size: var(--t-xs);
}

/* Buttons & nav */
.btn,
.btn-main,
.btn-next,
.btn-ghost,
.btn-muted,
.btn-nav-back,
.btn-nav-proceed,
.btn-nav-always {
  font-size: var(--t-sm);
}

/* Small UI */
.quote cite,
.guilt-head,
.timer-label,
.input-label,
.profile-key {
  font-size: var(--t-xs);
}

/* Timers — decorative, not body text */
#med-timer,
#fish-timer,
.phase-clock-num,
.timer-num {
  font-size: var(--t-timer);
}

textarea,
.field-input,
.tpart-inp {
  font-size: var(--t-base);
  line-height: 1.85;
}

@media (max-width: 480px) {
  textarea,
  .field-input,
  .tpart-inp {
    font-size: max(var(--t-base), 16px);
  }
}
