Spaces:
Sleeping
Sleeping
| @import url("https://fonts.googleapis.com/css2?family=Crimson+Text:wght@400;600&family=Inter:wght@300;400;500;600&display=swap"); | |
| @tailwind base; | |
| @tailwind components; | |
| @tailwind utilities; | |
| @layer base { | |
| :root { | |
| --background: 40 33.3% 98.2%; | |
| --foreground: 240 3.4% 11.4%; | |
| --card: 0 0% 100%; | |
| --card-foreground: 240 3.4% 11.4%; | |
| --popover: 0 0% 100%; | |
| --popover-foreground: 240 3.4% 11.4%; | |
| --primary: 0 0% 35.7%; | |
| --primary-foreground: 40 33.3% 98.2%; | |
| --secondary: 9.2 7.7% 66.9%; | |
| --secondary-foreground: 240 3.4% 11.4%; | |
| --muted: 20 8% 90%; | |
| --muted-foreground: 0 0% 35.7%; | |
| --accent: 9.2 7.7% 66.9%; | |
| --accent-foreground: 240 3.4% 11.4%; | |
| --destructive: 0 84.2% 60.2%; | |
| --destructive-foreground: 210 40% 98%; | |
| --border: 20 8% 90%; | |
| --input: 20 8% 90%; | |
| --ring: 255 30% 70%; | |
| --radius: 0.5rem; | |
| --violet: 255 30% 70%; | |
| } | |
| html, body { | |
| @apply h-full w-full; | |
| -webkit-overflow-scrolling: touch; | |
| position: relative; | |
| overscroll-behavior-y: none; | |
| } | |
| body { | |
| @apply bg-neutral-light text-neutral-dark antialiased; | |
| font-family: "Inter", sans-serif; | |
| } | |
| h1, | |
| h2, | |
| h3, | |
| h4, | |
| h5, | |
| h6 { | |
| font-family: "Crimson Text", serif; | |
| } | |
| } | |
| .conference-card { | |
| @apply bg-white rounded-lg shadow-sm hover:shadow-md transition-shadow duration-300 p-4 flex flex-col; | |
| } | |
| .tag { | |
| @apply inline-flex items-center px-2 py-1 rounded-full text-sm font-medium bg-violet/15 text-violet; | |
| } | |
| .countdown { | |
| @apply text-2xl font-semibold text-violet; | |
| } | |
| @keyframes scale-up { | |
| from { | |
| transform: scale(0.8); | |
| opacity: 0; | |
| filter: blur(8px); | |
| } | |
| to { | |
| transform: scale(1); | |
| opacity: 1; | |
| filter: blur(0); | |
| } | |
| } | |
| @keyframes scale-down { | |
| from { | |
| transform: scale(1); | |
| opacity: 1; | |
| filter: blur(0); | |
| } | |
| to { | |
| transform: scale(0.8); | |
| opacity: 0; | |
| filter: blur(8px); | |
| } | |
| } | |
| .dialog-content { | |
| animation: scale-up 0.4s cubic-bezier(0.16, 1, 0.3, 1); | |
| will-change: transform, opacity, filter; | |
| } | |
| .dialog-overlay { | |
| animation: fade-in 0.4s cubic-bezier(0.16, 1, 0.3, 1); | |
| } | |
| [data-state="closed"] .dialog-content { | |
| animation: scale-down 0.3s cubic-bezier(0.16, 1, 0.3, 1); | |
| } | |
| [data-state="closed"] .dialog-overlay { | |
| animation: fade-out 0.3s cubic-bezier(0.16, 1, 0.3, 1); | |
| } | |
| @keyframes fade-in { | |
| from { | |
| opacity: 0; | |
| backdrop-filter: blur(0px); | |
| } | |
| to { | |
| opacity: 1; | |
| backdrop-filter: blur(4px); | |
| } | |
| } | |
| @keyframes fade-out { | |
| from { | |
| opacity: 1; | |
| backdrop-filter: blur(4px); | |
| } | |
| to { | |
| opacity: 0; | |
| backdrop-filter: blur(0px); | |
| } | |
| } | |