// Centralized Design System & Style Tokens for Rippy (Cinematic Cinema OS) export const STATUS_STYLES = { pending: { badge: 'bg-amber-500/15 text-amber-600 dark:text-amber-400 border-amber-500/30', label: 'Wartend', }, processing: { badge: 'bg-sky-500/15 text-sky-600 dark:text-sky-400 border-sky-500/30 animate-pulse', label: 'Rippen', }, transcoding: { badge: 'bg-purple-500/15 text-purple-600 dark:text-purple-400 border-purple-500/30', label: 'Komprimieren', }, canceling: { badge: 'bg-orange-500/15 text-orange-600 dark:text-orange-400 border-orange-500/30', label: 'Wird abgebrochen…', }, completed: { badge: 'bg-emerald-500/15 text-emerald-600 dark:text-emerald-400 border-emerald-500/30', label: 'Fertig', }, failed: { badge: 'bg-rose-500/15 text-rose-600 dark:text-rose-400 border-rose-500/30', label: 'Fehler', }, } as const export const DISC_TYPE_STYLES = { cd: { badge: 'bg-indigo-500/15 text-indigo-600 dark:text-indigo-400 border-indigo-500/30', aura: 'from-indigo-500/20 via-indigo-900/10 to-transparent', glow: 'shadow-[0_0_20px_-5px_rgba(99,102,241,0.2)]', label: 'CD', }, dvd: { badge: 'bg-purple-500/15 text-purple-600 dark:text-purple-400 border-purple-500/30', aura: 'from-purple-500/20 via-purple-900/10 to-transparent', glow: 'shadow-[0_0_20px_-5px_rgba(168,85,247,0.2)]', label: 'DVD', }, bluray: { badge: 'bg-sky-500/15 text-sky-600 dark:text-sky-400 border-sky-500/30', aura: 'from-sky-500/20 via-sky-900/10 to-transparent', glow: 'shadow-[0_0_20px_-5px_rgba(14,165,233,0.2)]', label: 'BLU-RAY', }, uhd: { badge: 'bg-amber-500/20 text-amber-700 dark:text-amber-300 border-amber-500/40 font-semibold shadow-sm shadow-amber-500/20', aura: 'from-amber-500/25 via-amber-900/15 to-transparent', glow: 'shadow-[0_0_25px_-5px_rgba(245,158,11,0.25)]', label: '4K UHD', }, } as const export const LOG_LEVEL_STYLES = { INFO: { color: 'text-sky-600 dark:text-sky-400', bg: 'bg-sky-500/10', border: 'border-sky-500/20', }, WARNING: { color: 'text-amber-600 dark:text-amber-400', bg: 'bg-amber-500/10', border: 'border-amber-500/20', }, ERROR: { color: 'text-rose-600 dark:text-rose-400', bg: 'bg-rose-500/10', border: 'border-rose-500/20', }, DEBUG: { color: 'text-slate-500 dark:text-slate-400', bg: 'bg-slate-500/10', border: 'border-slate-500/20', }, } as const // Encoder-Backends, wie worker/caps.py sie meldet. Hardware wird seit // 25.07.2026 nach FAMILIE unterschieden (nvenc/qsv/vce/vaapi) — vorher landete // eine AMD-Karte unter dem Intel-Namen „vaapi", und AV1 in Hardware war gar // nicht sichtbar, obwohl es die beste Kombination aus Tempo und Größe ist. export const ENCODER_BADGES: Record = { 'cpu-x264': { label: 'H.264 (CPU)', highlight: false }, 'cpu-x265': { label: 'H.265 (CPU)', highlight: false }, 'cpu-av1': { label: 'AV1 (CPU)', highlight: false }, 'nvenc': { label: 'NVENC ⚡ (NVIDIA)', highlight: true }, 'nvenc-av1': { label: 'AV1 · NVENC ⚡', highlight: true }, 'qsv': { label: 'QuickSync ⚡ (Intel)', highlight: true }, 'qsv-av1': { label: 'AV1 · QuickSync ⚡', highlight: true }, 'vce': { label: 'VCE ⚡ (AMD)', highlight: true }, 'vce-av1': { label: 'AV1 · VCE ⚡', highlight: true }, 'vaapi': { label: 'VAAPI ⚡', highlight: true }, 'vaapi-av1': { label: 'AV1 · VAAPI ⚡', highlight: true }, }