e.stopPropagation()}
>
-
Move to...
+
Move to...
{projects
.filter(p => p.id !== selectedProject?.id)
.map(p => (
@@ -1339,7 +1339,7 @@ const ProjectsTab = ({ onProjectSelect, activeProjectId, onRerunVideo, onEditInI
setActiveSubTab('library');
setIsSelecting(true);
}}
- className="flex items-center gap-2 px-3 py-1.5 bg-cinema-gold hover:bg-amber-400 text-slate-950 rounded text-sm font-medium transition-all"
+ className="flex items-center gap-2 px-3 py-1.5 bg-cinema-gold hover:bg-amber-400 text-slate-950 rounded text-sm font-normal transition-all"
>
New Storyboard
@@ -1357,7 +1357,7 @@ const ProjectsTab = ({ onProjectSelect, activeProjectId, onRerunVideo, onEditInI
setActiveSubTab('library');
setIsSelecting(true);
}}
- className="mt-4 px-4 py-2 bg-cinema-gold hover:bg-amber-400 text-slate-950 rounded text-sm font-medium transition-all"
+ className="mt-4 px-4 py-2 bg-cinema-gold hover:bg-amber-400 text-slate-950 rounded text-sm font-normal transition-all"
>
Select Images
@@ -1371,7 +1371,7 @@ const ProjectsTab = ({ onProjectSelect, activeProjectId, onRerunVideo, onEditInI
className="group p-4 bg-slate-800/50 rounded border border-slate-700 hover:border-cinema-gold transition-all cursor-pointer"
>
-
{board.name}
+ {board.name}
{board.frames?.length || 0} frames
{/* Frame thumbnails preview */}
@@ -1496,7 +1496,7 @@ const ProjectsTab = ({ onProjectSelect, activeProjectId, onRerunVideo, onEditInI
)}
{previewItem.type === 'video' && (
-
Edit in Image Gen
@@ -1548,7 +1548,7 @@ const ProjectsTab = ({ onProjectSelect, activeProjectId, onRerunVideo, onEditInI
});
setPreviewItem(null);
}}
- className="flex items-center gap-2 px-3 py-1.5 bg-cinema-gold hover:bg-amber-400 text-slate-950 rounded text-sm font-medium transition-colors"
+ className="flex items-center gap-2 px-3 py-1.5 bg-cinema-gold hover:bg-amber-400 text-slate-950 rounded text-sm font-normal transition-colors"
>
Generate Video
@@ -1565,7 +1565,7 @@ const ProjectsTab = ({ onProjectSelect, activeProjectId, onRerunVideo, onEditInI
});
setPreviewItem(null);
}}
- className="flex items-center gap-2 px-3 py-1.5 bg-slate-200 hover:bg-slate-300 text-slate-900 rounded text-sm font-medium transition-colors"
+ className="flex items-center gap-2 px-3 py-1.5 bg-slate-200 hover:bg-slate-300 text-slate-900 rounded text-sm font-normal transition-colors"
>
Re-run
@@ -1576,7 +1576,7 @@ const ProjectsTab = ({ onProjectSelect, activeProjectId, onRerunVideo, onEditInI
setMovingItemId(movingItemId === previewItem.id ? null : previewItem.id)}
- className={`flex items-center gap-2 px-3 py-1.5 rounded text-sm font-medium transition-colors ${
+ className={`flex items-center gap-2 px-3 py-1.5 rounded text-sm font-normal transition-colors ${
movingItemId === previewItem.id
? 'bg-cinema-gold text-slate-950'
: 'bg-slate-700 hover:bg-slate-600 text-slate-300'
@@ -1615,7 +1615,7 @@ const ProjectsTab = ({ onProjectSelect, activeProjectId, onRerunVideo, onEditInI
)}
downloadItem(previewItem)}
- className="flex items-center gap-2 px-3 py-1.5 bg-cinema-gold hover:bg-amber-400 text-slate-950 rounded text-sm font-medium transition-colors"
+ className="flex items-center gap-2 px-3 py-1.5 bg-cinema-gold hover:bg-amber-400 text-slate-950 rounded text-sm font-normal transition-colors"
>
Download
diff --git a/frontend/src/components/StoryboardEditor.jsx b/frontend/src/components/StoryboardEditor.jsx
index 0080549..508b7c5 100644
--- a/frontend/src/components/StoryboardEditor.jsx
+++ b/frontend/src/components/StoryboardEditor.jsx
@@ -76,7 +76,7 @@ const SortableFrame = ({ frame, frameItem, index, onAnnotationChange, onDelete,
>
- Frame {index + 1}
+ Frame {index + 1}
onDelete(frame.imageId)}
@@ -153,7 +153,7 @@ const SortableFrame = ({ frame, frameItem, index, onAnnotationChange, onDelete,
onGenerateVideo(frame, frameItem)}
- className="w-full flex items-center justify-center gap-2 px-3 py-2 bg-slate-200 hover:bg-slate-300 text-slate-900 rounded text-sm font-medium transition-colors"
+ className="w-full flex items-center justify-center gap-2 px-3 py-2 bg-slate-200 hover:bg-slate-300 text-slate-900 rounded text-sm font-normal transition-colors"
>
Generate Video
@@ -586,7 +586,7 @@ const StoryboardEditor = ({
) : (
-
{name}
+
{name}
setIsEditingName(true)}
className="p-1 hover:bg-slate-700 rounded"
@@ -609,7 +609,7 @@ const StoryboardEditor = ({
onEditFrames(storyboard.id, frames.map(f => f.imageId))}
- className="flex items-center gap-2 px-3 py-2 bg-cinema-gold hover:bg-amber-400 text-slate-950 rounded text-sm font-medium transition-colors"
+ className="flex items-center gap-2 px-3 py-2 bg-cinema-gold hover:bg-amber-400 text-slate-950 rounded text-sm font-normal transition-colors"
>
Edit Frames
diff --git a/frontend/src/components/TabNavigation.jsx b/frontend/src/components/TabNavigation.jsx
index 42e8cd4..02fc8b5 100644
--- a/frontend/src/components/TabNavigation.jsx
+++ b/frontend/src/components/TabNavigation.jsx
@@ -22,7 +22,7 @@ const TabNavigation = ({ activeTab, onTabChange, activeProjectId }) => {
onClick={() => !isDisabled && onTabChange(tab.id)}
disabled={isDisabled}
title={isDisabled ? 'Select a project first' : tab.label}
- className={`relative flex items-center gap-2 px-1 py-2 font-medium transition-all ${
+ className={`relative flex items-center gap-2 px-1 py-2 font-normal transition-all ${
isDisabled
? 'text-slate-600 cursor-not-allowed'
: isActive
diff --git a/frontend/src/components/VideoGenTab.jsx b/frontend/src/components/VideoGenTab.jsx
index 4ee72d6..dda064b 100644
--- a/frontend/src/components/VideoGenTab.jsx
+++ b/frontend/src/components/VideoGenTab.jsx
@@ -1031,14 +1031,14 @@ OUTPUT: Two sections separated by --- only. No explanations or labels.`;
{/* Video Settings */}
-
+
Video Settings
{/* Engine Selector */}
-
+
Engine
@@ -1046,7 +1046,7 @@ OUTPUT: Two sections separated by --- only. No explanations or labels.`;
setEngine(opt.value)}
- className={`flex-1 px-3 py-2 rounded font-medium transition-all text-sm ${
+ className={`flex-1 px-3 py-2 rounded font-normal transition-all text-sm ${
engine === opt.value
? 'bg-cinema-gold text-slate-950'
: 'bg-slate-800 text-slate-400 hover:bg-slate-700'
@@ -1066,7 +1066,7 @@ OUTPUT: Two sections separated by --- only. No explanations or labels.`;
<>
{/* Model */}
-
+
Model
@@ -1074,7 +1074,7 @@ OUTPUT: Two sections separated by --- only. No explanations or labels.`;
setModelType(opt.value)}
- className={`flex-1 px-3 py-2 rounded font-medium transition-all text-sm ${
+ className={`flex-1 px-3 py-2 rounded font-normal transition-all text-sm ${
modelType === opt.value
? 'bg-cinema-gold text-slate-950'
: 'bg-slate-800 text-slate-400 hover:bg-slate-700'
@@ -1089,7 +1089,7 @@ OUTPUT: Two sections separated by --- only. No explanations or labels.`;
{/* Duration */}
-
+
Duration
@@ -1100,7 +1100,7 @@ OUTPUT: Two sections separated by --- only. No explanations or labels.`;
key={opt.value}
onClick={() => !isDisabledByInterpolation && setDuration(opt.value)}
disabled={isDisabledByInterpolation}
- className={`flex-1 px-3 py-2 rounded font-medium transition-all text-sm ${
+ className={`flex-1 px-3 py-2 rounded font-normal transition-all text-sm ${
duration === opt.value
? 'bg-cinema-gold text-slate-950'
: isDisabledByInterpolation
@@ -1123,7 +1123,7 @@ OUTPUT: Two sections separated by --- only. No explanations or labels.`;
{/* Aspect Ratio */}
-
+
Aspect Ratio
@@ -1131,7 +1131,7 @@ OUTPUT: Two sections separated by --- only. No explanations or labels.`;
setAspectRatio(ratio)}
- className={`flex-1 px-4 py-2 rounded font-medium transition-all ${
+ className={`flex-1 px-4 py-2 rounded font-normal transition-all ${
aspectRatio === ratio
? 'bg-cinema-gold text-slate-950'
: 'bg-slate-800 text-slate-400 hover:bg-slate-700'
@@ -1145,7 +1145,7 @@ OUTPUT: Two sections separated by --- only. No explanations or labels.`;
{/* Resolution */}
-
+
Resolution
@@ -1156,7 +1156,7 @@ OUTPUT: Two sections separated by --- only. No explanations or labels.`;
key={res}
onClick={() => !isHighResDisabled && setResolution(res)}
disabled={isHighResDisabled}
- className={`flex-1 px-4 py-2 rounded font-medium transition-all ${
+ className={`flex-1 px-4 py-2 rounded font-normal transition-all ${
resolution === res
? 'bg-cinema-gold text-slate-950'
: isHighResDisabled
@@ -1180,12 +1180,12 @@ OUTPUT: Two sections separated by --- only. No explanations or labels.`;
{/* Audio Toggle */}
-
+
Audio
setGenerateAudio(!generateAudio)}
- className={`w-full flex items-center justify-between px-4 py-2.5 rounded font-medium transition-all text-sm ${
+ className={`w-full flex items-center justify-between px-4 py-2.5 rounded font-normal transition-all text-sm ${
generateAudio
? 'bg-green-900/50 text-green-400 border border-green-800'
: 'bg-slate-800 text-slate-400 border border-slate-700'
@@ -1208,7 +1208,7 @@ OUTPUT: Two sections separated by --- only. No explanations or labels.`;
<>
{/* Kling Workflow Selector */}
-
+
Workflow
@@ -1216,7 +1216,7 @@ OUTPUT: Two sections separated by --- only. No explanations or labels.`;
setKlingWorkflow(opt.value)}
- className={`flex-1 px-2 py-1.5 rounded font-medium transition-all text-sm ${
+ className={`flex-1 px-2 py-1.5 rounded font-normal transition-all text-sm ${
klingWorkflow === opt.value
? 'bg-cinema-gold text-slate-950'
: 'bg-slate-800 text-slate-400 hover:bg-slate-700'
@@ -1235,13 +1235,13 @@ OUTPUT: Two sections separated by --- only. No explanations or labels.`;
<>
{/* Kling Model */}
-
Model
+
Model
{klingModelOptions.map((opt) => (
setKlingModel(opt.value)}
- className={`px-2 py-1.5 rounded font-medium transition-all text-sm ${
+ className={`px-2 py-1.5 rounded font-normal transition-all text-sm ${
klingModel === opt.value
? 'bg-cinema-gold text-slate-950'
: 'bg-slate-800 text-slate-400 hover:bg-slate-700'
@@ -1256,13 +1256,13 @@ OUTPUT: Two sections separated by --- only. No explanations or labels.`;
{/* Duration */}
-
Duration
+
Duration
{[5, 10].map((d) => (
setDuration(d)}
- className={`flex-1 px-3 py-2 rounded font-medium transition-all text-sm ${
+ className={`flex-1 px-3 py-2 rounded font-normal transition-all text-sm ${
duration === d
? 'bg-cinema-gold text-slate-950'
: 'bg-slate-800 text-slate-400 hover:bg-slate-700'
@@ -1276,13 +1276,13 @@ OUTPUT: Two sections separated by --- only. No explanations or labels.`;
{/* Aspect Ratio */}
-
Aspect Ratio
+
Aspect Ratio
{['16:9', '9:16', '1:1'].map((ratio) => (
setAspectRatio(ratio)}
- className={`flex-1 px-3 py-2 rounded font-medium transition-all text-sm ${
+ className={`flex-1 px-3 py-2 rounded font-normal transition-all text-sm ${
aspectRatio === ratio
? 'bg-cinema-gold text-slate-950'
: 'bg-slate-800 text-slate-400 hover:bg-slate-700'
@@ -1296,13 +1296,13 @@ OUTPUT: Two sections separated by --- only. No explanations or labels.`;
{/* Mode (Std/Pro) */}
-
Quality Mode
+
Quality Mode
{[{ value: 'std', label: 'Standard' }, { value: 'pro', label: 'Pro' }].map((opt) => (
setKlingMode(opt.value)}
- className={`flex-1 px-3 py-2 rounded font-medium transition-all text-sm ${
+ className={`flex-1 px-3 py-2 rounded font-normal transition-all text-sm ${
klingMode === opt.value
? 'bg-cinema-gold text-slate-950'
: 'bg-slate-800 text-slate-400 hover:bg-slate-700'
@@ -1316,10 +1316,10 @@ OUTPUT: Two sections separated by --- only. No explanations or labels.`;
{/* Sound Toggle */}
-
Sound
+
Sound
setKlingSound(!klingSound)}
- className={`w-full flex items-center justify-between px-4 py-2.5 rounded font-medium transition-all text-sm ${
+ className={`w-full flex items-center justify-between px-4 py-2.5 rounded font-normal transition-all text-sm ${
klingSound
? 'bg-green-900/50 text-green-400 border border-green-800'
: 'bg-slate-800 text-slate-400 border border-slate-700'
@@ -1335,7 +1335,7 @@ OUTPUT: Two sections separated by --- only. No explanations or labels.`;
{/* CFG Scale Slider */}
-
+
CFG Scale
{klingCfgScale.toFixed(1)}
@@ -1356,13 +1356,13 @@ OUTPUT: Two sections separated by --- only. No explanations or labels.`;
{/* Camera Control */}
-
Camera Control
+
Camera Control
{cameraPresets.map((preset) => (
setKlingCameraControl(preset.value)}
- className={`px-2 py-1.5 rounded font-medium transition-all text-xs ${
+ className={`px-2 py-1.5 rounded font-normal transition-all text-xs ${
klingCameraControl === preset.value
? 'bg-cinema-gold text-slate-950'
: 'bg-slate-800 text-slate-400 hover:bg-slate-700'
@@ -1383,7 +1383,7 @@ OUTPUT: Two sections separated by --- only. No explanations or labels.`;
<>
{/* Video ID */}