/* SNS canonical stylesheet 3/5 — BASE. Semantic element defaults + page rhythm.
   Loads after tokens, before components. Everything here is a low-specificity
   default that components.css may override. Consumes tokens only — no literals.
   DESIGN_SYSTEM_RESET_2026-05-31 §D. */
@layer base {
  body {
    font-family: var(--f-body, "Inter", system-ui, sans-serif);
    background: var(--bg-page, #050505);
    color: var(--text-primary, #F5F5F5);
    font-size: var(--fs-body, 1rem);
    line-height: var(--sns-lh-body, 1.5);
    -webkit-font-smoothing: antialiased;
  }
  h1, h2, h3, h4, h5, h6 {
    font-family: var(--f-display, "Graduate", "Oswald", sans-serif);
    font-weight: 400;
    line-height: var(--sns-lh-title, 1.1);
    letter-spacing: .02em;
  }
  a { color: var(--red-bright, #FF3B30); text-decoration: none; }
  a:hover { color: var(--white-bright, #F5F5F5); }
  strong, b { font-weight: 700; }
  small { font-size: var(--fs-meta, .75rem); }
  :focus-visible { outline: 2px solid var(--red-bright, #FF3B30); outline-offset: 2px; }
}
