/* Shared palette, typography and document defaults. */
:root {
  --canvas-fill: #f6f7fb;
  --surface-fill: #ffffff;
  --soft-fill: #eef0f7;
  --text-primary: #1a1b2e;
  --text-secondary: #6b7080;
  --edge-color: #e4e6f0;
  --brand-primary: #7c3aed;
  --brand-secondary: #d946ef;
  --font-body: "IBM Plex Sans", system-ui, sans-serif;
  --font-heading: "Syne", system-ui, sans-serif;
  --rail-width: 260px;
}

*,
*::before,
*::after { box-sizing: border-box; }

html {
  height: 100%;
  overflow: hidden;
}

html,
body { height: 100%; }

body.workspace-page {
  margin: 0;
  font-family: var(--font-body);
  font-size: 15px;
  color: var(--text-primary);
  background: var(--canvas-fill);
  height: 100%;
  height: 100dvh;
  max-height: 100dvh;
  overflow: hidden;
  overscroll-behavior: none;
}

button { font: inherit; cursor: pointer; border: none; background: none; color: inherit; }

a { color: inherit; text-decoration: none; }
