@hyperframes/studio 0.8.104 → 0.8.105
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/{hyperframes-player-DAoaajuM.js → hyperframes-player-tnfCiVdR.js} +1 -1
- package/dist/assets/{index-BDK4rTMb.js → index-Ca6LZlVb.js} +1 -1
- package/dist/assets/index-Cre9X4RS.css +1 -0
- package/dist/assets/{index-De2aO4XM.js → index-DEDhPmPD.js} +205 -205
- package/dist/assets/{index-WV9LroAD.js → index-zpe332hb.js} +1 -1
- package/dist/{chunk-62DDWOSH.js → chunk-EEXSYY5F.js} +19 -18
- package/dist/chunk-EEXSYY5F.js.map +1 -0
- package/dist/{chunk-6GAO75IU.js → chunk-NCUBAVGK.js} +10 -8
- package/dist/chunk-NCUBAVGK.js.map +1 -0
- package/dist/{chunk-HIGHVWYD.js → chunk-QADHJFDF.js} +2 -2
- package/dist/index.css +6 -1
- package/dist/index.css.map +1 -1
- package/dist/index.html +2 -2
- package/dist/index.js +614 -638
- package/dist/index.js.map +1 -1
- package/dist/player.js +2 -2
- package/dist/styles/tailwind-preset.js.map +1 -1
- package/dist/styles.css +1 -1
- package/dist/ui.js +2 -2
- package/package.json +8 -8
- package/src/captions/components/CaptionAnimationPanel.tsx +2 -2
- package/src/captions/components/CaptionPropertyPanel.tsx +2 -2
- package/src/captions/components/CaptionTimeline.tsx +3 -3
- package/src/components/AskAgentModal.tsx +1 -1
- package/src/components/LintModal.tsx +35 -35
- package/src/components/StudioErrorBoundary.tsx +1 -1
- package/src/components/StudioHeader.dom.test.tsx +4 -4
- package/src/components/StudioHeader.tsx +2 -1
- package/src/components/StudioToast.tsx +7 -16
- package/src/components/TimelineToolPicker.tsx +1 -1
- package/src/components/TimelineToolbar.tsx +11 -11
- package/src/components/dock/Dock.tsx +1 -1
- package/src/components/dock/dock.css +9 -1
- package/src/components/editor/AnimationCard.tsx +5 -5
- package/src/components/editor/AnimationCardParts.tsx +1 -1
- package/src/components/editor/BlockParamsPanel.tsx +3 -3
- package/src/components/editor/BorderRadiusEditor.tsx +8 -15
- package/src/components/editor/CanvasContextMenu.tsx +1 -1
- package/src/components/editor/ComputedTweenNotice.tsx +1 -1
- package/src/components/editor/DomEditRotateHandle.tsx +1 -1
- package/src/components/editor/EaseCurveSection.tsx +14 -19
- package/src/components/editor/EaseModeControls.tsx +2 -2
- package/src/components/editor/EaseParamFields.tsx +8 -8
- package/src/components/editor/FileTree.tsx +1 -1
- package/src/components/editor/FileTreeIcons.tsx +47 -26
- package/src/components/editor/FileTreeNodes.tsx +11 -8
- package/src/components/editor/GestureRecordControl.tsx +3 -3
- package/src/components/editor/GsapAddAnimationControl.tsx +1 -1
- package/src/components/editor/GsapAnimationSection.tsx +2 -2
- package/src/components/editor/InlineTextToolbar.tsx +4 -4
- package/src/components/editor/InspectorHeaderActions.tsx +1 -1
- package/src/components/editor/KeyframeDiamond.tsx +6 -4
- package/src/components/editor/KeyframeNavigation.tsx +4 -4
- package/src/components/editor/LayersPanel.tsx +3 -3
- package/src/components/editor/PromotableControl.tsx +2 -2
- package/src/components/editor/PropertyPanelEmptyState.tsx +4 -4
- package/src/components/editor/PropertyPanelFlatFooter.tsx +2 -2
- package/src/components/editor/PropertyPanelFlatHeader.test.tsx +1 -1
- package/src/components/editor/PropertyPanelFlatHeader.tsx +2 -2
- package/src/components/editor/SnapToolbar.tsx +5 -5
- package/src/components/editor/TimelineFxPopover.tsx +4 -4
- package/src/components/editor/Transform3DCube.tsx +1 -1
- package/src/components/editor/anchoredResizeReleaseShift.test.ts +0 -84
- package/src/components/editor/easeCurveSvg.tsx +1 -1
- package/src/components/editor/manualEditsDom.ts +3 -3
- package/src/components/editor/manualEditsDomPatches.test.ts +2 -86
- package/src/components/editor/manualEditsDomPatches.ts +0 -30
- package/src/components/editor/manualEditsSnapshot.ts +1 -0
- package/src/components/editor/persistSeam.integration.test.ts +0 -18
- package/src/components/editor/plainTranslate.ts +34 -3
- package/src/components/editor/propertyPanelColorCurveGraph.tsx +2 -2
- package/src/components/editor/propertyPanelColorGradingControls.tsx +1 -1
- package/src/components/editor/propertyPanelColorGradingSection.tsx +8 -8
- package/src/components/editor/propertyPanelColorGradingSlider.tsx +1 -1
- package/src/components/editor/propertyPanelColorSecondary.tsx +4 -4
- package/src/components/editor/propertyPanelFill.tsx +6 -6
- package/src/components/editor/propertyPanelFlatColorGradingAccessory.tsx +3 -3
- package/src/components/editor/propertyPanelFlatColorGradingSection.test.tsx +1 -1
- package/src/components/editor/propertyPanelFlatColorGradingSection.tsx +6 -9
- package/src/components/editor/propertyPanelFlatEffectsSection.tsx +4 -4
- package/src/components/editor/propertyPanelFlatMediaSection.tsx +2 -2
- package/src/components/editor/propertyPanelFlatMotionSection.tsx +2 -2
- package/src/components/editor/propertyPanelFlatOverlaysSection.tsx +2 -2
- package/src/components/editor/propertyPanelFlatPrimitives.test.tsx +4 -3
- package/src/components/editor/propertyPanelFlatPrimitives.tsx +1 -1
- package/src/components/editor/propertyPanelFlatSliderReadout.tsx +1 -1
- package/src/components/editor/propertyPanelFont.tsx +2 -2
- package/src/components/editor/propertyPanelFxCarveModule.tsx +1 -1
- package/src/components/editor/propertyPanelFxControls.tsx +2 -2
- package/src/components/editor/propertyPanelFxEqModule.tsx +2 -2
- package/src/components/editor/propertyPanelFxNodeRow.tsx +1 -1
- package/src/components/editor/propertyPanelFxPresetRun.tsx +1 -1
- package/src/components/editor/propertyPanelMediaSection.tsx +1 -1
- package/src/components/editor/propertyPanelPrimitives.tsx +1 -1
- package/src/components/editor/propertyPanelSections.tsx +2 -2
- package/src/components/editor/propertyPanelValueTier.test.ts +1 -1
- package/src/components/editor/propertyPanelValueTier.ts +1 -1
- package/src/components/feedback/StudioFeedbackCard.tsx +11 -23
- package/src/components/nle/AssetPreviewOverlay.tsx +1 -1
- package/src/components/nle/AudioMeterStrip.tsx +2 -2
- package/src/components/nle/NLEPreview.test.ts +8 -4
- package/src/components/nle/PreviewOverlays.tsx +1 -1
- package/src/components/nle/PreviewPane.tsx +3 -3
- package/src/components/nle/PreviewPoster.tsx +29 -1
- package/src/components/nle/PreviewZoomOverlay.tsx +1 -1
- package/src/components/panels/SlideshowPanel.tsx +4 -4
- package/src/components/panels/SlideshowSubPanels.tsx +19 -21
- package/src/components/panels/VariablesBindElement.tsx +1 -1
- package/src/components/panels/VariablesDeclarationForm.tsx +1 -1
- package/src/components/panels/VariablesPanel.tsx +4 -6
- package/src/components/panels/VariablesRowAction.tsx +1 -1
- package/src/components/renders/FfmpegRequiredNotice.tsx +4 -4
- package/src/components/renders/RenderQueue.tsx +2 -2
- package/src/components/renders/RenderQueueItem.tsx +3 -3
- package/src/components/sidebar/AssetCard.tsx +3 -3
- package/src/components/sidebar/AssetContextMenu.tsx +7 -7
- package/src/components/sidebar/AssetsTab.tsx +6 -6
- package/src/components/sidebar/AudioRow.tsx +5 -3
- package/src/components/sidebar/BlocksTab.tsx +6 -6
- package/src/components/sidebar/CompositionsTab.drag.test.tsx +3 -69
- package/src/components/sidebar/CompositionsTab.rootBadge.test.tsx +4 -50
- package/src/components/sidebar/CompositionsTab.thumbnails.test.tsx +256 -0
- package/src/components/sidebar/CompositionsTab.tsx +65 -12
- package/src/components/sidebar/PromptPreviewModal.tsx +3 -3
- package/src/components/sidebar/SidebarLintButton.tsx +3 -3
- package/src/components/sidebar/compositionsTabTestUtils.tsx +39 -0
- package/src/components/timelineToolbarStyles.ts +3 -3
- package/src/components/ui/Button.tsx +4 -4
- package/src/components/ui/HyperframesLogo.tsx +19 -18
- package/src/components/ui/Input.tsx +1 -1
- package/src/components/ui/Menu.tsx +4 -2
- package/src/hooks/elementOffsetStager.ts +8 -7
- package/src/hooks/useClipboard.source.test.ts +42 -4
- package/src/hooks/useClipboard.ts +13 -3
- package/src/hooks/useDomEditCommits.ts +0 -3
- package/src/hooks/useDomGeometryCommit.test.tsx +4 -1
- package/src/hooks/useDomGeometryCommit.ts +0 -1
- package/src/hooks/useDomGeometryCommits.test.tsx +177 -32
- package/src/hooks/useDomGeometryCommits.ts +4 -49
- package/src/player/components/ClipContextMenu.tsx +1 -1
- package/src/player/components/CompositionThumbnail.tsx +23 -11
- package/src/player/components/EditModal.tsx +6 -6
- package/src/player/components/KeyframeDiamondContextMenu.tsx +2 -2
- package/src/player/components/PlayerControls.tsx +3 -3
- package/src/player/components/ShortcutsPanel.tsx +8 -20
- package/src/player/components/TimelineCanvas.tsx +1 -1
- package/src/player/components/TimelineClip.tsx +2 -2
- package/src/player/components/TimelineEmptyState.tsx +2 -2
- package/src/player/components/TimelineLanes.tsx +0 -1
- package/src/player/components/TrackClipCount.tsx +1 -1
- package/src/player/components/VolumeControl.tsx +1 -1
- package/src/player/components/timelineClipChildren.tsx +1 -1
- package/src/player/components/timelineMotionStyles.test.ts +6 -22
- package/src/player/components/trackHeaderLabelRows.tsx +16 -16
- package/src/player/lib/thumbnailScheduler.ts +4 -5
- package/src/player/lib/timelineViewportBudgets.test.ts +1 -1
- package/src/player/lib/timelineViewportBudgets.ts +1 -1
- package/src/styles/hex-baseline.json +7 -19
- package/src/styles/studio.css +0 -9
- package/src/styles/tailwind-preset.shared.js +2 -1
- package/src/styles/theme.css +204 -147
- package/src/styles/theme.test.ts +13 -9
- package/src/utils/blockCategories.ts +41 -9
- package/src/utils/clipboardPayload.ts +2 -0
- package/dist/assets/index-CQN3M56N.css +0 -1
- package/dist/chunk-62DDWOSH.js.map +0 -1
- package/dist/chunk-6GAO75IU.js.map +0 -1
- package/src/hooks/gsapTargetCache.ts +0 -62
- /package/dist/{chunk-HIGHVWYD.js.map → chunk-QADHJFDF.js.map} +0 -0
|
@@ -23,6 +23,8 @@ export interface ThumbnailRequest {
|
|
|
23
23
|
priority: ThumbnailPriority;
|
|
24
24
|
/** Rich work is paused while the timeline is fast-scrolling. */
|
|
25
25
|
rich?: boolean;
|
|
26
|
+
/** For work whose result nobody reads: it is dropped, not cached, once its last lease ends. */
|
|
27
|
+
discardWhenReleased?: boolean;
|
|
26
28
|
load: (signal: AbortSignal) => Promise<ThumbnailLoadedResult>;
|
|
27
29
|
}
|
|
28
30
|
|
|
@@ -214,10 +216,7 @@ export class ThumbnailScheduler {
|
|
|
214
216
|
if (!scrolling) this.pump();
|
|
215
217
|
}
|
|
216
218
|
|
|
217
|
-
/**
|
|
218
|
-
* Hold server-rendered composition thumbnails while the preview loads a new document: both
|
|
219
|
-
* are served by the same Studio server, and the preview is what the person is waiting for.
|
|
220
|
-
*/
|
|
219
|
+
/** Holds composition renders while the preview loads: same server, and the preview is what the person awaits. */
|
|
221
220
|
setPreviewReloading(reloading: boolean): void {
|
|
222
221
|
if (this.previewReloading === reloading) return;
|
|
223
222
|
this.previewReloading = reloading;
|
|
@@ -362,7 +361,7 @@ export class ThumbnailScheduler {
|
|
|
362
361
|
const byteBudget = isWaveform
|
|
363
362
|
? this.budgets.waveformCacheBytes
|
|
364
363
|
: this.budgets.thumbnailCacheBytes;
|
|
365
|
-
entry.cached = entry.weight <= byteBudget;
|
|
364
|
+
entry.cached = !entry.request.discardWhenReleased && entry.weight <= byteBudget;
|
|
366
365
|
if (!entry.cached) return;
|
|
367
366
|
if (isWaveform) this.waveformCacheBytes += entry.weight;
|
|
368
367
|
else this.cacheBytes += entry.weight;
|
|
@@ -23,7 +23,7 @@ describe("timeline viewport budgets", () => {
|
|
|
23
23
|
constrainedLongTaskLimitMs: 300,
|
|
24
24
|
posterCoverageRatio: 0.9,
|
|
25
25
|
supportedFixtureFallbackRatio: 0.02,
|
|
26
|
-
scrollSamplesPerRun:
|
|
26
|
+
scrollSamplesPerRun: 63,
|
|
27
27
|
warmupRuns: 3,
|
|
28
28
|
measuredRuns: 5,
|
|
29
29
|
requiredPassingRuns: 4,
|
|
@@ -99,7 +99,7 @@ export const TIMELINE_VIEWPORT_BUDGETS: Readonly<TimelineViewportBudgets> = Obje
|
|
|
99
99
|
richPreviewP95Ms: 750,
|
|
100
100
|
constrainedRichPreviewP95Ms: 1_200,
|
|
101
101
|
supportedFixtureFallbackRatio: 0.02,
|
|
102
|
-
scrollSamplesPerRun:
|
|
102
|
+
scrollSamplesPerRun: 63,
|
|
103
103
|
warmupRuns: 3,
|
|
104
104
|
measuredRuns: 5,
|
|
105
105
|
requiredPassingRuns: 4,
|
|
@@ -1,41 +1,32 @@
|
|
|
1
1
|
{
|
|
2
|
-
"total":
|
|
2
|
+
"total": 226,
|
|
3
3
|
"files": {
|
|
4
4
|
"packages/studio/src/captions/components/CaptionOverlay.tsx": 5,
|
|
5
5
|
"packages/studio/src/captions/components/CaptionTimeline.tsx": 11,
|
|
6
6
|
"packages/studio/src/captions/generator.ts": 1,
|
|
7
7
|
"packages/studio/src/captions/parser.ts": 1,
|
|
8
8
|
"packages/studio/src/captions/types.ts": 4,
|
|
9
|
-
"packages/studio/src/components/
|
|
10
|
-
"packages/studio/src/components/TimelineToolbar.tsx": 2,
|
|
9
|
+
"packages/studio/src/components/TimelineToolbar.tsx": 1,
|
|
11
10
|
"packages/studio/src/components/editor/ArcPathControls.tsx": 1,
|
|
12
|
-
"packages/studio/src/components/editor/BorderRadiusEditor.tsx":
|
|
11
|
+
"packages/studio/src/components/editor/BorderRadiusEditor.tsx": 2,
|
|
13
12
|
"packages/studio/src/components/editor/DomEditCropHandles.tsx": 1,
|
|
14
|
-
"packages/studio/src/components/editor/
|
|
15
|
-
"packages/studio/src/components/editor/FileTree.tsx": 2,
|
|
16
|
-
"packages/studio/src/components/editor/FileTreeIcons.tsx": 17,
|
|
17
|
-
"packages/studio/src/components/editor/FileTreeNodes.tsx": 4,
|
|
13
|
+
"packages/studio/src/components/editor/FileTreeIcons.tsx": 7,
|
|
18
14
|
"packages/studio/src/components/editor/GestureTrailOverlay.tsx": 1,
|
|
19
15
|
"packages/studio/src/components/editor/GridOverlay.tsx": 4,
|
|
20
|
-
"packages/studio/src/components/editor/InlineTextToolbar.tsx":
|
|
21
|
-
"packages/studio/src/components/editor/KeyframeDiamond.tsx": 2,
|
|
22
|
-
"packages/studio/src/components/editor/KeyframeNavigation.tsx": 2,
|
|
16
|
+
"packages/studio/src/components/editor/InlineTextToolbar.tsx": 1,
|
|
23
17
|
"packages/studio/src/components/editor/MotionPathNode.tsx": 5,
|
|
24
18
|
"packages/studio/src/components/editor/SnapGuideOverlay.tsx": 3,
|
|
25
|
-
"packages/studio/src/components/editor/
|
|
26
|
-
"packages/studio/src/components/editor/Transform3DCube.tsx": 6,
|
|
19
|
+
"packages/studio/src/components/editor/Transform3DCube.tsx": 5,
|
|
27
20
|
"packages/studio/src/components/editor/colorValue.ts": 3,
|
|
28
21
|
"packages/studio/src/components/editor/domEditingElement.ts": 1,
|
|
29
|
-
"packages/studio/src/components/editor/easeCurveSvg.tsx": 2,
|
|
30
22
|
"packages/studio/src/components/editor/gradientValue.ts": 6,
|
|
31
23
|
"packages/studio/src/components/editor/panelTokens.ts": 4,
|
|
32
24
|
"packages/studio/src/components/editor/propertyPanelColor.tsx": 7,
|
|
33
|
-
"packages/studio/src/components/editor/propertyPanelColorCurveGraph.tsx":
|
|
25
|
+
"packages/studio/src/components/editor/propertyPanelColorCurveGraph.tsx": 16,
|
|
34
26
|
"packages/studio/src/components/editor/propertyPanelColorScopes.tsx": 8,
|
|
35
27
|
"packages/studio/src/components/editor/propertyPanelColorWheels.tsx": 8,
|
|
36
28
|
"packages/studio/src/components/editor/propertyPanelFlatEffectsSection.tsx": 5,
|
|
37
29
|
"packages/studio/src/components/editor/propertyPanelFlatStyleSections.tsx": 2,
|
|
38
|
-
"packages/studio/src/components/editor/propertyPanelFxCarveModule.tsx": 1,
|
|
39
30
|
"packages/studio/src/components/editor/propertyPanelFxFamily.ts": 1,
|
|
40
31
|
"packages/studio/src/components/editor/propertyPanelFxPresetStyle.ts": 24,
|
|
41
32
|
"packages/studio/src/components/editor/propertyPanelHelpers.ts": 4,
|
|
@@ -43,7 +34,6 @@
|
|
|
43
34
|
"packages/studio/src/components/editor/propertyPanelSections.tsx": 1,
|
|
44
35
|
"packages/studio/src/components/editor/propertyPanelStyleSections.tsx": 3,
|
|
45
36
|
"packages/studio/src/components/editor/transform3dProjection.ts": 3,
|
|
46
|
-
"packages/studio/src/components/feedback/StudioFeedbackCard.tsx": 10,
|
|
47
37
|
"packages/studio/src/components/panels/VariablesBindElement.tsx": 2,
|
|
48
38
|
"packages/studio/src/components/panels/VariablesValueControls.tsx": 2,
|
|
49
39
|
"packages/studio/src/components/sidebar/AudioRow.tsx": 2,
|
|
@@ -54,9 +44,7 @@
|
|
|
54
44
|
"packages/studio/src/player/components/CompositionThumbnail.tsx": 2,
|
|
55
45
|
"packages/studio/src/player/components/Player.tsx": 2,
|
|
56
46
|
"packages/studio/src/player/components/PlayerControls.tsx": 1,
|
|
57
|
-
"packages/studio/src/player/components/ShortcutsPanel.tsx": 7,
|
|
58
47
|
"packages/studio/src/player/components/SpeedMenu.tsx": 2,
|
|
59
|
-
"packages/studio/src/player/components/trackHeaderLabelRows.tsx": 6,
|
|
60
48
|
"packages/studio/src/styles/components.css": 48,
|
|
61
49
|
"packages/studio/src/telemetry/client.ts": 1,
|
|
62
50
|
"packages/studio/src/webmcp/webmcpTestUtils.ts": 1
|
package/src/styles/studio.css
CHANGED
|
@@ -16,15 +16,6 @@
|
|
|
16
16
|
}
|
|
17
17
|
}
|
|
18
18
|
|
|
19
|
-
/*
|
|
20
|
-
* Studio is a dark-only UI — pin the user-agent color scheme to dark so that
|
|
21
|
-
* browser-native chrome (scrollbars, form controls, focus rings) picks the
|
|
22
|
-
* matching palette instead of defaulting to light against our #0a0a0a body.
|
|
23
|
-
*/
|
|
24
|
-
:root {
|
|
25
|
-
color-scheme: dark;
|
|
26
|
-
}
|
|
27
|
-
|
|
28
19
|
body {
|
|
29
20
|
margin: 0;
|
|
30
21
|
padding: 0;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
/** @deprecated Superseded by `src/styles/theme.css` (published as
|
|
2
2
|
* `@hyperframes/studio/theme.css`); kept one more major for Tailwind v3
|
|
3
|
-
* consumers
|
|
3
|
+
* consumers, frozen at the colours before Graphite (theme.css is light-dark() and colour-mix
|
|
4
|
+
* now, which v3 cannot read). */
|
|
4
5
|
const studioPreset = {
|
|
5
6
|
theme: {
|
|
6
7
|
extend: {
|
package/src/styles/theme.css
CHANGED
|
@@ -5,72 +5,110 @@
|
|
|
5
5
|
@theme static {
|
|
6
6
|
/* ---------------------------------------------------------------- colour */
|
|
7
7
|
|
|
8
|
-
/*
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
--color-
|
|
15
|
-
--color-
|
|
16
|
-
--color-input:
|
|
17
|
-
--color-
|
|
18
|
-
|
|
19
|
-
/*
|
|
20
|
-
--color-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
--color-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
--color-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
--color-
|
|
32
|
-
|
|
33
|
-
|
|
8
|
+
/* Graphite. Each colour is `light-dark(light, dark)`, resolved where it is painted, so the
|
|
9
|
+
* colour-scheme decides: Studio is dark, `data-theme="paper"` makes it light, and the player
|
|
10
|
+
* keeps a dark scheme in both. Text clears 4.5:1 and icons 3:1 on every surface below. */
|
|
11
|
+
|
|
12
|
+
/* Surfaces: the app shell first, menus and popovers last. */
|
|
13
|
+
--color-bg-0: light-dark(oklch(0.955 0.005 70), oklch(0.235 0.007 70));
|
|
14
|
+
--color-bg-1: var(--color-bg-0);
|
|
15
|
+
--color-bg-2: var(--color-surface);
|
|
16
|
+
--color-input: light-dark(oklch(1 0 70), oklch(0.25 0.007 70));
|
|
17
|
+
--color-surface: light-dark(oklch(0.987 0.005 70), oklch(0.265 0.007 70));
|
|
18
|
+
--color-surface-alt: var(--color-surface);
|
|
19
|
+
/* Menus, popovers and tooltips. */
|
|
20
|
+
--color-raised: light-dark(oklch(1 0 70), oklch(0.295 0.007 70));
|
|
21
|
+
|
|
22
|
+
/* States, washes of the brightest text so they work on any surface. `on` is a toggle that is on. */
|
|
23
|
+
--color-hover: light-dark(
|
|
24
|
+
color-mix(in oklab, var(--color-text-0) 5.5%, transparent),
|
|
25
|
+
color-mix(in oklab, var(--color-text-0) 7.5%, transparent)
|
|
26
|
+
);
|
|
27
|
+
--color-press: light-dark(
|
|
28
|
+
color-mix(in oklab, var(--color-text-0) 9.5%, transparent),
|
|
29
|
+
color-mix(in oklab, var(--color-text-0) 13%, transparent)
|
|
30
|
+
);
|
|
31
|
+
--color-on: light-dark(
|
|
32
|
+
color-mix(in oklab, var(--color-accent) 13%, transparent),
|
|
33
|
+
color-mix(in oklab, var(--color-accent) 16%, transparent)
|
|
34
|
+
);
|
|
35
|
+
--color-on-hover: light-dark(
|
|
36
|
+
color-mix(in oklab, var(--color-accent) 22%, transparent),
|
|
37
|
+
color-mix(in oklab, var(--color-accent) 27%, transparent)
|
|
38
|
+
);
|
|
39
|
+
|
|
40
|
+
/* Separators. */
|
|
41
|
+
--color-border: light-dark(
|
|
42
|
+
color-mix(in oklab, var(--color-text-0) 8%, transparent),
|
|
43
|
+
color-mix(in oklab, var(--color-text-0) 7.5%, transparent)
|
|
44
|
+
);
|
|
45
|
+
--color-hairline: var(--color-border);
|
|
46
|
+
--color-border-strong: light-dark(
|
|
47
|
+
color-mix(in oklab, var(--color-text-0) 15%, transparent),
|
|
48
|
+
color-mix(in oklab, var(--color-text-0) 14%, transparent)
|
|
49
|
+
);
|
|
50
|
+
--color-border-input: var(--color-border-strong);
|
|
51
|
+
|
|
52
|
+
/* Text: primary, secondary, muted (4.5:1), and off (3:1, disabled controls only). */
|
|
53
|
+
--color-text-0: light-dark(oklch(0.205 0.003 70), oklch(0.965 0.004 70));
|
|
54
|
+
--color-text-1: var(--color-text-0);
|
|
55
|
+
--color-text-body: var(--color-text-0);
|
|
56
|
+
--color-text-2: light-dark(oklch(0.403 0.003 70), oklch(0.908 0.004 70));
|
|
57
|
+
--color-text-3: var(--color-text-2);
|
|
58
|
+
--color-text-muted: light-dark(oklch(0.503 0.003 70), oklch(0.777 0.004 70));
|
|
59
|
+
--color-text-4: var(--color-text-muted);
|
|
60
|
+
--color-text-5: var(--color-text-muted);
|
|
61
|
+
--color-text-off: light-dark(oklch(0.597 0.003 70), oklch(0.67 0.004 70));
|
|
34
62
|
|
|
35
63
|
/* Roles. Selection and playhead are reserved and differ from the accent so a
|
|
36
|
-
* selected clip, the playhead and an accented control stay tellable apart.
|
|
37
|
-
|
|
38
|
-
--color-
|
|
39
|
-
--color-
|
|
40
|
-
--color-
|
|
41
|
-
--color-
|
|
42
|
-
--color-
|
|
64
|
+
* selected clip, the playhead and an accented control stay tellable apart.
|
|
65
|
+
* `accent-ink` is accent text on a surface; `on-accent` is text on an accent fill. */
|
|
66
|
+
--color-accent: light-dark(oklch(0.536 0.114 164), oklch(0.82 0.159 164));
|
|
67
|
+
--color-accent-hover: light-dark(oklch(0.486 0.103 164), oklch(0.87 0.159 164));
|
|
68
|
+
--color-on-accent: light-dark(oklch(1 0 0), oklch(0.2 0.043 164));
|
|
69
|
+
--color-accent-ink: light-dark(oklch(0.45 0.096 164), oklch(0.827 0.159 164));
|
|
70
|
+
--color-ring: var(--color-accent-ink);
|
|
71
|
+
--color-selection: light-dark(oklch(0.5 0.13 240), #4ba3d2);
|
|
72
|
+
--color-playhead: var(--color-text-0);
|
|
73
|
+
--color-danger: oklch(0.56 0.19 25);
|
|
74
|
+
--color-danger-ink: light-dark(oklch(0.45 0.17 25), oklch(0.791 0.12 25));
|
|
75
|
+
--color-warning-ink: light-dark(oklch(0.5 0.12 70), oklch(82.8% 0.189 84.429));
|
|
76
|
+
--color-on-danger: oklch(1 0 0);
|
|
77
|
+
--color-media: light-dark(oklch(0.5 0.1 215), #00e3ff);
|
|
78
|
+
--color-container: light-dark(oklch(0.55 0.13 70), #f5a623);
|
|
43
79
|
|
|
44
80
|
/* The two stops of the HeyGen brand gradient, worn by the header logo. Fixed brand values
|
|
45
81
|
* rather than roles, so they are not reachable as a background or text colour by mistake. */
|
|
46
82
|
--color-brand-gradient-from: #06e3fa;
|
|
47
83
|
--color-brand-gradient-to: #4fdb5e;
|
|
48
84
|
|
|
49
|
-
/* The timeline's own surfaces
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
--timeline-
|
|
53
|
-
--timeline-
|
|
54
|
-
--timeline-
|
|
55
|
-
--timeline-
|
|
56
|
-
--timeline-
|
|
57
|
-
--timeline-
|
|
58
|
-
--timeline-
|
|
59
|
-
--timeline-text
|
|
60
|
-
--timeline-
|
|
61
|
-
--timeline-tick-
|
|
62
|
-
--timeline-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
85
|
+
/* The timeline's own surfaces and inks, named so a host can theme the timeline alone. */
|
|
86
|
+
--timeline-shell-bg: var(--color-surface);
|
|
87
|
+
--timeline-shell-border: var(--color-border);
|
|
88
|
+
--timeline-ruler-border: color-mix(in oklab, var(--color-text-0) 16%, transparent);
|
|
89
|
+
--timeline-row-bg: light-dark(oklch(0.997 0.002 70), oklch(0.275 0.007 70));
|
|
90
|
+
--timeline-row-border: color-mix(in oklab, var(--color-text-0) 6%, transparent);
|
|
91
|
+
--timeline-gutter-bg: light-dark(oklch(0.967 0.005 70), oklch(0.253 0.007 70));
|
|
92
|
+
--timeline-gutter-border: color-mix(in oklab, var(--color-text-0) 10%, transparent);
|
|
93
|
+
--timeline-text-primary: var(--color-text-0);
|
|
94
|
+
--timeline-text-secondary: var(--color-text-2);
|
|
95
|
+
--timeline-tick-text: var(--color-text-2);
|
|
96
|
+
--timeline-tick-major: color-mix(in oklab, var(--color-text-0) 10%, transparent);
|
|
97
|
+
--timeline-tick-minor: color-mix(in oklab, var(--color-text-0) 6%, transparent);
|
|
98
|
+
--timeline-clip-bg: light-dark(
|
|
99
|
+
color-mix(in oklab, var(--color-text-0) 12%, transparent),
|
|
100
|
+
color-mix(in oklab, var(--color-text-0) 13%, transparent)
|
|
101
|
+
);
|
|
102
|
+
--timeline-clip-label-active: light-dark(#0b3d2c, rgba(232, 255, 247, 0.95));
|
|
66
103
|
--timeline-clip-label-shadow: 0 1px 2px rgba(0, 0, 0, 0.85);
|
|
67
|
-
|
|
68
|
-
--timeline-clip-audio-
|
|
69
|
-
--timeline-clip-audio-
|
|
70
|
-
--timeline-clip-audio-bg-
|
|
104
|
+
/* Audio clips are a solid fill that carries white ink in both themes. */
|
|
105
|
+
--timeline-clip-audio-bg: oklch(0.45 0.12 300);
|
|
106
|
+
--timeline-clip-audio-border: oklch(0.37 0.12 300);
|
|
107
|
+
--timeline-clip-audio-bg-hover: oklch(0.49 0.12 300);
|
|
108
|
+
--timeline-clip-audio-bg-dragging: oklch(0.42 0.12 300 / 0.96);
|
|
71
109
|
--timeline-clip-audio-muted-bg: rgb(72, 74, 78);
|
|
72
|
-
--timeline-audio-link: #a0aaa4;
|
|
73
|
-
--timeline-clip-selection: rgba(255, 255, 255, 0.85);
|
|
110
|
+
--timeline-audio-link: light-dark(#626d66, #a0aaa4);
|
|
111
|
+
--timeline-clip-selection: light-dark(#0f766e, rgba(255, 255, 255, 0.85));
|
|
74
112
|
--timeline-clip-selection-highlight: rgb(255 255 255 / 0.55);
|
|
75
113
|
--timeline-clip-radius: 8px;
|
|
76
114
|
--timeline-clip-audio-radius: 21px;
|
|
@@ -79,7 +117,7 @@
|
|
|
79
117
|
--timeline-clip-chip-bg: rgba(15, 22, 18, 0.73);
|
|
80
118
|
--timeline-clip-chip-audio-bg: rgba(25, 16, 38, 0.7);
|
|
81
119
|
--timeline-clip-chip-text: #ffffff;
|
|
82
|
-
--timeline-shortcut-bg:
|
|
120
|
+
--timeline-shortcut-bg: color-mix(in oklab, var(--color-raised) 94%, transparent);
|
|
83
121
|
/* Composition and text clips draw their frame as it is, like video filmstrips; a host may dim them. */
|
|
84
122
|
--timeline-composition-thumbnail-opacity: 1;
|
|
85
123
|
--timeline-composition-thumbnail-blend: normal;
|
|
@@ -105,58 +143,82 @@
|
|
|
105
143
|
transparent 2px 5px
|
|
106
144
|
);
|
|
107
145
|
--timeline-waveform-label-shadow: 0 1px 3px rgba(0, 0, 0, 0.9);
|
|
108
|
-
--timeline-clip-bg-active:
|
|
109
|
-
--timeline-clip-bg-hover:
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
--timeline-clip-
|
|
114
|
-
--timeline-
|
|
146
|
+
--timeline-clip-bg-active: color-mix(in oklab, var(--color-accent) 20%, transparent);
|
|
147
|
+
--timeline-clip-bg-hover: light-dark(
|
|
148
|
+
color-mix(in oklab, var(--color-text-0) 26%, transparent),
|
|
149
|
+
color-mix(in oklab, var(--color-text-0) 16%, transparent)
|
|
150
|
+
);
|
|
151
|
+
--timeline-clip-bg-dragging: color-mix(in oklab, var(--color-raised) 96%, transparent);
|
|
152
|
+
--timeline-clip-border: light-dark(
|
|
153
|
+
color-mix(in oklab, var(--color-text-0) 40%, transparent),
|
|
154
|
+
color-mix(in oklab, var(--color-text-0) 30%, transparent)
|
|
155
|
+
);
|
|
156
|
+
--timeline-clip-border-hover: color-mix(in oklab, var(--color-accent) 75%, transparent);
|
|
157
|
+
--timeline-clip-border-active: light-dark(
|
|
158
|
+
color-mix(in oklab, var(--color-accent) 90%, transparent),
|
|
159
|
+
color-mix(in oklab, var(--color-accent) 55%, transparent)
|
|
160
|
+
);
|
|
161
|
+
--timeline-handle: var(--color-text-0);
|
|
115
162
|
/* Audio clip fades: the shaded wedge over the faded gain, and the corner dots. */
|
|
116
163
|
--timeline-fade-shade: rgba(0, 0, 0, 0.38);
|
|
117
164
|
--timeline-fade-dot: #fff;
|
|
118
165
|
--timeline-fade-dot-ring: rgba(0, 0, 0, 0.55);
|
|
119
|
-
--timeline-resize-seam:
|
|
120
|
-
--timeline-resize-active:
|
|
121
|
-
--timeline-track-clip-fill:
|
|
122
|
-
--timeline-track-clip-active:
|
|
123
|
-
--timeline-track-label:
|
|
124
|
-
--timeline-border-strong:
|
|
125
|
-
--timeline-group-member-tint:
|
|
126
|
-
--timeline-overlay-text:
|
|
127
|
-
--timeline-accent:
|
|
128
|
-
--timeline-accent-soft:
|
|
129
|
-
--timeline-accent-faint:
|
|
130
|
-
--timeline-accent-fill:
|
|
131
|
-
--timeline-accent-glow:
|
|
132
|
-
--timeline-accent-border:
|
|
133
|
-
--timeline-accent-rail:
|
|
134
|
-
--timeline-accent-hover:
|
|
135
|
-
--timeline-accent-button-bg:
|
|
136
|
-
--timeline-danger:
|
|
166
|
+
--timeline-resize-seam: color-mix(in oklab, var(--color-text-0) 12%, transparent);
|
|
167
|
+
--timeline-resize-active: color-mix(in oklab, var(--color-text-0) 24%, transparent);
|
|
168
|
+
--timeline-track-clip-fill: color-mix(in oklab, var(--color-text-0) 8%, transparent);
|
|
169
|
+
--timeline-track-clip-active: color-mix(in oklab, var(--color-accent) 20%, transparent);
|
|
170
|
+
--timeline-track-label: var(--color-text-muted);
|
|
171
|
+
--timeline-border-strong: color-mix(in oklab, var(--color-text-0) 20%, transparent);
|
|
172
|
+
--timeline-group-member-tint: color-mix(in oklab, var(--color-text-0) 3.5%, transparent);
|
|
173
|
+
--timeline-overlay-text: var(--color-text-2);
|
|
174
|
+
--timeline-accent: var(--color-accent);
|
|
175
|
+
--timeline-accent-soft: color-mix(in oklab, var(--color-accent) 18%, transparent);
|
|
176
|
+
--timeline-accent-faint: color-mix(in oklab, var(--color-accent) 5.5%, transparent);
|
|
177
|
+
--timeline-accent-fill: color-mix(in oklab, var(--color-accent) 10%, transparent);
|
|
178
|
+
--timeline-accent-glow: color-mix(in oklab, var(--color-accent) 50%, transparent);
|
|
179
|
+
--timeline-accent-border: color-mix(in oklab, var(--color-accent) 70%, transparent);
|
|
180
|
+
--timeline-accent-rail: color-mix(in oklab, var(--color-accent) 35%, transparent);
|
|
181
|
+
--timeline-accent-hover: var(--color-on-hover);
|
|
182
|
+
--timeline-accent-button-bg: var(--color-on);
|
|
183
|
+
--timeline-danger: color-mix(in oklab, var(--color-danger) 70%, transparent);
|
|
137
184
|
--timeline-info-bg: rgba(59, 130, 246, 0.12);
|
|
138
185
|
--timeline-info-border: rgba(59, 130, 246, 0.4);
|
|
139
|
-
--timeline-dialog-bg:
|
|
140
|
-
--timeline-diamond-bg:
|
|
141
|
-
--timeline-diamond-border:
|
|
142
|
-
--timeline-text-solid:
|
|
143
|
-
--timeline-text-faint:
|
|
144
|
-
--timeline-text-dim:
|
|
145
|
-
--timeline-text-soft:
|
|
146
|
-
--timeline-text-bright:
|
|
147
|
-
--timeline-snap-guide:
|
|
148
|
-
--timeline-overlay-bg: rgba(0, 0, 0, 0.8);
|
|
149
|
-
--timeline-overlay-bg-strong: rgba(0, 0, 0, 0.85);
|
|
150
|
-
--timeline-input-bg:
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
186
|
+
--timeline-dialog-bg: var(--color-raised);
|
|
187
|
+
--timeline-diamond-bg: var(--color-raised);
|
|
188
|
+
--timeline-diamond-border: color-mix(in oklab, var(--color-text-0) 14%, transparent);
|
|
189
|
+
--timeline-text-solid: var(--color-text-0);
|
|
190
|
+
--timeline-text-faint: var(--color-text-off);
|
|
191
|
+
--timeline-text-dim: var(--color-text-muted);
|
|
192
|
+
--timeline-text-soft: var(--color-text-2);
|
|
193
|
+
--timeline-text-bright: var(--color-text-2);
|
|
194
|
+
--timeline-snap-guide: color-mix(in oklab, var(--color-text-0) 60%, transparent);
|
|
195
|
+
--timeline-overlay-bg: light-dark(oklch(1 0 70 / 0.9), rgba(0, 0, 0, 0.8));
|
|
196
|
+
--timeline-overlay-bg-strong: light-dark(oklch(1 0 70 / 0.95), rgba(0, 0, 0, 0.85));
|
|
197
|
+
--timeline-input-bg: light-dark(
|
|
198
|
+
color-mix(in oklab, var(--color-text-0) 5%, transparent),
|
|
199
|
+
rgba(0, 0, 0, 0.3)
|
|
200
|
+
);
|
|
201
|
+
--timeline-automation-rail: color-mix(in oklab, var(--color-text-0) 8%, transparent);
|
|
202
|
+
--timeline-automation-point-muted: light-dark(
|
|
203
|
+
color-mix(in oklab, var(--color-text-0) 30%, transparent),
|
|
204
|
+
rgba(0, 0, 0, 0.5)
|
|
205
|
+
);
|
|
206
|
+
--timeline-diamond-muted: var(--color-text-muted);
|
|
154
207
|
--timeline-beat: rgb(34, 197, 94);
|
|
155
|
-
--timeline-clip-shadow-dragging:
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
--timeline-
|
|
208
|
+
--timeline-clip-shadow-dragging: light-dark(
|
|
209
|
+
color-mix(in oklab, var(--color-text-0) 16%, transparent),
|
|
210
|
+
rgba(0, 0, 0, 0.4)
|
|
211
|
+
);
|
|
212
|
+
--timeline-playhead-glow: color-mix(in oklab, var(--color-accent) 14%, transparent);
|
|
213
|
+
--timeline-playhead-shadow: light-dark(
|
|
214
|
+
color-mix(in oklab, var(--color-text-0) 20%, transparent),
|
|
215
|
+
rgba(0, 0, 0, 0.55)
|
|
216
|
+
);
|
|
217
|
+
--timeline-transition-zone: light-dark(
|
|
218
|
+
color-mix(in oklab, var(--color-text-0) 12%, transparent),
|
|
219
|
+
color-mix(in oklab, var(--color-text-0) 20%, transparent)
|
|
220
|
+
);
|
|
221
|
+
--timeline-transition-badge: light-dark(#ffffff, rgba(237, 244, 239, 0.98));
|
|
160
222
|
--timeline-transition-badge-ink: rgba(36, 56, 45, 0.96);
|
|
161
223
|
|
|
162
224
|
/* -------------------------------------------------------------- geometry */
|
|
@@ -197,14 +259,16 @@
|
|
|
197
259
|
|
|
198
260
|
/* ---------------------------------------------------------------- shadow */
|
|
199
261
|
|
|
200
|
-
/* Floating chrome
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
262
|
+
/* Floating chrome: a drop shadow plus a hairline ring that defines the edge. */
|
|
263
|
+
--shadow-menu:
|
|
264
|
+
0 8px 24px light-dark(rgb(0 0 0 / 0.12), rgb(0 0 0 / 0.45)),
|
|
265
|
+
0 0 0 1px light-dark(rgb(0 0 0 / 0.07), rgb(0 0 0 / 0.4));
|
|
266
|
+
--shadow-popover:
|
|
267
|
+
0 16px 40px light-dark(rgb(0 0 0 / 0.14), rgb(0 0 0 / 0.55)),
|
|
268
|
+
0 0 0 1px light-dark(rgb(0 0 0 / 0.07), rgb(0 0 0 / 0.45));
|
|
204
269
|
|
|
205
|
-
/* The primary button
|
|
206
|
-
*
|
|
207
|
-
* ambient one, and an inner top highlight. */
|
|
270
|
+
/* The primary button reads as a raised key rather than a floating panel: a tight
|
|
271
|
+
* contact shadow, a soft ambient one, and an inner top highlight. */
|
|
208
272
|
--shadow-btn-primary:
|
|
209
273
|
0 1px 2px rgb(0 0 0 / 0.6), 0 2px 6px rgb(0 0 0 / 0.35), inset 0 1px 0 rgb(255 255 255 / 0.65);
|
|
210
274
|
|
|
@@ -277,9 +341,9 @@
|
|
|
277
341
|
* strip sits below the card body and the shown tab is a fill in the body colour. */
|
|
278
342
|
--panel-shell-bg: var(--color-bg-1);
|
|
279
343
|
--panel-card-bg: var(--color-surface);
|
|
280
|
-
--panel-card-border:
|
|
344
|
+
--panel-card-border: var(--color-border-strong);
|
|
281
345
|
--panel-strip-bg: var(--color-bg-0);
|
|
282
|
-
--panel-tab-bg-hover:
|
|
346
|
+
--panel-tab-bg-hover: var(--color-hover);
|
|
283
347
|
|
|
284
348
|
/* Names Studio's markup invented that no config ever defined, so the classes
|
|
285
349
|
* compiled to nothing. Aliased to the token that was meant, rather than
|
|
@@ -291,9 +355,9 @@
|
|
|
291
355
|
|
|
292
356
|
/* ------------------------------------------- deprecated: Tailwind palette */
|
|
293
357
|
|
|
294
|
-
/*
|
|
295
|
-
*
|
|
296
|
-
*
|
|
358
|
+
/* Stock colours markup still names, so `--color-*: initial` does not blank them. U12 deletes
|
|
359
|
+
* this block. The neutral scale is Graphite's roles by the job each step does in markup (light
|
|
360
|
+
* steps text, dark steps surfaces and lines); the rest are verbatim Tailwind 4.3.3 defaults. */
|
|
297
361
|
--color-amber-50: oklch(98.7% 0.022 95.277);
|
|
298
362
|
--color-amber-100: oklch(96.2% 0.059 95.617);
|
|
299
363
|
--color-amber-200: oklch(92.4% 0.12 95.746);
|
|
@@ -315,17 +379,17 @@
|
|
|
315
379
|
--color-green-400: oklch(79.2% 0.209 151.711);
|
|
316
380
|
--color-green-500: oklch(72.3% 0.219 149.579);
|
|
317
381
|
--color-green-600: oklch(62.7% 0.194 149.214);
|
|
318
|
-
--color-neutral-50:
|
|
319
|
-
--color-neutral-100:
|
|
320
|
-
--color-neutral-200:
|
|
321
|
-
--color-neutral-300:
|
|
322
|
-
--color-neutral-400:
|
|
323
|
-
--color-neutral-500:
|
|
324
|
-
--color-neutral-600:
|
|
325
|
-
--color-neutral-700:
|
|
326
|
-
--color-neutral-800:
|
|
327
|
-
--color-neutral-900:
|
|
328
|
-
--color-neutral-950:
|
|
382
|
+
--color-neutral-50: var(--color-text-0);
|
|
383
|
+
--color-neutral-100: var(--color-text-0);
|
|
384
|
+
--color-neutral-200: var(--color-text-0);
|
|
385
|
+
--color-neutral-300: var(--color-text-2);
|
|
386
|
+
--color-neutral-400: var(--color-text-2);
|
|
387
|
+
--color-neutral-500: var(--color-text-muted);
|
|
388
|
+
--color-neutral-600: var(--color-text-muted);
|
|
389
|
+
--color-neutral-700: var(--color-border-strong);
|
|
390
|
+
--color-neutral-800: var(--color-border);
|
|
391
|
+
--color-neutral-900: var(--color-surface);
|
|
392
|
+
--color-neutral-950: var(--color-bg-0);
|
|
329
393
|
--color-orange-300: oklch(83.7% 0.128 66.29);
|
|
330
394
|
--color-orange-400: oklch(75% 0.183 55.934);
|
|
331
395
|
--color-pink-400: oklch(71.8% 0.202 349.761);
|
|
@@ -359,31 +423,24 @@
|
|
|
359
423
|
--color-white: #fff;
|
|
360
424
|
}
|
|
361
425
|
|
|
362
|
-
/*
|
|
426
|
+
/* The colour-scheme picks each token's light or dark half: dark unless the document element
|
|
427
|
+
* has data-theme="paper". Base layer, so a host's own colour-scheme wins. */
|
|
428
|
+
@layer base {
|
|
429
|
+
:root {
|
|
430
|
+
color-scheme: dark;
|
|
431
|
+
}
|
|
432
|
+
:root:where([data-theme="paper"]) {
|
|
433
|
+
color-scheme: light;
|
|
434
|
+
}
|
|
435
|
+
}
|
|
363
436
|
:root[data-theme="paper"] {
|
|
364
|
-
--timeline-
|
|
365
|
-
--timeline-row-bg: #edf0ed;
|
|
366
|
-
--timeline-clip-bg: #c9d1cb;
|
|
437
|
+
--timeline-clip-label-shadow: none;
|
|
367
438
|
--timeline-clip-shadow: 0 2px 6px rgb(0 0 0 / 0.12);
|
|
368
|
-
--timeline-
|
|
369
|
-
--timeline-clip-selection: #0f766e;
|
|
370
|
-
--timeline-clip-selection-highlight: rgb(255 255 255 / 0.55);
|
|
371
|
-
--timeline-clip-chip-bg: rgba(15, 22, 18, 0.73);
|
|
372
|
-
--timeline-clip-chip-audio-bg: rgba(25, 16, 38, 0.7);
|
|
373
|
-
--timeline-clip-chip-text: #ffffff;
|
|
374
|
-
--timeline-clip-audio-bg: rgb(150, 128, 180);
|
|
375
|
-
--timeline-clip-audio-bg-hover: rgb(135, 109, 170);
|
|
376
|
-
--timeline-clip-audio-bg-dragging: rgb(232, 224, 242);
|
|
377
|
-
--timeline-clip-audio-border: rgba(113, 80, 155, 0.45);
|
|
378
|
-
--timeline-clip-audio-muted-bg: rgb(156, 161, 157);
|
|
379
|
-
--timeline-audio-link: #626d66;
|
|
380
|
-
--timeline-waveform-bar-rgb: 20, 12, 32;
|
|
381
|
-
--timeline-waveform-muted-rgb: 24, 28, 26;
|
|
382
|
-
--timeline-waveform-baseline-rgb: 76, 62, 88;
|
|
383
|
-
--timeline-waveform-error: repeating-linear-gradient(
|
|
439
|
+
--timeline-thumbnail-shimmer: linear-gradient(
|
|
384
440
|
90deg,
|
|
385
|
-
rgba(
|
|
386
|
-
|
|
441
|
+
rgba(24, 24, 27, 0.02) 0%,
|
|
442
|
+
rgba(24, 24, 27, 0.05) 50%,
|
|
443
|
+
rgba(24, 24, 27, 0.02) 100%
|
|
387
444
|
);
|
|
388
445
|
}
|
|
389
446
|
|