/* aalborg.ai — design tokens
   Shared by aalborg.ai, rangliste.aalborg.ai, spoerg.aalborg.ai
   Drop in styles.css of each Angular app. */

:root {
  /* ---- Farver ---------------------------------------------------- */
  --paper:        oklch(0.965 0.006 95);   /* baggrund, hele sitet     */
  --paper-raised: oklch(0.985 0.004 95);   /* kort, input, bobler      */
  --paper-sunk:   oklch(0.940 0.008 95);   /* footer, tabelzebra       */
  --cement:       oklch(0.910 0.010 95);   /* tom søjle, disabled      */
  --hairline:     oklch(0.870 0.010 95);   /* 1px skillelinje          */
  --edge:         oklch(0.800 0.010 95);   /* skærmkant, svag kant     */

  --ink:          oklch(0.220 0.012 250);  /* tekst, alle 1,5px kanter */
  --ink-soft:     oklch(0.450 0.015 250);  /* meta, mono-labels        */
  --ink-mute:     oklch(0.550 0.015 250);  /* placeholder, disabled    */

  --signal:       oklch(0.850 0.170 95);   /* handling. kun handling.  */
  --signal-ghost: oklch(0.850 0.170 95 / 0.28); /* rækkemarkering      */
  --fjord:        oklch(0.380 0.060 225);  /* links, udelukkende links */

  /* Signalgul bæres kun af det brugeren skal handle på: primær knap,
     valgt kategori, søjlefyld, gimmick-banner. Aldrig dekoration. */

  /* ---- Typografi ------------------------------------------------- */
  --font-sans: "Public Sans", system-ui, -apple-system, sans-serif;
  --font-mono: "DM Mono", ui-monospace, "SF Mono", monospace;

  --fs-display: 104px;  --lh-display: 0.88;  --ls-display: -0.045em;
  --fs-h1:       54px;  --lh-h1:      1.00;  --ls-h1:      -0.035em;
  --fs-h2:       34px;  --lh-h2:      1.05;  --ls-h2:      -0.025em;
  --fs-h3:       24px;  --lh-h3:      1.10;  --ls-h3:      -0.020em;
  --fs-lead:     23px;  --lh-lead:    1.45;
  --fs-body:     16px;  --lh-body:    1.50;
  --fs-small:    15px;
  --fs-mono:     13px;  --ls-mono:     0.02em;
  --fs-label:    12px;  --ls-label:    0.14em;  /* uppercase mono      */

  --fw-body: 400;  --fw-medium: 600;  --fw-bold: 700;  --fw-display: 800;

  /* Mobil (<=640px): display 46, h1 33, h2 26, lead 17, body 15,
     mono 12. Ingen tekst under 11px. */

  /* ---- Spacing (4px-basis) --------------------------------------- */
  --sp-1:  4px;   --sp-2:  8px;   --sp-3: 12px;   --sp-4: 16px;
  --sp-5: 22px;   --sp-6: 28px;   --sp-7: 40px;   --sp-8: 56px;
  --sp-9: 76px;   --sp-10: 110px;

  --gutter-desktop: 48px;
  --gutter-mobile:  18px;
  --measure:        700px;  /* maks. linjelængde for brødtekst */

  /* ---- Form ------------------------------------------------------ */
  --radius: 0;                              /* alt er firkantet      */
  --border: 1.5px solid var(--ink);
  --border-hair: 1px solid var(--hairline);
  --shadow-hard: 4px 4px 0 var(--ink);      /* primær knap           */
  --shadow-card: 4px 4px 0 var(--cement);   /* svarboble             */
  --tap-min: 44px;                          /* mindste touch-mål     */

  /* ---- Motion ---------------------------------------------------- */
  --dur-fast: 120ms;   /* hover, tryk            */
  --dur-bar:  420ms;   /* søjle ruller til ny pos */
  --ease: cubic-bezier(0.2, 0, 0.2, 1);
  --loader-delay: 400ms; /* vent før loader vises */
}

@media (prefers-reduced-motion: reduce) {
  :root { --dur-bar: 0ms; }
  /* spærrebånd, klapbro og sweep erstattes af statisk fyld + tekst */
}
