mirror of
https://github.com/mediacms-io/mediacms.git
synced 2026-03-10 15:07:23 -04:00
* Update .gitignore * feat: Improve Visual Distinction Between Trim and Chapters Editors * fix: Convert timeline header styles to CSS classes Moved inline styles for timeline headers in chapters and video editors to dedicated CSS classes for better maintainability and consistency. * Bump version to 7.3.0 Update the VERSION in cms/version.py to 7.3.0 for the new release. * build assets * Update segment color schemes in video and chapters editor. * build assets * build assets * fix: Prevent Safari from resetting segments after drag operations Prevent Safari from resetting segments when loadedmetadata fires multiple times and fix stale state issues in click handlers by using refs instead of closure variables. * build assets * Bump version to 7.3.0-beta.3 Update the VERSION string in cms/version.py to reflect the new pre-release version 7.3.0-beta.3.
237 lines
5.8 KiB
CSS
237 lines
5.8 KiB
CSS
#video-editor-trim-root {
|
|
/* Tooltip styles - only on desktop where hover is available */
|
|
@media (hover: hover) and (pointer: fine) {
|
|
[data-tooltip] {
|
|
position: relative;
|
|
}
|
|
|
|
[data-tooltip]:before {
|
|
content: attr(data-tooltip);
|
|
position: absolute;
|
|
bottom: 100%;
|
|
left: 50%;
|
|
transform: translateX(-50%);
|
|
margin-bottom: 5px;
|
|
background-color: rgba(0, 0, 0, 0.8);
|
|
color: white;
|
|
text-align: center;
|
|
padding: 5px 10px;
|
|
border-radius: 3px;
|
|
font-size: 12px;
|
|
white-space: nowrap;
|
|
opacity: 0;
|
|
visibility: hidden;
|
|
transition:
|
|
opacity 0.2s,
|
|
visibility 0.2s;
|
|
z-index: 1000;
|
|
pointer-events: none;
|
|
}
|
|
|
|
[data-tooltip]:after {
|
|
content: "";
|
|
position: absolute;
|
|
bottom: 100%;
|
|
left: 50%;
|
|
transform: translateX(-50%);
|
|
border-width: 5px;
|
|
border-style: solid;
|
|
border-color: rgba(0, 0, 0, 0.8) transparent transparent transparent;
|
|
opacity: 0;
|
|
visibility: hidden;
|
|
transition:
|
|
opacity 0.2s,
|
|
visibility 0.2s;
|
|
pointer-events: none;
|
|
}
|
|
|
|
[data-tooltip]:hover:before,
|
|
[data-tooltip]:hover:after {
|
|
opacity: 1;
|
|
visibility: visible;
|
|
}
|
|
}
|
|
|
|
/* Hide button tooltips on touch devices */
|
|
@media (pointer: coarse) {
|
|
[data-tooltip]:before,
|
|
[data-tooltip]:after {
|
|
display: none !important;
|
|
content: none !important;
|
|
opacity: 0 !important;
|
|
visibility: hidden !important;
|
|
pointer-events: none !important;
|
|
}
|
|
}
|
|
.clip-segments-container {
|
|
margin-top: 1rem;
|
|
background-color: white;
|
|
border-radius: 0.5rem;
|
|
padding: 1rem;
|
|
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
|
|
}
|
|
|
|
.clip-segments-title {
|
|
font-size: 0.875rem;
|
|
font-weight: 500;
|
|
color: var(--foreground, #333);
|
|
margin-bottom: 0.75rem;
|
|
}
|
|
|
|
.segment-item {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
padding: 0.5rem;
|
|
border: 1px solid #e5e7eb;
|
|
border-radius: 0.25rem;
|
|
margin-bottom: 0.5rem;
|
|
transition: box-shadow 0.2s ease;
|
|
|
|
&:hover {
|
|
box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
|
|
}
|
|
}
|
|
|
|
.segment-content {
|
|
display: flex;
|
|
align-items: center;
|
|
}
|
|
|
|
.segment-thumbnail {
|
|
display: none;
|
|
width: 4rem;
|
|
height: 2.25rem;
|
|
background-size: cover;
|
|
background-position: center;
|
|
border-radius: 0.25rem;
|
|
margin-right: 0.75rem;
|
|
box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.3);
|
|
}
|
|
|
|
.segment-info {
|
|
display: flex;
|
|
flex-direction: column;
|
|
}
|
|
|
|
.segment-title {
|
|
font-weight: 500;
|
|
font-size: 0.875rem;
|
|
color: black;
|
|
}
|
|
|
|
.segment-time {
|
|
font-size: 0.75rem;
|
|
color: black;
|
|
}
|
|
|
|
.segment-duration {
|
|
font-size: 0.75rem;
|
|
margin-top: 0.25rem;
|
|
display: inline-block;
|
|
background-color: #f3f4f6;
|
|
padding: 0;
|
|
border-radius: 0.25rem;
|
|
color: black;
|
|
}
|
|
|
|
.segment-actions {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 0.5rem;
|
|
}
|
|
|
|
.delete-button {
|
|
padding: 0.375rem;
|
|
color: #4b5563;
|
|
background-color: #e5e7eb;
|
|
border-radius: 9999px;
|
|
border: none;
|
|
cursor: pointer;
|
|
transition:
|
|
background-color 0.2s,
|
|
color 0.2s;
|
|
min-width: auto;
|
|
|
|
&:hover {
|
|
color: black;
|
|
background-color: #d1d5db;
|
|
}
|
|
|
|
svg {
|
|
height: 1rem;
|
|
width: 1rem;
|
|
}
|
|
}
|
|
|
|
.empty-message {
|
|
padding: 1rem;
|
|
text-align: center;
|
|
color: rgba(51, 51, 51, 0.7);
|
|
}
|
|
|
|
/* Generate 20 shades of #2563eb (rgb(37, 99, 235)) */
|
|
/* Base color: #2563eb = rgb(37, 99, 235) */
|
|
/* Creating variations from lighter to darker */
|
|
.segment-color-1 {
|
|
background-color: rgba(147, 179, 247, 0.2);
|
|
}
|
|
.segment-color-2 {
|
|
background-color: rgba(129, 161, 243, 0.2);
|
|
}
|
|
.segment-color-3 {
|
|
background-color: rgba(111, 143, 239, 0.2);
|
|
}
|
|
.segment-color-4 {
|
|
background-color: rgba(93, 125, 237, 0.2);
|
|
}
|
|
.segment-color-5 {
|
|
background-color: rgba(75, 107, 235, 0.2);
|
|
}
|
|
.segment-color-6 {
|
|
background-color: rgba(65, 99, 235, 0.2);
|
|
}
|
|
.segment-color-7 {
|
|
background-color: rgba(55, 91, 235, 0.2);
|
|
}
|
|
.segment-color-8 {
|
|
background-color: rgba(45, 83, 235, 0.2);
|
|
}
|
|
.segment-color-9 {
|
|
background-color: rgba(37, 99, 235, 0.2);
|
|
}
|
|
.segment-color-10 {
|
|
background-color: rgba(33, 89, 215, 0.2);
|
|
}
|
|
.segment-color-11 {
|
|
background-color: rgba(29, 79, 195, 0.2);
|
|
}
|
|
.segment-color-12 {
|
|
background-color: rgba(25, 69, 175, 0.2);
|
|
}
|
|
.segment-color-13 {
|
|
background-color: rgba(21, 59, 155, 0.2);
|
|
}
|
|
.segment-color-14 {
|
|
background-color: rgba(17, 49, 135, 0.2);
|
|
}
|
|
.segment-color-15 {
|
|
background-color: rgba(15, 43, 119, 0.2);
|
|
}
|
|
.segment-color-16 {
|
|
background-color: rgba(13, 37, 103, 0.2);
|
|
}
|
|
.segment-color-17 {
|
|
background-color: rgba(11, 31, 87, 0.2);
|
|
}
|
|
.segment-color-18 {
|
|
background-color: rgba(9, 25, 71, 0.2);
|
|
}
|
|
.segment-color-19 {
|
|
background-color: rgba(7, 19, 55, 0.2);
|
|
}
|
|
.segment-color-20 {
|
|
background-color: rgba(5, 13, 39, 0.2);
|
|
}
|
|
}
|