- NavigationFAB/ChatFAB: bg-black/* → weisser Hintergrund im Light Mode - Hover-States: bg-white/* → leichte Grautöne - Shadows: dunkle Schatten → leichte Schatten - Modal-Backdrops: transparent statt dunkel - Input-Felder, KPI-Cards, Progress-Bar angepasst - Farbige Akzent-Hintergründe (rot/grün/amber) leichter Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
232 lines
8.1 KiB
CSS
232 lines
8.1 KiB
CSS
@tailwind base;
|
|
@tailwind components;
|
|
@tailwind utilities;
|
|
|
|
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap');
|
|
|
|
/* === Dark Mode (default) === */
|
|
:root {
|
|
--bg-primary: #0a0a1a;
|
|
--bg-secondary: #111128;
|
|
--bg-card: rgba(255, 255, 255, 0.08);
|
|
--bg-card-hover: rgba(255, 255, 255, 0.12);
|
|
--border-subtle: rgba(255, 255, 255, 0.1);
|
|
--text-primary: #ffffff;
|
|
--text-secondary: rgba(255, 255, 255, 0.6);
|
|
--text-muted: rgba(255, 255, 255, 0.4);
|
|
--text-faint: rgba(255, 255, 255, 0.15);
|
|
--accent-indigo: #6366f1;
|
|
--accent-purple: #a78bfa;
|
|
--accent-blue: #60a5fa;
|
|
--glass-bg: rgba(255, 255, 255, 0.08);
|
|
--glass-border: rgba(255, 255, 255, 0.1);
|
|
--glass-hover: rgba(255, 255, 255, 0.12);
|
|
--gradient-from: #0f172a;
|
|
--gradient-via: #0a0a1a;
|
|
--gradient-to: #0f172a;
|
|
--scrollbar-thumb: rgba(255, 255, 255, 0.2);
|
|
--scrollbar-hover: rgba(255, 255, 255, 0.3);
|
|
--selection-bg: rgba(99, 102, 241, 0.3);
|
|
--selection-color: white;
|
|
--red-text: #f87171;
|
|
--green-text: #34d399;
|
|
--table-row-hover: rgba(255, 255, 255, 0.02);
|
|
--table-sum-bg: rgba(255, 255, 255, 0.03);
|
|
--sticky-bg: rgba(15, 15, 30, 0.9);
|
|
}
|
|
|
|
/* === Light Mode === */
|
|
.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);
|
|
--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);
|
|
--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);
|
|
--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);
|
|
}
|
|
|
|
/* === 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); }
|
|
|
|
.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 .border-white\/10,
|
|
.theme-light .border-white\/\[0\.03\] { border-color: var(--glass-border); }
|
|
|
|
.theme-light .bg-slate-900\/90,
|
|
.theme-light .bg-slate-900\/80 { background-color: var(--sticky-bg); }
|
|
|
|
.theme-light .bg-gradient-to-br { background: linear-gradient(135deg, var(--gradient-from), var(--gradient-via), var(--gradient-to)); }
|
|
|
|
.theme-light .hover\:bg-white\/\[0\.02\]:hover,
|
|
.theme-light .hover\:bg-white\/\[0\.04\]:hover { background-color: var(--table-row-hover); }
|
|
|
|
/* 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); }
|
|
|
|
.theme-light .text-red-400,
|
|
.theme-light .text-red-400\/70 { color: var(--red-text); }
|
|
|
|
/* Hide particle background in light mode */
|
|
.theme-light canvas { opacity: 0.08 !important; }
|
|
|
|
* {
|
|
margin: 0;
|
|
padding: 0;
|
|
box-sizing: border-box;
|
|
}
|
|
|
|
html, body {
|
|
height: 100%;
|
|
overflow: hidden;
|
|
background: var(--bg-primary);
|
|
color: var(--text-primary);
|
|
font-family: 'Inter', system-ui, sans-serif;
|
|
}
|
|
|
|
::selection {
|
|
background: var(--selection-bg);
|
|
color: var(--selection-color);
|
|
}
|
|
|
|
::-webkit-scrollbar {
|
|
width: 6px;
|
|
}
|
|
|
|
::-webkit-scrollbar-track {
|
|
background: transparent;
|
|
}
|
|
|
|
::-webkit-scrollbar-thumb {
|
|
background: var(--scrollbar-thumb);
|
|
border-radius: 3px;
|
|
}
|
|
|
|
::-webkit-scrollbar-thumb:hover {
|
|
background: var(--scrollbar-hover);
|
|
}
|
|
|
|
@layer utilities {
|
|
.glass {
|
|
background: var(--glass-bg);
|
|
backdrop-filter: blur(24px);
|
|
-webkit-backdrop-filter: blur(24px);
|
|
border: 1px solid var(--glass-border);
|
|
}
|
|
|
|
.glass-hover:hover {
|
|
background: var(--glass-hover);
|
|
}
|
|
|
|
.gradient-text {
|
|
background: linear-gradient(135deg, var(--accent-indigo), var(--accent-purple), var(--accent-blue));
|
|
-webkit-background-clip: text;
|
|
-webkit-text-fill-color: transparent;
|
|
background-clip: text;
|
|
}
|
|
|
|
.text-shadow-glow {
|
|
text-shadow: 0 0 40px rgba(99, 102, 241, 0.3);
|
|
}
|
|
}
|
|
|
|
/* 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;
|
|
}
|
|
|
|
.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;
|
|
}
|