/* notasis site — 1/5 tokens: fonts, colours (light theme only for the marketing site), spacing, type styles.
   Loaded first on every page. Mirrors design-system/tokens.css; change the brand there first. */
/* notasis design tokens — generated from tokens.json. Themes: "Paper" (light, default) and "Ink" (dark). */
@font-face { font-family: "Geist"; src: url("/assets/fonts/Geist-Variable.woff2") format("woff2"); font-weight: 100 900; font-style: normal; font-display: swap; }
@font-face { font-family: "Geist Mono"; src: url("/assets/fonts/GeistMono-Variable.woff2") format("woff2"); font-weight: 100 900; font-style: normal; font-display: swap; }

:root, [data-theme="light"] {
  --paper: #F8F6F1;
  --paper-sunken: #F1EEE7;
  --paper-raised: #FFFEFB;
  --line: #DDD8CC;
  --line-strong: #B9B2A3;
  --line-control: #8A8475;
  --ink: #191C23;
  --ink-muted: #474C57;
  --ink-subtle: #646A77;
  --accent: #2F3B8C;
  --accent-hover: #252F72;
  --accent-tint: #E9EBF5;
  --on-accent: #FFFFFF;
  --suggest: #5F6573;
  --applied: #0E6B74;
  --applied-tint: #E3F0F0;
  --review: #8F5200;
  --review-tint: #F7EBD9;
  --conflict: #AE3424;
  --conflict-tint: #F7E4E0;
  --group-a: #3E5BA9;
  --group-b: #8A4B86;
  --group-c: #5F7A2E;
  --group-d: #8C5A3C;
  --group-e: #4F6475;
  --shadow-float: 0 1px 2px rgba(25,28,35,0.06), 0 8px 24px rgba(25,28,35,0.08);
  /* Ink-theme values for text and lines on the dark "For institutions" block */
  --inverse-muted: #B9BCC5;
  --inverse-line: #30343D;
  --inverse-line-control: #686D79;
}

:root {
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-6: 24px;
  --space-8: 32px;
  --space-16: 64px;
  --radius-xs: 2px;
  --radius-sm: 4px;
  --radius-md: 6px;
  --stroke-hairline: 1px;
  --stroke-region: 1.5px;
  --stroke-focus: 2px;
  --font-sans: "Geist", ui-sans-serif, system-ui, sans-serif;
  --font-mono: "Geist Mono", ui-monospace, "SFMono-Regular", monospace;
}

/* Type styles */
.t-display { font-family: var(--font-sans); font-size: 64px; line-height: 64px; font-weight: 560; letter-spacing: -0.035em; }  /* Landing-page hero only; one per page. Sentence case, ends with a full stop. */
.t-headline { font-family: var(--font-sans); font-size: 40px; line-height: 44px; font-weight: 560; letter-spacing: -0.025em; }  /* Marketing section headings and slide titles. */
.t-lede { font-family: var(--font-sans); font-size: 19px; line-height: 30px; font-weight: 400; letter-spacing: -0.005em; }  /* Intro paragraph under display or headline, in ink-muted. Max 60ch. */
.t-title { font-family: var(--font-sans); font-size: 22px; line-height: 28px; font-weight: 600; letter-spacing: -0.015em; }  /* Page and modal titles in the app. */
.t-heading { font-family: var(--font-sans); font-size: 15px; line-height: 22px; font-weight: 600; letter-spacing: -0.005em; }  /* Panel and section headings in the app. */
.t-body { font-family: var(--font-sans); font-size: 14px; line-height: 21px; font-weight: 400; }  /* Default UI and long-reading text: rubric descriptions, comments, settings. */
.t-body-strong { font-family: var(--font-sans); font-size: 14px; line-height: 21px; font-weight: 550; }  /* Emphasis inside body; labels of rows and buttons. */
.t-small { font-family: var(--font-sans); font-size: 12.5px; line-height: 18px; font-weight: 400; letter-spacing: 0.005em; }  /* Metadata, helper text, table secondary lines. ink-subtle or ink-muted. */
.t-label { font-family: var(--font-sans); font-size: 11px; line-height: 14px; font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase; }  /* Overlines and column headers only, uppercase. Never for sentences. */
.t-score { font-family: var(--font-mono); font-size: 14px; line-height: 20px; font-weight: 500; }  /* Scores, point values, counts in tables. Tabular by nature: columns align. */
.t-score-lg { font-family: var(--font-mono); font-size: 28px; line-height: 32px; font-weight: 500; letter-spacing: -0.02em; }  /* The score shown on a group or answer header. */
.t-code { font-family: var(--font-mono); font-size: 12.5px; line-height: 18px; font-weight: 400; }  /* Student IDs, question references, keyboard hints. */
