/*
  DESIGN TOKENS — Manual de Genética
  Mismo sistema (tipografía, espaciado, arquitectura de sitio) que el resto
  de la colección, con paleta propia: acento ciruela/violeta "cromosómico"
  (el tono de una tinción de bandas G en un cariotipo, o de un cromosoma
  duplicado en metafase) sobre un papel frío con velo lavanda apenas
  perceptible — distinto del cerúleo de Inmunología, el violeta-azulado de
  Biofísica y el magenta H&E de Histología — y una escala semántica de
  callouts que no repite ningún hex del resto de la colección.
*/

:root {
  color-scheme: light;

  /* ---- Tipografía ---- */
  --font-display: 'Fraunces', 'Iowan Old Style', Georgia, 'Times New Roman', serif;
  --font-body: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
  --font-mono: 'IBM Plex Mono', 'Cascadia Code', Consolas, 'Courier New', monospace;

  --fs-xs: 0.78rem;
  --fs-sm: 0.875rem;
  --fs-base: 1rem;
  --fs-md: 1.125rem;
  --fs-lg: 1.35rem;
  --fs-xl: 1.75rem;
  --fs-2xl: 2.25rem;
  --fs-3xl: 3rem;
  --fs-4xl: 3.75rem;

  --lh-tight: 1.2;
  --lh-snug: 1.4;
  --lh-normal: 1.65;
  --lh-relaxed: 1.8;

  /* ---- Paleta base (modo claro, "papel" con leve velo lavanda frío) ---- */
  --color-paper: #F8F6FA;
  --color-paper-raised: #FFFFFF;
  --color-paper-alt: #ECE4F1;
  --color-ink: #241C2C;
  --color-ink-soft: #5C4E68;
  --color-ink-faint: #8F7F9C;
  --color-line: #E1D4E8;
  --color-line-strong: #C9B3D4;

  /* ---- Acento de la colección (Genética = ciruela cromosómico) ---- */
  --accent-primary: #6B3F87;
  --accent-primary-ink: #47295C;
  --accent-primary-soft: #EDE1F2;

  /* ---- Semántica (callouts) — paleta propia, sin reciclar hex de otros manuales ---- */
  --color-info: #33648E;      --color-info-soft: #E1EBF3;      --color-info-ink:#1B3C58;
  --color-warning: #A66A15;   --color-warning-soft: #F8EAD4;   --color-warning-ink:#6B430C;
  --color-danger: #A03A4E;    --color-danger-soft: #F7E2E6;    --color-danger-ink:#69202F;
  --color-success: #3E7A54;   --color-success-soft: #E1F0E5;   --color-success-ink:#234E30;
  --color-tip: #2D8484;       --color-tip-soft: #DFF1F1;       --color-tip-ink:#154D4D;
  --color-exam: #7A4FA0;      --color-exam-soft: #EFE6F7;      --color-exam-ink:#4C2F68;

  /* ---- Espaciado ---- */
  --space-1: 4px;  --space-2: 8px;  --space-3: 12px; --space-4: 16px;
  --space-5: 24px; --space-6: 32px; --space-7: 48px; --space-8: 64px; --space-9: 96px;

  /* ---- Forma / profundidad ---- */
  --radius-sm: 6px;
  --radius-md: 12px;
  --radius-lg: 20px;
  --radius-full: 999px;
  --shadow-card: 0 1px 2px rgba(36,28,44,.05), 0 6px 20px rgba(36,28,44,.07);
  --shadow-hover: 0 10px 30px rgba(36,28,44,.12);
  --shadow-inset: inset 0 0 0 1px rgba(36,28,44,.06);

  /* ---- Layout ---- */
  --max-content: 760px;
  --max-wide: 1240px;
  --sidebar-w: 272px;
  --toc-w: 232px;
  --header-h: 64px;

  --ease: cubic-bezier(.4,0,.2,1);
}

:root[data-theme="dark"] {
  color-scheme: dark;
  --color-paper: #19141F;
  --color-paper-raised: #221B29;
  --color-paper-alt: #2C2335;
  --color-ink: #F0E7F5;
  --color-ink-soft: #B69FC2;
  --color-ink-faint: #7C6989;
  --color-line: #2E2438;
  --color-line-strong: #3F324C;

  --accent-primary: #C99EDB;
  --accent-primary-ink: #ECD9F5;
  --accent-primary-soft: #33223F;

  --color-info: #86B4DA;      --color-info-soft: #172B3D;      --color-info-ink:#CCE3F5;
  --color-warning: #E0A860;   --color-warning-soft: #372509;   --color-warning-ink:#F5D6A8;
  --color-danger: #E6909E;    --color-danger-soft: #3A1E24;    --color-danger-ink:#F9CDD5;
  --color-success: #85CB98;   --color-success-soft: #152E1C;   --color-success-ink:#C7EBCF;
  --color-tip: #6BD1D1;       --color-tip-soft: #0F3131;       --color-tip-ink:#BCEDED;
  --color-exam: #B896DB;      --color-exam-soft: #29203A;      --color-exam-ink:#DDCBF0;

  --shadow-card: 0 1px 2px rgba(0,0,0,.3), 0 6px 20px rgba(0,0,0,.35);
  --shadow-hover: 0 10px 30px rgba(0,0,0,.45);
  --shadow-inset: inset 0 0 0 1px rgba(255,255,255,.06);
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    color-scheme: dark;
    --color-paper: #19141F;
    --color-paper-raised: #221B29;
    --color-paper-alt: #2C2335;
    --color-ink: #F0E7F5;
    --color-ink-soft: #B69FC2;
    --color-ink-faint: #7C6989;
    --color-line: #2E2438;
    --color-line-strong: #3F324C;

    --accent-primary: #C99EDB;
    --accent-primary-ink: #ECD9F5;
    --accent-primary-soft: #33223F;

    --color-info: #86B4DA;      --color-info-soft: #172B3D;      --color-info-ink:#CCE3F5;
    --color-warning: #E0A860;   --color-warning-soft: #372509;   --color-warning-ink:#F5D6A8;
    --color-danger: #E6909E;    --color-danger-soft: #3A1E24;    --color-danger-ink:#F9CDD5;
    --color-success: #85CB98;   --color-success-soft: #152E1C;   --color-success-ink:#C7EBCF;
    --color-tip: #6BD1D1;       --color-tip-soft: #0F3131;       --color-tip-ink:#BCEDED;
    --color-exam: #B896DB;      --color-exam-soft: #29203A;      --color-exam-ink:#DDCBF0;

    --shadow-card: 0 1px 2px rgba(0,0,0,.3), 0 6px 20px rgba(0,0,0,.35);
    --shadow-hover: 0 10px 30px rgba(0,0,0,.45);
    --shadow-inset: inset 0 0 0 1px rgba(255,255,255,.06);
  }
}
