.set-video-camera { display: grid; gap: 12px; padding-bottom: 12px; }
.set-video-camera-frame { position: relative; overflow: hidden; min-height: 160px; border-radius: var(--radius-l); background: #10131b; }
.set-video-camera-preview { display: block; width: 100%; height: min(35dvh, 380px); min-height: 160px; object-fit: contain; background: #10131b; }
.set-video-camera-time { position: absolute; top: 12px; left: 12px; padding: 5px 10px; border-radius: var(--radius-m); background: rgba(0, 0, 0, .66); color: var(--paper); font-variant-numeric: tabular-nums; }
.set-video-camera[data-phase="recording"] .set-video-camera-time::before { content: ''; display: inline-block; width: 8px; height: 8px; margin-right: 8px; border-radius: 50%; background: #ef5757; }
.set-video-camera-quality { margin: 0; color: var(--muted, #606671); font-size: var(--text-13); }
.set-video-camera-device-label { display: grid; gap: 6px; font-size: var(--text-14); }
.set-video-camera-device-label[hidden], .set-video-camera-time[hidden] { display: none; }
.set-video-camera-device { width: 100%; min-height: 44px; padding: 8px 12px; border: 1px solid var(--border, var(--line)); border-radius: var(--radius-m); background: var(--paper); color: inherit; font: inherit; font-size: var(--text-16); }
.set-video-camera-actions { display: grid; gap: 10px; }
.set-video-camera-actions button { min-height: 48px; }
.set-video-camera .set-video-status { margin: 0; }
@media (max-height: 600px) and (orientation: landscape) {
  .set-video-camera-preview { height: 42dvh; }
}