#moon3dOverlay, #mars3dOverlay { position:absolute; inset:0; width:100%; height:100%; z-index:2; pointer-events:none; }
#moonComplexLabels, #marsComplexLabels { position:absolute; inset:0; z-index:3; pointer-events:none; overflow:hidden; }
.planet-complex-label { position:absolute; top:0; left:0; padding:5px 8px; color:#f5e7c7; background:rgba(3,10,18,.87); border:1px solid #d0b37866; border-radius:5px; font:600 12px/1.35 system-ui,sans-serif; white-space:nowrap; box-shadow:0 2px 10px #0009; }
body:is(.moon-active,.mars-active) #globe { touch-action:none; }
body:is(.moon-active,.mars-active) #lunarBaseMarker,
body:is(.moon-active,.mars-active) #zoomLevel,
body:is(.moon-active,.mars-active) .map-legend,
body:is(.moon-active,.mars-active) .traffic-note,
body:is(.moon-active,.mars-active) #bodyTitle,
body:is(.moon-active,.mars-active) #coordinate { display:none!important; }
body:is(.moon-active,.mars-active) .topbar { opacity:1; transform:none; pointer-events:auto; }
body:is(.moon-active,.mars-active) .topbar .hint { display:none; }
body:is(.moon-active,.mars-active) .world-nav { opacity:1; pointer-events:auto; transform:none; }
body:is(.moon-active,.mars-active) .globe-controls { opacity:1; pointer-events:auto; }
body:is(.moon-active,.mars-active) .cosmic-sky i { animation-play-state:paused; }
.moon-control-note { display:none; }
body:is(.moon-active,.mars-active) .moon-control-note { display:block; position:absolute; z-index:4; left:50%; bottom:62px; transform:translateX(-50%); max-width:calc(100% - 28px); margin:0; padding:6px 10px; border-radius:6px; background:#030a12c9; color:#d1d8e1; font:400 14px/1.4 system-ui,sans-serif; text-align:center; pointer-events:none; }
#companyDirectory .moon-directory-group { border-bottom:1px solid #333; }
#companyDirectory .moon-directory-group summary { display:flex; align-items:center; gap:12px; min-height:54px; padding:12px 6px; color:#e8d0a1; font:600 16px/1.4 system-ui,sans-serif; cursor:pointer; }
#companyDirectory .moon-directory-group summary::before { content:'＋'; flex-shrink:0; }
#companyDirectory .moon-directory-group[open] summary::before { content:'−'; }
#companyDirectory .moon-directory-group summary b { margin-left:auto; color:#aaa; font-size:14px; font-weight:400; }
#companyDirectory .moon-directory-group .directory-row { min-height:48px; padding:12px 16px; margin:4px 0 6px; }
#companyDirectory .moon-directory-group summary:focus-visible { outline:2px solid white; }
@media(max-width:700px) and (orientation:portrait) {
  body:is(.moon-active,.mars-active) .world-nav { transform:translateX(-50%); }
  body:is(.moon-active,.mars-active) .globe-controls { transform:translateX(-50%); }
  body:is(.moon-active,.mars-active) .moon-control-note { bottom:54px; width:max-content; max-width:calc(100% - 28px); font-size:13px; }
  .planet-complex-label { padding:3px 5px; font-size:12px; }
}

#companyDirectory .mars-directory-group { border-bottom:1px solid #7b514b66; }
#companyDirectory .mars-directory-group summary { position:relative; display:flex; flex-direction:column; gap:5px; padding:20px 28px 20px 6px; color:#f3d3c0; cursor:pointer; list-style:none; }
#companyDirectory .mars-directory-group summary::-webkit-details-marker { display:none; }
#companyDirectory .mars-directory-group summary::after { content:'＋'; position:absolute; right:4px; top:22px; font-size:20px; }
#companyDirectory .mars-directory-group[open] summary::after { content:'−'; }
#companyDirectory .mars-directory-group summary strong { font:600 18px/1.3 system-ui,sans-serif; }
#companyDirectory .mars-directory-group summary small { font:400 14px/1.5 system-ui,sans-serif; color:#c6bdb6; }
#companyDirectory .mars-directory-group summary:focus-visible { outline:2px solid #ffdfc8; outline-offset:2px; }
.mars-project-copy { padding:0 6px 22px; color:#e0dcda; font:400 15px/1.65 system-ui,sans-serif; }
.mars-project-copy img { display:block; width:100%; height:auto; object-fit:contain; border-radius:6px; margin:0 0 18px; }
.mars-project-copy p { margin:12px 0 0; }
.mars-concept-note { display:block; color:#c99775; font:500 11px/1.5 system-ui,sans-serif; letter-spacing:.10em; }
body.mars-active .planet-complex-label { color:#ffe1cc; border-color:#cd936f88; }
@media(max-width:700px) and (orientation:portrait) {
  body.mars-active .planet-complex-label { font-size:12px; padding:4px 5px; }
}
