.investment-timeline { margin-top: 24px; margin-bottom: 24px; min-width: 0; }
.investment-timeline h2 { margin: 0 0 16px; font-size: 1.25rem; }
.timeline-controls { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 10px; }
.timeline-scroll-hint { display: none; color: var(--ink-faint); font-size: .78rem; margin: 0 0 8px; }
.timeline-scroll { max-height: 430px; overflow: auto; overscroll-behavior: contain; }
.timeline-scroll:focus-visible { outline: 2px solid var(--teal); outline-offset: 3px; }
.timeline-scroll .data-table { margin-top: 0; min-width: 580px; font-variant-numeric: tabular-nums; }
.timeline-scroll thead th { position: sticky; top: 0; background: var(--paper-raised); z-index: 1; }
.timeline-scroll tbody th { font-weight: 500; padding: 10px 8px; border-bottom: 1px solid var(--rule-soft); color: var(--ink); text-transform: none; letter-spacing: normal; font-size: .86rem; white-space: nowrap; }
.timeline-scroll td { white-space: nowrap; padding: 10px 8px; }
.timeline-selected > * { background: var(--gold-soft); font-weight: 600; }
.timeline-note { font-size: .84rem; line-height: 1.6; color: var(--ink-faint); margin: 14px 0 0; }
@media (max-width: 600px) { .investment-timeline { padding: 18px 14px; } .investment-timeline h2 { font-size: 1.1rem; } .timeline-scroll-hint { display: block; } }
@media print { .timeline-controls, .timeline-scroll-hint { display: none; } .timeline-scroll { max-height: none; overflow: visible; } .timeline-scroll .data-table { min-width: 0; font-size: .7rem; } .timeline-scroll thead th { position: static; } }
