/* Fonts and typography system */
/* Load Inter and Poppins if not already present on the page */

:root {
  --font-sans: Inter, ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --font-display: "Poppins", Inter, ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;

  --weight-thin: 100;
  --weight-light: 300;
  --weight-normal: 400;
  --weight-medium: 500;
  --weight-semibold: 600;
  --weight-bold: 700;

  --fs-10: 10px;
  --fs-11: 11px;
  --fs-12: 12px;
  --fs-14: 14px;
  --fs-16: 16px;
  --fs-18: 18px;
  --fs-20: 20px;

  --lh-14: 14px;
  --lh-16: 16px;
  --lh-18: 18px;
  --lh-20: 20px;
  --lh-22: 22px;
  --lh-24: 24px;
}

/* Base */
html, body {
  font-family: var(--font-sans);
  font-weight: var(--weight-light);
  font-size: var(--fs-12);
  line-height: var(--lh-20);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Global controls default to Inter Thin 100 for a clean look */
input, select, textarea, button {
  font-family: var(--font-sans);
  font-weight: var(--weight-thin);
  font-size: var(--fs-12);
  line-height: var(--lh-18);
}

/* Utilities */
.font-sans { font-family: var(--font-sans); }
.font-display { font-family: var(--font-display); }

.thin { font-weight: var(--weight-thin); }
.light { font-weight: var(--weight-light); }
.normal { font-weight: var(--weight-normal); }
.medium { font-weight: var(--weight-medium); }
.semibold { font-weight: var(--weight-semibold); }
.bold { font-weight: var(--weight-bold); }

.text-10 { font-size: var(--fs-10); line-height: var(--lh-14); }
.text-11 { font-size: var(--fs-11); line-height: var(--lh-16); }
.text-12 { font-size: var(--fs-12); line-height: var(--lh-18); }
.text-14 { font-size: var(--fs-14); line-height: var(--lh-20); }
.text-16 { font-size: var(--fs-16); line-height: var(--lh-22); }
.text-18 { font-size: var(--fs-18); line-height: var(--lh-24); }
.text-20 { font-size: var(--fs-20); line-height: var(--lh-24); }

/* Headings using display font */
h1, h2, h3, h4, h5, h6, .heading {
  font-family: var(--font-display);
  font-weight: var(--weight-semibold);
}

/* Field pattern (can be reused across pages) */
.field-input {
  font-family: var(--font-sans);
  font-weight: var(--weight-thin);
  font-size: var(--fs-12);
  line-height: var(--lh-18);
}
