/* ============================================================
   LCS — Fonts & base reset
   ------------------------------------------------------------
   The app's typeface is Apple SF Pro (system) + SF Pro Rounded
   for numerics/labels. These are Apple system fonts: they are
   NOT redistributable and are NOT bundled here. On Apple
   platforms `system-ui` / `ui-rounded` resolve to them exactly.
   For non-Apple platforms we load Nunito as the rounded
   fallback so circuit labels keep their soft, geometric feel.
   ============================================================ */

@import url("https://fonts.googleapis.com/css2?family=Nunito:wght@400;500;600;700&display=swap");

/* Declare the Apple system faces via local() only — resolves to the genuine
   installed SF Pro on Apple platforms, ships no binary, and falls through the
   font-family stack (to Nunito / system-ui) everywhere else. NOT a substitute
   family. Upload licensed SF Pro files and add url() srcs to embed them. */
@font-face {
  font-family: "SF Pro Text";
  src: local("SF Pro Text"), local(".SFNS-Regular"), local(".SFNSText-Regular");
  font-weight: 400 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "SF Pro Display";
  src: local("SF Pro Display"), local(".SFNSDisplay-Regular");
  font-weight: 400 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "SF Pro Rounded";
  src: local("SF Pro Rounded"), local(".SFNSRounded-Regular");
  font-weight: 400 700;
  font-style: normal;
  font-display: swap;
}

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

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

body {
  margin: 0;
  font-family: var(--font-body);
  font-size: var(--text-body);
  line-height: var(--leading-normal);
  color: var(--text-primary);
  background: var(--surface-page);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

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