Files
SeConectai_Vendas/frontend/app/globals.css
T
tiagoandClaude Sonnet 5 323912748f Frontend completo (Etapas 11-18) e extensões de backend (Etapas 13 e 18)
Adiciona o frontend Next.js em frontend/ (setup, design system,
autenticação/tema, layout/navegação, área master, área tenant completa:
clientes, produtos, vendas, recebimentos, whatsapp, e-mail, alertas,
equipe e perfil). Estende o backend de forma aditiva e autorizada:
cookie httpOnly para refresh token (Etapa 13) e CRUD de equipe +
edição de perfil do tenant (Etapa 18, módulo src/modules/equipe/ novo
e PUT /tenant/perfil). Detalhes completos em Etapas/V2/*.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-16 09:41:13 -03:00

130 lines
4.3 KiB
CSS

@import 'tailwindcss';
@import '../styles/tokens.css';
@import 'tw-animate-css';
@import 'shadcn/tailwind.css';
@custom-variant dark (&:is(.dark *));
@theme inline {
--color-sidebar-ring: var(--sidebar-ring);
--color-sidebar-border: var(--sidebar-border);
--color-sidebar-accent-foreground: var(--sidebar-accent-foreground);
--color-sidebar-accent: var(--sidebar-accent);
--color-sidebar-primary-foreground: var(--sidebar-primary-foreground);
--color-sidebar-primary: var(--sidebar-primary);
--color-sidebar-foreground: var(--sidebar-foreground);
--color-sidebar: var(--sidebar);
--color-chart-5: var(--chart-5);
--color-chart-4: var(--chart-4);
--color-chart-3: var(--chart-3);
--color-chart-2: var(--chart-2);
--color-chart-1: var(--chart-1);
--color-ring: var(--ring);
--color-input: var(--input);
--color-border: var(--border);
--color-destructive-foreground: var(--destructive-foreground);
--color-destructive: var(--destructive);
--color-accent-foreground: var(--accent-foreground);
--color-accent: var(--accent);
--color-muted-foreground: var(--muted-foreground);
--color-muted: var(--muted);
--color-secondary-foreground: var(--secondary-foreground);
--color-secondary: var(--secondary);
--color-primary-foreground: var(--primary-foreground);
--color-primary: var(--primary);
--color-popover-foreground: var(--popover-foreground);
--color-popover: var(--popover);
--color-card-foreground: var(--card-foreground);
--color-card: var(--card);
--color-foreground: var(--foreground);
--color-background: var(--background);
--radius-sm: calc(var(--radius) * 0.6);
--radius-md: calc(var(--radius) * 0.8);
--radius-lg: var(--radius);
--radius-xl: calc(var(--radius) * 1.4);
--radius-2xl: calc(var(--radius) * 1.8);
--radius-3xl: calc(var(--radius) * 2.2);
--radius-4xl: calc(var(--radius) * 2.6);
}
/*
* Ponte shadcn/ui → tokens do projeto (styles/tokens.css). Em vez da
* paleta oklch neutra que o `shadcn init` gera por padrão, cada variável
* que os componentes shadcn consomem aponta para os tokens definidos na
* Etapa 11 — assim customizar a cor de marca (--color-primary, dinâmica
* por tenant a partir da Etapa 13) muda os componentes automaticamente,
* sem precisar editar cada um.
*/
:root {
--background: var(--neutral-50);
--foreground: var(--neutral-950);
--card: var(--surface);
--card-foreground: var(--neutral-950);
--popover: var(--surface);
--popover-foreground: var(--neutral-950);
--primary: var(--color-primary);
--primary-foreground: #ffffff;
--secondary: var(--neutral-50);
--secondary-foreground: var(--neutral-950);
--muted: var(--neutral-50);
--muted-foreground: var(--neutral-500);
--accent: var(--neutral-50);
--accent-foreground: var(--neutral-950);
--destructive: var(--danger);
--destructive-foreground: #ffffff;
--border: var(--neutral-200);
--input: var(--neutral-200);
--ring: var(--color-primary);
--radius: 0.625rem;
--chart-1: var(--color-primary);
--chart-2: var(--success);
--chart-3: var(--warning);
--chart-4: var(--danger);
--chart-5: var(--neutral-500);
--sidebar: var(--surface);
--sidebar-foreground: var(--neutral-950);
--sidebar-primary: var(--color-primary);
--sidebar-primary-foreground: #ffffff;
--sidebar-accent: var(--neutral-50);
--sidebar-accent-foreground: var(--neutral-950);
--sidebar-border: var(--neutral-200);
--sidebar-ring: var(--color-primary);
}
@layer base {
* {
@apply border-border outline-ring/50;
}
body {
@apply bg-background text-foreground;
}
html {
@apply font-sans;
}
/* Fallback de foco para elementos nativos que não passam por um
componente shadcn (esses já têm seu próprio focus-visible:ring). */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
[tabindex]:focus-visible {
outline: 2px solid var(--ring);
outline-offset: 2px;
}
}
/* `prefers-reduced-motion` (Etapa 12, obrigatório) — aplicado globalmente
para cobrir qualquer animação/transição, independente da biblioteca. */
@media (prefers-reduced-motion: reduce) {
*,
*::before,
*::after {
animation-duration: 0.01ms !important;
animation-iteration-count: 1 !important;
transition-duration: 0.01ms !important;
scroll-behavior: auto !important;
}
}