.mini-viewer{ cursor: grab; position: absolute; right: 10; top: 10; opacity: 0.1; transition: all 0.4s; color: white; } .videoBox { transform-origin: top left; width: 100%; height: 100%; position: relative; .videoBox-viewer { display:flex; flex-direction: column; height: 100%; border-radius: inherit; opacity: 0.99; // hack! overcomes some kind of Chrome weirdness where buttons (e.g., snapshot) disappear at some point as the video is resized larger } .inkingCanvas-paths-markers { opacity : 0.4; // we shouldn't have to do this, but since chrome crawls to a halt with z-index unset in videoBox-content, this is a workaround } .collectionStackedTimeline { background: beige; } .videoBox-stackPanel { z-index: -1; width: 100%; position: relative; } .videoBox-annotationLayer { position: relative; transform-origin: left top; top: 0; width: 100%; pointer-events: none; mix-blend-mode: multiply; // bcz: makes text fuzzy! overflow: hidden; } } .videoBox-content-YouTube, .videoBox-content-YouTube-fullScreen, .videoBox-content, .videoBox-content-interactive, .videoBox-cont-fullScreen { width: 100%; z-index: -1; // 0; // logically this should be 0 (or unset) which would give us transparent brush strokes over videos. However, this makes Chrome crawl to a halt position: absolute; } .videoBox-content, .videoBox-content-interactive, .videoBox-content-fullScreen { height: Auto; } .videoBox-content-YouTube, .videoBox-content-YouTube-fullScreen { height: 100%; } // .videoBox-content-interactive, .videoBox-content-fullScreen, .videoBox-content-YouTube-fullScreen { // pointer-events: all; // } .videoBox-ui { position: absolute; flex-direction: row; right: 5px; top: 5px; display: none; background-color: rgba(0, 0, 0, 0.6); } .videoBox-time, .videoBox-snapshot, .videoBox-timelineButton, .videoBox-play, .videoBox-full { color : white; position: relative; transform-origin: left top; pointer-events:all; padding-right: 5px; cursor: pointer; &:hover { background-color: gray; } } .videoBox:hover { .videoBox-ui { display: flex; } }