@import"https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&display=swap";:root{--font-main: "Outfit", sans-serif;--color-bg: #0f172a;--color-surface: #1e293b;--color-surface-hover: #334155;--color-primary: #6366f1;--color-primary-glow: rgba(99, 102, 241, .5);--color-secondary: #ec4899;--color-text: #f8fafc;--color-text-muted: #94a3b8;--color-success: #22c55e;--color-danger: #ef4444;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 20px;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--shadow-glow: 0 0 20px var(--color-primary-glow)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-main);background-color:var(--color-bg);color:var(--color-text);line-height:1.5;-webkit-font-smoothing:antialiased;min-height:100vh}a{text-decoration:none;color:inherit}button{font-family:inherit;cursor:pointer;border:none;background:none}.container{max-width:1200px;margin:0 auto;padding:0 20px}.glass-panel{background:var(--glass-bg, rgba(30, 41, 59, .7));backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--color-border, rgba(255, 255, 255, .1));border-radius:var(--radius-lg);box-shadow:var(--shadow-card, none)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 24px;border-radius:var(--radius-md);font-weight:600;transition:all .2s ease;gap:8px}.btn-primary{background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));color:#fff;box-shadow:var(--shadow-glow)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 0 30px var(--color-primary-glow)}.btn-secondary{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border, rgba(255, 255, 255, .1))}.btn-secondary:hover{background:var(--color-surface-hover)}.title-gradient{background:linear-gradient(to right,var(--title-gradient-from, #fff),var(--title-gradient-to, #94a3b8));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-fade-in{animation:fadeIn .5s ease-out forwards}.spin{animation:spin 1s linear infinite}.grid-layout{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px}
