/* Timeline era journey. Final 2.1 type, theme, controls and chronology. */
html.journey-ready{scroll-behavior:auto;scroll-snap-type:none!important;overflow-anchor:none;scrollbar-gutter:stable}
.journey-ready body{--journey-ease:cubic-bezier(.16,1,.3,1);--journey-color:var(--era-archive);--journey-ink:var(--mhc-era-archive-ink)}
.journey-ready summary:focus-visible,.journey-era-return:focus-visible{outline:2px solid var(--journey-ink);outline-offset:3px}
.journey-ready .timeline-record-stage{scroll-snap-align:none;scroll-snap-stop:normal;padding-top:22px}
/* Match the centers of the 56px launcher and the rail's last control. */
.journey-ready .timeline-apparatus,.journey-ready .timeline-apparatus.has-return-control{--filter-bottom:calc((100vh - var(--elastic-rail-height))/2 + (var(--elastic-rail-control-size) - 56px)/2)}
/* Keep the return capsule clear of that shared baseline on short screens. */
.journey-ready .mhc-xref-cluster--timeline{right:max(86px,calc(env(safe-area-inset-right) + 86px));width:min(430px,calc(100vw - var(--elastic-content-left) - 104px))}
@media(max-width:700px){
 .journey-ready .mhc-xref-cluster--timeline{right:max(80px,calc(env(safe-area-inset-right) + 80px));width:calc(100vw - var(--elastic-content-left) - 92px)}
}
.journey-index-intro{display:flex;justify-content:space-between;gap:24px;align-items:end;margin:0 26px 24px;padding:30px 0 18px;border-bottom:1px solid var(--line)}
.journey-index-intro h2{font-size:clamp(28px,3vw,44px);font-weight:300;letter-spacing:-.04em;line-height:1.05}
.journey-index-intro p{color:var(--paper-dim);font-size:14px;max-width:33ch;text-align:right}
/* Leave the final stretch of the live spine exposed down to the year. */
.journey-ready .end-marker{position:relative;background:linear-gradient(to bottom,transparent var(--timeline-end-cap,12vh),var(--paper) var(--timeline-end-cap,12vh))}
.journey-ready body:not(.webgl-ready) .end-marker::before{content:'';position:absolute;left:50%;top:0;width:1px;height:var(--timeline-end-cap,12vh);background:var(--line)}
.journey-ready .timeline .era-section{display:block!important;padding:0 0 18px;--journey-meta-width:124px;--journey-columns-gap:28px;--journey-band-padding:26px;--journey-band-margin:24px;--era-record-inset:150px;--era-header-height:124px;--journey-era-surface:color-mix(in srgb,var(--era-color) 28%,transparent);scroll-margin-top:76px}
.journey-ready .timeline .era-section.is-filtered{display:none!important}
.journey-ready .timeline .era-header{position:relative;top:auto;height:auto!important;min-height:0;margin:0 24px;z-index:4;transform-origin:50% 50%;perspective:1000px}
/* Repainting the backdrop blur flashes a contour around these bands. Keep
   their translucent tint and Lumen light without resampling the backdrop. */
.journey-ready .timeline .era-header-surface,.journey-ready .timeline .is-header-minimized .era-header-surface{display:grid;grid-template-columns:var(--journey-meta-width) minmax(0,1.14fr) minmax(0,1fr) 44px;grid-template-rows:auto auto;gap:10px var(--journey-columns-gap);min-height:132px;padding:22px var(--journey-band-padding);border-radius:24px;overflow:hidden;background:var(--journey-era-surface);color:var(--mhc-on-plate);backdrop-filter:none;-webkit-backdrop-filter:none;height:auto!important}
.journey-ready .timeline .era-heading,.journey-ready .timeline .era-summary,.journey-ready .timeline .era-summary>div{display:contents}
.journey-ready .timeline .era-heading .era-meta{grid-column:1;grid-row:1/3;display:flex;flex-direction:column;justify-content:center;align-items:center;align-self:stretch;text-align:center;gap:6px;padding:0;border:0;font:11px/1.4 var(--mono)}
.journey-ready .timeline .era-meta span:first-child{font:300 28px/1 var(--sans);letter-spacing:-.03em}
.journey-ready .timeline .era-heading h2{grid-column:2;grid-row:1/3;align-self:center;font-size:clamp(24px,2.55vw,38px);line-height:1.05;letter-spacing:-.04em;max-width:none}
.journey-ready .timeline .era-summary p{grid-column:3;grid-row:1;align-self:end;font-size:14px;line-height:1.5;max-width:54ch}
.journey-ready .timeline .era-summary small{grid-column:3;grid-row:2;font:10px/1.4 var(--mono)}
.journey-ready .timeline .era-toggle{grid-column:4;grid-row:1/3;align-self:center;width:44px;height:44px;margin:0;transition:background .3s,color .3s,transform .6s var(--journey-ease)}
/* An arrival from the guide names the control that opens the first era once,
   because the ten banners it lands on are closed and nothing else on the screen
   says where reading begins. The control takes its own pressed colors for two
   beats while two rings leave its edge, and then it rests; reduced motion
   receives no cue at all, since a pulse is the whole of what it offers. */
.journey-ready .timeline .era-toggle.is-arrival-cue{animation:journey-arrival-cue 1.7s var(--journey-ease) both}
@keyframes journey-arrival-cue{
  0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--era-ink) 46%,transparent),0 0 0 0 color-mix(in srgb,var(--era-ink) 34%,transparent)}
  16%{background:var(--era-ink);border-color:var(--era-ink);color:var(--era-color)}
  34%{background:transparent;color:inherit}
  48%{background:var(--era-ink);border-color:var(--era-ink);color:var(--era-color);box-shadow:0 0 0 16px color-mix(in srgb,var(--era-ink) 0%,transparent),0 0 0 4px color-mix(in srgb,var(--era-ink) 30%,transparent)}
  100%{box-shadow:0 0 0 16px color-mix(in srgb,var(--era-ink) 0%,transparent),0 0 0 18px color-mix(in srgb,var(--era-ink) 0%,transparent)}
}
html.timeline-reduce-motion .timeline .era-toggle.is-arrival-cue{animation:none}
@media(prefers-reduced-motion:reduce){.journey-ready .timeline .era-toggle.is-arrival-cue{animation:none}}
.journey-ready .timeline .era-axis{display:none}
.journey-ready .timeline .era-years{display:block;overflow:visible;padding:0;transform-origin:50% 0}
.journey-ready .timeline .era-years::before{content:"";display:block;height:32px}
.journey-ready .timeline .is-collapsed .era-years{display:none}
.journey-ready .timeline .era-years.is-unfolding{display:block;overflow:clip}
.journey-ready .timeline .era-header.is-unfurling .era-header-surface{will-change:transform,opacity}
.journey-ready .era-section:not(.is-collapsed)>.era-header{margin-bottom:6px}
.journey-era-return{display:flex;align-items:center;justify-content:center;gap:12px;width:calc(100% - 48px);margin:20px 24px 0;min-height:48px;border:1px solid var(--line);border-radius:24px;color:var(--mhc-on-plate);background:color-mix(in srgb,var(--era-color) 10%,transparent);font:13px/1.3 var(--sans);cursor:pointer}
.journey-era-return svg{width:16px;height:16px;stroke:currentColor;stroke-width:1.5;fill:none}
/* The same era surface contracts in Unified and List; no separate floating label. */
.journey-era-content{display:contents}
.journey-ready .era-header.is-entering :is(.era-meta,h2){opacity:var(--journey-title-alpha,1);translate:0 var(--journey-title-y,0px)}
.journey-ready .era-header.is-entering :is(.era-summary p,.era-summary small,.era-toggle){opacity:var(--journey-detail-alpha,1);translate:0 var(--journey-detail-y,0px)}
/* The same entrance drawn against the scroll, which the journey script asks
   for wherever scroll timelines exist. Its ranges repeat the loop's own: the
   band unfolds while its top climbs from 102vh to 47vh, the title lifts across
   the tenth to the seventy-sixth hundredth of that climb, and the summary and
   toggle across the rest from its quarter, each on the loop's cubic ease-out.
   The band's tilt and lift run on the compositor in step with the page, and the
   fade is the band's own, so that its tint gathers as the band appears. */
