/* ============================================================
   BASE — reset minimal + tipografie de bază
   ============================================================ */

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

html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }

body {
  margin: 0;
  font-family: var(--font-sans);
  font-size: var(--fs-base);
  line-height: var(--lh-base);
  color: var(--c-text);
  background: var(--c-bg);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

h1, h2, h3, h4 {
  font-family: var(--font-serif);
  line-height: var(--lh-tight);
  color: var(--c-text);
  font-weight: 600;
  margin: 0 0 var(--sp-3);
}
h1 { font-size: var(--fs-2xl); letter-spacing: -.5px; }
h2 { font-size: var(--fs-xl); }
h3 { font-size: var(--fs-lg); }

p { margin: 0 0 var(--sp-4); }

a { color: var(--c-link); text-decoration: none; }
a:hover { text-decoration: underline; }

strong { font-weight: 600; }

ul, ol { margin: 0 0 var(--sp-4); padding-left: 1.4em; }
li { margin-bottom: var(--sp-2); }

code {
  font-family: ui-monospace, "SF Mono", "Cascadia Code", Consolas, monospace;
  font-size: .9em;
  background: var(--c-accent-soft);
  color: var(--c-accent-strong);
  padding: .12em .4em;
  border-radius: 6px;
}

img { max-width: 100%; height: auto; }

:focus-visible {
  outline: 3px solid var(--c-accent);
  outline-offset: 2px;
  border-radius: 4px;
}

::selection { background: var(--c-aur-bg); }

.empty-state {
  color: var(--c-text-faint);
  text-align: center;
  padding: var(--sp-8) 0;
  font-style: italic;
}
