/* chasewang.me — page layouts on top of the shared cw-system (assets/cw/). No new colours or type sizes here:
   everything comes from cw tokens so the two sites stay one system. */

.nowrap { white-space: nowrap; }

/* ── Home ── */
.home-hero { padding-top: clamp(3rem, 1.5rem + 6vw, 7.5rem); }
.home-hero-inner {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  column-gap: var(--col-gap);
  row-gap: var(--sp-6);
  align-items: start;
}
.home-name { grid-column: 1 / span 6; }
.home-statement { grid-column: 7 / span 6; padding-top: 0.55rem; }
.home-lede { max-width: 22em; }
.home-intro { margin-top: var(--sp-5); max-width: 34em; }
.home-index {
  grid-column: 1 / -1;
  margin-top: clamp(1.5rem, 1rem + 2vw, 3rem);
  border-top: var(--bw) solid var(--line);
}
.home-index ul {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  column-gap: var(--col-gap);
  margin: 0;
  padding: 0;
  list-style: none;
}
.home-index a {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: var(--sp-3);
  padding-block: var(--sp-4);
  color: var(--text);
  font-size: var(--fs-small);
  font-weight: 500;
  text-decoration: none;
}
.home-index a:lang(zh) { font-weight: 400; }
.home-index a:hover { color: var(--accent); }
.home-index .cw-num { font-family: var(--font-mono); font-size: var(--fs-meta); font-weight: 400; color: var(--text-muted); }
.home-index a:hover .cw-num { color: inherit; }
@media (max-width: 56rem) {
  .home-name, .home-statement { grid-column: 1 / -1; }
  .home-statement { padding-top: 0; }
}
@media (max-width: 40rem) {
  .home-hero-inner { row-gap: var(--sp-5); }
  .home-index ul { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-index li:nth-child(n + 3) a { border-top: var(--bw) solid var(--line); }
}

/* ── Writing ── */
.writing-head .cw-lede { margin-top: var(--sp-4); }
.writing-controls {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: var(--sp-4) var(--sp-6);
  margin-top: var(--sp-6);
}
.writing-jump ul { display: flex; flex-wrap: wrap; gap: var(--sp-2) var(--sp-6); margin: 0; padding: 0; list-style: none; }
.writing-jump a { color: var(--text); font-size: var(--fs-small); font-weight: 500; text-decoration: none; }
.writing-jump a:lang(zh) { font-weight: 400; }
.writing-jump a:hover { color: var(--accent); text-decoration: underline; }
.writing-jump .cw-num { margin-left: 0.35em; font-family: var(--font-mono); font-size: var(--fs-meta); font-weight: 400; color: var(--text-muted); }
.writing-filter { display: flex; align-items: center; gap: var(--sp-3); }
.writing-filter-label { font-family: var(--font-mono); font-size: var(--fs-meta); color: var(--text-muted); }
.writing-head { padding-bottom: var(--sp-5); }
.writing-section:first-of-type { margin-top: var(--sp-6); }
.writing-empty {
  padding-block: var(--sp-5);
  border-top: var(--bw) solid var(--line);
  color: var(--text-muted);
  font-family: var(--font-mono);
  font-size: var(--fs-meta);
}
.writing-feed { margin-top: var(--sp-7); font-size: var(--fs-small); color: var(--text-2); }

/* ── Work ── */
.work-lede { margin-top: var(--sp-4); }
.work-more { margin-top: var(--sp-5); padding-top: var(--sp-4); border-top: var(--bw) solid var(--line); font-size: var(--fs-small); }
.work-note { margin-top: var(--sp-7); }

/* ── About ── */
.about-title { margin-top: var(--sp-3); }
/* Lede and the sentence under it read as one block in one measure (same rhythm as the home statement). */
.about-intro { max-width: 44rem; }
.about-intro .cw-body-copy { margin-top: var(--sp-5); }
.about-directions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  column-gap: var(--col-gap);
  margin: 0;
  padding: 0;
  list-style: none;
}
.about-directions li { padding-block: var(--sp-5); border-top: var(--bw) solid var(--line); }
.about-directions a { display: block; color: var(--text); text-decoration: none; }
.about-directions a:hover { color: var(--accent); }
.about-directions strong {
  display: block;
  margin-top: var(--sp-2);
  font-size: var(--fs-h3);
  font-weight: 600;
  line-height: var(--lh-snug);
  letter-spacing: var(--tr-title);
}
.about-thesis {
  margin-top: var(--sp-6);
  font-size: var(--fs-lede);
  line-height: 1.35;
  letter-spacing: -0.01em;
  color: var(--text-2);
}
.about-close { margin-top: var(--sp-8); font-size: var(--fs-lede); line-height: 1.35; letter-spacing: -0.01em; }
.about-close:lang(zh) { letter-spacing: 0; }
@media (max-width: 40rem) {
  .about-directions { grid-template-columns: 1fr; }
}

/* ── Reading pages ── */
.cw-article-more { margin-top: var(--sp-5); font-size: var(--fs-small); }
.cw-article-foot-inner p + p { margin-top: 0; }
.paper-article-copy { color: var(--text-muted); font-family: var(--font-mono); font-size: var(--fs-micro); }
