/**
 * SAR — Reset minimalista
 * Apple-inspired: limpa o necessário sem destruir defaults úteis (focus rings, etc.)
 */

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

html,
body {
  margin: 0;
  padding: 0;
  height: 100%;
}

body {
  font-family: var(--font-family-base);
  font-size: var(--text-md);
  line-height: var(--leading-normal);
  color: var(--text-main);
  background-color: var(--bg-body);
  font-feature-settings: 'cv02', 'cv03', 'cv04', 'cv11';
}

#root {
  height: 100%;
  isolation: isolate;
}

/* Focus rings visíveis (acessibilidade — WCAG AA) */
:focus-visible {
  outline: 2px solid var(--jcs-blue);
  outline-offset: 2px;
  border-radius: 2px;
}

/* Tabular numerals em dashboards (Visual DNA) */
.tabular-nums,
[data-tabular] {
  font-variant-numeric: tabular-nums;
}

/* Image baseline */
img,
picture,
svg,
video {
  display: block;
  max-width: 100%;
}

/* Type baseline */
h1,
h2,
h3,
h4,
h5,
h6,
p {
  margin: 0;
}
