:root{--tl-line: var(--site-border-color, #d7ccc8);--tl-node: var(--site-heading-color, #3e2723);--tl-node-fill: var(--site-bg-color, #ffffff);--tl-gap: 1.7rem;--tl-flag-surface: var(--button-surface, rgba(255, 255, 255, 0.85));--tl-flag-border: var(--button-border, rgba(121, 85, 72, 0.17));--tl-flag-hover-border: var(--button-hover-border, rgba(121, 85, 72, 0.30));--tl-flag-shadow: var(--button-shadow, 0 1px 2px rgba(62, 39, 35, 0.035), 0 3px 8px -4px rgba(62, 39, 35, 0.12));--tl-flag-hover-shadow: var(--button-hover-shadow, 0 2px 3px rgba(62, 39, 35, 0.04), 0 5px 12px -5px rgba(62, 39, 35, 0.18));--tl-time-surface: var(--site-hover-surface-color, rgba(121, 85, 72, 0.08))}.timeline{position:relative;margin:0.4rem 0 0.6rem;padding:0.4rem 0 0.2rem;list-style:none}.timeline::before{content:"";position:absolute;top:0;bottom:0;left:50%;width:2px;margin-left:-1px;border-radius:2px;background:var(--tl-line)}.timeline__item{position:relative;display:grid;grid-template-columns:1fr 1fr;margin:0;padding:0.55rem 0}.timeline__item+.timeline__item{margin-top:0.35rem}.timeline__body{grid-column:2;min-width:0;padding-left:var(--tl-gap)}.timeline__item--left .timeline__body{grid-column:1;padding-left:0;padding-right:var(--tl-gap);text-align:right}.timeline__head{position:relative;display:flex;flex-wrap:wrap;align-items:center;gap:0.55rem 0.7rem}.timeline__item--left .timeline__head{flex-direction:row-reverse}.timeline__head::before{content:"";position:absolute;top:calc(1.02rem + 1px);left:calc(-1 * var(--tl-gap));width:13px;height:13px;box-sizing:border-box;border:3px solid var(--tl-node);border-radius:50%;background:var(--tl-node-fill);transform:translate(-50%, -50%)}.timeline__item--left .timeline__head::before{left:auto;right:calc(-1 * var(--tl-gap));transform:translate(50%, -50%)}.timeline__flag{display:inline-block;box-sizing:border-box;max-width:100%;padding:0.4rem 0.85rem;border:1px solid var(--tl-flag-border);border-radius:0.5rem;background:var(--tl-flag-surface);box-shadow:var(--tl-flag-shadow);color:var(--site-heading-color);font-size:0.95rem;font-weight:600;line-height:1.3;text-decoration:none;transition:background-color 160ms ease, border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease}a.timeline__flag:hover{border-color:var(--tl-flag-hover-border);box-shadow:var(--tl-flag-hover-shadow);color:var(--site-heading-color);text-decoration:none;transform:translateY(-1px)}a.timeline__flag:focus-visible{outline:2px solid var(--site-focus-color, #8a4f2d);outline-offset:3px}.timeline__time{display:inline-block;padding:0.16rem 0.5rem;border-radius:0.35rem;background:var(--tl-time-surface);color:var(--site-muted-color);font-size:0.76rem;font-weight:500;line-height:1.4;letter-spacing:0.01em;white-space:nowrap}.timeline__role{margin-top:0.5rem;color:var(--site-heading-color);font-size:0.9rem;font-weight:500;line-height:1.45}.timeline__icon{width:1.15em;margin-right:0.35rem;color:var(--site-link-color);font-size:0.9em;text-align:center}.timeline__item--left .timeline__icon{margin-right:0;margin-left:0.35rem}.timeline__item--left .timeline__role{display:flex;flex-direction:row-reverse;justify-content:flex-start;align-items:baseline}.timeline__note{margin-top:0.12rem;color:var(--site-muted-color);font-size:0.84rem;line-height:1.5}@media screen and (max-width: 640px){.timeline{--tl-line-x: 0.5rem;--tl-gap: 1.5rem}.timeline::before{left:var(--tl-line-x);margin-left:0}.timeline__item{grid-template-columns:1fr}.timeline__body,.timeline__item--left .timeline__body{grid-column:1;padding-right:0;padding-left:calc(var(--tl-line-x) + 1px + var(--tl-gap));text-align:left}.timeline__item--left .timeline__head{flex-direction:row}.timeline__head::before,.timeline__item--left .timeline__head::before{right:auto;left:calc(-1 * var(--tl-gap));transform:translate(-50%, -50%)}.timeline__item--left .timeline__role{display:block}.timeline__item--left .timeline__icon{margin-right:0.35rem;margin-left:0}}@media (prefers-reduced-motion: reduce){.timeline__flag{transition:none}a.timeline__flag:hover{transform:none}}@media print{.timeline__flag{background:transparent;box-shadow:none}}
