
/* The explorer inherits the site text colors and uses its own map accents. */
#explorer, #starmap #map-node-tooltip, .farm-explorer-dialog {
 --text:var(--ink);
 --panel:var(--surface);
 --button:color-mix(in srgb, var(--text) 6%, var(--surface));
 --card:color-mix(in srgb, var(--text) 4%, var(--surface));
 --blue:#81c9f3;
 --blue-rgb:129,201,243;
 --gold:#e8cc84;
}
#starmap .explorer {display:grid;grid-template-columns:minmax(0,1fr) 385px;border:1px solid var(--line);background:var(--surface);min-height:640px}
#explorer .map-column {min-width:0;display:flex;flex-direction:column;background:#070f13}
#explorer .map-canvas-shell {border:0!important;border-radius:0!important;background:#070f13!important;overflow:hidden}
#explorer .map-svg-scroll {overflow-x:auto;min-width:0!important;position:relative}
#explorer #map-svg {display:block;width:100%!important;min-width:0!important;aspect-ratio:1280/790;height:auto!important;max-height:650px;background:#071218}
#explorer .route-strip {padding:15px 18px 18px;border-top:1px solid #263740;min-height:108px;color:#b7cbd8}
#explorer .route-strip h3 {font-size:14px;color:#edf4f7;margin-bottom:6px}
#explorer .route-strip p {font-size:12px;color:#8fa7b6}
#explorer .route-strip .path {display:flex;align-items:center;gap:8px;margin-bottom:10px;font-size:12px}
#explorer .path b {color:var(--blue)}
#explorer .path span {color:#7294a6}
#explorer .route-strip button {font-size:11px;padding:4px 10px;background:#152b39;border-color:#476a80}
#explorer .map-point.preview-dim, #explorer .map-solar-location.preview-dim {opacity:.3!important}
#explorer .map-point.preview-match text, #explorer .map-node-point.preview-match text, #explorer .map-solar-location.preview-match text {fill:#96d8ff!important;filter:drop-shadow(0 0 5px #6db8ed)}
#explorer .map-point.preview-match .map-marker, #explorer .map-node-point.preview-match .map-marker {fill:#8dd5ff!important;stroke:#c0eaff!important}
#explorer .map-solar-location.preview-match .map-solar-hit {stroke:#81c9f3!important;fill:#81c9f320!important;stroke-width:1.4!important}
#explorer .preview-match {filter:drop-shadow(0 0 5px #79c8fa66)}
#explorer .preview-selected text {fill:white!important}
#explorer .preview-selected .map-hit {stroke:white!important;stroke-width:2!important}
#explorer .map-native-planet, #explorer .map-native-decoration, #explorer .map-earth-planet, #explorer .map-solar-body {pointer-events:none}
#explorer .search-panel {border-left:1px solid var(--line);background:var(--surface);position:relative;min-width:0;display:flex;flex-direction:column}
#explorer .search-top {padding:19px 20px 13px;border-bottom:1px solid var(--line);position:relative}
#explorer .search-top label {display:block;font-weight:700;font-size:17px;margin-bottom:12px}
#explorer .query-box {display:flex;align-items:center;border:1px solid #55788d;background:var(--button);min-height:46px;gap:8px;padding:0 10px}
#explorer .query-box:focus-within {border-color:var(--blue);box-shadow:0 0 0 2px #81c9f319}
#explorer .query-box>span {font-size:23px;line-height:1;color:var(--blue)}
#explorer .query-box input {width:100%;min-width:0;border:0;outline:0!important;background:transparent;color:var(--text);height:44px;padding:0;font-size:13px;box-shadow:none}
#explorer .query-box button {border:0;padding:2px;background:none;font-size:22px;color:var(--muted)}
#explorer .search-help {font-size:10px;margin-top:7px;color:var(--muted)}
#explorer #suggestions {position:absolute;top:110px;left:20px;right:20px;background:var(--panel);border:1px solid #55788d;box-shadow:0 15px 25px #0008;max-height:310px;overflow:auto;z-index:20}
#explorer #suggestions button {display:flex;text-align:left;width:100%;gap:9px;align-items:center;border:0;border-bottom:1px solid var(--line);background:transparent;padding:11px 12px;font-size:12px}
#explorer #suggestions button small {font:10px Geist}
#explorer #suggestions button[aria-selected=true] {background:#81c9f31e;outline:1px solid var(--blue);outline-offset:-1px}
#explorer .no-result {padding:17px;color:var(--muted);font-size:12px}
#explorer #panel-body {padding:18px 20px;flex:1}
#explorer .section-label {display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
#explorer .section-label h2 {font-size:14px}
#explorer .section-label small {font-size:10px}
#explorer .popular-list {display:grid;grid-template-columns:1fr 1fr;gap:8px}
#explorer .popular-item {background:var(--card);text-align:left;padding:12px 11px;border:1px solid var(--line);display:flex;gap:9px;min-height:70px;align-items:center}
#explorer .popular-item .resource-icon {color:var(--blue);font-size:24px;line-height:1}
#explorer .popular-item strong {font-size:12px;display:block;font-weight:400}
#explorer .popular-item small {display:block;font-size:10px;margin-top:3px}
#explorer .mini-heading {margin-top:23px;margin-bottom:10px;font-size:13px}
#explorer .mode-intro {margin-top:23px;border-top:1px solid var(--line);padding-top:18px}
#explorer .mode-intro p {color:var(--muted);font-size:12px;margin-top:6px}
#explorer .mode-examples {margin-top:13px;display:flex;flex-wrap:wrap;gap:6px}
#explorer .mode-examples span {border:1px solid var(--line);padding:3px 7px;color:var(--muted);font-size:10px}
#explorer .preview-hint {margin-top:20px;background:#81c9f30a;border-left:2px solid #5f9ab9;padding:11px 12px;font-size:11px;color:var(--muted)}
#explorer .item-heading {display:flex;align-items:center;gap:12px;margin-bottom:17px}
#explorer .item-heading .resource-icon {font-size:32px;color:var(--blue)}
#explorer .item-heading h2 {font-size:19px}
#explorer .item-heading small {font:10px Geist}
#explorer .kind-tag {display:inline-block;font-size:10px;margin-left:auto;color:var(--muted);border:1px solid var(--line);padding:3px 6px;white-space:nowrap}
#explorer .results-heading {margin-top:18px;padding-top:17px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;margin-bottom:11px;font-size:12px}
#explorer .results-heading small {font-size:10px}
#explorer .place-card {display:block;width:100%;background:var(--card);text-align:left;padding:13px;margin-bottom:9px;border:1px solid var(--line);position:relative}
#explorer .place-card.selected {border-color:var(--blue);background:#81c9f313;box-shadow:inset 3px 0 var(--blue)}
#explorer .place-head {display:flex;align-items:center;gap:8px;justify-content:space-between}
#explorer .place-head b {font-size:14px;color:var(--text)}
#explorer .place-sub {display:block;color:var(--blue);font-size:10px;margin:4px 0 7px}
#explorer .place-desc {font-size:12px;color:var(--muted);line-height:1.8}
#explorer .other-regions {margin-top:14px;border-top:1px solid var(--line);padding-top:13px}
#explorer .other-regions summary, #explorer .source-note summary {font-size:11px;color:var(--muted);cursor:pointer}
#explorer .region-chips {display:flex;flex-wrap:wrap;gap:5px;margin-top:9px}
#explorer .region-chips button {font-size:10px;padding:4px 7px}
#explorer .source-note {font-size:10px;color:var(--muted);margin-top:15px}
#explorer .source-note p {margin-top:6px}
#explorer .source-note a {font-size:10px}
#explorer .selected-detail {margin-top:15px;border-top:1px solid var(--line);padding-top:15px}
#explorer .selected-detail h3 {font-size:13px;margin-bottom:8px}
#explorer .selected-detail dl {display:grid;grid-template-columns:64px 1fr;margin:0;gap:6px;font-size:11px}
#explorer .selected-detail dt {color:var(--muted)}
#explorer .selected-detail dd {margin:0}
#explorer .selected-detail button {width:100%;margin-top:13px;font-size:11px}
.farm-explorer-dialog {background:var(--surface);color:var(--text);border:1px solid var(--line);padding:28px;width:min(90vw,520px)}
.farm-explorer-dialog::backdrop {background:#000b}
.farm-explorer-dialog p:not(.eyebrow) {font-size:13px;color:var(--muted);margin:16px 0}
.farm-explorer-dialog .dialog-close {float:right;padding:1px 7px;font-size:20px}
@media(min-width:1700px) {
 #starmap .explorer {grid-template-columns:minmax(0,1fr) 420px}
 #explorer #panel-body {padding:22px 24px}
 #explorer .search-top {padding-left:24px;padding-right:24px}
 #explorer .place-card {padding:15px}
 #explorer #map-svg {max-height:760px}
}
@media(max-width:1100px) {
 #starmap .explorer {grid-template-columns:minmax(0,1fr) 340px}
 #explorer .search-top, #explorer #panel-body {padding-left:15px;padding-right:15px}
 #explorer #suggestions {left:15px;right:15px}
 #explorer #map-svg {aspect-ratio:1.4}
 #explorer .popular-list {gap:6px}
 #explorer .popular-item {padding:10px 8px}
}
@media(max-width:800px) {
 #starmap .explorer {display:flex;flex-direction:column}
 #explorer .map-column {min-height:0}
 #explorer .map-svg-scroll {height:275px}
 #explorer #map-svg {height:275px!important;aspect-ratio:auto;max-height:none}
 #explorer .route-strip {padding:11px 12px;min-height:80px}
 #explorer .route-strip p {font-size:10px}
 #explorer .route-strip .path {font-size:10px}
 #explorer .search-panel {border-left:0;border-top:1px solid var(--line)}
 #explorer .search-top {padding-top:16px}
 #explorer .search-top label {font-size:16px}
 #explorer .popular-item {min-height:65px}
 #explorer .popular-item strong {font-size:13px}
 #explorer .place-desc {font-size:12px}
 #explorer .preview-hint {margin-top:15px}
 #starmap #map-node-tooltip {max-width:90vw!important}
}
#explorer .map-solar-location.preview-match .map-solar-focus-ring {stroke:#8ed4ff!important;stroke-width:2!important;opacity:1!important;fill:#81c9f312!important;animation:farm-search-arrival 1s ease-out 2}
#explorer .map-node-point.preview-match .map-hit {stroke:#8ed4ff!important;stroke-width:2!important;fill:#81c9f318!important;r:17}
#explorer .map-node-point.preview-match .map-original-node-icon {filter:drop-shadow(0 0 4px #67c9ff)}
#explorer .map-node-point.preview-selected .map-hit {stroke:#fff!important;fill:#ffffff20!important}
.farm-explorer-dialog {max-height:88vh;overflow:auto}
.farm-explorer-dialog .map-reward-table {margin-top:12px}
.farm-explorer-dialog h4 {font-size:14px}
.farm-explorer-dialog .map-reward-table li {font-size:12px}
.farm-explorer-dialog .map-reward-table li small {display:block;font-size:10px}
.farm-explorer-dialog .map-reward-table summary {cursor:pointer;color:var(--blue)}
#explorer .popular-item small {word-break:keep-all}
#explorer .preview-match text {paint-order:stroke;stroke:#06111b;stroke-width:1px;stroke-linejoin:round}
@keyframes farm-search-arrival {0%,100%{stroke-opacity:1}50%{stroke-opacity:.3}}
@media(prefers-reduced-motion:reduce) {
 #explorer .map-solar-location.preview-match .map-solar-focus-ring {animation:none}
}
@media(max-width:800px) {
 #explorer .search-panel {display:contents}
 #explorer .search-top {order:-1;background:var(--surface);position:relative;z-index:2;border-bottom:1px solid var(--line);padding-top:13px;padding-bottom:10px}
 #explorer .search-top label {font-size:14px;margin-bottom:8px}
 #explorer .search-help {font-size:9px;margin-top:5px}
 #explorer .map-column {order:0}
 #explorer #panel-body {order:1;border-top:1px solid var(--line)}
 #explorer .map-svg-scroll, #explorer #map-svg {height:245px!important}
}
#explorer .path-switch {display:flex;margin-bottom:8px;gap:0}
#explorer .path-switch button {flex:1;padding:7px 9px;font-size:12px;background:transparent;color:var(--muted)}
#explorer .path-switch button[aria-pressed=true] {background:#81c9f322;border-color:var(--blue);color:var(--text);box-shadow:inset 0 -2px var(--blue)}
#explorer .path-summary {font-size:11px;color:var(--muted);line-height:1.8}
#explorer .path-rules {font-size:10px;color:var(--muted);margin:5px 0 16px}
#explorer .path-rules summary {cursor:pointer;color:var(--blue)}
#explorer .path-rules p {margin-top:7px}
#explorer .path-rules a {display:inline-block;margin-top:7px}
#explorer .acquisition-grid {display:flex;flex-wrap:wrap;gap:5px}
#explorer .acquisition-grid button {font-size:11px;padding:5px 8px;background:transparent;color:var(--muted)}
#explorer .acquisition-grid button[aria-pressed=true] {color:var(--gold);border-color:var(--gold);background:#e8cc8412}
#explorer .purpose-grid {display:grid;grid-template-columns:repeat(3,1fr);gap:5px}
#explorer .purpose-grid button {font-size:11px;padding:6px 3px;background:transparent;color:var(--muted)}
#explorer .purpose-grid button[aria-pressed=true] {color:var(--blue);border-color:var(--blue);background:#81c9f312}
#explorer .sort-row {display:flex;align-items:center;gap:8px;margin-top:13px;color:var(--muted);font-size:11px}
#explorer .sort-row select {min-width:0;flex:1;padding:5px 7px;background:var(--button);color:var(--text);border:1px solid var(--line);font-size:11px}
#explorer .comparison-note {font-size:10px;color:var(--muted);line-height:1.8;margin-top:6px}
#explorer .place-card {padding:0!important;cursor:default}
#explorer .place-head {align-items:flex-start}
#explorer .acquisition-badge {font-size:9px;color:var(--blue);border:1px solid #81c9f366;padding:1px 5px;white-space:nowrap}
#explorer .acquisition-badge.guaranteed {color:#93d8b9;border-color:#93d8b966}
#explorer .level-pair {display:grid;grid-template-columns:1fr 1fr;gap:6px;font-size:10px;margin:8px 0 11px;color:var(--muted)}
#explorer .level-pair>span {display:flex;justify-content:space-between;align-items:center;border:1px solid var(--line);padding:3px 6px}
#explorer .level-pair .active {color:var(--blue);background:#81c9f30b;border-color:#81c9f34d}
#explorer .level-pair b {font:11px Geist,monospace}
#explorer .reward-metric {display:block;color:var(--blue);font-size:12px;line-height:1.8}
#explorer .reward-metric.guaranteed {color:#93d8b9}
#explorer .reward-unit {display:block;font-size:10px;color:var(--muted);line-height:1.8;margin:3px 0 9px}
#explorer .place-desc {display:block;font-size:11px}
#explorer .community-source {display:block;padding:5px 13px 9px;font-size:10px;color:var(--gold);text-decoration:none}
#explorer .community-source:hover {text-decoration:underline}
#starmap #map-node-tooltip {max-height:85vh!important;overflow:auto!important;overscroll-behavior:contain}
#starmap #map-node-tooltip .map-tip-levels[data-preview-path=normal]>div:first-child, #starmap #map-node-tooltip .map-tip-levels[data-preview-path=steel]>div:last-child {background:#81c9f316;outline:1px solid #81c9f380}
@media(min-width:1101px) {
 #starmap .explorer {grid-template-columns:minmax(0,1fr) 410px}
}
@media(min-width:1700px) {
 #starmap .explorer {grid-template-columns:minmax(0,1fr) 430px}
}
@media(max-width:800px) {
 #explorer .acquisition-grid button, #explorer .purpose-grid button {min-height:38px}
}
#starmap #map-node-tooltip .preview-node-title {font-size:20px;font-weight:700;padding:8px 0 4px}
#starmap .preview-target-reward {display:grid;gap:3px;margin:8px 0;padding:8px 10px;border-left:2px solid #81c9f3;background:#81c9f316}
#starmap .preview-target-reward b {color:#b0e4ff}
#starmap .preview-target-reward small {font-size:11px}
.farm-explorer-dialog .node-detail-image {margin:12px 0 16px}
.farm-explorer-dialog .node-detail-image img {display:block;width:100%;aspect-ratio:16/7;object-fit:cover;border:1px solid var(--line)}
.farm-explorer-dialog .node-detail-image figcaption {margin-top:4px;color:var(--muted);font-size:11px}
#starmap .explorer {align-items:start;min-height:0}
#starmap .explorer .map-column {min-height:0}
#starmap #mobile-map-switch {display:none}
#explorer .farm-result-summary {color:var(--muted);margin:0 0 10px}
#explorer #panel-body>.acquisition-grid {margin-bottom:14px}
#explorer .place-content {padding:12px}
#explorer .place-content .level-pair {margin:5px 0 6px}
#explorer .place-content .reward-metric {font-size:14px}
#explorer .place-content .reward-unit {margin-bottom:5px;font-size:11px}
#explorer .place-content .community-source {display:inline-block;padding:5px 0 0;font-size:11px}
#explorer .place-actions {display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
#explorer .place-actions button {min-height:36px;padding:4px 9px;font-size:12px}
#explorer .place-actions [data-place] {color:var(--blue);border-color:var(--blue)}
#explorer #more-farm-options .purpose-grid {margin-top:8px}
#starmap #map-node-tooltip {max-width:min(340px,calc(100vw - 24px))!important}
#starmap #map-node-tooltip .map-tip-mission-rewards {font-size:11px}
@media(max-width:800px) {
 #starmap .explorer>* {width:100%}
 #starmap .explorer.has-farm-item #mobile-map-switch:not([hidden]) {display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:9px}
 #starmap #mobile-map-switch button {min-height:40px}
 #starmap #mobile-map-switch button[aria-pressed=true] {border-color:var(--blue);color:var(--blue);background:var(--button)}
 #starmap .explorer.has-farm-item[data-mobile-view=list] .map-column, #starmap .explorer.has-farm-item[data-mobile-view=map] #panel-body {display:none}
 #explorer .place-actions button {min-height:44px}
}
#explorer .all-farm-results {margin:0 0 10px;padding:5px 9px;color:var(--blue);font-size:12px}
#explorer button {border:1px solid var(--line);background-color:var(--button);color:var(--text);cursor:pointer}
#explorer button:focus-visible, .farm-explorer-dialog button:focus-visible {outline:2px solid var(--blue);outline-offset:2px}
#explorer :is(.popular-item,.place-actions button,.path-switch button,.purpose-grid button,.acquisition-grid button,#mobile-map-switch button):hover {border-color:var(--blue)}
#explorer .map-canvas-shell {min-width:0}
#explorer .route-strip {color:#e1e9ef;--muted:#a6b8c4}
#explorer .query-box input {color:var(--text)}
#explorer .query-box button[hidden], #explorer #suggestions[hidden] {display:none}
#explorer .search-top {z-index:2}
#explorer #suggestions {max-height:min(24rem,55vh);overflow:auto}
#explorer #suggestions button {text-align:left}
#explorer #suggestions button[aria-selected=true] {border-color:var(--blue);background:color-mix(in srgb,var(--blue) 18%,var(--button))}
#explorer .place-actions [data-place],#explorer .all-farm-results {color:var(--blue);border-color:var(--blue)}
#explorer .map-svg-scroll {overflow-x:auto}
#explorer .map-canvas-toolbar {background:#111b21;color:#e1e9ef}
#explorer .map-canvas-toolbar button {background:#1b2a35;color:#e1e9ef}
#explorer .map-legend,#explorer #map-scene-scope {color:#a6b8c4}
#starmap .map-manual-navigation {margin-block:12px}
#starmap .map-manual-navigation > summary {cursor:pointer}
#starmap .map-manual-navigation .map-detail {margin-block:12px}
#starmap .map-node-tooltip .preview-target-reward b {color:#b0e4ff}
.farm-explorer-dialog {width:min(740px,calc(100vw - 24px));max-height:88dvh;overflow:auto;box-sizing:border-box}
.farm-explorer-dialog [method=dialog] {display:flex;justify-content:flex-end}
.farm-explorer-dialog .dialog-close {background:var(--button);border:1px solid var(--line);color:var(--text);width:44px;height:44px}
@media(max-width:800px) {
 #explorer .map-svg-scroll {height:auto!important}
 #explorer #map-svg {min-width:520px!important;height:auto!important;aspect-ratio:16/9}
 .farm-explorer-dialog {padding:16px}
}
:root[data-theme=light] #explorer {
 --blue:#205f88;
 --blue-rgb:32,95,136;
 --gold:#73540f;
}
:root[data-theme=light] #explorer .acquisition-badge.guaranteed,
:root[data-theme=light] #explorer .reward-metric.guaranteed {color:#196745}
#explorer .map-column {--blue:#81c9f3;--blue-rgb:129,201,243}
#explorer .search-panel {color:var(--text)}
#explorer :is(h2,h3,p) {margin-top:0}
#explorer .path {flex-wrap:wrap}
#explorer .place-content {overflow-wrap:anywhere}
#explorer .farm-reward-rates {list-style:none;margin:6px 0;padding:0;color:var(--blue);font-size:13px}
#explorer .farm-reward-rates.guaranteed {color:var(--green)}
#explorer .farm-reward-rates li {display:flex;justify-content:space-between;gap:10px}
#explorer .farm-reward-rates b {white-space:nowrap;font-variant-numeric:tabular-nums}
#explorer .farm-more-results {width:100%;min-height:44px;margin-bottom:12px}