@keyframes journey-band-rise{from{transform:perspective(1200px) translateY(38px) rotateX(12deg)}to{transform:perspective(1200px) translateY(0) rotateX(0deg)}}
@keyframes journey-band-open{from{clip-path:inset(0 48% round var(--journey-entry-radius,24px))}to{clip-path:inset(0 0% round var(--journey-entry-radius,24px))}}
@keyframes journey-band-fade{from{opacity:.3}to{opacity:1}}
@keyframes journey-title-lift{from{opacity:0;translate:0 26px}to{opacity:1;translate:0 0}}
@keyframes journey-detail-lift{from{opacity:0;translate:0 18px}to{opacity:1;translate:0 0}}
@supports (animation-timeline:view()){
 .journey-ready .timeline .era-section{view-timeline:--journey-era block;view-timeline-inset:0}
 .journey-ready .timeline .era-header.is-scroll-entering{animation:journey-band-rise cubic-bezier(.33,1,.68,1) both;animation-timeline:--journey-era;animation-range:cover -2vh cover 53vh}
 .journey-ready .timeline .era-header.is-scroll-entering .era-header-surface{animation:journey-band-open cubic-bezier(.33,1,.68,1) both,journey-band-fade cubic-bezier(.33,1,.68,1) both;animation-timeline:--journey-era,--journey-era;animation-range:cover -2vh cover 53vh}
 .journey-ready .timeline .era-header.is-scroll-entering :is(.era-meta,h2){animation:journey-title-lift cubic-bezier(.33,1,.68,1) both;animation-timeline:--journey-era;animation-range:cover 3.5vh cover 39.8vh}
 .journey-ready .timeline .era-header.is-scroll-entering :is(.era-summary p,.era-summary small,.era-toggle){animation:journey-detail-lift cubic-bezier(.33,1,.68,1) both;animation-timeline:--journey-era;animation-range:cover 11.2vh cover 53vh}
}
.journey-reader-compact{position:absolute;inset:auto auto 0 0;display:flex;align-items:center;box-sizing:border-box;width:max-content;max-width:100%;min-height:48px;margin:0;padding:12px 16px;border:0;border-radius:inherit;background:transparent;color:inherit;font:400 var(--entry-body,1rem)/1.5 var(--sans);text-align:left;letter-spacing:normal;text-transform:none;white-space:normal;cursor:pointer;opacity:0;visibility:hidden;pointer-events:none}
.journey-reader-compact>span{min-width:0;white-space:normal}
.journey-reader-compact:is(:hover,:focus-visible){background:color-mix(in srgb,currentColor 9%,transparent)}
.journey-reader-compact:focus-visible{outline:2px solid currentColor;outline-offset:-3px}
.journey-ready .timeline .era-header.is-reader-docked{height:var(--journey-expanded-height)!important;z-index:42;transform:none!important;perspective:none!important}
.journey-ready .timeline .era-header.is-reader-docked .era-header-surface{min-height:0;padding:0;transition:none;clip-path:none!important;background:color-mix(in srgb,var(--era-color) calc(28% + 10% * var(--journey-reader-progress)),transparent);box-shadow:0 18px 44px rgba(var(--mhc-shadow-rgb),calc(.18 * var(--journey-reader-progress))),0 3px 10px rgba(var(--mhc-shadow-rgb),calc(.08 * var(--journey-reader-progress))),inset 0 1px 0 color-mix(in srgb,currentColor calc(14% * var(--journey-reader-progress)),transparent)}
.journey-ready .timeline .is-reader-docked .journey-era-content{position:absolute;inset:0 auto auto 0;display:grid;box-sizing:border-box;opacity:clamp(0,calc(1 - var(--journey-reader-progress) * 2.8),1);transform:translateY(calc(-8px * var(--journey-reader-progress)));transform-origin:0 0}
.journey-ready .timeline .is-reader-docked .journey-reader-compact{width:100%;height:100%;visibility:visible;opacity:var(--journey-reader-copy)}
.journey-ready .timeline .is-reader-compact .journey-era-content{pointer-events:none}
.journey-ready .timeline .is-reader-compact .journey-reader-compact{pointer-events:auto}
.journey-ready .timeline .era-header.is-reader-docked .era-header-surface{height:var(--journey-reader-height)!important}
.journey-ready .timeline .era-header.is-reader-preview-motion .era-header-surface{transition:width .32s var(--journey-ease),height .32s var(--journey-ease),top .32s var(--journey-ease),border-radius .32s var(--journey-ease)}
.journey-ready .timeline .era-header.is-reader-preview .era-header-surface{width:var(--journey-expanded-width)!important;height:var(--journey-expanded-height)!important;top:var(--journey-reader-top)!important;border-radius:24px!important}
.journey-ready .timeline .is-reader-preview .journey-era-content{opacity:1;transform:none;pointer-events:auto}
.journey-ready .timeline .is-reader-preview .journey-reader-compact{opacity:0;visibility:hidden;pointer-events:none}
@media(prefers-reduced-motion:reduce){.journey-ready .timeline .era-header.is-reader-preview-motion .era-header-surface{transition:none}}
/* Because a press anywhere on the banner opens or closes its era, the cursor's
   light answers the whole banner in the era's own ink, and its toggle takes the
   same ink when the pointer reaches it. The banner keeps a hover of its own
   under that light, in which the tint rises six points and the toggle gathers a
   faint wash, a step short of the fill it shows when it is pressed, while the
   reading pill keeps the hover it already had and a touch screen matches none. */
