/* Lavez — tokens de marca. Fonte da verdade: marca/MARCA-LAVEZ.md (2026-10-24). */
@import url('https://fonts.googleapis.com/css2?family=Lexend:wght@400;600&display=swap');

:root {
  /* Escala Água (marca) */
  --lvz-agua-50: #F0F9FD;
  --lvz-agua-100: #DFF1FA;
  --lvz-agua-200: #BDE4F5;
  --lvz-agua-300: #8DD2EF;
  --lvz-agua-400: #3FC3F5;      /* água clara — acento no tema escuro */
  --lvz-agua-500: #1A9BD4;
  --lvz-agua-600: #0274A8;      /* água — cor da marca */
  --lvz-agua-700: #035F89;
  --lvz-agua-800: #0A4A6A;
  --lvz-agua-900: #0D3550;

  /* Escala Noite (texto e neutros; parte do azul-noite da NG2D #2C3E50) */
  --lvz-noite-50: #F4F8FA;
  --lvz-noite-100: #E9EFF3;
  --lvz-noite-200: #DCE6EC;
  --lvz-noite-300: #BCCAD5;
  --lvz-noite-400: #9DB1C1;
  --lvz-noite-500: #7A8D9D;
  --lvz-noite-600: #56687A;
  --lvz-noite-650: #6F8396;
  --lvz-noite-700: #3C4E60;
  --lvz-noite-800: #2C3E50;
  --lvz-noite-850: #24384A;
  --lvz-noite-900: #172533;
  --lvz-noite-950: #0F1A24;

  /* Semânticas (nunca na cor da marca) */
  --lvz-pronto-600: #0F7C88;  --lvz-pronto-400: #4FD1C5;  --lvz-pronto-100: #DDF4F2;
  --lvz-alerta-600: #C2362F;  --lvz-alerta-300: #FF8A80;  --lvz-alerta-100: #FDE7E5;
  --lvz-aviso-700: #A14A06;   --lvz-aviso-300: #F5B94A;   --lvz-aviso-100: #FDF1DC;

  /* Papéis — tema claro */
  --lvz-fundo: var(--lvz-noite-50);
  --lvz-superficie: #FFFFFF;
  --lvz-superficie-destaque: var(--lvz-agua-100);
  --lvz-texto: var(--lvz-noite-800);
  --lvz-texto-secundario: var(--lvz-noite-600);
  --lvz-acento: var(--lvz-agua-600);
  --lvz-acento-hover: var(--lvz-agua-700);
  --lvz-sobre-acento: #FFFFFF;
  --lvz-borda: var(--lvz-noite-200);          /* decorativa */
  --lvz-borda-campo: var(--lvz-noite-500);    /* campo de formulário: 3:1 */
  --lvz-sucesso: var(--lvz-pronto-600);
  --lvz-aviso: var(--lvz-aviso-700);
  --lvz-erro: var(--lvz-alerta-600);

  /* Estados da lavagem — sempre com o rótulo em texto junto */
  --lvz-status-agendado: var(--lvz-noite-600);
  --lvz-status-na-fila: var(--lvz-aviso-700);
  --lvz-status-lavando: var(--lvz-agua-600);
  --lvz-status-finalizando: var(--lvz-agua-800);
  --lvz-status-pronto: var(--lvz-pronto-600);
  --lvz-status-cancelado: var(--lvz-alerta-600);

  /* Tipo */
  --lvz-font: "Lexend", system-ui, sans-serif;
  --lvz-weight-regular: 400;
  --lvz-weight-bold: 600;

  /* Espaço (4/8) e cantos por papel */
  --lvz-space-1: 4px;  --lvz-space-2: 8px;  --lvz-space-3: 12px;
  --lvz-space-4: 16px; --lvz-space-6: 24px; --lvz-space-8: 32px; --lvz-space-12: 48px;
  --lvz-radius-peca: 6px;        /* selo, badge */
  --lvz-radius-controle: 12px;   /* botão, campo */
  --lvz-radius-superficie: 14px; /* cartão, folha */
  --lvz-radius-pilula: 999px;    /* chip de filtro, status */

  --lvz-shadow-sm: 0 1px 2px color-mix(in srgb, #2C3E50 12%, transparent);
  --lvz-shadow-md: 0 4px 14px color-mix(in srgb, #2C3E50 14%, transparent);
  --lvz-shadow-lg: 0 16px 36px color-mix(in srgb, #2C3E50 20%, transparent);
}

/* Papéis — tema escuro (mesmos nomes) */
@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) {
  --lvz-fundo: var(--lvz-noite-950); --lvz-superficie: var(--lvz-noite-900); --lvz-superficie-destaque: #133047;
  --lvz-texto: #E8F1F6; --lvz-texto-secundario: var(--lvz-noite-400);
  --lvz-acento: var(--lvz-agua-400); --lvz-acento-hover: var(--lvz-agua-300); --lvz-sobre-acento: #06202E;
  --lvz-borda: var(--lvz-noite-850); --lvz-borda-campo: var(--lvz-noite-650);
  --lvz-sucesso: var(--lvz-pronto-400); --lvz-aviso: var(--lvz-aviso-300); --lvz-erro: var(--lvz-alerta-300);
  --lvz-status-agendado: var(--lvz-noite-400); --lvz-status-na-fila: var(--lvz-aviso-300); --lvz-status-lavando: var(--lvz-agua-400);
  --lvz-status-finalizando: var(--lvz-agua-300); --lvz-status-pronto: var(--lvz-pronto-400); --lvz-status-cancelado: var(--lvz-alerta-300);
  color-scheme: dark;
} }
:root[data-theme="dark"] {
  --lvz-fundo: var(--lvz-noite-950); --lvz-superficie: var(--lvz-noite-900); --lvz-superficie-destaque: #133047;
  --lvz-texto: #E8F1F6; --lvz-texto-secundario: var(--lvz-noite-400);
  --lvz-acento: var(--lvz-agua-400); --lvz-acento-hover: var(--lvz-agua-300); --lvz-sobre-acento: #06202E;
  --lvz-borda: var(--lvz-noite-850); --lvz-borda-campo: var(--lvz-noite-650);
  --lvz-sucesso: var(--lvz-pronto-400); --lvz-aviso: var(--lvz-aviso-300); --lvz-erro: var(--lvz-alerta-300);
  --lvz-status-agendado: var(--lvz-noite-400); --lvz-status-na-fila: var(--lvz-aviso-300); --lvz-status-lavando: var(--lvz-agua-400);
  --lvz-status-finalizando: var(--lvz-agua-300); --lvz-status-pronto: var(--lvz-pronto-400); --lvz-status-cancelado: var(--lvz-alerta-300);
  color-scheme: dark;
}

body { background: var(--lvz-fundo); color: var(--lvz-texto); font-family: var(--lvz-font); }
h1, h2, h3, h4 { font-weight: var(--lvz-weight-bold); letter-spacing: -0.01em; }
:focus-visible { outline: 2px solid var(--lvz-acento); outline-offset: 2px; }
::selection { background: var(--lvz-agua-200); color: var(--lvz-noite-800); }
a { color: var(--lvz-acento); } a:hover { color: var(--lvz-acento-hover); }
.num { font-variant-numeric: tabular-nums; } /* preços, horários, distâncias, notas */
