:root{--bg:#07111d;--panel:#0b1928;--panel-deep:#081421;--text:#f1e6cc;--muted:#bcbaa9;--soft:#7f91a2;--gold:#d9b478;--cyan:#8fc8d3;--red:#ef9b90;--line:rgba(143,200,211,.2);--serif:"Iowan Old Style","Palatino Linotype","Book Antiqua",Georgia,serif;--radius:18px;color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px}body{margin:0;min-width:320px;color:var(--text);background:radial-gradient(ellipse at 80% 4%,rgba(68,121,151,.13),transparent 35%),linear-gradient(180deg,#040b14,var(--bg) 35%,#06101c);font-family:"Segoe UI","Trebuchet MS",Verdana,sans-serif;font-size:16px;line-height:1.6}button,a,input,summary{-webkit-tap-highlight-color:transparent}button{font:inherit}a{color:var(--cyan);text-underline-offset:4px}button{cursor:pointer}button:disabled{cursor:default;opacity:.4}button:focus-visible,a:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--gold);outline-offset:5px}button:focus:not(:focus-visible){outline:none}[hidden]{display:none!important}.wrap{width:min(1380px,calc(100% - 80px));margin-inline:auto}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;z-index:20;top:8px;left:20px;padding:12px 18px;background:var(--text);color:var(--bg);transform:translateY(-150%)}.skip-link:focus{transform:none}.site-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:27px;padding-bottom:25px;border-bottom:1px solid rgba(217,180,120,.15)}.site-brand{display:flex;align-items:center;gap:12px;color:var(--text);font-size:14px;font-weight:600;text-decoration:none}.brand-mark{font-size:26px;color:var(--gold);line-height:1}.site-header nav{display:flex;gap:13px;align-items:center;font-size:12px;color:var(--soft)}.site-header nav a{color:var(--muted);text-decoration:none}.intro{display:grid;grid-template-columns:minmax(0,850px) 1fr;align-items:center;gap:30px;min-height:310px;padding-top:45px;padding-bottom:47px}.intro h1{font-family:var(--serif);font-size:clamp(43px,5.4vw,74px);font-weight:500;line-height:1.03;letter-spacing:-.045em;margin:0 0 22px;max-width:920px}.intro-lead{margin:0;max-width:750px;color:var(--muted);font-size:17px;line-height:1.75}.attribution{color:var(--soft);font-size:12px;max-width:780px;margin:17px 0 0}.intro-aside{position:relative;width:240px;height:225px;justify-self:center;opacity:.75}.orbit{position:absolute;inset:35px 0;border:1px solid rgba(143,200,211,.2);border-radius:50%;transform:rotate(-30deg)}.orbit-b{inset:0 40px;border-color:rgba(217,180,120,.25);transform:rotate(30deg)}.orbit-core{position:absolute;left:93px;top:85px;width:52px;height:52px;border:1px solid var(--gold);border-radius:50%;box-shadow:0 0 60px rgba(217,180,120,.17),inset 0 0 20px rgba(217,180,120,.12)}.orbit-point{position:absolute;width:7px;height:7px;background:var(--cyan);border-radius:50%;box-shadow:0 0 12px rgba(143,200,211,.5)}.point-a{left:23px;top:145px}.point-b{right:75px;top:24px;background:var(--gold)}.section-heading{display:flex;align-items:baseline;gap:20px;justify-content:space-between;margin-bottom:15px}.section-heading h2,.explorer-head h2{font-size:19px;font-weight:600;letter-spacing:-.025em;margin:0}.section-heading p,.explorer-head p{font-size:13px;color:var(--soft);margin:0}.routes-section{margin-bottom:39px}.routes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.route-card{display:flex;align-items:flex-start;gap:16px;padding:20px 20px;border:1px solid rgba(217,180,120,.2);border-radius:14px;color:var(--text);text-align:left;background:linear-gradient(130deg,rgba(20,35,49,.8),rgba(10,23,36,.4));transition:border-color .15s,background .15s}.route-card:hover,.route-card[aria-pressed=true]{border-color:var(--gold);background:rgba(217,180,120,.065)}.route-number{color:var(--gold);font-family:var(--serif);font-size:24px;line-height:1.2}.route-card strong{display:block;font-size:15px;font-weight:600}.route-card small{display:block;color:var(--soft);font-size:12px;line-height:1.55;margin-top:5px}.route-arrow{margin-left:auto;color:var(--gold);font-size:21px;line-height:1.2}.loading-copy{color:var(--soft);font-size:14px;margin:0}.explorer-section{margin-bottom:72px;scroll-margin-top:20px}.explorer-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;margin-bottom:20px}.explorer-head h2{font-family:var(--serif);font-size:34px;font-weight:500;margin-bottom:5px}.legend{display:flex;flex-wrap:wrap;gap:17px;font-size:11px;color:var(--muted);padding-bottom:5px}.legend span{display:flex;align-items:center;gap:7px}.legend-line{display:inline-block;width:21px;height:0;border-top:2px solid var(--cyan)}.legend-line.is-disputed{border-color:var(--red);border-top-style:dashed}.explorer-toolbar{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:14px 18px;background:rgba(15,30,44,.8);border:1px solid var(--line);border-radius:var(--radius) var(--radius) 0 0}.segmented{display:flex;gap:3px;background:rgba(3,11,20,.55);padding:4px;border-radius:9px}.segmented button{border:0;border-radius:6px;padding:8px 15px;color:var(--muted);font-size:12px;background:transparent}.segmented button[aria-pressed=true]{color:var(--text);background:#233547;box-shadow:0 1px 4px rgba(0,0,0,.2)}.toolbar-secondary{display:flex;gap:20px}.quiet-button{border:0;background:transparent;color:var(--muted);font-size:12px;padding:6px 0}.quiet-button:hover{color:var(--gold)}.quiet-button span{margin-left:7px;color:var(--gold)}.explorer-layout{display:grid;grid-template-columns:minmax(0,1fr) 352px;border:1px solid var(--line);border-top:0;border-radius:0 0 var(--radius) var(--radius);overflow:hidden;background:rgba(7,19,31,.65)}.map-column{min-width:0}.map-viewport{position:relative;min-height:530px;padding:12px 4px 0;background:radial-gradient(ellipse at 50% 45%,rgba(24,60,78,.2),transparent 70%);overflow:hidden}.map-viewport svg{display:block;width:100%;height:auto;min-height:530px;overflow:visible}.map-loading{position:absolute;inset:0;display:grid;place-items:center;font-size:14px;color:var(--soft)}.map-caption{display:flex;justify-content:space-between;gap:15px;padding:11px 20px;border-top:1px solid rgba(143,200,211,.1);color:var(--soft);font-size:10px}.map-caption>span:first-child{color:var(--muted);white-space:nowrap}.map-node{cursor:pointer;outline:none}.map-node .node-surface{fill:#0d2031;stroke:#425b6b;stroke-width:1.4;transition:fill .15s,stroke .15s,opacity .15s}.map-node .node-ring{fill:none;stroke:rgba(143,200,211,.1);stroke-width:1}.map-node text{fill:var(--text);font-family:"Segoe UI",sans-serif;font-size:17px;font-weight:500;pointer-events:none}.map-node .node-indicator{fill:#86bac7}.map-node[data-group=transitions] .node-indicator{fill:var(--gold)}.map-node[data-group=cosmos] .node-indicator{fill:#a9b89e}.map-node:hover .node-surface,.map-node:focus-visible .node-surface{fill:#163046;stroke:var(--cyan);stroke-width:2}.map-node[aria-pressed=true] .node-surface{fill:#203849;stroke:var(--gold);stroke-width:2.6}.map-node:focus-visible .node-ring{stroke:var(--gold);stroke-width:2}.map-node.is-muted{opacity:.25}.map-edge{cursor:pointer;outline:none}.map-edge .edge-hit{fill:none;stroke:transparent;stroke-width:20}.map-edge .edge-line{fill:none;stroke:var(--cyan);stroke-width:1.7;opacity:.5;transition:opacity .15s,stroke-width .15s}.map-edge.is-disputed .edge-line{stroke:var(--red);stroke-dasharray:5 5;opacity:.75}.map-edge.is-muted .edge-line{opacity:.09}.map-edge:hover .edge-line,.map-edge:focus-visible .edge-line,.map-edge.is-selected .edge-line{opacity:1;stroke-width:3}.map-edge .edge-dot{fill:var(--red);stroke:var(--bg);stroke-width:3}.map-edge .edge-label-bg{fill:var(--bg);stroke:rgba(143,200,211,.2);stroke-width:1}.map-edge .edge-label{fill:var(--muted);font-size:12px;text-anchor:middle;pointer-events:none}.map-group-label{fill:#6e879c;font-family:"Segoe UI",sans-serif;font-size:11px;letter-spacing:.15em;text-anchor:middle}.detail-panel{min-width:0;padding:25px 25px 28px;border-left:1px solid var(--line);background:linear-gradient(180deg,rgba(18,34,49,.8),rgba(10,24,38,.5));align-self:stretch;overflow-wrap:anywhere}.detail-empty{padding-top:65px;color:var(--muted);text-align:center;max-width:255px;margin:auto}.empty-symbol{display:block;color:var(--gold);font-size:48px;line-height:1;margin-bottom:25px;font-weight:300}.detail-panel h3{font-family:var(--serif);font-size:28px;font-weight:500;line-height:1.2;letter-spacing:-.02em;margin:0 0 15px}.detail-empty h3{font-size:25px}.detail-panel p{font-size:13px;line-height:1.8;color:var(--muted);margin:0 0 18px}.detail-topline{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:20px}.detail-category{font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:var(--soft)}.detail-close{width:28px;height:28px;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--muted);font-size:19px;line-height:1}.detail-close:hover{color:var(--text);border-color:var(--gold)}.detail-panel h4{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--soft);margin:26px 0 13px}.relation-list{display:grid;gap:8px}.relation-choice{width:100%;text-align:left;border:1px solid rgba(143,200,211,.14);background:rgba(4,14,24,.25);border-radius:10px;color:var(--text);padding:12px 13px;line-height:1.5}.relation-choice:hover,.relation-choice:focus-visible{border-color:var(--cyan);background:rgba(143,200,211,.05)}.relation-choice-title{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:13px;font-weight:600}.relation-choice small{display:block;font-size:11px;color:var(--soft);margin-top:3px}.relation-choice.is-disputed .relation-choice-title:before{content:"!";display:inline-grid;place-items:center;flex:0 0 16px;height:16px;color:var(--red);border:1px solid rgba(239,155,144,.5);border-radius:50%;font-size:10px}.relation-choice.is-disputed small{color:#c99c95}.status-pill{display:inline-block;font-size:10px;line-height:1.5;border:1px solid rgba(143,200,211,.3);border-radius:5px;padding:5px 8px;color:var(--cyan);margin-bottom:17px}.status-pill.is-disputed{border-color:rgba(239,155,144,.35);color:var(--red)}.dispute-note{border-left:2px solid var(--red);padding:0 0 0 13px;margin:20px 0}.dispute-note strong{display:block;color:var(--red);font-size:12px;margin-bottom:7px}.dispute-note p{font-size:12px}.related-topics{display:flex;flex-wrap:wrap;gap:7px;margin-top:22px}.topic-link{background:transparent;border:1px solid var(--line);border-radius:6px;color:var(--cyan);padding:6px 10px;font-size:11px}.topic-link:hover{border-color:var(--cyan)}.quote-card{border-top:1px solid var(--line);margin:0;padding:0}.quote-card summary{cursor:pointer;list-style:none;padding:14px 0;display:flex;align-items:flex-start;gap:10px;color:var(--text);font-size:12px;line-height:1.65}.quote-card summary::-webkit-details-marker{display:none}.quote-card summary:before{content:"+";color:var(--gold);font-size:18px;line-height:1.3}.quote-card[open] summary:before{content:"−"}.quote-card summary span{min-width:0}.quote-card summary small{display:block;color:var(--soft);font-size:10px}.quote-card blockquote{white-space:pre-wrap;font-size:11px;line-height:1.85;color:#c7d1d9;margin:4px 0 13px;padding:0 0 0 13px;border-left:1px solid rgba(143,200,211,.35);max-height:320px;overflow:auto}.quote-context{font-size:10px!important;color:var(--soft)!important;line-height:1.6!important}.video-link{display:inline-flex;gap:8px;align-items:center;color:var(--gold);font-size:11px;margin-bottom:18px}.panel-back{border:0;background:transparent;color:var(--cyan);font-size:11px;padding:0;margin-bottom:20px}.empty-relations{font-size:12px;color:var(--soft);padding:15px 0}.empty-relations button{display:block;margin-top:10px;border:0;background:transparent;color:var(--cyan);padding:0;font-size:12px;text-decoration:underline;text-underline-offset:4px}.topic-browser{padding:20px;border-top:1px solid var(--line)}.topic-browser-title{display:flex;align-items:baseline;justify-content:space-between;gap:15px;margin-bottom:15px}.topic-browser-title h3{font-size:12px;font-weight:600;margin:0;color:var(--muted)}.topic-browser-title p{font-size:10px;color:var(--soft);margin:0}.topic-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.topic-group h4{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:var(--soft);margin:0 0 7px}.topic-group>div{display:flex;flex-wrap:wrap;gap:5px}.topic-chip{border:1px solid transparent;background:rgba(143,200,211,.035);border-radius:5px;color:var(--muted);font-size:10px;line-height:1.5;padding:6px 8px}.topic-chip:hover,.topic-chip[aria-pressed=true]{color:var(--text);border-color:var(--gold);background:rgba(217,180,120,.06)}.route-progress{display:flex;align-items:center;gap:15px;padding:14px 18px;border-inline:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(217,180,120,.04)}.route-progress-label{font-size:11px;color:var(--gold);white-space:nowrap}.route-steps{display:flex;align-items:center;gap:7px;flex-wrap:wrap;list-style:none;margin:0;padding:0;flex:1}.route-step{border:0;background:transparent;color:var(--soft);font-size:11px;padding:5px 0}.route-step[aria-current=step]{color:var(--text);text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:5px}.route-steps li+li:before{content:"›";font-size:11px;color:#516477;margin-right:7px}.route-next{border:1px solid rgba(217,180,120,.35);background:transparent;color:var(--gold);border-radius:6px;padding:7px 12px;font-size:11px;white-space:nowrap}.load-error{padding:24px;background:rgba(239,155,144,.06);border:1px solid rgba(239,155,144,.3)}.load-error h3{margin:0 0 8px;font-size:18px}.load-error p{margin:0 0 15px;font-size:13px;color:var(--muted)}.load-error button{border:1px solid var(--gold);border-radius:7px;background:transparent;padding:8px 14px;color:var(--gold);font-size:13px}.reading-section{border-top:1px solid rgba(217,180,120,.2);padding-top:28px;padding-bottom:35px}.static-reading{color:var(--muted);font-size:14px;max-width:1000px}.static-reading details{border-bottom:1px solid var(--line);padding:15px 0}.static-reading summary{cursor:pointer;font-weight:600;color:var(--text)}.static-reading p{line-height:1.8}.static-reading ul{padding-left:20px}.noscript-note{padding:18px;border:1px solid var(--gold);font-size:14px}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:25px;padding-bottom:35px}.site-footer a{color:var(--muted);font-size:12px;text-decoration:none}.site-footer a:hover{color:var(--gold)}
@media(min-width:1500px){.map-viewport svg{min-height:590px}.map-viewport{min-height:590px}}
@media(max-width:1100px){.wrap{width:calc(100% - 48px)}.intro{grid-template-columns:1fr 180px}.intro-aside{transform:scale(.8)}.explorer-layout{grid-template-columns:minmax(0,1fr) 310px}.detail-panel{padding:22px 20px}.map-viewport{min-height:470px}.map-viewport svg{min-height:470px}.route-card{padding:17px 15px;gap:12px}.route-number{font-size:22px}.route-card strong{font-size:13px}.route-card small{font-size:11px}.map-caption{display:block}.map-caption>span{display:block}.legend{gap:10px;font-size:10px}}
@media(max-width:1050px){.intro{grid-template-columns:1fr;min-height:auto;padding-top:36px;padding-bottom:32px}.intro-aside{display:none}.intro h1{font-size:55px}.intro-lead{font-size:16px;max-width:680px}.section-heading{display:block}.section-heading p{margin-top:6px}.routes{gap:10px}.route-card{display:block}.route-number{display:none}.route-arrow{display:none}.explorer-layout{grid-template-columns:minmax(0,1fr) 290px}.explorer-head{display:block}.legend{margin-top:12px}.map-viewport{display:none}.map-caption{display:none}.topic-groups{grid-template-columns:1fr;gap:20px}.topic-chip{font-size:12px;padding:8px 11px}.topic-browser-title{display:block}.topic-browser-title p{margin-top:5px}.topic-browser{padding:22px}.detail-empty{padding-top:30px}.toolbar-secondary{gap:12px}#expand-map{display:none}.route-progress{flex-wrap:wrap}.route-steps{order:3;flex-basis:100%}.route-next{margin-left:auto}}
@media(max-width:600px){.wrap{width:calc(100% - 32px)}.site-header{padding-top:20px;padding-bottom:18px}.site-header nav{display:none}.site-brand{font-size:12px}.intro h1{font-size:43px;line-height:1.08;margin-bottom:18px}.intro-lead{font-size:14px;line-height:1.8}.attribution{font-size:11px}.routes{grid-template-columns:1fr;gap:8px}.route-card{display:flex;align-items:center;padding:14px 16px;gap:13px}.route-card small{font-size:11px;line-height:1.5;margin-top:3px}.route-card strong{font-size:14px}.route-number{display:block;font-size:22px}.route-arrow{display:block}.routes-section{margin-bottom:30px}.section-heading h2{font-size:17px}.section-heading p{font-size:12px}.explorer-head h2{font-size:30px}.explorer-head p{font-size:12px}.legend{display:grid;gap:6px;font-size:10px}.explorer-toolbar{padding:11px 10px;gap:8px}.segmented button{padding:8px 10px;font-size:11px}.toolbar-secondary{gap:0}.quiet-button{font-size:11px}.explorer-layout{display:flex;flex-direction:column;overflow:visible}.map-column{order:2}.detail-panel{order:1;border-left:0;border-bottom:1px solid var(--line);padding:21px 20px;border-radius:0;scroll-margin-top:16px}.detail-empty{padding:8px 0;text-align:left;max-width:none}.empty-symbol{display:none}.detail-empty h3{font-family:inherit;font-size:16px;font-weight:600;margin-bottom:7px}.detail-empty p{font-size:12px;margin:0}.detail-panel h3{font-size:28px}.detail-panel h4{margin-top:22px}.detail-panel p{font-size:13px}.relation-choice{padding:13px 14px}.relation-choice-title{font-size:13px}.topic-browser{padding:21px 20px}.topic-groups{gap:19px}.topic-group h4{font-size:10px}.topic-chip{font-size:12px;padding:9px 11px}.topic-browser-title h3{font-size:14px}.topic-browser-title p{font-size:11px}.route-progress-label{font-size:10px}.route-step{font-size:10px}.route-next{font-size:10px;padding:6px 10px}.route-progress{padding:13px 14px;gap:10px}.explorer-section{margin-bottom:40px}.site-footer{display:grid;gap:13px}.site-footer a{font-size:11px}.quote-card blockquote{font-size:12px}.quote-card summary{font-size:12px}.video-link{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

html:not(.js-enabled) .routes-section,html:not(.js-enabled) .explorer-section{display:none}
