/* Progress, edition detail and PES6 archive layouts use the shared theme tokens. */
.capture-placeholder { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 19px; background: var(--color-surface); color: var(--color-muted); font: 11px var(--font-mono); }
.capture-placeholder > span:first-child { font-size: 30px; color: var(--color-accent); }
.card-progress { display: grid; grid-template-columns: max-content minmax(0,1fr); gap: 16px; align-items: start; min-height: 3.4em; font: 13px/1.7 var(--font-mono); color: var(--color-muted); margin-block: 16px 20px; }
.card-progress > span:first-child { color: var(--color-accent); white-space: nowrap; }
.card-progress > span:last-child { overflow-wrap: anywhere; }
.progress-overview { padding-top: var(--section-space); }
.progress-overview .section-heading > .eyebrow { font-size: 10px; }
.project-summary { max-width: 850px; margin-top: 25px; font-size: 17px; line-height: 1.85; color: var(--color-muted); }
.progress-label { margin-top: 32px; margin-bottom: 20px; font-weight: normal; }
.progress-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--grid-gap); padding-block: 24px; border-top: 1px solid var(--color-line); border-bottom: 1px solid var(--color-line); }
.progress-item > div:first-child { display: flex; justify-content: space-between; gap: 10px; align-items: baseline; font-size: 15px; }
.progress-item strong { font: 24px/1 var(--font-mono); letter-spacing: -.05em; color: var(--color-accent); }
.progress-track { height: 3px; background: var(--color-line); margin-block: 18px 12px; }
.progress-track > span { display: block; background: var(--color-accent); height: 100%; }
.progress-track.unscoped { background: none; border-bottom: 1px dashed var(--color-line); }
.progress-item > p { font: 11px/1.7 var(--font-mono); color: var(--color-muted); }
.estimate-footnote { max-width: 920px; font-size: 11px; line-height: 1.8; color: var(--color-muted); margin-top: 26px; }
.project-sections { display: flex; gap: 30px; padding-block: 25px 0; font-size: 13px; }
.project-sections a { padding-bottom: 7px; border-bottom: 1px solid var(--color-line); }
.project-sections a:hover { color: var(--color-accent); }
.edition-estimate { display: block; color: var(--color-accent); margin-top: 7px; }
.detailed-panel { grid-template-columns: minmax(0,1fr) minmax(0,1fr); column-gap: var(--grid-gap); row-gap: 28px; }
.detailed-panel .edition-panel-copy h3 { font-size: clamp(26px, 3vw, 39px); }
.edition-work h4 { font-size: 14px; font-weight: 500; margin: 0 0 11px; }
.edition-work h4:not(:first-child) { margin-top: 24px; }
.edition-work ul { list-style: none; padding: 0; margin: 0; }
.edition-work li { font-size: 13px; line-height: 1.85; color: var(--color-muted); padding: 0 0 7px 16px; position: relative; }
.edition-work li::before { content: '↗'; position: absolute; left: 0; color: var(--color-accent); }
.scope-note { color: var(--color-muted); font-size: 13px; line-height: 1.8; }
.estimate-reason { grid-column: 1 / -1; border-top: 1px solid var(--color-line); padding-top: 17px; }
.estimate-reason > summary { font: 11px var(--font-mono); color: var(--color-muted); cursor: pointer; }
.estimate-reason > p { font-size: 13px; line-height: 1.8; margin-top: 15px; color: var(--color-muted); max-width: 800px; }
.pes6-archive { padding-top: var(--section-space); }
.pes6-archive > .section-heading { gap: 30px; }
.archive-intro { max-width: 660px; font-size: 15px; line-height: 1.9; color: var(--color-muted); margin-top: 24px; }
.archive-stats { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: var(--grid-gap); margin-block: 32px; padding-block: 24px; border-top: 1px solid var(--color-line); border-bottom: 1px solid var(--color-line); }
.archive-stats strong { display: block; font: 40px/1.2 var(--font-mono); color: var(--color-accent); letter-spacing: -.05em; }
.archive-stats span { display: block; font: 11px/1.7 var(--font-mono); color: var(--color-muted); margin-top: 8px; }
.latest-candidate { display: grid; grid-template-columns: minmax(0,1.5fr) minmax(0,1fr); gap: var(--grid-gap); background: var(--color-surface); border-top: 2px solid var(--color-accent); padding: var(--panel-padding); }
.latest-candidate h3 { font-size: 32px; letter-spacing: -.04em; margin: 14px 0; font-weight: 500; }
.latest-candidate p:not(.eyebrow) { color: var(--color-muted); font-size: 14px; line-height: 1.9; }
.latest-candidate .text-link { margin-top: 24px; }
.candidate-note { align-self: center; border-left: 1px solid var(--color-line); padding-left: 25px; }
.candidate-note > .eyebrow { display: block; color: var(--color-accent); font-size: 10px; margin-bottom: 14px; }
.pes6-workstreams { padding-block: 32px; }
.pes6-workstreams > h3 { font-size: 22px; font-weight: 500; letter-spacing: -.03em; margin-bottom: 25px; }
.workstream-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 30px; }
.workstream-grid > article { border-top: 1px solid var(--color-line); padding-top: 18px; }
.workstream-grid h4 { font-size: 17px; font-weight: 500; letter-spacing: -.02em; margin: 10px 0; }
.workstream-grid p:last-child { color: var(--color-muted); font-size: 13px; line-height: 1.9; }
.archive-method { padding-block: 23px; border-bottom: 1px solid var(--color-line); }
.archive-method > summary { font-size: 14px; cursor: pointer; }
.archive-method > p { color: var(--color-muted); font-size: 13px; line-height: 1.9; max-width: 900px; margin-top: 18px; }
.version-controls { display: grid; grid-template-columns: minmax(0,1fr) minmax(180px,.4fr) auto; align-items: end; gap: 16px; margin-top: 32px; }
.version-controls label { display: flex; flex-direction: column; gap: 10px; font: 11px var(--font-mono); color: var(--color-muted); }
.version-controls input, .version-controls select { min-width: 0; width: 100%; padding: 13px 14px; font: 14px var(--font-sans); color: var(--color-text); background: var(--color-surface); border: 1px solid var(--color-line); border-radius: 0; }
.version-controls input::placeholder { color: var(--color-muted); }
.version-controls button { background: transparent; color: var(--color-text); padding: 13px 18px; font-size: 14px; border: 1px solid var(--color-line); }
.version-controls button:hover { border-color: var(--color-accent); color: var(--color-accent); }
.version-count { font: 11px var(--font-mono); color: var(--color-muted); margin-block: 22px 15px; }
.milestone { border-top: 1px solid var(--color-line); scroll-margin-top: 25px; }
.milestone:last-child { border-bottom: 1px solid var(--color-line); }
.milestone > summary { display: grid; grid-template-columns: 48px minmax(0,1fr) 24px; align-items: baseline; gap: 24px; padding: 24px 0; list-style: none; cursor: pointer; }
.milestone > summary::-webkit-details-marker { display: none; }
.milestone-number { font: 19px/1.2 var(--font-mono); color: var(--color-accent); min-width: 42px; }
.milestone-title { font-size: 15px; line-height: 1.5; }
.milestone-title > span { display: block; margin-top: 6px; font: 10px/1.5 var(--font-mono); color: var(--color-muted); }
.milestone-title > span > span { margin-inline: 7px; color: var(--color-subtle); }
.milestone-status-tag { display: inline-block; margin-left: 10px; font-style: normal; color: var(--color-accent); border-left: 1px solid var(--color-line); padding-left: 10px; }
.milestone-expand { margin-left: auto; color: var(--color-accent); font: 20px var(--font-mono); }
.milestone[open] > summary .milestone-expand { transform: rotate(45deg); }
.milestone > summary:hover .milestone-title { color: var(--color-accent); }
.milestone-body { display: grid; grid-template-columns: minmax(0,1.75fr) minmax(0,1fr); gap: var(--grid-gap); padding: 8px 0 32px 72px; }
.milestone-status { color: var(--color-accent); font: 11px/1.9 var(--font-mono); margin-bottom: 20px; }
.milestone-changes h4 { font-size: 14px; font-weight: 500; margin: 0 0 10px; }
.milestone-changes ul { margin: 0; padding-left: 15px; color: var(--color-muted); font-size: 14px; line-height: 1.9; }
.milestone-changes li { padding-bottom: 8px; }
.milestone-lineage, .milestone-caveat, .artifact-note { color: var(--color-muted); font-size: 11px; line-height: 1.9; margin-top: 15px; }
.milestone-lineage strong { font-weight: 500; color: var(--color-text); }
.milestone-variants, .milestone-counterparts { margin-top: 17px; }
.milestone-variants > summary, .milestone-counterparts > summary { cursor: pointer; font-size: 13px; color: var(--color-text); }
.milestone-variants > ul { margin-top: 13px; font-size: 11px; }
.milestone-counterparts h5 { font: 11px/1.8 var(--font-mono); color: var(--color-accent); margin: 14px 0 5px; }
.milestone-counterparts p { color: var(--color-muted); font-size: 11px; line-height: 1.9; }
.chapter-link { display: inline-block; font: 11px var(--font-mono); color: var(--color-muted); padding-block: 9px; margin-top: 12px; }
.chapter-link:hover { color: var(--color-accent); }
.milestone-media { align-self: start; min-width: 0; }
.media-placeholder { display: flex; justify-content: center; align-items: center; flex-direction: column; aspect-ratio: var(--media-ratio); border: 1px dashed var(--color-line); background: var(--color-surface); color: var(--color-muted); font-size: 13px; }
.media-placeholder > span { color: var(--color-accent); font-size: 28px; margin-bottom: 12px; }
.media-placeholder small { font: 10px var(--font-mono); margin-top: 10px; }
.media-link { display: flex; justify-content: space-between; font-size: 14px; color: var(--color-accent); border: 1px solid var(--color-line); padding: 16px; margin-bottom: 10px; gap: 10px; }
.media-link:hover { border-color: var(--color-accent); }
.milestone-gif { width: 100%; height: auto; margin-bottom: 15px; }
.version-empty { margin-block: 40px; font-size: 14px; color: var(--color-muted); }
@media (max-width: 900px) {
  .progress-grid { gap: 22px; }
  .detailed-panel { column-gap: 30px; }
  .latest-candidate { gap: 30px; }
  .milestone-body { padding-left: 0; gap: 25px; }
  .pes6-archive > .section-heading > .eyebrow { display: none; }
}
@media (max-width: 680px) {
  .progress-overview { padding-top: 28px; }
  .progress-overview .section-heading { display: block; }
  .progress-overview .section-heading > .eyebrow { display: block; margin-top: 12px; font-size: 10px; }
  .project-summary { font-size: 14px; margin-top: 20px; }
  .progress-grid { gap: 18px; }
  .progress-item > div:first-child { flex-direction: column; gap: 10px; font-size: 14px; }
  .progress-item strong { font-size: 23px; }
  .progress-item > p { font-size: 10px; }
  .progress-track { margin-top: 13px; }
  .estimate-footnote { font-size: 11px; }
  .detailed-panel { grid-template-columns: minmax(0,1fr); gap: 28px; }
  .edition-work li { font-size: 13px; }
  .pes6-archive { padding-top: 32px; }
  .archive-intro { font-size: 14px; }
  .archive-stats { gap: 18px; }
  .archive-stats strong { font-size: 31px; }
  .archive-stats span { font-size: 10px; }
  .latest-candidate { grid-template-columns: minmax(0,1fr); padding: 24px 20px; gap: 25px; }
  .latest-candidate h3 { font-size: 29px; }
  .candidate-note { border-left: 0; border-top: 1px solid var(--color-line); padding: 20px 0 0; }
  .workstream-grid { grid-template-columns: minmax(0,1fr); gap: 25px; }
  .version-controls { grid-template-columns: minmax(0,1fr) auto; gap: 15px 10px; }
  .version-controls label:first-child { grid-column: 1 / -1; }
  .milestone > summary { grid-template-columns: 32px minmax(0,1fr) 20px; gap: 14px; padding-block: 22px; }
  .milestone-number { font-size: 17px; min-width: 30px; }
  .milestone-title { font-size: 14px; }
  .milestone-body { grid-template-columns: minmax(0,1fr); gap: 24px; }
  .milestone-media { max-width: 400px; width: 100%; }
}
