/* BLK UI color contract.
   Loaded after site-ui.css; owns palette constants and site/app color scope. */

:root {
  --site-scrollbar-track: var(--color-gray-100, #f3f4f6);
  --site-scrollbar-thumb: var(--color-gray-300, #d1d5db);
  --site-scrollbar-thumb-hover: var(--color-gray-400, #9ca3af);

  --site-role-boss-accent: #d97706;
  --site-role-boss-soft: #fffbeb;
  --site-role-boss-border: #fcd34d;
  --site-role-boss-ink: #92400e;
  --site-role-boss-dark-soft: rgb(69 26 3 / 0.58);
  --site-role-boss-dark-border: rgb(251 191 36 / 0.42);
  --site-role-boss-dark-ink: #fde68a;

  --site-role-vendor-accent: #7c3aed;
  --site-role-vendor-soft: #f5f3ff;
  --site-role-vendor-border: #c4b5fd;
  --site-role-vendor-ink: #5b21b6;
  --site-role-vendor-dark-soft: rgb(76 29 149 / 0.5);
  --site-role-vendor-dark-border: rgb(167 139 250 / 0.42);
  --site-role-vendor-dark-ink: #ddd6fe;

  --site-role-dispatcher-accent: #0891b2;
  --site-role-dispatcher-soft: #ecfeff;
  --site-role-dispatcher-border: #67e8f9;
  --site-role-dispatcher-ink: #155e75;
  --site-role-dispatcher-dark-soft: rgb(22 78 99 / 0.55);
  --site-role-dispatcher-dark-border: rgb(34 211 238 / 0.42);
  --site-role-dispatcher-dark-ink: #a5f3fc;

  --site-role-runner-accent: #2563eb;
  --site-role-runner-soft: #eff6ff;
  --site-role-runner-border: #93c5fd;
  --site-role-runner-ink: #1e40af;
  --site-role-runner-dark-soft: rgb(30 64 175 / 0.48);
  --site-role-runner-dark-border: rgb(96 165 250 / 0.42);
  --site-role-runner-dark-ink: #bfdbfe;

  --site-role-packer-accent: #059669;
  --site-role-packer-soft: #ecfdf5;
  --site-role-packer-border: #6ee7b7;
  --site-role-packer-ink: #065f46;
  --site-role-packer-dark-soft: rgb(6 78 59 / 0.55);
  --site-role-packer-dark-border: rgb(52 211 153 / 0.42);
  --site-role-packer-dark-ink: #a7f3d0;

  --site-role-buyer-accent: #db2777;
  --site-role-buyer-soft: #fdf2f8;
  --site-role-buyer-border: #f9a8d4;
  --site-role-buyer-ink: #9d174d;
  --site-role-buyer-dark-soft: rgb(131 24 67 / 0.52);
  --site-role-buyer-dark-border: rgb(244 114 182 / 0.42);
  --site-role-buyer-dark-ink: #fbcfe8;

  --site-role-promoter-accent: #e11d48;
  --site-role-promoter-soft: #fff1f2;
  --site-role-promoter-border: #fda4af;
  --site-role-promoter-ink: #9f1239;
  --site-role-promoter-dark-soft: rgb(136 19 55 / 0.52);
  --site-role-promoter-dark-border: rgb(251 113 133 / 0.42);
  --site-role-promoter-dark-ink: #fecdd3;

  --site-brand-black-suite-accent: #d97706;
  --site-brand-black-suite-soft: #fffbeb;
  --site-brand-black-suite-border: #fcd34d;
  --site-brand-black-suite-ink: #92400e;
  --site-brand-black-suite-dark-soft: rgb(69 26 3 / 0.58);
  --site-brand-black-suite-dark-border: rgb(251 191 36 / 0.42);
  --site-brand-black-suite-dark-ink: #fde68a;

  --site-system-tenant-accent: var(--site-brand-black-suite-accent);
  --site-system-tenant-soft: var(--site-brand-black-suite-soft);
  --site-system-tenant-border: var(--site-brand-black-suite-border);
  --site-system-tenant-ink: var(--site-brand-black-suite-ink);
  --site-system-tenant-dark-soft: var(--site-brand-black-suite-dark-soft);
  --site-system-tenant-dark-border: var(--site-brand-black-suite-dark-border);
  --site-system-tenant-dark-ink: var(--site-brand-black-suite-dark-ink);

  --site-system-nest-accent: #315fbb;
  --site-system-nest-soft: #e8edf7;
  --site-system-nest-border: #9dafd6;
  --site-system-nest-ink: #26477f;
  --site-system-nest-dark-soft: rgb(49 95 187 / 0.25);
  --site-system-nest-dark-border: rgb(124 151 216 / 0.42);
  --site-system-nest-dark-ink: #b8c8ee;

  --site-system-onb-accent: #0e7490;
  --site-system-onb-soft: #ecfeff;
  --site-system-onb-border: #a5f3fc;
  --site-system-onb-ink: #155e75;
  --site-system-onb-dark-soft: rgb(22 78 99 / 0.5);
  --site-system-onb-dark-border: rgb(34 211 238 / 0.38);
  --site-system-onb-dark-ink: #a5f3fc;

  --site-status-default-bg: #f9fafb;
  --site-status-default-border: #e5e7eb;
  --site-status-default-accent: #9ca3af;
  --site-status-default-ink: #111827;
  --site-status-default-dark-bg: rgb(17 24 39 / 0.2);
  --site-status-default-dark-border: rgb(31 41 55 / 0.9);
  --site-status-default-dark-accent: #6b7280;
  --site-status-default-dark-ink: #f3f4f6;

  --site-status-error-bg: #fff1f2;
  --site-status-error-border: #fca5a5;
  --site-status-error-accent: #dc2626;
  --site-status-error-ink: #991b1b;
  --site-status-error-dark-bg: rgb(69 10 10 / 0.58);
  --site-status-error-dark-border: rgb(248 113 113 / 0.42);
  --site-status-error-dark-accent: #f87171;
  --site-status-error-dark-ink: #fecaca;

  --site-status-success-bg: #f0fdf4;
  --site-status-success-border: #86efac;
  --site-status-success-accent: #16a34a;
  --site-status-success-ink: #166534;
  --site-status-success-dark-bg: rgb(5 46 22 / 0.58);
  --site-status-success-dark-border: rgb(74 222 128 / 0.42);
  --site-status-success-dark-accent: #34d399;
  --site-status-success-dark-ink: #bbf7d0;

  --site-status-warning-bg: #fffbeb;
  --site-status-warning-border: #fde68a;
  --site-status-warning-accent: #f59e0b;
  --site-status-warning-ink: #92400e;
  --site-status-warning-dark-bg: rgb(120 53 15 / 0.3);
  --site-status-warning-dark-border: rgb(146 64 14 / 0.45);
  --site-status-warning-dark-accent: #fbbf24;
  --site-status-warning-dark-ink: #fde68a;

  --site-status-info-bg: #eff6ff;
  --site-status-info-border: #bfdbfe;
  --site-status-info-accent: #3b82f6;
  --site-status-info-ink: #1d4ed8;
  --site-status-info-dark-bg: rgb(30 58 138 / 0.3);
  --site-status-info-dark-border: rgb(30 64 175 / 0.45);
  --site-status-info-dark-accent: #60a5fa;
  --site-status-info-dark-ink: #bfdbfe;
  --site-status-info-on-accent: #172554;

  --site-app-overview-accent: var(--site-palette-accent);
  --site-app-overview-soft: var(--site-palette-soft);
  --site-app-overview-border: var(--site-palette-border);
  --site-app-overview-ink: var(--site-palette-ink);
  --site-app-overview-dark-soft: var(--site-palette-dark-soft);
  --site-app-overview-dark-border: var(--site-palette-dark-border);
  --site-app-overview-dark-ink: var(--site-palette-dark-ink);

  --site-app-deck-accent: #4f46e5;
  --site-app-deck-soft: #eef2ff;
  --site-app-deck-border: #c7d2fe;
  --site-app-deck-ink: #3730a3;
  --site-app-deck-dark-soft: rgb(49 46 129 / 0.52);
  --site-app-deck-dark-border: rgb(129 140 248 / 0.4);
  --site-app-deck-dark-ink: #c7d2fe;

  --site-app-chat-accent: #0d9488;
  --site-app-chat-soft: #f0fdfa;
  --site-app-chat-border: #99f6e4;
  --site-app-chat-ink: #0f766e;
  --site-app-chat-dark-soft: rgb(19 78 74 / 0.52);
  --site-app-chat-dark-border: rgb(45 212 191 / 0.38);
  --site-app-chat-dark-ink: #99f6e4;

  --site-app-forum-accent: var(--site-palette-accent);
  --site-app-forum-soft: var(--site-palette-soft);
  --site-app-forum-border: var(--site-palette-border);
  --site-app-forum-ink: var(--site-palette-ink);
  --site-app-forum-dark-soft: var(--site-palette-dark-soft);
  --site-app-forum-dark-border: var(--site-palette-dark-border);
  --site-app-forum-dark-ink: var(--site-palette-dark-ink);

  --site-app-store-accent: var(--site-palette-accent);
  --site-app-store-soft: var(--site-palette-soft);
  --site-app-store-border: var(--site-palette-border);
  --site-app-store-ink: var(--site-palette-ink);
  --site-app-store-dark-soft: var(--site-palette-dark-soft);
  --site-app-store-dark-border: var(--site-palette-dark-border);
  --site-app-store-dark-ink: var(--site-palette-dark-ink);

  --site-app-cart-accent: var(--site-palette-accent);
  --site-app-orders-accent: var(--site-palette-accent);
  --site-app-invite-accent: var(--site-palette-accent);
  --site-app-role-apply-accent: var(--site-palette-accent);
  --site-app-categories-accent: var(--site-palette-accent);

  --site-role-accent: var(--site-role-boss-accent);
  --site-role-soft: var(--site-role-boss-soft);
  --site-role-border: var(--site-role-boss-border);
  --site-role-ink: var(--site-role-boss-ink);
  --site-role-dark-soft: var(--site-role-boss-dark-soft);
  --site-role-dark-border: var(--site-role-boss-dark-border);
  --site-role-dark-ink: var(--site-role-boss-dark-ink);

  --site-palette-accent: var(--site-role-boss-accent);
  --site-palette-soft: var(--site-role-boss-soft);
  --site-palette-border: var(--site-role-boss-border);
  --site-palette-ink: var(--site-role-boss-ink);
  --site-palette-dark-soft: var(--site-role-boss-dark-soft);
  --site-palette-dark-border: var(--site-role-boss-dark-border);
  --site-palette-dark-ink: var(--site-role-boss-dark-ink);
  --site-palette-link: var(--site-palette-ink);
  --site-palette-link: color-mix(in oklab, var(--site-palette-accent) 78%, var(--color-gray-900, #111827));
  --site-palette-link-hover: var(--site-palette-accent);
  --site-palette-link-hover: color-mix(in oklab, var(--site-palette-accent) 88%, var(--color-gray-900, #111827));
  --site-palette-dark-link: var(--site-palette-dark-ink);
  --site-palette-dark-link: color-mix(in oklab, var(--site-palette-dark-ink) 88%, var(--color-gray-100, #f3f4f6));
  --site-palette-dark-link-hover: var(--site-palette-dark-ink);
  --site-palette-dark-link-hover: color-mix(in oklab, var(--site-palette-dark-ink) 100%, var(--color-white, #fff));
  --site-page-bg-base: rgb(248 250 252 / 1);
  --site-page-bg-mid: rgb(248 250 252 / 1);
  --site-page-bg-end: rgb(255 255 255 / 1);
  --site-page-bg-dark-base: rgb(2 6 23 / 1);
  --site-page-bg-dark-mid: rgb(8 15 32 / 1);
  --site-page-bg-dark-end: rgb(2 6 23 / 1);
  --site-page-bg-tint: color-mix(in oklab, var(--site-palette-accent) 5%, transparent);
  --site-page-bg-tint-secondary: color-mix(in oklab, var(--site-palette-accent) 4%, transparent);
  --site-page-bg-dark-tint: color-mix(in oklab, var(--site-palette-accent) 8%, transparent);
  --site-page-bg-dark-tint-secondary: color-mix(in oklab, var(--site-palette-accent) 6%, transparent);
  --site-page-bg-start: color-mix(in oklab, var(--site-palette-accent) 4%, var(--site-page-bg-base));
  --site-page-bg-finish: color-mix(in oklab, var(--site-palette-accent) 2%, var(--site-page-bg-end));
  --site-page-bg-dark-start: color-mix(in oklab, var(--site-palette-accent) 7%, var(--site-page-bg-dark-base));
  --site-page-bg-dark-finish: color-mix(in oklab, var(--site-palette-accent) 4%, var(--site-page-bg-dark-end));
  --site-page-bg: radial-gradient(circle at top left, var(--site-page-bg-tint), transparent 30%),
    radial-gradient(circle at top right, var(--site-page-bg-tint-secondary), transparent 26%),
    linear-gradient(180deg, var(--site-page-bg-start), var(--site-page-bg-mid) 54%, var(--site-page-bg-finish));
  --site-page-bg-dark: radial-gradient(circle at top left, var(--site-page-bg-dark-tint), transparent 28%),
    radial-gradient(circle at top right, var(--site-page-bg-dark-tint-secondary), transparent 24%),
    linear-gradient(180deg, var(--site-page-bg-dark-start), var(--site-page-bg-dark-mid) 54%, var(--site-page-bg-dark-finish));

  --site-link-color: var(--site-palette-link);
  --site-link-hover-color: var(--site-palette-link-hover);
  --site-tab-active-color: var(--site-link-color);
  --site-core-nav-accent: var(--site-palette-accent);
  --site-nav-surface-accent: var(--site-palette-accent);
  --site-store-nav-accent: var(--site-palette-accent);
  --site-admin-overview-accent: var(--site-palette-accent);
  --site-admin-overview-accent-soft: var(--site-palette-soft);
  --site-admin-overview-accent-soft: color-mix(in oklab, var(--site-admin-overview-accent) 11%, transparent);
  --site-hero-action-accent: var(--site-tab-active-color);

  --site-app-apps-accent: var(--site-palette-accent);
  --site-app-apps-soft: var(--site-palette-soft);
  --site-app-apps-border: var(--site-palette-border);
  --site-app-apps-ink: var(--site-palette-ink);
  --site-app-apps-dark-soft: var(--site-palette-dark-soft);
  --site-app-apps-dark-border: var(--site-palette-dark-border);
  --site-app-apps-dark-ink: var(--site-palette-dark-ink);

  --site-surface-overview-accent: var(--site-palette-accent);
  --site-surface-deck-accent: var(--site-app-deck-accent);
  --site-surface-chat-accent: var(--site-app-chat-accent);
  --site-surface-forum-accent: var(--site-palette-accent);
  --site-surface-apps-accent: var(--site-app-apps-accent);
  --site-surface-store-accent: var(--site-palette-accent);
}

.dark {
  --site-scrollbar-track: var(--color-gray-900, #111827);
  --site-scrollbar-thumb: var(--color-gray-700, #374151);
  --site-scrollbar-thumb-hover: var(--color-gray-600, #4b5563);
}

[data-player-role="boss" i],
body[data-site-nav-scope="boss"] {
  --site-role-accent: var(--site-role-boss-accent);
  --site-role-soft: var(--site-role-boss-soft);
  --site-role-border: var(--site-role-boss-border);
  --site-role-ink: var(--site-role-boss-ink);
  --site-role-dark-soft: var(--site-role-boss-dark-soft);
  --site-role-dark-border: var(--site-role-boss-dark-border);
  --site-role-dark-ink: var(--site-role-boss-dark-ink);
}

[data-player-role="vendor" i],
[data-player-role="supplier" i],
body[data-site-nav-scope="vendor"] {
  --site-role-accent: var(--site-role-vendor-accent);
  --site-role-soft: var(--site-role-vendor-soft);
  --site-role-border: var(--site-role-vendor-border);
  --site-role-ink: var(--site-role-vendor-ink);
  --site-role-dark-soft: var(--site-role-vendor-dark-soft);
  --site-role-dark-border: var(--site-role-vendor-dark-border);
  --site-role-dark-ink: var(--site-role-vendor-dark-ink);
}

[data-player-role="dispatcher" i],
body[data-site-nav-scope="dispatcher"] {
  --site-role-accent: var(--site-role-dispatcher-accent);
  --site-role-soft: var(--site-role-dispatcher-soft);
  --site-role-border: var(--site-role-dispatcher-border);
  --site-role-ink: var(--site-role-dispatcher-ink);
  --site-role-dark-soft: var(--site-role-dispatcher-dark-soft);
  --site-role-dark-border: var(--site-role-dispatcher-dark-border);
  --site-role-dark-ink: var(--site-role-dispatcher-dark-ink);
}

[data-player-role="runner" i],
body[data-site-nav-scope="runner"] {
  --site-role-accent: var(--site-role-runner-accent);
  --site-role-soft: var(--site-role-runner-soft);
  --site-role-border: var(--site-role-runner-border);
  --site-role-ink: var(--site-role-runner-ink);
  --site-role-dark-soft: var(--site-role-runner-dark-soft);
  --site-role-dark-border: var(--site-role-runner-dark-border);
  --site-role-dark-ink: var(--site-role-runner-dark-ink);
}

[data-player-role="packer" i],
body[data-site-nav-scope="packer"] {
  --site-role-accent: var(--site-role-packer-accent);
  --site-role-soft: var(--site-role-packer-soft);
  --site-role-border: var(--site-role-packer-border);
  --site-role-ink: var(--site-role-packer-ink);
  --site-role-dark-soft: var(--site-role-packer-dark-soft);
  --site-role-dark-border: var(--site-role-packer-dark-border);
  --site-role-dark-ink: var(--site-role-packer-dark-ink);
}

[data-player-role="buyer" i],
body[data-site-nav-scope="store"] {
  --site-role-accent: var(--site-role-buyer-accent);
  --site-role-soft: var(--site-role-buyer-soft);
  --site-role-border: var(--site-role-buyer-border);
  --site-role-ink: var(--site-role-buyer-ink);
  --site-role-dark-soft: var(--site-role-buyer-dark-soft);
  --site-role-dark-border: var(--site-role-buyer-dark-border);
  --site-role-dark-ink: var(--site-role-buyer-dark-ink);
}

[data-player-role="promoter" i],
body[data-site-nav-scope="promoter"] {
  --site-role-accent: var(--site-role-promoter-accent);
  --site-role-soft: var(--site-role-promoter-soft);
  --site-role-border: var(--site-role-promoter-border);
  --site-role-ink: var(--site-role-promoter-ink);
  --site-role-dark-soft: var(--site-role-promoter-dark-soft);
  --site-role-dark-border: var(--site-role-promoter-dark-border);
  --site-role-dark-ink: var(--site-role-promoter-dark-ink);
}

body[data-site-nav-scope="boss"] {
  --site-palette-accent: var(--site-role-boss-accent);
  --site-palette-soft: var(--site-role-boss-soft);
  --site-palette-border: var(--site-role-boss-border);
  --site-palette-ink: var(--site-role-boss-ink);
  --site-palette-dark-soft: var(--site-role-boss-dark-soft);
  --site-palette-dark-border: var(--site-role-boss-dark-border);
  --site-palette-dark-ink: var(--site-role-boss-dark-ink);
}

body[data-site-nav-scope="vendor"] {
  --site-palette-accent: var(--site-role-vendor-accent);
  --site-palette-soft: var(--site-role-vendor-soft);
  --site-palette-border: var(--site-role-vendor-border);
  --site-palette-ink: var(--site-role-vendor-ink);
  --site-palette-dark-soft: var(--site-role-vendor-dark-soft);
  --site-palette-dark-border: var(--site-role-vendor-dark-border);
  --site-palette-dark-ink: var(--site-role-vendor-dark-ink);
}

body[data-site-nav-scope="dispatcher"] {
  --site-palette-accent: var(--site-role-dispatcher-accent);
  --site-palette-soft: var(--site-role-dispatcher-soft);
  --site-palette-border: var(--site-role-dispatcher-border);
  --site-palette-ink: var(--site-role-dispatcher-ink);
  --site-palette-dark-soft: var(--site-role-dispatcher-dark-soft);
  --site-palette-dark-border: var(--site-role-dispatcher-dark-border);
  --site-palette-dark-ink: var(--site-role-dispatcher-dark-ink);
}

body[data-site-nav-scope="runner"] {
  --site-palette-accent: var(--site-role-runner-accent);
  --site-palette-soft: var(--site-role-runner-soft);
  --site-palette-border: var(--site-role-runner-border);
  --site-palette-ink: var(--site-role-runner-ink);
  --site-palette-dark-soft: var(--site-role-runner-dark-soft);
  --site-palette-dark-border: var(--site-role-runner-dark-border);
  --site-palette-dark-ink: var(--site-role-runner-dark-ink);
}

body[data-site-nav-scope="packer"] {
  --site-palette-accent: var(--site-role-packer-accent);
  --site-palette-soft: var(--site-role-packer-soft);
  --site-palette-border: var(--site-role-packer-border);
  --site-palette-ink: var(--site-role-packer-ink);
  --site-palette-dark-soft: var(--site-role-packer-dark-soft);
  --site-palette-dark-border: var(--site-role-packer-dark-border);
  --site-palette-dark-ink: var(--site-role-packer-dark-ink);
}

body[data-site-nav-scope="promoter"] {
  --site-palette-accent: var(--site-role-promoter-accent);
  --site-palette-soft: var(--site-role-promoter-soft);
  --site-palette-border: var(--site-role-promoter-border);
  --site-palette-ink: var(--site-role-promoter-ink);
  --site-palette-dark-soft: var(--site-role-promoter-dark-soft);
  --site-palette-dark-border: var(--site-role-promoter-dark-border);
  --site-palette-dark-ink: var(--site-role-promoter-dark-ink);
}

body[data-site-nav-scope="store"] {
  --site-palette-accent: var(--site-role-buyer-accent);
  --site-palette-soft: var(--site-role-buyer-soft);
  --site-palette-border: var(--site-role-buyer-border);
  --site-palette-ink: var(--site-role-buyer-ink);
  --site-palette-dark-soft: var(--site-role-buyer-dark-soft);
  --site-palette-dark-border: var(--site-role-buyer-dark-border);
  --site-palette-dark-ink: var(--site-role-buyer-dark-ink);
}

body[data-site-nav-scope="tenant"] {
  --site-palette-accent: var(--site-system-tenant-accent);
  --site-palette-soft: var(--site-system-tenant-soft);
  --site-palette-border: var(--site-system-tenant-border);
  --site-palette-ink: var(--site-system-tenant-ink);
  --site-palette-dark-soft: var(--site-system-tenant-dark-soft);
  --site-palette-dark-border: var(--site-system-tenant-dark-border);
  --site-palette-dark-ink: var(--site-system-tenant-dark-ink);
}

body[data-site-nav-scope="nest"] {
  --site-palette-accent: var(--site-system-nest-accent);
  --site-palette-soft: var(--site-system-nest-soft);
  --site-palette-border: var(--site-system-nest-border);
  --site-palette-ink: var(--site-system-nest-ink);
  --site-palette-dark-soft: var(--site-system-nest-dark-soft);
  --site-palette-dark-border: var(--site-system-nest-dark-border);
  --site-palette-dark-ink: var(--site-system-nest-dark-ink);
}

.site-onb-body {
  --site-palette-accent: var(--site-system-onb-accent);
  --site-palette-soft: var(--site-system-onb-soft);
  --site-palette-border: var(--site-system-onb-border);
  --site-palette-ink: var(--site-system-onb-ink);
  --site-palette-dark-soft: var(--site-system-onb-dark-soft);
  --site-palette-dark-border: var(--site-system-onb-dark-border);
  --site-palette-dark-ink: var(--site-system-onb-dark-ink);
}

body[data-site-surface="deck"] {
  --site-palette-accent: var(--site-app-deck-accent);
  --site-palette-soft: var(--site-app-deck-soft);
  --site-palette-border: var(--site-app-deck-border);
  --site-palette-ink: var(--site-app-deck-ink);
  --site-palette-dark-soft: var(--site-app-deck-dark-soft);
  --site-palette-dark-border: var(--site-app-deck-dark-border);
  --site-palette-dark-ink: var(--site-app-deck-dark-ink);
  --site-surface-accent: var(--site-app-deck-accent);
}

body[data-site-surface="chat"] {
  --site-palette-accent: var(--site-app-chat-accent);
  --site-palette-soft: var(--site-app-chat-soft);
  --site-palette-border: var(--site-app-chat-border);
  --site-palette-ink: var(--site-app-chat-ink);
  --site-palette-dark-soft: var(--site-app-chat-dark-soft);
  --site-palette-dark-border: var(--site-app-chat-dark-border);
  --site-palette-dark-ink: var(--site-app-chat-dark-ink);
  --site-surface-accent: var(--site-app-chat-accent);
}

body[data-site-surface="forum"] {
  --site-surface-accent: var(--site-palette-accent);
}

body[data-site-nav-scope],
body[data-site-surface],
.site-onb-body,
.site-ops-auth-body {
  --site-palette-link: var(--site-palette-ink);
  --site-palette-link: color-mix(in oklab, var(--site-palette-accent) 78%, var(--color-gray-900, #111827));
  --site-palette-link-hover: var(--site-palette-accent);
  --site-palette-link-hover: color-mix(in oklab, var(--site-palette-accent) 88%, var(--color-gray-900, #111827));
  --site-palette-dark-link: var(--site-palette-dark-ink);
  --site-palette-dark-link: color-mix(in oklab, var(--site-palette-dark-ink) 88%, var(--color-gray-100, #f3f4f6));
  --site-palette-dark-link-hover: var(--site-palette-dark-ink);
  --site-palette-dark-link-hover: color-mix(in oklab, var(--site-palette-dark-ink) 100%, var(--color-white, #fff));
  --site-page-bg-tint: color-mix(in oklab, var(--site-palette-accent) 5%, transparent);
  --site-page-bg-tint-secondary: color-mix(in oklab, var(--site-palette-accent) 4%, transparent);
  --site-page-bg-dark-tint: color-mix(in oklab, var(--site-palette-accent) 8%, transparent);
  --site-page-bg-dark-tint-secondary: color-mix(in oklab, var(--site-palette-accent) 6%, transparent);
  --site-page-bg-start: color-mix(in oklab, var(--site-palette-accent) 4%, var(--site-page-bg-base));
  --site-page-bg-finish: color-mix(in oklab, var(--site-palette-accent) 2%, var(--site-page-bg-end));
  --site-page-bg-dark-start: color-mix(in oklab, var(--site-palette-accent) 7%, var(--site-page-bg-dark-base));
  --site-page-bg-dark-finish: color-mix(in oklab, var(--site-palette-accent) 4%, var(--site-page-bg-dark-end));
  --site-link-color: var(--site-palette-link);
  --site-link-hover-color: var(--site-palette-link-hover);
  --site-tab-active-color: var(--site-link-color);
  --site-core-nav-accent: var(--site-palette-accent);
  --site-nav-surface-accent: var(--site-palette-accent);
  --site-store-nav-accent: var(--site-palette-accent);
  --site-admin-overview-accent: var(--site-palette-accent);
  --site-admin-overview-accent-soft: var(--site-palette-soft);
  --site-admin-overview-accent-soft: color-mix(in oklab, var(--site-admin-overview-accent) 11%, transparent);
  --site-hero-action-accent: var(--site-tab-active-color);
  --site-app-overview-accent: var(--site-palette-accent);
  --site-app-overview-soft: var(--site-palette-soft);
  --site-app-overview-border: var(--site-palette-border);
  --site-app-overview-ink: var(--site-palette-ink);
  --site-app-overview-dark-soft: var(--site-palette-dark-soft);
  --site-app-overview-dark-border: var(--site-palette-dark-border);
  --site-app-overview-dark-ink: var(--site-palette-dark-ink);
  --site-app-apps-accent: var(--site-palette-accent);
  --site-app-apps-soft: var(--site-palette-soft);
  --site-app-apps-border: var(--site-palette-border);
  --site-app-apps-ink: var(--site-palette-ink);
  --site-app-apps-dark-soft: var(--site-palette-dark-soft);
  --site-app-apps-dark-border: var(--site-palette-dark-border);
  --site-app-apps-dark-ink: var(--site-palette-dark-ink);
  --site-app-forum-accent: var(--site-palette-accent);
  --site-app-forum-soft: var(--site-palette-soft);
  --site-app-forum-border: var(--site-palette-border);
  --site-app-forum-ink: var(--site-palette-ink);
  --site-app-forum-dark-soft: var(--site-palette-dark-soft);
  --site-app-forum-dark-border: var(--site-palette-dark-border);
  --site-app-forum-dark-ink: var(--site-palette-dark-ink);
  --site-app-store-accent: var(--site-palette-accent);
  --site-app-store-soft: var(--site-palette-soft);
  --site-app-store-border: var(--site-palette-border);
  --site-app-store-ink: var(--site-palette-ink);
  --site-app-store-dark-soft: var(--site-palette-dark-soft);
  --site-app-store-dark-border: var(--site-palette-dark-border);
  --site-app-store-dark-ink: var(--site-palette-dark-ink);
  --site-app-cart-accent: var(--site-palette-accent);
  --site-app-orders-accent: var(--site-palette-accent);
  --site-app-invite-accent: var(--site-palette-accent);
  --site-app-role-apply-accent: var(--site-palette-accent);
  --site-app-categories-accent: var(--site-palette-accent);
  --site-surface-overview-accent: var(--site-admin-overview-accent);
  --site-surface-apps-accent: var(--site-app-apps-accent);
  --site-surface-forum-accent: var(--site-palette-accent);
  --site-surface-store-accent: var(--site-palette-accent);
  --site-finance-accent: var(--site-palette-accent);
  --site-finance-soft: var(--site-palette-soft);
  --site-finance-border: var(--site-palette-border);
  --site-finance-ink: var(--site-palette-ink);
  --site-finance-dark-soft: var(--site-palette-dark-soft);
  --site-finance-dark-border: var(--site-palette-dark-border);
  --site-finance-dark-ink: var(--site-palette-dark-ink);
  background: linear-gradient(180deg, rgb(248 250 252 / 1), rgb(248 250 252 / 1) 54%, rgb(255 255 255 / 1));
  background: var(--site-page-bg);
}

.dark body[data-site-nav-scope],
.dark body[data-site-surface],
.dark .site-onb-body,
.dark .site-ops-auth-body {
  --site-link-color: var(--site-palette-dark-link);
  --site-link-hover-color: var(--site-palette-dark-link-hover);
  --site-tab-active-color: var(--site-link-color);
  background: linear-gradient(180deg, rgb(2 6 23 / 1), rgb(8 15 32 / 1) 54%, rgb(2 6 23 / 1));
  background: var(--site-page-bg-dark);
}

.site-comms-body--chat {
  --site-comms-accent: var(--site-surface-chat-accent);
}

.site-comms-body--forum {
  --site-comms-accent: var(--site-palette-accent);
}

.site-core-nav-sections--admin,
.site-core-nav-sections--store {
  --site-core-nav-accent: var(--site-palette-accent);
}

.site-core-nav-sections--comms {
  --site-core-nav-accent: var(--site-comms-accent, var(--site-palette-accent));
}

:is(.site-core-nav-rail, .site-mobile-drawer) .site-nav-link--overview {
  --site-nav-surface-accent: var(--site-palette-accent);
}

:is(.site-core-nav-rail, .site-mobile-drawer) .site-nav-link--store {
  --site-nav-surface-accent: var(--site-palette-accent);
}

:is(.site-core-nav-rail, .site-mobile-drawer) .site-nav-link--deck {
  --site-nav-surface-accent: var(--site-surface-deck-accent);
}

:is(.site-core-nav-rail, .site-mobile-drawer) .site-nav-link--chat {
  --site-nav-surface-accent: var(--site-surface-chat-accent);
}

:is(.site-core-nav-rail, .site-mobile-drawer) .site-nav-link--forum {
  --site-nav-surface-accent: var(--site-palette-accent);
}

body.site-black-suite {
  --site-palette-accent: var(--site-brand-black-suite-accent);
  --site-palette-soft: var(--site-brand-black-suite-soft);
  --site-palette-border: var(--site-brand-black-suite-border);
  --site-palette-ink: var(--site-brand-black-suite-ink);
  --site-palette-dark-soft: var(--site-brand-black-suite-dark-soft);
  --site-palette-dark-border: var(--site-brand-black-suite-dark-border);
  --site-palette-dark-ink: var(--site-brand-black-suite-dark-ink);
  --site-link-color: var(--site-palette-ink);
  --site-link-hover-color: var(--site-palette-ink);
}

.dark body.site-black-suite {
  --site-link-color: var(--site-palette-dark-ink);
  --site-link-hover-color: var(--color-white, #fff);
}
