mirror of
https://github.com/codeaashu/claude-code.git
synced 2026-04-08 22:28:48 +03:00
claude-code
This commit is contained in:
202
web/tailwind.config.ts
Normal file
202
web/tailwind.config.ts
Normal file
@@ -0,0 +1,202 @@
|
||||
import type { Config } from "tailwindcss";
|
||||
|
||||
const config: Config = {
|
||||
// Dark is the default; light mode activates when `.light` is NOT absent (i.e. dark when no `.light` class)
|
||||
darkMode: ["selector", ":root:not(.light)"],
|
||||
content: [
|
||||
"./pages/**/*.{js,ts,jsx,tsx,mdx}",
|
||||
"./components/**/*.{js,ts,jsx,tsx,mdx}",
|
||||
"./app/**/*.{js,ts,jsx,tsx,mdx}",
|
||||
"./lib/**/*.{js,ts,jsx,tsx}",
|
||||
],
|
||||
theme: {
|
||||
extend: {
|
||||
colors: {
|
||||
// Semantic tokens — reference CSS custom properties
|
||||
background: "hsl(var(--background))",
|
||||
foreground: "hsl(var(--foreground))",
|
||||
card: {
|
||||
DEFAULT: "hsl(var(--card))",
|
||||
foreground: "hsl(var(--card-foreground))",
|
||||
},
|
||||
popover: {
|
||||
DEFAULT: "hsl(var(--popover))",
|
||||
foreground: "hsl(var(--popover-foreground))",
|
||||
},
|
||||
primary: {
|
||||
DEFAULT: "hsl(var(--primary))",
|
||||
foreground: "hsl(var(--primary-foreground))",
|
||||
},
|
||||
secondary: {
|
||||
DEFAULT: "hsl(var(--secondary))",
|
||||
foreground: "hsl(var(--secondary-foreground))",
|
||||
},
|
||||
muted: {
|
||||
DEFAULT: "hsl(var(--muted))",
|
||||
foreground: "hsl(var(--muted-foreground))",
|
||||
},
|
||||
accent: {
|
||||
DEFAULT: "hsl(var(--accent))",
|
||||
foreground: "hsl(var(--accent-foreground))",
|
||||
},
|
||||
destructive: {
|
||||
DEFAULT: "hsl(var(--destructive))",
|
||||
foreground: "hsl(var(--destructive-foreground))",
|
||||
},
|
||||
border: "hsl(var(--border))",
|
||||
input: "hsl(var(--input))",
|
||||
ring: "hsl(var(--ring))",
|
||||
|
||||
// Direct CSS var tokens (non-HSL)
|
||||
canvas: {
|
||||
DEFAULT: "var(--color-bg-primary)",
|
||||
secondary: "var(--color-bg-secondary)",
|
||||
elevated: "var(--color-bg-elevated)",
|
||||
},
|
||||
ink: {
|
||||
DEFAULT: "var(--color-text-primary)",
|
||||
secondary: "var(--color-text-secondary)",
|
||||
muted: "var(--color-text-muted)",
|
||||
},
|
||||
"brand-accent": {
|
||||
DEFAULT: "var(--color-accent)",
|
||||
hover: "var(--color-accent-hover)",
|
||||
active: "var(--color-accent-active)",
|
||||
fg: "var(--color-accent-foreground)",
|
||||
},
|
||||
edge: {
|
||||
DEFAULT: "var(--color-border)",
|
||||
hover: "var(--color-border-hover)",
|
||||
},
|
||||
success: {
|
||||
DEFAULT: "var(--color-success)",
|
||||
bg: "var(--color-success-bg)",
|
||||
},
|
||||
warning: {
|
||||
DEFAULT: "var(--color-warning)",
|
||||
bg: "var(--color-warning-bg)",
|
||||
},
|
||||
error: {
|
||||
DEFAULT: "var(--color-error)",
|
||||
bg: "var(--color-error-bg)",
|
||||
},
|
||||
info: {
|
||||
DEFAULT: "var(--color-info)",
|
||||
bg: "var(--color-info-bg)",
|
||||
},
|
||||
"code-surface": {
|
||||
DEFAULT: "var(--color-code-bg)",
|
||||
text: "var(--color-code-text)",
|
||||
},
|
||||
|
||||
// Brand palette
|
||||
brand: {
|
||||
50: "#f5f3ff",
|
||||
100: "#ede9fe",
|
||||
200: "#ddd6fe",
|
||||
300: "#c4b5fd",
|
||||
400: "#a78bfa",
|
||||
500: "#8b5cf6",
|
||||
600: "#7c3aed",
|
||||
700: "#6d28d9",
|
||||
800: "#5b21b6",
|
||||
900: "#4c1d95",
|
||||
950: "#2e1065",
|
||||
},
|
||||
|
||||
// Surface (neutral) palette
|
||||
surface: {
|
||||
50: "#fafafa",
|
||||
100: "#f4f4f5",
|
||||
200: "#e4e4e7",
|
||||
300: "#d4d4d8",
|
||||
400: "#a1a1aa",
|
||||
500: "#71717a",
|
||||
600: "#52525b",
|
||||
700: "#3f3f46",
|
||||
800: "#27272a",
|
||||
850: "#1f1f23",
|
||||
900: "#18181b",
|
||||
950: "#09090b",
|
||||
},
|
||||
},
|
||||
|
||||
fontFamily: {
|
||||
sans: ["var(--font-inter)", "system-ui", "sans-serif"],
|
||||
mono: ["var(--font-jetbrains-mono)", "ui-monospace", "monospace"],
|
||||
},
|
||||
|
||||
borderRadius: {
|
||||
lg: "var(--radius)",
|
||||
md: "calc(var(--radius) - 2px)",
|
||||
sm: "calc(var(--radius) - 4px)",
|
||||
},
|
||||
|
||||
transitionDuration: {
|
||||
fast: "100ms",
|
||||
normal: "200ms",
|
||||
slow: "300ms",
|
||||
},
|
||||
|
||||
animation: {
|
||||
"fade-in": "fadeIn 200ms ease forwards",
|
||||
"fade-out": "fadeOut 200ms ease forwards",
|
||||
"slide-up": "slideUp 300ms ease forwards",
|
||||
"slide-down": "slideDown 300ms ease forwards",
|
||||
"slide-down-out": "slideDownOut 300ms ease forwards",
|
||||
"scale-in": "scaleIn 200ms ease forwards",
|
||||
"scale-out": "scaleOut 200ms ease forwards",
|
||||
shimmer: "shimmer 2s linear infinite",
|
||||
spin: "spin 1s linear infinite",
|
||||
"pulse-soft": "pulseSoft 2s cubic-bezier(0.4, 0, 0.6, 1) infinite",
|
||||
"progress-bar": "progress linear forwards",
|
||||
},
|
||||
|
||||
keyframes: {
|
||||
fadeIn: {
|
||||
"0%": { opacity: "0" },
|
||||
"100%": { opacity: "1" },
|
||||
},
|
||||
fadeOut: {
|
||||
"0%": { opacity: "1" },
|
||||
"100%": { opacity: "0" },
|
||||
},
|
||||
slideUp: {
|
||||
"0%": { transform: "translateY(8px)", opacity: "0" },
|
||||
"100%": { transform: "translateY(0)", opacity: "1" },
|
||||
},
|
||||
slideDown: {
|
||||
"0%": { transform: "translateY(-8px)", opacity: "0" },
|
||||
"100%": { transform: "translateY(0)", opacity: "1" },
|
||||
},
|
||||
slideDownOut: {
|
||||
"0%": { transform: "translateY(0)", opacity: "1" },
|
||||
"100%": { transform: "translateY(8px)", opacity: "0" },
|
||||
},
|
||||
scaleIn: {
|
||||
"0%": { transform: "scale(0.95)", opacity: "0" },
|
||||
"100%": { transform: "scale(1)", opacity: "1" },
|
||||
},
|
||||
scaleOut: {
|
||||
"0%": { transform: "scale(1)", opacity: "1" },
|
||||
"100%": { transform: "scale(0.95)", opacity: "0" },
|
||||
},
|
||||
shimmer: {
|
||||
"0%": { backgroundPosition: "-200% 0" },
|
||||
"100%": { backgroundPosition: "200% 0" },
|
||||
},
|
||||
pulseSoft: {
|
||||
"0%, 100%": { opacity: "1" },
|
||||
"50%": { opacity: "0.5" },
|
||||
},
|
||||
progress: {
|
||||
from: { transform: "scaleX(1)" },
|
||||
to: { transform: "scaleX(0)" },
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
plugins: [],
|
||||
};
|
||||
|
||||
export default config;
|
||||
Reference in New Issue
Block a user