.charted-map{position:absolute;inset:0;z-index:2;pointer-events:none;overflow:hidden}
.probed-search-points{position:absolute;inset:0;z-index:1;pointer-events:none}
body[data-probed-markers=true] .charted-target-star{display:none}
body[data-probed-markers=true] .charted-map{z-index:1}
.catalog-marker{z-index:2}
.probed-search-points[hidden],.survey-knowledge[hidden]{display:none}
.survey-knowledge{position:absolute;top:100px;left:var(--edge,24px);z-index:7;width:265px;padding:18px;background:#07131df2;border:1px solid #a3bbc442;border-radius:7px;color:#d7e1e6;font:12px/1.6 var(--mono);max-height:calc(100% - 290px);overflow:auto}
.survey-knowledge button{float:right;width:34px;height:34px;color:inherit;background:transparent;border:1px solid #b5ced044;border-radius:4px;font-size:19px}
.survey-knowledge h2{font:14px var(--mono);clear:both;overflow-wrap:anywhere}
.knowledge-status{font-size:10px;color:#98b3bd;margin:6px 0 18px}
.knowledge-summary{color:#afbdc5}
.survey-knowledge dl{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px;margin:18px 0 0;font-size:10px}
.survey-knowledge dt{color:#91a5b2}.survey-knowledge dd{margin:0;color:#d4dfdf}
body[data-knowledge-open] .charted-controls{visibility:hidden}
body[data-charted-dimension="3d"] .record.is-visible{z-index:5}
body[data-survey-archive=true]:has(.record.is-visible) :is(.charted-space-tools,.charted-space-help){display:none}
@media(max-width:600px){.survey-knowledge{top:82px;left:16px;right:16px;width:auto;max-height:calc(100% - 265px)}}
@media(max-width:600px){
  body[data-survey-archive=true]:has(.record.is-visible) :is(.charted-panel,.charted-space-tools){display:none}
  body.quiet-navigation[data-survey-archive=true] .record{top:192px;bottom:auto;max-height:calc(100svh - 405px)}
}
.charted-map svg{width:100%;height:100%;display:block;overflow:hidden}
.charted-wash{fill:#061218;opacity:.04}
.charted-fringe{fill:#66b5b3;fill-opacity:.04;stroke:none}
.charted-field{fill:#53b9b5;fill-opacity:.07;stroke:none}
.charted-core{fill:#b0d8bc;fill-opacity:.06;stroke:none}
.charted-probe-shadow{fill:none;stroke:#020b12;stroke-opacity:.85;stroke-width:5;vector-effect:non-scaling-stroke}
.charted-probe{fill:none;stroke:#66aea5;stroke-opacity:.92;stroke-width:2.2;vector-effect:non-scaling-stroke}
.charted-probe[data-depth="2"]{stroke-opacity:.86;stroke-width:2}
.charted-probe[data-depth="3"],.charted-probe[data-depth="4"]{stroke-opacity:.78;stroke-width:1.9}
.charted-probe[data-lineage=true]{stroke:#baf3e3;stroke-opacity:1;stroke-width:2.8}
.charted-probe[data-mission=priority]{stroke:#c3a2ce;stroke-dasharray:3 3}
.charted-target-star{fill:#e4eee1;stroke:#061019;stroke-width:1.6;vector-effect:non-scaling-stroke}
.charted-target-star[data-selected=true]{fill:#fff4ce;stroke-width:2}
.charted-target-star[data-mission=priority]{fill:#e2c4ed}
.charted-approach{fill:none;stroke:#a3b8c5;stroke-opacity:.48;stroke-width:.7;stroke-dasharray:4 7;vector-effect:non-scaling-stroke}
.charted-selected{fill:none;stroke:#a7f0dc;stroke-opacity:1;stroke-width:2.8;vector-effect:non-scaling-stroke}
.charted-passage-shadow{fill:none;stroke:#10161a;stroke-opacity:.85;stroke-width:5.6;vector-effect:non-scaling-stroke}
.charted-passage{fill:none;stroke:#f1d5a1;stroke-opacity:1;stroke-width:2.6;vector-effect:non-scaling-stroke}
.charted-progress{fill:none;stroke:#fff0c9;stroke-width:3;vector-effect:non-scaling-stroke}
.charted-map:not([data-track=ship]) .charted-progress{stroke:#dcfff5}
.charted-probe-label{position:absolute;padding:3px 5px;transform:translate(5px,3px);color:#a3c9c3;background:#07111785;border-radius:3px;font:9px/1.4 var(--mono);white-space:nowrap}
.charted-probe-label[data-selected=true]{color:#dcfff5}
.charted-stop{position:absolute;display:flex;align-items:center;gap:9px;transform:translate(-5px,-50%);color:#f2e2c4;font:11px/1.5 var(--mono);white-space:nowrap;text-shadow:0 1px 4px #000,0 0 8px #000}
.charted-stop:before{content:'';width:8px;height:8px;flex:none;border:1px solid #ead3a9;border-radius:50%;background:#142024;box-shadow:0 0 0 3px #12262a80}
.charted-stop[data-active=true]:before{background:#f2d5a2;box-shadow:0 0 0 5px #efd39a20,0 0 18px #efd39a70}
.charted-stop span{padding:3px 6px;border-radius:3px;background:#0711179c}
.charted-stop[data-flip=true]{flex-direction:row-reverse;transform:translate(calc(-100% + 5px),-50%)}
.charted-stop[data-caption=false] span{display:none}
/* 16px: the toolbar button shares the masthead's centre line. */
.charted-controls{position:absolute;top:calc(16px + env(safe-area-inset-top));right:var(--edge,24px);z-index:6;width:242px;pointer-events:none;color:#e1ebe7;font:12px/1.5 var(--mono)}
.charted-toolbar{display:flex;gap:6px;justify-content:flex-end}
.charted-controls .charted-toolbar button{padding:8px 9px;font-size:11px}
.charted-controls #charted-dimension{white-space:nowrap}
.charted-controls button{min-height:44px;border:1px solid #b7c6ce38;border-radius:5px;color:inherit;background:#0c171dd9;font:inherit;padding:8px 12px;pointer-events:auto}
.charted-controls button:hover:not(:disabled){background:#1b2d34;border-color:#a6d0cb80}
.charted-controls button:focus-visible{outline:2px solid #efd6a9;outline-offset:3px}
.charted-controls button:disabled{opacity:.35;cursor:default}
.charted-controls #charted-toggle{display:flex;align-items:center;justify-content:center;gap:9px;margin-left:auto;backdrop-filter:blur(10px)}
.charted-controls #charted-toggle[aria-pressed=true]{color:#c6eee2;border-color:#8ac6b58c;background:#102626e8}
.charted-controls svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;flex:none}
.charted-panel{margin-top:8px;padding:14px;background:#09131de8;border:1px solid #b7c6ce30;border-radius:7px;backdrop-filter:blur(12px);pointer-events:auto;box-shadow:0 4px 22px #0002}
.charted-panel p{margin:0}
.charted-heading{font:400 23px/1.15 var(--serif);color:#f0e4cb;letter-spacing:-.02em}
.charted-description{font-size:11px;color:#bbc9cb;line-height:1.65;margin-top:7px!important}
/* The survey log: instrument readings, label left and value right on one baseline. */
.survey-log{margin:12px 0 4px;padding:10px 0 2px;border-top:1px solid #98a8ad26}
.survey-log-heading{margin:0 0 6px;font:500 10px/1.4 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#c8ac7a}
.survey-log dl{margin:0;display:grid;gap:4px}
.survey-log dl>div{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.survey-log dt{font:400 10px/1.5 var(--mono);color:#8fa0a8;white-space:nowrap}
.survey-log dd{margin:0;min-width:0;font:400 11px/1.5 var(--mono);color:#e4f2f5;text-align:right;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.survey-log dd span{display:block}
.charted-key{display:flex;flex-wrap:wrap;gap:7px 12px;margin:12px 0;color:#bdcecb;font-size:10px}
.charted-key span{display:flex;align-items:center;gap:7px}
.charted-key i{display:inline-block;width:18px;height:8px;border:1px solid #90c6bb99;background:#53b9b54a}
.charted-key .passage-key{height:0;border:0;border-top:2px solid #f1d5a1;background:none}
.charted-key .probe-key{height:0;border:0;border-top:1px dashed #b4e7df;background:none}
.charted-key .approach-key{height:0;border:0;border-top:1px dashed #a3b8c5;background:none}
.charted-track-label{display:block;font-size:10px;color:#c1d1cd;margin:10px 0 5px}
.charted-track-label span{display:block;color:#95aaa7;font-size:9px}
.charted-controls select{display:block;width:100%;min-height:44px;padding:8px 7px;margin-bottom:8px;border:1px solid #b7c6ce50;border-radius:5px;background:#101e25;color:#e1ebe7;font:11px var(--mono);color-scheme:dark;pointer-events:auto}
.charted-controls select:focus-visible{outline:2px solid #efd6a9;outline-offset:3px}
.charted-lineage{font-size:10px;line-height:1.5;color:#a9c7bf;overflow-wrap:anywhere;margin:8px 0!important}
.charted-family{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin:8px 0}
.charted-family button:first-child{grid-column:1/-1}
.charted-family button{flex:1;min-width:44px;padding:7px}
.charted-controls .charted-trace{width:100%;display:flex;align-items:center;justify-content:space-between;background:#b5d3c90c}
.charted-stage{margin-top:12px;padding-top:11px;border-top:1px solid #b7c6ce30}
.charted-stage-index{color:#b0c1bd;font-size:10px;letter-spacing:.10em}
.charted-stage-title{margin-top:5px!important;color:#f0e4cb;font-size:12px}
.charted-stage-description{margin-top:5px!important;color:#bbc9cb;font-size:11px;line-height:1.65;min-height:3.3em}
.charted-stage-controls{display:flex;gap:5px;margin-top:10px}
.charted-stage-controls button{min-width:44px;padding:7px}
.charted-stage-controls .charted-pause{flex:1}
.charted-controls[hidden],.charted-map[hidden],.charted-controls [hidden],.charted-map [hidden]{display:none!important}
body:has(#find-ship[aria-pressed=true]) .charted-controls,body:has(dialog[open]) .charted-controls,body[data-search-open=true] .charted-controls{visibility:hidden;pointer-events:none}
@media(max-width:600px){.charted-controls{top:calc(136px + env(safe-area-inset-top));right:16px;width:220px}.charted-panel{padding:12px}.charted-heading{font-size:21px}.charted-key{gap:6px 10px}.charted-stop span{font-size:10px}.charted-description{display:none}}
@media(max-width:600px){.charted-controls:not([data-journey=idle]) :is(.charted-heading,.charted-key,.charted-lineage,.charted-family,.charted-stage-description,.charted-track-label span),.charted-controls[data-track]:not([data-track=ship]) :is(.charted-heading,.charted-key){display:none}.charted-controls:not([data-journey=idle]) .charted-track-label{margin-top:0}.charted-stage-title{font-size:11px}}
@media(max-height:520px){.charted-controls{top:12px;right:14px;width:224px}.charted-heading,.charted-description,.charted-stage-description{display:none}.charted-panel{padding:10px}.charted-key{margin:0 0 7px}.charted-stage{padding-top:7px;margin-top:7px}.charted-stage-controls{margin-top:6px}}
@media(prefers-reduced-motion:reduce){.charted-map,.charted-controls{scroll-behavior:auto}}
.charted-space{position:absolute;inset:0;z-index:4;background:#030912;overflow:hidden;color:#d3dfdf}
.charted-space[hidden]{display:none}
.charted-space canvas{display:block;width:100%;height:100%;touch-action:none;cursor:grab}
.charted-space canvas:active{cursor:grabbing}
.charted-space canvas:focus-visible{outline:1px solid #c5dfd5;outline-offset:-5px}
.charted-space-note{position:absolute;top:104px;left:var(--edge,24px);pointer-events:none}
.charted-space-note p{margin:0 0 6px;font:24px/1.15 var(--serif);color:#e4d9c5}
.charted-space-note span,.charted-space-help{font:10px/1.5 var(--mono);color:#93a5b5}
.charted-space-tools{position:absolute;bottom:150px;left:var(--edge,24px);display:flex;flex-wrap:wrap;gap:6px;max-width:350px}
.charted-space-tools button{min-height:44px;padding:8px 12px;font:11px var(--mono);color:#c8dcda;border:1px solid #a5c9d03b;border-radius:5px;background:#0a1725d9}
.charted-space-tools button:hover{background:#1a3040}
.charted-space-tools button:focus-visible{outline:2px solid #efd6a9;outline-offset:3px}
.charted-space-help{position:absolute;bottom:119px;left:var(--edge,24px);pointer-events:none}
body[data-charted-dimension="3d"] :is(.charted-map,#target,#catalog-markers,.story-door,#hint){visibility:hidden}
body.quiet-navigation[data-charted-dimension="3d"] :is(#zoom-level,#zoom-label){display:none}
body[data-charted-dimension="3d"] .charted-controls :is(.charted-heading,.charted-description,.charted-key){display:none}
@media(max-width:600px){.charted-space-note{top:93px;left:16px}.charted-space-note p{font-size:19px}.charted-space-note span{font-size:9px}.charted-space-tools{left:16px;bottom:158px;max-width:290px;gap:4px}.charted-space-tools button{font-size:9px;padding:6px 7px}.charted-space-help{left:16px;bottom:133px;font-size:9px}.charted-toolbar{gap:4px}.charted-controls .charted-toolbar button{padding:8px 7px}}
@media(max-height:520px){.charted-space-note{top:86px}.charted-space-tools{bottom:94px}.charted-space-help{display:none}}
@media(max-width:600px){
  .charted-controls :is(.charted-heading,.charted-key){display:none}
  .charted-controls:not([data-journey=idle]) :is(.charted-trace,.charted-stage-controls,.charted-track-label){display:none}
  .charted-controls:not([data-journey=idle]) .charted-stage{border:0;padding-top:0;margin-top:0}
  .charted-space-note{top:84px}.charted-space-note p{font-size:17px}
  .charted-space-tools{bottom:196px}.charted-space-help{display:none}
  .charted-space-tools :is([data-view="face"],[data-view="edge"]){display:none}
  body[data-charted-dimension="3d"] .charted-controls :is(.charted-track-label,.charted-family,.charted-lineage,.charted-trace){display:none}
}

body[data-charted-dimension="3d"] #target{display:none}

.charted-space canvas.charted-starfield{position:absolute;inset:0;pointer-events:none}
.charted-space canvas:not(.charted-starfield){position:relative}

/* Camera controls stay screen-sized inside the local course. */
.charted-space-tools{display:flex;flex-direction:column;gap:8px;width:350px;max-width:calc(100% - 32px);padding:12px;border:1px solid #a5c9d033;border-radius:8px;background:#07131de8;backdrop-filter:blur(12px);bottom:148px}
.charted-space-presets,.charted-space-movement,.charted-space-modes{display:flex;gap:5px}
.charted-space-presets button{flex:1;padding:8px}
.charted-space-movement button{flex:1;padding:4px;font-size:20px}
.charted-space-modes button{min-height:34px;font-size:10px;padding:5px 8px}
.charted-space-tools button[aria-pressed=true]{background:#1b373b;color:#e0f5e9;border-color:#a2c9b580}
.charted-space-help{position:static;margin:0;font-size:9px}
.charted-course-controls{display:flex;align-items:center;gap:12px}
.charted-course-controls[hidden]{display:none}
.charted-course-controls label{flex:1;font:10px var(--mono);color:#b4ccca}
.charted-course-controls output{float:right;color:#e5e8d7}
.charted-course-controls input{display:block;width:100%;height:26px;margin:3px 0 0;accent-color:#aed5c2;cursor:pointer}
.charted-course-controls button{font-size:10px;padding:6px 9px}
.charted-space canvas[data-drag-mode=orbit]{cursor:crosshair}
@media(max-width:600px){.charted-space-tools{left:16px;right:16px;bottom:182px;width:auto;padding:9px;gap:5px;max-width:none}.charted-space-tools button{font-size:10px}.charted-space-movement button{font-size:20px}.charted-space-modes button{min-height:30px}.charted-space-note{max-width:210px}.charted-space-help{display:block;font-size:8px}}
@media(max-height:520px){.charted-space-tools{bottom:84px;width:310px;padding:8px;gap:4px}.charted-space-tools button{min-height:34px}.charted-space-help{display:none}.charted-course-controls input{height:18px}}

.charted-space-tools{bottom:112px}
.charted-space-presets button{font-size:10px;white-space:nowrap}
@media(max-width:600px){.charted-space-tools{bottom:172px}}
@media(max-height:520px){.charted-space-tools{bottom:84px}.charted-space-note{display:none}}

.charted-space-tools [hidden]{display:none}
.charted-space-modes{flex-wrap:wrap}
@media(max-height:360px){
  body.quiet-navigation[data-survey-archive=true] .record{top:auto;max-height:none}
}
/* Charted area follows the map only where the top-right corner meets the masthead. */
@media(max-height:360px) and (max-width:540px){
  .charted-controls{position:relative;inset:auto;width:min(460px,calc(100% - 32px));margin:12px auto 16px}
  .charted-toolbar{justify-content:flex-start}
  .charted-controls #charted-toggle{margin-left:0}
}
/* The track select's text stops before its chevron; the log sits flush when the
   heading and description above it are hidden. */
.charted-controls select{padding-right:26px;text-overflow:ellipsis}
@media(max-width:600px),(max-height:520px){.survey-log{margin-top:0;padding-top:0;border-top:0}}
