/* Veritatem · base do site: fontes, cores dos modos Papel (claro) e Noite (escuro) e tokens usados pela página. */

@font-face { font-family: "Geist"; font-style: normal; font-weight: 100 900; font-display: swap; src: url("fonts/geist.woff2") format("woff2"); }
@font-face { font-family: "Geist Mono"; font-style: normal; font-weight: 100 900; font-display: swap; src: url("fonts/geistmono.woff2") format("woff2"); }
@font-face { font-family: "Instrument Serif"; font-style: italic; font-weight: 400; font-display: swap; src: url("fonts/instrument-serif-italic.woff2") format("woff2"); }

/* Modo Papel (tema claro do visitante) */
:root {
  color-scheme: light;
  --vt-accent: #4A6FA5;
  --color-bg: #F6F8FB;
  --color-panel: #FFFFFF;
  --color-fg: #151D2F;
  --color-fg-muted: #5C6372;
  --color-border-line: #DCE2EC;
  --color-ok: #2F7D4F;
  --color-warn: #A97A1C;
  --color-bad: #B23A2A;
  --cds-chart-grid: #E6EAF1;
  --cds-chart-muted: #BFC5D1;
  --cds-surface-popover: #FFFFFF;
  --cds-border: #DCE2EC;
  --cds-shadow-popover: 0 10px 28px rgba(21, 29, 47, .14);
  --cds-text-secondary: #5C6372;

  --font-anthropic-sans: Geist, -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;
  --font-anthropic-serif: var(--font-anthropic-sans);
  --cds-font-size-caption: 13px;
  --cds-font-size-body: 15px;
  --cds-font-size-heading: 18px;
  --cds-font-size-title: 28px;
  --cds-font-weight-medium: 500;
  --cds-gap-xs: 4px; --cds-gap-sm: 8px; --cds-gap-md: 16px; --cds-gap-lg: 24px; --cds-gap-xl: 40px;
  --cds-pad-xs: 6px; --cds-pad-sm: 10px; --cds-pad-md: 16px; --cds-pad-lg: 24px; --cds-pad-xl: 32px;
  --cds-radius: 14px;
  --cds-dur-slow: 520ms;
  --cds-ease-out: cubic-bezier(.2, .7, .2, 1);
}

/* Modo Noite (tema escuro do visitante) */
@media (prefers-color-scheme: dark) {
  :root {
    color-scheme: dark;
    --vt-accent: #8BA4CC;
    --color-bg: #151D2F;
    --color-panel: #1E283C;
    --color-fg: #F3F6FB;
    --color-fg-muted: #8592AA;
    --color-border-line: #2F3B52;
    --color-ok: #5BC28A;
    --color-warn: #E8C46A;
    --color-bad: #E07A6E;
    --cds-chart-grid: #26314A;
    --cds-chart-muted: #3B4760;
    --cds-surface-popover: #222D44;
    --cds-border: #2F3B52;
    --cds-shadow-popover: 0 12px 32px rgba(0, 0, 0, .45);
    --cds-text-secondary: #8592AA;
  }
}

*, *::before, *::after { box-sizing: border-box; }
[hidden] { display: none !important; }
html, body { margin: 0; background: var(--color-bg); color: var(--color-fg); }
body { font-family: var(--font-anthropic-sans); font-size: var(--cds-font-size-body); line-height: 1.5; -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
#dash-root { padding: clamp(16px, 3vw, 40px) clamp(16px, 3.5vw, 48px) 56px; }
.dash-skeleton { color: transparent; }
