:root {
  /* Nord-find core palette. Semantic tokens below are the preferred API. */
  --color-ink: #182238;
  --color-ink-deep: #101c36;
  --color-petrol: #2f66f3;
  --color-teal: #2f66f3;
  --color-mint: #cbdcff;
  --color-mint-soft: #eaf1ff;
  /* Compatibility aliases stay until the layered CSS migration is complete. */
  --color-coral: #2563eb;
  --color-apricot: #93c5fd;
  --color-coral-soft: #dbeafe;
  --color-lilac: #c7d2fe;
  --color-lilac-soft: #eef2ff;
  --color-paper: #f5f7fa;
  --color-paper-light: #ffffff;
  --color-white: #ffffff;
  --color-text: #182238;
  --color-muted: #536174;
  --color-danger: #b42318;
  --color-success: #19704d;
  --color-warning: #a15c00;
  --color-brand-blue: #2f66f3;
  --color-brand-blue-deep: #101c36;
  --color-brand-blue-soft: #eaf1ff;

  /* Semantic color roles. */
  --brand-navy: var(--color-brand-blue-deep);
  --brand-accent: var(--color-brand-blue);
  --brand-accent-hover: #2558d9;
  --brand-accent-active: #1f4fc7;
  --surface-page: var(--color-paper);
  --surface-primary: var(--color-paper-light);
  --surface-secondary: #f8fafc;
  --surface-subtle: #eef2f7;
  --surface-collection-header: #e5eaf1;
  --surface-elevated: var(--color-white);
  --text-primary: var(--color-text);
  --text-secondary: #3f4b5d;
  --text-muted: var(--color-muted);
  --text-disabled: #98a2b3;
  --border-subtle: rgba(16, 28, 54, .10);
  --border-default: rgba(16, 28, 54, .16);
  --border-strong: rgba(16, 28, 54, .26);
  --border-divider: var(--border-default);
  --state-success: var(--color-success);
  --state-success-soft: #eaf7f1;
  --state-warning: var(--color-warning);
  --state-warning-soft: #fff7e8;
  --state-danger: var(--color-danger);
  --state-danger-soft: #fff0ee;
  --state-info: var(--color-brand-blue);
  --state-info-soft: var(--color-brand-blue-soft);
  --notification-badge-background: #dc2626;
  --notification-badge-foreground: #ffffff;
  --surface-brand-subtle: var(--state-info-soft);
  --interactive-hover: color-mix(in srgb, var(--brand-accent) 8%, var(--surface-primary));
  --interactive-active: color-mix(in srgb, var(--brand-accent) 13%, var(--surface-primary));
  /* Shared Card/Surface and Status roles. Keep component geometry out of page CSS. */
  --surface-card: var(--surface-primary);
  --surface-inset: var(--surface-subtle);
  --surface-toolbar: var(--surface-secondary);
  --surface-selected: var(--interactive-active);
  --surface-disabled: var(--control-disabled-surface);
  --surface-border: var(--border-default);
  --surface-border-subtle: var(--border-subtle);
  --surface-border-selected: color-mix(in srgb, var(--brand-accent) 52%, var(--border-default));
  --surface-shadow: var(--shadow-sm);
  /* Shared table/list roles resolve through the existing semantic light/dark branches. */
  --data-surface: var(--surface-card);
  --collection-data-surface: var(--surface-card);
  --collection-row-surface: var(--collection-data-surface);
  --data-header-surface: var(--surface-inset);
  --data-row-hover: var(--interactive-hover);
  --data-row-selected: var(--surface-selected);
  --data-border: var(--surface-border-subtle);
  --data-border-strong: var(--surface-border);
  --data-heading: var(--text-secondary);
  --data-content: var(--text-primary);
  --data-metadata: var(--text-muted);
  --data-card-field: var(--surface-secondary);
  --data-card-border: var(--border-default);
  --data-card-gap: .375rem;
  --data-card-padding: .5rem;
  --data-card-radius: var(--radius-control);
  /* Shared native dialog/overlay roles. */
  --dialog-surface: var(--surface-elevated);
  --dialog-header-surface: var(--brand-navy);
  --dialog-header-content: var(--color-white);
  --dialog-header-divider: rgba(255, 255, 255, .12);
  --dialog-header-action: rgba(255, 255, 255, .09);
  --dialog-header-action-hover: rgba(255, 255, 255, .16);
  --dialog-border: var(--border-default);
  --dialog-divider: var(--border-subtle);
  --dialog-backdrop: rgba(4, 12, 28, .62);
  --dialog-size-compact: 38.75rem;
  --dialog-size-default: 46rem;
  --dialog-size-wide: 60rem;
  --utility-panel-width: 25rem;
  --utility-panel-max-height: 44rem;
  --utility-panel-inset: var(--space-4);
  --status-neutral-foreground: var(--text-secondary);
  --status-neutral-surface: var(--surface-subtle);
  --status-neutral-border: var(--border-default);
  --status-brand-foreground: var(--state-info);
  --status-brand-surface: var(--state-info-soft);
  --status-success-foreground: var(--state-success);
  --status-success-surface: var(--state-success-soft);
  --status-warning-foreground: var(--state-warning);
  --status-warning-surface: var(--state-warning-soft);
  --status-danger-foreground: var(--state-danger);
  --status-danger-surface: var(--state-danger-soft);
  --control-secondary-surface: #edf3fb;
  --control-secondary-hover: #e2ebf8;
  --control-secondary-border: #b8c7dc;
  --control-disabled-surface: #e3e8ef;
  --control-disabled-border: #d1d8e2;
  --control-disabled-text: #667085;
  --workspace-sidebar: #14213b;
  --workspace-sidebar-text: #ffffff;
  --workspace-sidebar-foreground: rgba(255, 255, 255, .9);
  --workspace-sidebar-muted: rgba(255, 255, 255, .72);
  --workspace-sidebar-helper: rgba(255, 255, 255, .64);
  --workspace-sidebar-icon: rgba(255, 255, 255, .94);
  --workspace-sidebar-active: #ffffff;
  --workspace-chrome-border: rgba(255, 255, 255, .12);
  --workspace-chrome-border-strong: rgba(255, 255, 255, .22);
  --workspace-shell-divider: rgba(255, 255, 255, .18);
  --workspace-chrome-hover: rgba(255, 255, 255, .09);
  --workspace-chrome-active: rgba(121, 162, 255, .16);
  --workspace-chrome-active-border: rgba(139, 174, 255, .24);
  --workspace-chrome-focus: #9ab8ff;
  --workspace-sidebar-width: 16rem;
  --workspace-header-height: 64px;
  --workspace-navigation-height: 2.75rem;
  --workspace-topbar-control-height: 2.25rem;
  --workspace-navigation-icon-size: 1.375rem;
  --workspace-canvas: var(--surface-secondary);
  --workspace-stage: var(--surface-subtle);

  /* Canonical typography family and compatibility role alias. */
  --font-interface: "Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --font-display: var(--font-interface);
  --font-size-metadata: .75rem;
  --font-size-data-heading: .78125rem;
  --font-size-data-metadata: .75rem;
  --font-size-navigation: .9375rem;
  --font-size-navigation-label: .6875rem;
  --font-size-label: .8125rem;
  --font-size-body-small: .875rem;
  --font-size-body: 1rem;
  --font-size-card-title: 1.125rem;
  --font-size-section-title: clamp(1.375rem, 2vw, 1.75rem);
  --font-size-page-title: clamp(1.75rem, 2.5vw, 2.125rem);
  --font-weight-regular: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  --font-weight-strong: 800;
  --line-height-compact: 1.2;
  --line-height-heading: 1.2;
  --line-height-body: 1.6;
  --line-height-helper: 1.5;
  --tracking-heading: -.025em;
  --space-1: .25rem;
  --space-2: .5rem;
  --space-3: .75rem;
  --space-4: 1rem;
  --space-5: 1.5rem;
  --space-6: 2rem;
  --space-7: 3rem;
  --space-8: 4rem;
  --space-9: 6rem;
  --space-10: 8rem;
  --layout-public: 104rem;
  --layout-workspace: 105rem;
  --layout-process: 115rem;
  --layout-form: 64rem;
  --layout-readable: 68ch;
  --layout-dense: var(--layout-workspace);
  --layout-wide: var(--layout-process);
  --content-wide: var(--layout-public);
  --content: var(--layout-workspace);
  --readable: var(--layout-readable);
  --gutter: clamp(1rem, 3.2vw, 4.5rem);
  --workspace-gutter: var(--gutter);
  --workspace-page-gap: var(--space-5);
  --radius-xs: 6px;
  --radius-control: 8px;
  --radius-card: 10px;
  --radius-panel: 12px;
  --border: 1px solid var(--border-default);
  --shadow-sm: 0 1px 2px rgba(11, 23, 51, .05);
  --shadow-md: 0 8px 24px rgba(11, 23, 51, .08);
  --shadow-lg: 0 18px 48px rgba(11, 23, 51, .18);
  --shadow-overlay: 0 24px 64px rgba(4, 31, 42, .22);
  --shadow-toast: 0 12px 32px rgba(11, 23, 51, .16);
  --focus-ring-color: var(--brand-accent);
  --focus-ring-offset-color: var(--surface-primary);
  --focus: 0 0 0 2px var(--focus-ring-offset-color), 0 0 0 4px var(--focus-ring-color);
  --focus-control: var(--focus);
  --control-height: 44px;
  --control-height-compact: 36px;
  /* UI 2.0B shared control/action/status geometry and semantic state roles. */
  --control-surface: var(--surface-primary);
  --control-border: var(--border-default);
  --control-border-hover: var(--border-strong);
  --control-placeholder: var(--text-disabled);
  --control-primary-surface: var(--brand-navy);
  --control-primary-hover: var(--brand-accent-hover);
  --control-primary-active: var(--brand-accent-active);
  --control-primary-content: var(--color-white);
  --control-invalid-border: var(--state-danger);
  --control-invalid-surface: var(--surface-primary);
  --control-invalid-ring: color-mix(in srgb, var(--state-danger) 18%, transparent);
  --control-shadow: 0 1px 2px rgba(16, 24, 40, .06);
  --control-padding-inline: .75rem;
  --control-padding-inline-compact: .625rem;
  --control-icon-gap: .375rem;
  --badge-height: 1.5rem;
  --badge-radius: 5px;
  --chip-height: 1.5rem;
  --chip-radius: 6px;
  --selection-chip-height: 1.75rem;
  /* Design System v1 production primitives are opt-in per migrated slice. */
  --ds-v1-control-height: 36px;
  --ds-v1-control-compact: 32px;
  --ds-v1-radius-control: 6px;
  --ds-v1-radius-panel: 8px;
  --ds-v1-surface-primary: var(--surface-card);
  --ds-v1-surface-raised: var(--surface-secondary);
  --ds-v1-surface-subtle: var(--surface-inset);
  --ds-v1-surface-hover: var(--interactive-hover);
  --ds-v1-surface-selected: var(--surface-selected);
  --ds-v1-content-primary: var(--text-primary);
  --ds-v1-content-secondary: var(--text-secondary);
  --ds-v1-content-muted: var(--text-muted);
  --ds-v1-border-subtle: var(--surface-border-subtle);
  --ds-v1-border-default: var(--surface-border);
  --ds-v1-shadow-raised: var(--surface-shadow);
  --avatar-blue-fg: #244b92;
  --avatar-blue-border: #bfd0ef;
  --avatar-blue-surface: #eaf1fc;
  --avatar-teal-fg: #24645f;
  --avatar-teal-border: #b9d9d5;
  --avatar-teal-surface: #e8f4f2;
  --avatar-green-fg: #346044;
  --avatar-green-border: #c1d9c8;
  --avatar-green-surface: #ebf4ed;
  --avatar-violet-fg: #5c4785;
  --avatar-violet-border: #d1c5e5;
  --avatar-violet-surface: #f0ecf7;
  --avatar-rose-fg: #82475a;
  --avatar-rose-border: #e1c5ce;
  --avatar-rose-surface: #f8eef1;
  --avatar-amber-fg: #785510;
  --avatar-amber-border: #e5cf9f;
  --avatar-amber-surface: #faf3e4;
  --avatar-indigo-fg: #46578f;
  --avatar-indigo-border: #c7cee7;
  --avatar-indigo-surface: #eceffa;
  --header-height: 76px;
  --workspace-nav-height: 0px;
  --nav-height: var(--header-height);
  --ease: 160ms cubic-bezier(.2, .75, .25, 1);
  /* Compatibility aliases stay until the layered CSS migration is complete. */
  --ink: var(--text-primary);
  --muted: var(--text-muted);
  --paper: var(--surface-page);
  --card: var(--surface-primary);
  --solid: var(--surface-primary);
  --surface: var(--surface-secondary);
  --soft: var(--surface-secondary);
  --line: var(--border-default);
  --accent: var(--brand-accent);
  --accent-dark: var(--brand-navy);
  --soft-accent: var(--state-info-soft);
  --success: var(--state-success);
  --danger: var(--state-danger);
  --warning: var(--state-warning);
  --shadow: var(--shadow-md);
  --shadow-card: var(--shadow-sm);
}

