mirror of
https://github.com/SoPat712/videospeed.git
synced 2026-04-21 04:42:35 -04:00
181 lines
3.3 KiB
CSS
181 lines
3.3 KiB
CSS
* {
|
|
line-height: 1.9em;
|
|
font-family: sans-serif;
|
|
font-size: 13px;
|
|
}
|
|
|
|
#controller:hover #controls,
|
|
#controller:focus-within #controls,
|
|
:host(:hover) #controls {
|
|
display: inline;
|
|
}
|
|
|
|
#controller {
|
|
position: absolute;
|
|
top: 0;
|
|
left: 0;
|
|
transform: translate(0, 0);
|
|
pointer-events: auto;
|
|
|
|
background: black;
|
|
color: white;
|
|
|
|
border-radius: 5px;
|
|
padding: 5px;
|
|
margin: 0;
|
|
|
|
cursor: default;
|
|
/* Stay above the local video surface without overtaking page-level dialogs. */
|
|
z-index: 1;
|
|
transition: top 160ms ease, left 160ms ease, transform 160ms ease,
|
|
opacity 160ms ease;
|
|
}
|
|
|
|
#controller:hover {
|
|
opacity: 0.7;
|
|
}
|
|
|
|
#controller:hover > .draggable {
|
|
margin-right: 0.8em;
|
|
}
|
|
|
|
/* For center positions, override transform to expand from left edge instead of center */
|
|
#controller[data-location="top-center"],
|
|
#controller[data-location="bottom-center"] {
|
|
transform: translate(0, 0) !important;
|
|
left: calc(50% - 30px) !important;
|
|
}
|
|
|
|
#controller[data-location="bottom-center"] {
|
|
transform: translate(0, -100%) !important;
|
|
}
|
|
|
|
#controls {
|
|
display: none;
|
|
}
|
|
|
|
/* Standalone flash indicator next to speed text — hidden by default,
|
|
briefly shown when nudge is toggled via N key or click */
|
|
#nudge-flash-indicator {
|
|
display: none;
|
|
vertical-align: middle;
|
|
align-items: center;
|
|
justify-content: center;
|
|
margin-left: 0.3em;
|
|
padding: 3px 6px;
|
|
border-radius: 5px;
|
|
font-size: 14px;
|
|
line-height: 14px;
|
|
font-weight: bold;
|
|
font-family: "Lucida Console", Monaco, monospace;
|
|
box-sizing: border-box;
|
|
}
|
|
|
|
#nudge-flash-indicator.visible {
|
|
display: inline-flex;
|
|
}
|
|
|
|
/* Hide flash indicator when hovering — the one in #controls is visible instead */
|
|
#controller:hover #nudge-flash-indicator {
|
|
display: none;
|
|
}
|
|
|
|
#nudge-flash-indicator[data-enabled="true"] {
|
|
color: #fff;
|
|
background: #4b9135;
|
|
border: 1px solid #6ec754;
|
|
}
|
|
|
|
#nudge-flash-indicator[data-enabled="false"] {
|
|
color: #fff;
|
|
background: #943e3e;
|
|
border: 1px solid #c06060;
|
|
}
|
|
|
|
#nudge-indicator {
|
|
display: inline-flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
padding: 3px 6px;
|
|
border-radius: 5px;
|
|
font-size: 14px;
|
|
line-height: 14px;
|
|
font-weight: bold;
|
|
font-family: "Lucida Console", Monaco, monospace;
|
|
box-sizing: border-box;
|
|
cursor: pointer;
|
|
margin-bottom: 2px;
|
|
}
|
|
|
|
#nudge-indicator[data-enabled="true"] {
|
|
color: #fff;
|
|
background: #4b9135;
|
|
border: 1px solid #6ec754;
|
|
}
|
|
|
|
#nudge-indicator[data-enabled="false"] {
|
|
color: #fff;
|
|
background: #943e3e;
|
|
border: 1px solid #c06060;
|
|
}
|
|
|
|
#nudge-indicator[data-supported="false"] {
|
|
opacity: 0.6;
|
|
}
|
|
|
|
#controller.dragging {
|
|
cursor: -webkit-grabbing;
|
|
cursor: -moz-grabbing;
|
|
opacity: 0.7;
|
|
transition: none;
|
|
}
|
|
|
|
#controller.dragging #controls {
|
|
display: inline;
|
|
}
|
|
|
|
.draggable {
|
|
cursor: -webkit-grab;
|
|
cursor: -moz-grab;
|
|
}
|
|
|
|
.draggable:active {
|
|
cursor: -webkit-grabbing;
|
|
cursor: -moz-grabbing;
|
|
}
|
|
|
|
button {
|
|
cursor: pointer;
|
|
color: black;
|
|
background: white;
|
|
font-weight: bold;
|
|
border-radius: 5px;
|
|
padding: 3px 6px 3px 6px;
|
|
font-size: 14px;
|
|
line-height: 14px;
|
|
border: 1px solid white;
|
|
font-family: "Lucida Console", Monaco, monospace;
|
|
margin-bottom: 2px;
|
|
}
|
|
|
|
button:focus {
|
|
outline: 0;
|
|
}
|
|
|
|
button:hover {
|
|
opacity: 1;
|
|
}
|
|
|
|
button:active {
|
|
background: #ccc;
|
|
}
|
|
|
|
button.rw {
|
|
opacity: 0.65;
|
|
}
|
|
|
|
button.hideButton {
|
|
opacity: 0.65;
|
|
margin-right: 2px;
|
|
}
|