/* VillaBase Visual System V1 — scoped production token contract. */
[data-ui-version="v2"] {
  color-scheme: light;

  --vb-v2-canvas: #ece8df;
  --vb-v2-surface: #f6f3ec;
  --vb-v2-surface-raised: #f8f6f0;
  --vb-v2-surface-soft: #f0ece3;

  --vb-v2-ink: #132721;
  --vb-v2-ink-2: #45524e;
  --vb-v2-ink-3: #59635d;
  --vb-v2-ink-4: #5e6762;

  --vb-v2-accent: #123f34;
  --vb-v2-accent-strong: #092e27;
  --vb-v2-accent-soft: #dfe8e1;
  --vb-v2-accent-air: #e7ece7;
  --vb-v2-accent-warm: #a96348;
  --vb-v2-accent-warm-soft: #d7b6a6;

  --vb-v2-semantic-current: var(--vb-v2-accent);
  --vb-v2-semantic-attention: #9a573d;
  --vb-v2-semantic-danger: #934e47;
  --vb-v2-divider: #b8b5aa;
  --vb-v2-divider-soft: #d6d2c8;
  --vb-v2-rule: var(--vb-v2-divider);
  --vb-v2-rule-soft: var(--vb-v2-divider-soft);
  --vb-v2-rule-strong: #8c958e;
  --vb-v2-rule-forest: var(--vb-v2-accent);

  --vb-v2-font-text: "Avenir Next", "SF Pro Text", Inter, "PingFang SC",
    "Hiragino Sans GB", "Noto Sans CJK SC", "Microsoft YaHei", Arial,
    sans-serif;
  --vb-v2-font-display: "Avenir Next", "SF Pro Display", Inter, "PingFang SC",
    "Hiragino Sans GB", "Noto Sans CJK SC", "Microsoft YaHei", Arial,
    sans-serif;
  --vb-v2-font-numeric: "SFMono-Regular", "Roboto Mono", Menlo, Consolas,
    monospace;

  --vb-v2-text-identity: 26px;
  --vb-v2-text-decision: 28px;
  --vb-v2-text-section: 14px;
  --vb-v2-text-body: 12px;
  --vb-v2-text-supporting: 11px;
  --vb-v2-text-micro: 10px;

  --vb-v2-space-1: 4px;
  --vb-v2-space-2: 6px;
  --vb-v2-space-3: 8px;
  --vb-v2-space-4: 10px;
  --vb-v2-space-5: 12px;
  --vb-v2-space-6: 14px;
  --vb-v2-space-7: 16px;
  --vb-v2-space-8: 18px;
  --vb-v2-space-9: 22px;
  --vb-v2-space-10: 26px;
  --vb-v2-space-11: 32px;

  --vb-v2-radius-control: 3px;
  --vb-v2-radius-surface: 2px;
  --vb-v2-radius-primary: 4px;

  --vb-v2-shadow-low: inset 0 -1px 0 var(--vb-v2-divider-soft);
  --vb-v2-shadow-raised: inset 0 0 0 1px var(--vb-v2-divider-soft);
  --vb-v2-shadow-floating: 0 22px 64px rgb(23 27 25 / 16%);
  --vb-v2-blur-shell: 0px;
  --vb-v2-blur-floating: 18px;

  --vb-v2-global-shell-height: 52px;
  --vb-v2-context-nav-height: 30px;
  --vb-v2-workspace-gutter: 26px;
  --vb-v2-z-context: 90;
  --vb-v2-z-shell: 100;
  --vb-v2-z-floating: 200;

  --vb-v2-focus-color: #27665a;
  --vb-v2-motion-fast: 120ms;
  --vb-v2-motion-standard: 180ms;
  --vb-v2-motion-ease: cubic-bezier(.2, .7, .2, 1);
}

@media (min-width: 1600px) {
  [data-ui-version="v2"] { --vb-v2-workspace-gutter: 32px; }
}

@media (min-width: 1900px) {
  [data-ui-version="v2"] { --vb-v2-workspace-gutter: 40px; }
}

@media (max-width: 1119px) {
  [data-ui-version="v2"] { --vb-v2-workspace-gutter: 18px; }
}

@media (prefers-reduced-motion: reduce) {
  [data-ui-version="v2"] {
    --vb-v2-motion-fast: 0.01ms;
    --vb-v2-motion-standard: 0.01ms;
  }
}