/*
 * UI 2.0A Light workspace contract. The authenticated application and the
 * gated UI Kit rebind the existing semantic roles instead of introducing a
 * parallel component theme. Public surfaces keep the root contract. The
 * existing body.dark block below remains authoritative whenever Dark Mode is
 * eventually activated and approved.
 */
.application-shell {
  --authenticated-page-canvas: #f4f4f5;
  --surface-primary: #ffffff;
  --surface-secondary: #f8fafc;
  --surface-subtle: #eef2f6;
  --surface-collection-header: #e9eef5;
  --surface-elevated: #f8fafc;
  --text-primary: #101828;
  --text-secondary: #344054;
  --text-muted: #667085;
  --text-disabled: #8a95a6;
  --border-subtle: #d5dde7;
  --border-default: #b9c4d2;
  --border-strong: #8c99aa;
  --border-divider: var(--border-default);
  --workspace-canvas: #e9edf3;
  --workspace-panel-surface: var(--surface-card);
  --workspace-stage: var(--surface-subtle);
  --font-size-card-title: .9375rem;
  --font-size-section-title: 1.125rem;
  --font-size-page-title: 1.75rem;
  --radius-control: 6px;
  --radius-card: 8px;
  --radius-panel: 10px;
  --shadow-sm: 0 1px 2px rgba(16, 24, 40, .06), 0 4px 12px rgba(16, 24, 40, .045);
  --surface-card: var(--surface-primary);
  --surface-inset: var(--surface-subtle);
  --surface-selected: var(--interactive-active);
  --surface-disabled: var(--control-disabled-surface);
  --surface-border: var(--border-default);
  --surface-border-subtle: var(--border-subtle);
  --surface-border-selected: color-mix(in srgb, var(--brand-accent) 52%, var(--border-default));
  --surface-shadow: var(--shadow-sm);
  --data-surface: var(--surface-card);
  --collection-row-surface: var(--collection-data-surface);
  --data-header-surface: var(--surface-inset);
  --data-row-hover: var(--interactive-hover);
  --data-row-selected: var(--surface-selected);
  --data-border: var(--surface-border-subtle);
  --data-border-strong: var(--surface-border);
  --data-heading: var(--text-secondary);
  --data-content: var(--text-primary);
  --data-metadata: var(--text-muted);
  --data-card-field: var(--surface-secondary);
  --data-card-border: var(--border-default);
  --data-card-gap: .375rem;
  --data-card-padding: .5rem;
  --data-card-radius: var(--radius-control);
  --dialog-surface: var(--surface-elevated);
  --dialog-border: var(--border-default);
  --dialog-divider: var(--border-subtle);
  --status-neutral-foreground: var(--text-secondary);
  --status-neutral-surface: var(--surface-subtle);
  --status-neutral-border: var(--border-default);
  --control-surface: var(--surface-primary);
  --control-border: var(--border-default);
  --control-border-hover: var(--border-strong);
  --control-placeholder: var(--text-disabled);
  --control-primary-surface: var(--brand-navy);
  --control-primary-hover: var(--brand-accent-hover);
  --control-primary-active: var(--brand-accent-active);
  --control-primary-content: var(--color-white);
  --control-invalid-border: var(--state-danger);
  --control-invalid-surface: var(--surface-primary);
  --control-invalid-ring: color-mix(in srgb, var(--state-danger) 18%, transparent);
  --control-secondary-surface: var(--surface-primary);
  --control-secondary-hover: var(--interactive-hover);
  --control-secondary-border: var(--border-default);
  --focus-ring-offset-color: var(--surface-primary);
  --focus: 0 0 0 2px var(--focus-ring-offset-color), 0 0 0 4px var(--focus-ring-color);
  --focus-control: var(--focus);
  --ds-v1-surface-primary: var(--surface-card);
  --ds-v1-surface-raised: var(--surface-secondary);
  --ds-v1-surface-subtle: var(--surface-inset);
  --ds-v1-surface-hover: var(--interactive-hover);
  --ds-v1-surface-selected: var(--surface-selected);
  --ds-v1-content-primary: var(--text-primary);
  --ds-v1-content-secondary: var(--text-secondary);
  --ds-v1-content-muted: var(--text-muted);
  --ds-v1-border-subtle: var(--surface-border-subtle);
  --ds-v1-border-default: var(--surface-border);
  --ds-v1-shadow-raised: var(--surface-shadow);
  --ds-v1-radius-control: var(--radius-control);
  --ds-v1-radius-panel: var(--radius-card);
  --ink: var(--text-primary);
  --muted: var(--text-muted);
  --paper: var(--workspace-canvas);
  --card: var(--surface-primary);
  --solid: var(--surface-primary);
  --surface: var(--surface-secondary);
  --soft: var(--surface-secondary);
  --line: var(--border-default);
  --shadow: var(--shadow-md);
  --shadow-card: var(--shadow-sm);
}