.journey-ready .timeline .era-header-surface[data-lens-press]{--mhc-lumen-hover:keep;--mhc-lumen-tint:var(--era-accent)}
.journey-ready .timeline .era-header-surface[data-lens-press] .era-toggle{--mhc-lumen-tint:var(--era-accent)}
@media(hover:hover) and (pointer:fine){
 .journey-ready .timeline .era-header:not(.is-reader-docked) .era-header-surface{transition:background-color .32s var(--journey-ease),border-radius .24s var(--ease)}
 .journey-ready .timeline .era-header:not(.is-reader-docked) .era-header-surface:hover{background:color-mix(in srgb,var(--era-color) 34%,transparent)}
 .journey-ready .timeline .era-header:not(.is-reader-docked) .era-header-surface:hover .era-toggle:not(:hover,:focus-visible){background:color-mix(in srgb,var(--era-ink) 9%,transparent)}
}
.journey-ready .timeline:not(.is-list-view) .year-group{padding:0!important;min-height:0;background:transparent}
.journey-ready .timeline:not(.is-list-view) .year-header{display:none}
.journey-ready .timeline:not(.is-list-view) .record-row{display:grid;grid-template-columns:minmax(0,1fr) var(--spine) minmax(0,1fr);column-gap:clamp(22px,4vw,68px);min-height:0;padding:22px var(--gutter);margin:0!important;border:0;align-items:start}
.journey-ready .timeline:not(.is-list-view) .record-row+.record-row{margin-top:0}
.journey-ready .timeline:not(.is-list-view) .record-row[data-side=left] .holder--record{grid-column:1;grid-row:1;justify-self:end}
.journey-ready .timeline:not(.is-list-view) .record-row[data-side=right] .holder--record{grid-column:3;grid-row:1;justify-self:start}
.journey-ready .timeline:not(.is-list-view) .holder--record{width:100%;max-width:670px;transform-origin:50% 50%;opacity:var(--journey-focus,1);transition:opacity .22s linear}
.journey-ready .timeline:not(.is-list-view) .record-row:is(:hover,:focus-within) .holder--record{opacity:1!important;transform:none!important}
.journey-ready .timeline:not(.is-list-view) .record-card{width:100%;max-width:none;text-align:left!important;scroll-margin-top:135px;content-visibility:visible;contain-intrinsic-size:none}
.journey-ready .timeline:not(.is-list-view) .record-card:hover{transform:none}
.journey-ready .timeline:not(.is-list-view) .record-layout{border-radius:20px;background:rgba(var(--mhc-float-rgb),.83);border:1px solid var(--rec-seam);box-shadow:none}
/* Each entry receives the same source light from its spine-facing corner. */
.journey-ready .timeline:not(.is-list-view) .record-row[data-side] .record-layout::before{background:radial-gradient(124% 66% at var(--journey-light-edge,0%) 0%,color-mix(in srgb,var(--source) 10%,transparent),transparent 68%)}
.journey-ready .timeline:not(.is-list-view) .record-row[data-side=left]{--journey-light-edge:100%}
.journey-ready .timeline:not(.is-list-view) .record-card>details>summary{padding:18px 20px;min-height:0}
.journey-ready .timeline:not(.is-list-view) .card-head{grid-template-columns:minmax(0,1fr) 34px;gap:12px;align-items:start}
.journey-ready .timeline:not(.is-list-view) .record-card h3{font-size:clamp(23px,2.05vw,31px);line-height:1.08;max-width:26ch;letter-spacing:-.035em;margin:0!important;text-align:left}
.journey-ready .timeline:not(.is-list-view) .record-kind{margin-top:10px;flex-direction:row!important;justify-content:start;padding:0!important;background:transparent;border:0;font:10px/1.45 var(--mono);white-space:normal}
.journey-ready .timeline:not(.is-list-view) .record-source,.journey-ready .timeline:not(.is-list-view) .journal-authors{margin-top:6px;font:12px/1.5 var(--sans);color:var(--paper-dim);white-space:normal}
.journey-ready .timeline:not(.is-list-view) .card-toggle{width:34px;height:34px}
.journey-date{display:block;margin:0 0 12px;font:300 clamp(42.5px,4.5vw,60px)/1 var(--sans);letter-spacing:-.04em;font-variant-numeric:tabular-nums;color:var(--era-accent)}
/* A year belongs to its first visible record, even after filtering. */
.journey-ready .timeline:not(.is-list-view) .year-group>.record-row:not(.is-hidden)~.record-row .journey-date{display:none}
.journey-ready .timeline:not(.is-list-view) .record-reveal{padding:0 20px 20px;margin:0}
.journey-ready .timeline:not(.is-list-view) .claim-content,.journey-ready .timeline:not(.is-list-view) .journal-content,.journey-ready .timeline:not(.is-list-view) .record-visual-body{gap:14px;margin-top:0;padding-top:14px;text-align:left}
.journey-ready .timeline:not(.is-list-view) .claim-content>p,.journey-ready .timeline:not(.is-list-view) .journal-summary{font-size:15px;line-height:1.6;margin-left:0!important}
.journey-ready .timeline:not(.is-list-view) .record-image img{max-height:300px;width:100%;object-fit:contain;object-position:left}
.journey-ready .timeline:not(.is-list-view) .holder--links{display:block;width:100%;max-width:none;padding:0;margin:8px 0 0;opacity:1!important;transform:none!important;filter:none!important;pointer-events:auto!important}
.journey-ready .timeline:not(.is-list-view) .connection-dock{margin:0;padding:0;text-align:left}
.journey-ready .timeline:not(.is-list-view) .connection-dock>summary{display:grid;grid-template-columns:auto auto minmax(0,1fr);gap:10px;min-height:44px;width:100%;max-width:100%;padding:9px 15px;border:1px solid var(--rec-seam);border-radius:999px;font:500 11px/1.2 var(--sans);letter-spacing:0;text-transform:none;background:rgb(var(--mhc-float-rgb));backdrop-filter:none;-webkit-backdrop-filter:none}
.journey-ready .timeline:not(.is-list-view) .connection-dock>summary b{font:500 11px/1 var(--mono)}
.journey-ready .timeline:not(.is-list-view) .connection-dock>summary i{font:400 11px/1 var(--sans);text-transform:none;letter-spacing:0}
.journey-ready .timeline:not(.is-list-view) .spine-slot{min-height:0;align-self:stretch}
.journey-ready .timeline:not(.is-list-view) .spine-slot::before,.journey-ready .timeline:not(.is-list-view) .spine-slot::after,.journey-ready .timeline:not(.is-list-view) .spine-back{display:none}
.journey-ready .timeline:not(.is-list-view) .record-card::before{display:none}
.journey-ready .timeline .connection-dock>summary::before{display:none}
.journey-ready .timeline:not(.is-list-view) .record-row.is-reading-connections .connection-dock>summary{background:var(--rec-cell-hi);color:var(--mhc-on-plate);border-color:var(--rec-hairline)}
@media(max-width:1000px){
 .journey-ready .timeline .era-section{--journey-meta-width:96px;--journey-columns-gap:20px;--journey-band-padding:22px}
 .journey-ready .timeline .era-header-surface{grid-template-columns:96px minmax(0,1fr) 44px;gap:12px 20px;padding:22px}
 .journey-ready .timeline .era-heading h2{grid-column:2;grid-row:1}
 .journey-ready .timeline .era-heading .era-meta{grid-row:1/4}
 .journey-ready .timeline .era-summary p{grid-column:2;grid-row:2}
 .journey-ready .timeline .era-summary small{grid-column:2;grid-row:3}
 .journey-ready .timeline .era-toggle{grid-column:3;grid-row:1/4}
}
@media(max-width:700px){
 .journey-index-intro{margin:0 14px 18px;display:block;padding-top:38px}.journey-index-intro p{text-align:left;margin-top:12px;max-width:none;font-size:13px}
 .journey-ready .timeline .era-section{padding-bottom:12px;--journey-band-margin:12px;--journey-band-padding:20px;--journey-entry-radius:20px}
 .journey-ready .timeline .era-years::before{height:24px}
 .journey-ready .timeline:not(.is-list-view) .record-row[data-side=left]{--journey-light-edge:0%}
 .journey-ready .timeline .era-header{margin:0 12px}
 .journey-ready .timeline .era-header-surface{grid-template-columns:minmax(0,1fr) 44px;gap:12px;min-height:0;padding:20px;border-radius:20px}
 .journey-ready .timeline .era-heading .era-meta{grid-column:1;grid-row:1;flex-direction:row;gap:12px;align-items:center;font-size:10px}
 .journey-ready .timeline .era-meta span:first-child{font:400 11px/1.3 var(--mono)}
 .journey-ready .timeline .era-heading h2{grid-column:1/3;grid-row:2;font-size:29px;max-width:none}
 .journey-ready .timeline .era-summary p{grid-column:1/3;grid-row:3;font-size:14px}
 .journey-ready .timeline .era-summary small{grid-column:1/3;grid-row:4;font-size:10px}
 .journey-ready .timeline .era-toggle{grid-column:2;grid-row:1}
 .journey-ready .timeline:not(.is-list-view) .record-row{grid-template-columns:48px minmax(0,1fr);gap:10px;padding:18px 12px}
 .journey-ready .timeline:not(.is-list-view) .record-row[data-side] .holder--record{grid-column:2;grid-row:1}
 .journey-ready .timeline:not(.is-list-view) .record-row[data-side] .spine-slot{grid-column:1;grid-row:1}
 .journey-ready .timeline:not(.is-list-view) .record-card h3{font-size:24px;max-width:none}
 .journey-ready .timeline:not(.is-list-view) .record-card>details>summary{padding:16px}
 .journey-ready .timeline:not(.is-list-view) .record-reveal{padding:0 16px 16px}
 .journey-ready .timeline:not(.is-list-view) .card-head{grid-template-columns:minmax(0,1fr) 28px;gap:8px}
 .journey-ready .timeline:not(.is-list-view) .card-toggle{width:28px;height:28px}
 .journey-era-return{width:calc(100% - 28px);margin-inline:14px}
}
@media(prefers-reduced-motion:reduce){
 .journey-ready .timeline:not(.is-list-view) .holder--record{opacity:1!important;transform:none!important}
 .journey-ready .era-header,.journey-ready .era-header-surface{transform:none!important;opacity:1!important;clip-path:none!important}
 .journey-ready .timeline *{transition-duration:.1s!important;animation-duration:.1s!important}
 body.journey-in-era::after{content:'';position:fixed;z-index:1;left:calc(var(--rail) + (100% - var(--rail))/2);top:0;bottom:0;width:1px;background:var(--mhc-on-paper);pointer-events:none;opacity:.5}
}
@media(prefers-reduced-motion:reduce) and (max-width:700px){body.journey-in-era::after{left:calc(var(--rail) + 36px)}}

