NEXUS-AI / nexus /client /src /index.css
Mati83moni's picture
🧠 Deploy NEXUS AI v1.0 — HF Inference powered
f43f811 verified
Raw
History Blame Contribute Delete
5.88 kB
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap');
@tailwind base;
@tailwind components;
@tailwind utilities;
@layer base {
:root {
--background: 0 0% 100%;
--foreground: 222 47% 11%;
--card: 0 0% 100%;
--card-foreground: 222 47% 11%;
--popover: 0 0% 100%;
--popover-foreground: 222 47% 11%;
--primary: 239 84% 67%;
--primary-foreground: 0 0% 100%;
--secondary: 220 14% 96%;
--secondary-foreground: 222 47% 11%;
--muted: 220 14% 96%;
--muted-foreground: 220 9% 46%;
--accent: 220 14% 96%;
--accent-foreground: 222 47% 11%;
--destructive: 0 84% 60%;
--destructive-foreground: 0 0% 100%;
--border: 220 13% 91%;
--input: 220 13% 91%;
--ring: 239 84% 67%;
--radius: 0.5rem;
--chart-1: 239 84% 67%;
--chart-2: 38 92% 50%;
--chart-3: 142 76% 36%;
--chart-4: 199 89% 48%;
--chart-5: 0 84% 60%;
--card-border: 220 13% 91%;
--popover-border: 220 13% 91%;
--primary-border: 239 84% 67%;
--secondary-border: 220 14% 89%;
--muted-border: 220 13% 91%;
--accent-border: 220 13% 91%;
--destructive-border: 0 84% 60%;
--sidebar: 222 47% 6%;
--sidebar-foreground: 220 9% 70%;
--sidebar-primary: 239 84% 67%;
--sidebar-primary-foreground: 0 0% 100%;
--sidebar-accent: 222 47% 10%;
--sidebar-accent-foreground: 0 0% 100%;
--sidebar-border: 222 47% 12%;
--sidebar-ring: 239 84% 67%;
--font-sans: 'Inter', system-ui, sans-serif;
--font-mono: 'JetBrains Mono', 'Fira Code', monospace;
--font-serif: Georgia, serif;
--sidebar-bg: 222 47% 6%;
--sidebar-hover: 222 47% 10%;
--sidebar-active: 239 84% 67%;
--sidebar-text: 220 9% 70%;
--sidebar-text-active: 0 0% 100%;
--success: 142 76% 36%;
--warning: 38 92% 50%;
--info: 199 89% 48%;
}
.dark {
--background: 222 47% 8%;
--foreground: 210 40% 98%;
--card: 222 47% 11%;
--card-foreground: 210 40% 98%;
--popover: 222 47% 11%;
--popover-foreground: 210 40% 98%;
--primary: 239 84% 67%;
--primary-foreground: 0 0% 100%;
--secondary: 222 47% 15%;
--secondary-foreground: 210 40% 98%;
--muted: 222 47% 15%;
--muted-foreground: 215 20% 65%;
--accent: 222 47% 15%;
--accent-foreground: 210 40% 98%;
--destructive: 0 84% 60%;
--destructive-foreground: 0 0% 100%;
--border: 222 47% 18%;
--input: 222 47% 18%;
--ring: 239 84% 67%;
--sidebar-bg: 222 47% 4%;
--sidebar-hover: 222 47% 8%;
--sidebar-active: 239 84% 67%;
--sidebar-text: 220 9% 60%;
--sidebar-text-active: 0 0% 100%;
--chart-1: 239 84% 67%;
--chart-2: 38 92% 50%;
--chart-3: 142 76% 36%;
--chart-4: 199 89% 48%;
--chart-5: 0 84% 60%;
--card-border: 222 47% 18%;
--popover-border: 222 47% 18%;
--primary-border: 239 84% 67%;
--secondary-border: 222 47% 20%;
--muted-border: 222 47% 18%;
--accent-border: 222 47% 18%;
--destructive-border: 0 84% 60%;
--sidebar: 222 47% 4%;
--sidebar-foreground: 220 9% 60%;
--sidebar-primary: 239 84% 67%;
--sidebar-primary-foreground: 0 0% 100%;
--sidebar-accent: 222 47% 8%;
--sidebar-accent-foreground: 0 0% 100%;
--sidebar-border: 222 47% 10%;
--sidebar-ring: 239 84% 67%;
}
}
@layer base {
* {
@apply border-border;
}
body {
@apply bg-background text-foreground;
font-family: 'Inter', sans-serif;
font-feature-settings: "rlig" 1, "calt" 1;
}
code, pre, .font-mono {
font-family: 'JetBrains Mono', 'Fira Code', monospace;
}
}
/* Sidebar */
.nexus-sidebar {
background: hsl(var(--sidebar-bg));
width: 240px;
min-height: 100vh;
transition: width 0.2s ease;
flex-shrink: 0;
}
.nexus-sidebar.collapsed {
width: 64px;
}
.nexus-nav-item {
display: flex;
align-items: center;
gap: 12px;
padding: 10px 16px;
border-radius: 8px;
color: hsl(var(--sidebar-text));
font-size: 0.875rem;
font-weight: 500;
cursor: pointer;
transition: background 0.15s, color 0.15s;
text-decoration: none;
margin: 2px 8px;
}
.nexus-nav-item:hover {
background: hsl(var(--sidebar-hover));
color: hsl(var(--sidebar-text-active));
}
.nexus-nav-item.active {
background: hsl(var(--primary) / 0.15);
color: hsl(var(--primary));
}
.nexus-nav-item .label {
white-space: nowrap;
overflow: hidden;
}
/* Status badges */
.status-connected { @apply bg-green-100 text-green-800 dark:bg-green-900/30 dark:text-green-400; }
.status-disconnected { @apply bg-red-100 text-red-800 dark:bg-red-900/30 dark:text-red-400; }
.status-waiting { @apply bg-yellow-100 text-yellow-800 dark:bg-yellow-900/30 dark:text-yellow-400; }
/* Metric card */
.metric-card {
@apply rounded-xl border bg-card p-5 shadow-sm hover:shadow-md transition-shadow;
}
/* Terminal */
.nexus-terminal {
background: #0d1117;
font-family: 'JetBrains Mono', monospace;
font-size: 13px;
color: #7ee787;
padding: 12px;
border-radius: 8px;
overflow-y: auto;
}
/* Scrollbar */
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: hsl(var(--muted-foreground) / 0.3); border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: hsl(var(--muted-foreground) / 0.5); }
/* NEXUS logo mark */
.nexus-logo-ring {
animation: pulse-ring 3s ease-in-out infinite;
}
@keyframes pulse-ring {
0%, 100% { opacity: 0.6; }
50% { opacity: 1; }
}
/* Wizard stepper */
.wizard-step {
@apply flex items-center gap-3 p-4 rounded-lg border transition-all;
}
.wizard-step.active { @apply border-primary bg-primary/5; }
.wizard-step.completed { @apply border-green-500 bg-green-50 dark:bg-green-900/10; }
.wizard-step.pending { @apply border-border opacity-60; }