.experience-timeline {
  --timeline-accent:var(--teal,#176e67);
  color:var(--ink);
}
.experience-timeline * { box-sizing:border-box; letter-spacing:0; }
.experience-timeline__interactive { display:grid; grid-template-columns:minmax(250px,.8fr) minmax(320px,1.2fr); gap:48px; min-height:18rem; border-top:1px solid var(--line-strong); }
.experience-timeline__list { min-width:0; list-style:none; margin:0; padding:0; }
.experience-timeline__list li { margin:0; border-bottom:1px solid var(--line); }
.experience-timeline details { margin:0; }
.experience-timeline summary { min-height:88px; display:grid; grid-template-columns:7.5rem minmax(0,1fr); align-items:center; gap:18px; padding:12px 4px; color:var(--muted); cursor:pointer; list-style:none; }
.experience-timeline summary::-webkit-details-marker { display:none; }
.experience-timeline summary::after { grid-column:2; width:26px; height:1px; background:currentColor; content:""; transform-origin:left; transition:transform 180ms cubic-bezier(.22,1,.36,1); }
.experience-timeline summary:hover,.experience-timeline summary:focus-visible,.experience-timeline [data-active="true"] summary { color:var(--timeline-accent); }
.experience-timeline summary:focus-visible { outline:3px solid var(--timeline-accent); outline-offset:3px; }
.experience-timeline [data-active="true"] summary::after { transform:scaleX(2); }
.experience-timeline__date { color:var(--muted); font-size:.875rem; font-variant-numeric:tabular-nums; }
.experience-timeline summary strong { color:var(--ink); font-family:var(--display); font-size:1.0625rem; line-height:1.3; }
.experience-timeline__body { padding:0 4px 24px 7.5rem; }
.experience-timeline__body p { max-width:48ch; color:var(--muted); font-size:1rem; }
.experience-timeline__panel { align-self:start; min-height:18rem; padding:40px; background:var(--surface-2); border-bottom:1px solid var(--line-strong); }
.experience-timeline__panel h3 { max-width:18ch; margin:24px 0 18px; font-family:var(--display); font-size:1.75rem; line-height:1.2; }
.experience-timeline__panel p { max-width:48ch; color:var(--muted); }
.experience-timeline:not([data-timeline-ready]) .experience-timeline__panel { visibility:hidden; }
.experience-timeline[data-timeline-mode="desktop"] .experience-timeline__body { display:none; }

.decision-observatory { margin:22px 0 36px; padding:22px 0 26px; border-top:1px solid var(--pw-line); border-bottom:1px solid var(--pw-line); }
.decision-observatory__header { display:grid; grid-template-columns:minmax(140px,.45fr) minmax(0,1.55fr); gap:20px; align-items:baseline; margin-bottom:18px; }
.decision-observatory__header>span { color:var(--pw-muted); font-size:14px; font-weight:700; }
.decision-observatory__header h3 { margin:0; font-size:1.5rem; line-height:1.2; }
.decision-observatory__diagram { position:relative; display:grid; grid-template-columns:minmax(0,1fr) minmax(190px,1.08fr) minmax(0,1fr); align-items:end; gap:clamp(10px,2vw,28px); }
.provenance-workbench .decision-observatory__diagram button { position:relative; min-width:0; min-height:44px; display:flex; flex-direction:column; align-items:center; padding:0 6px 12px; border:0; border-bottom:2px solid transparent; border-radius:0; background:transparent; }
.provenance-workbench .decision-observatory__diagram button:hover { background:var(--pw-surface); }
.provenance-workbench .decision-observatory__diagram button[aria-pressed="true"] { border-bottom-color:var(--pw-model); }
.decision-observatory svg { width:100%; height:auto; max-height:252px; overflow:visible; }
.decision-observatory__robot svg { max-height:286px; }
.decision-observatory__label { min-height:70px; display:flex; flex-direction:column; align-items:center; gap:2px; padding-top:8px; text-align:center; }
.decision-observatory__label strong { color:var(--pw-ink); font-size:15px; }
.decision-observatory__label small { color:var(--pw-muted); font-size:14px; line-height:1.5; }
.do-gauge,.do-validator path,.do-audit path { fill:none; stroke:currentColor; stroke-width:3; stroke-linecap:round; stroke-linejoin:round; }
.do-gauge { color:var(--pw-environment); }
.do-validator { color:var(--pw-validation); }
.do-validator path:first-child { fill:var(--pw-surface); }
.do-audit { color:var(--pw-proposal); }
.do-audit path:first-child { fill:var(--pw-surface); }
.decision-observatory__signal { position:absolute; top:42%; width:6px; height:6px; background:var(--pw-model); opacity:0; animation:decision-observatory-signal 7.2s linear infinite; animation-play-state:paused; }
.decision-observatory__signal--left { left:31%; --signal-start:-16px; --signal-end:22px; }
.decision-observatory__signal--right { right:31%; --signal-start:16px; --signal-end:-22px; animation-delay:1.1s; }
.decision-observatory[data-motion="running"] .decision-observatory__signal { animation-play-state:running; }
@keyframes decision-observatory-signal { 0%,100% { opacity:0; transform:translateX(var(--signal-start)); } 18%,76% { opacity:1; } 92% { opacity:0; transform:translateX(var(--signal-end)); } }
.provenance-workbench[data-compact="true"] .decision-observatory { margin-bottom:24px; }
.provenance-workbench[data-compact="true"] .decision-observatory svg { max-height:190px; }
.provenance-workbench[data-compact="true"] .decision-observatory__robot svg { max-height:216px; }

@media (max-width:47.99rem) {
  .experience-timeline__interactive { display:block; min-height:0; }
  .experience-timeline summary { min-height:72px; grid-template-columns:6.75rem minmax(0,1fr); }
  .experience-timeline summary::after { display:none; }
  .experience-timeline__body { padding-left:calc(6.75rem + 22px); }
  .experience-timeline__panel { display:none; }
  .decision-observatory__header { display:block; }
  .decision-observatory__header h3 { margin-top:7px; }
  .decision-observatory__diagram { grid-template-columns:1fr; align-items:center; gap:4px; }
  .provenance-workbench .decision-observatory__diagram button { display:grid; grid-template-columns:minmax(118px,.7fr) minmax(0,1fr); width:100%; min-height:132px; padding:8px 0; border-bottom:1px solid var(--pw-line); text-align:left; }
  .decision-observatory svg,.decision-observatory__robot svg,.provenance-workbench[data-compact="true"] .decision-observatory svg,.provenance-workbench[data-compact="true"] .decision-observatory__robot svg { max-height:132px; }
  .decision-observatory__label { min-height:44px; align-items:flex-start; justify-content:center; padding:0 8px; text-align:left; }
  .decision-observatory__signal { display:none; }
}

@media (prefers-reduced-motion:reduce) {
  .experience-timeline summary::after { transition:none; }
  .decision-observatory__signal { animation:none; }
}
