/* Line 16017 (edit-bay-eb08-camera-r1): camera direction per generated shot, on the Google path. Colours only from ns-tokens.css
   (dark by default, light under prefers-color-scheme: light); 375 px first. Every level sees each shot's camera and the quote;
   body[data-level] reveals the shot cards' frames and presets (advanced) and the inspector (expert). */
.ebc { display: grid; gap: 8px; margin: 8px 0 12px; min-width: 0; }
.ebc h3 { margin: 8px 0 0; }
.ebc-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.ebc-shots { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: minmax(0, 1fr); align-items: start; gap: 8px; }
.ebc-shot { display: grid; gap: 8px; padding: 10px; border: 1px solid var(--ns-border); border-radius: var(--ns-radius); background: var(--ns-card); min-width: 0; }
.ebc-shot__head { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 6px; }
.ebc-badge { font-size: 12px; padding: 2px 10px; border-radius: 12px; border: 1px solid var(--ns-border-strong); color: var(--ns-text-2); }
.ebc-badge.is-gen { border-color: var(--ns-gold); color: var(--ns-text); }
.ebc-now { margin: 0; font-size: 14px; color: var(--ns-text-2); }
.ebc-frames { gap: 8px; }
.ebc-frame { flex: 1 1 0; margin: 0; min-width: 0; }
.ebc-frame video { display: block; width: 100%; aspect-ratio: 16 / 9; object-fit: cover; background: var(--ns-bg-deep); border-radius: calc(var(--ns-radius) / 2); }
.ebc-frame figcaption { font-size: 12px; color: var(--ns-text-2); }
.ebc-presets { flex-wrap: wrap; align-items: center; gap: 8px; }
.ebc select, .ebc input[type="number"], .ebc input[type="text"] { min-height: 40px; padding: 0 10px; border: 1px solid var(--ns-border-strong); border-radius: 10px; background: var(--ns-surface); color: var(--ns-text); font: inherit; min-width: 0; }
.ebc-speed { display: inline-flex; border: 1px solid var(--ns-border-strong); border-radius: 22px; overflow: hidden; }
.ebc-speed button { min-height: 40px; padding: 0 12px; border: 0; background: transparent; color: var(--ns-text); cursor: pointer; font: inherit; }
.ebc-speed button[aria-checked="true"] { background: var(--ns-gold); color: var(--ns-on-accent); font-weight: 500; }
.ebc-shot__actions { display: flex; flex-wrap: wrap; gap: 8px; }
.ebc-adv, .ebc-exp-inline { display: none; }
.eb[data-level="advanced"] .ebc-adv, .eb[data-level="expert"] .ebc-adv { display: flex; }
.eb[data-level="expert"] .ebc-exp-inline { display: inline-flex; align-items: center; }
.eb[data-level="expert"] .ebc-inspector:not([hidden]) { display: grid; }
.ebc-inspector, .ebc-quote { gap: 10px; padding: 12px; border: 1px solid var(--ns-border-strong); border-radius: var(--ns-radius); background: var(--ns-surface); min-width: 0; }
.ebc-quote:not([hidden]) { display: grid; }
.ebc-fields { display: grid; grid-template-columns: minmax(0, 1fr); gap: 8px; }
.ebc-fields label, .ebc-path > label, .ebc-describe { display: grid; gap: 4px; font-size: 13px; color: var(--ns-text-2); }
.ebc-fields input[type="range"] { accent-color: var(--ns-gold); min-height: 32px; }
.ebc-fields output { color: var(--ns-text); font: 13px ui-monospace, 'Roboto Mono', monospace; }
.ebc-path { display: grid; gap: 8px; }
.ebc-path[hidden], .ebc [data-ebc-when][hidden] { display: none; }
.ebc-poses input { width: 72px; min-height: 36px; }
.ebc-facts { display: grid; grid-template-columns: minmax(0, 1fr); gap: 2px 12px; margin: 0; font-size: 13px; }
.ebc-facts dt { color: var(--ns-text-2); font-weight: 500; }
.ebc-facts dd { margin: 0 0 6px; overflow-wrap: anywhere; }
.ebc-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.ebc-receipt { margin: 0; min-height: 1.2em; font-size: 14px; }

@media (min-width: 768px) {
    .ebc-shots { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .ebc-fields { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .ebc-facts { grid-template-columns: 160px minmax(0, 1fr); }
    .ebc-facts dd { margin: 0; }
}
@media (min-width: 1200px) {
    .ebc-shots { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