/* List shares the banner's column edges; the native hover field, title motion,
   image preview and disclosure behavior continue to come from the original page. */
.journey-ready .timeline.is-list-view .era-years{max-width:none;width:auto;margin:0}
.journey-ready .timeline.is-list-view .year-group{margin:0 var(--journey-band-margin);padding:0 calc(var(--journey-band-padding) + 1px - 16px) 0 calc(var(--journey-band-padding) + 1px + var(--journey-meta-width) + var(--journey-columns-gap) - 16px)}
.journey-ready .timeline.is-list-view .year-header{left:calc(var(--journey-band-padding) + 1px);width:var(--journey-meta-width);padding:18px 0}
.journey-ready .timeline.is-list-view .year-number{width:100%;justify-self:stretch;text-align:center;font-size:32.5px}
.journey-ready .timeline.is-list-view .record-row{padding:2px 0}
.journey-ready .timeline.is-list-view .card-head{column-gap:var(--journey-columns-gap)}
.journey-ready .timeline.is-list-view .card-head>div{grid-template-columns:minmax(0,1.14fr) minmax(0,1fr);column-gap:var(--journey-columns-gap)}
.journey-ready .timeline.is-list-view .record-card h3{grid-column:1;grid-row:1}
.journey-ready .timeline.is-list-view .record-kind{grid-column:1;grid-row:2}
.journey-ready .timeline.is-list-view .record-card>details :is(.record-source,.journal-authors){grid-column:2;grid-row:1/3;align-self:center;max-width:none;overflow:visible;font-size:10px;line-height:1.55;white-space:normal;text-overflow:clip}
.journey-ready .timeline.is-list-view .journey-date{display:none}
.journey-ready .timeline .record-card{content-visibility:visible;contain-intrinsic-size:none}
@media(max-width:1000px){
 .journey-ready .timeline.is-list-view .card-head>div{grid-template-columns:minmax(0,1fr)}
 .journey-ready .timeline.is-list-view .record-card>details :is(.record-source,.journal-authors){grid-column:1;grid-row:3}
}
@media(max-width:700px){
 .journey-ready .timeline.is-list-view .year-group{padding:0 calc(var(--journey-band-padding) + 1px - 10px)}
 .journey-ready .timeline.is-list-view .year-header{position:relative;inset:auto;width:calc(100% - 76px);margin-left:10px;padding:16px 0 6px}
 .journey-ready .timeline.is-list-view .year-number{font-size:21.25px}
 .journey-ready .timeline.is-list-view .record-row:has(.record-card>.record-layout[open]){padding-inline:0}
 .journey-ready .timeline.is-list-view .card-head{column-gap:12px}
 .journey-ready .timeline.is-list-view .record-card>details :is(.record-source,.journal-authors){font-size:10px}
}
/* Retain source anchors and a structural axis without WebGL. */
.journey-ready body:not(.webgl-ready) .timeline:not(.is-list-view) .spine-slot::before{display:block;background:var(--mhc-on-paper)}

