/* v0.32 — Colour as a consistent navigation aid across all three portals.
   Labels, icons, borders and selected states remain independent of colour.
   This final stylesheet owns the palette; no runtime styling library is needed. */
:root {
  --blue-ink:#2458bc; --blue-fill:#eaf1ff; --blue-line:#b6cdf4; --blue-strong:#2458bc;
  --violet-ink:#7240b1; --violet-fill:#f3edff; --violet-line:#d4bce9; --violet-strong:#7240b1;
  --coral-ink:#a43f35; --coral-fill:#fff0eb; --coral-line:#efbcb0; --coral-strong:#a43f35;
  --teal-ink:#086f65; --teal-fill:#e6f6f2; --teal-line:#a5d6cb; --teal-strong:#086f65;
  --amber-ink:#875900; --amber-fill:#fff5dc; --amber-line:#e5ca8a; --amber-strong:#805400;
  --green-ink:#246c43; --green-fill:#eaf6ec; --green-line:#afd5ba; --green-strong:#246c43;
  --rose-ink:#a73568; --rose-fill:#fff0f5; --rose-line:#e8b4ca; --rose-strong:#a73568;
  --indigo-ink:#4b4ba5; --indigo-fill:#efefff; --indigo-line:#c5c5ed; --indigo-strong:#4b4ba5;
  --slate-ink:#52637b; --slate-fill:#eef2f6; --slate-line:#bdcad9; --slate-strong:#52637b;
  --section-ink:var(--blue-ink); --section-fill:var(--blue-fill); --section-line:var(--blue-line); --section-strong:var(--blue-strong);
}
:root[data-theme=dark] {
  --blue-ink:#a9caff; --blue-fill:#172d4d; --blue-line:#3e618d;
  --violet-ink:#d5b4ff; --violet-fill:#302440; --violet-line:#695084;
  --coral-ink:#ffb8a9; --coral-fill:#402923; --coral-line:#895647;
  --teal-ink:#89dfcd; --teal-fill:#18362f; --teal-line:#3c7567;
  --amber-ink:#f4cf80; --amber-fill:#3a301c; --amber-line:#806c36;
  --green-ink:#a2dfb2; --green-fill:#20382a; --green-line:#467653;
  --rose-ink:#f5b0ce; --rose-fill:#3e2533; --rose-line:#84526a;
  --indigo-ink:#bcbeff; --indigo-fill:#282b46; --indigo-line:#5b608b;
  --slate-ink:#bfcee3; --slate-fill:#253040; --slate-line:#54657d;
}

