/*
 * Data Platform canonical design tokens
 *
 * This is the single source of truth for the no-build workspace theme.
 * Existing enterprise/workbench variables below are compatibility aliases so
 * the current V2 component contracts can keep their markup unchanged.
 */
:root {
  color-scheme: light;

  /* Brand */
  --dp-color-primary-50: #f0f5ff;
  --dp-color-primary-100: #e4edff;
  --dp-color-primary-200: #c9d9ff;
  --dp-color-primary-300: #9fbbff;
  --dp-color-primary-400: #6f95ff;
  --dp-color-primary-500: #3370ff;
  --dp-color-primary-600: #245bdb;
  --dp-color-primary-700: #1d49b5;

  /* Neutral surfaces and type */
  --dp-color-canvas: #f5f6f8;
  --dp-color-sidebar: #fbfcfe;
  --dp-color-surface: #ffffff;
  --dp-color-surface-subtle: #f8f9fb;
  --dp-color-surface-muted: #f1f3f6;
  --dp-color-text: #1f2329;
  --dp-color-text-secondary: #4e5969;
  --dp-color-text-tertiary: #86909c;
  --dp-color-text-disabled: #c0c4cc;
  --dp-color-border: #e5e6eb;
  --dp-color-border-strong: #d7dae0;
  --dp-color-focus: rgba(51, 112, 255, .16);

  /* Restrained semantic colours */
  --dp-color-success: #2f8f65;
  --dp-color-success-soft: #edf8f3;
  --dp-color-warning: #ad6800;
  --dp-color-warning-soft: #fff7e8;
  --dp-color-danger: #cf3f3f;
  --dp-color-danger-soft: #fff1f0;
  --dp-color-info: #526780;
  --dp-color-info-soft: #f1f4f8;
  --dp-color-purple: #6e56cf;
  --dp-color-purple-soft: #f4f1ff;

  /* Typography */
  --dp-font-sans: "Segoe UI", "PingFang SC", "Microsoft YaHei", system-ui, -apple-system, sans-serif;
  --dp-font-data: "Bahnschrift", "DIN Alternate", "Consolas", ui-monospace, monospace;
  --dp-text-xs: .6875rem;
  --dp-text-sm: .75rem;
  --dp-text-body: .8125rem;
  --dp-text-md: .875rem;
  --dp-text-lg: 1rem;
  --dp-text-xl: 1.25rem;
  --dp-text-display: clamp(1.5rem, 1.3rem + .65vw, 1.875rem);
  --dp-leading-tight: 1.2;
  --dp-leading-body: 1.5;
  --dp-weight-medium: 550;
  --dp-weight-semibold: 650;
  --dp-weight-bold: 720;

  /* Four-pixel spacing scale */
  --dp-space-1: .25rem;
  --dp-space-2: .5rem;
  --dp-space-3: .75rem;
  --dp-space-4: 1rem;
  --dp-space-5: 1.25rem;
  --dp-space-6: 1.5rem;
  --dp-space-8: 2rem;
  --dp-space-10: 2.5rem;

  /* Shape and elevation */
  --dp-radius-control: .375rem;
  --dp-radius-card: .5rem;
  --dp-radius-overlay: .625rem;
  --dp-radius-pill: 999px;
  --dp-shadow-card: 0 1px 2px rgba(31, 35, 41, .025);
  --dp-shadow-overlay: 0 12px 32px rgba(31, 35, 41, .12);

  /* Compact enterprise density */
  --dp-control-height-sm: 1.75rem;
  --dp-control-height: 2rem;
  --dp-control-height-lg: 2.25rem;
  --dp-table-row-height: 2.5rem;
  --dp-content-max: 100rem;
  --dp-sidebar-width: 15rem;
  --dp-header-height: 3.5rem;

  /* Motion */
  --dp-duration-fast: 120ms;
  --dp-duration: 160ms;
  --dp-ease-out: cubic-bezier(.2, .8, .2, 1);

  /* Element Plus theme bridge */
  --el-color-primary: var(--dp-color-primary-500);
  --el-color-primary-light-3: var(--dp-color-primary-400);
  --el-color-primary-light-5: var(--dp-color-primary-300);
  --el-color-primary-light-7: var(--dp-color-primary-200);
  --el-color-primary-light-8: var(--dp-color-primary-100);
  --el-color-primary-light-9: var(--dp-color-primary-50);
  --el-color-primary-dark-2: var(--dp-color-primary-600);
  --el-color-success: var(--dp-color-success);
  --el-color-warning: var(--dp-color-warning);
  --el-color-danger: var(--dp-color-danger);
  --el-color-info: var(--dp-color-info);
  --el-text-color-primary: var(--dp-color-text);
  --el-text-color-regular: var(--dp-color-text-secondary);
  --el-text-color-secondary: var(--dp-color-text-tertiary);
  --el-text-color-placeholder: var(--dp-color-text-tertiary);
  --el-border-color: var(--dp-color-border-strong);
  --el-border-color-light: var(--dp-color-border);
  --el-border-color-lighter: #eef0f3;
  --el-fill-color: var(--dp-color-surface-muted);
  --el-fill-color-light: var(--dp-color-surface-subtle);
  --el-fill-color-lighter: #fbfcfd;
  --el-fill-color-blank: var(--dp-color-surface);
  --el-bg-color: var(--dp-color-surface);
  --el-bg-color-page: var(--dp-color-canvas);
  --el-border-radius-base: var(--dp-radius-control);
  --el-border-radius-small: .25rem;
  --el-box-shadow-light: var(--dp-shadow-overlay);

  /* Compatibility aliases used by the existing CSS layers. */
  --enterprise-ink: var(--dp-color-text);
  --enterprise-ink-muted: var(--dp-color-text-secondary);
  --enterprise-surface: var(--dp-color-surface);
  --enterprise-canvas: var(--dp-color-canvas);
  --enterprise-line: var(--dp-color-border);
  --enterprise-line-strong: var(--dp-color-border-strong);
  --enterprise-brand: var(--dp-color-primary-500);
  --enterprise-brand-strong: var(--dp-color-primary-600);
  --enterprise-brand-soft: var(--dp-color-primary-50);
  --enterprise-indigo: var(--dp-color-primary-600);
  --enterprise-success: var(--dp-color-success);
  --enterprise-warning: var(--dp-color-warning);
  --enterprise-danger: var(--dp-color-danger);
  --enterprise-info: var(--dp-color-info);
  --enterprise-sidebar: var(--dp-color-sidebar);
  --enterprise-sidebar-deep: var(--dp-color-sidebar);
  --enterprise-sidebar-text: var(--dp-color-text-secondary);
  --enterprise-sidebar-muted: var(--dp-color-text-tertiary);
  --enterprise-radius-sm: var(--dp-radius-control);
  --enterprise-radius: var(--dp-radius-card);
  --enterprise-radius-lg: var(--dp-radius-overlay);
  --enterprise-shadow: var(--dp-shadow-card);
  --enterprise-shadow-float: var(--dp-shadow-overlay);
  --enterprise-ease-out: var(--dp-ease-out);
}

html,
body,
button,
input,
select,
textarea {
  font-family: var(--dp-font-sans);
}

@media (prefers-reduced-motion: reduce) {
  :root {
    --dp-duration-fast: 1ms;
    --dp-duration: 1ms;
  }
}