/* List is a reading ledger: title, provenance, passage, then connections. */
.journey-ready .timeline.is-list-view .record-row{padding:8px 0 16px;border-top:1px solid var(--rec-seam)}
.journey-ready .timeline.is-list-view .record-card>details>summary{min-height:68px;padding:12px 16px 10px}
.journey-ready .timeline.is-list-view .record-card>details>summary::before{inset:4px 0;border-radius:14px;background:radial-gradient(90% 100% at 0 0,color-mix(in srgb,var(--source) 6%,transparent),transparent 72%);transform:none;transition:opacity .2s ease}
.journey-ready .timeline.is-list-view .record-card>details[open]>summary::before{opacity:1;background:var(--list-field-active)}
.journey-ready .timeline.is-list-view .record-card>details>summary:is(:hover,:focus-visible)::before{inset:4px 0;background:var(--list-field-active);opacity:1;transform:none}
.journey-ready .timeline.is-list-view .card-head{align-items:start;gap:12px}
.journey-ready .timeline.is-list-view .card-head>div{grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:6px 24px}
.journey-ready .timeline.is-list-view .record-card h3{grid-column:1;grid-row:1;margin:0;font:400 21px/1.25 var(--sans);letter-spacing:-.025em;text-wrap:pretty}
.journey-ready .timeline.is-list-view .record-card>details .record-kind{grid-column:1;grid-row:2;margin:0;font:400 11px/1.4 var(--sans);letter-spacing:0;text-transform:none;white-space:normal;overflow:visible;color:var(--rec-soft)}
.journey-ready .timeline.is-list-view .record-card>details :is(.record-source,.journal-authors){grid-column:2;grid-row:1/3;align-self:start;margin:2px 0 0;max-width:46ch;font:400 11px/1.5 var(--sans);letter-spacing:0;text-transform:none;white-space:normal;overflow:visible;color:var(--rec-soft)}
.journey-ready .timeline.is-list-view .card-toggle{margin-top:0;background:transparent}
.journey-ready .timeline.is-list-view .record-reveal{margin:0;padding:6px 16px 8px}
.journey-ready .timeline.is-list-view :is(.claim-content,.journal-content){gap:12px;margin:0;padding:0}
.journey-ready .timeline.is-list-view :is(.claim-content>p,.journal-summary){max-width:65ch;margin:0;color:var(--mhc-on-plate);font:400 14px/1.65 var(--sans);text-wrap:pretty}
.journey-ready .timeline.is-list-view .record-visual-body{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:24px;align-items:start;margin:0;padding:0;border:0}
.journey-ready .timeline.is-list-view .record-visual-body>.claim-content{grid-column:1;grid-row:1;min-width:0;margin:0}
.journey-ready .timeline.is-list-view .record-visual-body>.record-image{grid-column:2;grid-row:1;align-self:start;width:100%;max-width:290px;margin:0}
.journey-ready .timeline.is-list-view .record-visual-body>.record-image--portrait{max-width:220px}
.journey-ready .timeline.is-list-view .record-image img{width:100%;max-height:240px;object-fit:contain;object-position:left top}
.journey-ready .timeline.is-list-view .image-credit{padding-top:8px;border:0;font:400 10px/1.5 var(--sans);letter-spacing:0;color:var(--rec-soft)}
.journey-ready .timeline.is-list-view .analytic-note{display:block;max-width:65ch;margin:0;padding:0;border:0;border-radius:0;background:none;color:var(--rec-read);font:400 13px/1.6 var(--sans);letter-spacing:0;text-transform:none}
.journey-ready .timeline.is-list-view .analytic-note>b{display:block;margin-bottom:4px;color:var(--rec-soft);font:500 11px/1.5 var(--sans);letter-spacing:0;text-transform:none}
.journey-ready .timeline.is-list-view .record-reveal>.claim-content{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:12px 24px;align-items:start}
.journey-ready .timeline.is-list-view .record-reveal>.claim-content>p{grid-column:1;grid-row:1}
.journey-ready .timeline.is-list-view .record-reveal>.claim-content>.analytic-note{grid-column:2;grid-row:1/3}
.journey-ready .timeline.is-list-view .record-reveal>.claim-content:not(:has(.analytic-note))>p{grid-column:1/-1}
.journey-ready .timeline.is-list-view .source-link{grid-column:1;justify-self:start;width:max-content;max-width:100%;min-height:44px;margin:0;padding:8px 16px;border:1px solid var(--rec-seam);border-radius:999px;background:var(--rec-cell);text-decoration:none}
.journey-ready .timeline.is-list-view .source-link:hover{border-color:var(--rec-hairline);background:var(--rec-cell-hi);transform:translateY(-2px)}
.journey-ready .timeline.is-list-view .journal-content{grid-template-columns:minmax(0,1fr);align-items:start}
.journey-ready .timeline.is-list-view .journal-content>*{grid-column:1;grid-row:auto}
.journey-ready .timeline.is-list-view .journal-meta{gap:8px 16px;margin:0}
.journey-ready .timeline.is-list-view .journal-meta span+span::before{display:none}
.journey-ready .timeline.is-list-view .journal-method{grid-column:1;grid-row:auto;margin:0}
.journey-ready .timeline.is-list-view .journal-method>summary{min-height:44px;padding-block:8px;font:500 11px/1.5 var(--sans);letter-spacing:0;text-transform:none}
.journey-ready #timeline.is-list-view .journal-card .journal-method dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:8px 0 12px;font-size:13px;line-height:1.5}
.journey-ready #timeline.is-list-view .journal-card .journal-method .journal-method-field{display:grid;align-content:start;gap:4px;min-width:0;margin:0;padding:12px 14px;border:1px solid var(--rec-seam);border-radius:12px;background:var(--rec-cell)}
.journey-ready #timeline.is-list-view .journal-card .journal-method .journal-method-field dt{margin:0}
.journey-ready #timeline.is-list-view .journal-card .journal-method .journal-method-field dd{min-width:0;margin:0;overflow-wrap:anywhere}
.journey-ready .timeline.is-list-view .record-card>details[open] .journal-method dt{margin-bottom:3px;font:500 11px/1.45 var(--sans);text-transform:none;letter-spacing:0}
@media(max-width:1100px){.journey-ready #timeline.is-list-view .journal-card .journal-method dl{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.journey-ready #timeline.is-list-view .journal-card .journal-method dl{grid-template-columns:minmax(0,1fr)}}
@supports(interpolate-size:allow-keywords){
 .journey-ready .timeline.is-list-view :is(.record-layout,.connection-dock,.journal-method,.connection-more){interpolate-size:allow-keywords}
 .journey-ready .timeline.is-list-view :is(.record-layout,.connection-dock,.journal-method,.connection-more)::details-content{block-size:0;opacity:0;overflow:clip;transition:block-size .4s var(--journey-ease),opacity .25s ease,content-visibility .4s allow-discrete}
 .journey-ready .timeline.is-list-view :is(.record-layout,.connection-dock,.journal-method,.connection-more)[open]::details-content{block-size:auto;opacity:1}
}
@media(max-width:1100px){
 .journey-ready .timeline.is-list-view .card-head>div{grid-template-columns:minmax(0,1fr)}
 .journey-ready .timeline.is-list-view .record-card>details :is(.record-source,.journal-authors){grid-column:1;grid-row:3;max-width:65ch;margin:0}
 .journey-ready .timeline.is-list-view :is(.record-reveal>.claim-content,.journal-content){grid-template-columns:minmax(0,1fr)}
 .journey-ready .timeline.is-list-view :is(.record-reveal>.claim-content,.journal-content)>*{grid-column:1!important;grid-row:auto!important}
 .journey-ready .timeline.is-list-view .record-visual-body{grid-template-columns:minmax(0,1fr) minmax(150px,.6fr)}
}
@media(max-width:700px){
 .journey-ready .timeline.is-list-view .record-row{padding-block:4px 12px}
 .journey-ready .timeline.is-list-view .record-card>details>summary{padding-inline:10px}
 .journey-ready .timeline.is-list-view .record-card h3{font-size:19px}
 .journey-ready .timeline.is-list-view .record-card>details .record-kind{font-size:10px}
 .journey-ready .timeline.is-list-view .record-card>details :is(.record-source,.journal-authors){font-size:11px}
 .journey-ready .timeline.is-list-view .record-reveal{padding-inline:10px}
 .journey-ready .timeline.is-list-view .record-visual-body{grid-template-columns:minmax(0,1fr);gap:16px}
 .journey-ready .timeline.is-list-view .record-visual-body>.record-image{grid-column:1;grid-row:2;max-width:100%}
 .journey-ready .timeline.is-list-view .record-visual-body>.record-image--portrait{max-width:220px}
}
@media(prefers-reduced-motion:reduce){
 .journey-ready .timeline.is-list-view :is(.record-layout,.connection-dock,.journal-method,.connection-more)::details-content{transition:none}
}

/* Unified evidence deck; compact, explicit reference rows in List. */
.journey-ready .timeline .connection-panel[hidden]{display:none!important}
.journey-ready .timeline .connection-panel{position:relative;z-index:1;align-self:start;min-width:0;width:100%;margin:0;text-align:left;color:var(--mhc-on-plate);--connection-light-edge:0%}
.journey-ready .timeline:not(.is-list-view) .record-row[data-side=right]>.connection-panel{grid-column:1;grid-row:1;justify-self:end;--connection-light-edge:100%}
.journey-ready .timeline:not(.is-list-view) .record-row[data-side=left]>.connection-panel{grid-column:3;grid-row:1;justify-self:start}
/* The top margin is a minimum; end alignment follows the source's pill as
   its content opens. A taller deck can still grow from the entry's top. */
.journey-ready .timeline:not(.is-list-view) .record-row>.connection-panel{align-self:end;max-width:670px;margin-top:var(--connection-panel-top,calc(clamp(34px,3.6vw,48px) + 64px));margin-bottom:44px}
/* The active card owns height. Backs are the same articles, inert until dealt. */
.journey-ready .timeline .connection-deck{position:relative;isolation:isolate;margin-inline:12px;--deck-card-height:260px;--deck-lean:1}
.journey-ready .timeline .connection-card{position:relative;isolation:isolate;min-width:0;width:100%;margin:0;border:1px solid var(--rec-seam);border-radius:22px;background:rgb(var(--mhc-float-rgb));box-shadow:0 12px 30px rgba(var(--mhc-shadow-rgb),.06);transform-origin:50% 65%;touch-action:pan-y pinch-zoom}
.journey-ready .timeline .connection-card-face{padding:8px 18px 4px}
.journey-ready .timeline .connection-card.is-front{z-index:2}
.journey-ready .timeline .connection-card::before{content:'';position:absolute;z-index:-1;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(124% 66% at var(--connection-light-edge) 0%,color-mix(in srgb,var(--source) 10%,transparent),transparent 68%)}
.journey-ready .timeline .connection-deck-sheet{position:absolute;top:0;left:var(--sheet-inset);width:calc(100% - var(--sheet-inset)*2);height:calc(var(--deck-card-height) - var(--sheet-trim));overflow:clip;box-shadow:0 6px 16px rgba(var(--mhc-shadow-rgb),.05);pointer-events:none;transform:translate(var(--sheet-x),var(--sheet-y)) rotate(calc(var(--sheet-tilt)*var(--deck-lean)))}
.journey-ready .timeline .connection-deck-sheet .connection-card-face{visibility:hidden}
.journey-ready .timeline .connection-card.is-deck-motion{position:absolute;inset:0 auto auto 0;overflow:clip;transform-origin:0 0;will-change:transform}
.journey-ready .timeline .connection-card.is-deck-motion .connection-card-face{box-sizing:border-box;width:var(--motion-face-width)}
.journey-ready .timeline .connection-card:is(.is-departing,.is-settling) .connection-card-face{visibility:visible}
.journey-ready .timeline .connection-deck.is-swipeable .connection-card.is-front{cursor:grab}
.journey-ready .timeline .connection-deck:is(.is-swipe-pending,.is-dragging){-webkit-user-select:none;user-select:none}
.journey-ready .timeline .connection-deck.is-dragging .connection-card.is-front{cursor:grabbing}
.journey-ready .timeline .connection-deck.is-switching :is(.connection-card.is-front,.connection-card.is-departing){will-change:transform}
.journey-ready .timeline .connection-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex:none;min-height:44px;margin:0 0 6px}
.journey-ready .timeline .connection-context{font:500 11px/1.4 var(--sans);letter-spacing:0;color:var(--paper-dim)}
.journey-ready .timeline .connection-panel-close,.journey-ready .timeline .connection-card-pagination button{display:grid;place-items:center;width:44px;height:44px;flex:0 0 44px;margin:0;padding:0;border:0;border-radius:50%;background:transparent;color:var(--mhc-on-plate);cursor:pointer;transition:background .2s ease}
.journey-ready .timeline .connection-panel-close{background:var(--rec-cell)}
.journey-ready .timeline .connection-panel-close:hover,.journey-ready .timeline .connection-card-pagination button:not(:disabled):hover{background:var(--rec-cell-hi)}
.journey-ready .timeline .connection-card button svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.journey-ready .timeline .connection-page{min-width:0;margin:0;padding:0 0 8px}
.journey-ready .timeline .connection-page-year{margin:0 0 6px;font:400 28px/1 var(--sans);letter-spacing:-.035em;font-variant-numeric:tabular-nums;color:var(--era-accent,var(--paper-dim))}
.journey-ready .timeline .connection-page-title{margin:0 0 10px;font:400 clamp(20px,1.7vw,24px)/1.2 var(--sans);letter-spacing:-.025em;text-wrap:pretty;overflow-wrap:anywhere;color:var(--mhc-on-plate)}
.journey-ready .timeline .connection-page>.connection-row-relation{margin-bottom:12px}
.journey-ready .timeline .connection-card-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;flex:none;min-height:44px;border-top:1px solid var(--rec-seam)}
.journey-ready .timeline .connection-card-position{font:400 10px/1.4 var(--mono);font-variant-numeric:tabular-nums;color:var(--paper-dim)}
.journey-ready .timeline .connection-card-pagination{display:flex;gap:3px}
.journey-ready .timeline .connection-card-pagination button:disabled{opacity:.3;cursor:default}
.journey-ready .timeline [data-deck-page=previous] svg{transform:rotate(180deg)}
.journey-ready .timeline .connection-section+.connection-section{margin-top:14px}
.journey-ready .timeline .connection-section-title{display:flex;align-items:center;gap:8px;min-height:20px;margin:0 0 4px;font:500 11px/1.4 var(--sans);letter-spacing:0;text-transform:none;color:var(--paper-dim)}
.journey-ready .timeline .connection-section-rows{border-top:1px solid var(--rec-seam)}
.journey-ready .timeline .connection-row{min-width:0;margin:0;border:0;border-bottom:1px solid var(--rec-seam);border-radius:0;background:transparent;color:var(--mhc-on-plate)}
.journey-ready .timeline .connection-row>summary{display:grid;grid-template-columns:3.1rem minmax(0,1fr) 16px;align-items:center;gap:10px;min-width:0;min-height:44px;margin:0;padding:6px 4px;border-radius:14px;list-style:none;cursor:pointer;text-align:left;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.journey-ready .timeline .connection-row>summary::-webkit-details-marker{display:none}
.journey-ready .timeline .connection-row>summary::marker{content:''}
.journey-ready .timeline .connection-row>summary:is(:hover,:focus-visible),.journey-ready .timeline .connection-row.is-expanded>summary{background:var(--rec-cell);outline:0}
.journey-ready .timeline .connection-row-year{font:400 10px/1.5 var(--mono);font-variant-numeric:tabular-nums;letter-spacing:0;color:var(--era-accent,var(--paper-dim));overflow-wrap:anywhere}
.journey-ready .timeline .connection-row-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-width:0}
.journey-ready .timeline .connection-row-title{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;overflow:hidden;font:400 13px/1.4 var(--sans);letter-spacing:-.01em;overflow-wrap:anywhere;color:var(--mhc-on-plate)}
.journey-ready .timeline .connection-row.is-expanded .connection-row-title{display:block;-webkit-line-clamp:unset;overflow:visible}
.journey-ready .timeline .connection-row-relation{display:flex;align-items:center;gap:6px;font:400 11px/1.4 var(--sans);letter-spacing:0;color:var(--paper-dim)}
.journey-ready .timeline .connection-row-relation::before{content:'';width:5px;height:5px;flex:0 0 5px;border-radius:50%;background:var(--connection-color)}
.journey-ready .timeline .connection-row-chevron{width:16px;height:16px;fill:none;stroke:var(--paper-dim);stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;transition:transform .24s var(--journey-ease)}
.journey-ready .timeline .connection-row.is-expanded .connection-row-chevron{transform:rotate(180deg)}
.journey-ready .timeline .connection-row-body{min-width:0}
.journey-ready .timeline .connection-row>.connection-row-body{padding:4px 30px 4px calc(3.1rem + 14px)}
.journey-ready .timeline .connection-reference-description{margin:0 0 8px;font:400 14px/1.55 var(--sans);letter-spacing:-.005em;text-wrap:pretty;overflow-wrap:anywhere;color:var(--mhc-on-plate)}
.journey-ready .timeline .connection-row-stream{margin:0 0 12px;font:500 15px/1.35 var(--sans);letter-spacing:-.01em;color:var(--mhc-on-plate)}
.journey-ready .timeline .connection-row-evidence{display:grid;gap:12px;margin:0}
.journey-ready .timeline .connection-row-evidence dt{margin:0 0 4px;font:500 12px/1.45 var(--sans);letter-spacing:0;text-transform:none;color:var(--paper-dim)}
.journey-ready .timeline .connection-row-evidence dd{margin:0;font:400 14px/1.55 var(--sans);letter-spacing:-.005em;overflow-wrap:anywhere;color:var(--mhc-on-plate)}
/* A connection's destination is the archive's medium pill, the same component
   as a record's View primary source, so Lumen lights it as it lights every
   other pill. The link also carries the cross-reference class, whose row
   geometry, inset hover and corner sign are set aside here, so that only the
   component's own surface, hover and directional sign remain. Its field is
   the source colour of the entry it opens, which the row already carries as
   --source, rather than the chapter's, so the pill names where it leads. */
