/* tokens.css — αυτούσια από task 02 §Γ (Ζεύξις). ΔΕΝ μετονομάζονται.
   Το tests/test_contrast.py ΔΙΑΒΑΖΕΙ αυτό το αρχείο (δεν κρατά αντίγραφο):
   μία πηγή αλήθειας για τα χρώματα. */

:root {
  /* Color — light (default) */
  /* DARK-FIRST (BRIEF-3b, DESIGN §4): το dark ζει στο γυμνό :root, γιατί
     αυτό βλέπει ο browser χωρίς προτίμηση. Light = η εξαίρεση παρακάτω. */
  --paper:  #131311;   --ink:    #ECEBE7;
  --muted:  #A0A09B;   --rule:   #2A2A27;
  --mark:   #F2544B;   /* links, focus ring, single mark. AA on paper */
  --mark-hover: #FF6B60;

  /* Type families — ΔΥΟ κατευθύνσεις, ο board κόβει (βλ. σημείωση) */
  --font-body: "IBM Plex Sans", ui-sans-serif, system-ui, sans-serif;
  --font-mono: "IBM Plex Mono", ui-monospace, "SF Mono", monospace;
  --font-display: var(--font-body);

  /* Type scale — base 1.125rem (18px), ratio 1.25 (major third) */
  --text-xs:   0.75rem;    /* mono labels, meta */
  --text-sm:   0.875rem;   /* role titles, captions */
  --text-base: 1.125rem;   /* body */
  --text-lg:   1.406rem;   /* lead paragraph */
  --text-xl:   1.758rem;   /* subheads */
  --text-2xl:  2.197rem;   /* section heads */
  --text-3xl:  clamp(2.5rem, 4.5vw, 3.5rem);   /* team member names */
  --text-display: clamp(3rem, 8vw, 6rem);      /* wordmark / home */

  /* Line-height */
  --leading-tight: 1.1;  --leading-snug: 1.25;
  --leading-normal: 1.6; --leading-relaxed: 1.7;

  /* Measure (line length) */
  --measure: 66ch;  --measure-narrow: 54ch;

  /* Spacing — 8px grid */
  --space-1: .25rem; --space-2: .5rem;  --space-3: .75rem; --space-4: 1rem;
  --space-6: 1.5rem; --space-8: 2rem;   --space-12: 3rem;  --space-16: 4rem;
  --space-24: 6rem;  --space-32: 8rem;

  /* Layout widths */
  --content: 42rem;       /* single-column reading */
  --content-wide: 66rem;  /* structural full-bleed */

  /* Shape / motion */
  --radius: 0;
  --ease: cubic-bezier(.2, 0, 0, 1);
  --dur: 160ms;
}

/* ⚠️ ΜΗΝ βάλεις εδώ `@media (prefers-color-scheme: light)`: το `light`
   ταιριάζει ΚΑΙ χωρίς προτίμηση χρήστη (η `no-preference` αφαιρέθηκε από τη
   spec), άρα θα ακύρωνε το dark για ΟΛΟΥΣ. Το `dark` δεν είναι συμμετρικό.
   Συνέπεια: όποιος έχει επιλέξει light στο σύστημά του θα δει dark.
   Πλήρες ιστορικό: tests/RED-PROOF.md #39. */
:root[data-theme="light"] {
  --paper: #F8F8F6;  --ink:  #141414;
  --muted: #5A5A57;  --rule: #E2E2DE;
  --mark:  #B42318;  --mark-hover: #8F1B12;
}

/* --- Σπόρος (v3). ΑΝΑ ΓΡΑΜΜΗ live>dead (.55>.32: η φλέβα λίγο πιο έντονη ώστε
   να μη χαθεί το dead-vs-alive). Αλλά τα dead segments είναι ΠΟΛΥ περισσότερα
   (γεωμετρία) → η ΜΑΖΑ διαβάζεται ως θάμνος/κλαδεμένα = ΤΟ σχήμα, οι φλέβες η
   εξαίρεση, ο κόκκινος κόμβος «σημαίνει». Τιμές Ζεύξιδος. */
:root {
  --seed-dead:   rgba(236, 235, 231, .32);
  --seed-live:   rgba(236, 235, 231, .55);
  --seed-halo:   rgba(242, 84, 75, .22);
  --seed-constr: rgba(236, 235, 231, .13);
}

:root[data-theme="light"] {
  --seed-dead:   rgba(20, 20, 20, .32);
  --seed-live:   rgba(20, 20, 20, .55);
  --seed-halo:   rgba(180, 35, 24, .22);
  --seed-constr: rgba(20, 20, 20, .13);
}
