/* Fresco only. Load after the shared archive styles; no script or new font. */
.heritage-fresco.timeline-edition {
  --timeline-ink: #234838;
  --timeline-muted: #565c43;
  --timeline-line: #b8a36e;
  --timeline-paper: #fffdf3;
  color: var(--timeline-ink);
  min-width: 0;
}
.timeline-edition :is(a, p, li, dd, h2, h3, strong) { overflow-wrap: anywhere; }
.timeline-edition :is([id], :target) { scroll-margin-top: 24px; }
.timeline-edition a { color: #285c43; text-underline-offset: .2em; }
.timeline-edition a:hover { text-decoration-thickness: 2px; }
.timeline-edition :focus-visible { outline: 3px solid #926922; outline-offset: 4px; }
.timeline-edition .timeline-intro {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
  padding: 8px 0 16px;
  border-bottom: 1px solid var(--timeline-line);
}
.timeline-edition .timeline-intro h2 {
  margin: 8px 0;
  font: normal clamp(26px, 3vw, 36px)/1.2 Georgia, serif;
  color: var(--timeline-ink);
}
.timeline-edition .timeline-intro p { margin: 6px 0; max-width: 68ch; }
.timeline-edition .timeline-intro > a {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding: 8px 16px;
  border: 1px solid #8b9c70;
  border-radius: 4px;
  background: #e7edda;
  font-weight: 700;
}
.timeline-edition .timeline-years,
.timeline-edition .timeline-series-nav {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px 12px;
  margin: 12px 0 24px;
}
.timeline-edition .timeline-years > span { color: var(--timeline-muted); font-size: 14px; }
.timeline-edition .timeline-years a,
.timeline-edition .timeline-series-nav a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  box-sizing: border-box;
  padding: 8px 13px;
  border: 1px solid var(--timeline-line);
  border-radius: 4px;
  background: var(--timeline-paper);
}
.timeline-edition .timeline-years a { font-variant-numeric: tabular-nums; }
.timeline-edition .timeline-reading {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px 28px;
  margin: 22px 0 32px;
  padding: 18px 22px;
  border-left: 3px solid #728759;
  background: #e9ecd8;
}
.timeline-edition .timeline-reading p { margin: 0; font-size: 14px; }
.timeline-edition .timeline-reading strong { display: block; color: var(--timeline-ink); }
.timeline-edition .fresco-path { margin-top: 28px; }
.timeline-edition .fresco-event { grid-template-columns: 84px minmax(0, 1fr); gap: 26px; padding-bottom: 30px; }
.timeline-edition .fresco-event::before { left: 96px; border-color: #a3ad80; }
.timeline-edition .fresco-event::after { left: 90px; background: #dfe8c9; border-color: #4d7254; }
.timeline-edition .fresco-year time { color: #2d5c43; }
.timeline-edition .fresco-year span { color: #5d5e42; }
html body .archive-workspace .timeline-edition .fresco-event > article {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 34%);
  gap: 24px;
  min-width: 0;
  margin-left: 10px;
  padding: 22px;
  border: 1px solid var(--timeline-line);
  border-left: 3px solid #718c60;
  border-radius: 6px;
  background: var(--timeline-paper);
  box-shadow: 0 3px 0 #d8cba34d;
}
html body .archive-workspace .timeline-edition .fresco-event[data-lane="site"] > article { border-left-color: #a18144; }
html body .archive-workspace .timeline-edition .fresco-event > article:not(:has(.fresco-image)) { grid-template-columns: minmax(0, 1fr); }
.timeline-edition .fresco-copy { min-width: 0; }
.timeline-edition .fresco-event h2 { color: var(--timeline-ink); }
.timeline-edition .fresco-version { color: #50643c; }
.timeline-edition .fresco-event .fresco-date { color: #615335; font-size: 14px; }
.timeline-edition .fresco-date > span { display: block; font-size: 12px; font-weight: 700; letter-spacing: .04em; }
.timeline-edition .fresco-actions { gap: 4px 20px; }
.timeline-edition .fresco-actions a { display: inline-flex; align-items: center; min-height: 44px; }
.timeline-edition .timeline-permalink { font-size: 13px; }
.timeline-edition .timeline-sources { margin-top: 18px; padding-top: 16px; border-top: 1px solid #d6ceb0; }
.timeline-edition .timeline-sources h3 { margin: 0 0 12px; font: 700 14px/1.5 var(--library-text, sans-serif); color: var(--timeline-ink); }
.timeline-edition .timeline-sources ul { list-style: none; padding: 0; margin: 0; }
.timeline-edition .timeline-sources li { margin: 0 0 15px; font-size: 14px; line-height: 1.6; }
.timeline-edition .timeline-sources li:last-child { margin-bottom: 0; }
.timeline-edition .timeline-publisher { display: block; color: var(--timeline-muted); font-size: 13px; }
.timeline-edition .timeline-dates { margin: 8px 0; font-size: 13px; line-height: 1.6; color: var(--timeline-muted); }
.timeline-edition .timeline-dates > div { display: flex; flex-wrap: wrap; column-gap: 6px; }
.timeline-edition .timeline-dates dt { font-weight: 400; }
.timeline-edition .timeline-dates dt::after { content: " :"; }
.timeline-edition .timeline-dates dd { margin: 0; color: #3b4f3d; }
.timeline-edition .timeline-dates time { font-variant-numeric: tabular-nums; }
.timeline-edition .fresco-image { margin: 0; min-width: 0; }
.timeline-edition .timeline-image-link {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 190px;
  padding: 10px;
  box-sizing: border-box;
  border: 1px solid #b9b38b;
  border-radius: 3px;
  background: #eeecd8;
}
.timeline-edition .fresco-image img {
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 250px;
  object-fit: contain;
  padding: 0;
  border: 0;
  background: transparent;
}
.timeline-edition .fresco-image figcaption { margin-top: 12px; color: var(--timeline-muted); }
.timeline-edition .timeline-image-title { display: block; color: var(--timeline-ink); font-size: 15px; line-height: 1.5; }
.timeline-edition .fresco-image :is(.timeline-image-note, .timeline-image-limit, .timeline-image-credit) { font-size: 13px; line-height: 1.6; margin: 8px 0; }
.timeline-edition .timeline-source-link { display: inline-flex; align-items: center; min-height: 40px; font-size: 14px; }
.timeline-edition .timeline-image-missing { padding: 12px 15px; border: 1px dashed #b6aa82; background: #f6f2df; color: var(--timeline-muted); font-size: 14px; line-height: 1.6; margin: 0; }
.timeline-edition .fresco-series { padding-top: 30px; border-color: var(--timeline-line); }
.timeline-edition .fresco-series > h2 { color: var(--timeline-ink); }
.timeline-edition .timeline-series-intro { max-width: 85ch; }
.timeline-edition .timeline-series-nav { align-items: stretch; font-size: 14px; }
.timeline-edition .fresco-series-row { display: block; padding: 28px 0; border-color: var(--timeline-line); }
.timeline-edition .timeline-series-heading { max-width: 85ch; margin-bottom: 24px; }
.timeline-edition .timeline-series-heading h3 { color: var(--timeline-ink); }
.timeline-edition .fresco-specimens,
.timeline-edition .fresco-specimens:has(figure:last-child:nth-child(2)) { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; align-items: start; }
.timeline-edition .fresco-specimens .fresco-image { display: block; margin: 0; }
.timeline-edition .fresco-specimens .timeline-image-link { height: 340px; min-height: 0; }
.timeline-edition .fresco-specimens img { width: auto; height: auto; max-height: 100%; }
.timeline-edition #serie-interface-web .timeline-image-link { height: 150px; }
.timeline-edition .timeline-series-return { display: inline-flex; align-items: center; min-height: 44px; margin-top: 20px; font-size: 14px; }
@media (max-width: 1100px) {
  html body .archive-workspace .timeline-edition .fresco-event > article { grid-template-columns: minmax(0, 1fr); }
  .timeline-edition .fresco-event .fresco-image { max-width: 580px; width: 100%; }
  .timeline-edition .fresco-event .timeline-image-link { min-height: 0; }
}
@media (max-width: 760px) {
  .timeline-edition .timeline-intro { display: block; }
  .timeline-edition .timeline-intro > a { margin-top: 14px; }
  .timeline-edition .timeline-reading { grid-template-columns: minmax(0, 1fr); padding: 16px; }
  .timeline-edition .fresco-event { display: block; padding: 0 0 28px 18px; }
  .timeline-edition .fresco-event::before { left: 0; top: 17px; bottom: -16px; }
  .timeline-edition .fresco-event::after { left: -6px; top: 15px; }
  .timeline-edition .fresco-event:last-child::before { bottom: 28px; }
  .timeline-edition .fresco-year { display: flex; align-items: baseline; gap: 12px; padding: 0 0 12px; }
  .timeline-edition .fresco-year span { margin: 0; }
  html body .archive-workspace .timeline-edition .fresco-event > article { margin: 0; padding: 16px; gap: 18px; }
  .timeline-edition .fresco-specimens,
  .timeline-edition .fresco-specimens:has(figure:last-child:nth-child(2)) { grid-template-columns: minmax(0, 1fr); }
  .timeline-edition .fresco-specimens .timeline-image-link { height: 260px; }
  .timeline-edition .timeline-series-nav a { flex: 1 1 220px; }
}
@media print {
  .timeline-edition :is(.archive-search, .timeline-years, .timeline-series-nav, .timeline-series-return, .timeline-permalink) { display: none; }
  .timeline-edition :is(.fresco-event, .fresco-image) { break-inside: avoid; }
  html body .archive-workspace .timeline-edition .fresco-event > article { box-shadow: none; }
}
