/* Danaku 1.0 compiled tokens. Generated conceptually from tokens.json. */
:root {
  --color-surface-page: #F7F6F3;
  --color-surface-raised: #FFFFFF;
  --color-surface-sunken: #EFEDE8;
  --color-border-subtle: #E6E3DE;
  --color-border-default: #D8D5D0;
  --color-border-strong: #B8B4AE;
  --color-text-primary: #1A1A18;
  --color-text-secondary: #57524B;
  --color-text-muted: #8A857E;
  --color-text-on-accent: #FFFFFF;
  --color-accent-base: #3A362F;
  --color-accent-hover: #57524B;
  --color-accent-subtle: #EEECE8;
  --color-status-positive: #2F6B4F;
  --color-status-warning: #8A5A1A;
  --color-status-critical: #9B2C2C;
  --color-status-info: #2A5D8A;
  --color-link-base: #2A5D8A;
  --color-link-hover: #1D4363;
  --color-focus-ring: #2A78D6;
  --font-sans: "IBM Plex Sans", system-ui, sans-serif;
  --font-mono: Inconsolata, ui-monospace, Menlo, monospace;
  --type-display: 600 33px/1.15 var(--font-sans);
  --type-title: 600 21px/1.25 var(--font-sans);
  --type-heading: 600 16px/1.3 var(--font-sans);
  --type-body-lg: 400 15px/1.6 var(--font-sans);
  --type-body: 400 13.5px/1.6 var(--font-sans);
  --type-label: 500 12px/1.4 var(--font-sans);
  --type-caption: 400 11px/1.4 var(--font-sans);
  --type-data: 500 12.5px/1.4 var(--font-mono);
  --type-display-tracking: -0.015em;
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-8: 32px;
  --space-10: 40px;
  --space-14: 56px;
  --radius-none: 0;
  --radius-xs: 2px;
  --radius-sm: 4px;
  --radius-md: 6px;
  --radius-pill: 999px;
  --shadow-flat: none;
  --shadow-raised: 0 1px 3px rgb(0 0 0 / 7%);
  --shadow-overlay: 0 6px 16px rgb(0 0 0 / 10%);
  --shadow-modal: 0 16px 40px rgb(0 0 0 / 16%);
  --size-rail-expanded: 188px;
  --size-rail-collapsed: 60px;
  --size-filters-width: 264px;
  --size-focus-max: 620px;
  --size-touch-min: 44px;
  --size-content-max: 1280px;
}

*, *::before, *::after { box-sizing: border-box; }
html { color-scheme: light; }
body {
  margin: 0;
  background: var(--color-surface-page);
  color: var(--color-text-primary);
  font: var(--type-body);
  -webkit-font-smoothing: antialiased;
}
button, input, select, textarea { font: inherit; }
a { color: var(--color-link-base); }
a:hover { color: var(--color-link-hover); }
:focus-visible {
  outline: 2px solid var(--color-focus-ring);
  outline-offset: 2px;
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}
