3.9 KiB
3.9 KiB
Guía de Estilos Tailwind CSS - Studio Panel
Actualización: 2025-11-10
Se ha aplicado Tailwind CSS de forma consistente en todo el studio-panel, siguiendo el patrón establecido en broadcast-panel.
Principios de Diseño
Colores Base
- Fondo principal:
bg-[#1f1f1f](gris oscuro) - Fondo secundario:
bg-gray-900 - Gradientes:
bg-gradient-to-br from-gray-900 via-gray-800 to-gray-900 - Bordes sutiles:
border-white/[0.04]aborder-white/[0.12] - Superficies elevadas:
bg-white/[0.02]abg-white/[0.06]
Texto
- Primario:
text-white - Secundario:
text-white/80 - Terciario:
text-white/60 - Muted:
text-gray-400
Espaciado Consistente
- Padding pequeño:
px-3 py-2op-3 - Padding medio:
px-4 py-2.5op-4 - Padding grande:
px-6 py-3op-6 - Gaps:
gap-2,gap-3,gap-4
Bordes y Radios
- Border radius estándar:
rounded-lg(0.5rem) - Border radius pequeño:
rounded-md(0.375rem) - Border radius extra:
rounded-xl(0.75rem) - Border radius completo:
rounded-full
Sombras
- Sombra ligera:
shadow-sm - Sombra media:
shadow-md - Sombra grande:
shadow-lg - Sombra extra:
shadow-xlyshadow-2xl - Sombras de color:
shadow-blue-500/20,shadow-red-500/20
Componentes Actualizados
Header
className="bg-[#1f1f1f] shadow-md border-b border-white/[0.04]"
Button
- Default: Fondo semitransparente con hover
- Primary: Gradiente azul con sombra
- Ghost: Transparente con hover sutil
- Danger: Gradiente rojo con sombra
IconButton
className="px-2.5 py-2.5 rounded-lg hover:bg-white/10 active:bg-white/5 transition-all duration-200"
Cards
className="bg-white/[0.02] border border-white/[0.06] rounded-lg p-6 hover:bg-white/[0.04] hover:border-white/[0.12] transition-all duration-200"
Transiciones Estándar
Duración
- Rápida:
duration-150 - Normal:
duration-200 - Lenta:
duration-300
Propiedades
- Colores:
transition-colors - Todo:
transition-all - Opacidad:
transition-opacity
Hover States
hover:bg-white/10
hover:shadow-xl
hover:scale-105
active:scale-95
Focus States
focus:outline-none
focus:ring-2
focus:ring-white/20
focus:ring-offset-2
focus:ring-offset-gray-900
Estados Disabled
disabled:opacity-50
disabled:cursor-not-allowed
disabled:pointer-events-none
Mejores Prácticas
- Usar clases utilitarias en lugar de CSS personalizado
- Mantener consistencia con espaciado (múltiplos de 4px)
- Aplicar transiciones a elementos interactivos
- Usar opacidad para variaciones de color (
white/10,white/60) - Gradientes sutiles para profundidad visual
- Sombras contextuales con colores de acento
Paleta de Colores Acento
Blue (Primary)
from-blue-600 to-blue-500hover:from-blue-500 hover:to-blue-400shadow-blue-500/20
Red (Danger/Record)
from-red-600 to-red-500hover:from-red-500 hover:to-red-400shadow-red-500/20
Green (Success)
bg-green-400shadow-green-400/50
Yellow (Warning)
bg-yellow-400shadow-yellow-400/50
Responsive Design
Breakpoints
sm:- 640pxmd:- 768pxlg:- 1024pxxl:- 1280px
Grid Patterns
grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4
Archivos Modificados
src/components/Header.tsxsrc/components/header/Brand.tsxsrc/components/header/LiveBadge.tsxsrc/components/header/RecordButton.tsxsrc/components/ui/Button.tsxsrc/components/ui/IconButton.tsxsrc/components/figma/FigmaHeader.tsxsrc/components/figma/PersonCard.tsxsrc/components/figma/MediaGrid.tsxsrc/App.tsx
Validación
✅ TypeCheck: OK ✅ Lint: OK ✅ Consistencia visual con broadcast-panel ✅ Transiciones suaves aplicadas ✅ Estados hover/focus/active implementados