@import "tailwindcss"; @source "../node_modules/streamdown/dist/*.js"; @theme { --color-bg: #050814; --color-bg-soft: rgba(8, 13, 25, 0.72); --color-panel: rgba(10, 15, 28, 0.68); --color-panel-strong: rgba(255, 255, 255, 0.12); --color-line: rgba(255, 255, 255, 0.12); --color-line-strong: rgba(255, 255, 255, 0.22); --color-text: #f3f7ff; --color-text-soft: rgba(243, 247, 255, 0.72); --color-text-muted: rgba(243, 247, 255, 0.54); --color-accent: #9de0ff; --color-accent-strong: #d7f4ff; --font-body: "Sohne", sans-serif; --font-mono: "JetBrains Mono", monospace; --shadow-ambient: 0 28px 80px rgba(2, 6, 17, 0.35); --animate-fade-in: fade-in 0.5s ease-out both; } @font-face { font-family: "Sohne"; font-style: normal; font-weight: 400; src: url("/fonts/Söhne/Söhne-Buch.otf") format("opentype"); } @font-face { font-family: "Sohne"; font-style: normal; font-weight: 300; src: url("/fonts/Söhne/Söhne-Leicht.otf") format("opentype"); } @font-face { font-family: "Sohne"; font-style: normal; font-weight: 700; src: url("/fonts/Söhne/Söhne-Kräftig.otf") format("opentype"); } @font-face { font-family: "JetBrains Mono"; font-style: normal; font-weight: 100 800; src: url("/fonts/JetBrains/JetBrainsMono-VariableFont_wght.ttf") format("truetype"); } @layer base { * { box-sizing: border-box; } html, body, #root { min-height: 100%; height: 100%; } html { background: var(--color-bg); } body { margin: 0; background: var(--color-bg); color: var(--color-text); font-family: var(--font-body); font-synthesis: none; overflow: hidden; text-rendering: optimizeLegibility; -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; } button, input, textarea { color: inherit; font: inherit; } button { border: 0; cursor: pointer; } * { scrollbar-width: thin; scrollbar-color: transparent transparent; } *:hover { scrollbar-color: rgba(255, 255, 255, 0.15) transparent; } ::-webkit-scrollbar { width: 6px; height: 6px; } ::-webkit-scrollbar-track { background: transparent; } ::-webkit-scrollbar-thumb { background: transparent; border-radius: 3px; } *:hover::-webkit-scrollbar-thumb { background: rgba(255, 255, 255, 0.15); } *:hover::-webkit-scrollbar-thumb:hover { background: rgba(255, 255, 255, 0.28); } } @keyframes fade-in { from { opacity: 0; } to { opacity: 1; } } .progress-fill { height: 100%; border-radius: inherit; background: linear-gradient(90deg, rgba(128, 222, 255, 0.8), rgba(245, 251, 255, 0.98)); box-shadow: 0 0 40px rgba(156, 228, 255, 0.4); } @keyframes shimmer { 0%, 40% { background-position: -200% center; } 100% { background-position: 200% center; } } .shimmer { background-image: linear-gradient(110deg, currentColor 35%, rgba(255, 255, 255, 0.95) 50%, currentColor 65%); background-size: 200% 100%; background-clip: text; -webkit-background-clip: text; -webkit-text-fill-color: transparent; animation: shimmer 5s ease-in-out infinite; }