/* Stable meaning: lesson groups and tool categories keep their colour after filtering. */
[data-colour="blue"],
.daily-path,
.admin-chart,
.worker-upcoming,
.workflow-column.to_do,
[data-module-index="0"],
[data-lesson-index="0"],
[data-lesson-index="1"],
[data-category="Prepare"],
[data-connection="facebook"],
[data-connection="linkedin"],
html[data-section="home"],
#home,
[data-tab="home"],
[data-go="home"],
.workspace-shortcut[data-section="home"],
html[data-section="dashboard"],
#dashboard,
[data-tab="dashboard"],
[data-go="dashboard"],
.workspace-shortcut[data-section="dashboard"],
html[data-section="training"],
#training,
[data-tab="training"],
[data-go="training"],
.workspace-shortcut[data-section="training"],
#admin[data-view="learners"],
#adminTabs [data-view="learners"],
#worker[data-view="board"],
#workerTabs [data-view="board"] {
  --section-ink:var(--blue-ink); --section-fill:var(--blue-fill);
  --section-line:var(--blue-line); --section-strong:var(--blue-strong);
}
[data-colour="violet"],
.lab-dashboard,
.admin-pulse,
.worker-team,
[data-module-index="1"],
[data-lesson-index="2"],
[data-lesson-index="3"],
[data-category="Understand"],
[data-connection="stripe_test"],
html[data-section="drills"],
#drills,
[data-tab="drills"],
[data-go="drills"],
.workspace-shortcut[data-section="drills"],
#admin[data-view="connections"],
#adminTabs [data-view="connections"],
#worker[data-view="calendar"],
#workerTabs [data-view="calendar"] {
  --section-ink:var(--violet-ink); --section-fill:var(--violet-fill);
  --section-line:var(--violet-line); --section-strong:var(--violet-strong);
}
[data-colour="coral"],
.moment-card,
.launch-tools>article:nth-child(2),
html[data-section="calls"],
#calls,
[data-tab="calls"],
[data-go="calls"],
.workspace-shortcut[data-section="calls"] {
  --section-ink:var(--coral-ink); --section-fill:var(--coral-fill);
  --section-line:var(--coral-line); --section-strong:var(--coral-strong);
}
[data-colour="teal"],
.launch-tools>article:nth-child(3),
.coach-welcome,
.coach-composer,
[data-connection="google"],
html[data-section="oracle"],
#oracle,
[data-tab="oracle"],
[data-go="oracle"],
.workspace-shortcut[data-section="oracle"],
html[data-section="worker"],
#worker,
[data-tab="worker"],
[data-go="worker"],
.workspace-shortcut[data-section="worker"],
#admin[data-view="workload"],
#adminTabs [data-view="workload"],
#worker[data-view="overview"],
#workerTabs [data-view="overview"] {
  --section-ink:var(--teal-ink); --section-fill:var(--teal-fill);
  --section-line:var(--teal-line); --section-strong:var(--teal-strong);
}
[data-colour="amber"],
.practice-planner,
.worker-focus,
.worker-agenda,
.workflow-column.in_progress,
.workbook-banner,
.kit-stamp,
html[data-section="resources"],
#resources,
[data-tab="resources"],
[data-go="resources"],
.workspace-shortcut[data-section="resources"],
#admin[data-view="workspaces"],
#adminTabs [data-view="workspaces"],
#worker[data-view="tasks"],
#workerTabs [data-view="tasks"] {
  --section-ink:var(--amber-ink); --section-fill:var(--amber-fill);
  --section-line:var(--amber-line); --section-strong:var(--amber-strong);
}
[data-colour="green"],
.practice-preview,
.admin-course,
.admin-recent,
.workflow-column.done,
[data-module-index="2"],
[data-lesson-index="4"],
[data-lesson-index="5"],
[data-category="Follow through"],
.subscription-plan.is-free,
html[data-section="progress"],
#progress,
[data-tab="progress"],
[data-go="progress"],
.workspace-shortcut[data-section="progress"],
#admin[data-view="activity"],
#adminTabs [data-view="activity"] {
  --section-ink:var(--green-ink); --section-fill:var(--green-fill);
  --section-line:var(--green-line); --section-strong:var(--green-strong);
}
[data-colour="rose"],
[data-connection="stripe_live"],
.subscription-plan.is-pro,
html[data-section="billing"],
#billing,
[data-tab="billing"],
[data-go="billing"],
.workspace-shortcut[data-section="billing"],
#admin[data-view="subscriptions"],
#adminTabs [data-view="subscriptions"] {
  --section-ink:var(--rose-ink); --section-fill:var(--rose-fill);
  --section-line:var(--rose-line); --section-strong:var(--rose-strong);
}
[data-colour="indigo"],
.subscription-plan.is-learn,
html[data-section="admin"],
#admin,
[data-tab="admin"],
[data-go="admin"],
.workspace-shortcut[data-section="admin"],
#admin[data-view="overview"],
#adminTabs [data-view="overview"] {
  --section-ink:var(--indigo-ink); --section-fill:var(--indigo-fill);
  --section-line:var(--indigo-line); --section-strong:var(--indigo-strong);
}
[data-colour="slate"],
html[data-section="account"],
#account,
[data-tab="account"],
[data-go="account"],
.workspace-shortcut[data-section="account"],
#admin[data-view="platform"],
#adminTabs [data-view="platform"] {
  --section-ink:var(--slate-ink); --section-fill:var(--slate-fill);
  --section-line:var(--slate-line); --section-strong:var(--slate-strong);
}

