/* uistash landing — tokens aligned with _gallery/gallery.css + shell.css */

:root {
  /* Surfaces (gallery) */
  --void: #060607;
  --bg: #0a0a0b;
  --panel: #101012;
  --hairline: #1f1f22;
  --border: #2c2c30;
  --hover: #121214;
  --active: #17171a;
  --rail-active: #16202b;

  /* Text */
  --ink: #f2f2f4;
  --dim: #8a8a90;
  --faint: #5c5c62;

  /* Shell page accents */
  --page-library: #0048ff;
  --page-imports: #10f73e;
  --page-lab: #f801fc;
  --page-insights: #ff9900;
  --brand: var(--page-library);
  --brand-ink: #060607;
  --brand-btn-ink: var(--ink);

  /* Tool semantics (preview modes) */
  --yellow: #f5c518;
  --green: #58c98b;
  --inspect: #a78bfa;
  --mo-teal: #2dd4bf;
  --danger: #f26b6b;

  /* Code syntax */
  --code-plain: #e8e8ea;
  --code-kw: #4cc2ff;
  --code-fn: #3f97ff;
  --code-comment: #6f6f73;
  --code-param: #f4694c;
  --code-str: #58c98b;
  --code-meta: #8a8a90;

  /* Type */
  --font-sans: "Inter", -apple-system, "Helvetica Neue", Arial, sans-serif;
  --font-mono: "IBM Plex Mono", "SFMono-Regular", Menlo, monospace;
  --page-title: "Geist Pixel", var(--font-mono);

  --fs-display: clamp(2rem, 4vw, 2.75rem);
  --fs-lead: 17px;
  --fs-body: 15px;
  --fs-small: 13px;
  --fs-label: 12px;
  --fs-code: 13px;
  --lh-code: 22px;

  /* Layout */
  --max-width: 1120px;
  --gutter: clamp(20px, 4vw, 40px);
  --section-gap: clamp(80px, 12vw, 140px);
  --sh-chrome-row: 44px;

  /* Shape — zero radius, matching app */
  --radius: 0;

  /* Motion */
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
  --dur-fast: 100ms;
  --dur-mid: 180ms;
  --dur-slow: 240ms;
}

:root[data-page="library"] { --brand: var(--page-library); }
:root[data-page="imports"] { --brand: var(--page-imports); }
:root[data-page="lab"] { --brand: var(--page-lab); }
:root[data-page="insights"] { --brand: var(--page-insights); }
