---
name: retro-css-architecture
description: Organize 8-bit CSS with custom properties, pixel fonts, and responsive pixel art. Apply when creating or modifying retro-styled components and their CSS.
---
## Retro CSS Architecture
Organize CSS for 8-bit components using custom properties, pixel fonts, and responsive patterns.
### Required Import
All 8-bit components must import the retro stylesheet:
```tsx
import "@/components/ui/8bit/styles/retro.css";
```
### Pixel Font
Use "Press Start 2P" for authentic 8-bit typography:
```css
.retro {
font-family: "Press Start 2P", system-ui, -apple-system, sans-serif;
line-height: 1.5;
letter-spacing: 0.5px;
}
```
Apply via class or font variant:
```tsx
// or via font prop
```
### Pixelated Images
For sharp pixel art images:
```css
.pixelated {
image-rendering: pixelated;
image-rendering: crisp-edges;
}
```
```tsx
```
### Dark Mode Colors
Use semantic color names with dark mode variants:
```tsx
```
### Responsive Pixel Sizes
Use consistent pixel values for retro feel:
```tsx
{/* Standard pixel sizes */}
{/* Corner pixels */}
{/* Shadow segments */}
{/* Card borders */}
{/* Mobile considerations */}
```
### CSS Organization
Keep retro-specific styles in `components/ui/8bit/styles/retro.css`:
```css
/* Import pixel font */
@import url("https://fonts.googleapis.com/css2?family=Press+Start+2P&display=swap");
/* Font class */
.retro {
font-family: "Press Start 2P", system-ui, -apple-system, sans-serif;
line-height: 1.5;
letter-spacing: 0.5px;
}
/* Image handling */
.pixelated {
image-rendering: pixelated;
image-rendering: crisp-edges;
}
```
### Component-Level CSS
Use Tailwind utilities for component-specific styling:
```tsx
```
### Key Principles
1. **Import retro.css** - Required for all 8-bit components
2. **Pixel font** - Use "Press Start 2P" for authentic look
3. **Pixelated images** - Apply `image-rendering: pixelated` to sprites
4. **Consistent sizing** - Use fixed pixel values (1.5, 3, 6px)
5. **Dark mode** - Use semantic colors with `dark:` prefix
6. **rounded-none** - Remove all border radius for retro feel
7. **Tailwind first** - Use utilities before custom CSS
### Reference Files
- `components/ui/8bit/styles/retro.css` - Global retro styles
- `components/ui/8bit/button.tsx` - CSS class usage example