.analysis-hero{max-width:1320px;margin:auto;padding:70px var(--pad) 76px}.analysis-hero h1{max-width:850px}.analysis-hero h1 span{color:var(--accent)}.analysis-hero>p{max-width:52ch;font-size:21px;color:var(--muted);margin-top:25px}.analysis-hero .intro-note{font-size:14px}
.reading-layout{background:var(--paper);color:var(--ink);color-scheme:light;display:grid;grid-template-columns:220px minmax(0,800px);gap:64px;justify-content:center;padding:64px var(--pad) 100px}
.toc{min-width:0}.toc nav{position:sticky;top:24px;max-height:calc(100vh - 48px);overflow:auto}.toc h2{font-family:Inter,sans-serif;font-size:16px;font-weight:500;letter-spacing:0;margin:0 0 18px}.toc a{display:block;padding:6px 0;font-size:13px;color:#57554f}.toc a:hover{color:#a54028;text-decoration:underline}
.analysis-body{min-width:0}.analysis-body section{margin-bottom:76px;scroll-margin-top:28px}.analysis-body h2{font-size:clamp(1.9rem,3.2vw,2.7rem);line-height:1.12;letter-spacing:-.025em;max-width:24ch;margin-bottom:24px}.analysis-body h3{font-family:Inter,sans-serif;font-size:20px;line-height:1.4;letter-spacing:-.015em;margin:32px 0 14px}.analysis-body p,.analysis-body li,.analysis-body dd{color:#57554f;font-size:16px;line-height:1.8}.analysis-body p+p{margin-top:18px}.analysis-body strong{color:var(--ink);font-weight:500}.analysis-body ul{padding-left:22px}.analysis-body li+li{margin-top:12px}.analysis-body a{color:#a54028}.analysis-body :focus-visible,.toc :focus-visible{outline-color:#a54028}
.diagram{margin:30px 0;background:#222220;color:#f5f1e9;border-radius:12px;overflow:hidden}.diagram svg{display:block;width:100%;height:auto;padding:16px 12px 0}.diagram text{font-family:Inter,sans-serif;font-size:19px;fill:currentColor;stroke:none}.diagram .small{font-size:15px}.diagram .tiny{font-size:11px}.diagram .bold{font-weight:500}.diagram line{stroke:#aaa89f;stroke-width:2}.diagram .accent{stroke:#f58a70}.diagram text.accent{stroke:none;fill:#f58a70}.diagram .muted{stroke:#b7b4ab}.diagram text.muted{stroke:none;fill:#b7b4ab}.diagram .wave{fill:none;stroke:#e5cf9e;stroke-width:2}.diagram .box{fill:#3b3b36;stroke:none}.diagram .hot{fill:#754333;stroke:none}.diagram .ghost{fill:none;stroke:#88867e;stroke-dasharray:4 5}.diagram figcaption{padding:16px 24px 22px;color:#b7b4ab;font-size:13px;line-height:1.65}
.analysis-body details{margin-top:24px;border-top:1px solid #c5beb2;border-bottom:1px solid #c5beb2;padding-bottom:0}.analysis-body summary{padding:18px 0;cursor:pointer;font-weight:500}.analysis-body details[open]{padding-bottom:22px}.analysis-body details p{font-size:15px}.analysis-body code{font-size:.88em;overflow-wrap:anywhere}.note{margin:28px 0;padding:26px;background:#e0d8c9;border-radius:10px}.note h3{margin-top:0}
.table-scroll{overflow-x:auto;margin:26px 0}table{width:100%;border-collapse:collapse;font-size:14px;line-height:1.6;text-align:left}caption{text-align:left;color:#57554f;font-size:13px;margin-bottom:12px}th,td{padding:13px 12px;border-bottom:1px solid #c5beb2;vertical-align:top}th:first-child,td:first-child{padding-left:0}th{font-weight:500}td{color:#57554f}td:last-child{font-variant-numeric:tabular-nums}.analysis-body dt{font-weight:500;margin-top:18px;font-size:14px}.analysis-body dd{font-size:14px;margin-top:4px}
@media(max-width:1050px){.reading-layout{grid-template-columns:170px minmax(0,1fr);gap:32px}}
@media(max-width:760px){.analysis-hero{padding-top:38px;padding-bottom:46px}.analysis-hero>p{font-size:18px}.reading-layout{display:block;padding-top:32px}.toc{margin-bottom:48px;padding-bottom:28px;border-bottom:1px solid #c5beb2}.toc nav{position:static;max-height:none;display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.toc h2{grid-column:1/-1}.analysis-body section{margin-bottom:55px}.diagram{overflow-x:auto}.diagram svg{min-width:540px}.diagram figcaption{position:sticky;left:0;max-width:calc(100vw - 48px);padding:15px 18px}.note{padding:20px}.nav>.text-link{font-size:12px}}

@media(max-width:760px){.diagram::before{content:"Scroll diagram to explore →";display:block;position:sticky;left:0;padding:12px 18px 0;color:#b7b4ab;font-size:12px;width:calc(100vw - 48px)}}

.diagram figcaption a{color:#f58a70;text-decoration:underline}

.diagram line.downbeat{stroke:#85c7e0;stroke-width:3}.diagram text.downbeat{fill:#85c7e0;stroke:none}
.diagram line.decision{stroke:#e5cf9e;stroke-width:1.5}.diagram .decision-dot{fill:#e5cf9e}

.diagram .flow-edge{fill:none;stroke:#b7b4ab;stroke-width:2}.diagram .flow-decision{fill:#34332c;stroke:#e5cf9e;stroke-width:1.5}

.diagram .pipeline-chart text{font-size:13px}.diagram .pipeline-chart .stage-label{font-size:11px;letter-spacing:1.6px;fill:#f58a70}.diagram .pipeline-chart .stage-rule{stroke:#777469;stroke-width:1;opacity:.5}

.analysis-body .track-reference{font-size:13px;line-height:1.6;margin-top:22px}
