/* Claude Desktop — Design-System (Phase 9) * * Single Source of Truth fuer Farben, Typografie, Spacing, Radius. * Jede Komponente nutzt ausschliesslich diese Variablen — keine * hardgecodeten Hex-Werte, keine Inline-Padding-Pixelwerte. * * Aufbau: * 1. Farb-Palette (4 Graustufen + 1 Akzent + 4 Status) * 2. Typografie (1 Sans + 1 Mono, 5 Schriftgroessen) * 3. Spacing (4-Punkt-Grid, 6 Stufen) * 4. Border-Radius (2 Stufen) * 5. Schatten & Animationen * 6. Reset + Basis */ :root { /* === 1. Farben (Dark, Default) ============================== */ /* Grautoene */ --bg-primary: #1a1a1a; /* Editor / Hauptbereich */ --bg-secondary: #242424; /* Sidebar / Panels */ --bg-tertiary: #2d2d2d; /* Hover, Card-BG, Selected */ --bg-input: #1f1f1f; /* Input-Felder */ --bg-hover: #2a2a2a; /* dezenter Hover-State */ --bg-selected: #094771; /* aktive Auswahl in Listen */ /* Borders */ --border: #3e3e42; /* Standard-Trenner */ --border-strong: #525257; /* Aktive / Focus */ /* Text */ --text-primary: #e0e0e0; --text-secondary: #9a9a9a; --text-disabled: #5a5a5a; --text-heading: #f0f0f0; /* Akzent (1 Farbe) */ --accent: #007acc; --accent-hover: #1177bb; --accent-fg: #ffffff; --focus: #007fd4; --link: #3794ff; /* Status (4 Farben) */ --status-success: #6a9955; --status-warning: #f5a623; --status-error: #f48771; --status-info: #569cd6; /* Diff-Farben (Code-Kontext) */ --diff-added-bg: rgba(106, 153, 85, 0.18); --diff-removed-bg: rgba(244, 135, 113, 0.18); --diff-added-fg: #6a9955; --diff-removed-fg: #f48771; /* Aliase fuer Altcode (deprecated, werden ueber Phase 9-12 entfernt) */ --success: var(--status-success); --warning: var(--status-warning); --error: var(--status-error); /* === 2. Typografie ========================================= */ --font-sans: 'Inter', -apple-system, 'Segoe UI', 'Roboto', 'Noto Sans', system-ui, sans-serif; --font-mono: 'JetBrains Mono', 'Hack', 'Fira Code', 'Consolas', monospace; --fs-xs: 11px; /* Metadaten, Timestamps, Status-Bar */ --fs-sm: 12px; /* Sidebar, sekundaere UI */ --fs-md: 13px; /* Body, Chat, Code */ --fs-lg: 14px; /* UI-Header */ --fs-xl: 16px; /* Dialog-Titel */ --fw-normal: 400; --fw-medium: 500; --fw-semi: 600; --lh-tight: 1.4; --lh-normal: 1.5; --lh-code: 1.6; /* === 3. Spacing (4-Punkt-Grid) ============================= */ --sp-1: 4px; --sp-2: 8px; --sp-3: 12px; --sp-4: 16px; --sp-5: 24px; --sp-6: 32px; /* Legacy-Aliase (werden in Komponenten-Pass entfernt) */ --spacing-xs: var(--sp-1); --spacing-sm: var(--sp-2); --spacing-md: var(--sp-4); --spacing-lg: var(--sp-5); --spacing-xl: var(--sp-6); /* === 4. Border-Radius (max. 2 Werte) ======================= */ --r-sm: 3px; /* Inputs, Buttons */ --r-md: 6px; /* Karten, Modals, Drawer */ /* Legacy-Aliase */ --radius-sm: var(--r-sm); --radius-md: var(--r-md); --radius-lg: var(--r-md); /* === 5. Schatten & Animationen ============================= */ --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.3); --shadow-md: 0 4px 8px rgba(0, 0, 0, 0.4); --shadow-lg: 0 8px 16px rgba(0, 0, 0, 0.5); --ease: cubic-bezier(0.4, 0, 0.2, 1); --dur-fast: 120ms; --dur-base: 200ms; /* === Layout-Konstanten ===================================== */ --titlebar-height: 36px; --statusbar-height: 22px; --sidebar-width: 240px; --sidebar-collapsed: 48px; --drawer-width: 360px; --tabbar-height: 32px; } /* === 6. Reset + Basis ========================================= */ *, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; } html, body { height: 100%; font-family: var(--font-sans); font-size: var(--fs-md); font-weight: var(--fw-normal); line-height: var(--lh-normal); background: var(--bg-primary); color: var(--text-primary); overflow: hidden; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } button { font-family: inherit; font-size: inherit; cursor: pointer; border: none; background: none; color: inherit; } input, textarea, select { font-family: inherit; font-size: var(--fs-md); color: var(--text-primary); background: var(--bg-input); border: 1px solid var(--border); border-radius: var(--r-sm); padding: var(--sp-2) var(--sp-3); transition: border-color var(--dur-fast) var(--ease); } /* WebKitGTK ignoriert haeufig CSS-Background bei nativen