@@ -56,6 +56,26 @@ export default function ActionBar({
5656 { showOverrides && (
5757 < div className = "override-content" >
5858 < div className = "grid [grid-template-columns:repeat(auto-fit,minmax(120px,1fr))] gap-[6px] max-[500px]:grid-cols-2" >
59+ < label className = "min-w-0" >
60+ < span className = "label-row justify-between" >
61+ < span className = "inline-flex items-center gap-[6px]" >
62+ < SlidersHorizontal size = { 12 } className = "label-icon" />
63+ { t ( 'clone.steps' ) }
64+ </ span >
65+ < span className = "text-[0.65rem] bg-black/35 px-[5px] py-px rounded-[3px] [border:1px_solid_rgba(255,255,255,0.04)] [font-variant-numeric:tabular-nums]" >
66+ { steps }
67+ </ span >
68+ </ span >
69+ < input
70+ className = "w-full"
71+ type = "range"
72+ aria-label = { t ( 'clone.steps' ) }
73+ min = "8"
74+ max = "64"
75+ value = { steps }
76+ onChange = { ( event ) => setSteps ( Number ( event . target . value ) ) }
77+ />
78+ </ label >
5979 < div >
6080 < div className = "label-row justify-between" >
6181 < span > CFG</ span >
@@ -186,8 +206,8 @@ export default function ActionBar({
186206 </ div >
187207 ) }
188208
189- { /* Controls row: language · steps · overrides disclosure */ }
190- < div className = "flex items-center gap-[16px] min-w-0" >
209+ { /* Keep the everyday row focused; sampling controls live in overrides. */ }
210+ < div className = "flex items-center gap-3 min-w-0 max-[520px]:flex-wrap " >
191211 < div className = "flex items-center gap-[6px] flex-[1_1_220px] min-w-[140px] [&>:last-child]:flex-1 [&>:last-child]:min-w-0" >
192212 < Globe size = { 12 } className = "label-icon" />
193213 < SearchableSelect
@@ -198,33 +218,9 @@ export default function ActionBar({
198218 onChange = { setLanguage }
199219 />
200220 </ div >
201- { /* Inference/sampling steps (#1771 follow-up): this slider used to
202- carry only a hover title, so its value ("16") read as an
203- unlabelled control sitting between the language picker and
204- Production Overrides — give it the same visible label treatment
205- as everything else in the bar. */ }
206- < label
207- className = "flex items-center gap-[6px] flex-[1_1_160px] min-w-[120px] [&_input]:flex-1 [&_input]:min-w-[60px]"
208- title = { t ( 'clone.steps' ) }
209- >
210- < SlidersHorizontal size = { 12 } className = "label-icon" />
211- < span className = "text-[0.7rem] text-[var(--chrome-fg-muted)] whitespace-nowrap" >
212- { t ( 'clone.steps' ) }
213- </ span >
214- < input
215- type = "range"
216- min = "8"
217- max = "64"
218- value = { steps }
219- onChange = { ( e ) => setSteps ( Number ( e . target . value ) ) }
220- />
221- < span className = "text-[0.65rem] bg-black/35 px-[5px] py-px rounded-[3px] [border:1px_solid_rgba(255,255,255,0.04)] [font-variant-numeric:tabular-nums]" >
222- { steps }
223- </ span >
224- </ label >
225221 < button
226222 type = "button"
227- className = "inline-flex items-center gap-[4px] px-[10px] py-[4px] text-[0.7rem] text-[var(--chrome-fg-muted)] bg-transparent border border-transparent rounded-[var(--chrome-radius-pill)] cursor-pointer whitespace-nowrap flex-none transition-[color,border-color] duration-[var(--dur-fast)] hover:text-[var(--chrome-fg)] hover:border-transparent focus-visible:[outline:2px_solid_var(--chrome-accent)] focus-visible:[outline-offset:1px]"
223+ className = "inline-flex min-h-9 items-center gap-[4px] px-[10px] py-[4px] text-[0.7rem] text-[var(--chrome-fg-muted)] bg-transparent border border-transparent rounded-md cursor-pointer whitespace-nowrap flex-none transition-[color,border-color] duration-[var(--dur-fast)] hover:text-[var(--chrome-fg)] hover:bg-[var(--chrome-hover-bg)] focus-visible:[outline:2px_solid_var(--chrome-accent)] focus-visible:[outline-offset:1px]"
228224 onClick = { ( ) => setShowOverrides ( ! showOverrides ) }
229225 aria-expanded = { showOverrides }
230226 >
0 commit comments