fix: reduce main layout height offset from 180px to 120px across all tools

Also restore scroll handling to ExportPanel and PresetLibrary, and
remove maxHeight cap from CodeSnippet in ExportPanel.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-01 16:05:14 +01:00
parent 25067bca30
commit b5f698cf29
10 changed files with 12 additions and 12 deletions

View File

@@ -96,7 +96,7 @@ export function AnimationEditor() {
{/* ── Main layout ─────────────────────────────────────── */} {/* ── Main layout ─────────────────────────────────────── */}
<div <div
className="grid grid-cols-1 lg:grid-cols-5 gap-4" className="grid grid-cols-1 lg:grid-cols-5 gap-4"
style={{ height: 'calc(100svh - 180px)' }} style={{ height: 'calc(100svh - 120px)' }}
> >
{/* Left: Settings + Properties */} {/* Left: Settings + Properties */}

View File

@@ -18,7 +18,7 @@ export function ExportPanel({ config }: Props) {
const tailwind = useMemo(() => buildTailwindCSS(config), [config]); const tailwind = useMemo(() => buildTailwindCSS(config), [config]);
return ( return (
<div className="space-y-3"> <div className="space-y-3 overflow-y-auto scrollbar-thin scrollbar-thumb-primary/20 scrollbar-track-transparent pr-0.5">
<div className="flex items-center justify-between"> <div className="flex items-center justify-between">
<span className="text-[10px] font-semibold text-muted-foreground uppercase tracking-widest">Export</span> <span className="text-[10px] font-semibold text-muted-foreground uppercase tracking-widest">Export</span>
<div className="flex glass rounded-lg p-0.5 gap-0.5"> <div className="flex glass rounded-lg p-0.5 gap-0.5">
@@ -36,8 +36,8 @@ export function ExportPanel({ config }: Props) {
))} ))}
</div> </div>
</div> </div>
{tab === 'css' && <CodeSnippet code={css} maxHeight="13rem" />} {tab === 'css' && <CodeSnippet code={css} />}
{tab === 'tailwind' && <CodeSnippet code={tailwind} maxHeight="13rem" />} {tab === 'tailwind' && <CodeSnippet code={tailwind} />}
</div> </div>
); );
} }

View File

@@ -55,7 +55,7 @@ export function PresetLibrary({ onSelect }: Props) {
const [category, setCategory] = useState<PresetCategory>(PRESET_CATEGORIES[0]); const [category, setCategory] = useState<PresetCategory>(PRESET_CATEGORIES[0]);
return ( return (
<div className="space-y-3"> <div className="space-y-3 overflow-y-auto scrollbar-thin scrollbar-thumb-primary/20 scrollbar-track-transparent pr-0.5">
<div className="flex items-center justify-between"> <div className="flex items-center justify-between">
<span className="text-[10px] font-semibold text-muted-foreground uppercase tracking-widest">Presets</span> <span className="text-[10px] font-semibold text-muted-foreground uppercase tracking-widest">Presets</span>
<div className="flex glass rounded-lg p-0.5 gap-0.5"> <div className="flex glass rounded-lg p-0.5 gap-0.5">

View File

@@ -123,7 +123,7 @@ export function ASCIIConverter() {
{/* ── Main layout ────────────────────────────────────────── */} {/* ── Main layout ────────────────────────────────────────── */}
<div <div
className="grid grid-cols-1 lg:grid-cols-5 gap-4" className="grid grid-cols-1 lg:grid-cols-5 gap-4"
style={{ height: 'calc(100svh - 180px)' }} style={{ height: 'calc(100svh - 120px)' }}
> >
{/* Left panel: text input + font selector */} {/* Left panel: text input + font selector */}
<div <div

View File

@@ -34,7 +34,7 @@ export default function Calculator() {
{/* Main layout — side-by-side on lg, tabbed on mobile */} {/* Main layout — side-by-side on lg, tabbed on mobile */}
<div <div
className="grid grid-cols-1 lg:grid-cols-5 gap-4" className="grid grid-cols-1 lg:grid-cols-5 gap-4"
style={{ height: 'calc(100svh - 180px)' }} style={{ height: 'calc(100svh - 120px)' }}
> >
{/* Expression panel */} {/* Expression panel */}
<div <div

View File

@@ -123,7 +123,7 @@ function ColorManipulationContent() {
{/* ── Main layout ────────────────────────────────────────── */} {/* ── Main layout ────────────────────────────────────────── */}
<div <div
className="grid grid-cols-1 lg:grid-cols-5 gap-4" className="grid grid-cols-1 lg:grid-cols-5 gap-4"
style={{ height: 'calc(100svh - 180px)' }} style={{ height: 'calc(100svh - 120px)' }}
> >
{/* Left panel: Picker + ColorInfo */} {/* Left panel: Picker + ColorInfo */}

View File

@@ -97,7 +97,7 @@ export function FaviconGenerator() {
{/* ── Main layout ─────────────────────────────────────── */} {/* ── Main layout ─────────────────────────────────────── */}
<div <div
className="grid grid-cols-1 lg:grid-cols-5 gap-4" className="grid grid-cols-1 lg:grid-cols-5 gap-4"
style={{ height: 'calc(100svh - 180px)' }} style={{ height: 'calc(100svh - 120px)' }}
> >
{/* Left: Setup */} {/* Left: Setup */}

View File

@@ -203,7 +203,7 @@ export function FileConverter() {
{/* ── Main layout ─────────────────────────────────────── */} {/* ── Main layout ─────────────────────────────────────── */}
<div <div
className="grid grid-cols-1 lg:grid-cols-5 gap-4" className="grid grid-cols-1 lg:grid-cols-5 gap-4"
style={{ height: 'calc(100svh - 180px)' }} style={{ height: 'calc(100svh - 120px)' }}
> >
{/* Left: upload zone */} {/* Left: upload zone */}

View File

@@ -121,7 +121,7 @@ export function QRCodeGenerator() {
{/* ── Main layout ─────────────────────────────────────── */} {/* ── Main layout ─────────────────────────────────────── */}
<div <div
className="grid grid-cols-1 lg:grid-cols-5 gap-4" className="grid grid-cols-1 lg:grid-cols-5 gap-4"
style={{ height: 'calc(100svh - 180px)' }} style={{ height: 'calc(100svh - 120px)' }}
> >
{/* Left: Input + Options */} {/* Left: Input + Options */}

View File

@@ -108,7 +108,7 @@ export default function MainConverter() {
{/* ── Main layout ────────────────────────────────────────── */} {/* ── Main layout ────────────────────────────────────────── */}
<div <div
className="grid grid-cols-1 lg:grid-cols-5 gap-4" className="grid grid-cols-1 lg:grid-cols-5 gap-4"
style={{ height: 'calc(100svh - 180px)' }} style={{ height: 'calc(100svh - 120px)' }}
> >
{/* Left panel: search + categories */} {/* Left panel: search + categories */}