:root{--ink:#292e2b;--muted:#7d847f;--line:#e2e5df;--paper:#fafbf8;--accent:#476c4d;--purple:#78629a}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper);font:16px/1.65 -apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif}button,input,select{font:inherit;color:inherit}button{cursor:pointer}button,a,input,summary,select{ -webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible,select:focus-visible{outline:2px solid #648764;outline-offset:3px}button{background:none;border:0}a{color:inherit}header{height:72px;padding:0 25px;display:flex;align-items:center;gap:22px;border-bottom:1px solid var(--line);background:#fff}.brand{display:flex;align-items:center;gap:11px;text-decoration:none;font:36px Georgia}.brand strong{font:600 19px/1.2 "PingFang SC",sans-serif;letter-spacing:2px;white-space:nowrap}.search-wrap{position:relative;display:flex;align-items:center;max-width:540px;flex:1;margin-left:25px}.search-wrap input{background:#f5f6f2;border:1px solid #e9ebe4;border-radius:5px;width:100%;padding:10px 34px;font-size:14px}.search-icon{position:absolute;left:12px;font-size:22px;color:#7d847d}.search-wrap kbd{position:absolute;right:13px;color:#9ca198;font-size:13px}.languages{margin-left:auto;display:flex;gap:4px}.languages button{padding:4px 7px;font-size:13px;color:#92978f}.languages .selected{color:#242b25;border-bottom:1px solid #242b25}.icon{border:1px solid #dce1d8;border-radius:50%;font-size:13px;width:24px;height:24px;line-height:20px;padding:0;color:#7b8575}.toolbar{min-height:54px;border-bottom:1px solid var(--line);background:#fff;display:flex;align-items:center;gap:15px;padding:0 25px}.toolbar #categories{display:flex;gap:5px;overflow-x:auto;flex:1;align-items:center;scrollbar-width:thin}.category{font-size:13px;padding:5px 9px;white-space:nowrap;border-radius:3px;color:#777e72}.category.active{background:#eaf0e5;color:#345b3e}.category i{display:inline-block;width:5px;height:5px;border-radius:50%;margin-right:6px}.toolbar select{border:0;border-left:1px solid var(--line);padding-left:12px;background:white;font-size:12px;color:#71786c;max-width:140px}main{height:calc(100dvh - 126px);display:grid;grid-template-columns:1fr 290px}#map{position:relative;min-height:320px;overflow:hidden;background:radial-gradient(#d4dacf .7px,transparent .7px);background-size:22px 22px;touch-action:none}#canvas{width:100%;height:100%;display:block;cursor:grab}#canvas:active{cursor:grabbing}#canvas:focus-visible{outline:2px solid #9aaa89;outline-offset:-3px}.map-controls{position:absolute;bottom:22px;left:22px;display:flex;background:#fff;border:1px solid #dce1d7;border-radius:4px;box-shadow:0 2px 5px #00000004;overflow:hidden}.map-controls button{min-width:36px;min-height:36px;padding:5px 10px;font-size:14px;border-right:1px solid #e8ebe2}.map-controls button:last-child{border:0}.map-controls button:hover{background:#eff3ea}.map-key{position:absolute;top:18px;left:22px;display:flex;gap:17px;font-size:11px;color:#8a9382;pointer-events:none}.key:before{content:"";display:inline-block;width:19px;border-top:1px solid #879b79;margin-right:6px;vertical-align:middle}.key.dotted:before{border-top-style:dashed}#mapStatus{position:absolute;bottom:27px;right:20px;font-size:11px;color:#919988;pointer-events:none}#empty{position:absolute;left:50%;top:45%;transform:translate(-50%,-50%);color:#88917e;font-size:14px;text-align:center;background:var(--paper);padding:20px}#empty button{display:block;margin:10px auto;color:#3f6545;text-decoration:underline}.graph-node{cursor:pointer;outline:none}.graph-node rect{fill:#fafbf8;stroke:#d7dfd0;stroke-width:1;rx:4}.graph-node text{fill:#3d4c3c;font-family:"PingFang SC",sans-serif;font-size:20px}.graph-node .sub{font-family:Georgia,serif;font-size:12px;fill:#8f9988}.graph-node .year{font-size:11px;fill:#92998a}.graph-node.selected rect{fill:#ecf2e5;stroke:#537851;stroke-width:2}.graph-node.selected text:first-of-type{font-weight:600;fill:#24462e}.graph-node.term rect{fill:#f6f3fa;stroke:#d9cce6;stroke-dasharray:3 2}.graph-node.term text{fill:#806695}.graph-node.dim{opacity:.23}.graph-node:hover rect,.graph-node:focus-visible rect{stroke:#567944;stroke-width:3}.graph-edge{fill:none;stroke:#b8c6af;stroke-width:1.2;pointer-events:stroke;cursor:pointer}.graph-edge.active{stroke:#6f8c5c;stroke-width:2}.graph-edge.dim{opacity:.18}.graph-edge.dashed{stroke-dasharray:5 5}.graph-edge:hover{stroke:#bd945b;stroke-width:4}.edge-hit{stroke:transparent;stroke-width:16;fill:none;cursor:pointer}.cluster{font-size:15px;fill:#c0c8b6;letter-spacing:3px}.detail{overflow:auto}#detail{padding:27px 24px;border-left:1px solid var(--line);overflow-y:auto;background:#fff}#detail .kind{font-size:11px;color:#92998b;letter-spacing:1px;display:flex;justify-content:space-between;align-items:center}#detail h1{font-size:27px;font-weight:500;line-height:1.5;margin:14px 0 0;letter-spacing:1px;overflow-wrap:anywhere}#detail .latin{font:italic 14px/1.65 Georgia;color:#8a9480;margin-top:4px}#detail .dates{font-size:12px;color:#8d9584;margin:13px 0 0}.pills{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}.pills span{font-size:11px;color:#839275}#detail ul{margin:25px 0 23px;padding-left:16px;font-size:15px;line-height:1.95;color:#58614f}#detail li{padding-left:3px;margin-bottom:13px}.source{display:block;text-decoration:none;font-size:13px;color:#406d48;margin:22px 0;padding:11px 0;border-top:1px solid #e4e9df;border-bottom:1px solid #e4e9df}.source small{font-size:10px;color:#919e83;display:block}.section-label{font-size:11px;color:#92998a;margin-top:24px;margin-bottom:10px}.term-links{display:flex;gap:8px;flex-wrap:wrap}.term-links button{font-size:12px;border:1px solid #ded6e6;color:#806692;border-radius:3px;padding:3px 8px}.term-links button:hover{background:#f7f3fb}.related{display:flex;flex-direction:column;gap:5px}.related button{font-size:13px;text-align:left;padding:6px 0;display:flex;align-items:center;justify-content:space-between;gap:10px}.related small{font-size:10px;color:#9aab8f;text-align:right;max-width:115px}.related button:hover{color:#4d7949}.view-toggle{display:flex;margin-top:21px;border:1px solid #dfe5d7;border-radius:4px;overflow:hidden}.view-toggle button{font-size:12px;flex:1;padding:7px}.view-toggle .active{background:#edf2e5;color:#4f6c3e}details{margin-top:24px;border-top:1px solid #e4e9df;padding-top:15px}summary{cursor:pointer;font-size:13px;color:#6e7d60}details p{font-size:13px;line-height:1.8;color:#7c876f}.path-step{display:block;text-align:left;width:100%;padding:12px 0;font-size:13px}.path-step small{display:block;font-size:11px;color:#8c997d;line-height:1.8}.path-step.active{color:#4e7342}.relation-detail{padding:12px 14px;background:#f4f7f0;font-size:12px;color:#768368;margin-top:12px;border-left:2px solid #b7cba3}.relation-detail a{display:block;font-size:11px;margin-top:7px}.relation-detail button{float:right;color:#8e9882}#results{position:absolute;top:49px;left:0;right:0;z-index:10;max-height:360px;overflow:auto;background:#fff;border:1px solid #e0e5d9;box-shadow:0 10px 30px #26361918;border-radius:5px;padding:7px}#results button{display:block;text-align:left;padding:9px 12px;width:100%;font-size:14px;border-radius:3px}#results button:hover,#results button:focus{background:#f0f5e9}#results small{float:right;color:#98a08e;font-size:11px}#results p{font-size:13px;color:#8a9480;margin:10px}#results a{display:block;padding:10px;font-size:13px;color:#416944}dialog{border:1px solid #dfe5d7;border-radius:7px;padding:30px;max-width:550px;width:90%;color:#57604f;font-size:14px;line-height:1.95}dialog h2{font-size:22px;color:#333e2c}dialog .icon{float:right}dialog::backdrop{background:#202e2440;backdrop-filter:blur(2px)}[hidden]{display:none!important}@media(max-width:950px){header{padding:0 16px;gap:13px}.search-wrap{margin-left:0}.brand strong{font-size:16px}.toolbar{padding:0 16px}main{grid-template-columns:1fr 260px}#detail{padding:24px 20px}}@media(max-width:650px){header{height:112px;flex-wrap:wrap;align-content:center;gap:8px 12px}.brand{font-size:27px}.brand strong{font-size:16px}.languages{margin-left:auto}.search-wrap{order:4;flex-basis:100%;max-width:none}.search-wrap input{font-size:13px;padding:8px 30px}.search-wrap kbd{display:none}.toolbar{height:49px;min-height:49px;gap:6px}.category{font-size:12px;padding:5px 8px}.toolbar select{max-width:100px;font-size:11px}main{height:auto;display:flex;flex-direction:column}#map{height:58dvh;min-height:380px}#detail{border-left:0;border-top:1px solid var(--line);padding:23px 25px;overflow:visible}#detail h1{font-size:25px}#detail ul{font-size:16px;max-width:650px}.related{display:grid;grid-template-columns:1fr 1fr;gap:12px}.related small{display:none}.map-key{font-size:10px;top:12px;left:15px}.map-controls{left:15px;bottom:17px}#mapStatus{bottom:25px;font-size:10px;right:14px}#results{top:42px}.category i{display:none}}@media(prefers-reduced-motion:no-preference){.graph-node{transition:opacity .2s}.graph-node rect{transition:fill .2s}}

.branch-context{margin-top:22px;padding:9px 0;border-bottom:1px solid #dfe7d5;font-size:13px;color:#48683c;display:flex;align-items:center;justify-content:space-between;gap:12px}.branch-context button{font-size:10px;color:#93a085;text-decoration:underline;white-space:nowrap}.pills span{cursor:default}

.pills button{border:0;background:transparent;color:inherit;font:inherit;padding:2px 0;cursor:pointer}.pills button:hover,.pills button[aria-pressed="true"]{color:var(--ink,#26382e);text-decoration:underline;text-underline-offset:3px}

.entry-notes{list-style:none;padding:0!important}.entry-notes li{margin:0 0 14px!important;line-height:1.8}.entry-notes strong{display:block;font-size:11px;letter-spacing:.05em;color:#778176;font-weight:500;margin-bottom:3px}.entry-work{font-size:13px}.entry-notes{overflow-wrap:anywhere}

.header-contact{flex-shrink:0;font-size:12px;color:#65715f;text-decoration:none;white-space:nowrap}.header-contact:hover{text-decoration:underline}header .search-wrap{min-width:160px}@media(min-width:651px) and (max-width:1100px){header{gap:12px}.search-wrap{margin-left:0}.header-contact{font-size:11px}.brand strong{font-size:16px}}@media(max-width:650px){header{height:auto;min-height:142px;padding-top:10px;padding-bottom:10px}.header-contact{order:5;width:100%;font-size:12px}.search-wrap{order:4}.header-contribute{font-size:11px}}

/* A quiet, spatial reading surface. Only the atlas and invitation page use it. */
.atlas-space{--ink:#e0e9ed;--muted:#92a6b4;--line:#a6d3e21c;--paper:#09121e;--accent:#9fdfcf;--purple:#c0abe8;color-scheme:dark;background:#09121e;color:var(--ink)}
.atlas-space header{background:#0c1622;position:relative;z-index:4;border-color:var(--line)}
.atlas-space .brand{color:#b9e7db}.atlas-space .brand strong{color:#e2eeed}
.atlas-space :is(.search-wrap input,form input:not([type=checkbox]),form textarea,form select){background:#142231;color:#dce8ed;border-color:#354653}
.atlas-space .search-wrap input:focus{border-color:#91cbbb;box-shadow:0 0 22px #71c8b315}.atlas-space input::placeholder{color:#8298a7}
.atlas-space :is(.header-contact,.languages button,.icon,.header-contribute){color:#a4b9c4}.atlas-space :is(.icon,.header-contribute){border-color:#3b5060}.atlas-space .languages .selected{color:#b4e8d7;border-color:#9cd7c3}
.atlas-space .toolbar{background:#0c1622}.atlas-space .category{color:#9aadb7}.atlas-space .category.active{color:#c0efdf;background:#21443f}.atlas-space .toolbar select{background:#0c1622;color:#a6bbc5}
.atlas-space main{height:calc(100dvh - 126px);grid-template-columns:minmax(0,1fr) 310px}
.atlas-space #map{isolation:isolate;background:#070e1a;perspective:1000px}
.atlas-space #map:before{content:"";position:absolute;inset:-15%;pointer-events:none;background:radial-gradient(ellipse at 31% 38%,#286a652e,transparent 46%),radial-gradient(ellipse at 73% 66%,#61588a2b,transparent 43%),radial-gradient(ellipse at 48% 100%,#244e6b20,transparent 48%);filter:blur(15px);animation:nebula-drift 28s ease-in-out infinite alternate}
.cosmic-sky{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:0}
.atlas-space #canvas{position:relative;z-index:1}.atlas-space :is(.map-controls,.map-key,#mapStatus,#empty){z-index:2}
.atlas-space .map-key{color:#92a8b5}.atlas-space .key:before{border-color:#81b5ab}.atlas-space #mapStatus{color:#8097a7}
.atlas-space .map-controls{background:#10202cdd;border-color:#324a59;box-shadow:0 8px 26px #0004;backdrop-filter:blur(12px)}
.atlas-space .map-controls button{color:#bdd4d9;border-color:#29404e}.atlas-space .map-controls button:hover{background:#223d45}.atlas-space .map-controls button[aria-pressed="true"]{color:#9fe3c8;background:#28413c}
.atlas-space .graph-node{opacity:1;transition:opacity .25s}.atlas-space .graph-node.dim{opacity:.42}
.atlas-space .graph-node rect{fill:url(#nodeGlass);stroke:#567484;stroke-width:1;rx:9}
.atlas-space .graph-node text{fill:#d4e5e7;font-weight:400}.atlas-space .graph-node .sub{fill:#9ab4c0}.atlas-space .graph-node .year{fill:#8da6b3}
.atlas-space .graph-node.term rect{fill:#201e37;stroke:#857099;stroke-dasharray:none}.atlas-space .graph-node.term text{fill:#d5c4f2}
.atlas-space .graph-node.selected rect{fill:#1c393e;stroke:#a3e5d2;stroke-width:1.5}.atlas-space .graph-node.selected text:first-of-type{fill:#edfff8;font-weight:500}
.atlas-space .node-card{transform-box:view-box;transform-origin:0 0;transition:transform .3s cubic-bezier(.2,.8,.2,1),filter .3s;filter:drop-shadow(0 8px 9px #0005)}
.atlas-space .graph-node.selected .node-float{animation:node-float var(--float-duration,8s) ease-in-out var(--float-delay,0s) infinite}
.atlas-space .graph-node.selected .node-card{filter:drop-shadow(0 0 16px #73dfc533)}
.atlas-space .graph-node:is(:hover,:focus-visible){opacity:1}.atlas-space .graph-node:is(:hover,:focus-visible) .node-card{transform:perspective(500px) translateY(-7px) rotateX(var(--tilt-x,4deg)) rotateY(var(--tilt-y,-6deg)) scale(1.055);filter:drop-shadow(0 12px 14px #0008) drop-shadow(0 0 12px #92e7d650)}
.atlas-space .graph-node:is(:hover,:focus-visible) rect{stroke:#c8ffee;stroke-width:1.8}.atlas-space .graph-node.term:is(:hover,:focus-visible) rect{stroke:#dfc3ff}
.node-planet{fill:url(#nodePlanet);pointer-events:none}.node-orbit{fill:none;stroke:#94d7c34d;stroke-width:.7;transform:rotate(-18deg);pointer-events:none}.orbit-cross{transform:rotate(25deg);stroke:#b7aae72c;stroke-dasharray:3 8}
.atlas-space .graph-edge{stroke:#537982;opacity:.7}.atlas-space .graph-edge.active{stroke:#9bdbcf;stroke-width:1.5;opacity:.8;filter:drop-shadow(0 0 3px #83c4b340)}
.atlas-space .graph-edge.active.dashed{animation:signal-flow 18s linear infinite}.atlas-space .graph-edge.dim{opacity:.23}.atlas-space .graph-edge.dashed{stroke-dasharray:5 9}.atlas-space .graph-edge:hover{stroke:#ecdebb;stroke-width:3;opacity:1}.atlas-space .graph-edge.hover-link{stroke:#d0ffe8;opacity:1;stroke-width:2}
.atlas-space #detail{background:linear-gradient(145deg,#101e2c,#0d1724 60%);border-color:#38505b55;box-shadow:-16px 0 40px #00000015}
.atlas-space #detail h1{color:#e6f1ef}.atlas-space #detail :is(.kind,.latin,.dates,.section-label){color:#92a9b7}.atlas-space #detail ul{color:#bdcdd4}.atlas-space .entry-notes strong{color:#87b9b1}
.atlas-space .pills{color:#9eb7bc}.atlas-space .pills button:is(:hover,[aria-pressed="true"]){color:#b5e9d5}.atlas-space .source{color:#a7e2d0;border-color:#304753}.atlas-space .source small{color:#94adb8}
.atlas-space .term-links button{color:#d1bdef;border-color:#615073}.atlas-space .term-links button:hover{background:#342b48}.atlas-space :is(.related small,.path-step small){color:#8da9b3}.atlas-space .related button:hover{color:#a3e6d0}
.atlas-space :is(details,.view-toggle,.branch-context){border-color:#304651}.atlas-space :is(summary,details p,.contribute-entry,.admin-link){color:#a1b9bf}.atlas-space .view-toggle .active{color:#c6ecdc;background:#24413f}.atlas-space .branch-context{color:#ace0ce}.atlas-space .related .inspect-relation{color:#9fbdc4;border-color:#3d5764}
.atlas-space .relation-detail{background:#172d36;color:#b1ccd2;border-color:#80b8a4}.atlas-space .path-step.active{color:#b0e1c9}
.atlas-space #results{background:#132431;border-color:#3b5964;box-shadow:0 16px 35px #0007}.atlas-space #results button:is(:hover,:focus){background:#28463e}.atlas-space #results :is(small,a){color:#a4c4bc}
.atlas-space dialog{background:#101e2c;color:#b7cdd4;border-color:#3d5661;box-shadow:0 24px 80px #0009}.atlas-space dialog h2{color:#e3efec}.atlas-space dialog::backdrop{background:#020811a8;backdrop-filter:blur(6px)}
.atlas-space :is(form label,.form-note){color:#a4bac4}.atlas-space .form-primary{background:#aadfc9;color:#142c29}.atlas-space #empty{background:#152632;color:#b5cdd6}
.atlas-space.motion-paused :is(.node-float,.graph-edge.dashed),.atlas-space.motion-paused #map:before{animation-play-state:paused}
@keyframes node-float{0%,100%{transform:translateY(-2px)}50%{transform:translateY(3px)}}
@keyframes signal-flow{to{stroke-dashoffset:-112}}
@keyframes nebula-drift{from{transform:translate(-1%,-1%) scale(1)}to{transform:translate(2%,2%) scale(1.1)}}
@media(max-width:950px){.atlas-space main{grid-template-columns:minmax(0,1fr) 270px}}
@media(max-width:650px){.atlas-space main{height:auto;display:flex}.atlas-space #map{height:60dvh;min-height:390px}.atlas-space #detail{border-top:1px solid #304651}.atlas-space #mapStatus{bottom:66px;left:16px;right:auto}.atlas-space .map-key{gap:10px}.atlas-space .header-contact{font-size:11px}}
@media(prefers-reduced-motion:reduce){.atlas-space *, .atlas-space #map:before{animation:none!important;transition:none!important}.atlas-space .graph-node:is(:hover,:focus-visible) .node-card{transform:none}}

.atlas-space .map-controls button:disabled{opacity:.5;cursor:default}

/* Brighter visual hierarchy: cyan thinkers, lilac concepts, a warm focal point. */
.atlas-space .graph-node.dim{opacity:.59}
.atlas-space .graph-node rect{stroke:#70b0c9;stroke-width:1.2}
.atlas-space .graph-node text{fill:#effbff}.atlas-space .graph-node .sub{fill:#bcdae5}.atlas-space .graph-node .year{fill:#a7c2d1}
.atlas-space .graph-node.term rect{fill:#392c55;stroke:#b092db}.atlas-space .graph-node.term text{fill:#eddbff}
.atlas-space .graph-node.selected rect{fill:#49422f;stroke:#f2d6a0;stroke-width:2}.atlas-space .graph-node.selected text:first-of-type{fill:#fff4d6}
.atlas-space .graph-node.selected .node-card{filter:drop-shadow(0 0 19px #ffd89848)}
.atlas-space .graph-edge.active{stroke:#b8eee0;opacity:.92;stroke-width:1.65}.atlas-space .graph-edge.dim{opacity:.34}
.atlas-space .node-orbit{stroke:#f0d09a75}.atlas-space .orbit-cross{stroke:#c8baff50}
.atlas-space .category.active{background:#28584f;color:#dbffed}.atlas-space #detail h1{color:#fff1d1}.atlas-space #detail .entry-notes strong{color:#a6e6ce}.atlas-space .source{color:#b7f4d9}
.journey-replay{display:block;text-align:left;padding:12px 0;color:#e5c891;font-size:14px}
.atlas-space #journey{position:fixed;inset:0;width:100%;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;border-radius:0;overflow:hidden;background:#050913;color:#f4eedf;font:inherit;isolation:isolate}
.atlas-space #journey::backdrop{background:#050913}
.journey-sky{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none}
.journey-top{position:absolute;inset:25px 30px auto;display:flex;align-items:center;justify-content:space-between;z-index:5;font-size:13px;letter-spacing:2px;color:#b9c8ce}
.journey-brand{font:26px Georgia;display:flex;align-items:center;gap:12px}.journey-brand span{font:12px sans-serif;letter-spacing:3px}.journey-skip{border:1px solid #5b667659;border-radius:30px;padding:7px 17px;font-size:12px;color:#b7c6d1;letter-spacing:0;background:#09121d88}
.journey-skip:hover{color:#fff;border-color:#d2b885}.journey-welcome{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding:0 24px 9vh;text-align:center;transition:opacity .6s,transform .8s}
.journey-overline{font:10px/1.7 sans-serif;letter-spacing:5px;color:#e7c99a;margin:0 0 14px}.journey-welcome h1{font:400 clamp(27px,4vw,46px)/1.45 Georgia,"Songti SC",serif;letter-spacing:3px;margin:0;color:#fff3dc;text-shadow:0 3px 35px #000}
.journey-welcome .journey-sub{font-size:13px;color:#9fb3c3;margin:15px 0 28px;letter-spacing:1px}
.journey-start{display:flex;align-items:center;gap:24px;justify-content:center;padding:15px 25px;border:1px solid #dcc08d99;background:linear-gradient(115deg,#cfa96822,#ffe4b008);border-radius:40px;color:#ffe8b8;font:14px/1.5 Georgia,serif;letter-spacing:1px;box-shadow:0 0 40px #edc2770c;transition:background .25s,box-shadow .25s,transform .25s}
.journey-start:hover{background:#d6bb7a26;box-shadow:0 0 32px #dfb26325;transform:translateY(-3px)}.journey-start span{font:22px sans-serif}
.event-horizon{position:absolute;left:50%;top:35%;width:min(33vw,290px);min-width:180px;aspect-ratio:1;border-radius:50%;transform:translate(-50%,-50%);background:#03050a;box-shadow:0 0 1px 3px #ffefd3,0 0 14px 5px #ffda97aa,0 0 44px 11px #e8a95940,0 0 100px 25px #cb81551a,inset 0 0 23px #3b293b;transition:transform 3s cubic-bezier(.7,0,.9,.8),opacity 2.5s;pointer-events:none;z-index:-1}
.event-horizon:before{content:"";position:absolute;width:210%;height:38%;left:-55%;top:30%;border-radius:50%;transform:rotate(-20deg);background:radial-gradient(ellipse,transparent 34%,#d9ae7144 43%,#fff1c1bb 47%,#e2bb7a88 49%,transparent 54%);filter:drop-shadow(0 0 8px #ffcf7977);animation:lens-breathe 7s ease-in-out infinite alternate}
.event-horizon:after{content:"";position:absolute;inset:-27%;border:1px solid #abb7e81f;border-radius:50%;transform:rotateX(62deg) rotate(-22deg);box-shadow:0 0 60px #79b5e10c}
.journey-caption{position:absolute;bottom:23px;left:0;right:0;text-align:center;font:9px Georgia;letter-spacing:4px;color:#677d91}
#journey[data-stage="travel"] .journey-welcome{opacity:0;transform:translateY(35px);pointer-events:none}#journey[data-stage="travel"] .event-horizon{transform:translate(-50%,-50%) scale(14);opacity:0}#journey[data-stage="travel"] .journey-caption{opacity:0}
.journey-travel-label{position:absolute;left:0;right:0;top:72%;text-align:center;font:14px/1.8 "Songti SC",serif;letter-spacing:5px;color:#d0dce5;opacity:0;transition:opacity .8s;pointer-events:none}#journey[data-stage="travel"] .journey-travel-label{opacity:1}
#journey[data-stage="guide"] .event-horizon,#journey[data-stage="guide"] .journey-welcome,#journey[data-stage="guide"] .journey-travel-label,#journey[data-stage="guide"] .journey-caption{display:none}
.journey-guide{position:absolute;inset:85px 24px 35px;display:flex;align-items:center;justify-content:center}.guide-card{width:min(560px,100%);text-align:center}.guide-art{height:230px;max-width:450px;margin:0 auto 22px;position:relative;display:flex;align-items:center;justify-content:center;isolation:isolate}
.guide-art:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse,#396c7650,transparent 68%);z-index:-1}.guide-index{font:10px Georgia;letter-spacing:3px;color:#e1c595;margin:0 0 12px}.guide-card h2{color:#edf7f7!important;font-size:clamp(23px,4vw,31px);font-weight:400;letter-spacing:1px;margin:0 0 15px}.guide-description{color:#adc1ce;font-size:14px;line-height:1.95;max-width:390px;margin:0 auto;min-height:56px}.guide-actions{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:32px auto 0;max-width:380px}.guide-next{border:1px solid #d1b68066;background:#e7c681;color:#1e211f;border-radius:30px;padding:10px 25px;font-size:13px}.guide-prev{font-size:12px;color:#b3c4d0;padding:8px}.guide-prev:disabled{opacity:.3;cursor:default}.guide-dots{display:flex;gap:7px}.guide-dots i{width:5px;height:5px;border-radius:50%;background:#4a5d6d;transition:width .3s}.guide-dots i.active{width:22px;border-radius:5px;background:#e4c888}
.demo-search{width:300px;max-width:90%;text-align:left}.demo-input{border:1px solid #92dbc8;border-radius:10px;padding:13px 17px;color:#d7fcef;background:#10272e;box-shadow:0 0 30px #77bca220;font-size:16px;display:flex;gap:15px}.demo-type{display:inline-block;width:0;white-space:nowrap;overflow:hidden;animation:type-query 4s steps(2,end) infinite}.demo-caret{border-left:1px solid #eccd90;margin-left:-12px}.demo-result{padding:16px;margin-top:10px;background:#22384b;border:1px solid #587b91;border-radius:10px;color:#edf8ff;animation:result-arrives 4s ease infinite;font-size:16px}.demo-result small{float:right;color:#b8c9d7;font:12px Georgia;margin-top:5px}
.guide-art svg{width:100%;height:100%;overflow:visible}.demo-link{fill:none;stroke:#8addc6;stroke-width:1.4;stroke-dasharray:5 5;animation:signal-flow 10s linear infinite}.demo-node{fill:#193b4c;stroke:#81cbe2;stroke-width:1.3}.demo-node-gold{fill:#493e2a;stroke:#f3d698}.demo-node-violet{fill:#352b50;stroke:#c2a0ef}.demo-label{fill:#edf9fc;font-size:15px;font-family:"PingFang SC",sans-serif}.demo-pointer{fill:#f5d49a;stroke:#1a2030;stroke-width:2;animation:demo-pointer 5s ease-in-out infinite}.demo-pulse{fill:none;stroke:#f4d593;animation:demo-pulse 3s ease-out infinite;transform-origin:225px 116px}
.demo-reading{width:290px;border:1px solid #74818f;border-radius:12px;padding:18px 23px;background:linear-gradient(130deg,#24374b,#152432);text-align:left;box-shadow:0 14px 45px #0005;animation:reading-float 6s ease-in-out infinite}.demo-reading strong{color:#f7dfaf;font:20px Georgia,"Songti SC",serif}.demo-reading .demo-tags{color:#b9dfcf;font-size:11px;margin:8px 0 13px}.demo-reading .demo-copy{font-size:11px;color:#abc1ce;line-height:2.1}.demo-reading .demo-sep{border-top:1px solid #58716e;margin-top:12px;padding-top:9px;color:#b5f2d8;font-size:12px;animation:sep-glow 4s ease-in-out infinite}
.journey-active{overflow:hidden}.journey-active #map:before,.journey-active .graph-node .node-float,.journey-active .graph-edge{animation-play-state:paused!important}
@keyframes lens-breathe{to{opacity:.72;transform:rotate(-16deg) scale(1.02)}}@keyframes type-query{0%,15%{width:0}40%,100%{width:2em}}@keyframes result-arrives{0%,40%{opacity:0;transform:translateY(8px)}55%,100%{opacity:1;transform:translateY(0)}}@keyframes demo-pointer{0%,100%{transform:translate(35px,35px)}45%,65%{transform:translate(0,0)}}@keyframes demo-pulse{0%{opacity:.8;transform:scale(.8)}80%,100%{opacity:0;transform:scale(1.5)}}@keyframes reading-float{0%,100%{transform:perspective(700px) rotateY(-6deg) translateY(2px)}50%{transform:perspective(700px) rotateY(4deg) translateY(-3px)}}@keyframes sep-glow{50%{color:#fff1c1;text-shadow:0 0 15px #c5d38980}}
@media(max-width:650px){.journey-top{inset:18px 18px auto}.journey-brand span{font-size:10px;letter-spacing:2px}.journey-welcome{padding:0 22px 12vh}.journey-welcome h1{font-size:28px;letter-spacing:1px}.journey-welcome .journey-sub{font-size:12px;max-width:280px}.journey-start{font-size:12px;padding:14px 19px;gap:13px;letter-spacing:.4px}.event-horizon{top:31%;width:190px}.journey-guide{inset:76px 23px 25px}.guide-art{height:210px;margin-bottom:18px}.guide-description{font-size:13px}.guide-actions{margin-top:25px}.journey-caption{letter-spacing:2px;font-size:8px}}
@media(max-height:650px){.event-horizon{width:150px;min-width:120px;top:29%}.journey-welcome{padding-bottom:7vh}.journey-welcome h1{font-size:25px}.journey-sub{margin:10px 0 15px!important}.guide-art{height:135px;margin-bottom:7px}.guide-description{min-height:0}.guide-actions{margin-top:15px}.journey-guide{inset:65px 22px 15px}.demo-reading{padding:10px 20px;transform:scale(.8);animation:none}.demo-reading .demo-copy{line-height:1.4}}
@media(prefers-reduced-motion:reduce){.event-horizon{transition:none!important}.demo-type{width:2em!important}.demo-result{opacity:1!important}.demo-pulse{display:none}}

/* Galaxy → unfolding light → a traveller on a river of stars. */
.galaxy-open{position:absolute;left:50%;top:36%;transform:translate(-50%,-50%);width:min(74vw,570px);height:40%;border-radius:50%;background:transparent;z-index:1;cursor:pointer}
.galaxy-open:focus-visible{outline:1px solid #e8ce91aa;outline-offset:12px}
.journey-welcome{pointer-events:none}.journey-start{pointer-events:auto;position:relative;z-index:2}
#journey:not([data-stage="welcome"]) .galaxy-open{display:none}
#journey[data-stage="travel"] .journey-travel-label{top:auto;bottom:9%;font-size:16px;letter-spacing:4px;text-shadow:0 2px 20px #000;background:linear-gradient(90deg,transparent,#03060d55,transparent);padding:15px}
#journey[data-phase="walk"] .journey-travel-label{color:#e2e9f6;font:16px/1.8 "Songti SC",Georgia,serif;letter-spacing:4px}
.guide-card h2:focus{outline:none}
@media(max-width:650px){.galaxy-open{top:36%;height:35%}#journey[data-stage="travel"] .journey-travel-label{bottom:10%;font-size:14px;letter-spacing:2px}}
.journey-continue{display:none;position:absolute;left:50%;bottom:7%;transform:translateX(-50%);white-space:nowrap;border:1px solid #d5dce46b;border-radius:30px;padding:12px 23px;background:#07101bc7;color:#e5eef9;font-size:13px;letter-spacing:1px;backdrop-filter:blur(10px)}
#journey[data-stage="arrival"] .journey-continue{display:block;animation:arrival-appear 1.5s ease both}
#journey[data-stage="arrival"] :is(.journey-welcome,.journey-caption){display:none}
#journey[data-stage="arrival"] .journey-travel-label{opacity:1;top:auto;bottom:16%;color:#edf4ff;font:16px/1.8 "Songti SC",serif;letter-spacing:4px;text-shadow:0 2px 20px #000}
@keyframes arrival-appear{from{opacity:0}to{opacity:1}}

.journey-welcome h1 span{display:inline-block;white-space:nowrap}

/* Literary opening: light Song type, old-style Latin serif and quiet attribution. */
#journey .journey-welcome h1{font-family:"Songti SC","STSong","Noto Serif CJK SC",serif;font-weight:300;font-size:clamp(31px,3.5vw,45px);line-height:1.6;letter-spacing:.13em;color:#f3e7cd;text-shadow:0 2px 28px #e6cb6c15}
#journey .journey-welcome h1 span{display:block;white-space:normal;text-wrap:balance}
#journey .journey-welcome h1 span:first-child{font-size:.7em;color:#bdc3c7;letter-spacing:.22em;line-height:1.9}
#journey .journey-overline{font-family:"Baskerville","Iowan Old Style",Georgia,serif;font-weight:400;font-size:10px;letter-spacing:.38em;color:#c6b98e;margin-bottom:12px}
#journey .journey-welcome .journey-sub{font-size:12px;font-weight:300;letter-spacing:.13em;color:#9aaebb;margin-top:15px;margin-bottom:23px}
#journey .journey-start{font-family:"Baskerville","Iowan Old Style","Palatino Linotype",serif;font-weight:400;font-style:italic;font-size:17px;letter-spacing:.045em;border-color:#bba77b70;color:#ebdab6;background:#d8bb7d0a;box-shadow:none;padding:13px 27px}
#journey .journey-start:hover{background:#d8bb7d17;box-shadow:0 0 30px #ddc19217}
#journey .journey-travel-label{margin:0;padding:0 24px;left:0;right:0;font-family:"Songti SC","STSong",serif;background:transparent}
#journey .journey-travel-label blockquote{max-width:700px;margin:0 auto;font:300 clamp(18px,2.1vw,25px)/1.85 "Songti SC","STSong","Baskerville",serif;letter-spacing:.09em;color:#f0edf0;text-wrap:balance;text-shadow:0 2px 14px #03060d,0 0 35px #03060d}
#journey .journey-travel-label figcaption{margin-top:13px;font:11px/1.8 -apple-system,"PingFang SC",sans-serif;letter-spacing:.06em;color:#b8c7d6;text-shadow:0 1px 10px #03060d}
#journey .journey-travel-label a{pointer-events:auto;text-decoration:none;border-bottom:1px solid #a2b3c02b;padding-bottom:4px}
#journey .journey-travel-label a:hover{color:#f6dfb5;border-color:#d8c59480}
#journey[data-stage="travel"] .journey-travel-label{bottom:9%}
#journey[data-stage="arrival"] .journey-travel-label{bottom:18%}
@media(max-width:650px){#journey .journey-welcome h1{font-size:29px;letter-spacing:.08em;line-height:1.75}#journey .journey-welcome h1 span:first-child{font-size:.76em;letter-spacing:.16em}#journey .journey-start{font-size:15px;letter-spacing:0;padding:13px 21px;gap:15px}#journey .journey-travel-label blockquote{font-size:18px;letter-spacing:.06em;max-width:330px}#journey .journey-travel-label figcaption{font-size:10px;max-width:310px;margin:12px auto 0;line-height:1.9}#journey[data-stage="arrival"] .journey-travel-label{bottom:18%}}
@media(max-height:650px){#journey .journey-welcome h1{font-size:26px;line-height:1.4}#journey .journey-welcome h1 span:first-child{display:inline-block;font:inherit;color:inherit;letter-spacing:inherit}#journey .journey-welcome h1 span:last-child{display:inline-block}#journey .journey-overline{margin-bottom:7px}#journey .journey-travel-label blockquote{font-size:17px;line-height:1.65}#journey .journey-travel-label figcaption{margin-top:7px}}

/* Sourced encyclopedia reader: spacious reading without crowding the map. */
.atlas-space .encyclopedia-position{color:#e6dfcd;font-size:14px;line-height:1.85;margin:18px 0}
.atlas-space .encyclopedia-preview{margin-bottom:16px}
.atlas-space .read-encyclopedia{display:block;width:100%;text-align:left;color:#ead8b1;background:#d2b67b0b;border:1px solid #c9ab704d;border-radius:7px;padding:13px 14px;font-size:13px;line-height:1.6;cursor:pointer;margin:15px 0}
.atlas-space .read-encyclopedia:hover{background:#d2b67b19;border-color:#d7bd83a6}
.atlas-space .read-encyclopedia small{display:block;font-size:10px;font-weight:400;color:#98aebd;margin-top:5px}
body.reader-active .node-float{animation-play-state:paused}
#encyclopediaReader{box-sizing:border-box;width:1040px;max-width:calc(100vw - 32px);height:auto;max-height:calc(100dvh - 48px);margin:auto;padding:0;overflow:auto;color:#dce4e6;background:#101923;border:1px solid #425463;border-radius:12px;box-shadow:0 30px 120px #000a;font:15px/1.9 -apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;text-align:left;scrollbar-color:#46586a #101923;color-scheme:dark}
#encyclopediaReader::backdrop{background:#030810ce;backdrop-filter:blur(8px)}
#encyclopediaReader *{box-sizing:border-box}
#encyclopediaReader button{font:inherit;cursor:pointer}
#encyclopediaReader a{color:#bfcbd5;text-decoration:none;border-bottom:1px solid #64758266}
#encyclopediaReader a:hover{color:#f0d7a6;border-color:#f0d7a6}
#encyclopediaReader button:focus-visible,#encyclopediaReader a:focus-visible{outline:2px solid #e3c487;outline-offset:4px}
#encyclopediaReader .reader-bar{position:sticky;top:0;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 24px;background:#101923f5;border-bottom:1px solid #ffffff13;backdrop-filter:blur(12px)}
#encyclopediaReader .reader-bar>span{font-size:10px;letter-spacing:.14em;color:#93a6b7}
#encyclopediaReader .reader-bar i{font-style:normal;color:#d2b67b;padding:0 7px}
#encyclopediaReader .reader-close{flex:none;background:transparent;border:0;padding:3px 0;color:#c7d1da;font-size:12px}
#encyclopediaReader .reader-close span{font-size:22px;line-height:1;margin-left:12px;vertical-align:-2px}
#encyclopediaReader .reader-layout{display:grid;grid-template-columns:185px minmax(0,1fr);align-items:start}
#encyclopediaReader .reader-nav{position:sticky;top:84px;display:grid;gap:7px;margin:29px 0 30px;padding:0 12px 0 20px;background:transparent;border:0;width:auto;height:auto}
#encyclopediaReader .reader-nav button{display:flex;align-items:center;gap:11px;text-align:left;font-size:12px;white-space:nowrap;color:#9dafbd;background:transparent;border:0;border-radius:5px;padding:9px 10px}
#encyclopediaReader .reader-nav button:hover,#encyclopediaReader .reader-nav button:focus{color:#ecd4a6;background:#e6c9900d}
#encyclopediaReader .reader-nav small{color:#768da0;font:10px/1.5 Georgia,serif}
#encyclopediaReader .reader-article{min-width:0;padding:35px 48px 50px;border-left:1px solid #ffffff0e}
#encyclopediaReader .reader-heading{padding-bottom:6px}
#encyclopediaReader .reader-eyebrow{font-size:11px;letter-spacing:.09em;color:#9fb0bb;margin:0 0 15px}
#encyclopediaReader h1{font:500 clamp(29px,4vw,38px)/1.5 "Songti SC","STSong",serif;letter-spacing:.04em;margin:0;color:#f1eadb;outline:none}
#encyclopediaReader .reader-original{font:italic 19px/1.6 Georgia,"Times New Roman",serif;color:#b5c4ce;margin:6px 0 14px}
#encyclopediaReader .reader-reference{font-size:11px;margin:14px 0}
#encyclopediaReader section{border-top:1px solid #ffffff16;margin:28px 0 0;padding:27px 0 0;scroll-margin-top:86px}
#encyclopediaReader h2{display:flex;align-items:baseline;gap:16px;color:#ece5d6;font:500 21px/1.6 "Songti SC","STSong",serif;margin:0 0 20px;scroll-margin-top:90px;outline:none}
#encyclopediaReader h2 small{font:12px/1 Georgia,serif;color:#c5aa77}
#encyclopediaReader h3{font:600 14px/1.8 -apple-system,"PingFang SC",sans-serif;color:#d5dfdf;margin:0 0 9px}
#encyclopediaReader p{color:#b7c5ce;margin:10px 0 16px;line-height:1.95}
#encyclopediaReader .reader-position{color:#ede2ca;font-size:17px}
#encyclopediaReader .reader-concepts{margin:0}
#encyclopediaReader .reader-concepts>div{border-left:2px solid #b49a663d;padding:0 0 0 18px;margin:22px 0}
#encyclopediaReader .reader-concepts dt{font-weight:600;color:#e9e1d1;margin-bottom:5px}
#encyclopediaReader .reader-concepts dd{margin:0;color:#b7c5ce}
#encyclopediaReader .reader-relations{margin:26px 0}
#encyclopediaReader .reader-relations>h3{color:#cbb37f;font-size:12px;letter-spacing:.06em}
#encyclopediaReader .reader-relation{padding:12px 0 15px;border-bottom:1px solid #ffffff0b}
#encyclopediaReader .reader-relation strong{color:#dce5e9;font-weight:500}
#encyclopediaReader .reader-relation-kind{display:inline-block;margin:0 0 0 12px;color:#849daf;font-size:11px}
#encyclopediaReader .reader-relation p{margin:7px 0 8px;font-size:14px}
#encyclopediaReader .reader-relation-actions{display:flex;flex-wrap:wrap;gap:18px;font-size:11px}
#encyclopediaReader .reader-relation-actions button{background:none;border:0;border-bottom:1px solid #64758266;color:#c9b889;padding:0;font-size:11px}
#encyclopediaReader .reader-note{padding:12px 16px;font-size:12px;background:#e4cda809;border:1px solid #c4ad781f;border-radius:5px;color:#beaE90}
#encyclopediaReader .reader-works{list-style:none;margin:22px 0 0;padding:0 0 0 19px;border-left:1px solid #425263}
#encyclopediaReader .reader-works li{position:relative;padding:0 0 20px 8px;margin:0}
#encyclopediaReader .reader-works li::before{content:"";position:absolute;left:-23px;top:9px;width:7px;height:7px;background:#c4b084;border:2px solid #101923;border-radius:50%}
#encyclopediaReader .reader-work-meta{display:flex;flex-wrap:wrap;gap:6px 15px;font-size:11px;color:#9aafbd;margin-bottom:5px}
#encyclopediaReader .reader-work-meta time{color:#d3ba8d}
#encyclopediaReader .reader-works h3{font-size:15px;margin:0}
#encyclopediaReader .reader-works p{font-size:14px;margin:4px 0 0}
#encyclopediaReader .reader-claim{margin:20px 0;padding-left:16px;border-left:2px solid #536d8040}
#encyclopediaReader .reader-claim.is-context{border-color:#d1b376}
#encyclopediaReader .reader-claim p{margin:5px 0 0}
#encyclopediaReader .reader-section-source{margin-top:23px;font-size:10px;color:#8195a5}
#encyclopediaReader .reader-section-source a{color:#8fa4b4}
#encyclopediaReader .reader-footer{display:flex;flex-wrap:wrap;gap:10px 18px;border-top:1px solid #ffffff20;margin-top:35px;padding-top:24px;font-size:11px;background:transparent}
#encyclopediaReader .reader-footer p{width:100%;margin:0;color:#d2bc91;font-size:12px}
#encyclopediaReader .reader-footer small{width:100%;color:#8498a8;font-size:11px;line-height:1.9;margin:12px 0}
#encyclopediaReader .reader-footer button{padding:8px 13px;border:1px solid #63717e70;border-radius:5px;background:transparent;color:#bfcbd5;font-size:12px}
@media(max-width:700px){#encyclopediaReader{max-width:calc(100vw - 16px);max-height:calc(100dvh - 16px);border-radius:9px;font-size:14px}#encyclopediaReader .reader-bar{padding:12px 16px;gap:8px}#encyclopediaReader .reader-bar>span{font-size:8px;letter-spacing:.04em}#encyclopediaReader .reader-bar i{padding:0 2px}#encyclopediaReader .reader-layout{display:block}#encyclopediaReader .reader-nav{display:flex;position:sticky;top:54px;z-index:2;overflow-x:auto;width:100%;margin:0;padding:8px;background:#101923f5;border-bottom:1px solid #ffffff13;gap:0;scrollbar-width:thin}#encyclopediaReader .reader-nav button{flex:none;font-size:11px;gap:7px;padding:6px 10px}#encyclopediaReader .reader-article{padding:25px 22px 36px;border-left:0}#encyclopediaReader h2{font-size:19px;gap:12px;scroll-margin-top:126px}#encyclopediaReader .reader-original{font-size:17px}#encyclopediaReader .reader-position{font-size:15px}#encyclopediaReader .reader-relation-kind{font-size:10px}#encyclopediaReader .reader-close{font-size:11px}}
