| @import url('https://fonts.googleapis.com/css2?family=Instrument+Serif:ital@0;1&family=Barlow:wght@300;400;500;600&display=swap'); |
| @import url('https://db.onlinewebfonts.com/c/e55e9079ee863276569c8a68d776ef04?family=Futura+Md+BT+Medium'); |
|
|
| @tailwind base; |
| @tailwind components; |
| @tailwind utilities; |
|
|
| @layer base { |
| body, html { |
| font-family: 'Futura Md BT Medium', system-ui, -apple-system, sans-serif !important; |
| } |
| } |
|
|
| @layer base { |
| :root { |
| color-scheme: light; |
| --background: #fafafc; |
| --foreground: #0f172a; |
| --panel: #f1f5f9; |
| --card: #ffffff; |
| --card-foreground: #0f172a; |
| --popover: #ffffff; |
| --popover-foreground: #0f172a; |
| --primary: #2563eb; |
| --primary-foreground: #ffffff; |
| --secondary: #4f46e5; |
| --secondary-foreground: #ffffff; |
| --muted: #f8fafc; |
| --muted-foreground: #64748b; |
| --accent: #2563eb; |
| --accent-foreground: #ffffff; |
| --glow: #3b82f6; |
| --destructive: #ef4444; |
| --border: rgba(15, 23, 42, 0.08); |
| --input: rgba(15, 23, 42, 0.06); |
| --ring: #2563eb; |
| --chart-1: #2563eb; |
| --chart-2: #3b82f6; |
| --chart-3: #60a5fa; |
| --chart-4: #4f46e5; |
| --chart-5: #6366f1; |
| --radius: 0.875rem; |
|
|
| |
| --nexus-bg: 250 250 252; |
| --nexus-panel: 241 245 249; |
| --nexus-card: 255 255 255; |
| --nexus-card-opacity: 0.75; |
| --nexus-fg: 15 23 42; |
| --nexus-muted: 100 116 139; |
| --nexus-accent: 37 99 235; |
| --nexus-secondary: 79 70 229; |
| --nexus-border: 226 232 240; |
| --tilt-glow: rgba(37, 99, 235, 0.06); |
| --tilt-shadow: rgba(37, 99, 235, 0.08); |
| --cursor-glow: radial-gradient(circle, rgba(37,99,235,0.06), rgba(96,165,250,0.01) 45%, transparent 70%); |
| } |
|
|
| .dark { |
| color-scheme: dark; |
| --background: #000000; |
| --foreground: #ffffff; |
| --panel: #071326; |
| --card: #071326; |
| --card-foreground: #ffffff; |
| --popover: #071326; |
| --popover-foreground: #ffffff; |
| --primary: #2563eb; |
| --primary-foreground: #ffffff; |
| --secondary: #8b5cf6; |
| --secondary-foreground: #ffffff; |
| --muted: #0b1a30; |
| --muted-foreground: #94a3b8; |
| --accent: #60a5fa; |
| --accent-foreground: #030712; |
| --glow: #22d3ee; |
| --destructive: #f43f5e; |
| --border: rgba(255, 255, 255, 0.08); |
| --input: rgba(255, 255, 255, 0.12); |
| --ring: #2563eb; |
| --chart-1: #2563eb; |
| --chart-2: #60a5fa; |
| --chart-3: #22d3ee; |
| --chart-4: #8b5cf6; |
| --chart-5: #38bdf8; |
| --radius: 0.875rem; |
|
|
| |
| --nexus-bg: 3 7 18; |
| --nexus-panel: 7 19 38; |
| --nexus-card: 7 19 38; |
| --nexus-card-opacity: 1; |
| --nexus-fg: 255 255 255; |
| --nexus-muted: 148 163 184; |
| --nexus-accent: 96 165 250; |
| --nexus-secondary: 139 92 246; |
| --nexus-border: 30 41 59; |
| --tilt-glow: rgba(34, 211, 238, 0.15); |
| --tilt-shadow: rgba(34, 211, 238, 0.25); |
| --cursor-glow: radial-gradient(circle, rgba(37,99,235,0.15), rgba(34,211,238,0.04) 45%, transparent 70%); |
| } |
| } |
|
|
| @layer base { |
| * { |
| @apply border-border; |
| } |
|
|
| html { |
| -webkit-font-smoothing: antialiased; |
| -moz-osx-font-smoothing: grayscale; |
| text-rendering: optimizeLegibility; |
| scroll-behavior: auto; |
| |
| background: transparent; |
| } |
|
|
| body { |
| |
| background-color: #000000; |
| background-image: none; |
| color: white; |
| font-feature-settings: 'ss01', 'cv11', 'kern'; |
| } |
|
|
| html.theme-transition, |
| html.theme-transition *, |
| html.theme-transition *::before, |
| html.theme-transition *::after { |
| transition: |
| background-color 0.35s ease, |
| border-color 0.35s ease, |
| color 0.25s ease, |
| fill 0.25s ease, |
| stroke 0.25s ease !important; |
| } |
| } |
|
|
| @layer components { |
| .glass { |
| backdrop-filter: blur(28px); |
| background: rgba(255, 255, 255, 0.5); |
| border: 1px solid rgba(15, 23, 42, 0.08); |
| box-shadow: 0 30px 80px rgba(0, 0, 0, 0.12); |
| } |
|
|
| .dark .glass { |
| background: rgba(255, 255, 255, 0.08); |
| border: 1px solid rgba(255, 255, 255, 0.12); |
| box-shadow: 0 30px 80px rgba(0, 0, 0, 0.35); |
| } |
|
|
| .glass-panel { |
| @apply rounded-2xl; |
| backdrop-filter: blur(28px); |
| background: rgba(255, 255, 255, 0.5); |
| border: 1px solid rgba(15, 23, 42, 0.08); |
| box-shadow: 0 30px 80px rgba(0, 0, 0, 0.12); |
| } |
|
|
| .dark .glass-panel { |
| background: rgba(255, 255, 255, 0.08); |
| border: 1px solid rgba(255, 255, 255, 0.12); |
| box-shadow: 0 30px 80px rgba(0, 0, 0, 0.35); |
| } |
|
|
| .surface-elevated { |
| @apply glass-panel rounded-3xl; |
| } |
|
|
| .liquid-glass-strong { |
| background: rgba(255, 255, 255, 0.01); |
| background-blend-mode: luminosity; |
| backdrop-filter: blur(50px); |
| -webkit-backdrop-filter: blur(50px); |
| border: none; |
| box-shadow: 4px 4px 4px rgba(0, 0, 0, 0.05), |
| inset 0 1px 1px rgba(255, 255, 255, 0.15); |
| position: relative; |
| overflow: hidden; |
| } |
|
|
| .liquid-glass-strong::before { |
| content: ''; |
| position: absolute; |
| inset: 0; |
| border-radius: inherit; |
| padding: 1.4px; |
| background: linear-gradient( |
| 180deg, |
| rgba(255, 255, 255, 0.5) 0%, |
| rgba(255, 255, 255, 0.2) 20%, |
| rgba(255, 255, 255, 0) 40%, |
| rgba(255, 255, 255, 0) 60%, |
| rgba(255, 255, 255, 0.2) 80%, |
| rgba(255, 255, 255, 0.5) 100% |
| ); |
| -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0); |
| -webkit-mask-composite: xor; |
| mask-composite: exclude; |
| pointer-events: none; |
| } |
|
|
| .font-heading { |
| font-family: 'Instrument Serif', serif; |
| } |
|
|
| .font-body { |
| font-family: 'Barlow', sans-serif; |
| } |
|
|
| .gradient-text { |
| @apply bg-gradient-to-r from-nexus-accent to-nexus-secondary bg-clip-text text-transparent; |
| } |
|
|
| .gradient-text-cool { |
| @apply bg-gradient-to-r from-nexus-accent via-blue-500 to-nexus-secondary bg-clip-text text-transparent; |
| } |
|
|
| .grid-bg { |
| background-image: |
| linear-gradient(to right, rgba(148, 163, 184, 0.08) 1px, transparent 1px), |
| linear-gradient(to bottom, rgba(148, 163, 184, 0.08) 1px, transparent 1px); |
| background-size: 44px 44px; |
| mask-image: radial-gradient(ellipse at center, black 30%, transparent 75%); |
| -webkit-mask-image: radial-gradient(ellipse at center, black 30%, transparent 75%); |
| } |
|
|
| .noise-overlay { |
| position: fixed; |
| inset: 0; |
| z-index: 0; |
| pointer-events: none; |
| opacity: 0.03; |
| background-image: url("data:image/svg+xml;utf8,<svg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>"); |
| mix-blend-mode: overlay; |
| } |
|
|
| .dark .noise-overlay { |
| opacity: 0.05; |
| } |
|
|
| .text-balance { |
| text-wrap: balance; |
| } |
|
|
| .text-pretty { |
| text-wrap: pretty; |
| } |
| } |
|
|
| @media (prefers-reduced-motion: reduce) { |
| html { |
| scroll-behavior: auto; |
| } |
|
|
| *, |
| *::before, |
| *::after { |
| animation-duration: 0.01ms !important; |
| animation-iteration-count: 1 !important; |
| transition-duration: 0.01ms !important; |
| } |
| } |
|
|
| ::-webkit-scrollbar { |
| width: 10px; |
| height: 10px; |
| } |
|
|
| ::-webkit-scrollbar-track { |
| background: transparent; |
| } |
|
|
| ::-webkit-scrollbar-thumb { |
| background: rgba(37, 99, 235, 0.28); |
| border-radius: 9999px; |
| border: 2px solid transparent; |
| background-clip: padding-box; |
| } |
|
|
| .dark ::-webkit-scrollbar-thumb { |
| background: rgba(96, 165, 250, 0.35); |
| background-clip: padding-box; |
| } |
|
|
| ::selection { |
| background: rgba(37, 99, 235, 0.18); |
| color: inherit; |
| } |
|
|
| .dark ::selection { |
| background: rgba(96, 165, 250, 0.28); |
| } |
|
|
| :focus-visible { |
| outline: 2px solid rgba(37, 99, 235, 0.55); |
| outline-offset: 2px; |
| border-radius: 0.4rem; |
| } |
|
|
| .no-scrollbar::-webkit-scrollbar { |
| display: none; |
| } |
|
|
| .no-scrollbar { |
| -ms-overflow-style: none; |
| scrollbar-width: none; |
| } |
|
|
| @keyframes dash-shift { |
| to { |
| background-position: 200% 0, -200% 0, 0 0, 0 0; |
| } |
| } |
|
|
| .dash-animated { |
| background-image: |
| linear-gradient(90deg, rgba(37, 99, 235, 0.6) 50%, transparent 50%), |
| linear-gradient(90deg, rgba(124, 58, 237, 0.6) 50%, transparent 50%), |
| linear-gradient(0deg, rgba(37, 99, 235, 0.6) 50%, transparent 50%), |
| linear-gradient(0deg, rgba(124, 58, 237, 0.6) 50%, transparent 50%); |
| background-repeat: repeat-x, repeat-x, repeat-y, repeat-y; |
| background-size: 12px 2px, 12px 2px, 2px 12px, 2px 12px; |
| background-position: 0 0, 0 100%, 0 0, 100% 0; |
| animation: dash-shift 6s linear infinite; |
| } |
|
|
| @keyframes count-up { |
| from { |
| transform: translateY(8px); |
| opacity: 0; |
| } |
| to { |
| transform: translateY(0); |
| opacity: 1; |
| } |
| } |
|
|
| .count-anim { |
| animation: count-up 0.8s cubic-bezier(0.16, 1, 0.3, 1) both; |
| } |
|
|
| @layer utilities { |
| .text-glow { |
| text-shadow: 0 0 40px rgba(96, 165, 250, 0.45); |
| } |
| .glass { |
| background: linear-gradient( |
| 160deg, |
| rgba(255, 255, 255, 0.06), |
| rgba(255, 255, 255, 0.015) |
| ); |
| backdrop-filter: blur(16px); |
| -webkit-backdrop-filter: blur(16px); |
| border: 1px solid rgba(255, 255, 255, 0.08); |
| } |
| .glass-strong { |
| background: linear-gradient( |
| 160deg, |
| rgba(13, 26, 48, 0.85), |
| rgba(7, 19, 38, 0.6) |
| ); |
| backdrop-filter: blur(24px); |
| -webkit-backdrop-filter: blur(24px); |
| border: 1px solid rgba(255, 255, 255, 0.08); |
| } |
| .grain { |
| background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"); |
| } |
| .mask-fade-y { |
| -webkit-mask-image: linear-gradient( |
| to bottom, |
| transparent, |
| black 12%, |
| black 88%, |
| transparent |
| ); |
| mask-image: linear-gradient( |
| to bottom, |
| transparent, |
| black 12%, |
| black 88%, |
| transparent |
| ); |
| } |
| .mask-fade-x { |
| -webkit-mask-image: linear-gradient( |
| to right, |
| transparent, |
| black 8%, |
| black 92%, |
| transparent |
| ); |
| mask-image: linear-gradient( |
| to right, |
| transparent, |
| black 8%, |
| black 92%, |
| transparent |
| ); |
| } |
| } |
|
|
| @keyframes aurora-drift { |
| 0%, |
| 100% { |
| transform: translate3d(-8%, -4%, 0) scale(1.1); |
| opacity: 0.55; |
| } |
| 50% { |
| transform: translate3d(8%, 6%, 0) scale(1.25); |
| opacity: 0.8; |
| } |
| } |
|
|
| @keyframes float-slow { |
| 0%, |
| 100% { |
| transform: translateY(0); |
| } |
| 50% { |
| transform: translateY(-14px); |
| } |
| } |
|
|
| @keyframes pulse-ring { |
| 0% { |
| transform: scale(0.85); |
| opacity: 0.7; |
| } |
| 100% { |
| transform: scale(1.6); |
| opacity: 0; |
| } |
| } |
|
|
| @keyframes marquee { |
| from { |
| transform: translateX(0); |
| } |
| to { |
| transform: translateX(-50%); |
| } |
| } |
|
|
| @media (prefers-reduced-motion: reduce) { |
| * { |
| animation-duration: 0.001ms !important; |
| animation-iteration-count: 1 !important; |
| transition-duration: 0.001ms !important; |
| } |
| } |
|
|