@import "tailwindcss"; @plugin "daisyui"; @import "tw-animate-css"; @import "shadcn/tailwind.css"; @plugin "@tailwindcss/typography"; @custom-variant dark (&:is(.dark *)); @theme inline { --color-background: var(--background); --color-foreground: var(--foreground); --color-text: var(--foreground); --color-text-muted: var(--muted-foreground); --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; --font-heading: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; --color-sidebar-ring: var(--sidebar-ring); --color-sidebar-border: var(--sidebar-border); --color-sidebar-accent-foreground: var(--sidebar-accent-foreground); --color-sidebar-accent: var(--sidebar-accent); --color-sidebar-primary-foreground: var(--sidebar-primary-foreground); --color-sidebar-primary: var(--sidebar-primary); --color-sidebar-foreground: var(--sidebar-foreground); --color-sidebar: var(--sidebar); --color-chart-5: var(--chart-5); --color-chart-4: var(--chart-4); --color-chart-3: var(--chart-3); --color-chart-2: var(--chart-2); --color-chart-1: var(--chart-1); --color-ring: var(--ring); --color-border: var(--theme-border); --color-input: var(--input); --color-destructive: var(--destructive); --color-accent-foreground: var(--accent-foreground); --color-accent: var(--accent); --color-accent-light: var(--accent-light); --color-cta: var(--cta); --color-cta-foreground: var(--cta-foreground); --color-cta-hover: var(--cta-hover); --color-primary-light: var(--primary-light); --color-success: var(--success); --color-muted-foreground: var(--muted-foreground); --color-muted: var(--muted); --color-secondary-foreground: var(--secondary-foreground); --color-secondary: var(--secondary); --color-primary-foreground: var(--primary-foreground); --color-primary: var(--primary); --color-popover-foreground: var(--popover-foreground); --color-popover: var(--popover); --color-card-foreground: var(--card-foreground); --color-card: var(--card); --radius-sm: calc(var(--radius) * 0.6); --radius-md: calc(var(--radius) * 0.8); --radius-lg: var(--radius); --radius-xl: calc(var(--radius) * 1.4); --radius-2xl: calc(var(--radius) * 1.8); --radius-3xl: calc(var(--radius) * 2.2); --radius-4xl: calc(var(--radius) * 2.6); } :root { --background: #ffffff; --foreground: #1a2230; --card: #ffffff; --card-foreground: #1a2230; --popover: #ffffff; --popover-foreground: #1a2230; --primary: #0f2a47; --primary-foreground: #ffffff; --primary-light: #1b3d63; --secondary: #f5f7fa; --secondary-foreground: #0f2a47; --muted: #f5f7fa; --muted-foreground: #5a6678; --accent: #1777a3; --accent-foreground: #ffffff; --accent-light: #e3f4fc; --cta: #F39320; --cta-foreground: #ffffff; --cta-hover: #D97D0D; --destructive: oklch(0.577 0.245 27.325); --theme-border: #e2e8f0; --input: #e2e8f0; --ring: #1777a3; --success: #16a34a; --chart-1: oklch(0.87 0 0); --chart-2: oklch(0.556 0 0); --chart-3: oklch(0.439 0 0); --chart-4: oklch(0.371 0 0); --chart-5: oklch(0.269 0 0); --radius: 0.75rem; --sidebar: #ffffff; --sidebar-foreground: #1a2230; --sidebar-primary: #0f2a47; --sidebar-primary-foreground: #ffffff; --sidebar-accent: #f5f7fa; --sidebar-accent-foreground: #0f2a47; --sidebar-border: #e2e8f0; --sidebar-ring: #1777a3; /* DaisyUI Overrides */ --color-primary: var(--accent); --color-primary-content: #ffffff; --color-secondary: var(--secondary); --color-secondary-content: var(--secondary-foreground); --color-accent: var(--accent); --color-accent-content: var(--accent-foreground); --color-neutral: #1a2230; --color-neutral-content: #ffffff; --color-base-100: var(--background); --color-base-200: var(--muted); --color-base-300: var(--theme-border); --color-base-content: var(--foreground); --color-success: var(--success); --color-error: var(--destructive); --radius-selector: var(--radius); --radius-field: var(--radius); --radius-box: var(--radius); } .dark { --background: #0f2a47; --foreground: #f5f7fa; --card: #1b3d63; --card-foreground: #f5f7fa; --popover: #1b3d63; --popover-foreground: #f5f7fa; --primary: #2ba8e0; --primary-foreground: #0f2a47; --secondary: #1b3d63; --secondary-foreground: #f5f7fa; --muted: #1b3d63; --muted-foreground: #e3f4fc; --accent: #2ba8e0; --accent-foreground: #0f2a47; --destructive: oklch(0.704 0.191 22.216); --theme-border: rgba(226, 232, 240, 0.1); --input: rgba(226, 232, 240, 0.15); --ring: #2ba8e0; /* DaisyUI Overrides */ --color-primary: var(--accent); --color-primary-content: #ffffff; --color-secondary: var(--secondary); --color-secondary-content: var(--secondary-foreground); --color-accent: var(--accent); --color-accent-content: var(--accent-foreground); --color-neutral: #1a2230; --color-neutral-content: #ffffff; --color-base-100: var(--background); --color-base-200: var(--muted); --color-base-300: var(--theme-border); --color-base-content: var(--foreground); } @layer base { * { @apply border-border outline-ring/50; } *:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; } @media (prefers-reduced-motion: reduce) { *, ::before, ::after { animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; transition-duration: 0.01ms !important; scroll-behavior: auto !important; } } body { @apply bg-background text-foreground overflow-x-hidden; } html { @apply font-sans overflow-x-hidden scroll-smooth; } h1, h2, h3, h4, h5, h6 { @apply font-heading; } } @layer components { .btn { box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05), 0 4px 6px rgba(0, 0, 0, 0.05); transition: all 0.2s ease-in-out; } .btn:hover { box-shadow: 0 4px 6px rgba(0, 0, 0, 0.08), 0 10px 15px rgba(0, 0, 0, 0.05); transform: translateY(-1px); } .btn.btn-outline.bg-white { background-color: #ffffff !important; color: var(--accent) !important; border-color: var(--accent) !important; } .btn.btn-outline.bg-white:hover { background-color: var(--accent) !important; color: #ffffff !important; border-color: var(--accent) !important; } } @layer utilities { @keyframes marquee { 0% { transform: translateX(0); } 100% { transform: translateX(calc(-50% - 0.5rem)); } } .animate-marquee { animation: marquee 25s linear infinite; } .animate-marquee:hover { animation-play-state: paused; } }