TailwindCSS v4 Styling
Styling guide for TailwindCSS v4 with CSS-first configuration and @theme directive.
When to Use This Skill
- Styling components and pages
- Defining custom themes (colors, fonts, spacing)
- Implementing responsive design
- Adding dark mode support
- Using utility-first CSS approach
When NOT to use:
- Logic implementation only →
angular-v21-development
- Page routing configuration →
analogjs-development
- UI/UX design patterns →
material-design-3-expressive
Core Principles
- CSS-First Configuration: No
tailwind.config.js needed, use CSS directly
- @theme Directive: Define design tokens in CSS with
@theme { }
- Utility-First: Prefer utility classes over custom CSS
- Mobile-First: Use responsive prefixes (md:, lg:, xl:) for larger screens
- Class Binding: Use
[class] binding in Angular instead of ngClass
- Style Binding: Use
[style] binding in Angular instead of ngStyle
- Project Setup:
/* src/styles.css */
@import "tailwindcss";
@theme {
--font-sans: "Inter", ui-sans-serif, system-ui, sans-serif;
}
Implementation Guidelines
Theme Configuration
Define custom design tokens in CSS:
- Use
@theme { } block in src/styles.css
- Define CSS custom properties for colors, fonts, spacing
- TailwindCSS automatically generates utility classes from theme variables
- Use
oklch() color space for better color manipulation
→ Details: Theme Configuration
Responsive Design
Responsive layout patterns:
- Mobile-first approach: base styles for mobile
- Add breakpoint prefixes for larger screens:
md:, lg:, xl:, 2xl:
- Use responsive container classes
- Test across breakpoints
→ Details: Theme Configuration
Dark Mode
Dark mode implementation patterns:
- Use
prefers-color-scheme media query in @theme
- Override CSS custom properties for dark theme
- Use
dark: variant for component-level overrides
→ Details: Theme Configuration
Angular Integration
Patterns for using TailwindCSS with Angular:
- Use
[class] binding for conditional classes
- Use
[style] binding for dynamic styles
- Avoid
ngClass and ngStyle directives
- Keep styling in template, use component CSS for complex cases
→ Details: Theme Configuration
Layout Patterns
Common layout implementations:
- Flexbox utilities:
flex, justify-*, items-*, gap-*
- Grid utilities:
grid, grid-cols-*, col-span-*
- Container:
container mx-auto px-4
- Spacing:
p-*, m-*, space-*
→ Details: Theme Configuration
Workflow
- Design Analysis: Review design requirements and identify patterns
- Theme Setup: Define custom tokens in
@theme if needed
- Utility Styling: Apply utility classes directly in templates
- Responsive Adaptation: Add breakpoint prefixes for responsive behavior
- Interaction States: Add hover:, focus:, active: variants
- Dark Mode: Implement dark theme support if required
Related Skills
- angular-v21-development: For class binding integration
- material-design-3-expressive: For design token integration
- analogjs-development: For page styling
Reference Documentation
For detailed patterns and code examples, see:
- Theme Configuration - @theme directive and customization
1---2name: tailwindcss-v4-styling3description: Style with TailwindCSS v4 using @theme directive for theming, responsive design, and dark mode. Use when defining custom colors/fonts, implementing responsive layouts, or adding utility classes.4---5
6# TailwindCSS v4 Styling
7
8Styling guide for TailwindCSS v4 with CSS-first configuration and @theme directive.
9
10## When to Use This Skill
11
12- Styling components and pages
13- Defining custom themes (colors, fonts, spacing)
14- Implementing responsive design
15- Adding dark mode support
16- Using utility-first CSS approach
17
18**When NOT to use:**
19
20- Logic implementation only → `angular-v21-development`
21- Page routing configuration → `analogjs-development`
22- UI/UX design patterns → `material-design-3-expressive`
23
24## Core Principles
25
26- **CSS-First Configuration:** No `tailwind.config.js` needed, use CSS directly
27- **@theme Directive:** Define design tokens in CSS with `@theme { }`
28- **Utility-First:** Prefer utility classes over custom CSS
29- **Mobile-First:** Use responsive prefixes (md:, lg:, xl:) for larger screens
30- **Class Binding:** Use `[class]` binding in Angular instead of `ngClass`
31- **Style Binding:** Use `[style]` binding in Angular instead of `ngStyle`
32- **Project Setup:**
33 ```css
34 /* src/styles.css */
35 @import "tailwindcss";
36
37 @theme {
38 --font-sans: "Inter", ui-sans-serif, system-ui, sans-serif;
39 }
40 ```
41
42## Implementation Guidelines
43
44### Theme Configuration
45
46Define custom design tokens in CSS:
47
481. Use `@theme { }` block in `src/styles.css`
492. Define CSS custom properties for colors, fonts, spacing
503. TailwindCSS automatically generates utility classes from theme variables
514. Use `oklch()` color space for better color manipulation
52
53→ Details: [Theme Configuration](references/theme-configuration.md)
54
55### Responsive Design
56
57Responsive layout patterns:
58
591. Mobile-first approach: base styles for mobile
602. Add breakpoint prefixes for larger screens: `md:`, `lg:`, `xl:`, `2xl:`
613. Use responsive container classes
624. Test across breakpoints
63
64→ Details: [Theme Configuration](references/theme-configuration.md#responsive-design)
65
66### Dark Mode
67
68Dark mode implementation patterns:
69
701. Use `prefers-color-scheme` media query in `@theme`
712. Override CSS custom properties for dark theme
723. Use `dark:` variant for component-level overrides
73
74→ Details: [Theme Configuration](references/theme-configuration.md#dark-mode)
75
76### Angular Integration
77
78Patterns for using TailwindCSS with Angular:
79
801. Use `[class]` binding for conditional classes
812. Use `[style]` binding for dynamic styles
823. Avoid `ngClass` and `ngStyle` directives
834. Keep styling in template, use component CSS for complex cases
84
85→ Details: [Theme Configuration](references/theme-configuration.md#angular-integration)
86
87### Layout Patterns
88
89Common layout implementations:
90
911. Flexbox utilities: `flex`, `justify-*`, `items-*`, `gap-*`
922. Grid utilities: `grid`, `grid-cols-*`, `col-span-*`
933. Container: `container mx-auto px-4`
944. Spacing: `p-*`, `m-*`, `space-*`
95
96→ Details: [Theme Configuration](references/theme-configuration.md#layout-patterns)
97
98## Workflow
99
1001. **Design Analysis:** Review design requirements and identify patterns
1012. **Theme Setup:** Define custom tokens in `@theme` if needed
1023. **Utility Styling:** Apply utility classes directly in templates
1034. **Responsive Adaptation:** Add breakpoint prefixes for responsive behavior
1045. **Interaction States:** Add hover:, focus:, active: variants
1056. **Dark Mode:** Implement dark theme support if required
106
107## Related Skills
108
109- **angular-v21-development:** For class binding integration
110- **material-design-3-expressive:** For design token integration
111- **analogjs-development:** For page styling
112
113## Reference Documentation
114
115For detailed patterns and code examples, see:
116
117- [Theme Configuration](references/theme-configuration.md) - @theme directive and customization