Files
pulse/styles/globals.css

120 lines
2.6 KiB
CSS

@tailwind base;
@tailwind components;
@tailwind utilities;
@layer base {
:root {
/* * Semantic colors */
--color-success: #10B981;
--color-warning: #F59E0B;
--color-error: #EF4444;
/* * Chart colors */
--chart-1: #FD5E0F;
--chart-2: #60a5fa;
--chart-3: #4ade80;
--chart-4: #c084fc;
--chart-5: #fbbf24;
--chart-grid: #262626;
--chart-axis: #737373;
/* * visx area chart tokens (dark-only) */
--chart-background: #0a0a0a;
--chart-foreground: #404040;
--chart-foreground-muted: #a3a3a3;
--chart-line-primary: #FD5E0F;
--chart-line-secondary: #737373;
--chart-crosshair: #404040;
--chart-label: #a3a3a3;
--chart-marker-background: #262626;
--chart-marker-border: #404040;
--chart-marker-foreground: #fafafa;
/* * shadcn-compatible semantic tokens (dark-only) */
--background: 10 10 10;
--foreground: 250 250 250;
--card: 23 23 23;
--card-foreground: 250 250 250;
--popover: 23 23 23;
--popover-foreground: 250 250 250;
--primary: 253 94 15;
--primary-foreground: 255 255 255;
--secondary: 38 38 38;
--secondary-foreground: 250 250 250;
--accent: 38 38 38;
--accent-foreground: 250 250 250;
--destructive-foreground: 255 255 255;
}
body {
@apply bg-neutral-950 text-neutral-100 antialiased;
}
}
@layer utilities {
/* * 3D Transform Utilities - Pulse-specific */
.perspective-1000 {
perspective: 1000px;
}
.rotate-x-12 {
transform: rotateX(12deg);
}
.rotate-x-0 {
transform: rotateX(0deg);
}
.transform-style-3d {
transform-style: preserve-3d;
}
/* * Thin subtle scrollbar */
* {
scrollbar-width: thin;
scrollbar-color: rgba(255, 255, 255, 0.08) transparent;
}
*::-webkit-scrollbar {
width: 6px;
height: 6px;
}
*::-webkit-scrollbar-track {
background: transparent;
}
*::-webkit-scrollbar-thumb {
background: rgba(255, 255, 255, 0.08);
border-radius: 3px;
}
*::-webkit-scrollbar-thumb:hover {
background: rgba(255, 255, 255, 0.15);
}
/* * Scrollbar hide - for horizontal scroll navs */
.scrollbar-hide {
-ms-overflow-style: none;
scrollbar-width: none;
}
.scrollbar-hide::-webkit-scrollbar {
display: none;
}
/* * Animations */
@keyframes float {
0%, 100% { transform: translateY(0px); }
50% { transform: translateY(-20px); }
}
.animate-float {
animation: float 6s ease-in-out infinite;
}
@keyframes fadeIn {
from { opacity: 0; }
to { opacity: 1; }
}
.animate-fade-in {
animation: fadeIn 150ms ease-out;
}
}