feat: Tag-Modus komplett im Onepager-Design

- Weisser Hintergrund (#fff) statt Grau
- Plus Jakarta Sans Font (wie Onepager)
- Solide Karten (#f8fafc, #e2e8f0 Borders) statt Glass-Effekte
- Kein Backdrop-Blur im Light Mode
- Partikel komplett ausgeblendet
- Onepager Farb-Hierarchie: #1a1a2e → #334155#475569 → #64748b → #94a3b8
- Akzent-Hintergruende: #eef2ff (Indigo), #ecfdf5 (Emerald), #fefce8 (Amber)
- Sidebar/Chat: Weiss mit #e2e8f0 Borders
- Saubere Shadows statt Glow-Effekte
- KPI-Glow-Dots ausgeblendet

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Benjamin Admin
2026-03-27 08:49:50 +01:00
parent 3567845235
commit 566a8bf84e

View File

@@ -3,6 +3,7 @@
@tailwind utilities;
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&display=swap');
/* === Dark Mode (default) === */
:root {
@@ -35,85 +36,178 @@
--sticky-bg: rgba(15, 15, 30, 0.9);
}
/* === Light Mode === */
/* === Light Mode — Onepager Design Language === */
/* Clean, professional, print-friendly. No glass, no blur, solid cards. */
.theme-light {
--bg-primary: #f8f9fc;
--bg-secondary: #eef0f5;
--bg-card: rgba(0, 0, 0, 0.04);
--bg-card-hover: rgba(0, 0, 0, 0.07);
--border-subtle: rgba(0, 0, 0, 0.1);
--bg-primary: #ffffff;
--bg-secondary: #f8fafc;
--bg-card: #f8fafc;
--bg-card-hover: #f1f5f9;
--border-subtle: #e2e8f0;
--text-primary: #1a1a2e;
--text-secondary: rgba(26, 26, 46, 0.7);
--text-muted: rgba(26, 26, 46, 0.5);
--text-faint: rgba(26, 26, 46, 0.15);
--text-secondary: #334155;
--text-muted: #64748b;
--text-faint: #94a3b8;
--accent-indigo: #4f46e5;
--accent-purple: #7c3aed;
--accent-blue: #3b82f6;
--glass-bg: rgba(255, 255, 255, 0.7);
--glass-border: rgba(0, 0, 0, 0.08);
--glass-hover: rgba(255, 255, 255, 0.85);
--gradient-from: #eef0f5;
--gradient-via: #f8f9fc;
--gradient-to: #eef0f5;
--scrollbar-thumb: rgba(0, 0, 0, 0.15);
--scrollbar-hover: rgba(0, 0, 0, 0.25);
--selection-bg: rgba(79, 70, 229, 0.2);
--accent-blue: #0891b2;
--glass-bg: #f8fafc;
--glass-border: #e2e8f0;
--glass-hover: #f1f5f9;
--gradient-from: #ffffff;
--gradient-via: #ffffff;
--gradient-to: #ffffff;
--scrollbar-thumb: #cbd5e1;
--scrollbar-hover: #94a3b8;
--selection-bg: rgba(79, 70, 229, 0.15);
--selection-color: #1a1a2e;
--red-text: #dc2626;
--green-text: #059669;
--table-row-hover: rgba(0, 0, 0, 0.02);
--table-sum-bg: rgba(0, 0, 0, 0.03);
--sticky-bg: rgba(248, 249, 252, 0.95);
--table-row-hover: #f8fafc;
--table-sum-bg: #f1f5f9;
--sticky-bg: rgba(255, 255, 255, 0.97);
}
/* === Light mode overrides for Tailwind white/ opacity classes === */
.theme-light .text-white { color: var(--text-primary); }
.theme-light .text-white\/80 { color: rgba(26, 26, 46, 0.85); }
.theme-light .text-white\/70 { color: rgba(26, 26, 46, 0.75); }
.theme-light .text-white\/60 { color: rgba(26, 26, 46, 0.65); }
.theme-light .text-white\/50 { color: rgba(26, 26, 46, 0.55); }
.theme-light .text-white\/40 { color: rgba(26, 26, 46, 0.45); }
.theme-light .text-white\/30 { color: rgba(26, 26, 46, 0.35); }
.theme-light .text-white\/20 { color: rgba(26, 26, 46, 0.25); }
.theme-light .text-white\/15 { color: rgba(26, 26, 46, 0.18); }
/* Font: Plus Jakarta Sans in light mode (matches Onepager) */
.theme-light, .theme-light * {
font-family: 'Plus Jakarta Sans', 'Inter', system-ui, sans-serif !important;
}
/* === Text colors — Onepager hierarchy === */
.theme-light .text-white { color: #1a1a2e; }
.theme-light .text-white\/80 { color: #334155; }
.theme-light .text-white\/70 { color: #475569; }
.theme-light .text-white\/60 { color: #475569; }
.theme-light .text-white\/50 { color: #64748b; }
.theme-light .text-white\/40 { color: #64748b; }
.theme-light .text-white\/30 { color: #94a3b8; }
.theme-light .text-white\/20 { color: #cbd5e1; }
.theme-light .text-white\/15 { color: #e2e8f0; }
/* === Cards — Solid white/gray, clean borders, no glass === */
.theme-light .bg-white\/\[0\.08\],
.theme-light .bg-white\/\[0\.06\],
.theme-light .bg-white\/\[0\.05\],
.theme-light .bg-white\/\[0\.04\],
.theme-light .bg-white\/\[0\.03\] { background-color: var(--glass-bg); }
.theme-light .bg-white\/\[0\.03\] {
background-color: #f8fafc !important;
}
.theme-light .border-white\/10,
.theme-light .border-white\/\[0\.03\] { border-color: var(--glass-border); }
.theme-light .border-white\/\[0\.03\] {
border-color: #e2e8f0 !important;
}
/* No backdrop blur in light mode — clean solid backgrounds */
.theme-light .backdrop-blur-xl,
.theme-light .backdrop-blur {
backdrop-filter: none !important;
-webkit-backdrop-filter: none !important;
}
/* Sticky table headers */
.theme-light .bg-slate-900\/90,
.theme-light .bg-slate-900\/80 { background-color: var(--sticky-bg); }
.theme-light .bg-slate-900\/80 {
background-color: rgba(255, 255, 255, 0.97) !important;
}
.theme-light .bg-gradient-to-br { background: linear-gradient(135deg, var(--gradient-from), var(--gradient-via), var(--gradient-to)); }
/* Main background */
.theme-light .bg-gradient-to-br {
background: #ffffff !important;
}
.theme-light .hover\:bg-white\/\[0\.02\]:hover,
.theme-light .hover\:bg-white\/\[0\.04\]:hover { background-color: var(--table-row-hover); }
/* === Colored accent backgrounds — Onepager style (subtle gradients) === */
.theme-light .bg-indigo-500\/20 { background-color: #eef2ff !important; }
.theme-light .bg-indigo-500\/15 { background-color: #eef2ff !important; }
.theme-light .bg-indigo-500\/10 { background-color: #eef2ff !important; }
.theme-light .bg-emerald-500\/20 { background-color: #ecfdf5 !important; }
.theme-light .bg-emerald-500\/10 { background-color: #ecfdf5 !important; }
.theme-light .bg-purple-500\/20 { background-color: #faf5ff !important; }
.theme-light .bg-blue-500\/15 { background-color: #f0f9ff !important; }
.theme-light .bg-amber-500\/10 { background-color: #fefce8 !important; }
.theme-light .bg-red-500\/10 { background-color: #fef2f2 !important; }
.theme-light .bg-cyan-500\/10 { background-color: #ecfeff !important; }
.theme-light .bg-green-500\/10 { background-color: #f0fdf4 !important; }
/* Glass cards in light mode */
.theme-light .backdrop-blur-xl { backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); }
/* Indigo/purple tints in light mode — slightly more opaque */
.theme-light .bg-indigo-500\/20 { background-color: rgba(79, 70, 229, 0.1); }
.theme-light .bg-indigo-500\/15 { background-color: rgba(79, 70, 229, 0.08); }
.theme-light .bg-indigo-500\/10 { background-color: rgba(79, 70, 229, 0.06); }
.theme-light .bg-emerald-500\/20 { background-color: rgba(5, 150, 105, 0.1); }
.theme-light .bg-emerald-500\/10 { background-color: rgba(5, 150, 105, 0.06); }
.theme-light .bg-purple-500\/20 { background-color: rgba(124, 58, 237, 0.1); }
.theme-light .bg-blue-500\/15 { background-color: rgba(59, 130, 246, 0.08); }
.theme-light .border-indigo-500\/30 { border-color: rgba(79, 70, 229, 0.2); }
.theme-light .border-emerald-500\/30 { border-color: rgba(5, 150, 105, 0.2); }
/* Borders — Onepager colors */
.theme-light .border-indigo-500\/30 { border-color: #c7d2fe !important; }
.theme-light .border-indigo-500\/20 { border-color: #e0e7ff !important; }
.theme-light .border-emerald-500\/30 { border-color: #a7f3d0 !important; }
.theme-light .border-amber-500\/20 { border-color: #fde68a !important; }
.theme-light .border-cyan-500 { border-color: #06b6d4 !important; }
/* Colored text — stronger in light mode */
.theme-light .text-indigo-400,
.theme-light .text-indigo-300 { color: #4f46e5 !important; }
.theme-light .text-purple-400 { color: #7c3aed !important; }
.theme-light .text-emerald-400,
.theme-light .text-emerald-300 { color: #059669 !important; }
.theme-light .text-cyan-400 { color: #0891b2 !important; }
.theme-light .text-blue-400 { color: #2563eb !important; }
.theme-light .text-amber-400,
.theme-light .text-amber-300 { color: #d97706 !important; }
.theme-light .text-red-400,
.theme-light .text-red-400\/70 { color: var(--red-text); }
.theme-light .text-red-400\/70 { color: #dc2626 !important; }
.theme-light .text-pink-400 { color: #db2777 !important; }
/* Hide particle background in light mode */
.theme-light canvas { opacity: 0.08 !important; }
/* Table hover rows */
.theme-light .hover\:bg-white\/\[0\.02\]:hover,
.theme-light .hover\:bg-white\/\[0\.04\]:hover { background-color: #f1f5f9 !important; }
/* Gradient text — darker indigo in light mode */
.theme-light .bg-gradient-to-r.from-indigo-400,
.theme-light .gradient-text {
background: linear-gradient(135deg, #4f46e5, #7c3aed, #2563eb) !important;
-webkit-background-clip: text !important;
background-clip: text !important;
}
/* === Particles — completely hidden === */
.theme-light canvas { opacity: 0 !important; display: none !important; }
/* === Navigation/Chat panels — white, solid === */
.theme-light .bg-black\/80,
.theme-light .bg-black\/90 {
background-color: #ffffff !important;
border: 1px solid #e2e8f0 !important;
}
.theme-light .bg-black\/60 {
background-color: rgba(0, 0, 0, 0.15) !important;
}
/* Sidebar hover states */
.theme-light .bg-white\/10 { background-color: #f1f5f9 !important; }
.theme-light .bg-white\/5 { background-color: #f8fafc !important; }
.theme-light .bg-white\/\[0\.1\] { background-color: #f1f5f9 !important; }
.theme-light .hover\:bg-white\/20:hover { background-color: #e2e8f0 !important; }
.theme-light .hover\:bg-white\/\[0\.06\]:hover { background-color: #f1f5f9 !important; }
.theme-light .hover\:bg-white\/\[0\.1\]:hover { background-color: #f1f5f9 !important; }
.theme-light .hover\:bg-white\/\[0\.15\]:hover { background-color: #e2e8f0 !important; }
.theme-light .bg-white\/\[0\.15\] { background-color: #f1f5f9 !important; }
/* Shadows — subtle like Onepager */
.theme-light .shadow-lg { box-shadow: 0 4px 6px -1px rgba(0,0,0,0.06), 0 2px 4px -2px rgba(0,0,0,0.06) !important; }
.theme-light .shadow-2xl { box-shadow: 0 10px 25px -5px rgba(0,0,0,0.1) !important; }
.theme-light .shadow-black\/50 { box-shadow: 0 10px 25px -5px rgba(0,0,0,0.1) !important; }
.theme-light .shadow-indigo-600\/30,
.theme-light .shadow-indigo-500\/30 { box-shadow: 0 4px 14px -3px rgba(79, 70, 229, 0.15) !important; }
/* Modal backdrops */
.theme-light .bg-slate-900\/95 { background-color: #ffffff !important; border: 1px solid #e2e8f0 !important; }
/* Border-top colors for product cards */
.theme-light .border-t-indigo-500 { border-top-color: #4f46e5 !important; }
.theme-light .border-t-cyan-500 { border-top-color: #06b6d4 !important; }
/* KPI card glow dots — subtle in light mode */
.theme-light .blur-3xl { display: none; }
/* Progress bar at top */
.theme-light .bg-indigo-600 { background-color: #4f46e5 !important; }
/* Theme toggle button itself */
.theme-light .hover\:bg-indigo-500\/10:hover { background-color: #eef2ff !important; }
* {
margin: 0;
@@ -175,57 +269,8 @@ html, body {
}
}
/* Light mode: panel backgrounds (NavigationFAB, ChatFAB, Overlays) */
.theme-light .bg-black\/80,
.theme-light .bg-black\/90,
.theme-light .bg-black\/60 {
background-color: rgba(255, 255, 255, 0.92) !important;
}
/* No glow in light mode */
.theme-light .text-shadow-glow { text-shadow: none; }
.theme-light .bg-slate-950 { background-color: #f8f9fc; }
/* Navigation FAB panel */
.theme-light .shadow-black\/50 { box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.15) !important; }
.theme-light .shadow-indigo-600\/30 { box-shadow: 0 10px 15px -3px rgba(79, 70, 229, 0.15) !important; }
.theme-light .shadow-indigo-500\/30 { box-shadow: 0 10px 15px -3px rgba(79, 70, 229, 0.15) !important; }
/* Active slide number badge in sidebar */
.theme-light .bg-white\/10 { background-color: rgba(0, 0, 0, 0.06); }
.theme-light .bg-white\/5 { background-color: rgba(0, 0, 0, 0.03); }
.theme-light .bg-white\/\[0\.1\] { background-color: rgba(0, 0, 0, 0.06); }
.theme-light .hover\:bg-white\/20:hover { background-color: rgba(0, 0, 0, 0.08) !important; }
.theme-light .hover\:bg-white\/\[0\.06\]:hover { background-color: rgba(0, 0, 0, 0.04) !important; }
.theme-light .hover\:bg-white\/\[0\.1\]:hover { background-color: rgba(0, 0, 0, 0.06) !important; }
.theme-light .hover\:bg-white\/\[0\.15\]:hover { background-color: rgba(0, 0, 0, 0.08) !important; }
/* Chat input field */
.theme-light input.bg-white\/\[0\.06\],
.theme-light .bg-white\/\[0\.06\] { background-color: rgba(0, 0, 0, 0.04); }
/* KPI cards, glass cards with colored glows */
.theme-light .shadow-lg { box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.08) !important; }
/* Gradient text stays vibrant in light mode */
.theme-light .bg-gradient-to-r.from-indigo-400 {
background: linear-gradient(135deg, #4f46e5, #7c3aed, #3b82f6) !important;
-webkit-background-clip: text !important;
}
/* Navigation controls (prev/next arrows) */
.theme-light .bg-white\/\[0\.15\] { background-color: rgba(0, 0, 0, 0.08); }
/* Colored accent backgrounds — keep but lighten */
.theme-light .bg-red-500\/10 { background-color: rgba(239, 68, 68, 0.08); }
.theme-light .bg-green-500\/10 { background-color: rgba(34, 197, 94, 0.08); }
.theme-light .bg-amber-500\/10 { background-color: rgba(245, 158, 11, 0.08); }
/* Modal backdrops */
.theme-light .bg-black\/60 { background-color: rgba(0, 0, 0, 0.3) !important; }
.theme-light .bg-slate-900\/95 { background-color: rgba(255, 255, 255, 0.97) !important; }
/* Progress bar */
.theme-light .bg-white\/5 { background-color: rgba(0, 0, 0, 0.05); }
.theme-light .text-shadow-glow {
text-shadow: none;
}
/* Top gradient bar in light mode (like Onepager) */
.theme-light .bg-slate-950 { background-color: #ffffff; }