/* Admin v2 design tokens. Scope all values to the opted-in admin app. */
body[data-app="admin"] {
  color-scheme: dark;

  /* Neutral palette */
  --adm-canvas: #0b0b0c;
  --adm-canvas-subtle: #0d0d0f;
  --adm-surface: #121214;
  --adm-surface-raised: #171719;
  --adm-surface-hover: #1d1d20;
  --adm-surface-active: #252529;
  --adm-control: #151517;
  --adm-control-hover: #1c1c1f;
  --adm-overlay: rgba(0, 0, 0, 0.76);

  --adm-fg: #f2f2f3;
  --adm-fg-muted: #aaaab1;
  --adm-fg-subtle: #7b7b84;
  --adm-fg-disabled: #62626a;
  --adm-fg-inverse: #111113;

  --adm-border: #2b2b30;
  --adm-border-strong: #46464d;
  --adm-border-interactive: #686871;

  /* Neutral accent */
  --adm-accent: #f4f4f5;
  --adm-accent-hover: #dedee1;
  --adm-accent-active: #c8c8cc;
  --adm-accent-fg: #111113;
  --adm-focus: #ffffff;
  --adm-focus-ring: rgba(255, 255, 255, 0.22);

  /* Semantic status colors */
  --adm-success-fg: #5ee38d;
  --adm-success-bg: #10271a;
  --adm-success-border: #286640;
  --adm-warning-fg: #f6c453;
  --adm-warning-bg: #2b210d;
  --adm-warning-border: #72571e;
  --adm-danger-fg: #ff7b7b;
  --adm-danger-bg: #2e1416;
  --adm-danger-border: #7a3035;
  --adm-info-fg: #79b8ff;
  --adm-info-bg: #10233a;
  --adm-info-border: #2b5d91;

  /* Typography */
  --adm-font-sans: "Barlow", "HeSimplSans", "Hiragino Sans", "Microsoft YaHei", sans-serif;
  --adm-font-cjk: "HeSimplSans", "Barlow", "Hiragino Sans", "Microsoft YaHei", sans-serif;
  --adm-font-mono: "SFMono-Regular", Consolas, "Liberation Mono", monospace;
  --adm-font-size-2xs: 0.6875rem;
  --adm-font-size-xs: 0.75rem;
  --adm-font-size-sm: 0.8125rem;
  --adm-font-size-md: 0.875rem;
  --adm-font-size-lg: 1rem;
  --adm-font-size-xl: 1.25rem;
  --adm-font-size-2xl: 1.5rem;
  --adm-font-size-3xl: 1.75rem;
  --adm-line-tight: 1.2;
  --adm-line-normal: 1.5;
  --adm-line-relaxed: 1.7;
  --adm-weight-light: 300;
  --adm-weight-regular: 400;
  --adm-weight-medium: 500;
  --adm-weight-semibold: 600;
  --adm-weight-bold: 700;

  /* Spacing and sizing */
  --adm-space-0: 0;
  --adm-space-1: 0.25rem;
  --adm-space-2: 0.5rem;
  --adm-space-3: 0.75rem;
  --adm-space-4: 1rem;
  --adm-space-5: 1.25rem;
  --adm-space-6: 1.5rem;
  --adm-space-8: 2rem;
  --adm-space-10: 2.5rem;
  --adm-space-12: 3rem;
  --adm-control-height-sm: 2rem;
  --adm-control-height: 2.375rem;
  --adm-control-height-lg: 2.75rem;
  --adm-content-max: 92.5rem;

  /* Shape and depth */
  --adm-radius-xs: 0.125rem;
  --adm-radius-sm: 0.25rem;
  --adm-radius-md: 0.375rem;
  --adm-radius-lg: 0.5rem;
  --adm-radius-pill: 999px;
  --adm-shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.32);
  --adm-shadow-md: 0 8px 24px rgba(0, 0, 0, 0.3);
  --adm-shadow-lg: 0 20px 56px rgba(0, 0, 0, 0.48);

  /* Motion */
  --adm-duration-fast: 120ms;
  --adm-duration-normal: 200ms;
  --adm-duration-slow: 320ms;
  --adm-ease-standard: cubic-bezier(0.2, 0, 0, 1);
  --adm-ease-exit: cubic-bezier(0.4, 0, 1, 1);

  /* Layering */
  --adm-z-sticky: 100;
  --adm-z-dropdown: 400;
  --adm-z-popover: 500;
  --adm-z-overlay: 800;
  --adm-z-dialog: 900;
  --adm-z-modal: 900;
  --adm-z-preview: 950;
  --adm-z-toast: 1000;

  /* Component semantic aliases */
  --adm-fg-strong: #ffffff;
  --adm-neutral-bg: rgba(255, 255, 255, 0.08);
  --adm-action-bg: #ffffff;
  --adm-action-hover-bg: #e8e8e8;
  --adm-action-fg: #121112;
  --adm-action-border: #ffffff;
  --adm-focus-border: #ffffff;
  --adm-overlay-strong: rgba(0, 0, 0, 0.86);

  --adm-success-fg-strong: #86efac;
  --adm-success-bg-strong: rgba(34, 197, 94, 0.2);
  --adm-warning-fg-strong: #fde68a;
  --adm-warning-bg-strong: rgba(245, 158, 11, 0.2);
  --adm-danger-fg-strong: #fca5a5;
  --adm-danger-bg-soft: rgba(239, 68, 68, 0.08);
  --adm-danger-bg-strong: rgba(239, 68, 68, 0.2);
  --adm-danger-solid-bg: #dc2626;
  --adm-danger-solid-hover-bg: #b91c1c;
  --adm-danger-solid-fg: #ffffff;
  --adm-danger-solid-border: #dc2626;
  --adm-info-fg-strong: #93c5fd;
  --adm-info-bg-soft: rgba(59, 130, 246, 0.08);
  --adm-info-bg-strong: rgba(59, 130, 246, 0.2);

  --adm-radius-control: 6px;
  --adm-radius-panel: 8px;
  --adm-radius-dialog: 12px;
  --adm-shadow-popover: 0 14px 38px rgba(0, 0, 0, 0.42);
  --adm-shadow-dialog: 0 24px 72px rgba(0, 0, 0, 0.56);
  --adm-transition-fast: 120ms var(--adm-ease-standard);
  --adm-transition: 200ms var(--adm-ease-standard);
  --adm-transition-slow: 320ms var(--adm-ease-standard);

  /* Temporary aliases for data-driven inline styles during page migration. */
  --color-bg: var(--adm-canvas);
  --color-bg-secondary: var(--adm-canvas-subtle);
  --color-surface: var(--adm-surface);
  --color-surface-2: var(--adm-surface-raised);
  --color-surface-raised: var(--adm-surface-raised);
  --color-surface-hover: var(--adm-surface-hover);
  --color-control: var(--adm-control);
  --color-control-hover: var(--adm-control-hover);
  --color-border: var(--adm-border);
  --color-border-light: var(--adm-border-strong);
  --color-text: var(--adm-fg);
  --color-text-dim: var(--adm-fg-muted);
  --color-text-muted: var(--adm-fg-subtle);
  --color-success: var(--adm-success-fg);
  --color-warning: var(--adm-warning-fg);
  --color-danger: var(--adm-danger-fg);
  --color-info: var(--adm-info-fg);
  --font-mono: var(--adm-font-mono);
  --radius: var(--adm-radius-panel);
}

@media (prefers-reduced-motion: reduce) {
  body[data-app="admin"] {
    --adm-duration-fast: 0.01ms;
    --adm-duration-normal: 0.01ms;
    --adm-duration-slow: 0.01ms;
  }
}
