DistractIQ / src /index.css
github-actions
Initial clean deploy
7ff860b
Raw
History Blame Contribute Delete
3.97 kB
@import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap');
@tailwind base;
@tailwind components;
@tailwind utilities;
/* DistractIQ — Cobalt + Glassmorphism design system. All colors HSL. */
@layer base {
:root {
/* Cobalt palette */
--background: 222 47% 8%;
--background-deep: 222 60% 5%;
--foreground: 210 40% 96%;
--card: 222 40% 12%;
--card-foreground: 210 40% 96%;
--glass: 222 50% 14%;
--popover: 222 47% 11%;
--popover-foreground: 210 40% 96%;
/* Emerald primary (the IQ glow) */
--primary: 158 84% 52%;
--primary-foreground: 222 47% 8%;
--primary-glow: 158 90% 60%;
--secondary: 222 32% 18%;
--secondary-foreground: 210 40% 96%;
--muted: 222 30% 16%;
--muted-foreground: 215 20% 70%;
--accent: 199 89% 58%;
--accent-foreground: 222 47% 8%;
--warning: 38 95% 60%;
--danger: 0 84% 65%;
--success: 158 84% 52%;
--destructive: 0 84% 60%;
--destructive-foreground: 210 40% 96%;
--border: 222 30% 22%;
--input: 222 30% 18%;
--ring: 158 84% 52%;
--radius: 1rem;
/* Gradients */
--gradient-cobalt: radial-gradient(ellipse at top, hsl(222 60% 18%) 0%, hsl(222 47% 8%) 60%);
--gradient-emerald: linear-gradient(135deg, hsl(158 84% 52%) 0%, hsl(180 80% 50%) 100%);
--gradient-glass: linear-gradient(135deg, hsl(222 50% 18% / 0.6) 0%, hsl(222 40% 12% / 0.4) 100%);
--gradient-danger: linear-gradient(135deg, hsl(0 84% 60%), hsl(28 90% 55%));
--gradient-aurora: conic-gradient(from 180deg at 50% 50%, hsl(158 84% 52% / 0.15), hsl(199 89% 58% / 0.1), hsl(280 70% 60% / 0.08), hsl(158 84% 52% / 0.15));
/* Shadows */
--shadow-glass: 0 8px 32px 0 hsl(222 60% 4% / 0.5), inset 0 1px 0 0 hsl(210 40% 96% / 0.06);
--shadow-glow: 0 0 40px hsl(158 84% 52% / 0.35);
--shadow-elevated: 0 20px 60px -10px hsl(222 80% 2% / 0.8);
/* Motion */
--ease-out-soft: cubic-bezier(0.22, 1, 0.36, 1);
}
}
@layer base {
* {
@apply border-border;
}
html, body, #root {
@apply min-h-screen;
}
body {
@apply bg-background text-foreground font-sans antialiased;
background: var(--gradient-cobalt);
background-attachment: fixed;
font-feature-settings: "ss01", "cv11";
}
h1, h2, h3, h4 {
@apply font-display tracking-tight;
}
/* Aurora glow ambient */
body::before {
content: "";
position: fixed;
inset: -20%;
background: var(--gradient-aurora);
filter: blur(120px);
opacity: 0.45;
z-index: -1;
pointer-events: none;
animation: aurora-drift 30s linear infinite;
}
@keyframes aurora-drift {
from { transform: rotate(0deg); }
to { transform: rotate(360deg); }
}
}
@layer components {
.glass {
background: var(--gradient-glass);
backdrop-filter: blur(20px) saturate(140%);
-webkit-backdrop-filter: blur(20px) saturate(140%);
border: 1px solid hsl(210 40% 96% / 0.08);
box-shadow: var(--shadow-glass);
}
.glass-strong {
background: hsl(222 45% 14% / 0.75);
backdrop-filter: blur(24px) saturate(160%);
-webkit-backdrop-filter: blur(24px) saturate(160%);
border: 1px solid hsl(210 40% 96% / 0.1);
box-shadow: var(--shadow-elevated);
}
.text-gradient-emerald {
background: var(--gradient-emerald);
-webkit-background-clip: text;
background-clip: text;
color: transparent;
}
.glow-emerald {
box-shadow: var(--shadow-glow);
}
.ring-divider {
background: linear-gradient(90deg, transparent, hsl(210 40% 96% / 0.15), transparent);
height: 1px;
}
}
/* Scrollbar */
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: hsl(222 40% 22%); border-radius: 6px; }
::-webkit-scrollbar-thumb:hover { background: hsl(158 84% 42%); }