/* =====================================================================
   Faturaí Med — TOKENS DE COR (landing + sistema)
   ---------------------------------------------------------------------
   Os nomes são os mesmos do app (app.faturaimed.com.br). O tema claro
   reproduz os valores que o app usa hoje — exceto --muted e --warn,
   levemente escurecidos para passar no contraste AA. O escuro vem da
   landing. Qualquer cor nova deve virar token aqui antes de ser usada.

   Como o tema é escolhido:
     <html data-theme="light"> ou <html data-theme="dark">
   A preferência do usuário ("claro" | "escuro" | "sistema") fica em
   localStorage e num cookie "fm-tema" (domínio .faturaimed.com.br),
   para a landing e o sistema lembrarem a mesma escolha.
   ===================================================================== */

:root{
  color-scheme: light;

  /* superfícies */
  --bg:          #F1F3FA;   /* fundo da página */
  --card:        #FFFFFF;   /* cartões, painéis */
  --card-2:      #F7F8FC;   /* superfície secundária dentro de cartões (.proof) */
  --sidebar:     #FFFFFF;   /* barra lateral do app */
  --input:       #FFFFFF;   /* campos de formulário */
  --code-bg:     #161B2E;   /* blocos .md / .json */
  --code-ink:    #DDE2F2;

  /* texto */
  --ink:         #171C2E;
  --ink-soft:    #3D4560;
  --muted:       #646B83;   /* app usava #6C748C: 4,2:1 sobre --bg, abaixo do AA */

  /* linhas */
  --line:        #E3E6F1;
  --line-soft:   #EFF1F8;
  --brand-line:  #C9D2EE;   /* borda azulada (.hero, .stat, .note, .crow) */

  /* marca */
  --brand:       #2C3D8F;   /* botão principal, links */
  --on-brand:    #FFFFFF;   /* texto sobre --brand */
  --brand-ink:   #1B2559;   /* texto forte sobre --brand-soft */
  --brand-soft:  #E9ECF9;   /* item ativo, realces suaves */
  --accent:      #5468C4;
  --mark-a:      #3A4DB0;   --mark-b: #2C3D8F;   --on-mark: #FFFFFF;   /* quadrado do logo "F" */

  /* estados — cor do texto */
  --ok:          #1E7A5F;
  --warn:        #946414;   /* app usava #A2701A: 3,9:1 sobre --warn-soft */
  --danger:      #B3372B;
  /* estados — fundo e borda dos avisos/badges (substituem as cores fixas) */
  --ok-soft:     #E4F2EC;   --ok-line:     #9AD9B4;
  --warn-soft:   #FBF1DD;   --warn-line:   #EACF8A;
  --danger-soft: #FBE9E7;   --danger-line: #F5B7B1;
  --info-soft:   #E7F0FB;   --info-line:   #A9C9EE;

  /* forma */
  --radius:      12px;
  --shadow:      0 12px 32px -20px rgba(23,28,46,.30);
  --shadow-sm:   0 1px 2px rgba(23,28,46,.05);
  --overlay:     rgba(12,18,26,.92);  /* fundo de lightbox/modal */
}

:root[data-theme="dark"]{
  color-scheme: dark;

  --bg:          #0A0C18;
  --card:        #141936;
  --card-2:      #10142B;
  --sidebar:     #0E1226;
  --input:       #10142B;
  --code-bg:     #070914;
  --code-ink:    #C9D0F0;

  --ink:         #F0F1F8;
  --ink-soft:    #B3B9D3;
  --muted:       #8A91AE;

  --line:        #262B4D;
  --line-soft:   #1B2040;
  --brand-line:  #2E3870;

  --brand:       #8A99FF;
  --on-brand:    #0A0C18;
  --brand-ink:   #D4DAFF;
  --brand-soft:  #1E2550;
  --accent:      #9AA7FF;
  --mark-a:      #9AA7FF;   --mark-b: #4655C8;   --on-mark: #0A0C18;

  --ok:          #4FD6A8;
  --warn:        #F0B85C;
  --danger:      #FF8A7D;
  --ok-soft:     #12332B;   --ok-line:     #23604B;
  --warn-soft:   #3A2E14;   --warn-line:   #6B5420;
  --danger-soft: #3A1C1F;   --danger-line: #6E2B2B;
  --info-soft:   #15233E;   --info-line:   #2D4A7A;

  --shadow:      0 16px 40px -24px rgba(0,0,0,.85);
  --shadow-sm:   0 1px 2px rgba(0,0,0,.45);
  --overlay:     rgba(4,6,14,.94);
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;color:var(--ink);-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}

@media(prefers-reduced-motion:reduce){
  *{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important;scroll-behavior:auto !important}
}
