/* The 44px interaction surface sits over the existing 2px divider. */
.has-timeline-scrubber > .timeline-scroll-area,
.has-timeline-scrubber > .timeline-entries-column { grid-row: 1; }
.has-timeline-scrubber > .timeline-entries-column { grid-column: 3; }
.has-timeline-scrubber .timeline-line { visibility: hidden; }
.timeline-scrubber {
    grid-column: 2; grid-row: 1; position: relative; align-self: stretch;
    width: 44px; margin-left: 0; z-index: 2; min-height: 44px;
    touch-action: none; user-select: none; -webkit-user-select: none;
    cursor: grab; outline: none; --scrubber-position: 0px;
}
.timeline-scrubber-track {
    position: absolute; inset: 22px 21px;
    background: linear-gradient(rgba(255,255,255,.28),rgba(255,255,255,.10));
    border-radius: 2px; pointer-events: none;
}
.timeline-scrubber-thumb {
    position: absolute; top: var(--scrubber-position); left: 13px;
    width: 18px; height: 44px; box-sizing: border-box; border-radius: 20px;
    background: linear-gradient(100deg,rgba(255,255,255,.32),rgba(255,255,255,.12));
    border: 1px solid rgba(255,255,255,.5);
    box-shadow: inset 1px 0 2px rgba(255,255,255,.35),0 1px 8px rgba(0,0,0,.18);
    backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px);
    pointer-events: none; transition: box-shadow .15s, background .15s;
}
.timeline-scrubber-thumb::after {
    content: ''; position: absolute; left: 4px; right: 4px; top: 16px;
    height: 1px; border-radius: 1px; background: rgba(255,255,255,.8);
    box-shadow: 0 4px rgba(255,255,255,.8), 0 8px rgba(255,255,255,.8);
}
.timeline-scrubber:hover .timeline-scrubber-thumb,
.timeline-scrubber:focus-visible .timeline-scrubber-thumb,
.timeline-scrubber.is-dragging .timeline-scrubber-thumb {
    background: rgba(255,255,255,.4);
    box-shadow: 0 0 12px rgba(255,255,255,.2),inset 1px 0 2px rgba(255,255,255,.5);
}
.timeline-scrubber:focus-visible .timeline-scrubber-thumb { outline: 2px solid rgba(255,255,255,.85); outline-offset: 3px; }
.timeline-scrubber.is-dragging { cursor: grabbing; }
.timeline-scrubber-date {
    position: absolute; top: calc(var(--scrubber-position) + 22px); left: 34px;
    transform: translateY(-50%); white-space: nowrap; padding: 5px 8px;
    border: 1px solid rgba(255,255,255,.25); border-radius: 8px;
    background: rgba(30,30,30,.9); color: #fff; font-size: .7rem;
    pointer-events: none; opacity: 0;
}
.timeline-scrubber:hover .timeline-scrubber-date,
.timeline-scrubber:focus-visible .timeline-scrubber-date,
.timeline-scrubber.is-dragging .timeline-scrubber-date { opacity: 1; }
.is-timeline-scrubbing .resume-section { transition: none !important; }
@media print { .timeline-scrubber { display: none; } }
@media (prefers-reduced-motion: reduce) { .timeline-scrubber-thumb { transition: none; } }
.has-timeline-scrubber > .timeline-scroll-area { scrollbar-width: none; }
.has-timeline-scrubber > .timeline-scroll-area::-webkit-scrollbar { display: none; }
/* Keep the scroll offset exactly one 80px row per month. */
.has-timeline-scrubber .timeline-dates-column { padding-top: 0; }
