/* El agujero negro — añadidos sobre model-lite.css */
.side-card {
  position: fixed; right: 14px; left: auto; bottom: 96px; z-index: 9;
  width: min(360px, calc(100vw - 28px)); max-height: 58vh; overflow-y: auto;
  padding: 14px 16px; background: var(--space-panel);
  border: 1px solid var(--line); border-radius: 14px;
  box-shadow: var(--shadow); backdrop-filter: blur(8px); scrollbar-width: thin;
}
.side-card h2 { margin: 0 0 2px; font-size: 1.15rem; }
.card-sub { margin: 0 0 8px; font-size: 0.7rem; letter-spacing: 0.2em; text-transform: uppercase; color: var(--ion-teal); }
.what-list { margin: 0 0 10px; padding-left: 18px; font-size: 0.86rem; line-height: 1.55; }
.what-list li { margin-bottom: 9px; }
.what-list strong { color: var(--sol-amber); font-weight: 600; }
.card-src { font-size: 0.72rem; color: var(--starlight-faint); line-height: 1.5; border-top: 1px solid var(--line); padding-top: 9px; }
.slider-row input[type="range"] { width: 150px; }


/* Etiquetas ancladas a las escalas físicas (posicionadas por JS). */
#bh-labels { position: fixed; inset: 0; pointer-events: none; z-index: 5; }
.bh-tag {
  position: absolute; transform: translate(-50%, -50%);
  font-size: 11.5px; letter-spacing: 0.04em; white-space: nowrap;
  color: var(--starlight); background: rgba(6, 9, 18, 0.62);
  border: 1px solid var(--line); border-radius: 999px; padding: 2px 9px;
}
#lbl-beam { transform: translate(0, -50%); color: var(--sol-amber); border-color: rgba(255,179,71,0.45); }
@media (max-width: 760px) { .bh-tag { font-size: 10px; } #lbl-isco, #lbl-disk { display: none; } }