body.dark {
  color-scheme: dark;
  /* Dark Mode v1A: Product Owner-approved Tailwind Navy direction. */
  --color-ink: #f8fafc;
  --color-ink-deep: #f8fafc;
  --color-petrol: #818cf8;
  --color-teal: #818cf8;
  --color-mint: #6366f1;
  --color-mint-soft: #25294d;
  --color-text: #f8fafc;
  --color-muted: #94a3b8;
  --color-danger: #fda4af;
  --color-success: #6ee7b7;
  --color-warning: #fbbf24;
  --color-brand-blue: #6366f1;
  --color-brand-blue-deep: #a5b4fc;
  --color-brand-blue-soft: #25294d;
  --brand-navy: #818cf8;
  --brand-accent: #6366f1;
  --brand-accent-hover: #818cf8;
  --brand-accent-active: #a5b4fc;
  --surface-page: #0f172a;
  --surface-primary: #111827;
  --surface-secondary: #172033;
  --surface-subtle: #0b1424;
  --surface-collection-header: #182235;
  --surface-elevated: #1e293b;
  --text-primary: #f8fafc;
  --text-secondary: #cbd5e1;
  --text-muted: #94a3b8;
  --text-disabled: #64748b;
  --border-subtle: #273449;
  --border-default: #374151;
  --border-strong: #4b5563;
  --border-divider: var(--border-default);
  --state-success: #6ee7b7;
  --state-success-soft: #102f2b;
  --state-warning: #fbbf24;
  --state-warning-soft: #382910;
  --state-danger: #fda4af;
  --state-danger-soft: #3b1d26;
  --state-info: #a5b4fc;
  --state-info-soft: #25294d;
  --surface-brand-subtle: var(--state-info-soft);
  --interactive-hover: color-mix(in srgb, var(--brand-accent) 10%, var(--surface-primary));
  --interactive-active: color-mix(in srgb, var(--brand-accent) 18%, var(--surface-primary));
  --surface-card: var(--surface-primary);
  --workspace-panel-surface: #161f30;
  --surface-inset: var(--surface-subtle);
  --surface-toolbar: var(--surface-secondary);
  --surface-selected: var(--interactive-active);
  --surface-border: var(--border-default);
  --surface-border-subtle: var(--border-subtle);
  --surface-border-selected: color-mix(in srgb, var(--brand-accent) 58%, var(--border-default));
  --data-surface: var(--surface-primary);
  --collection-data-surface: color-mix(in srgb, var(--surface-elevated) 22%, var(--surface-primary));
  --collection-row-surface: #152030;
  --data-header-surface: var(--surface-collection-header);
  --data-row-hover: var(--interactive-hover);
  --data-row-selected: var(--surface-selected);
  --data-border: var(--border-subtle);
  --data-border-strong: var(--border-default);
  --data-heading: var(--text-secondary);
  --data-content: var(--text-primary);
  --data-metadata: var(--text-muted);
  --data-card-field: var(--surface-subtle);
  --data-card-border: var(--border-default);
  --dialog-surface: var(--surface-elevated);
  --dialog-header-surface: #0f172a;
  --dialog-header-content: var(--text-primary);
  --dialog-header-divider: var(--border-subtle);
  --dialog-header-action: color-mix(in srgb, var(--text-primary) 8%, transparent);
  --dialog-header-action-hover: color-mix(in srgb, var(--text-primary) 14%, transparent);
  --dialog-border: var(--border-default);
  --dialog-divider: var(--border-default);
  --dialog-backdrop: rgba(2, 6, 23, .78);
  --status-neutral-foreground: var(--text-secondary);
  --status-neutral-surface: var(--surface-secondary);
  --status-neutral-border: var(--border-default);
  --status-brand-foreground: var(--state-info);
  --status-brand-surface: var(--state-info-soft);
  --status-success-foreground: var(--state-success);
  --status-success-surface: var(--state-success-soft);
  --status-warning-foreground: var(--state-warning);
  --status-warning-surface: var(--state-warning-soft);
  --status-danger-foreground: var(--state-danger);
  --status-danger-surface: var(--state-danger-soft);
  --control-surface: var(--surface-primary);
  --control-border: var(--border-default);
  --control-border-hover: var(--border-strong);
  --control-placeholder: var(--text-disabled);
  --control-primary-surface: #6366f1;
  --control-primary-hover: #818cf8;
  --control-primary-active: #4f46e5;
  --control-primary-content: #ffffff;
  --control-invalid-border: var(--state-danger);
  --control-invalid-surface: #1f1720;
  --control-invalid-ring: color-mix(in srgb, var(--state-danger) 30%, transparent);
  --control-secondary-surface: #172033;
  --control-secondary-hover: #1e293b;
  --control-secondary-border: #475569;
  --control-disabled-surface: #1e293b;
  --control-disabled-border: #374151;
  --control-disabled-text: #64748b;
  --workspace-canvas: #0f172a;
  --workspace-stage: var(--surface-subtle);
  --workspace-sidebar: #0f172a;
  --workspace-sidebar-text: #f8fafc;
  --workspace-sidebar-foreground: #cbd5e1;
  --workspace-sidebar-muted: #94a3b8;
  --workspace-sidebar-helper: #64748b;
  --workspace-sidebar-icon: #cbd5e1;
  --workspace-sidebar-active: #f8fafc;
  --workspace-chrome-border: #273449;
  --workspace-chrome-border-strong: #374151;
  --workspace-shell-divider: #374151;
  --workspace-chrome-hover: rgba(148, 163, 184, .09);
  --workspace-chrome-active: rgba(99, 102, 241, .18);
  --workspace-chrome-active-border: rgba(129, 140, 248, .34);
  --workspace-chrome-focus: #818cf8;
  --border: 1px solid var(--border-default);
  --focus-ring-color: #818cf8;
  --focus-ring-offset-color: var(--surface-primary);
  --control-shadow: 0 1px 2px rgba(0, 0, 0, .28);
  --surface-shadow: var(--shadow-sm);
  --ds-v1-surface-primary: var(--surface-primary);
  --ds-v1-surface-raised: var(--surface-elevated);
  --ds-v1-surface-subtle: var(--surface-subtle);
  --ds-v1-surface-hover: var(--interactive-hover);
  --ds-v1-surface-selected: var(--interactive-active);
  --ds-v1-content-primary: var(--text-primary);
  --ds-v1-content-secondary: var(--text-secondary);
  --ds-v1-content-muted: var(--text-muted);
  --ds-v1-border-subtle: var(--border-subtle);
  --ds-v1-border-default: var(--border-default);
  --ds-v1-shadow-raised: var(--shadow-sm);
  --avatar-blue-fg: #b8d0ff;
  --avatar-blue-border: #39588b;
  --avatar-blue-surface: #20365d;
  --avatar-teal-fg: #a8ddd7;
  --avatar-teal-border: #356762;
  --avatar-teal-surface: #204843;
  --avatar-green-fg: #b5d9be;
  --avatar-green-border: #426a4d;
  --avatar-green-surface: #294b34;
  --avatar-violet-fg: #d2c2f1;
  --avatar-violet-border: #665388;
  --avatar-violet-surface: #443662;
  --avatar-rose-fg: #efbecd;
  --avatar-rose-border: #805064;
  --avatar-rose-surface: #593344;
  --avatar-amber-fg: #efd497;
  --avatar-amber-border: #80682f;
  --avatar-amber-surface: #55451f;
  --avatar-indigo-fg: #c5cff4;
  --avatar-indigo-border: #56648f;
  --avatar-indigo-surface: #354267;
  --shadow: 0 20px 58px rgba(0, 0, 0, .30);
  --shadow-sm: 0 1px 2px rgba(0, 0, 0, .30), 0 8px 20px rgba(0, 0, 0, .16);
  --shadow-md: 0 10px 28px rgba(0, 0, 0, .32);
  --shadow-lg: 0 20px 52px rgba(0, 0, 0, .40);
  --shadow-overlay: 0 24px 64px rgba(0, 0, 0, .52);
  --shadow-toast: 0 14px 34px rgba(0, 0, 0, .42);
}

/* Wide Workspace v2: opt-in context; never rebind application/dialog tokens. */
body.dark.application-shell {
  --authenticated-page-canvas: var(--surface-page);
}
.application-shell .workspace-canvas {
  --workspace-v2-canvas: var(--authenticated-page-canvas);
  --workspace-v2-primary: #ffffff;
  --workspace-v2-subtle: #ededf0;
  --workspace-v2-border: #d4d4d8;
  --workspace-v2-content: #18181b;
  --workspace-v2-secondary: #52525b;
  --workspace-v2-link: #1d4ed8;
  --workspace-v2-selected: #eff6ff;
}
/* Dark consumes the canonical authenticated palette; Light remains opt-in. */
body.dark.application-shell .workspace-canvas {
  --workspace-v2-canvas: var(--surface-page);
  --workspace-v2-primary: var(--surface-primary);
  --workspace-v2-subtle: var(--surface-subtle);
  --workspace-v2-border: var(--border-default);
  --workspace-v2-content: var(--text-primary);
  --workspace-v2-secondary: var(--text-secondary);
  --workspace-v2-link: var(--color-brand-blue-deep);
  --workspace-v2-selected: var(--surface-selected);
}
