/** @type {import('tailwindcss').Config} */ module.exports = { content: [ "./templates/**/*.html", "./static/js/**/*.js", "./static/css/**/*.css", "./blueprints/**/*.py", "./app.py", "./models.py", "./utils/**/*.py" ], darkMode: 'class', theme: { // Reduzierte Farbpalette colors: { transparent: 'transparent', current: 'currentColor', white: '#ffffff', black: '#000000', primary: '#0073ce', 'primary-dark': '#005a9f', gray: { 50: '#fafbfc', 100: '#f3f5f7', 200: '#e5e7eb', 300: '#d1d5db', 400: '#9ca3af', 500: '#6b7280', 600: '#4b5563', 700: '#374151', 800: '#1f2937', 900: '#111827', }, blue: { 500: '#0073ce', 600: '#005a9f', }, green: { 100: '#d1fae5', 600: '#065f46', }, red: { 100: '#fee2e2', 600: '#991b1b', }, }, // Reduzierte Spacing-Skala spacing: { '0': '0', '1': '0.25rem', '2': '0.5rem', '3': '0.75rem', '4': '1rem', '5': '1.25rem', '6': '1.5rem', '8': '2rem', '10': '2.5rem', '12': '3rem', '16': '4rem', '20': '5rem', }, // Reduzierte Font-Größen fontSize: { 'xs': '0.75rem', 'sm': '0.875rem', 'base': '1rem', 'lg': '1.125rem', 'xl': '1.25rem', '2xl': '1.5rem', '3xl': '1.875rem', }, // Minimale Border-Radius borderRadius: { 'none': '0', 'sm': '2px', 'DEFAULT': '6px', 'lg': '8px', 'xl': '12px', 'full': '9999px', }, // Reduzierte Schatten boxShadow: { 'sm': '0 2px 4px rgba(0,0,0,0.05)', 'DEFAULT': '0 2px 4px rgba(0,0,0,0.05)', 'lg': '0 4px 8px rgba(0,0,0,0.1)', }, // Minimale Transitions transitionDuration: { '75': '75ms', '100': '100ms', '150': '150ms', '200': '200ms', }, extend: {} }, // Deaktivierte Utilities für bessere Performance corePlugins: { // Nicht benötigte Features deaktivieren animation: false, // Animationen werden manuell gemacht backdropBlur: false, // Nicht für Kiosk benötigt backdropBrightness: false, backdropContrast: false, backdropFilter: false, backdropGrayscale: false, backdropHueRotate: false, backdropInvert: false, backdropOpacity: false, backdropSaturate: false, backdropSepia: false, blur: false, brightness: false, contrast: false, dropShadow: false, filter: false, grayscale: false, hueRotate: false, invert: false, saturate: false, sepia: false, // Touch-spezifische Features deaktivieren touchAction: false, // Nicht benötigte Layout-Features aspectRatio: false, backdropFilter: false, // Reduzierte Transform-Features scale: false, skew: false, transformOrigin: false, }, // Kiosk-spezifische Plugins deaktivieren plugins: [], // Aggressive Purge-Konfiguration purge: { enabled: true, content: [ './templates/**/*.html', './static/js/**/*.js', ], // Aggressive Purging options: { safelist: [ // Nur essenzielle Klassen behalten 'container', 'flex', 'grid', 'hidden', 'block', 'inline', 'w-full', 'h-full', 'text-center', 'font-bold', 'text-primary', 'bg-white', 'border', 'rounded', 'p-4', 'm-4', 'btn', 'card', 'nav', 'header', 'status-online', 'status-offline', 'status-printing', ], // Dynamische Klassen-Erkennung defaultExtractor: content => content.match(/[\w-/:]+(?