/* Business AI Signature Navy. Original logo and KLCC photograph are preserved.
   Shared appearance only: data, permissions, reports and integrations stay in their components. */
:root[data-portal-theme] .workspace-modern {
  --ui-ink:#172342; --ui-muted:#5d6a83; --ui-blue:#105feb; --ui-link:#1055d6;
  --ui-blue-soft:#eef3ff; --ui-line:#dce3ef; --ui-bg:#f5f7fc; --ui-radius:14px;
  --ui-surface:#fff; --ui-surface-soft:#f0f4fc; --ui-hover:#f5f8ff; --ui-input:#fff;
  --ui-ai:#5145bb; --ui-ai-soft:#f0efff; --ui-focus:#107cce;
  --ui-danger:#a52f43; --ui-danger-soft:#fff0f2;
  --ui-warning:#805407; --ui-warning-soft:#fff6df;
  --ui-success:#216449; --ui-success-soft:#edf7f1;
  --ui-shadow:0 4px 18px #0b143306;
  --ink:var(--ui-ink); --muted:var(--ui-muted); --line:var(--ui-line);
  --paper:var(--ui-surface); --soft:var(--ui-surface-soft); --accent:var(--ui-blue);
  background:var(--ui-bg); color:var(--ui-ink); color-scheme:light;
  font-size:15px; line-height:1.6;
}
:root[data-portal-theme=dark] .workspace-modern {
  --ui-ink:#edf2ff; --ui-muted:#b2bfdc; --ui-link:#85b8ff;
  --ui-blue-soft:#20345b; --ui-line:#344262; --ui-bg:#0b1025;
  --ui-surface:#141e38; --ui-surface-soft:#1c2948; --ui-hover:#213252; --ui-input:#10192f;
  --ui-ai:#c0b7ff; --ui-ai-soft:#2a2852; --ui-focus:#59d6ff;
  --ui-danger:#ffb3c0; --ui-danger-soft:#3d2636;
  --ui-warning:#f4d086; --ui-warning-soft:#393224;
  --ui-success:#a1dfbc; --ui-success-soft:#203a34;
  --ui-shadow:0 4px 18px #00000016;
  color-scheme:dark;
}
:root[data-portal-theme] .workspace-modern :is(.crm-workspace,.bd-crm,.company-research,.manager-insights) {
  --crm-ink:var(--ui-ink); --crm-muted:var(--ui-muted); --crm-line:var(--ui-line); --crm-blue:var(--ui-blue);
  --bd-ink:var(--ui-ink); --bd-muted:var(--ui-muted); --bd-line:var(--ui-line); --bd-blue:var(--ui-link);
  --research-ink:var(--ui-ink); --research-muted:var(--ui-muted); --research-line:var(--ui-line); --research-navy:var(--ui-ink); --research-gold:var(--ui-ai);
  --mi-ink:var(--ui-ink); --mi-muted:var(--ui-muted); --mi-line:var(--ui-line); --mi-navy:var(--ui-ink);
  color:var(--ui-ink);
}
:root[data-portal-theme] .workspace-modern :is(button,a,input,select,textarea,summary):focus-visible {outline:3px solid var(--ui-focus);outline-offset:3px}
:root[data-portal-theme] .workspace-modern :is(.portal-top,.demo-top) {
  background:linear-gradient(100deg,#000 0%,#000 48%,#101323 100%);
  color:#f2f5ff; border-bottom:2px solid #3859cc; box-shadow:0 3px 14px #00000020;
}
:root[data-portal-theme] .workspace-modern :is(.portal-top,.demo-top)::after {content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;background:linear-gradient(90deg,#105feb,#13c5fd 48%,#655ffa);pointer-events:none}
:root[data-portal-theme] .workspace-modern :is(.portal-top,.demo-top) img {width:168px;max-width:168px;height:56px;object-fit:contain;background:#000}
:root[data-portal-theme] .workspace-modern :is(.portal-top,.demo-top) :is(a,.demo-role,.demo-viewer) {color:#d8e2f8}
:root[data-portal-theme] .workspace-modern :is(.portal-top,.demo-top) :is(button,select) {background:#172038;color:#f4f7ff;border-color:#586789;min-height:44px}
:root[data-portal-theme] .workspace-modern .portal-top #language {background:#172038!important;color:#f4f7ff!important;border-color:#586789!important}
:root[data-portal-theme] .workspace-modern :is(.portal-top,.demo-top) :is(a,button,select):focus-visible {outline-color:#13c5fd}
:root[data-portal-theme] .workspace-modern .portal-theme-toggle {
  display:inline-flex;align-items:center;justify-content:center;gap:7px;flex:0 0 auto;white-space:nowrap;
  padding:8px 12px;border:1px solid #586789;border-radius:9px;font:550 13px/1.4 Inter,system-ui,sans-serif;min-height:44px;
}
:root[data-portal-theme] .workspace-modern .portal-theme-toggle[aria-pressed=true] {background:#173d87;border-color:#7caaff;color:#fff}
.portal-theme-icon {font-size:21px;line-height:1;display:inline-block}
.portal-theme-compact {display:none}
:root[data-portal-theme] .workspace-modern .demo-banner {background:#111b36;color:#c9d5f1}
:root[data-portal-theme] .workspace-modern .demo-banner strong {color:#d4e5ff}
:root[data-portal-theme] .workspace-modern :is(.portal-sidebar,.demo-sidebar) {
  background:radial-gradient(ellipse at 90% 0%,#1a2c63 0%,transparent 58%),linear-gradient(170deg,#0b1433,#0a1026);
  border-right-color:#28365a;color:#c9d5f1;scrollbar-color:#556793 #0b1433;
}
:root[data-portal-theme] .workspace-modern :is(.portal-sidebar,.demo-sidebar)>p {color:#a8bbeb;font-size:11px}
:root[data-portal-theme] .workspace-modern :is(.portal-sidebar,.demo-sidebar) nav a {color:#d1dcf5;font-size:13px}
:root[data-portal-theme] .workspace-modern :is(.portal-sidebar,.demo-sidebar) nav a:hover {background:#1c2d57;color:#fff}
:root[data-portal-theme] .workspace-modern :is(.portal-sidebar,.demo-sidebar) nav a[aria-current=page] {background:linear-gradient(105deg,#194fba,#263d7b);border-color:#4161a2;color:#fff;box-shadow:inset 3px 0 #13c5fd}
:root[data-portal-theme] .workspace-modern .portal-user {background:#142344;border-color:#374d78;color:#f3f6ff}
:root[data-portal-theme] .workspace-modern .portal-user small {color:#bfceef;font-size:12px}
:root[data-portal-theme] .workspace-modern .workspace-search {color:#bfd0f1;font-size:12px}
:root[data-portal-theme] .workspace-modern .workspace-search input {background:#111e3a;color:#f4f7ff;border-color:#4a5b83}
:root[data-portal-theme] .workspace-modern .workspace-search input::placeholder {color:#b3c2e4}
:root[data-portal-theme] .workspace-modern :is(#portal-refresh,#portal-logout) {color:#dce6ff;border-color:#41547c;background:#111e3a}
:root[data-portal-theme] .workspace-modern .demo-help {border-color:#34446b;color:#c0cdec;font-size:12px}
:root[data-portal-theme] .workspace-modern .demo-help :is(strong,small) {color:#d6e0f7;font-size:12px}

/* KLCC is kept in the page heading, away from records and form fields. */
:root[data-portal-theme] .workspace-modern :is(.portal-hero,.demo-intro,.bd-heading,.crm-header[data-workspace-kind=coaching],.crm-header[data-workspace-kind=calling]) {
  position:relative;isolation:isolate;overflow:hidden;min-height:220px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;
  gap:20px;padding:30px;border:1px solid #2c3e6b;border-radius:16px;margin:0 0 26px;background:#0b1433;color:#fff;box-shadow:0 8px 22px #0b14330b;
}
:root[data-portal-theme] .workspace-modern :is(.portal-hero,.demo-intro,.bd-heading,.crm-header[data-workspace-kind=coaching],.crm-header[data-workspace-kind=calling])::before {
  content:"";position:absolute;inset:0 0 0 25%;z-index:-2;background-image:url('/assets/workspace/klcc-skyline.jpg');background-position:55% 0%;background-size:cover;
}
:root[data-portal-theme] .workspace-modern :is(.portal-hero,.demo-intro,.bd-heading,.crm-header[data-workspace-kind=coaching],.crm-header[data-workspace-kind=calling])::after {
  content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#0b1433 0%,#0b1433f2 22%,#0b1433ba 44%,#0b143350 69%,#0b143320 100%);
}
:root[data-portal-theme] .workspace-modern .demo-intro.demo-intro {display:block}
:root[data-portal-theme] .workspace-modern :is(.portal-hero,.demo-intro,.bd-heading,.crm-header[data-workspace-kind=coaching],.crm-header[data-workspace-kind=calling])>div:first-child {max-width:66%}
:root[data-portal-theme] .workspace-modern :is(.portal-hero,.demo-intro,.bd-heading,.crm-header[data-workspace-kind=coaching],.crm-header[data-workspace-kind=calling]) :is(h1,h2) {color:#fff}
:root[data-portal-theme] .workspace-modern :is(.portal-hero,.demo-intro,.bd-heading,.crm-header[data-workspace-kind=coaching],.crm-header[data-workspace-kind=calling]) :is(.portal-kicker,.demo-eyebrow,.crm-eyebrow,.bd-eyebrow) {color:#c9dbff!important;letter-spacing:.08em;font-size:11px!important}
:root[data-portal-theme] .workspace-modern :is(.portal-hero,.demo-intro,.bd-heading,.crm-header[data-workspace-kind=coaching],.crm-header[data-workspace-kind=calling]) :is(p,.portal-intro,.crm-muted,.bd-muted) {color:#e1eaff;font-size:14px;line-height:1.65}
:root[data-portal-theme] .workspace-modern .demo-intro>:is(h1,p) {max-width:66%}
:root[data-portal-theme] .workspace-modern :is(.bd-heading-actions,.crm-header[data-workspace-kind])>.bd-btn,
:root[data-portal-theme] .workspace-modern .crm-header[data-workspace-kind]>button {background:#142952e8;color:#fff;border-color:#90a5d0;min-height:44px}
:root[data-portal-theme] .workspace-modern .bd-private {background:#101e3ce6;color:#d6e2ff}
:root[data-portal-theme] .workspace-modern #portal-main:has(>.portal-login) {background:linear-gradient(110deg,#0b1433ed,#0b143399),url('/assets/workspace/klcc-skyline.jpg') center 30%/cover;min-height:calc(100dvh - var(--workspace-top));padding:42px 12px}
:root[data-portal-theme] .workspace-modern #portal-main>.portal-login {margin:0 auto;position:relative;background:var(--ui-surface);color:var(--ui-ink);box-shadow:0 18px 55px #00000024}

/* Opaque work surfaces in both modes. */
:root[data-portal-theme] .workspace-modern :is(.portal-card,.portal-login,.portal-metric,.demo-card,.demo-kpi,.crm-card,.crm-metric,.bd-metric,.bd-list-panel,.bd-drawer,.bd-drawer-head,.bd-discard,.bd-basic-edit,.bd-original-note,.bd-source-record,.work-record,.work-empty,.sales-crm-item,.crm-toolbar,.crm-tabs,.bd-tabs,.manager-insights,.mi-client,.research-section,.research-opportunity,.research-department,.crm-appointment-card,.fee-entry) {
  background:var(--ui-surface);color:var(--ui-ink);border-color:var(--ui-line);box-shadow:var(--ui-shadow);
}
:root[data-portal-theme] .workspace-modern :is(.bd-metric,.portal-metric,.demo-kpi,.crm-metric) {border-top:1px solid var(--ui-line)}
:root[data-portal-theme] .workspace-modern :is(.portal-metric,.demo-kpi,.crm-metric,.bd-metric)>strong {color:var(--ui-ink)}
:root[data-portal-theme] .workspace-modern :is(.portal-metric,.demo-kpi,.crm-metric,.bd-metric)>:is(span,small) {color:var(--ui-muted);font-size:12px}
:root[data-portal-theme] .workspace-modern :where(.portal-content,#demo-main,.bd-drawer,.bd-discard,.portal-login) :is(h1,h2,h3,h4,h5,h6) {color:var(--ui-ink)}
:root[data-portal-theme] .workspace-modern :where(.portal-content,#demo-main,.bd-drawer,.bd-discard,.portal-login) small {color:var(--ui-muted)}
:root[data-portal-theme] .workspace-modern :where(.portal-content,#demo-main,.bd-drawer,.bd-discard,.portal-login) a:not(.button,.bd-btn,.crm-button,.demo-button,.crm-appointment-primary) {color:var(--ui-link)}
:root[data-portal-theme] .workspace-modern :where(.portal-content,#demo-main,.bd-drawer,.bd-discard,.portal-login) label {color:var(--ui-ink);font-size:13px;line-height:1.6}
:root[data-portal-theme] .workspace-modern :is(.portal-intro,.portal-note,.portal-list small,.portal-empty,.work-kind,.work-meta,.work-review,.work-record small,.work-facts span,.work-followup p,.work-person small,.work-scope span,.expense-note,.finance-row small,.finance-mini-chart span,.fee-entry small,.fee-progress-label,.fee-figures span,.fee-scope,.fee-search-count,.sales-crm-body,.sales-crm-item summary small,.crm-muted,.crm-file-help,.bd-muted,.bd-company,.bd-row small,.bd-pagination span,.bd-result-count,.bd-drawer-head>p:not(.bd-eyebrow),.bd-save-bar>span,.bd-timeline time,.bd-timeline .bd-actor,.bd-crm dt,.assignment-help,.assignment-history small,.crm-appointment-muted,.crm-appointment-steps,.crm-appointment-copy-status,.crm-appointment-intro p,.research-label,.research-meta,.research-opening-note,.research-expand,.research-presence-status,.research-empty p,.research-usage span,.research-company-snapshot>p,.research-next-step p,.mi-label,.mi-eyebrow,.mi-note,.mi-meta,.mi-followup span:not(.mi-label),.workspace-report-stamp,.workspace-period-label,.workspace-scroll-help) {color:var(--ui-muted)}
:root[data-portal-theme] .workspace-modern :is(.bd-crm dd,.bd-original-note p,.bd-timeline p,.crm-detail-text,.crm-profile-facts dd,.work-facts b,.finance-big,.fee-policy strong,.fee-entry p,.fee-figures strong,.sales-crm-item summary strong,.research-ask p,.research-list,.research-questions p,.research-background,.research-facts dd,.research-presence article strong,.research-department>summary strong,.research-department-grid h5,.needs-plan-card h6) {color:var(--ui-ink)}
:root[data-portal-theme] .workspace-modern :is(.research-kicker,.research-opportunity-number,.research-step,.research-department-icon,.fee-source-label) {color:var(--ui-ai)}
:root[data-portal-theme] .workspace-modern :is(.portal-status,.portal-security-code,.portal-account-link,.portal-subnav a,.work-unit,.work-scope,.work-caption,.work-checklist li,.work-badge,.work-empty,.sales-crm-history,.bd-source-fields aside,.bd-soft-empty,.bd-bulk-controls,.bd-bulk-handover,.bd-list-bar,.bd-table-head,.bd-avatar,.bd-stage,.crm-pill,.mi-metrics article,.mi-reading-grid>section,.mi-empty,.mi-badge,.research-step,.research-company-snapshot,.research-industry,.research-ask,.research-next-step,.research-preparation,.research-count,.research-department-icon,.research-department[open]>summary,.research-questions li>span,.research-source-id,.research-evidence article,.research-empty,.research-usage article,.research-nav-count,.research-tools>summary,.research-tools[open]>summary,.crm-assignment,.crm-appointment-hours,.crm-appointment-hours li,.crm-appointment-record,.crm-appointment-badges span,.fee-policy,.fee-empty,.fee-pool,.finance-balance,.workspace-periods) {
  background:var(--ui-surface-soft);color:var(--ui-ink);border-color:var(--ui-line);
}
:root[data-portal-theme] .workspace-modern :is(.bd-list-bar,.bd-table-head,.bd-bulk-controls,.bd-bulk-review-list,.bd-bulk-review-list td,.crm-table-wrap,.demo-scroll,.mi-table-wrap,.assignment-history,.mi-team,.mi-detail,.mi-followup,.research-section,.research-department,.research-history article,.needs-history article,.work-followup,.work-person,.work-pipeline>div,.portal-list li,.portal-page details) {border-color:var(--ui-line)}
:root[data-portal-theme] .workspace-modern .bd-advanced-panel {background:var(--ui-surface)!important;border-color:var(--ui-line)!important}
:root[data-portal-theme] .workspace-modern .bd-advanced-panel>summary {color:var(--ui-muted)}
:root[data-portal-theme] .workspace-modern .bd-crm .bd-drawer.bd-research-view {background:var(--ui-bg)}
:root[data-portal-theme] .workspace-modern .bd-save-bar {background:var(--ui-surface);border-color:var(--ui-line);box-shadow:0 -8px 16px var(--ui-surface)}
:root[data-portal-theme] .workspace-modern :is(.bd-drawer .bd-tabs,.bd-drawer-head) {background:var(--ui-surface)}
:root[data-portal-theme] .workspace-modern :is(.bd-row:hover,.bd-row.is-selected,.mi-selected,.crm-table tbody tr:hover td,.demo-table tbody tr:hover td) {background:var(--ui-hover)}
:root[data-portal-theme] .workspace-modern :is(.crm-table,.demo-table,.centre-table,.manager-insights table,.bd-bulk-review-list table) {color:var(--ui-ink)}
:root[data-portal-theme] .workspace-modern :is(.crm-table,.demo-table,.centre-table,.manager-insights table,.bd-bulk-review-list table) :is(th,td) {border-color:var(--ui-line)}
:root[data-portal-theme] .workspace-modern :is(.crm-table,.demo-table,.centre-table,.manager-insights table,.bd-bulk-review-list table) th {background:var(--ui-surface-soft);color:var(--ui-muted)}
:root[data-portal-theme] .workspace-modern .manager-insights thead {background:var(--ui-surface-soft);color:var(--ui-ink)}

/* Shared controls retain normal labels, native selection and keyboard focus. */
:root[data-portal-theme] .workspace-modern :where(.portal-content,#demo-main,.portal-login,.bd-drawer,.bd-discard) :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=submit]):not([type=button]),select,textarea) {background:var(--ui-input);color:var(--ui-ink);border:1px solid var(--ui-line);min-height:44px}
:root[data-portal-theme] .workspace-modern :is(input,textarea)::placeholder {color:var(--ui-muted);opacity:1}
:root[data-portal-theme] .workspace-modern input:is([type=checkbox],[type=radio]) {accent-color:var(--ui-blue)}
:root[data-portal-theme] .workspace-modern :is(.crm-workspace,.bd-crm,.manager-insights,.crm-assignment,.crm-appointments) button,
:root[data-portal-theme] .workspace-modern :is(.demo-button,.crm-button,.portal-page .button.outline,.portal-subnav a,.research-tools>summary,.mi-actions a,.crm-appointment-actions a,.crm-appointment-record,.bd-contact-link) {background:var(--ui-surface);color:var(--ui-ink);border-color:var(--ui-line)}
:root[data-portal-theme] .workspace-modern :is(.crm-workspace,.bd-crm,.manager-insights,.crm-assignment,.crm-appointments) button:hover,
:root[data-portal-theme] .workspace-modern :is(.demo-button,.portal-page .button.outline,.mi-actions a,.crm-appointment-actions a):hover {background:var(--ui-hover);color:var(--ui-ink);border-color:var(--ui-link)}
:root[data-portal-theme] .workspace-modern :is(.bd-client-name,.bd-text-btn,.research-text-button,.research-meta button,.mi-team th button) {background:transparent;border-color:transparent;box-shadow:none;color:var(--ui-link)}
:root[data-portal-theme] .workspace-modern .bd-crm .bd-client-name {color:var(--ui-ink)}
:root[data-portal-theme] .workspace-modern :is(.demo-primary,.demo-card a.demo-button,.bd-crm .bd-primary,.crm-workspace button.primary,.crm-button.primary,.portal-page .button:not(.outline),.assignment-primary,.mi-filters button[type=submit],.crm-appointment-actions .crm-appointment-primary) {background:var(--ui-blue);border-color:var(--ui-blue);color:#fff;box-shadow:0 3px 8px #105feb16}
:root[data-portal-theme] .workspace-modern :is(.demo-primary,.demo-card a.demo-button,.bd-crm .bd-primary,.crm-workspace button.primary,.crm-button.primary,.portal-page .button:not(.outline),.assignment-primary,.mi-filters button[type=submit],.crm-appointment-actions .crm-appointment-primary):hover {background:#124fc3;border-color:#124fc3;color:#fff}
:root[data-portal-theme] .workspace-modern :is(.crm-tabs,.bd-tabs,.research-navigation,.mi-tabs) :is(button[aria-selected=true],button[aria-pressed=true]) {background:var(--ui-blue-soft);border-color:var(--ui-line);color:var(--ui-link);box-shadow:inset 0 0 0 1px var(--ui-line)}
:root[data-portal-theme] .workspace-modern :is(.bd-metric.is-active,.bd-row-tools .bd-open[data-call]) {background:var(--ui-blue-soft);border-color:var(--ui-line);color:var(--ui-link)}
:root[data-portal-theme] .workspace-modern :is(.bd-metric.is-active span,.bd-bulk-controls [data-selected-count],.bd-bulk-controls small,.bd-crm .bd-bulk-check) {color:var(--ui-ink)}
:root[data-portal-theme] .workspace-modern .workspace-periods button {background:transparent;color:var(--ui-muted)}
:root[data-portal-theme] .workspace-modern .workspace-periods button[aria-pressed=true] {background:#0b1433;color:#fff;box-shadow:0 2px 6px #00000012}
:root[data-portal-theme=dark] .workspace-modern .workspace-periods button[aria-pressed=true] {background:#2455ab;color:#fff}
:root[data-portal-theme] .workspace-modern .bd-database-scopes button[aria-pressed=true] {background:var(--ui-blue);border-color:var(--ui-blue);color:#fff}
:root[data-portal-theme] .workspace-modern .research-navigation {background:var(--ui-surface-soft);border-color:var(--ui-line)}
:root[data-portal-theme] .workspace-modern .research-navigation button {background:transparent;color:var(--ui-muted)}
:root[data-portal-theme] .workspace-modern :is(.needs-ai-request,.needs-plan-card,.research-ask,.research-department-win) {background:var(--ui-ai-soft);border-color:var(--ui-line);color:var(--ui-ink)}
:root[data-portal-theme] .workspace-modern :is(.research-opening,.needs-pitch.research-opening) {background:linear-gradient(125deg,#101b41,#253477);border-color:#405398;color:#fff}
:root[data-portal-theme] .workspace-modern .company-research .research-opening :is(h3,h4,h5,blockquote) {color:#fff}
:root[data-portal-theme] .workspace-modern .company-research .research-opening :is(.research-label,.research-opening-note,small) {color:#d1dfff}
:root[data-portal-theme] .workspace-modern .research-opening .bd-btn {background:#fff;border-color:#fff;color:#173a78}
:root[data-portal-theme] .workspace-modern .research-citations a {background:var(--ui-blue-soft);color:var(--ui-link);border-color:var(--ui-line)}
:root[data-portal-theme] .workspace-modern :is(.portal-progress,.fee-bar) {background:var(--ui-surface-soft)}
:root[data-portal-theme] .workspace-modern :is(.portal-progress i,.fee-bar i,.finance-mini-chart i,.finance-chart-key i) {background:var(--ui-blue)}
:root[data-portal-theme] .workspace-modern :is(.finance-mini-chart i.cost,.finance-chart-key i.cost) {background:#655ffa}

/* Status meaning remains explicit in labels as well as colour. */
:root[data-portal-theme] .workspace-modern :is(.crm-notice,.demo-notice,.portal-notice,.research-notice,.research-demo-notice,.research-badge.needs-review,.crm-appointment-demo,.fee-notice.warn,.mi-attention,.crm-pill.warning,.work-review.work-badge,.fee-status.hold,.finance-bar.stale,.finance-coverage span) {background:var(--ui-warning-soft);color:var(--ui-warning);border-color:var(--ui-warning)}
:root[data-portal-theme] .workspace-modern :is(.research-message,.research-progress,.bd-demo,.demo-assigned-notice,.mi-current,.work-scheduled,.work-published,.work-in-progress,.research-badge) {background:var(--ui-blue-soft);color:var(--ui-link);border-color:var(--ui-line)}
:root[data-portal-theme] .workspace-modern :is(.bd-follow.is-overdue,.bd-crm .is-error,.portal-error,.crm-assignment .error) {color:var(--ui-danger)}
:root[data-portal-theme] .workspace-modern :is(.crm-status.error,.research-error,.bd-status.is-error,.mi-overdue,.work-rejected,.fee-inline-error,.manager-insights [data-mi-feedback]:not(:empty)) {background:var(--ui-danger-soft);color:var(--ui-danger);border-color:var(--ui-danger)}
:root[data-portal-theme] .workspace-modern :is(.bd-status,.crm-status:not(.error),.crm-pill.success,.bd-stage.is-success,.bd-wa,.work-approved,.work-completed,.work-active,.fee-status:not(.hold),.fee-notice:not(.warn),.finance-bar:not(.stale),.finance-coverage .ok) {background:var(--ui-success-soft);color:var(--ui-success);border-color:var(--ui-line)}
:root[data-portal-theme] .workspace-modern .bd-save-message {color:var(--ui-success)}
:root[data-portal-theme] .workspace-modern :is(.bd-follow,.bd-footnote) {color:var(--ui-muted)}
:root[data-portal-theme] .workspace-modern .bd-crm .bd-danger {background:#b72d48;border-color:#b72d48;color:#fff}
:root[data-portal-theme] .workspace-modern .bd-follow.is-today {color:var(--ui-link)}
:root[data-portal-theme] .workspace-modern .research-presence-status.is-found {color:var(--ui-link)}
:root[data-portal-theme] .workspace-modern .finance-bar small {color:inherit}
:root[data-portal-theme] .workspace-modern .fee-hero {background:linear-gradient(120deg,#0b1433,#26366f)}
:root[data-portal-theme] .workspace-modern .fee-hero h1 {color:#fff}
:root[data-portal-theme] .workspace-modern .fee-hero p {color:#dbe5ff}
:root[data-portal-theme] .workspace-modern .fee-eyebrow {color:#c7d7ff}
:root[data-portal-theme] .workspace-modern .fee-step {background:var(--ui-blue-soft);color:var(--ui-link)}
:root[data-portal-theme] .workspace-modern .fee-empty p {color:var(--ui-muted)}
:root[data-portal-theme] .workspace-modern :is(.centre-card,.centre-results,.centre-note,.centre-status,.centre-kpis article) {background:var(--ui-surface-soft);color:var(--ui-ink);border-color:var(--ui-line)}
:root[data-portal-theme] .workspace-modern .centre-muted {color:var(--ui-muted)}
:root[data-portal-theme] .workspace-modern>.skip-link {background:var(--ui-surface);color:var(--ui-link);border:1px solid var(--ui-line)}
:root[data-portal-theme] .workspace-modern .centre-error {background:var(--ui-danger-soft);color:var(--ui-danger)}
:root[data-portal-theme] .workspace-modern .centre-success {background:var(--ui-success-soft);color:var(--ui-success)}
:root[data-portal-theme] .workspace-modern .centre-form :is(fieldset,legend) {border-color:var(--ui-line);color:var(--ui-ink)}
:root[data-portal-theme] .workspace-modern :is(.crm-appointment-eyebrow,.research-empty-evidence) {color:var(--ui-muted)}
:root[data-portal-theme] .workspace-modern .crm-appointment-eyebrow {font-size:12px}
:root[data-portal-theme] .workspace-modern .company-research .bd-btn {max-width:100%;white-space:normal;overflow-wrap:anywhere}

/* The final hero overrides keep its white type independent of the reading theme. */
:root[data-portal-theme] .workspace-modern :is(.portal-hero,.demo-intro,.bd-heading,.crm-header[data-workspace-kind=coaching],.crm-header[data-workspace-kind=calling]) :is(h1,h2) {color:#fff}
:root[data-portal-theme] .workspace-modern :is(.portal-hero,.demo-intro,.bd-heading,.crm-header[data-workspace-kind=coaching],.crm-header[data-workspace-kind=calling]) :is(.crm-muted,.portal-intro,.bd-muted,p) {color:#e1eaff}

@media(max-width:800px) {
  :root[data-portal-theme] .workspace-modern {font-size:15px}
  :root[data-portal-theme] .workspace-modern :is(.portal-top,.demo-top) img {width:118px;max-width:118px;height:40px}
  :root[data-portal-theme] .workspace-modern :where(.portal-content,#demo-main,.bd-drawer,.portal-login) :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=button]):not([type=submit]),select,textarea) {font-size:16px!important}
  :root[data-portal-theme] .workspace-modern :is(.crm-tabs,.bd-tabs,.research-navigation,.mi-tabs) button {min-height:44px;font-size:13px}
  :root[data-portal-theme] .workspace-modern :is(.workspace-scroll-help,.workspace-report-stamp,.bd-row small,.bd-save-bar>span,.bd-timeline time,.bd-crm dt,.demo-help small) {font-size:12px}
  :root[data-portal-theme] .workspace-modern :is(.bd-client-name,.bd-contact-cell>span,.bd-contact-cell>small,.bd-company,.bd-follow-cell,.research-facts dd,.mi-text) {overflow-wrap:anywhere}
  :root[data-portal-theme] .workspace-modern .company-research .research-navigation {position:static}
  :root[data-portal-theme] .workspace-modern .portal-theme-toggle {font-size:12px;min-height:44px;padding:8px 10px}
}
@media(max-width:540px) {
  :root[data-portal-theme] .workspace-modern :is(.portal-top,.demo-top) {gap:10px;padding:10px 12px}
  :root[data-portal-theme] .workspace-modern .portal-theme-toggle {gap:5px;padding:8px 9px;font-size:12px}
  :root[data-portal-theme] .workspace-modern .portal-theme-label {display:none}
  :root[data-portal-theme] .workspace-modern .portal-theme-compact {display:inline}
  :root[data-portal-theme] .workspace-modern .portal-theme-icon {font-size:18px}
  :root[data-portal-theme] .workspace-modern .demo-top>.portal-theme-toggle {margin-left:auto}
  :root[data-portal-theme] .workspace-modern .demo-top {display:grid;grid-template-columns:118px minmax(0,1fr) auto;gap:8px;align-items:center}
  :root[data-portal-theme] .workspace-modern .demo-top>a {grid-column:1;grid-row:1}
  :root[data-portal-theme] .workspace-modern .demo-top>.workspace-menu-button {grid-column:2;grid-row:1;justify-self:center;margin:0;padding:8px 6px;gap:4px}
  :root[data-portal-theme] .workspace-modern .demo-top>.portal-theme-toggle {grid-column:3;grid-row:1;margin:0;padding:8px}
  :root[data-portal-theme] .workspace-modern .demo-top>.demo-top-actions {grid-column:1/-1;grid-row:2;width:100%;min-width:0}
  :root[data-portal-theme] .workspace-modern .workspace-menu-button {margin-right:0;padding:8px 9px;gap:5px}
  :root[data-portal-theme] .workspace-modern .portal-top>div {width:100%;justify-content:flex-end;gap:10px}
  :root[data-portal-theme] .workspace-modern :is(.portal-hero,.demo-intro,.bd-heading,.crm-header[data-workspace-kind=coaching],.crm-header[data-workspace-kind=calling]) {min-height:270px;padding:24px 20px;align-items:flex-end;gap:16px}
  :root[data-portal-theme] .workspace-modern :is(.portal-hero,.demo-intro,.bd-heading,.crm-header[data-workspace-kind=coaching],.crm-header[data-workspace-kind=calling])::before {left:0;background-position:52% 0%}
  :root[data-portal-theme] .workspace-modern :is(.portal-hero,.demo-intro,.bd-heading,.crm-header[data-workspace-kind=coaching],.crm-header[data-workspace-kind=calling])::after {background:linear-gradient(0deg,#0b1433 0%,#0b1433f2 30%,#0b1433b0 68%,#0b143380 100%)}
  :root[data-portal-theme] .workspace-modern :is(.portal-hero,.demo-intro,.bd-heading,.crm-header[data-workspace-kind=coaching],.crm-header[data-workspace-kind=calling])>div:first-child,
  :root[data-portal-theme] .workspace-modern .demo-intro>:is(h1,p) {max-width:100%}
  :root[data-portal-theme] .workspace-modern .demo-intro.demo-intro {display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;gap:4px}
  :root[data-portal-theme] .workspace-modern :is(.portal-hero,.demo-intro,.bd-heading,.crm-header[data-workspace-kind=coaching],.crm-header[data-workspace-kind=calling]) h1 {font-size:27px;line-height:1.25}
  :root[data-portal-theme] .workspace-modern .bd-heading-actions {background:#0b1433d9;border-radius:9px;padding:8px}
  :root[data-portal-theme] .workspace-modern .bd-private {display:none}
  :root[data-portal-theme] .workspace-modern :is(.portal-metric,.demo-kpi,.crm-metric,.bd-metric)>span {font-size:12px}
  :root[data-portal-theme] .workspace-modern :is(.portal-metric,.demo-kpi,.crm-metric,.bd-metric) small {font-size:12px;line-height:1.55}
  :root[data-portal-theme] .workspace-modern .workspace-periods button {font-size:12px;min-height:44px}
  :root[data-portal-theme] .workspace-modern .bd-row-tools .bd-open {min-height:44px;font-size:12px}
  :root[data-portal-theme] .workspace-modern #portal-main:has(>.portal-login) {padding:24px 12px}
  :root[data-portal-theme] .workspace-modern #portal-main>.portal-login {padding:26px 20px}
}
@media(prefers-reduced-motion:reduce) { :root[data-portal-theme] .workspace-modern * {transition:none!important;scroll-behavior:auto!important} }

/* Direct access to the existing private IG preview for permitted marketing users. */
.workspace-modern .portal-sidebar .portal-marketing-shortcut{margin:0 0 18px}
:root[data-portal-theme] .workspace-modern .portal-sidebar nav a.portal-ig-preview{min-height:48px;background:#225ad5;border:1px solid #527ee1;color:#fff;font-weight:700;box-shadow:0 5px 14px #06102524}
:root[data-portal-theme] .workspace-modern .portal-sidebar nav a.portal-ig-preview:hover{background:#2c68e9;color:#fff}
:root[data-portal-theme] .workspace-modern .portal-sidebar nav a.portal-ig-preview:focus-visible{outline:3px solid #9bc7ff;outline-offset:3px}
.portal-ig-preview-arrow{margin-left:auto;font-size:20px;line-height:1}
