UNPKG

@uploadcare/file-uploader

Version:

Building blocks for Uploadcare products integration

184 lines (157 loc) 3.57 kB
uc-camera-source { position: relative; display: flex; flex-direction: column; width: 100%; height: 100%; max-height: 100%; overflow: hidden; background-color: var(--uc-background); border-radius: var(--uc-radius); } [uc-modal] > dialog:has(uc-camera-source[active]) { width: 100%; height: 100%; } uc-camera-source:not(.uc-initialized) .uc-controls { display: none; } uc-camera-source video { display: block; width: 100%; max-height: 100%; object-fit: contain; object-position: center center; background-color: var(--uc-muted); border-radius: var(--uc-radius); } uc-camera-source .uc-toolbar { position: absolute; bottom: 0; display: flex; justify-content: space-between; width: 100%; padding: var(--uc-padding); background-color: var(--uc-background); } uc-camera-source .uc-content { display: flex; flex: 1; justify-content: center; width: 100%; height: 100%; padding: var(--uc-padding); padding-top: 0; overflow: hidden; } uc-camera-source .uc-message-box { display: flex; flex-direction: column; grid-gap: 40px; align-items: center; justify-content: center; padding: 40px 40px 0; color: var(--uc-foreground); } uc-camera-source .uc-message-box button { color: var(--uc-primary-foreground); background-color: var(--uc-primary); } uc-camera-source .uc-shot-btn { width: 58px; height: 58px; color: var(--uc-background); background-color: var(--uc-primary-light); border-radius: 50%; opacity: 0.85; transition: bottom var(--uc-transition), opacity var(--uc-transition), transform var(--uc-transition); } uc-camera-source .uc-shot-btn:hover { transform: scale(1.05); opacity: 1; } uc-camera-source .uc-shot-btn:active { transform: scale(1); opacity: 1; } uc-camera-source .uc-shot-btn[disabled] { bottom: -80px; } uc-camera-source .uc-shot-btn uc-icon svg { width: 20px; height: 20px; } uc-camera-source .uc-controls { position: relative; display: flex; align-items: center; flex-wrap: wrap; justify-content: space-between; padding: 0 var(--uc-padding) var(--uc-padding); min-height: 74px; } uc-camera-source .uc-switcher { display: flex; gap: calc(var(--uc-padding) / 2); } uc-camera-source .uc-switch.uc-active { background-color: var(--uc-secondary); } uc-camera-source .uc-camera-actions { display: flex; justify-content: center; align-items: center; gap: 5px; } uc-camera-source .uc-stop-record { background-color: var(--uc-destructive-foreground-light); opacity: 1; } :where(uc-camera-source:is(.uc-recording)) .uc-recording-timer uc-icon { display: none; } :where(uc-camera-source:is(.uc-recording)) .uc-recording-timer { pointer-events: none; } uc-camera-source .uc-recording-timer { z-index: 1; position: relative; overflow: hidden; } :where(uc-camera-source) .uc-recording-timer uc-icon { width: 10px; height: 10px; margin-right: 10px; } uc-camera-source .uc-recording-timer .uc-line { position: absolute; content: ''; bottom: 0; left: 0; right: 0; height: 2px; background-color: var(--uc-foreground-light); transform: scaleX(0); transform-origin: left; transition: transform var(--uc-transition); } uc-camera-source .uc-btn-microphone { z-index: 1; } uc-camera-source .uc-select { display: flex; } uc-camera-source .uc-audio-select { width: 98px; } uc-camera-source .uc-audio-select select { width: 100%; } uc-camera-source .uc-camera-action { position: absolute; inset: 0 var(--uc-padding) var(--uc-padding); margin: 0 auto; }