WFDASH-WEBAPP/src/app/globals.css

207 lines
6.4 KiB
CSS
Raw Normal View History

@import "tailwindcss";
@import "tw-animate-css";
@import "shadcn/tailwind.css";
@import "../styles/themes.css";
@custom-variant dark (&:is(.dark *));
@custom-variant warm (&:is(.warm *));
@theme inline {
--color-background: var(--background);
--color-foreground: var(--foreground);
--font-sans: var(--font-sans);
--font-mono: var(--font-geist-mono);
--font-heading: var(--font-sans);
--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-input-highlight: var(--input-highlight);
--color-input: var(--input);
--color-border: var(--border);
--color-destructive: var(--destructive);
--color-accent-foreground: var(--accent-foreground);
--color-accent: var(--accent);
--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);
}
/* Default theme tokens live in src/styles/themes.css under [data-theme="crisp"].
Keep :root as a safety fallback for the brief moment before the inline theme
script runs (prevents FOUC). */
:root {
--background: oklch(0.985 0.01 240);
--foreground: oklch(0.20 0.045 240);
--card: oklch(1 0 0);
--card-foreground: oklch(0.20 0.045 240);
--primary: oklch(0.62 0.13 240);
--primary-foreground: oklch(1 0 0);
--accent: oklch(0.81 0.14 75);
--destructive: oklch(0.62 0.21 25);
--border: oklch(0.90 0.018 240);
--ring: oklch(0.62 0.13 240);
--radius: 0.625rem;
--input-highlight: oklch(0.84 0.10 240);
}
.warm {
--background: oklch(0.98 0.012 245);
--foreground: oklch(0.20 0.045 245);
--card: oklch(0.99 0.006 245);
--card-foreground: oklch(0.20 0.045 245);
--popover: oklch(0.99 0.006 245);
--popover-foreground: oklch(0.20 0.045 245);
--primary: oklch(0.47 0.16 245);
--primary-foreground: oklch(1 0 0);
--secondary: oklch(0.94 0.03 245);
--secondary-foreground: oklch(0.22 0.08 245);
--muted: oklch(0.93 0.015 245);
--muted-foreground: oklch(0.48 0.035 245);
--accent: oklch(0.88 0.13 82);
--accent-foreground: oklch(0.22 0.08 245);
--destructive: oklch(0.60 0.21 25);
--border: oklch(0.86 0.025 245);
--input: oklch(0.88 0.025 245);
--ring: oklch(0.47 0.16 245);
--chart-1: oklch(0.47 0.16 245);
--chart-2: oklch(0.66 0.20 32);
--chart-3: oklch(0.82 0.15 82);
--chart-4: oklch(0.58 0.15 205);
--chart-5: oklch(0.55 0.16 25);
--radius: 1rem;
--sidebar: oklch(0.97 0.015 245);
--sidebar-foreground: oklch(0.20 0.045 245);
--sidebar-primary: oklch(0.47 0.16 245);
--sidebar-primary-foreground: oklch(1 0 0);
--sidebar-accent: oklch(0.93 0.04 245);
--sidebar-accent-foreground: oklch(0.20 0.045 245);
--sidebar-border: oklch(0.86 0.025 245);
--sidebar-ring: oklch(0.47 0.16 245);
--input-highlight: oklch(0.84 0.10 240);
}
.dark {
--background: oklch(0.15 0.035 245);
--foreground: oklch(0.96 0.01 245);
--card: oklch(0.18 0.035 245);
--card-foreground: oklch(0.96 0.01 245);
--popover: oklch(0.18 0.035 245);
--popover-foreground: oklch(0.96 0.01 245);
--primary: oklch(0.66 0.16 245);
--primary-foreground: oklch(0.12 0.03 245);
--secondary: oklch(0.24 0.045 245);
--secondary-foreground: oklch(0.96 0.01 245);
--muted: oklch(0.23 0.035 245);
--muted-foreground: oklch(0.66 0.035 245);
--accent: oklch(0.78 0.15 82);
--accent-foreground: oklch(0.12 0.03 245);
--destructive: oklch(0.66 0.20 25);
--border: oklch(0.30 0.04 245);
--input: oklch(0.30 0.04 245);
--ring: oklch(0.66 0.16 245);
--chart-1: oklch(0.66 0.16 245);
--chart-2: oklch(0.70 0.20 32);
--chart-3: oklch(0.78 0.15 82);
--chart-4: oklch(0.63 0.14 205);
--chart-5: oklch(0.66 0.20 25);
--radius: 0.875rem;
--sidebar: oklch(0.16 0.04 245);
--sidebar-foreground: oklch(0.96 0.01 245);
--sidebar-primary: oklch(0.66 0.16 245);
--sidebar-primary-foreground: oklch(0.12 0.03 245);
--sidebar-accent: oklch(0.22 0.045 245);
--sidebar-accent-foreground: oklch(0.96 0.01 245);
--sidebar-border: oklch(0.30 0.04 245);
--sidebar-ring: oklch(0.66 0.16 245);
--input-highlight: oklch(0.32 0.10 240);
}
@layer base {
* {
@apply border-border outline-ring/50;
}
body {
@apply bg-background text-foreground;
background-image:
linear-gradient(135deg, color-mix(in oklch, var(--primary) 8%, transparent), transparent 34%),
linear-gradient(315deg, color-mix(in oklch, var(--accent) 10%, transparent), transparent 32%);
background-attachment: fixed;
}
html {
@apply font-sans;
}
}
.supplier-map-label {
border: 0;
border-radius: 999px;
box-shadow: 0 6px 16px rgba(15, 23, 42, 0.16);
color: var(--foreground);
font-size: 10px;
font-weight: 700;
line-height: 1;
padding: 3px 7px;
}
.supplier-map-label::before {
display: none;
}
.dark .supplier-map-label {
background: rgba(15, 23, 42, 0.94);
color: #f8fafc;
box-shadow: 0 8px 18px rgba(0, 0, 0, 0.34);
}
.leaflet-container {
z-index: 0;
}
.leaflet-pane,
.leaflet-top,
.leaflet-bottom {
z-index: 10;
}
.dark .leaflet-control-zoom a,
.dark .leaflet-control-attribution,
.dark .leaflet-popup-content-wrapper,
.dark .leaflet-popup-tip {
background: var(--card);
color: var(--card-foreground);
}
.dark .leaflet-control-zoom a {
border-color: var(--border);
}
.dark .leaflet-control-attribution a,
.dark .leaflet-popup-content a {
color: var(--primary);
}