.archive-hero { padding: clamp(72px, 10vw, 132px) 0 58px; border-bottom: 1px solid var(--line); }
.archive-hero h1 { max-width: 980px; margin: 16px 0 24px; font-family: var(--font-heading, var(--font-sans)); font-size: clamp(54px, 8vw, 104px); font-weight: var(--heading-weight, 800); line-height: .9; letter-spacing: -.06em; text-transform: var(--heading-transform, none); }
.archive-hero > p { max-width: 760px; margin: 0; color: var(--muted); font-size: 18px; line-height: 1.65; }
.archive-span { display: grid; grid-template-columns: auto 1fr auto; gap: 18px; align-items: center; margin-top: 44px; color: var(--accent); font: 700 11px/1 var(--font-mono); }
.archive-span__rule { height: 1px; background: linear-gradient(90deg, var(--accent), var(--line), var(--accent)); opacity: .7; }
.archive-history { padding: 28px 0 88px; }
.archive-year { display: grid; grid-template-columns: 150px 1fr; gap: 28px; padding: 46px 0 24px; border-bottom: 1px solid var(--line); }
.archive-year__rail { position: relative; display: flex; align-items: flex-start; gap: 18px; }
.archive-year__number { position: sticky; top: 104px; color: var(--text); text-decoration: none; font: var(--heading-weight, 800) clamp(34px, 5vw, 54px)/.9 var(--font-heading, var(--font-sans)); letter-spacing: -.045em; text-transform: var(--heading-transform, none); }
.archive-year__number:hover, .archive-year__number:focus-visible { color: var(--accent); }
.archive-year__line { width: 1px; align-self: stretch; min-height: 140px; background: linear-gradient(var(--accent), var(--line)); opacity: .65; }
.archive-year__content { min-width: 0; }
.archive-month { margin: 0 0 10px; color: var(--accent); font: 700 10px/1.3 var(--font-mono); letter-spacing: .12em; text-transform: uppercase; }
.archive-month:not(:first-child) { margin-top: 34px; }
.archive-entry { display: grid; grid-template-columns: 92px 1fr auto; gap: 22px; align-items: start; padding: 16px 0; border-top: 1px solid color-mix(in srgb, var(--line) 72%, transparent); }
.archive-entry time { color: var(--muted); font: 11px/1.4 var(--font-mono); text-transform: uppercase; }
.archive-entry h2 { margin: 0; font-family: var(--font-heading, var(--font-sans)); font-size: clamp(20px, 2.6vw, 30px); font-weight: var(--heading-weight, 800); line-height: 1.05; letter-spacing: -.025em; text-transform: var(--heading-transform, none); }
.archive-entry h2 a { text-decoration: none; }
.archive-entry h2 a:hover, .archive-entry h2 a:focus-visible { color: var(--accent); }
.archive-entry p { margin: 7px 0 0; color: var(--muted); font: 10px/1.5 var(--font-mono); text-transform: uppercase; letter-spacing: .05em; }
.archive-entry > span { color: var(--accent); font-family: var(--font-mono); }
html[data-theme="midnight-editorial"] .archive-year { grid-template-columns: 180px 1fr; }
html[data-theme="midnight-editorial"] .archive-year__number { font-size: clamp(42px, 6vw, 64px); }
html[data-theme="warm-analog"] .archive-year__line { background: repeating-linear-gradient(to bottom, var(--accent) 0 6px, transparent 6px 11px); }
html[data-theme="technical-brutalism"] .archive-year, html[data-theme="technical-brutalism"] .archive-entry { border-width: 3px; }
html[data-theme="technical-brutalism"] .archive-span__rule { height: 3px; }
@media (max-width: 760px) {
  .archive-year { grid-template-columns: 1fr; gap: 14px; }
  .archive-year__rail { align-items: center; }
  .archive-year__number { position: static; }
  .archive-year__line { height: 1px; min-height: 0; flex: 1; }
  .archive-entry { grid-template-columns: 1fr auto; gap: 8px 16px; }
  .archive-entry time { grid-column: 1 / -1; }
  .archive-entry p { display: none; }
}
