2025-10-02 17:28:23 +02:00
|
|
|
/* ==== Tailwind v3 directives ==== */
|
|
|
|
@tailwind base;
|
|
|
|
@tailwind components;
|
|
|
|
@tailwind utilities;
|
2025-10-01 18:14:58 +02:00
|
|
|
|
2025-10-02 17:28:23 +02:00
|
|
|
/* ==== Design tokens (OKLCH) ==== */
|
2025-09-28 19:40:23 +02:00
|
|
|
:root {
|
|
|
|
--background: oklch(1 0 0);
|
|
|
|
--foreground: oklch(0.145 0 0);
|
|
|
|
--card: oklch(1 0 0);
|
|
|
|
--card-foreground: oklch(0.145 0 0);
|
|
|
|
--popover: oklch(1 0 0);
|
|
|
|
--popover-foreground: oklch(0.145 0 0);
|
|
|
|
--primary: oklch(0.205 0 0);
|
|
|
|
--primary-foreground: oklch(0.985 0 0);
|
2025-10-02 17:21:04 +02:00
|
|
|
--secondary: oklch(0.97 0 0);
|
2025-09-28 19:40:23 +02:00
|
|
|
--secondary-foreground: oklch(0.205 0 0);
|
2025-10-02 17:21:04 +02:00
|
|
|
--muted: oklch(0.97 0 0);
|
|
|
|
--muted-foreground: oklch(0.556 0 0);
|
|
|
|
--accent: oklch(0.97 0 0);
|
2025-09-28 19:40:23 +02:00
|
|
|
--accent-foreground: oklch(0.205 0 0);
|
|
|
|
--destructive: oklch(0.577 0.245 27.325);
|
|
|
|
--destructive-foreground: oklch(0.577 0.245 27.325);
|
2025-10-02 17:21:04 +02:00
|
|
|
--border: oklch(0.922 0 0);
|
|
|
|
--input: oklch(0.922 0 0);
|
|
|
|
--ring: oklch(0.708 0 0);
|
2025-09-28 19:40:23 +02:00
|
|
|
--chart-1: oklch(0.646 0.222 41.116);
|
|
|
|
--chart-2: oklch(0.6 0.118 184.704);
|
|
|
|
--chart-3: oklch(0.398 0.07 227.392);
|
|
|
|
--chart-4: oklch(0.828 0.189 84.429);
|
|
|
|
--chart-5: oklch(0.769 0.188 70.08);
|
|
|
|
--radius: 0.625rem;
|
2025-10-02 17:21:04 +02:00
|
|
|
--sidebar: oklch(0.985 0 0);
|
2025-09-28 19:40:23 +02:00
|
|
|
--sidebar-foreground: oklch(0.145 0 0);
|
2025-09-29 22:59:10 +02:00
|
|
|
--sidebar-primary: oklch(0.205 0 0);
|
|
|
|
--sidebar-primary-foreground: oklch(0.985 0 0);
|
2025-10-02 17:21:04 +02:00
|
|
|
--sidebar-accent: oklch(0.97 0 0);
|
2025-09-29 22:59:10 +02:00
|
|
|
--sidebar-accent-foreground: oklch(0.205 0 0);
|
2025-10-02 17:21:04 +02:00
|
|
|
--sidebar-border: oklch(0.922 0 0);
|
|
|
|
--sidebar-ring: oklch(0.708 0 0);
|
2025-09-28 19:40:23 +02:00
|
|
|
}
|
|
|
|
|
2025-10-02 17:10:27 +02:00
|
|
|
.dark {
|
|
|
|
--background: oklch(0.145 0 0);
|
|
|
|
--foreground: oklch(0.985 0 0);
|
|
|
|
--card: oklch(0.145 0 0);
|
|
|
|
--card-foreground: oklch(0.985 0 0);
|
|
|
|
--popover: oklch(0.145 0 0);
|
|
|
|
--popover-foreground: oklch(0.985 0 0);
|
|
|
|
--primary: oklch(0.985 0 0);
|
|
|
|
--primary-foreground: oklch(0.205 0 0);
|
2025-10-02 17:21:04 +02:00
|
|
|
--secondary: oklch(0.269 0 0);
|
2025-10-02 17:10:27 +02:00
|
|
|
--secondary-foreground: oklch(0.985 0 0);
|
2025-10-02 17:21:04 +02:00
|
|
|
--muted: oklch(0.269 0 0);
|
|
|
|
--muted-foreground: oklch(0.708 0 0);
|
|
|
|
--accent: oklch(0.269 0 0);
|
2025-10-02 17:10:27 +02:00
|
|
|
--accent-foreground: oklch(0.985 0 0);
|
|
|
|
--destructive: oklch(0.396 0.141 25.723);
|
|
|
|
--destructive-foreground: oklch(0.637 0.237 25.331);
|
2025-10-02 17:21:04 +02:00
|
|
|
--border: oklch(0.269 0 0);
|
|
|
|
--input: oklch(0.269 0 0);
|
|
|
|
--ring: oklch(0.439 0 0);
|
2025-10-02 17:10:27 +02:00
|
|
|
--chart-1: oklch(0.488 0.243 264.376);
|
|
|
|
--chart-2: oklch(0.696 0.17 162.48);
|
|
|
|
--chart-3: oklch(0.769 0.188 70.08);
|
|
|
|
--chart-4: oklch(0.627 0.265 303.9);
|
|
|
|
--chart-5: oklch(0.645 0.246 16.439);
|
2025-10-02 17:21:04 +02:00
|
|
|
--sidebar: oklch(0.205 0 0);
|
2025-10-02 17:10:27 +02:00
|
|
|
--sidebar-foreground: oklch(0.985 0 0);
|
|
|
|
--sidebar-primary: oklch(0.488 0.243 264.376);
|
|
|
|
--sidebar-primary-foreground: oklch(0.985 0 0);
|
2025-10-02 17:21:04 +02:00
|
|
|
--sidebar-accent: oklch(0.269 0 0);
|
2025-10-02 17:10:27 +02:00
|
|
|
--sidebar-accent-foreground: oklch(0.985 0 0);
|
2025-10-02 17:21:04 +02:00
|
|
|
--sidebar-border: oklch(0.269 0 0);
|
|
|
|
--sidebar-ring: oklch(0.439 0 0);
|
|
|
|
}
|
|
|
|
|
2025-10-02 17:28:23 +02:00
|
|
|
/* ==== Base (v3): sin @theme inline ni outline-* ==== */
|
2025-10-01 18:04:38 +02:00
|
|
|
@layer base {
|
2025-10-02 17:28:23 +02:00
|
|
|
/* borde sutil por defecto */
|
|
|
|
* { @apply border-border; }
|
|
|
|
|
|
|
|
/* foco accesible y suave en elementos interactivos */
|
|
|
|
:is(button,[role="button"],a,input,select,textarea,[tabindex]:not([tabindex="-1"])):focus {
|
|
|
|
@apply outline-none;
|
2025-10-01 18:04:38 +02:00
|
|
|
}
|
2025-10-02 17:28:23 +02:00
|
|
|
:is(button,[role="button"],a,input,select,textarea,[tabindex]:not([tabindex="-1"])):focus-visible {
|
|
|
|
@apply ring-2; /* grosor del ring */
|
|
|
|
--tw-ring-color: var(--ring); /* color desde tu token */
|
|
|
|
--tw-ring-opacity: 0.5; /* equivalente a /50 */
|
2025-10-01 18:04:38 +02:00
|
|
|
}
|
2025-10-02 17:28:23 +02:00
|
|
|
|
|
|
|
body { @apply bg-background text-foreground; }
|
2025-09-28 23:09:31 +02:00
|
|
|
}
|