#timeline .connection-panel .connection-row-link.mhc-link{--mhc-link-field:var(--source);display:inline-flex;width:fit-content;max-width:100%;min-height:var(--mhc-link-height);margin:8px 0 0;padding:var(--mhc-link-pad-y) var(--mhc-link-pad-x);border:1px solid var(--mhc-hairline-soft);border-radius:999px;background:color-mix(in srgb,var(--mhc-link-field) 15%,transparent);color:var(--mhc-on-plate)}
#timeline .connection-panel .connection-row-link.mhc-link::after{position:static;width:var(--mhc-link-sign-size);height:var(--mhc-link-sign-size);margin:0 0 0 auto;opacity:1}
#timeline .connection-panel .connection-row-link.mhc-link:is(:hover,:focus-visible){background:color-mix(in srgb,var(--mhc-link-field) 34%,transparent);border-color:var(--mhc-on-plate);color:var(--mhc-on-plate);transform:translateY(-2px)}
#timeline .connection-panel .connection-row-link.mhc-link:active{transform:translateY(0) scale(.98)}
@media (prefers-reduced-motion:reduce){#timeline .connection-panel .connection-row-link.mhc-link:is(:hover,:focus-visible,:active){transform:none}}
.journey-ready .timeline .connection-panel :is(button,summary,a,[tabindex]):focus-visible{outline:2px solid var(--mhc-accent-ink);outline-offset:2px}
.journey-ready .timeline .connection-tether{position:absolute;z-index:0;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible;fill:none;stroke:var(--mhc-event-link-ink);stroke-width:1.2}
.journey-ready .timeline .connection-tether-ground{stroke:var(--mhc-surface-room);stroke-width:5;opacity:.85}
.journey-ready .timeline .connection-tether-line{opacity:.9}
.journey-ready .timeline .connection-tether circle{fill:var(--mhc-surface-room)}
.journey-ready .timeline .record-row.is-reading-connections .holder--record{opacity:1!important}
@media(max-width:700px){
 .journey-ready .timeline:not(.is-list-view) .record-row[data-side]>.connection-panel{align-self:start;grid-column:2;grid-row:2;width:100%;margin:16px 0 44px;max-width:none;--connection-light-edge:0%}
 .journey-ready .timeline .connection-card-face{padding-inline:14px}
 .journey-ready .timeline .connection-row>summary{grid-template-columns:2.6rem minmax(0,1fr) 16px;gap:8px}
 .journey-ready .timeline .connection-row-heading{grid-template-columns:minmax(0,1fr);gap:3px}
 .journey-ready .timeline .connection-row>.connection-row-body{padding-inline:4px}
 .journey-ready .timeline.is-list-view .connection-panel{width:auto;margin-inline:10px}
}
/* References are part of the entry's reading sequence, with their own type rail. */
.journey-ready .timeline.is-list-view .connection-panel{order:3;align-self:stretch;width:auto;margin:0 16px 4px}
.journey-ready .timeline.is-list-view .holder--links{order:2;margin:0;padding-inline:16px;filter:none;transform:none}
.journey-ready .timeline.is-list-view .has-connections-panel .connection-dock{margin:0}
.journey-ready .timeline.is-list-view .connection-dock>summary{display:flex;align-items:center;gap:8px;width:max-content;max-width:100%;min-height:44px;padding:6px 0;border:0;border-radius:4px;background:none;font:500 12px/1.4 var(--sans);letter-spacing:0;text-transform:none}
.journey-ready .timeline.is-list-view .connection-dock>summary:hover{transform:none;background:none}
.journey-ready .timeline.is-list-view .connection-dock>summary b{display:grid;place-items:center;min-width:20px;height:20px;padding:0 4px;border-radius:50%;background:var(--rec-cell);font:400 10px/1 var(--mono);color:var(--rec-read)}
.journey-ready .timeline.is-list-view .connection-dock>summary i{margin-left:12px;font:400 11px/1.4 var(--sans);letter-spacing:0;text-transform:none;color:var(--rec-soft)}
.journey-ready .timeline.is-list-view .connection-tether{display:none}
.journey-ready .timeline.is-list-view .connection-section{display:grid;grid-template-columns:104px minmax(0,1fr);gap:16px;padding:12px 0;border-top:1px solid var(--rec-seam)}
.journey-ready .timeline.is-list-view .connection-section+.connection-section{margin:0}
.journey-ready .timeline.is-list-view .connection-section-title{display:block;min-height:0;margin:0;padding:10px 0;font:500 12px/1.4 var(--sans);color:var(--rec-read)}
.journey-ready .timeline.is-list-view .connection-section-rows{min-width:0;border:0}
.journey-ready .timeline.is-list-view .connection-row:last-child{border-bottom:0}
.journey-ready .timeline.is-list-view .connection-row>summary{position:relative;isolation:isolate;grid-template-columns:38px minmax(0,1fr) 16px;align-items:start;gap:12px;padding:10px 0;min-height:44px;background:transparent}
.journey-ready .timeline.is-list-view .connection-row>summary::before{content:'';position:absolute;z-index:-1;inset:4px 0;border-radius:14px;background:color-mix(in srgb,var(--source) 13%,rgba(var(--mhc-on-plate-rgb),.07));opacity:0;transform:scaleX(.975);pointer-events:none;transition:inset .52s var(--ease),opacity .24s ease,transform .52s var(--ease)}
.journey-ready .timeline.is-list-view .connection-row>summary:is(:hover,:focus-visible)::before,.journey-ready .timeline.is-list-view .connection-row.is-expanded>summary::before{inset:4px -8px;opacity:1;transform:none}
.journey-ready .timeline.is-list-view .connection-row>summary:focus-visible{outline:0}
.journey-ready .timeline.is-list-view .connection-row>summary:focus-visible::before{box-shadow:inset 0 0 0 1px var(--source)}
.journey-ready .timeline.is-list-view .connection-row>summary:is(:hover,:focus-visible) .connection-row-heading{transform:translateX(7px)}
.journey-ready .timeline.is-list-view .connection-row-year{padding-top:2px;font-size:10px;line-height:1.5}
.journey-ready .timeline.is-list-view .connection-row-heading{align-items:start;gap:12px;transition:transform .52s var(--ease)}
.journey-ready .timeline.is-list-view .connection-row-title{font-size:15px;line-height:1.4;-webkit-line-clamp:2}
.journey-ready .timeline.is-list-view .connection-row-relation{padding-top:2px;font-size:11px;line-height:1.5;white-space:nowrap}
.journey-ready .timeline.is-list-view .connection-row-chevron{margin-top:2px}
.journey-ready .timeline.is-list-view .connection-row>.connection-row-body{padding:0 28px 8px 50px}
.journey-ready .timeline.is-list-view .connection-row-evidence{grid-template-columns:minmax(0,.85fr) minmax(0,1.3fr);gap:16px}
.journey-ready .timeline.is-list-view .connection-row-evidence>div:only-child{grid-column:1/-1}
.journey-ready .timeline.is-list-view .connection-row-evidence dt{font-size:11px;line-height:1.5;color:var(--rec-soft)}
.journey-ready .timeline.is-list-view :is(.connection-row-evidence dd,.connection-reference-description){max-width:65ch;font-size:13px;line-height:1.6}
.journey-ready .timeline.is-list-view .connection-row-stream{margin-bottom:8px;font-size:10px;text-transform:capitalize}
@media(max-width:1100px){
 .journey-ready .timeline.is-list-view .connection-section{grid-template-columns:88px minmax(0,1fr);gap:12px}
 .journey-ready .timeline.is-list-view .connection-row-heading{grid-template-columns:minmax(0,1fr);gap:4px}
 .journey-ready .timeline.is-list-view .connection-row-evidence{grid-template-columns:minmax(0,1fr);gap:10px}
}
@media(max-width:700px){
 .journey-ready .timeline.is-list-view .holder--links{padding-inline:10px}
 .journey-ready .timeline.is-list-view .connection-panel{margin-inline:10px}
 .journey-ready .timeline.is-list-view .connection-section{grid-template-columns:minmax(0,1fr);gap:4px;padding-block:12px 8px}
 .journey-ready .timeline.is-list-view .connection-section-title{display:flex;align-items:baseline;gap:8px;padding:0 0 4px}
 .journey-ready .timeline.is-list-view .connection-row>summary{grid-template-columns:34px minmax(0,1fr) 16px;gap:8px}
 .journey-ready .timeline.is-list-view .connection-row-title{font-size:14px}
 .journey-ready .timeline.is-list-view .connection-row>.connection-row-body{padding:0 0 8px 42px}
}
.timeline-reduce-motion, .timeline-reduce-motion *, .timeline-reduce-motion *::before, .timeline-reduce-motion *::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}

