/* ZOZ design tokens v1 – kilde for packages/ui. Lyst tema er standard; mørkt via [data-theme="dark"].
   Alle farger er semantiske. Komponenter skal bare bruke --zoz-* variabler, aldri hex direkte. */
:root {
  /* Merke */
  --zoz-brand-50:#EEF3FF; --zoz-brand-100:#DCE6FF; --zoz-brand-200:#B9CCFF; --zoz-brand-500:#3D63E0;
  --zoz-brand-600:#2B4FCB; --zoz-brand-700:#213DA3; --zoz-brand-900:#14245E;
  /* Nøytrale (kald grå) */
  --zoz-gray-0:#FFFFFF; --zoz-gray-25:#FAFBFC; --zoz-gray-50:#F4F6F8; --zoz-gray-100:#EBEEF2; --zoz-gray-200:#DCE1E7;
  --zoz-gray-300:#C3CAD4; --zoz-gray-400:#97A1AF; --zoz-gray-500:#6A7483; --zoz-gray-600:#4C5563; --zoz-gray-700:#353C47;
  --zoz-gray-800:#21262E; --zoz-gray-900:#13161B;
  /* Status */
  --zoz-green-50:#ECF8F0; --zoz-green-600:#16803C; --zoz-green-700:#106430;
  --zoz-amber-50:#FFF6E6; --zoz-amber-600:#B45309; --zoz-amber-700:#8A3F06;
  --zoz-red-50:#FDEEEC;   --zoz-red-600:#C2261D;   --zoz-red-700:#991B14;
  --zoz-violet-50:#F3EFFE; --zoz-violet-600:#6D43D9;
  --zoz-sky-50:#EAF6FD;   --zoz-sky-600:#0B76B5;

  /* Semantisk – flater og tekst */
  --zoz-bg:var(--zoz-gray-50);          /* app-bakgrunn */
  --zoz-surface:var(--zoz-gray-0);      /* kort, tabeller */
  --zoz-surface-2:var(--zoz-gray-25);   /* inne i kort, tabellhode */
  --zoz-surface-sunken:var(--zoz-gray-100);
  --zoz-sidebar:#0F1B3D;                /* mørk, rolig sidemeny */
  --zoz-sidebar-fg:#C9D3EE; --zoz-sidebar-active:#1E2D5C; --zoz-sidebar-muted:#7F8BB0;
  --zoz-border:var(--zoz-gray-200); --zoz-border-strong:var(--zoz-gray-300);
  --zoz-fg:var(--zoz-gray-900); --zoz-fg-2:var(--zoz-gray-600); --zoz-fg-3:var(--zoz-gray-500);
  --zoz-primary:var(--zoz-brand-600); --zoz-primary-hover:var(--zoz-brand-700); --zoz-primary-fg:#fff; --zoz-primary-soft:var(--zoz-brand-50);
  --zoz-focus:#5B82FF;
  --zoz-success:var(--zoz-green-600); --zoz-success-soft:var(--zoz-green-50);
  --zoz-warning:var(--zoz-amber-600); --zoz-warning-soft:var(--zoz-amber-50);
  --zoz-danger:var(--zoz-red-600);    --zoz-danger-soft:var(--zoz-red-50);
  --zoz-info:var(--zoz-sky-600);      --zoz-info-soft:var(--zoz-sky-50);
  --zoz-queued:var(--zoz-violet-600); --zoz-queued-soft:var(--zoz-violet-50);
  --zoz-changed:#FFF4C2;               /* felt endret fra kilden */

  /* Typografi */
  --zoz-font:"Inter","Inter var",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --zoz-font-mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace;
  --zoz-text-xs:12px; --zoz-text-sm:13px; --zoz-text-base:14px; --zoz-text-md:16px;
  --zoz-text-lg:18px; --zoz-text-xl:22px; --zoz-text-2xl:28px;
  --zoz-leading-tight:1.25; --zoz-leading:1.5;
  --zoz-weight-regular:400; --zoz-weight-medium:500; --zoz-weight-semibold:600; --zoz-weight-bold:700;

  /* Avstand (4px-grid) */
  --zoz-space-1:4px; --zoz-space-2:8px; --zoz-space-3:12px; --zoz-space-4:16px; --zoz-space-5:20px;
  --zoz-space-6:24px; --zoz-space-8:32px; --zoz-space-10:40px; --zoz-space-12:48px;

  /* Radius, skygge, størrelser */
  --zoz-radius-sm:6px; --zoz-radius:8px; --zoz-radius-lg:12px; --zoz-radius-xl:16px; --zoz-radius-full:999px;
  --zoz-shadow-sm:0 1px 2px rgba(16,24,40,.06);
  --zoz-shadow:0 1px 3px rgba(16,24,40,.08),0 1px 2px rgba(16,24,40,.04);
  --zoz-shadow-lg:0 12px 32px -8px rgba(16,24,40,.18),0 4px 8px -4px rgba(16,24,40,.08);
  --zoz-sidebar-w:248px; --zoz-topbar-h:56px; --zoz-row-h:44px; --zoz-control-h:36px; --zoz-content-max:1280px;
  --zoz-ease:cubic-bezier(.2,.7,.2,1); --zoz-dur:160ms;
}
[data-theme="dark"] {
  --zoz-bg:#0E1116; --zoz-surface:#161A21; --zoz-surface-2:#1B2029; --zoz-surface-sunken:#0B0E12;
  --zoz-sidebar:#0A0F1F; --zoz-sidebar-active:#18223F;
  --zoz-border:#2A303B; --zoz-border-strong:#3A4250;
  --zoz-fg:#E9EDF3; --zoz-fg-2:#A9B2C0; --zoz-fg-3:#808A99;
  --zoz-primary:#6F8DFF; --zoz-primary-hover:#8AA2FF; --zoz-primary-fg:#0B1230; --zoz-primary-soft:#1A2550;
  --zoz-success:#4CC27A; --zoz-success-soft:#12291C; --zoz-warning:#F2A33A; --zoz-warning-soft:#2E2210;
  --zoz-danger:#FF6B5F; --zoz-danger-soft:#33171A; --zoz-info:#4DB3EE; --zoz-info-soft:#0F2533;
  --zoz-queued:#A88BFF; --zoz-queued-soft:#221A3D; --zoz-changed:#3A3214;
}
@media (prefers-reduced-motion: reduce) { :root { --zoz-dur:0ms; } }
