/* Archive page: a table of contents grouped by month. */
.story-missing-action { margin-top: 2rem; }
.archive-open { padding-bottom: clamp(3.5rem, 7vw, 6rem); }
.archive-open .story-names { margin-top: 3rem; }

.archive { max-width: 1000px; margin: 0 auto; padding: clamp(3rem, 6vw, 5rem) var(--gutter) var(--section); }
.archive-month + .archive-month { margin-top: clamp(3rem, 6vw, 4.5rem); }
.archive-month-title { font-size: var(--t-lg); font-style: italic; color: var(--songket); margin-bottom: 1rem; }
.archive-list { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--mist); }
.archive-row { border-bottom: 1px solid var(--mist); }

.archive-link {
  display: grid; grid-template-columns: 88px minmax(0, 1fr) auto;
  align-items: center; gap: 1.5rem;
  padding: 1.25rem .5rem; text-decoration: none;
  transition: background-color .25s;
}
.archive-link:hover { background: #efe8ee; }
.archive-thumb .ph { aspect-ratio: 1 / 1; }
.archive-thumb .stamp, .archive-thumb .lace { --r: 4px; --s: 5px; }
.archive-text { display: grid; gap: .2rem; min-width: 0; }
.archive-date { font-size: var(--t-md); color: var(--songket); }
.archive-name { font-family: var(--f-display); font-size: var(--t-lg); line-height: 1.15; }
.archive-tagline { font-family: var(--f-display); font-style: italic; color: var(--ink-soft); max-width: 52ch; }
.archive-kind { font-size: var(--t-sm); color: var(--ink-soft); text-align: right; max-width: 14ch; }
.archive-link:hover .archive-name { color: var(--songket); }

@media (max-width: 620px) {
  .archive-link { grid-template-columns: 64px minmax(0, 1fr); gap: 1rem; }
  .archive-kind { grid-column: 2; text-align: left; max-width: none; }
}