/* Page accents and navigation: active items keep a solid edge and stronger weight. */
body.ui-next .page {--accent:var(--section-ink);--accent-soft:var(--section-fill);--accent-hover:var(--section-ink)}
body.ui-next .topbar {border-bottom:3px solid var(--section-line)}
body.ui-next .breadcrumb-root {color:var(--section-ink)}
html[data-portal=admin] .sidebar {border-top:4px solid var(--indigo-strong)}
html[data-portal=worker] .sidebar {border-top:4px solid var(--teal-strong)}
html[data-portal=public] .sidebar {border-top:4px solid var(--blue-strong)}
body.ui-next #nav>button>.icon {color:var(--section-ink)}
body.ui-next #nav>button:hover {background:var(--section-fill)!important;color:var(--section-ink)!important}
body.ui-next #nav>button.active,.ui-next #nav>button[aria-current=page] {background:var(--section-fill)!important;color:var(--section-ink)!important;border-color:var(--section-line)}
body.ui-next #nav>button.active>.icon,.ui-next #mobileNavList button .icon {color:var(--section-ink)}
body.ui-next #nav>button[aria-current=page]:before {background:var(--section-strong)}
body.ui-next #mobileDock [data-tab]>.icon {color:var(--section-ink)}
body.ui-next #mobileDock [data-tab][aria-current=page] {background:var(--section-fill);color:var(--section-ink);box-shadow:inset 0 3px var(--section-ink)}
body.ui-next #mobileNavList button[aria-current=page] {background:var(--section-fill);color:var(--section-ink);box-shadow:inset 3px 0 var(--section-ink)}
body.ui-next :is(.admin-tab,.worker-tab) {color:var(--section-ink);border:1px solid transparent;border-bottom:3px solid var(--section-line)}
body.ui-next :is(.admin-tab,.worker-tab):hover {background:var(--section-fill)}
body.ui-next :is(.admin-tab,.worker-tab)[aria-selected=true] {background:var(--section-fill);color:var(--section-ink);border-color:var(--section-line);border-bottom-color:var(--section-ink);font-weight:750}
body.ui-next :is(.page>.eyebrow,.page-heading .eyebrow,.kit-heading .eyebrow) {color:var(--section-ink)}
body.ui-next .page :is(.primary,.filter-pill[aria-pressed=true]) {background:var(--section-strong);border-color:var(--section-strong);color:#fff}
body.ui-next .page .primary:hover:not(:disabled) {background:var(--section-strong);filter:brightness(.94)}
body.ui-next .page :is(.primary,.filter-pill):focus-visible {outline:3px solid var(--focus);outline-offset:3px}

/* Tinted panels make their purpose visible even in a busy overview. */
body.ui-next .page :is(.daily-path,.practice-preview,.practice-planner,.workspace-shortcut,.admin-metric,.worker-metric,.admin-chart,.admin-pulse,.admin-course,.admin-recent,.worker-focus,.worker-team,.worker-upcoming,.worker-agenda,.connection-card,.subscription-plan,.lab-dashboard,.coach-welcome,.coach-composer,.workbook-banner) {
  background:linear-gradient(155deg,var(--section-fill),var(--surface) 88%);
  border-color:var(--section-line);border-top:3px solid var(--section-strong);
}
body.ui-next :is(.workspace-shortcut,.admin-metric,.worker-metric,.connection-card) :is(.icon,.shortcut-icon,.connection-provider-icon) {color:var(--section-ink);background:var(--section-fill)}
body.ui-next :is(.admin-metric,.worker-metric)>strong {color:var(--section-ink)}
body.ui-next :is(.practice-preview,.practice-planner,.daily-path,.admin-chart,.admin-pulse,.admin-course,.admin-recent,.worker-focus,.worker-team,.worker-upcoming,.worker-agenda,.lab-dashboard,.coach-welcome,.coach-composer) .eyebrow {color:var(--section-ink)}
body.ui-next .workspace-shortcut:hover {border-color:var(--section-ink);background:var(--section-fill)}
body.ui-next :is(.workspace-shortcut,.workbook-banner) .text-button {color:var(--section-ink)}
body.ui-next .launch-tools>article {background:linear-gradient(155deg,var(--section-fill),var(--surface));border-color:var(--section-line);border-top:3px solid var(--section-strong)}
body.ui-next .launch-tools>article:first-child {--section-fill:var(--blue-fill);--section-ink:var(--blue-ink);--section-line:var(--blue-line);--section-strong:var(--blue-strong)}
body.ui-next .launch-tool-top {color:var(--section-ink)}
body.ui-next .moment-card {border-color:var(--coral-line);border-top:3px solid var(--coral-strong);background:linear-gradient(155deg,var(--coral-fill),var(--surface))}

/* Portal heroes retain white text; the TechSalesLearn mark stays blue. */
body.ui-next .admin-hero {background:linear-gradient(120deg,#303877,#5c4ba0);border-color:#6957a8}
body.ui-next .worker-hero {background:linear-gradient(120deg,#124f50,#11786b);border-color:#31877d}
body.ui-next .connection-hero {background:linear-gradient(120deg,#3e2b66,#67418e);border-color:#8760a9}
body.ui-next .lab-hero {background:radial-gradient(ellipse at 100% 0,#79519c55,transparent 65%),linear-gradient(120deg,#352453,#5e3b86)}
body.ui-next .journey-focus {background:linear-gradient(120deg,#194b3b,#28724f);border-color:#3f8060}
body.ui-next :is(.admin-hero,.worker-hero,.connection-hero,.journey-focus,.lab-hero) {--on-hero:#edf4f5}
body.ui-next :is(.admin-hero,.worker-hero,.connection-hero,.journey-focus,.lab-hero) :is(.eyebrow,.hero-badge,.hero,.horizon-hero-link) {color:#eef2ff}
body.ui-next .page :is(.horizon-focus-actions,.launch-actions,.collection-spotlight-actions,.journey-focus-actions,.admin-hero-actions,.worker-hero-actions,.lab-hero) .primary {background:#fff;border-color:#fff;color:#18365a;filter:none}
body.ui-next .page :is(.horizon-focus-actions,.launch-actions,.collection-spotlight-actions,.journey-focus-actions,.admin-hero-actions,.worker-hero-actions,.lab-hero) .primary:hover:not(:disabled) {background:#eef3fa;filter:none}

/* The summary inset is a light/dark surface inside the coloured hero. */
body.ui-next .admin-hero .hero-badge {background:#ffffff18;color:#fff;border-color:#ffffff40}
body.ui-next .admin-hero .admin-pulse-preview {background:var(--indigo-fill);color:var(--text);border-color:var(--indigo-line)}
body.ui-next .admin-hero .admin-pulse-preview p {color:var(--body)}
body.ui-next .admin-hero .admin-pulse-preview :is(.eyebrow,.horizon-hero-link) {color:var(--indigo-ink)}

/* Learning groups, field tools and their native vector artwork share a palette. */
body.ui-next .collection-module {border-color:var(--section-line);border-top:3px solid var(--section-strong);background:var(--section-fill)}
body.ui-next .collection-module[aria-pressed=true] {outline:2px solid var(--section-ink);outline-offset:2px}
body.ui-next .course-library .lesson-card {border-color:var(--section-line)}
body.ui-next .course-library .lesson-card .lesson-cover,.ui-next #resources .kit-cover {background:var(--section-fill);border-color:var(--section-line);color:var(--section-ink)}
body.ui-next :is(.lesson-cover,.kit-cover) .course-art {--art-ink:var(--section-ink);--art-light:var(--section-line);--art-paper:var(--section-fill)}
body.ui-next :is(.lesson-cover,.kit-cover) :is(.cover-caption,.lesson-number,.kit-cover-caption,.kit-edition) {color:var(--section-ink)}
body.ui-next #resources .kit-card {border-color:var(--section-line);border-top:3px solid var(--section-strong)}
body.ui-next #resources .kit-card :is(.eyebrow,.text-button) {color:var(--section-ink)}
body.ui-next .kit-stamp {background:var(--amber-fill);color:var(--amber-ink);border-color:var(--amber-line)}
body.ui-next .sim-mode-switch button {border-top:3px solid var(--coral-line)}
body.ui-next .sim-mode-switch button[aria-pressed=true] {background:var(--coral-fill);color:var(--coral-ink);border-color:var(--coral-ink)}
body.ui-next .subscription-plan.is-pro {border-color:var(--rose-line)}

/* Job states and assignees are separate visual systems, always accompanied by text. */
body.ui-next .workflow-column {background:var(--section-fill);border-color:var(--section-line);border-top:4px solid var(--section-strong)}
body.ui-next .workflow-column-heading {color:var(--section-ink)}
body.ui-next .workflow-column-heading h3::before {background:var(--section-ink)}
body.ui-next .workflow-column-heading>span {background:var(--surface);color:var(--section-ink);border:1px solid var(--section-line)}
body.ui-next .workflow-card {background:var(--surface);border-color:var(--section-line)}
body.ui-next .worker-pill.to_do {background:var(--blue-fill);color:var(--blue-ink)}
body.ui-next .worker-pill.in_progress {background:var(--amber-fill);color:var(--amber-ink)}
body.ui-next .worker-pill.done {background:var(--green-fill);color:var(--green-ink)}
body.ui-next .worker-pill.high,.ui-next .worker-pill.overdue {background:var(--coral-fill);color:var(--coral-ink)}
body.ui-next :is(.worker-avatar,.worker-pill,.worker-calendar-job).mikhail-zerafa {background:var(--blue-fill);color:var(--blue-ink);border-color:var(--blue-line)}
body.ui-next :is(.worker-avatar,.worker-pill,.worker-calendar-job).jordan-baldwin {background:var(--violet-fill);color:var(--violet-ink);border-color:var(--violet-line)}
body.ui-next .worker-calendar {border-color:var(--violet-line);border-top:3px solid var(--violet-strong)}
body.ui-next .worker-day.selected {background:var(--violet-fill);box-shadow:inset 0 0 0 2px var(--violet-ink)}
body.ui-next .worker-day.today .worker-day-number {background:var(--violet-strong);color:#fff;border-radius:6px}
body.ui-next .worker-calendar-job.done {text-decoration:line-through}

@media(forced-colors:active) {
  .ui-next #nav>button[aria-current=page],.ui-next :is(.admin-tab,.worker-tab)[aria-selected=true] {outline:2px solid Highlight;outline-offset:-2px}
  .ui-next .worker-day.selected {outline:2px solid Highlight;outline-offset:-2px}
}

/* Platform finance belongs to the green reporting family. */
#admin[data-view="finance"],#adminTabs [data-view="finance"]{--section-ink:var(--green-ink);--section-fill:var(--green-fill);--section-line:var(--green-line);--section-strong:var(--green-strong)}
