@import "tailwindcss"; @theme { --color-urban-primary: #0ea5a4; --color-urban-secondary: #f59e0b; --color-urban-cta: #0f172a; --color-urban-bg: #f6f7fb; --color-urban-text: #0f172a; --color-slate-50: #f8fafc; --color-slate-100: #f1f5f9; --color-slate-200: #e2e8f0; --color-slate-300: #cbd5e1; --color-slate-400: #94a3b8; --color-slate-500: #64748b; --color-slate-600: #475569; --color-slate-700: #334155; --color-slate-800: #1e293b; --color-slate-900: #0f172a; --color-slate-950: #020617; --font-fira-code: "Fira Code", monospace; --font-fira-sans: "Fira Sans", sans-serif; --shadow-urban-sm: 0 1px 2px rgba(0, 0, 0, 0.05); --shadow-urban-md: 0 4px 6px rgba(0, 0, 0, 0.1); --shadow-urban-lg: 0 10px 15px rgba(0, 0, 0, 0.1); --shadow-urban-xl: 0 20px 25px rgba(0, 0, 0, 0.15); } :root { --background: var(--color-urban-bg); --foreground: var(--color-urban-text); --primary: var(--color-urban-primary); --secondary: var(--color-urban-secondary); --cta: var(--color-urban-cta); } body { background: radial-gradient( 1200px 600px at 10% -10%, rgba(14, 165, 164, 0.18), transparent 60% ), radial-gradient( 1000px 500px at 90% -20%, rgba(245, 158, 11, 0.18), transparent 55% ), radial-gradient( 800px 400px at 50% 100%, rgba(59, 130, 246, 0.12), transparent 55% ), var(--background); color: var(--foreground); font-family: var(--font-fira-sans); } h1, h2, h3, h4, h5, h6 { font-family: var(--font-fira-code); } input, select, textarea { border-width: 1px; border-color: var(--color-slate-300); outline: none; font-family: var(--font-fira-sans); border-radius: 8px; padding: 12px 16px; transition: border-color 0.2s; } input:focus, select:focus, textarea:focus { border-color: var(--primary); box-shadow: 0 0 0 3px rgba(14, 165, 164, 0.12); } ::selection { background: rgba(14, 165, 164, 0.2); color: #0f172a; } .bg-mesh { background-image: radial-gradient( circle at 20% 20%, rgba(14, 165, 164, 0.2), transparent 45% ), radial-gradient( circle at 80% 10%, rgba(245, 158, 11, 0.18), transparent 45% ), radial-gradient( circle at 30% 80%, rgba(59, 130, 246, 0.15), transparent 45% ); } .bg-grid { background-image: linear-gradient(rgba(15, 23, 42, 0.04) 1px, transparent 1px), linear-gradient(90deg, rgba(15, 23, 42, 0.04) 1px, transparent 1px); background-size: 32px 32px; } .glass-panel { background: rgba(255, 255, 255, 0.75); backdrop-filter: blur(18px); border: 1px solid rgba(148, 163, 184, 0.25); } .fade-up { animation: fadeUp 0.7s ease-out both; } .float-slow { animation: floatSlow 6s ease-in-out infinite; } @keyframes fadeUp { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: translateY(0); } } @keyframes floatSlow { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-10px); } }