@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&display=swap";:root{--bg-base:#0f1115;--bg-surface:#1a1d24;--bg-surface-elevated:#242830;--text-primary:#f8fafc;--text-secondary:#94a3b8;--text-muted:#64748b;--primary-color:#2597b2;--primary-hover:#2db5d6;--primary-glow:#2597b24d;--danger-color:#ef4444;--success-color:#10b981;--warning-color:#f59e0b;--border-subtle:#ffffff14;--border-strong:#ffffff26;--glass-bg:#1a1d2499;--glass-border:#ffffff0d;--glass-blur:blur(16px);--shadow-sm:0 4px 6px -1px #0000004d;--shadow-md:0 10px 15px -3px #0006;--shadow-glow:0 0 20px var(--primary-glow);--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-normal:.3s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-base);color:var(--text-primary);-webkit-font-smoothing:antialiased;min-height:100vh;font-family:Outfit,sans-serif;line-height:1.5;overflow-x:hidden}.glass-panel{background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);box-shadow:var(--shadow-md);border-radius:16px}.btn-primary{background:linear-gradient(135deg, var(--primary-color), var(--primary-hover));color:#fff;cursor:pointer;transition:all var(--transition-fast);box-shadow:var(--shadow-glow);border:none;border-radius:8px;padding:.6rem 1.2rem;font-family:inherit;font-weight:600}.btn-primary:hover{box-shadow:0 0 25px var(--primary-glow);transform:translateY(-2px)}.btn-secondary{color:var(--text-primary);border:1px solid var(--border-strong);cursor:pointer;transition:all var(--transition-fast);background:0 0;border-radius:8px;padding:.6rem 1.2rem;font-family:inherit;font-weight:500}.btn-secondary:hover{background:var(--bg-surface-elevated);border-color:var(--text-secondary)}.input-field{background:var(--bg-surface);border:1px solid var(--border-subtle);width:100%;color:var(--text-primary);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);border-radius:8px;padding:.8rem 1rem;font-family:inherit;font-size:.95rem}.input-field:focus{border-color:var(--primary-color);box-shadow:0 0 0 2px var(--primary-glow);outline:none}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:.4s ease-out forwards fadeIn}