/* The entry footer shares one reading scale in List. Scope by the timeline ID
   so older inline typography rules cannot reintroduce indents or tracking. */
.journey-ready #timeline.is-list-view .record-card .analytic-note{max-width:65ch;margin:8px 0 0;padding:16px 0 0;border:0;border-top:1px solid var(--rec-seam);background:none;font:400 14px/1.6 var(--sans);letter-spacing:0;color:var(--rec-read)}
.journey-ready #timeline.is-list-view .record-card .analytic-note>b{margin:0 0 8px;font:500 12px/1.5 var(--sans);letter-spacing:0;text-transform:none;color:var(--rec-soft)}
.journey-ready #timeline.is-list-view .record-card .source-link{margin:0;padding:10px 18px;}
.journey-ready #timeline.is-list-view .record-card>details :is(.record-source,.journal-authors){font:400 12px/1.5 var(--sans);letter-spacing:0;text-transform:none;color:var(--rec-soft)}
.journey-ready #timeline.is-list-view :is(.connection-section-title,.journal-method>summary){font:500 12px/1.5 var(--sans);letter-spacing:0;text-transform:none;color:var(--rec-soft)}
/* Connections heads the reference groups; its count and action stay secondary. */
.journey-ready #timeline.is-list-view .connection-dock>summary{min-height:52px;margin-top:8px;padding:10px 0;font:500 20px/1.2 var(--sans);letter-spacing:-.025em;text-transform:none;color:var(--mhc-event-link-ink)}
.journey-ready #timeline.is-list-view .connection-dock>summary i{font:400 12px/1.5 var(--sans)}
.journey-ready #timeline.is-list-view .connection-section{grid-template-columns:minmax(0,1fr);gap:4px;padding:16px 0}
.journey-ready #timeline.is-list-view .connection-section-title{padding:0 0 4px}
.journey-ready #timeline.is-list-view .connection-row-title{font:400 16px/1.4 var(--sans);letter-spacing:-.015em}
.journey-ready #timeline.is-list-view .connection-row-year{font:400 12px/1.5 var(--mono)}
.journey-ready #timeline.is-list-view :is(.connection-row-relation,.connection-row-evidence dt){font:400 12px/1.5 var(--sans);letter-spacing:0;text-transform:none}
.journey-ready #timeline.is-list-view .connection-row-stream{font:500 15px/1.4 var(--sans);letter-spacing:-.01em;text-transform:none}
.journey-ready #timeline.is-list-view :is(.connection-row-evidence dd,.connection-reference-description,.journal-method dl){font:400 14px/1.6 var(--sans);letter-spacing:0}
@media(max-width:700px){
 .journey-ready #timeline.is-list-view .connection-dock>summary{font-size:18px}
}

