+
+ Login-Hintergrund
+
+
+ Hintergrund des Login-Screens. Das Plattform-Logo (oben) wird ebenfalls auf dem Login-Screen angezeigt.
+
+
+ {/* Typ-Toggle */}
+
+
+
+ {(['gradient', 'solid', 'image'] as const).map((type) => (
+
+ ))}
+
+
+
+ {/* Farbverlauf */}
+ {loginBgType === 'gradient' && (
+
+
+
+
+ { setLoginBgColor1(e.target.value); setHasChanges(true); }}
+ style={{ width: 40, height: 36, padding: 0, border: '1px solid var(--color-border)', borderRadius: 'var(--radius-sm)', cursor: 'pointer' }}
+ />
+ { setLoginBgColor1(e.target.value); setHasChanges(true); }}
+ style={{ padding: '0.375rem 0.5rem', fontSize: '0.875rem', border: '1px solid var(--color-border)', borderRadius: 'var(--radius-sm)', background: 'var(--color-bg-card)', color: 'var(--color-text)', width: 100, fontFamily: 'monospace' }}
+ />
+
+
+
+
+
+ { setLoginBgColor2(e.target.value); setHasChanges(true); }}
+ style={{ width: 40, height: 36, padding: 0, border: '1px solid var(--color-border)', borderRadius: 'var(--radius-sm)', cursor: 'pointer' }}
+ />
+ { setLoginBgColor2(e.target.value); setHasChanges(true); }}
+ style={{ padding: '0.375rem 0.5rem', fontSize: '0.875rem', border: '1px solid var(--color-border)', borderRadius: 'var(--radius-sm)', background: 'var(--color-bg-card)', color: 'var(--color-text)', width: 100, fontFamily: 'monospace' }}
+ />
+
+
+
+ )}
+
+ {/* Einfarbig */}
+ {loginBgType === 'solid' && (
+
+
+
+ { setLoginBgColor1(e.target.value); setHasChanges(true); }}
+ style={{ width: 40, height: 40, padding: 0, border: '1px solid var(--color-border)', borderRadius: 'var(--radius-sm)', cursor: 'pointer' }}
+ />
+ { setLoginBgColor1(e.target.value); setHasChanges(true); }}
+ style={{ padding: '0.5rem 0.75rem', fontSize: '0.875rem', border: '1px solid var(--color-border)', borderRadius: 'var(--radius-sm)', background: 'var(--color-bg-card)', color: 'var(--color-text)', width: 120, fontFamily: 'monospace' }}
+ />
+
+
+ )}
+
+ {/* Hintergrundbild */}
+ {loginBgType === 'image' && (
+
+
+
+ Empfohlen: JPG oder PNG, min. 1920×1080px, max. 2MB.
+
+
+
+
+ {loginBgImage && (
+
+ )}
+ {loginBgImage && (
+ ✓ Bild geladen
+ )}
+
+
+ )}
+
+ {/* Vorschau */}
+
+
+
+ {/* Mini-Login-Card */}
+
+ {logo ? (
+

+ ) : (
+
INSIGHT
+ )}
+
+
+
+
+
+
+
+
{/* Speichern */}