/* The same ink, quiet green, and type as the rest of the site. */
.writing-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; margin-bottom: 1rem; }
.writing-heading .index-label { margin: 0; }
.writing-archive-link { flex: none; padding: 0.5rem 0; color: var(--accent); font: 400 0.75rem/1.7 var(--font-label); }
.writing-items { padding: 0; margin: 0; list-style: none; }
.writing-items[hidden], .writing-message[hidden], [data-writing-reader][hidden], [data-writing-archive-heading][hidden], [data-writing-back][hidden] { display: none; }
.writing-preview-row { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 14rem), 1fr)); gap: 0.8rem; }
.writing-preview-item { display: flex; min-width: 0; }
.post-card { display: flex; width: 100%; border: 1px solid var(--line); background: var(--panel); }
.post-card-link { display: flex; flex-direction: column; width: 100%; min-width: 0; padding: 1rem; color: var(--text); text-decoration: none; }
.post-card-link:hover, .post-card-link:focus-visible { background: var(--bg); }
.post-card:focus-within { border-color: var(--accent); }
.post-meta { display: flex; flex-wrap: wrap; gap: 0.3rem 0.75rem; align-items: baseline; color: var(--muted); font: 400 0.65rem/1.7 var(--font-label); }
.post-source { color: var(--accent); }
.post-card-link .post-title { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font: 500 0.95rem/1.5 var(--font-body); letter-spacing: -0.015em; margin: 0.85rem 0 0.6rem; overflow-wrap: anywhere; }
.post-excerpt { margin: 0; color: var(--muted); font-size: 0.86rem; line-height: 1.65; overflow-wrap: anywhere; }
.post-card .post-excerpt { display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden; }
.post-read { display: block; color: var(--accent); font: 400 0.68rem/1.7 var(--font-label); margin-top: auto; padding-top: 1.1rem; }
.writing-message { margin: 0; color: var(--muted); font: 400 0.85rem/1.8 var(--font-label); }
.writing-message a { color: var(--accent); }
.writing-archive { padding: var(--space-lg) 0 var(--space-xl); min-height: 60vh; }
.writing-archive-intro { margin-bottom: 2.4rem; }
.writing-archive-intro h1 { font-size: 1.45rem; margin: 0 0 0.8rem; }
.writing-archive-intro p { color: var(--muted); font-size: 0.95rem; margin: 0; }
.writing-archive-back { display: inline-flex; align-items: center; min-height: 44px; margin: 0 0 1.6rem; color: var(--accent); font: 400 0.78rem/1.7 var(--font-label); }
.writing-entry { border-top: 1px solid var(--line); }
.writing-entry-link { display: block; padding: 1.5rem 0; text-decoration: none; }
.writing-entry-link:hover .post-title { color: var(--accent); }
.writing-entry .post-title { font: 500 1.15rem/1.5 var(--font-body); margin: 0.65rem 0; overflow-wrap: anywhere; }
.writing-entry .post-excerpt { max-width: 70ch; display: -webkit-box; -webkit-line-clamp: 5; -webkit-box-orient: vertical; overflow: hidden; font-size: 0.95rem; }
.writing-entry .post-read { padding-top: 0.8rem; }
.blog-post-title { max-width: 38ch; font: 500 clamp(1.4rem, 4vw, 2rem)/1.4 var(--font-body); margin: 0.9rem 0 2rem; }
.blog-post-body { max-width: 68ch; color: var(--text); font: 400 1rem/1.85 var(--font-body); overflow-wrap: anywhere; }
.blog-post-body p { margin: 0 0 1.25rem; white-space: pre-wrap; }
@media (max-width: 700px) {
  .writing-preview-row { display: flex; overflow-x: auto; overscroll-behavior-inline: contain; scroll-snap-type: x proximity; gap: 0.8rem; padding: 0.3rem 0 0.85rem; scrollbar-color: var(--line) var(--bg); scrollbar-width: thin; }
  .writing-preview-item { flex: 0 0 83%; scroll-snap-align: start; }
  .post-card-link { padding: 1.1rem; }
  .post-card-link .post-title { font-size: 1rem; }
  .post-meta { font-size: 0.68rem; }
  .writing-archive { padding-top: var(--space-md); }
}
@media (forced-colors: active) {
  .post-card { border-color: CanvasText; }
  .post-source { color: LinkText; }
}
