- {/* Left Controls: References */}
- {/* For Meta AI: Only Subject is enabled (for video generation), Scene/Style disabled */}
-
- {((settings.provider === 'meta'
- ? ['subject']
- : ['subject', 'scene', 'style']) as ReferenceCategory[]).map((cat) => {
- const refs = references[cat] || [];
- const hasRefs = refs.length > 0;
- const isUploading = uploadingRefs[cat];
+ {/* Mobile View: Unified Stack */}
+
+ {/* Unified Horizontal Scroll Toolbar */}
+
- return (
-
-
- {/* Clear all button */}
- {hasRefs && !isUploading && (
-
- )}
-
- );
- })}
+ {/* Reference Pills */}
+ {((settings.provider === 'meta' ? ['subject'] : ['subject', 'scene', 'style']) as ReferenceCategory[]).map((cat) => {
+ const refs = references[cat] || [];
+ const hasRefs = refs.length > 0;
+ const isUploading = uploadingRefs[cat];
+ return (
+
+ );
+ })}
+
+ {/* Divider */}
+
+
+ {/* Settings Pills */}
+
+
+
+
+
- {/* Hidden file inputs for upload */}
-
handleFileInputChange(e, 'subject')}
- />
-
handleFileInputChange(e, 'scene')}
- />
-
handleFileInputChange(e, 'style')}
- />
+ {/* Full Width Generate Button */}
+
+
+ {/* Desktop Layout: Split Controls (Hidden on Mobile) */}
+
-
- {/* Right Controls: Settings & Generate */}
-
-
- {/* Settings Group */}
-
-
- {/* Image Count */}
-
-
-
- {/* Aspect Ratio */}
-
- Ratio:
- {settings.aspectRatio}
-
-
-
-
- {/* Precise Mode */}
-
setSettings({ preciseMode: !settings.preciseMode })}
- className={cn(
- "px-2 py-1 rounded-md text-[10px] font-medium transition-all flex items-center gap-1",
- settings.preciseMode
- ? "text-amber-300 bg-amber-500/10 ring-1 ring-amber-500/30"
- : "text-white/40 hover:text-white hover:bg-white/5"
- )}
- title="Precise Mode"
- >
- {/* 🍌 */}
- Precise
-
-
+ {/* Right: Settings & Generate */}
+
+
+
+
+ {settings.provider === 'meta' ? 4 : settings.imageCount}
+
+
+
+ Ratio:
+ {settings.aspectRatio}
+
+
+
setSettings({ preciseMode: !settings.preciseMode })} className={cn("px-2 py-1 rounded-md text-[10px] font-medium transition-all flex items-center gap-1", settings.preciseMode ? "text-amber-300 bg-amber-500/10 ring-1 ring-amber-500/30" : "text-white/40 hover:text-white hover:bg-white/5")}>
+ Precise
+
- {/* Generate Button */}
-
+
{isGenerating ? (
<>
@@ -708,10 +720,13 @@ export function PromptHero() {
)}
-
-
-
+
+
+ {/* Hidden File Inputs (Shared) */}
+
handleFileInputChange(e, 'subject')} />
+
handleFileInputChange(e, 'scene')} />
+
handleFileInputChange(e, 'style')} />
{/* Reference Preview Panel - shows when any references exist */}
{