/* Modern Reset & Base */ :root { --primary-color: #6366f1; /* Indigo */ --secondary-color: #a855f7; /* Purple */ --bg-dark: #0f172a; --text-main: #1e293b; } body { font-family: 'Inter', sans-serif; background-color: #f1f5f9; color: var(--text-main); overflow-x: hidden; } /* Animated Background Shapes */ .bg-shape { position: fixed; border-radius: 50%; filter: blur(80px); z-index: -1; opacity: 0.6; animation: float 10s infinite ease-in-out; } .shape-1 { top: -10%; left: -10%; width: 600px; height: 600px; background: linear-gradient(to right, var(--primary-color), var(--secondary-color)); } .shape-2 { bottom: -10%; right: -10%; width: 500px; height: 500px; background: linear-gradient(to left, #3b82f6, #06b6d4); animation-delay: -5s; } @keyframes float { 0%, 100% { transform: translate(0, 0); } 50% { transform: translate(30px, 20px); } } /* Hero Card */ .hero-card { background: rgba(255, 255, 255, 0.85); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); border: 1px solid rgba(255, 255, 255, 0.5); border-radius: 24px; padding: 3rem; width: 100%; max-width: 650px; box-shadow: 0 20px 40px -10px rgba(0, 0, 0, 0.1); } .text-gradient { background: linear-gradient(135deg, var(--primary-color), var(--secondary-color)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; } /* Input Styling */ .main-input-group { border-radius: 16px; overflow: hidden; transition: transform 0.2s, box-shadow 0.2s; } .main-input-group:focus-within { transform: translateY(-2px); box-shadow: 0 10px 25px -5px rgba(99, 102, 241, 0.3) !important; } .main-input-group input { font-size: 1.1rem; background: white; } .main-input-group input:focus { box-shadow: none; background: white; } #submit-button { background: linear-gradient(135deg, var(--primary-color), var(--secondary-color)); border: none; transition: filter 0.2s; } #submit-button:hover { filter: brightness(110%); } /* Options Animation */ .options-wrapper { overflow: hidden; max-height: 0; opacity: 0; transition: max-height 0.5s ease-in-out, opacity 0.4s ease-in-out; } .options-wrapper.show { max-height: 500px; /* Groß genug */ opacity: 1; } .animate-options { animation: fadeIn 0.5s ease; } /* Glass Button */ .btn-white-glass { background: rgba(255, 255, 255, 0.5); border: 1px solid rgba(255, 255, 255, 0.2); backdrop-filter: blur(5px); color: var(--text-main); transition: all 0.2s; } .btn-white-glass:hover { background: white; transform: translateY(-2px); box-shadow: 0 5px 15px rgba(0,0,0,0.05); } /* Progress Bar */ .bg-gradient-primary { background: linear-gradient(90deg, var(--primary-color), #06b6d4); background-size: 200% 100%; animation: gradientMove 2s linear infinite; } @keyframes gradientMove { 0% { background-position: 100% 0; } 100% { background-position: -100% 0; } } .animate-pulse { animation: pulse 1.5s infinite; } @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } } /* Helpers */ .hover-lift:hover { transform: translateY(-3px); } .fade-in-up { animation: fadeInUp 0.8s ease-out; } @keyframes fadeInUp { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } } .extra-small { font-size: 0.75rem; } /* Context Menu */ .context-menu { z-index: 9999; min-width: 150px; border-radius: 8px; overflow: hidden; border: none; } .context-menu .list-group-item { cursor: pointer; font-size: 0.9rem; border: none; } .context-menu .list-group-item:hover { background-color: #f3f4f6; }