# Task&Coffee Style Guide > Complete guide with examples and best practices **Quick reference?** See [STYLES_CHEATSHEET.md](./STYLES_CHEATSHEET.md) **Color details?** See [COLOR_PALETTE.md](./COLOR_PALETTE.md) **Back to main?** See [README.md](../README.md) --- ## 📦 Using Styles ### Import ```javascript import styles from '@/lib/styles'; import { cn } from '@/lib/utils'; ``` ### Примеры использования #### 1. Карточки (Cards) ```jsx // Filled card - основной вариант

Card Title

Card content...

// Elevated card с тенью

Important Card

// Task card с неоновым эффектом

Task description

// Или используя cn helper import { cn } from '@/lib/utils';
Content
``` #### 2. Кнопки (Buttons) ```jsx // Primary button // Primary с неоновым эффектом // Secondary button // Ghost button // Icon button с неоновым эффектом ``` #### 3. Layouts ```jsx // Dashboard layout
{/* Main content */}
// Grid для карточек
``` #### 4. Inputs ```jsx // Стандартный input // Input с неоновым фокусом // Search input
``` #### 5. Typography ```jsx // Headings

Main Title

Section Title

// Body text

Regular text

Muted text

// Неоновый текст (используется с neon.css) Task& Coffee ``` #### 6. Badges ```jsx // Priority badges Low Medium High Critical // Status badges Completed In Progress Failed ``` --- ## ✨ Неоновые эффекты ### CSS классы из neon.css ```jsx // Неоновое свечение при hover - голубое
Card with blue glow on hover
// Неоновое свечение - розовое
Card with pink glow on hover
// Мягкое свечение // Неоновая граница
Border with neon effect
// Неоновый текст (без анимации) Static neon text // Иконка с неоновым эффектом ``` ### Анимированный неоновый текст ```jsx // Для заголовков и брендинга
Coffee
Task&
// Для больших заголовков (fullscreen)
Task&Coffee
``` --- ## 🎭 Комбинирование стилей ### Пример: Карточка задачи с неоновым эффектом ```jsx import { cn } from '@/lib/utils'; import { cardStyles, badgeStyles, textStyles } from '@/lib/styles'; function TaskCard({ task }) { return (
{task.priority}

{task.title}

{task.description}

); } ``` ### Пример: Кнопка с неоновым эффектом и иконкой ```jsx import { PlusIcon } from 'lucide-react'; import { cn } from '@/lib/utils'; import { buttonStyles } from '@/lib/styles'; function CreateButton() { return ( ); } ``` --- ## 🎨 Миграция с dashboard.css на Tailwind ### До (dashboard.css): ```css .dashboard-task-card { background: var(--color-card); padding: 0.75rem; border-radius: 0.5rem; box-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05); } ``` ### После (с использованием стилей): ```jsx
{/* content */}
// Или чистый Tailwind:
{/* content */}
``` --- ## 📐 Радиусы округления Теперь все радиусы синхронизированы: - `rounded-sm` = `0.25rem` (4px) - `rounded-md` = `0.375rem` (6px) - `rounded-lg` = `0.5rem` (8px) ✅ **Используем для карточек и кнопок** - `rounded-xl` = `0.75rem` (12px) - `rounded-2xl` = `1rem` (16px) Базовый радиус установлен в `--radius: 0.5rem` для консистентности с Material Design 3. --- ## 🔧 Утилиты ### Neon Glow Utilities ```javascript import { utilityStyles } from '@/lib/styles';
Card with blue glow
``` ### Glassmorphism ```jsx
Glass effect card
``` ### Focus Ring ```jsx ``` --- ## 💡 Best Practices 1. **Используйте готовые стили** из `styles.js` для консистентности 2. **Комбинируйте с cn()** для добавления кастомных классов 3. **Неоновые эффекты** используйте умеренно - только для акцентов 4. **Радиусы** - используйте `rounded-lg` для основных элементов 5. **Цвета** - всегда используйте CSS переменные, не хардкодьте цвета 6. **Accessibility** - не забывайте про `focusRing` для интерактивных элементов --- ## 🚀 Быстрый старт ```jsx // 1. Импортируйте стили import styles from '@/lib/styles'; import { cn } from '@/lib/utils'; // 2. Используйте в компонентах function MyComponent() { return (

Title

Description

); } ``` Теперь у вас есть полная система стилей, объединяющая Mirage palette, Material Design 3 и неоновую эстетику! 🎉