Spaces:
Sleeping
Sleeping
Download bioai-platform/frontend/src/app/globals.css from Samad14/bio-nexus-api: direct link, hf CLI and curl.
- Browser
- Download file 13.8 kB
-
https://huggingface.co/spaces/Samad14/bio-nexus-api/resolve/fb8c550baa97630a7ea75c27656d800982f513c5/bioai-platform/frontend/src/app/globals.css
- Command line
-
hf download hf://spaces/Samad14/bio-nexus-api@fb8c550baa97630a7ea75c27656d800982f513c5/bioai-platform/frontend/src/app/globals.css
-
curl -L -o globals.css https://huggingface.co/spaces/Samad14/bio-nexus-api/resolve/fb8c550baa97630a7ea75c27656d800982f513c5/bioai-platform/frontend/src/app/globals.css
13.8 kB
| @tailwind base; | |
| @tailwind components; | |
| @tailwind utilities; | |
| @import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@300;400;500;600;700&family=Inter:wght@300;400;500;600&family=JetBrains+Mono:wght@400;500&display=swap'); | |
| :root { | |
| --bg-void: #04040A; | |
| --bg-surface-0: #080812; | |
| --bg-surface-1: #0D0D1A; | |
| --bg-surface-2: #111122; | |
| --bg-surface-3: #151528; | |
| --accent-cyan: #00F5D4; | |
| --accent-purple: #8B5CF6; | |
| --accent-amber: #F59E0B; | |
| --accent-cyan-10: rgba(0, 245, 212, 0.10); | |
| --accent-cyan-20: rgba(0, 245, 212, 0.20); | |
| --accent-cyan-30: rgba(0, 245, 212, 0.30); | |
| --accent-purple-10: rgba(139, 92, 246, 0.10); | |
| --accent-purple-20: rgba(139, 92, 246, 0.20); | |
| --accent-amber-10: rgba(245, 158, 11, 0.10); | |
| --accent-amber-20: rgba(245, 158, 11, 0.20); | |
| --text-primary: #F0F0FF; | |
| --text-secondary: #8890AA; | |
| --text-muted: #4A4F6A; | |
| --glass-bg: rgba(13, 13, 26, 0.55); | |
| --glass-bg-hover: rgba(17, 17, 34, 0.70); | |
| --glass-border: rgba(100, 110, 180, 0.12); | |
| --glass-border-hover: rgba(100, 110, 180, 0.22); | |
| --glass-blur: 20px; | |
| --glow-cyan: rgba(0, 245, 212, 0.18); | |
| --glow-purple: rgba(139, 92, 246, 0.18); | |
| --glow-amber: rgba(245, 158, 11, 0.18); | |
| --error: #EF4444; | |
| --error-dim: rgba(239, 68, 68, 0.15); | |
| --transition-fast: 150ms cubic-bezier(0.25, 0.1, 0.25, 1); | |
| --transition-default: 250ms cubic-bezier(0.25, 0.1, 0.25, 1); | |
| --transition-slow: 400ms cubic-bezier(0.25, 1, 0.5, 1); | |
| } | |
| @layer base { | |
| html { | |
| scroll-behavior: smooth; | |
| text-rendering: optimizeLegibility; | |
| -webkit-text-size-adjust: 100%; | |
| } | |
| body { | |
| background-color: var(--bg-void); | |
| color: var(--text-primary); | |
| font-family: 'Inter', system-ui, sans-serif; | |
| -webkit-font-smoothing: antialiased; | |
| -moz-osx-font-smoothing: grayscale; | |
| overflow-x: hidden; | |
| } | |
| h1, h2, h3, h4, h5, h6 { | |
| font-family: 'Space Grotesk', sans-serif; | |
| font-weight: 600; | |
| letter-spacing: -0.02em; | |
| color: var(--text-primary); | |
| } | |
| input, textarea, select { | |
| background-color: var(--bg-surface-1); | |
| color: var(--text-primary); | |
| border-color: var(--glass-border); | |
| } | |
| input::placeholder, textarea::placeholder { | |
| color: var(--text-muted); | |
| opacity: 0.7; | |
| } | |
| code, pre, kbd, samp { | |
| font-family: 'JetBrains Mono', monospace; | |
| } | |
| ::-webkit-scrollbar { width: 4px; height: 4px; } | |
| ::-webkit-scrollbar-track { background: var(--bg-surface-0); } | |
| ::-webkit-scrollbar-thumb { | |
| background: var(--glass-border); | |
| border-radius: 2px; | |
| transition: background var(--transition-default); | |
| } | |
| ::-webkit-scrollbar-thumb:hover { | |
| background: var(--accent-cyan-30); | |
| } | |
| ::selection { | |
| background: var(--accent-cyan-20); | |
| color: var(--text-primary); | |
| } | |
| :focus-visible { | |
| outline: 1.5px solid var(--accent-cyan); | |
| outline-offset: 3px; | |
| border-radius: 4px; | |
| } | |
| } | |
| @layer components { | |
| .glass { | |
| background: var(--glass-bg); | |
| border: 1px solid var(--glass-border); | |
| backdrop-filter: blur(var(--glass-blur)); | |
| -webkit-backdrop-filter: blur(var(--glass-blur)); | |
| transition: | |
| background var(--transition-default), | |
| border-color var(--transition-default), | |
| box-shadow var(--transition-default); | |
| } | |
| .glass:hover { | |
| background: var(--glass-bg-hover); | |
| border-color: var(--glass-border-hover); | |
| } | |
| .glass-card { | |
| background: var(--glass-bg); | |
| border: 1px solid var(--glass-border); | |
| backdrop-filter: blur(var(--glass-blur)); | |
| -webkit-backdrop-filter: blur(var(--glass-blur)); | |
| border-radius: 1rem; | |
| transition: | |
| background var(--transition-default), | |
| border-color var(--transition-default), | |
| box-shadow var(--transition-slow), | |
| transform var(--transition-slow); | |
| } | |
| .glass-card:hover { | |
| background: var(--glass-bg-hover); | |
| border-color: var(--glass-border-hover); | |
| box-shadow: 0 8px 40px rgba(0, 0, 0, 0.5), inset 0 1px 0 rgba(255, 255, 255, 0.05); | |
| } | |
| .glass-panel { | |
| background: rgba(8, 8, 18, 0.75); | |
| border: 1px solid var(--glass-border); | |
| backdrop-filter: blur(32px) saturate(180%); | |
| -webkit-backdrop-filter: blur(32px) saturate(180%); | |
| } | |
| .text-gradient { | |
| background: linear-gradient(135deg, var(--accent-cyan) 0%, var(--accent-purple) 100%); | |
| -webkit-background-clip: text; | |
| -webkit-text-fill-color: transparent; | |
| background-clip: text; | |
| } | |
| .text-gradient-warm { | |
| background: linear-gradient(135deg, var(--accent-amber) 0%, var(--accent-cyan) 100%); | |
| -webkit-background-clip: text; | |
| -webkit-text-fill-color: transparent; | |
| background-clip: text; | |
| } | |
| .glow-cyan { | |
| box-shadow: | |
| 0 0 20px var(--glow-cyan), | |
| 0 0 60px rgba(0, 245, 212, 0.06); | |
| } | |
| .glow-purple { | |
| box-shadow: | |
| 0 0 20px var(--glow-purple), | |
| 0 0 60px rgba(139, 92, 246, 0.06); | |
| } | |
| .glow-amber { | |
| box-shadow: | |
| 0 0 20px var(--glow-amber), | |
| 0 0 40px rgba(245, 158, 11, 0.05); | |
| } | |
| .text-glow-cyan { text-shadow: 0 0 16px var(--glow-cyan); } | |
| .text-glow-purple { text-shadow: 0 0 16px var(--glow-purple); } | |
| .btn-primary { | |
| display: inline-flex; | |
| align-items: center; | |
| gap: 0.5rem; | |
| padding: 0.75rem 1.75rem; | |
| border-radius: 9999px; | |
| background: var(--accent-cyan); | |
| color: var(--bg-void); | |
| font-family: 'Space Grotesk', sans-serif; | |
| font-weight: 600; | |
| font-size: 0.875rem; | |
| letter-spacing: 0.01em; | |
| transition: | |
| background var(--transition-fast), | |
| box-shadow var(--transition-default), | |
| transform var(--transition-fast); | |
| box-shadow: 0 0 20px var(--glow-cyan); | |
| } | |
| .btn-primary:hover { | |
| background: #00dbbe; | |
| transform: translateY(-1px); | |
| box-shadow: 0 0 30px var(--accent-cyan-30), 0 4px 20px rgba(0, 0, 0, 0.4); | |
| } | |
| .btn-primary:active { | |
| transform: translateY(0); | |
| } | |
| .btn-ghost { | |
| display: inline-flex; | |
| align-items: center; | |
| gap: 0.5rem; | |
| padding: 0.75rem 1.5rem; | |
| border-radius: 9999px; | |
| border: 1px solid var(--glass-border); | |
| color: var(--text-secondary); | |
| font-size: 0.875rem; | |
| transition: | |
| border-color var(--transition-fast), | |
| color var(--transition-fast), | |
| background var(--transition-fast); | |
| } | |
| .btn-ghost:hover { | |
| border-color: var(--accent-cyan-30); | |
| color: var(--accent-cyan); | |
| background: var(--accent-cyan-10); | |
| } | |
| .input-glass { | |
| width: 100%; | |
| padding: 0.625rem 0.875rem; | |
| background: var(--bg-surface-1); | |
| border: 1px solid var(--glass-border); | |
| border-radius: 0.625rem; | |
| color: var(--text-primary); | |
| font-family: 'Inter', sans-serif; | |
| font-size: 0.875rem; | |
| transition: | |
| border-color var(--transition-fast), | |
| box-shadow var(--transition-fast); | |
| outline: none; | |
| } | |
| .input-glass::placeholder { | |
| color: var(--text-muted); | |
| } | |
| .input-glass:focus { | |
| border-color: var(--accent-cyan-30); | |
| box-shadow: 0 0 0 3px var(--accent-cyan-10); | |
| } | |
| .nav-item { | |
| display: flex; | |
| align-items: center; | |
| gap: 0.75rem; | |
| padding: 0.6rem 0.75rem; | |
| border-radius: 0.75rem; | |
| color: var(--text-muted); | |
| font-size: 0.875rem; | |
| font-weight: 500; | |
| transition: | |
| color var(--transition-fast), | |
| background var(--transition-fast); | |
| position: relative; | |
| } | |
| .nav-item:hover { | |
| color: var(--text-primary); | |
| background: var(--glass-bg); | |
| } | |
| .nav-item.active { | |
| color: var(--accent-cyan); | |
| background: var(--accent-cyan-10); | |
| } | |
| .badge { | |
| display: inline-flex; | |
| align-items: center; | |
| padding: 0.2rem 0.6rem; | |
| border-radius: 9999px; | |
| font-size: 0.65rem; | |
| font-family: 'JetBrains Mono', monospace; | |
| font-weight: 500; | |
| letter-spacing: 0.05em; | |
| text-transform: uppercase; | |
| } | |
| .badge-cyan { | |
| background: var(--accent-cyan-10); | |
| border: 1px solid var(--accent-cyan-20); | |
| color: var(--accent-cyan); | |
| } | |
| .badge-purple { | |
| background: var(--accent-purple-10); | |
| border: 1px solid var(--accent-purple-20); | |
| color: var(--accent-purple); | |
| } | |
| .divider { | |
| height: 1px; | |
| background: linear-gradient(90deg, transparent, var(--glass-border), transparent); | |
| } | |
| } | |
| /* ββ Legacy Tailwind class overrides ββββββββββββββββββββββββββββββββββββ */ | |
| .bg-white { background-color: var(--bg-surface-1) ; } | |
| .bg-gray-50, | |
| .bg-gray-100 { background-color: var(--bg-surface-0) ; } | |
| .bg-gray-200 { background-color: var(--bg-surface-2) ; } | |
| .text-gray-900, | |
| .text-gray-800 { color: var(--text-primary) ; } | |
| .text-gray-700 { color: var(--text-secondary) ; } | |
| .text-gray-600, | |
| .text-gray-500 { color: var(--text-muted) ; } | |
| .text-gray-400, | |
| .text-gray-300 { color: var(--text-muted) ; } | |
| .text-gray-200 { color: var(--text-muted) ; } | |
| .border-gray-200, | |
| .border-gray-100, | |
| .border-gray-300 { border-color: var(--glass-border) ; } | |
| .divide-gray-100 > * + *, | |
| .divide-gray-200 > * + * { border-color: var(--glass-border) ; } | |
| .hover\:bg-gray-50:hover, | |
| .hover\:bg-gray-100:hover { background-color: var(--bg-surface-1) ; } | |
| .hover\:bg-gray-200:hover { background-color: var(--bg-surface-2) ; } | |
| .hover\:text-gray-900:hover { color: var(--text-primary) ; } | |
| .hover\:text-gray-700:hover { color: var(--text-secondary) ; } | |
| .hover\:border-gray-300:hover { border-color: var(--glass-border) ; } | |
| .bg-teal-50 { background-color: var(--accent-cyan-10) ; } | |
| .bg-teal-100 { background-color: rgba(0, 245, 212, 0.12) ; } | |
| .bg-teal-200 { background-color: var(--accent-cyan-20) ; } | |
| .border-teal-200 { border-color: var(--accent-cyan-20) ; } | |
| .border-teal-300, | |
| .hover\:border-teal-300:hover { border-color: var(--accent-cyan-30) ; } | |
| .text-teal-600 { color: var(--accent-cyan) ; } | |
| .text-teal-700, | |
| .text-teal-800 { color: var(--accent-cyan) ; } | |
| .hover\:text-teal-700:hover, | |
| .hover\:text-teal-800:hover { color: var(--accent-cyan) ; } | |
| .hover\:bg-teal-50:hover { background-color: var(--accent-cyan-10) ; } | |
| .bg-teal-500 { background-color: var(--accent-cyan) ; } | |
| .bg-teal-600 { background-color: var(--accent-cyan) ; } | |
| .hover\:bg-teal-700:hover { background-color: var(--accent-cyan) ; } | |
| .bg-red-50 { background-color: rgba(248, 113, 113, 0.1) ; } | |
| .bg-red-100 { background-color: rgba(248, 113, 113, 0.12) ; } | |
| .text-red-500, | |
| .text-red-600, | |
| .text-red-700, | |
| .text-red-800, | |
| .text-red-900 { color: #F87171 ; } | |
| .border-red-200 { border-color: rgba(248, 113, 113, 0.2) ; } | |
| .bg-amber-50 { background-color: rgba(245, 158, 11, 0.1) ; } | |
| .text-amber-500, | |
| .text-amber-600, | |
| .text-amber-700, | |
| .text-amber-800, | |
| .text-amber-900 { color: #FBBF24 ; } | |
| .border-amber-200 { border-color: rgba(251, 191, 36, 0.2) ; } | |
| .hover\:bg-amber-100:hover { background-color: rgba(245, 158, 11, 0.15) ; } | |
| .bg-blue-50 { background-color: rgba(96, 165, 250, 0.1) ; } | |
| .bg-blue-100 { background-color: rgba(96, 165, 250, 0.12) ; } | |
| .text-blue-600 { color: #60A5FA ; } | |
| .text-blue-700, | |
| .text-blue-800 { color: #60A5FA ; } | |
| .hover\:bg-blue-100:hover { background-color: rgba(96, 165, 250, 0.15) ; } | |
| .bg-purple-50 { background-color: rgba(167, 139, 250, 0.08) ; } | |
| .text-purple-600 { color: #A78BFA ; } | |
| .focus\:border-teal-500:focus { border-color: var(--accent-cyan) ; } | |
| .focus\:ring-teal-200 { --tw-ring-color: var(--accent-cyan-20) ; } | |
| .shadow-sm { box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4) ; } | |
| .shadow-md, | |
| .shadow-xl { box-shadow: 0 4px 16px rgba(0, 0, 0, 0.5) ; } | |
| .from-teal-50 { --tw-gradient-from: var(--bg-surface-1) ; } | |
| .to-teal-50 { --tw-gradient-to: var(--bg-surface-1) ; } | |
| @layer utilities { | |
| .bg-grid { | |
| background-image: | |
| linear-gradient(rgba(100, 110, 255, 0.06) 1px, transparent 1px), | |
| linear-gradient(90deg, rgba(100, 110, 255, 0.06) 1px, transparent 1px); | |
| background-size: 48px 48px; | |
| } | |
| .bg-dots { | |
| background-image: radial-gradient(rgba(100, 110, 255, 0.15) 1px, transparent 1px); | |
| background-size: 24px 24px; | |
| } | |
| .bg-vignette { | |
| background: radial-gradient( | |
| ellipse 80% 80% at 50% 50%, | |
| transparent 20%, | |
| rgba(4, 4, 10, 0.6) 65%, | |
| rgba(4, 4, 10, 0.97) 100% | |
| ); | |
| } | |
| .glow-accent { | |
| box-shadow: | |
| 0 0 20px rgba(0, 245, 212, 0.18), | |
| 0 0 60px rgba(0, 245, 212, 0.06); | |
| } | |
| .scan-line { | |
| position: relative; | |
| overflow: hidden; | |
| } | |
| .scan-line::after { | |
| content: ''; | |
| position: absolute; | |
| inset-inline: 0; | |
| height: 2px; | |
| background: linear-gradient(90deg, transparent, var(--accent-cyan), transparent); | |
| opacity: 0.6; | |
| animation: scan 2.5s ease-in-out infinite; | |
| pointer-events: none; | |
| } | |
| .noise { | |
| position: relative; | |
| } | |
| .noise::before { | |
| content: ''; | |
| position: absolute; | |
| inset: 0; | |
| background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.04'/%3E%3C/svg%3E"); | |
| opacity: 0.04; | |
| pointer-events: none; | |
| z-index: 0; | |
| } | |
| .canvas-host { | |
| position: absolute; | |
| inset: 0; | |
| pointer-events: none; | |
| z-index: 0; | |
| } | |
| } | |
| @media (prefers-reduced-motion: reduce) { | |
| *, | |
| *::before, | |
| *::after { | |
| animation-duration: 0.01ms ; | |
| animation-iteration-count: 1 ; | |
| transition-duration: 0.01ms ; | |
| scroll-behavior: auto ; | |
| } | |
| } | |