/* Connection controls share the link purple across both reading views. */
#timeline .connection-dock>summary,
#timeline .connection-dock>summary i{color:var(--mhc-event-link-ink)}
#timeline .connection-dock>summary::before{background:radial-gradient(92% 180% at 100% 50%,color-mix(in srgb,var(--mhc-event-link-ink) 20%,transparent),transparent 70%)}
#timeline .connection-dock>summary b{background:color-mix(in srgb,var(--mhc-event-link-ink) 14%,var(--mhc-ground));color:var(--mhc-event-link-ink)}
#timeline .connection-dock>summary:focus-visible{box-shadow:inset 0 0 0 2px var(--mhc-event-link-ink)}
/* A bulk control that is still working says so in three places at once: the
   cursor over the page, the pressed control, which breathes on its own wash
   until the work is done, and the readout beside it, which the script sets to
   the verb in progress. Reduced motion keeps the wash and drops the breathing. */
html.timeline-busy{cursor:progress}
/* Where the archive draws its own pointer, the pointer says so too: the
   lens in theme.css empties its pupil and turns an arc on its bezel for as
   long as this class stands, and reduced motion keeps the open ring while
   stopping the turn. The rule lives with the lens rather than here, because
   the instrument now carries three circles and a rule written for one would
   restyle all of them. */
.timeline-filter-drawer .disclosure-group button[aria-busy="true"]{cursor:progress;background:color-mix(in srgb,var(--mhc-on-paper) 10%,transparent);animation:timeline-busy-breathe .9s ease-in-out infinite alternate}
@keyframes timeline-busy-breathe{from{background:color-mix(in srgb,var(--mhc-on-paper) 5%,transparent)}to{background:color-mix(in srgb,var(--mhc-on-paper) 15%,transparent)}}
html.timeline-reduce-motion .timeline-filter-drawer .disclosure-group button[aria-busy="true"]{animation:none}
@media(prefers-reduced-motion:reduce){.timeline-filter-drawer .disclosure-group button[aria-busy="true"]{animation:none}}
/* Year groups out of sight skip rendering once they have been laid out at their
   true size, which the script arranges; the size they keep is the one they last
   rendered at, so the deferral moves nothing on the page. */
.journey-ready .timeline .year-group{contain-intrinsic-block-size:auto 720px}
/* A group holding one of the photographs always renders, so that the image
   loads exactly as early as it did before and never resizes a group late. */
.journey-ready .timeline.is-deferring .year-group:not([data-holds-image]){content-visibility:auto}
.journey-ready .timeline.is-deferring .year-group.is-settling{content-visibility:visible}
