/* Additions to the Nebius Build Berlin deck stylesheet (../nebius-berlin-0426/style.css). */

.slide::before { content: "positronic.ro"; }

/* The run video */
.reel-stage { align-items: center; text-align: center; gap: var(--gap-sm); }
.reel-stage video {
  /* Sized to the video's own 16:9, so the card holds the frame with no letterbox strips. */
  width: min(100%, calc(72vh * 16 / 9));
  aspect-ratio: 16 / 9;
  height: auto;
  object-fit: cover;
  border-radius: 12px;
  border: 1px solid var(--border);
  background: #000;
}
.reel-stage .sub { color: var(--fg-3); font-size: 1.15rem; }

/* The DROID report's charts */
.chart-stage { gap: var(--gap-sm); }
.chart-stage h2 { font-size: clamp(2rem, 3.4vw, 3rem); }
.chart-stage .sub { color: var(--fg-3); font-size: 1.05rem; max-width: 80ch; line-height: 1.45; }
.viz {
  font-family: system-ui, -apple-system, "Segoe UI", sans-serif;
  color: #ffffff;
}
.viz .ramp, .viz .stack-panel {
  background: #0d0d0d;
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 1rem 1.25rem 0.75rem;
}
.viz .ramp svg { max-height: 52vh; }
.viz .legend { display: flex; gap: 18px; font-size: 14px; color: #c3c2b7; margin: 14px 0 4px; }
.viz .legend span { display: flex; align-items: center; gap: 7px; }
.viz .swatch { display: inline-block; width: 10px; height: 10px; border-radius: 2px; }
.viz.stacks { display: grid; grid-template-columns: 1fr 1fr; gap: var(--gap-sm); }
.stack-panel h3 { font-size: 1.1rem; font-weight: 600; margin: 0 0 0.5rem; font-family: var(--font-display); }
.stack-panel h3 span { color: var(--fg-3); font-weight: 400; font-size: 0.95rem; margin-left: 0.5rem; }
/* Half-width panels scale the report's 1000-unit viewBox down, so its ticks are raised to stay legible. */
.stack-panel .ch-tick { font-size: 16px; }
.stack-panel .ch-mean-label { font-size: 20px; }

/* Hover tips on both charts (the report's .hover-tip, listing every series at the point). */
.viz .ramp-hover { position: relative; }
.viz .hover-tip { top: 10px; font-size: 13px; padding: 9px 12px; z-index: 5; }
.viz .hover-tip .tip-head { display: block; margin-bottom: 4px; font-size: 13px; }
.viz .hover-tip .tip-row { display: grid; grid-template-columns: 10px auto auto; gap: 8px; align-items: center; justify-content: start; }
.viz .hover-tip .tip-row em { font-style: normal; color: #c3c2b7; min-width: 9em; }
.viz .hover-tip .tip-row strong { font-weight: 500; font-variant-numeric: tabular-nums; white-space: pre; }
.viz .hover-tip .tip-row.is-hit em, .viz .hover-tip .tip-row.is-hit strong { color: #ffffff; font-weight: 700; }
.viz .hover-tip i { width: 9px; height: 9px; }
.viz .hover-tip .tip-mean { margin-top: 4px; display: block; }
