#map{max-width:1600px;padding:30px 4% 65px}#map .breadcrumb{margin-bottom:14px}#map .page-intro{margin-bottom:18px}#map .page-intro h1{font-size:34px}#map .page-intro .eyebrow{margin-bottom:8px}#map .mini-book{display:none}#map .module-nav{margin-bottom:22px;padding-bottom:16px}
.star-workspace{--night:#101f20;--starline:#314342;--startext:#e5ecdf;--starsub:#a1b1a9;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--paper);box-shadow:0 22px 70px #173c3010;position:relative;scroll-margin-top:16px}
.star-toolbar{padding:17px 22px;display:flex;gap:16px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:var(--paper)}.star-title{display:flex;gap:12px;align-items:center;white-space:nowrap}.star-mark{font:28px/1 var(--serif);color:var(--gold)}.star-title strong{font-size:14px;letter-spacing:.08em}.star-title small{display:block;font-size:10px;color:var(--muted);letter-spacing:.09em}.star-search-wrap{max-width:320px;flex:1;position:relative}.star-search-wrap input{width:100%;min-height:42px;border:1px solid var(--line);border-radius:7px;padding:9px 12px 9px 33px;background:var(--bg);color:var(--ink);font-size:13px}.star-search-icon{position:absolute;left:12px;top:8px;color:var(--muted);pointer-events:none}.star-search-results{position:absolute;top:48px;left:0;right:0;max-height:320px;overflow-y:auto;background:var(--paper);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);z-index:30;padding:6px}.star-search-results button{display:block;width:100%;text-align:left;padding:10px;border:0;background:transparent;color:var(--ink);font-size:13px;border-radius:5px;min-height:44px}.star-search-results button:hover,.star-search-results button:focus-visible{background:var(--sage)}.star-search-results button small{display:block;font-size:10px;color:var(--muted)}.star-search-results p{padding:10px;margin:0;font-size:12px}.star-expand{font-size:12px;min-height:42px;border:1px solid var(--line);background:transparent;padding:8px 12px;border-radius:7px;white-space:nowrap}
.star-viewbar{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px 22px;background:var(--paper);border-bottom:1px solid var(--line);flex-wrap:wrap}.star-tabs{display:flex;gap:4px}.star-tabs button{border:0;background:transparent;border-radius:5px;font-size:12px;padding:8px 13px;min-height:40px}.star-tabs button[aria-pressed=true]{background:var(--sage);color:var(--ink);font-weight:650}.star-detail-options{display:flex;gap:16px;align-items:center;font-size:11px;color:var(--muted)}.star-detail-options label{display:flex;gap:7px;align-items:center;white-space:nowrap}.star-detail-options select{background:var(--bg);border:1px solid var(--line);border-radius:4px;color:var(--ink);padding:5px 8px;min-height:34px;font-size:12px}.star-detail-options input[type=checkbox]{accent-color:var(--forest);width:15px;height:15px}
.star-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;min-width:0}.star-visual{background:var(--night);position:relative;min-width:0;overflow:hidden}.star-stage{height:640px;position:relative;touch-action:pan-y pinch-zoom;cursor:grab;isolation:isolate;background:radial-gradient(ellipse at 28% 28%,#2d403d38,transparent 65%),radial-gradient(ellipse at 85% 80%,#443f2b26,transparent 55%)}.star-stage:before{content:"";position:absolute;inset:0;background-image:radial-gradient(#a2b9ae1c .7px,transparent .7px);background-size:25px 25px;pointer-events:none}.star-stage.is-touch-edit{touch-action:none}.star-stage:active{cursor:grabbing}.star-stage svg{width:100%;height:100%;display:block;position:relative;overflow:hidden;outline-offset:-4px}.star-stage svg:focus-visible{outline:2px solid #e0bc76}.star-edge{stroke:#658578;stroke-width:1;opacity:.38;vector-effect:non-scaling-stroke;pointer-events:none}.star-edge.cross{stroke:#b59b71;stroke-dasharray:3 6;opacity:.3}.star-edge.is-active{stroke:#e2d7b0;opacity:.85;stroke-width:1.7}.star-edge.is-muted{opacity:.06}.star-node{cursor:grab;outline:none}.star-node:active{cursor:grabbing}.star-node .node-hit{fill:transparent;stroke:none}.star-node .node-glow{fill:var(--node-color);opacity:.075;pointer-events:none}.star-node .node-dot{fill:var(--node-color);stroke:var(--night);stroke-width:2;vector-effect:non-scaling-stroke}.star-node .node-ring{fill:none;stroke:var(--node-color);stroke-width:1;opacity:0;vector-effect:non-scaling-stroke}.star-node text{font-family:system-ui,-apple-system,"PingFang SC","Microsoft YaHei",sans-serif;fill:#c0cec4;paint-order:stroke;stroke:#101f20;stroke-width:4px;stroke-linejoin:round;pointer-events:none;dominant-baseline:middle}.star-node.major text{fill:#e5e9d8;font-weight:550}.star-node.root text{fill:#ecdeb6;font-family:var(--serif);font-weight:650}.star-node.is-selected .node-ring,.star-node:focus-visible .node-ring{opacity:.9}.star-node.is-selected text,.star-node.is-neighbor text,.star-node:focus-visible text{fill:#fff6d6}.star-node.is-muted .node-dot{opacity:.18}.star-node.is-muted .node-glow{opacity:0}.star-node .node-pin{fill:#eff1db;pointer-events:none}.star-node:focus-visible .node-dot{stroke:#fff;stroke-width:3}.star-canvas-label{position:absolute;top:20px;left:22px;z-index:2;color:var(--starsub);pointer-events:none;font-size:10px;letter-spacing:.18em}.star-canvas-label strong{display:block;font:17px/1.5 var(--serif);color:#ced6c6;letter-spacing:.03em;margin-top:4px}.star-canvas-label p{letter-spacing:0;font-size:11px;color:#8faaa0;margin:3px 0}.star-controls{position:absolute;right:16px;bottom:19px;z-index:4;display:flex;flex-direction:column;gap:5px}.star-controls button{width:38px;height:38px;border:1px solid #4b61584d;background:#182c2be8;color:#dbe4d9;border-radius:6px;display:grid;place-items:center;font-size:19px;line-height:1}.star-controls button:hover{background:#304740}.star-controls button[aria-pressed=true]{border-color:#d6bc7f;color:#e9d49d}.star-zoom{color:#adbbb0;font-size:10px;text-align:center}.star-minimap{position:absolute;bottom:20px;left:20px;width:110px;height:80px;border:1px solid #8ba29629;background:#0c191b80;border-radius:5px;pointer-events:none}.star-minimap svg{width:100%;height:100%}.star-minimap circle{opacity:.65}.star-minimap rect{fill:#c6cdbf0d;stroke:#a3b8aa;stroke-width:.75}.star-mobile-edit{display:none}.star-legend{display:flex;gap:17px;align-items:center;flex-wrap:wrap;padding:13px 20px;color:#aebdb2;border-top:1px solid #65857828;font-size:10px;line-height:1.5;background:#101f20}.star-legend span{display:inline-flex;gap:7px;align-items:center}.star-legend i{width:20px;height:0;border-top:1px solid #8da295}.star-legend i.dashed{border-top:1px dashed #c5af81}.star-legend .star-live-count{margin-left:auto;color:#d3ddcf;font-variant-numeric:tabular-nums}
.star-sidebar{padding:24px 23px 20px;background:var(--paper);height:685px;overflow-y:auto;scrollbar-width:thin;border-left:1px solid var(--line);scroll-margin-top:20px}.star-sidebar:focus{outline:none}.star-selection-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:17px}.star-category{font-size:10px;letter-spacing:.09em;color:var(--muted);display:flex;align-items:center;gap:7px}.star-category i{height:7px;width:7px;border-radius:50%;background:var(--group-color)}.star-sidebar h2{font-size:27px;margin:0 0 13px}.star-sidebar .star-summary{font-size:14px;line-height:1.9;margin-bottom:22px}.star-sidebar h3{font:600 11px/1.5 system-ui;color:var(--muted);letter-spacing:.08em;margin:0 0 8px}.star-original{background:var(--sage);padding:16px;border-radius:7px;margin:18px 0}.star-original p{font-size:13px;line-height:1.9;margin:0}.star-reflection{font:16px/1.85 var(--serif);border-left:2px solid var(--gold);padding-left:13px;margin:20px 0}.star-relation-list{display:grid;gap:4px}.star-relation-list button{background:transparent;border:0;border-bottom:1px solid var(--line);text-align:left;padding:11px 0;color:var(--ink);min-height:44px;line-height:1.6}.star-relation-list button>span{display:flex;justify-content:space-between;gap:8px;font-size:12px}.star-relation-list button small{display:block;font-size:11px;color:var(--muted);margin-top:5px;line-height:1.75}.star-relation-list button:hover>span{color:var(--gold)}.star-sidebar-actions{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.star-sidebar-actions .button{min-height:40px;font-size:11px;padding:8px 12px}.star-source{font-size:10px;color:var(--muted);border-top:1px solid var(--line);padding-top:15px;line-height:1.9}.star-source a{text-decoration:underline;text-underline-offset:3px}.star-pin{background:transparent;border:0;color:var(--muted);font-size:11px;padding:6px;min-height:34px}.star-pin[aria-pressed=true]{color:var(--gold)}.star-read-more{display:flex;justify-content:space-between;gap:8px;font-size:12px;margin:15px 0}.star-read-more button{border:0;border-bottom:1px solid var(--line);background:transparent;font-size:12px;padding:8px 0;min-height:40px}.star-footbar{border-top:1px solid var(--line);padding:15px 22px;display:flex;gap:14px;align-items:center;flex-wrap:wrap}.star-clusters{display:flex;flex-wrap:wrap;gap:5px;flex:1}.star-clusters button{display:flex;align-items:center;gap:6px;background:transparent;border:1px solid transparent;padding:7px 8px;border-radius:4px;font-size:11px;min-height:35px;line-height:1.5}.star-clusters button i{background:var(--group-color);width:6px;height:6px;border-radius:50%;box-shadow:0 0 0 2px var(--sage)}.star-clusters button[aria-pressed=true]{background:var(--sage);border-color:var(--line)}.star-help{font-size:11px;color:var(--muted);padding:13px 4px;display:flex;align-items:start;gap:20px;justify-content:space-between}.star-help p{margin:0}.star-help details{min-width:180px}.star-help summary{cursor:pointer}.star-help details p{max-width:380px;margin-top:9px}.star-spacing{display:flex;gap:9px;align-items:center;font-size:11px;color:var(--muted)}.star-spacing input{width:80px;accent-color:var(--forest)}
.star-directory{padding:26px;max-height:685px;overflow:auto;background:var(--bg)}.star-directory .directory-lead{font-size:12px;color:var(--muted);margin-bottom:20px}.star-directory details{border-bottom:1px solid var(--line);padding:12px 0}.star-directory summary{cursor:pointer;display:flex;gap:10px;align-items:center;font-size:16px;font-family:var(--serif);min-height:38px}.star-directory summary i{width:7px;height:7px;background:var(--group-color);border-radius:50%}.star-directory summary small{margin-left:auto;font:11px system-ui;color:var(--muted)}.star-directory-children{padding:9px 0 6px 18px;border-left:1px solid var(--line);margin-left:4px}.star-directory-item{margin:7px 0}.star-directory-item button{display:block;width:100%;text-align:left;border:0;background:transparent;font-size:13px;min-height:40px;padding:7px 10px;border-radius:5px}.star-directory-item button[aria-current=true]{background:var(--sage);color:var(--ink)}.star-directory-item p{font-size:11px;color:var(--muted);padding:0 10px;margin:0;line-height:1.8}.star-directory-empty{padding:30px;font-size:14px}
body.star-expanded{overflow:hidden}.star-workspace.is-expanded{position:fixed;inset:14px;z-index:150;display:flex;flex-direction:column;box-shadow:0 0 0 40px #101f20b3}.star-workspace.is-expanded .star-layout{flex:1;min-height:0}.star-workspace.is-expanded .star-stage{height:calc(100dvh - 230px);min-height:250px}.star-workspace.is-expanded .star-sidebar,.star-workspace.is-expanded .star-directory{height:calc(100dvh - 187px)}.star-workspace.is-expanded .star-footbar{flex-shrink:0}.star-workspace.is-expanded .star-layout .star-visual{min-height:0}
@media(max-width:1100px){.star-layout{grid-template-columns:minmax(0,1fr) 285px}.star-sidebar{padding:22px 18px}.star-toolbar{padding:15px}.star-title small{font-size:9px}.star-footbar{padding:12px}.star-spacing{display:none}.star-stage{height:610px}.star-sidebar{height:655px}}
@media(max-width:800px){#map{padding:25px 4% 40px}#map .page-intro h1{font-size:30px}#map .page-intro p{font-size:13px}.star-toolbar{flex-wrap:wrap;gap:12px;padding:15px}.star-title{flex:1}.star-search-wrap{order:3;max-width:none;flex-basis:100%}.star-expand{font-size:11px;padding:7px 9px}.star-layout{grid-template-columns:1fr}.star-sidebar{height:auto;max-height:none;border-left:0;border-top:1px solid var(--line);padding:25px}.star-stage{height:510px}.star-viewbar{padding:10px 12px;gap:10px}.star-tabs{width:100%;justify-content:space-between}.star-tabs button{flex:1;padding:8px;font-size:12px}.star-detail-options{width:100%;justify-content:space-between;gap:9px}.star-detail-options label{font-size:11px}.star-canvas-label{top:16px;left:15px}.star-canvas-label strong{font-size:15px}.star-canvas-label p{font-size:10px}.star-controls{right:12px;bottom:18px}.star-minimap{width:82px;height:60px;left:13px;bottom:18px}.star-legend{padding:12px;font-size:10px;gap:12px}.star-legend .star-live-count{margin-left:0}.star-mobile-edit{display:block;position:absolute;left:50%;bottom:17px;transform:translateX(-50%);border:1px solid #4b6158;background:#203734;color:#e5ecdf;border-radius:20px;padding:8px 13px;font-size:11px;min-height:38px;white-space:nowrap;z-index:4}.star-mobile-edit[aria-pressed=true]{border-color:#dbbc7f;color:#ffe1a3}.star-clusters button{font-size:10px;min-height:38px;padding:7px}.star-help{display:block;font-size:11px;padding:13px 2px}.star-help details{margin-top:10px}.star-directory{max-height:600px;padding:20px}.star-workspace.is-expanded{inset:7px}.star-workspace.is-expanded .star-layout{overflow:auto;display:block}.star-workspace.is-expanded .star-stage{height:48dvh;min-height:300px}.star-workspace.is-expanded .star-sidebar{height:auto;max-height:none}.star-workspace.is-expanded .star-directory{height:auto;max-height:none}.star-workspace.is-expanded .star-footbar{display:none}.star-workspace.is-expanded .star-toolbar{padding:10px}.star-workspace.is-expanded .star-viewbar{padding:7px 10px}.star-workspace.is-expanded .star-title small{display:none}}
@media(max-width:360px){.star-title strong{font-size:12px}.star-title small{font-size:8px}.star-mark{font-size:23px}.star-toolbar{padding:12px}.star-expand{padding:7px;font-size:10px}.star-stage{height:470px}.star-sidebar{padding:22px 18px}.star-legend{font-size:9px;gap:8px}.star-minimap{display:none}.star-mobile-edit{left:15px;transform:none}.star-detail-options{gap:4px}.star-detail-options select{padding:5px;font-size:10px}.star-detail-options label{font-size:10px}}
@media(prefers-reduced-motion:reduce){.star-workspace *{scroll-behavior:auto!important;transition:none!important}}
.star-workspace.is-expanded .star-layout{grid-template-rows:minmax(0,1fr);overflow:hidden}
.star-workspace.is-expanded .star-visual{display:flex;flex-direction:column;height:100%;min-height:0}
.star-workspace.is-expanded .star-stage{flex:1;height:auto;min-height:0}
.star-workspace.is-expanded .star-legend{flex-shrink:0}
.star-workspace.is-expanded .star-sidebar,.star-workspace.is-expanded .star-directory{height:100%;min-height:0}
@media(max-width:800px){.star-workspace.is-expanded .star-layout{overflow:auto}.star-workspace.is-expanded .star-visual{display:block;height:auto}.star-workspace.is-expanded .star-stage{height:48dvh;min-height:300px;flex:none}.star-workspace.is-expanded .star-sidebar,.star-workspace.is-expanded .star-directory{height:auto}}

/* Reading and exploration refinements: keep controls calm and the way back visible. */
.star-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.star-workspace{--star-ease:cubic-bezier(.23,1,.32,1)}
.star-workspace button,.star-workspace input:not([type=checkbox]),.star-workspace select,.star-workspace summary,.star-detail-options label{min-height:44px}
.star-controls button{width:44px;height:44px}
.star-workspace button{transition:background-color 140ms ease,color 140ms ease,transform 120ms var(--star-ease)}
.star-workspace button:active:not(:disabled){transform:scale(.98)}
.star-workspace .star-mobile-edit:active:not(:disabled){transform:translateX(-50%) scale(.98)}
.star-workspace button:disabled{cursor:default;opacity:.55}
.star-workspace button:focus-visible,.star-workspace a:focus-visible,.star-workspace select:focus-visible,.star-workspace input:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.star-sidebar{overscroll-behavior:contain;scrollbar-color:var(--muted) var(--paper)}
.star-sidebar h2{scroll-margin-top:24px}
.star-sidebar h2:focus-visible{outline:2px solid var(--gold);outline-offset:7px;border-radius:2px}
.star-trail{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:-8px 0 20px;padding-bottom:12px;border-bottom:1px solid var(--line)}
.star-trail button{border:0;background:transparent;padding:8px 0;color:var(--ink);font-size:13px;text-align:left}
.star-trail span{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}
.star-node.is-visited .node-ring{opacity:.42;stroke-dasharray:2 4}
.star-node.is-selected .node-ring,.star-node:focus-visible .node-ring{opacity:1;stroke-dasharray:none}
.star-search-results{overscroll-behavior:contain}
.star-search-results button{font-size:14px}
.star-search-results button small{font-size:12px}
.star-search-wrap input{caret-color:var(--forest)}
.star-search-wrap input::placeholder{color:var(--muted);opacity:1}
.star-sidebar .star-summary{font-size:15px;line-height:1.95}
.star-sidebar h3{font-size:13px;letter-spacing:0;line-height:1.7}
.star-original p{font-size:14px}
.star-relation-list button>span{font-size:14px}
.star-relation-list button small{font-size:13px;line-height:1.85}
.star-source{font-size:12px}
.star-category,.star-pin,.star-read-more button,.star-sidebar-actions .button{font-size:12px}
.star-directory-item p{font-size:13px;line-height:1.9}
.star-directory-item button{font-size:14px}
.star-help{font-size:12px;line-height:1.85}
.star-help summary{display:flex;align-items:center}
.star-directory,.star-workspace.is-expanded .star-layout{overscroll-behavior:contain}
.star-workspace ::selection{background:#d5bd7f;color:#172d27}
@media(max-width:800px){
  .star-title{min-width:0;white-space:normal}
  .star-toolbar{column-gap:8px}
  .star-title small{font-size:11px;letter-spacing:0}
  .star-search-wrap input{font-size:16px}
  .star-detail-options{flex-wrap:wrap;justify-content:flex-start;column-gap:16px;row-gap:3px}
  .star-detail-options label{font-size:12px;min-height:44px}
  .star-detail-options select{font-size:13px}
  .star-detail-options input[type=checkbox]{width:18px;height:18px;min-height:18px}
  .star-tabs button,.star-clusters button{font-size:12px}
  .star-sidebar .star-summary{font-size:16px}
  .star-original p,.star-relation-list button>span{font-size:15px}
  .star-relation-list button small{font-size:14px}
  .star-sidebar h3{font-size:14px}
  .star-category,.star-pin,.star-read-more button,.star-sidebar-actions .button{font-size:13px}
  .star-trail span{font-size:12px}
  .star-reflection{font-size:18px}
  .star-legend{font-size:12px}
  .star-canvas-label p{font-size:12px}
  .star-mobile-edit{font-size:12px;max-width:calc(100% - 86px)}
  .star-directory-item p{font-size:14px}
}
@media(max-width:360px){.star-workspace .star-mobile-edit:active:not(:disabled){transform:scale(.98)}}
body.still .star-workspace *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
.star-trail{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:19px;padding-bottom:12px;border-bottom:1px solid var(--line)}
.star-trail button{border:0;background:transparent;padding:7px 0;min-height:38px;color:var(--muted);font-size:11px;white-space:nowrap}
.star-trail span{font-size:10px;color:var(--muted);white-space:nowrap}
.star-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
#star-detail-title:focus{outline:none}
@media(prefers-reduced-motion:reduce){.star-workspace *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
