/*
 * Tokens de design partilhados pelo chat (public/chat.css) e pelo backoffice (admin-ui/src/estilo.css).
 * Só variáveis: nenhuma regra de componente vive aqui. Documentação: docs/design-system.md.
 *
 * Tema: segue o sistema (prefers-color-scheme). O backoffice pode forçar um tema com
 * <html data-tema="claro|escuro">; sem o atributo vale o do sistema.
 */

/* ---------- Cores semânticas: claro ---------- */
:root {
  --bg: #f6f3f1;
  --surface: #ffffff;
  --text: #2a2326;
  --muted: #6b6166;
  --accent: #a23b5c;
  --accent-text: #ffffff;
  --bot: #efe7ea;
  --error: #9b1c1c;
  --border: #e2d9dd;
  --border-control: #8a7f85; /* contorno de campos e botões: 3:1 contra o fundo */

  /* Estados de feedback (avisos, etiquetas): texto/ícone com ≥ 4.5:1 sobre --surface */
  --info: #2c5a9a;
  --ok: #2b6b42;
  --warn: #8a5a00;

  /* Cores dos serviços (8): fundo claro + borda forte (≥ 3:1 contra o fundo); o texto é sempre --text */
  --cor-0: #fbe3ea; --cor-0-borda: #c0577a;
  --cor-1: #dde9fb; --cor-1-borda: #3f6fb5;
  --cor-2: #dcf1e3; --cor-2-borda: #3b8a57;
  --cor-3: #fbecd0; --cor-3-borda: #a8741a;
  --cor-4: #ebe1f8; --cor-4-borda: #7a55b8;
  --cor-5: #d7f0ef; --cor-5-borda: #2e8783;
  --cor-6: #fde3d3; --cor-6-borda: #c0632e;
  --cor-7: #e3e7ec; --cor-7-borda: #5b6878;
}

/* ---------- Cores semânticas: escuro ---------- */
@media (prefers-color-scheme: dark) {
  :root:not([data-tema="claro"]) {
    --bg: #1b1618;
    --surface: #251f22;
    --text: #f1eaed;
    --muted: #b3a7ad;
    --accent: #d36a8b;
    --accent-text: #1b1618;
    --bot: #332a2e;
    --error: #ff9b9b;
    --border: #3b3237;
    --border-control: #8b7f85;
    --info: #8db4f0;
    --ok: #7fd09a;
    --warn: #e6b450;
    --cor-0: #4a2633; --cor-0-borda: #e48aa8;
    --cor-1: #22344f; --cor-1-borda: #7fa8e6;
    --cor-2: #1f3d2b; --cor-2-borda: #6fc28f;
    --cor-3: #45351a; --cor-3-borda: #e0b252;
    --cor-4: #35284d; --cor-4-borda: #b495e6;
    --cor-5: #1d3c3b; --cor-5-borda: #66c7c1;
    --cor-6: #4a2e1f; --cor-6-borda: #ec9a66;
    --cor-7: #2d343d; --cor-7-borda: #9aa7b8;
  }
}
:root[data-tema="escuro"] {
  --bg: #1b1618;
  --surface: #251f22;
  --text: #f1eaed;
  --muted: #b3a7ad;
  --accent: #d36a8b;
  --accent-text: #1b1618;
  --bot: #332a2e;
  --error: #ff9b9b;
  --border: #3b3237;
  --border-control: #8b7f85;
  --info: #8db4f0;
  --ok: #7fd09a;
  --warn: #e6b450;
  --cor-0: #4a2633; --cor-0-borda: #e48aa8;
  --cor-1: #22344f; --cor-1-borda: #7fa8e6;
  --cor-2: #1f3d2b; --cor-2-borda: #6fc28f;
  --cor-3: #45351a; --cor-3-borda: #e0b252;
  --cor-4: #35284d; --cor-4-borda: #b495e6;
  --cor-5: #1d3c3b; --cor-5-borda: #66c7c1;
  --cor-6: #4a2e1f; --cor-6-borda: #ec9a66;
  --cor-7: #2d343d; --cor-7-borda: #9aa7b8;
}

/* ---------- Escalas (iguais nos dois temas) ---------- */
:root {
  /* Espaçamento */
  --sp-1: 4px;
  --sp-2: 8px;
  --sp-3: 12px;
  --sp-4: 16px;
  --sp-5: 24px;
  --sp-6: 32px;

  /* Tipografia */
  --fs-xs: 0.8rem;
  --fs-sm: 0.85rem;
  --fs-md: 0.95rem;
  --fs-lg: 1.1rem;
  --fs-xl: 1.3rem;
  --fs-2xl: 1.6rem;
  --fs-display: 2.2rem;
  --fw-normal: 400;
  --fw-medium: 500;
  --fw-semibold: 600;
  --fw-bold: 700;
  --fonte-texto: system-ui, -apple-system, "Segoe UI", sans-serif;
  /* Títulos: serifa do sistema (sem descarregar fontes: a CSP só deixa 'self'). Dá voz de caderno de marcações ao nome do salão e às datas. */
  --fonte-titulo: "Iowan Old Style", "Palatino Linotype", Palatino, "Book Antiqua", Georgia, serif;
  --fonte-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;

  /* Raios */
  --r-sm: 6px;
  --r-md: 10px;
  --r-lg: 14px;
  --r-pill: 999px;

  /* Elevação */
  --sombra-cartao: 0 1px 2px rgb(0 0 0 / 0.12);
  --sombra-lateral: -6px 0 6px -6px rgb(0 0 0 / 0.35);
  --fundo-modal: rgb(0 0 0 / 0.5);

  /* Movimento */
  --dur-rapida: 0.15s;

  /* Alvo de toque mínimo */
  --alvo-toque: 44px;
}

/*
 * Pontos de rutura (as media queries não aceitam variáveis; ficam aqui como referência):
 *   compacto: max-width 600px   (telemóvel)
 *   largo:    min-width 900px   (menu lateral fixo)
 */
