/* FUP-analys design tokens — Nordic legal editorial.
 *
 * Single source of truth for colour, type, spacing, borders, focus and status treatment.
 * No gradients, no glassmorphism, no decorative shadow. Every status is carried by at least
 * a Swedish text label, a glyph, a border treatment and contrast — never colour alone.
 */

:root {
  color-scheme: light;

  /* ---- Surfaces -------------------------------------------------------- */
  --paper: #fdfcfa;              /* warm white primary work surface */
  --paper-raised: #ffffff;       /* inputs, table cells, panels on paper */
  --paper-sunken: #f3f5f4;       /* verifier band, secondary panels */
  --canvas: #e9eae6;             /* very light warm neutral page background */
  --doc-canvas: #d6d9db;         /* NEUTRAL backdrop behind evidence images.
                                    Deliberately untinted so the viewer never
                                    changes how a scanned page appears. */
  --decision-surface: #fbf8f1;   /* reviewer decision band */
  --advanced-surface: #f0f2f1;   /* recessed development controls */

  /* ---- Ink and structure ----------------------------------------------- */
  --ink-900: #10202b;            /* deep ink-navy: header, structural bands */
  --ink-700: #1d3446;            /* navy: primary actions, headings */
  --ink-500: #2f4a5e;
  --graphite-800: #202a31;       /* body text */
  --slate-600: #55636e;          /* secondary text */
  --slate-400: #8a959c;
  --slate-450: #667179;
  --on-ink: #f4f6f7;             /* text on ink-900 */
  --on-ink-muted: #c3ced6;

  /* ---- Rules ------------------------------------------------------------ */
  --rule: #cbd1d3;
  --rule-strong: #7a858c;
  --rule-hair: #dfe3e4;
  --print-rule: #000000;

  /* ---- Focus ------------------------------------------------------------ */
  --focus: #14509b;              /* used for focus rings and nothing else */
  --focus-width: 3px;
  --focus-offset: 2px;

  /* ---- Status: verification -------------------------------------------- */
  --supported-ink: #14513c;
  --supported-tint: #e7f0ea;
  --supported-rule: #14513c;

  --partial-ink: #6e4a0b;
  --partial-tint: #f7efdd;
  --partial-rule: #6e4a0b;

  --alert-ink: #8a1f2b;          /* unsupported and missing_page */
  --alert-tint: #fbe9ea;
  --alert-rule: #8a1f2b;

  --neutral-ink: #444f58;        /* no_citation, unreviewed, skipped */
  --neutral-tint: #e7e9ea;
  --neutral-rule: #8a959c;

  --info-ink: #1d3446;
  --info-tint: #e7edf1;

  --external-ink: #5f3100;
  --external-tint: #fff1df;
  --external-rule: #8b4700;

  /* ---- Typography ------------------------------------------------------- */
  /* Local stacks only. No remote fonts, no CDN, no @font-face download.
     Palatino-class faces lead the display stack for an institutional print feel and
     degrade to Georgia. "Inter" is deliberately absent: it was never shipped, so the
     previous stack rendered differently on machines that happened to have it. */
  --font-display: "Iowan Old Style", "Palatino Linotype", Palatino, "Book Antiqua",
    Georgia, "Times New Roman", serif;
  --font-ui: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI",
    Roboto, "Helvetica Neue", Arial, sans-serif;
  --font-data: ui-monospace, SFMono-Regular, "Cascadia Mono", Consolas,
    "Liberation Mono", Menlo, monospace;

  --text-2xs: 0.75rem;
  --text-xs: 0.8125rem;
  --text-sm: 0.875rem;
  --text-base: 1rem;
  --text-md: 1.125rem;
  --text-lg: 1.375rem;
  --text-xl: 1.75rem;
  --text-2xl: 2.25rem;

  --leading-tight: 1.2;
  --leading-normal: 1.55;
  --leading-reading: 1.65;

  --weight-normal: 400;
  --weight-medium: 550;
  --weight-semibold: 650;
  --weight-bold: 800;

  --tracking-caps: 0.12em;

  /* ---- Spacing (4px base) ----------------------------------------------- */
  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-5: 1.25rem;
  --space-6: 1.5rem;
  --space-8: 2rem;
  --space-10: 2.5rem;
  --space-12: 3rem;

  /* ---- Borders and radii ------------------------------------------------ */
  /* Small radii only: a legal record, not a consumer card deck. */
  --radius-sm: 2px;
  --radius-md: 3px;
  --border-hair: 1px;
  --border-gutter: 3px;          /* claim status gutter, normal weight */
  --border-gutter-strong: 6px;   /* unsupported / missing page */
  --border-band: 4px;            /* provenance band edge */

  /* ---- Elevation --------------------------------------------------------
     Exactly one shadow token. Depth comes from rules and surface value. */
  --shadow-panel: 0 1px 2px rgba(16, 32, 43, 0.06), 0 6px 18px rgba(16, 32, 43, 0.05);

  /* ---- Motion ----------------------------------------------------------- */
  --motion-fast: 120ms;
  --motion-ease: cubic-bezier(0.2, 0, 0.2, 1);

  /* ---- Layout -----------------------------------------------------------
     Two maxima, deliberately different. `--shell-max` keeps the register and the
     guided form at a readable measure. `--shell-review-max` lets the review
     workspace use a 1920px display on purpose while retaining outer breathing
     room, because there the screen is shared between claim navigation, evidence
     and the decision form rather than being one column of prose. */
  --shell-max: 1600px;
  --shell-review-max: 1760px;
  --reading-max: 68ch;
  /* The claim rail carries real Swedish category names, two badges and a page
     reference. 380px could not fit its own filter options; measured overflow was
     up to 50px per control. */
  --rail-width: 26rem;
  --rail-width-min: 21rem;

  font-family: var(--font-ui);
}
