/
Dunkan
/
arq_bc
Обзор
Документация
Войти
/
Dunkan
/
arq_bc
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
src/globals.css
401 строка
8 KB
Andrew_KHZz
Update 2 files
17 авг 2025, 10:54
17 авг 2025, 10:54
1bf82c6
Код
Авторство
О чём код?
/* app/globals.css */ @tailwind base; @tailwind components; @tailwind utilities; @layer base { :root { --background: 0 0% 100%; --foreground: 222.2 84% 4.9%; --card: 0 0% 100%; --card-foreground: 222.2 84% 4.9%; --popover: 0 0% 100%; --popover-foreground: 222.2 84% 4.9%; --primary: 221.2 83.2% 53.3%; --primary-foreground: 210 40% 98%; --secondary: 210 40% 96.1%; --secondary-foreground: 222.2 47.4% 11.2%; --muted: 210 40% 96.1%; --muted-foreground: 215.4 16.3% 46.9%; --accent: 210 40% 96.1%; --accent-foreground: 222.2 47.4% 11.2%; --destructive: 0 84.2% 60.2%; --destructive-foreground: 210 40% 98%; --border: 214.3 31.8% 91.4%; --input: 214.3 31.8% 91.4%; --ring: 221.2 83.2% 53.3%; --radius: 0.5rem; } .dark { --background: 222.2 84% 4.9%; --foreground: 210 40% 98%; --card: 222.2 84% 4.9%; --card-foreground: 210 40% 98%; --popover: 222.2 84% 4.9%; --popover-foreground: 210 40% 98%; --primary: 217.2 91.2% 59.8%; --primary-foreground: 222.2 47.4% 11.2%; --secondary: 217.2 32.6% 17.5%; --secondary-foreground: 210 40% 98%; --muted: 217.2 32.6% 17.5%; --muted-foreground: 215 20.2% 65.1%; --accent: 217.2 32.6% 17.5%; --accent-foreground: 210 40% 98%; --destructive: 0 62.8% 30.6%; --destructive-foreground: 210 40% 98%; --border: 217.2 32.6% 17.5%; --input: 217.2 32.6% 17.5%; --ring: 224.3 76.3% 48%; } } @layer base { * { @apply border-border; } body { @apply bg-background text-foreground; } } /* Custom animations for the landing page */ @keyframes blob { 0% { transform: translate(0px, 0px) scale(1); } 33% { transform: translate(30px, -50px) scale(1.1); } 66% { transform: translate(-20px, 20px) scale(0.9); } 100% { transform: translate(0px, 0px) scale(1); } } .animate-blob { animation: blob 7s infinite; } .animation-delay-2000 { animation-delay: 2s; } .animation-delay-4000 { animation-delay: 4s; } /* Additional animation delays for airport elements */ .animation-delay-300 { animation-delay: 0.3s; } .animation-delay-500 { animation-delay: 0.5s; } .animation-delay-800 { animation-delay: 0.8s; } .animation-delay-1000 { animation-delay: 1s; } .animation-delay-1300 { animation-delay: 1.3s; } .animation-delay-1500 { animation-delay: 1.5s; } .animation-delay-1800 { animation-delay: 1.8s; } .animation-delay-2000 { animation-delay: 2s; } .animation-delay-2300 { animation-delay: 2.3s; } .animation-delay-3000 { animation-delay: 3s; } .animation-delay-4000 { animation-delay: 4s; } /* Custom animations for airport elements */ @keyframes bounce-x { 0%, 100% { transform: translateX(0); } 50% { transform: translateX(20px); } } .animate-bounce-x { animation: bounce-x 3s infinite; } @keyframes spin-slow { from { transform: rotate(0deg); } to { transform: rotate(360deg); } } .animate-spin-slow { animation: spin-slow 10s linear infinite; } @keyframes float { 0%, 100% { transform: translateY(0px); opacity: 0.6; } 50% { transform: translateY(-10px); opacity: 1; } } .animate-float { animation: float 4s ease-in-out infinite; } /* Information Flow Animations */ @keyframes flow-line { 0% { transform: translateX(-100%); opacity: 0; } 50% { opacity: 0.4; } 100% { transform: translateX(100%); opacity: 0; } } .animate-flow-line { animation: flow-line 8s linear infinite; } @keyframes flow-vertical { 0% { transform: translateY(-100%); opacity: 0; } 50% { opacity: 0.3; } 100% { transform: translateY(100%); opacity: 0; } } .animate-flow-vertical { animation: flow-vertical 10s linear infinite; } @keyframes flow-diagonal { 0% { transform: translate(-100%, -100%) scale(0); opacity: 0; } 50% { opacity: 0.6; } 100% { transform: translate(100%, 100%) scale(1); opacity: 0; } } .animate-flow-diagonal { animation: flow-diagonal 12s linear infinite; } @keyframes electron-flow { 0% { transform: translateX(-50px) translateY(-50px); opacity: 0; } 25% { opacity: 0.8; } 75% { opacity: 0.8; } 100% { transform: translateX(50px) translateY(50px); opacity: 0; } } .animate-electron-flow { animation: electron-flow 6s ease-in-out infinite; } @keyframes electron-stream { 0% { transform: translateY(-100vh); opacity: 0; } 10% { opacity: 0.7; } 90% { opacity: 0.7; } 100% { transform: translateY(100vh); opacity: 0; } } .animate-electron-stream { animation: electron-stream 8s linear infinite; } @keyframes wave-flow { 0% { transform: translateX(-100%); opacity: 0; } 25% { opacity: 0.2; } 75% { opacity: 0.2; } 100% { transform: translateX(100%); opacity: 0; } } .animate-wave-flow { animation: wave-flow 15s ease-in-out infinite; } /* Parallax Stars Effect */ .stars-far, .stars-medium, .stars-close { position: absolute; top: 0; left: 0; right: 0; bottom: 0; width: 100%; height: 100%; } .stars-far { background-image: radial-gradient(1px 1px at 20px 30px, #eee, transparent), radial-gradient(1px 1px at 40px 70px, rgba(255,255,255,0.8), transparent), radial-gradient(1px 1px at 50px 160px, #fff, transparent), radial-gradient(1px 1px at 90px 40px, #ddd, transparent), radial-gradient(1px 1px at 130px 80px, #fff, transparent), radial-gradient(1px 1px at 160px 30px, rgba(255,255,255,0.6), transparent); background-repeat: repeat; background-size: 200px 200px; animation: parallax-far 100s linear infinite; opacity: 0.3; } .stars-medium { background-image: radial-gradient(1px 1px at 15px 5px, #fff, transparent), radial-gradient(1px 1px at 25px 175px, rgba(255,255,255,0.8), transparent), radial-gradient(1px 1px at 46px 154px, #fff, transparent), radial-gradient(1px 1px at 55px 49px, #ddd, transparent), radial-gradient(1px 1px at 99px 9px, #fff, transparent), radial-gradient(1px 1px at 154px 47px, rgba(255,255,255,0.6), transparent), radial-gradient(1px 1px at 174px 178px, #fff, transparent); background-repeat: repeat; background-size: 300px 300px; animation: parallax-medium 80s linear infinite; opacity: 0.4; } .stars-close { background-image: radial-gradient(1px 1px at 81px 158px, #fff, transparent), radial-gradient(1px 1px at 162px 64px, rgba(255,255,255,0.8), transparent), radial-gradient(1px 1px at 134px 107px, #fff, transparent), radial-gradient(1px 1px at 190px 186px, #ddd, transparent), radial-gradient(1px 1px at 23px 149px, #fff, transparent), radial-gradient(1px 1px at 134px 122px, rgba(255,255,255,0.6), transparent), radial-gradient(1px 1px at 36px 128px, #fff, transparent), radial-gradient(1px 1px at 222px 37px, #fff, transparent); background-repeat: repeat; background-size: 400px 400px; animation: parallax-close 60s linear infinite; opacity: 0.5; } @keyframes parallax-far { from { transform: translateY(0px); } to { transform: translateY(-200px); } } @keyframes parallax-medium { from { transform: translateY(0px); } to { transform: translateY(-300px); } } @keyframes parallax-close { from { transform: translateY(0px); } to { transform: translateY(-400px); } } /* Smooth scrolling */ html { scroll-behavior: smooth; } /* Custom scrollbar */ ::-webkit-scrollbar { width: 8px; } ::-webkit-scrollbar-track { background: #1e293b; } ::-webkit-scrollbar-thumb { background: linear-gradient(to bottom, #6366f1, #8b5cf6); border-radius: 4px; } ::-webkit-scrollbar-thumb:hover { background: linear-gradient(to bottom, #4f46e5, #7c3aed); }