/* ============================================================
   ONG Mãe — Sistema de Gestão Terapêutica
   Tokens de design compartilhados (cores, tipografia, raios)
   Espelham as variáveis usadas na anamnese guiada
   ============================================================ */

:root {
  /* Texto */
  --color-text-primary: #141413;
  --color-text-secondary: #5a5a58;
  --color-text-tertiary: #8e8e8b;
  --color-text-inverse: #ffffff;

  /* Backgrounds */
  --color-background-primary: #ffffff;
  --color-background-secondary: #f7f6f4;
  --color-background-tertiary: #efede9;

  /* Borders */
  --color-border-primary: #c8c6c0;
  --color-border-secondary: #d9d6d0;
  --color-border-tertiary: #ebe8e2;

  /* Marca — verde institucional */
  --brand-50:  #E1F5EE;
  --brand-100: #BCE9D8;
  --brand-200: #9FE1CB;
  --brand-300: #5DCAA5;
  --brand-400: #1D9E75;
  --brand-500: #0E7B57;
  --brand-600: #085041;
  --brand-700: #04342C;

  /* Especialidades — cores fixas */
  --spec-to:    #1D9E75;
  --spec-psi:   #534AB7;
  --spec-ped:   #D85A30;
  --spec-psicoped: #B2318C;
  --spec-fono:  #185FA5;
  --spec-to-bg:    #E1F5EE;
  --spec-psi-bg:   #EEEDFE;
  --spec-ped-bg:   #FCEDE3;
  --spec-psicoped-bg: #F9E6F2;
  --spec-fono-bg:  #E6F1FB;

  /* Status */
  --color-success: #1D9E75;
  --color-success-bg: #E1F5EE;
  --color-warning: #EF9F27;
  --color-warning-bg: #FAEEDA;
  --color-danger:  #C2410C;
  --color-danger-bg: #FCEBEB;
  --color-info:    #185FA5;
  --color-info-bg: #E6F1FB;

  /* Tipografia */
  --font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", "Inter", system-ui, sans-serif;

  /* Raios */
  --border-radius-sm: 4px;
  --border-radius-md: 6px;
  --border-radius-lg: 10px;
  --border-radius-xl: 14px;

  /* Sombras */
  --shadow-xs: 0 1px 2px rgba(20,20,19,0.04);
  --shadow-sm: 0 2px 6px rgba(20,20,19,0.06);
  --shadow-md: 0 4px 16px rgba(20,20,19,0.08);
}

* { box-sizing: border-box; margin: 0; padding: 0; }

html, body {
  font-family: var(--font-sans);
  color: var(--color-text-primary);
  font-size: 14px;
  background: var(--color-background-secondary);
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}

a { color: inherit; text-decoration: none; }
button { font-family: inherit; cursor: pointer; }

/* Acessibilidade */
.sr-only {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0;
}

:focus-visible {
  outline: 2px solid var(--brand-400);
  outline-offset: 2px;
  border-radius: var(--border-radius-sm);
}
