/* ============================================================
   Litora Labs design tokens

   Fathom navy, verdigris and chart paper come from the
   Waterline identity. Product-specific palettes stay inside
   their product panels so the parent studio retains its own
   visual voice.
   ============================================================ */

/* ---------- self-hosted fonts (no CDN, no remote requests) ---------- */
@font-face{font-family:"Inter";src:url("../fonts/Inter-Regular.v2.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Inter";src:url("../fonts/Inter-Medium.v2.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"Inter";src:url("../fonts/Inter-SemiBold.v2.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Spectral";src:url("../fonts/Spectral-Regular.v1.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Spectral";src:url("../fonts/Spectral-SemiBold.v1.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Space Mono";src:url("../fonts/SpaceMono-Regular.v1.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"IBM Plex Mono";src:url("../fonts/IBMPlexMono-Regular.v2.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"IBM Plex Mono";src:url("../fonts/IBMPlexMono-Medium.v2.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"Courier Prime";src:url("../fonts/CourierPrime-Regular.v2.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}

:root{
  /* ---- brand palette ---- */
  --paper:        #F4F0E8;   /* warm chart cream */
  --paper-deep:   #E9E1D3;   /* recessed paper */
  --surface:      #FBF8F1;   /* raised cards */
  --ink:          #14201F;   /* fathom-ink for body text (near the logo's #0A2530) */
  --ink-deep:     #0A2530;   /* the logo's own fathom, headings and the mark */
  --ink-hover:    #123744;
  --ink-muted:    #5C5F58;   /* muted labels / secondary copy */
  --line:         rgb(10 37 48 / 13%);
  --line-strong:  rgb(10 37 48 / 22%);
  --coast:        #33705F;   /* verdigris for rules, links, and focus */
  --coast-deep:   #245243;   /* darker verdigris for text on paper (AA) */
  --coast-soft:   #C6D6CE;   /* pale coast wash */
  --coast-lit:    #56A38C;   /* reversed/lit verdigris (on dark) */
  --stamp:        #963D32;   /* saturated stamp red for passport impressions */
  --stamp-lit:    #C06552;   /* stamp on dark */
  --brass:        #A37A43;   /* decorative only; do not use for text */
  --brass-deep:   #7E5E30;   /* brass for TEXT on light: 5.2:1 on paper, 5.6:1 on surface (AA) */
  --brass-lit:    #C9A25E;   /* brass on dark */
  --focus-on-light: var(--coast);
  --focus-on-dark:  var(--brass-lit);

  /* ---- night (privacy chapter) ---- */
  --night:        #0C1A1C;   /* deep fathom night */
  --night-raised: #14262A;
  --night-line:   rgb(245 241 233 / 12%);
  --night-text:   #F2ECE0;
  --night-muted:  #A9B2AC;
  --night-stage:  #071821;
  --night-bezel:  #041019;
  --night-island: #03090D;
  --cta-start:    #173B35;
  --white:        #FFFFFF;
  --shadow-dark:  rgb(0 0 0 / 55%);

  /* ---- type families ---- */
  --sans:  "Inter", system-ui, -apple-system, sans-serif;
  --serif: "Spectral", Georgia, "Times New Roman", serif;
  --label: "Inter", system-ui, -apple-system, sans-serif;
  --mono:  "Space Mono", ui-monospace, "SFMono-Regular", monospace;
  --hand:  "Courier Prime", "IBM Plex Mono", monospace; /* journal excerpts */

  /* ---- type scale ---- */
  --text-micro:  0.75rem;
  --text-xs:     clamp(0.75rem, 0.73rem + 0.08vw, 0.8125rem);
  --text-sm:     clamp(0.9375rem, 0.91rem + 0.1vw, 1rem);
  --text-body:   clamp(1rem, 0.96rem + 0.18vw, 1.125rem);
  --text-lead:   clamp(1.125rem, 1.06rem + 0.28vw, 1.3125rem);
  --text-h3:     clamp(1.75rem, 1.52rem + 0.92vw, 2.375rem);
  --text-h2:     clamp(2.625rem, 2.05rem + 2.2vw, 4.375rem);
  --text-display:clamp(3.4rem, 2.45rem + 3.55vw, 6.25rem);

  /* ---- spacing scale ---- */
  --space-1: 0.25rem; --space-2: 0.5rem;  --space-3: 0.75rem; --space-4: 1rem;
  --space-5: 1.5rem;  --space-6: 2rem;    --space-7: 3rem;    --space-8: 4rem;
  --space-9: 6rem;    --space-10: 8rem;   --space-11: 12rem;

  /* ---- radii ---- */
  --r-card: 22px;
  --r-control: 12px;
  --r-pill: 999px;

  /* ---- motion ---- */
  --ease-standard:  cubic-bezier(0.2, 0.8, 0.2, 1);
  --ease-emphasized:cubic-bezier(0.16, 1, 0.3, 1);

  /* ---- layout widths ---- */
  --w-page: 1520px;   /* full visual frame */
  --w-content: 1240px;/* primary content column */
  --w-read: 68ch;     /* reading measure */
  --gutter: clamp(18px, 4vw, 64px);
}

/* forced-colors: let the OS drive essential controls */
@media (forced-colors: active){
  :root{ --line: CanvasText; --line-strong: CanvasText; }
}
