@layer exploration {
  .taxon-search {max-width:43rem;margin:6px 0 9px}
  .taxon-search label {font-weight:650}
  .taxon-search input {min-width:9rem}
  .taxon-matches {max-width:43rem;margin-bottom:8px}
  .taxon-matches h2 {font-size:1.4rem}
  .taxon-matches small {display:block}
  .graph-tools button:disabled {opacity:.45;cursor:default}
  .graph-space {display:flex;flex-direction:column;min-height:0}
  .space-controls {padding:7px 12px;align-items:center}
  .space-controls label {display:flex;align-items:center;gap:6px;max-width:100%;font-size:.8rem;color:var(--canopy-text)}
  .space-controls select {min-width:0;max-width:min(260px,100%);font-size:.8rem}
  .graph-space-stage {position:relative;height:clamp(375px,56vh,620px);min-height:0;overflow:hidden;background:#0b2822}
  .graph-space-stage canvas {position:absolute;inset:0;display:block;width:100%;height:100%;touch-action:none;cursor:grab}
  .graph-space-stage canvas:active {cursor:grabbing}
  .space-legend {padding:6px 12px}
  .space-legend span {padding:2px 8px;border-left:3px solid var(--edge-color);font-size:.78rem}
  .space-labels {position:absolute;inset:0;pointer-events:none}
  .space-label {position:absolute;left:0;top:0;max-width:146px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
    color:#effaf2;background:#0a201ce8;border:1px solid #558375;border-radius:5px;padding:0 5px;font-size:11px}
  .space-label.is-selected {color:#19271a;background:#e8efa8;border-color:#e8efa8;font-weight:750}
  .graph-panel:fullscreen .graph-space,.graph-panel.graph-overlay .graph-space {flex:1}
  .graph-panel:fullscreen .graph-space-stage,.graph-panel.graph-overlay .graph-space-stage {height:auto;flex:1}
}
