.vc2-campaign {
  font-family: "Plus Jakarta Sans", "Segoe UI", sans-serif;
  background: #f4f5f6;
  color: #1c1d21;
  min-height: 100vh;
}
.vc2-campaign a { color: #3f51b5; }
.vc2-campaign header.vc2-campaign-bar {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: center;
  padding: 16px 24px;
  background: #fff;
  border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}
.vc2-campaign header.vc2-campaign-bar strong { color: #3f51b5; }
.vc2-campaign .vc2-shell {
  display: grid;
  grid-template-columns: 260px 1fr;
  gap: 24px;
  max-width: 1100px;
  margin: 0 auto;
  padding: 24px;
}
.vc2-campaign .vc2-side {
  background: #333;
  color: #fff;
  border-radius: 12px;
  padding: 16px;
  display: grid;
  gap: 16px;
  align-content: start;
}
.vc2-campaign .vc2-side-title {
  margin: 0;
  font-size: 0.95rem;
  color: #fff;
}
.vc2-campaign .vc2-campaign-list { display: grid; gap: 8px; }
.vc2-campaign .vc2-campaign-list a { color: #fff; }
.vc2-campaign .vc2-campaign-section {
  display: grid;
  gap: 4px;
  background: #2b2b2b;
  border-radius: 8px;
  padding: 10px;
}
.vc2-campaign .vc2-campaign-section[data-open="true"] { outline: 2px solid #3f51b5; }
.vc2-campaign .vc2-campaign-section h3 { margin: 0; font-size: 0.95rem; color: #fff; }
.vc2-campaign .vc2-campaign-section p { margin: 0; color: #e9ecfb; font-size: 0.85rem; }
.vc2-campaign .vc2-campaign-section a { color: #fff; }
.vc2-campaign .vc2-dash-links, .vc2-campaign header.vc2-campaign-bar { gap: 16px; }
.vc2-campaign header.vc2-campaign-bar a { color: #3f51b5; text-decoration: none; font-weight: 650; }
.vc2-campaign nav.vc2-steps {
  background: transparent;
  color: #fff;
  border-radius: 0;
  padding: 0;
  display: grid;
  gap: 8px;
  align-content: start;
}
.vc2-campaign nav.vc2-steps a {
  color: #fff;
  text-decoration: none;
  padding: 8px 10px;
  border-radius: 8px;
}
.vc2-campaign nav.vc2-steps a[aria-current="page"] { background: #3f51b5; }
.vc2-campaign .vc2-main { display: grid; gap: 16px; }
.vc2-campaign .vc2-card {
  background: #fff;
  border: 1px solid rgba(63, 81, 181, 0.16);
  border-radius: 12px;
  padding: 16px 18px;
}
.vc2-campaign .vc2-card h1, .vc2-campaign .vc2-card h2 { margin: 0 0 8px; font-size: 1.25rem; }
.vc2-campaign .vc2-meta { color: #3d4250; margin: 0; }
.vc2-campaign .vc2-pill {
  display: inline-block;
  background: #e9ecfb;
  color: #3f51b5;
  border-radius: 999px;
  padding: 4px 10px;
  font-weight: 700;
  font-size: 0.85rem;
}
.vc2-campaign label { display: grid; gap: 6px; margin: 0 0 12px; font-weight: 650; }
.vc2-campaign input, .vc2-campaign textarea, .vc2-campaign select {
  font: inherit;
  border: 1px solid rgba(0, 0, 0, 0.16);
  border-radius: 8px;
  padding: 8px 10px;
  background: #fff;
}
.vc2-campaign textarea { min-height: 72px; }
.vc2-campaign button, .vc2-campaign .vc2-button {
  font: inherit;
  background: #3f51b5;
  color: #fff;
  border: 0;
  border-radius: 8px;
  padding: 8px 14px;
  cursor: pointer;
}
.vc2-campaign button.secondary { background: #333; }
.vc2-campaign .vc2-error { color: #8a1f11; }
.vc2-campaign .vc2-list { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
.vc2-campaign .vc2-row { display: flex; justify-content: space-between; gap: 12px; align-items: center; }
.vc2-campaign .vc2-unknown { background: #e9ecfb; padding: 8px 10px; border-radius: 8px; }
.vc2-campaign .mm-signin { display: grid; gap: 12px; max-width: 420px; }
.vc2-campaign .mm-signin h1 { margin: 0; }
.vc2-campaign .mm-note { margin: 0; color: #3d4250; }
@media (max-width: 800px) {
  .vc2-campaign .vc2-shell { grid-template-columns: 1fr; }
  .vc2-campaign nav.vc2-steps { grid-template-columns: 1fr 1fr; }
}

/* Campaign shell. One design for every step: product nav + numbered steps.
   The VentureCenter icon rail stays hidden on these routes because it is an
   80px collapsed strip, and off-screen below 1024px. */
html.mm-campaign-direct #cdsdp-sidebar,
body.mm-campaign-open #cdsdp-sidebar,
html.mm-campaign-direct .cdsdp-sidebar-overlay,
body.mm-campaign-open .cdsdp-sidebar-overlay,
html.mm-campaign-direct .cdsdp-mobile-toggle,
body.mm-campaign-open .cdsdp-mobile-toggle {
  display: none !important;
  width: 0 !important;
  min-width: 0 !important;
  max-width: 0 !important;
  overflow: hidden !important;
  transform: none !important;
}
html.mm-campaign-direct main.cdsdp-main-with-sidebar,
html.mm-campaign-direct main.cdsdp-main-with-sidebar.sidebar-collapsed,
body.mm-campaign-open main.cdsdp-main-with-sidebar,
body.mm-campaign-open main.cdsdp-main-with-sidebar.sidebar-collapsed {
  margin-left: 0 !important;
  width: auto !important;
  max-width: none !important;
  overflow: visible !important;
  height: auto !important;
}
#mm-dash-layout.mm-shell {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 195px 199px minmax(0, 1fr);
  align-items: start;
  width: 100%;
  min-width: 0;
  min-height: calc(100vh - 67px);
  overflow: visible;
  background: #f7f8fb;
  color: #162033;
  font-family: "Plus Jakarta Sans", "Segoe UI", sans-serif;
}
#mm-dash-layout .left-nav,
#mm-dash-layout .step-nav {
  display: flex;
  flex-direction: column;
  align-self: stretch;
  position: sticky;
  top: 0;
  width: auto;
  min-width: 150px;
  min-height: calc(100vh - 67px);
  overflow: visible;
  transform: none;
  visibility: visible;
  background: #fff;
  border-right: 1px solid #e7eaf2;
}
#mm-dash-layout .left-nav { gap: 4px; padding: 16px 9px; }
#mm-dash-layout .side-section {
  margin: 0 12px 8px;
  color: #8190ab;
  font-weight: 800;
  font-size: 12px;
  letter-spacing: 0.055em;
}
#mm-dash-layout .side-section.spaced { margin-top: 16px; }
#mm-dash-layout .nav-item {
  min-height: 35px;
  display: flex;
  align-items: center;
  gap: 10px;
  border-radius: 6px;
  padding: 6px 10px;
  color: #60708f;
  font-size: 12px;
  font-weight: 650;
  line-height: 1.25;
  text-decoration: none;
  border-left: 3px solid transparent;
}
#mm-dash-layout .nav-item:hover,
#mm-dash-layout .nav-item:focus-visible { background: #f5f7ff; color: #365bd9; }
#mm-dash-layout .nav-item.active {
  background: linear-gradient(90deg, #f0ecff, #f7f4ff);
  color: #4b38e2;
  border-left-color: #7256ff;
  font-weight: 750;
}
#mm-dash-layout .nav-item .ico { width: 15px; height: 15px; flex: 0 0 15px; }
#mm-dash-layout .step-nav { padding: 18px 11px; }
#mm-dash-layout .step-head { padding: 1px 8px 16px; }
#mm-dash-layout .step-head strong {
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.06em;
}
#mm-dash-layout .step-head small {
  display: block;
  margin-top: 4px;
  color: #7080a0;
  font-size: 12px;
  min-height: 1em;
}
#mm-dash-layout .step-timeline { position: relative; display: flex; flex-direction: column; }
#mm-dash-layout .step-timeline:before {
  content: "";
  position: absolute;
  left: 26px;
  top: 18px;
  bottom: 18px;
  width: 1px;
  background: #dde5f4;
}
#mm-dash-layout .step {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 54px;
  padding: 6px 8px;
  position: relative;
  border-radius: 8px;
  color: #0e1d4b;
  text-decoration: none;
}
#mm-dash-layout .step:hover { background: #f9faff; }
#mm-dash-layout .step[aria-current="page"] { background: #f0f3ff; }
#mm-dash-layout .step[aria-current="page"]:before {
  content: "";
  position: absolute;
  left: 0;
  top: 8px;
  bottom: 8px;
  width: 3px;
  background: #4d58ed;
  border-radius: 6px;
}
#mm-dash-layout .step-num {
  width: 31px;
  height: 31px;
  background: #fff;
  border: 1.5px solid #d7e1f5;
  border-radius: 50%;
  display: grid;
  place-items: center;
  flex: 0 0 31px;
  color: #152249;
  font-size: 13px;
  font-weight: 800;
  box-shadow: 0 0 0 3px #fff;
  z-index: 1;
}
#mm-dash-layout .step[aria-current="page"] .step-num { border-color: #4867f5; color: #315bfa; }
#mm-dash-layout .step strong { font-size: 12px; display: block; line-height: 1.3; font-weight: 750; }
#mm-dash-layout .step small { font-size: 12px; display: block; color: #8794ae; line-height: 1.35; font-weight: 500; }
#mm-dash-layout .step[aria-current="page"] strong,
#mm-dash-layout .step[aria-current="page"] small { color: #354bca; }
#mm-dash-main.vc2-campaign {
  min-height: 0;
  min-width: 0;
  overflow: visible;
  padding: 20px 24px 40px;
  background: transparent;
}
.mm-brief-frame { display: block; width: 100%; height: calc(100% - 8px); min-height: 70vh; border: 0; background: #fff; border-radius: 12px; }
.mm-plat-progress a span svg { width: 12px; height: 12px; }
/* Dashboard-home content is REMOVED from the DOM on a campaign route by the
   mm-campaign-direct-boot home stripper (and a MutationObserver), not hidden.
   No display:none / visibility:hidden covers a still-present home here. */
html.mm-campaign-direct #mm-dash-layout,
body.mm-campaign-open #mm-dash-layout {
  position: relative;
  top: auto;
  left: auto;
  right: auto;
  bottom: auto;
  width: 100%;
  height: auto;
  overflow: visible;
}
@media (max-width: 980px) {
  #mm-dash-layout.mm-shell { grid-template-columns: 168px 176px minmax(0, 1fr); }
}

/* Google Ads Explorer panels inside the Evidence section. Brand only: no
   purple, no unicode icon, and no colour that implies a measured result. */
.mm-explorer {
  margin: 0 0 20px;
  padding: 16px 18px;
  background: #ffffff;
  border: 1px solid #e9ecfb;
  border-radius: 10px;
}
.mm-explorer h2 {
  margin: 0 0 6px;
  font-size: 17px;
  color: #3F51B5;
}
.mm-explorer h3 {
  margin: 14px 0 6px;
  font-size: 15px;
  color: #333;
}
.mm-ex-list {
  margin: 8px 0 0;
  padding: 0;
  list-style: none;
}
.mm-ex-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 2px 12px;
  padding: 8px 0;
  border-top: 1px solid #f4f5f6;
}
.mm-ex-row > span:first-child {
  color: #333;
}
.mm-ex-row > b {
  text-align: right;
  font-weight: 600;
}
.mm-ex-row .vc2-meta {
  grid-column: 1 / -1;
}
.mm-ex-unknown > b {
  color: #767676;
  font-weight: 500;
}

.mm-nc-status {
  margin: 0.25rem 0 0.5rem;
  color: #5c6570;
  font-size: 0.92rem;
}
/* Platforms and Evidence. A public link and an account connection are separate. */
#mm-dash-main.vc2-campaign:has(.mm-plat),
#mm-dash-main.vc2-campaign:has(.mm-plat2) { background: #f4f5f6; }
.vc2-campaign .vc2-card:has(.mm-plat),
.vc2-campaign .vc2-card:has(.mm-plat2) {
  background: transparent;
  border: 0;
  box-shadow: none;
  padding: 0;
}
.mm-plat { color: #1c2333; }
.mm-plat-top {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  margin: 0 0 16px;
}
.mm-plat-crumb { display: none; }
.mm-plat-step {
  margin: 0 0 4px;
  color: #5c6570;
  font-size: 0.82rem;
  font-weight: 600;
  letter-spacing: 0;
  text-transform: none;
}
.mm-plat h1 { margin: 0 0 6px; font-size: 1.7rem; line-height: 1.2; color: #1c2333; }
.mm-plat-top p { margin: 0; max-width: 68ch; color: #3d4250; }
.mm-plat-layout { display: grid; grid-template-columns: minmax(0, 1fr) 260px; gap: 16px; align-items: start; }
.mm-plat-card, .mm-plat-side {
  background: #fff;
  border: 1px solid #e6e8ee;
  border-radius: 14px;
  padding: 16px 18px;
  margin: 0 0 16px;
}
.mm-plat-card h2, .mm-plat-side h2 { margin: 0 0 8px; font-size: 1rem; color: #1c2333; }
.mm-plat-card > p, .mm-plat-side p, .mm-plat-side li { color: #3d4250; }
.mm-plat-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px 18px; margin: 0; }
.mm-plat-facts div { min-width: 0; display: grid; grid-template-columns: 28px minmax(0, 1fr); gap: 8px; align-items: start; }
.mm-plat-facts svg { width: 18px; height: 18px; margin-top: 2px; color: #3F51B5; }
.mm-plat-facts dt { margin: 0; font-size: 0.75rem; font-weight: 700; color: #5c6570; text-transform: none; letter-spacing: 0; }
.mm-plat-facts dd { margin: 3px 0 0; color: #1c2333; font-weight: 600; }
.mm-plat-note { margin: 12px 0 0; color: #5c6570; font-size: 0.88rem; }
.mm-plat-table-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
  margin: 0 0 12px;
}
.mm-plat-table-head h2 { margin: 0 0 4px; }
.mm-plat-table-head p { margin: 0; color: #5c6570; font-size: 0.88rem; }
.vc2-campaign button.mm-plat-select {
  background: transparent;
  color: #3F51B5;
  border: 0;
  padding: 0;
  font-weight: 700;
  white-space: nowrap;
}
.mm-plat-cols, .mm-ev-cols {
  display: grid;
  grid-template-columns: minmax(180px, 1.2fr) minmax(190px, 0.9fr) minmax(180px, 1.1fr);
  gap: 10px 12px;
  padding: 0 0 8px;
  color: #5c6570;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}
.mm-ev-cols {
  grid-template-columns: minmax(140px, 1.15fr) minmax(150px, 0.8fr) minmax(150px, 1fr) minmax(180px, 1fr);
}
.mm-plat-row, .mm-ev-source {
  display: grid;
  grid-template-columns: minmax(180px, 1.2fr) minmax(190px, 0.9fr) minmax(180px, 1.1fr);
  gap: 10px 12px;
  align-items: start;
  padding: 12px 0;
  border-top: 1px solid #e6e8ee;
}
.mm-ev-source {
  grid-template-columns: minmax(140px, 1.15fr) minmax(150px, 0.8fr) minmax(150px, 1fr) minmax(180px, 1fr);
}
.mm-plat-who { display: grid; grid-template-columns: 28px minmax(0, 1fr); gap: 10px; align-items: start; }
.mm-plat-mark {
  width: 28px;
  height: 28px;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #f4f5f6;
  color: #3F51B5;
}
.mm-plat-mark svg { width: 16px; height: 16px; }
.mm-plat h3, .mm-ev-source h3 { margin: 0; font-size: 0.95rem; }
.mm-plat-hint { margin: 2px 0 0; color: #5c6570; font-size: 0.82rem; }
.mm-plat-use { border: 0; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.mm-sr {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.vc2-campaign .mm-plat label.mm-plat-choice {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin: 0;
  font-weight: 600;
  font-size: 0.88rem;
}
.vc2-campaign .mm-plat-choice input { accent-color: #3F51B5; width: auto; margin: 0; }
.vc2-campaign .mm-plat label.mm-plat-link-label,
.vc2-campaign .mm-plat label.mm-plat-note-label { display: block; margin: 0; font-weight: 500; }
.vc2-campaign .mm-plat-link {
  width: 100%;
  color: #1c2333;
  background: #fff;
}
.vc2-campaign .mm-plat-link::placeholder { color: #9aa3af; font-style: italic; opacity: 1; }
.mm-plat-empty { color: #9aa3af; font-style: italic; font-size: 0.88rem; }
.mm-plat-status { margin: 0 0 6px; font-weight: 700; color: #3d4250; }
.mm-plat-reason { margin: 6px 0 0; color: #5c6570; font-size: 0.82rem; }
.mm-ev-link { margin: 0; word-break: break-word; color: #1c2333; }
.mm-ev-metrics { display: grid; gap: 8px; margin-top: 12px; }
.mm-ev-metric { padding: 10px 12px; background: #f4f5f6; border-radius: 8px; }
.mm-ev-metric dt { margin: 0; font-size: 0.75rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.03em; color: #5c6570; }
.mm-ev-metric dd { margin: 2px 0; font-weight: 700; color: #3d4250; }
.mm-ev-metric p { margin: 0; color: #5c6570; font-size: 0.85rem; }
.mm-plat-actions { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin: 8px 0 0; padding: 8px 0 12px; }
.mm-plat-actions-end { display: flex; gap: 8px; }
.vc2-campaign a.mm-plat-back {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #303F9F;
  font-weight: 700;
  text-decoration: none;
}
.mm-plat-back svg, .mm-plat-next svg { width: 16px; height: 16px; }
.vc2-campaign button.mm-plat-draft {
  background: #fff;
  color: #303F9F;
  border: 1px solid #c5cbe8;
}
.vc2-campaign button.mm-plat-next {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: #3F51B5;
}
.vc2-campaign button.mm-plat-next:hover { background: #303F9F; }
.vc2-campaign button.mm-plat-connect {
  background: #fff;
  color: #303F9F;
  border: 1px solid #c5cbe8;
}
.vc2-campaign button.mm-plat-connect:disabled {
  background: #eef0f3;
  color: #5c6570;
  border: 1px solid #d7dbe3;
  cursor: not-allowed;
}
.mm-plat-saved { color: #303F9F; font-weight: 600; }
.mm-plat-rail .mm-plat-side ul, .mm-plat-rail .mm-plat-side ol { margin: 8px 0 0; padding: 0; list-style: none; }
.mm-plat-rail .mm-plat-side li { margin: 0 0 8px; }
.mm-plat-side-head { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.mm-plat-side-head h2 { margin: 0; }
.mm-plat-count { color: #5c6570; font-size: 0.78rem; font-weight: 700; }
.mm-plat-progress { margin: 8px 0 0; padding: 0; list-style: none; }
.mm-plat-progress a, .mm-ev-stages li {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr);
  gap: 8px;
  align-items: center;
  color: #3d4250;
  text-decoration: none;
  font-weight: 600;
  padding: 6px 8px;
  border-radius: 8px;
}
.mm-plat-progress a span, .mm-ev-stages li span {
  width: 20px;
  height: 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: #f4f5f6;
  color: #5c6570;
  font-weight: 700;
  font-size: 0.75rem;
}
.mm-plat-progress li[data-done="true"] a span { background: #e9ecfb; color: #3F51B5; }
.mm-plat-progress li[aria-current="step"] a { color: #3F51B5; background: #e9ecfb; }
.mm-plat-progress li[aria-current="step"] a span { background: #3F51B5; color: #fff; }
.mm-ev-stages small { display: block; width: 100%; color: #5c6570; font-weight: 500; }
.mm-plat-help { background: #e8f6ee; border-color: #cfe8d6; }
.mm-plat-help h2 { color: #1c2333; }
.mm-plat-help-link { display: inline-flex; align-items: center; gap: 4px; color: #2e7d4f; font-weight: 700; text-decoration: none; }
.mm-plat-link-help { margin: 6px 0 0; color: #5c6570; font-size: 0.78rem; }
.vc2-campaign .mm-plat textarea { width: 100%; min-height: 96px; }
.mm-ready-head { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin: 0 0 8px; }
.mm-ready-head h2 { margin: 0; }
.mm-ready-group {
  margin: 16px 0 0;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: #5c6570;
}
.mm-ready-list { margin: 0; padding: 0; list-style: none; }
.mm-ready-row {
  display: grid;
  grid-template-columns: 18px minmax(140px, 1.2fr) minmax(90px, 0.55fr) minmax(0, 1.4fr);
  gap: 8px 12px;
  align-items: start;
  padding: 10px 0;
  border-top: 1px solid #e6e8ee;
}
.mm-ready-row svg { width: 16px; height: 16px; margin-top: 2px; color: #5c6570; }
.mm-ready-row[data-state="Done"] svg,
.mm-ready-row[data-state="Complete"] svg { color: #303F9F; }
.mm-ready-row[data-state="Blocked"] svg { color: #8a1f11; }
.mm-ready-state { font-weight: 700; }
.mm-ready-row[data-state="Done"] .mm-ready-state,
.mm-ready-row[data-state="Complete"] .mm-ready-state { color: #303F9F; }
.mm-ready-row[data-state="Blocked"] .mm-ready-state { color: #8a1f11; }
.mm-ready-note { margin: 0; color: #5c6570; font-size: 0.88rem; }
.mm-ready-next { background: #e9ecfb; border-color: #d5dbf5; }
.vc2-campaign a.mm-plat-draft {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: #fff;
  color: #303F9F;
  border: 1px solid #c5cbe8;
  border-radius: 8px;
  padding: 8px 14px;
  font-weight: 650;
  text-decoration: none;
}
.vc2-campaign a.mm-plat-next {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: #3F51B5;
  color: #fff;
  border-radius: 8px;
  padding: 8px 14px;
  font-weight: 650;
  text-decoration: none;
}
.vc2-campaign a.mm-plat-next:hover { background: #303F9F; }
.mm-plat-stack { margin: 8px 0 0; padding: 0; list-style: none; display: grid; gap: 10px; }
.mm-plat-stack > li { padding: 10px 12px; background: #f4f5f6; border-radius: 8px; color: #3d4250; }
.mm-plat-stack > li b { color: #1c2333; }
.mm-plat [data-honest="true"] p { margin: 0 0 8px; }
.mm-plat [data-honest="true"] p:last-child { margin-bottom: 0; }
@media (max-width: 1100px) {
  .mm-plat-layout, .mm-plat-facts, .mm-plat-cols, .mm-ev-cols, .mm-plat-row, .mm-ev-source, .mm-ready-row { grid-template-columns: 1fr; }
  .mm-plat-who { grid-template-columns: 28px minmax(0, 1fr); }
}

.vc2-campaign .vc2-card:has(.mm-ready2-layout) { background: transparent; border: 0; box-shadow: none; padding: 0; }
html.mm-campaign-direct #mm-dash-main:has(.mm-ready2-layout) { background: #f4f5f6; }
.mm-ready2-layout { display: grid; grid-template-columns: minmax(0,1fr) 293px; gap: 20px; align-items: start; color: #1c2130; font-family: "Plus Jakarta Sans", "Segoe UI", sans-serif; }
.mm-ready2 { min-width: 0; }
.mm-ready2-crumb { display: flex; gap: 8px; align-items: center; color: #5c6b8a; font-size: 12px; margin: 0 0 14px; }
.mm-ready2-crumb strong { color: #1c2130; }
.mm-ready2-crumb .mm-ready2-ico { width: 12px; height: 12px; }
.mm-ready2-head { display: flex; justify-content: space-between; gap: 16px; align-items: flex-start; margin: 0 0 14px; }
.mm-ready2-head h1 { margin: 0 0 8px; font-size: 28px; line-height: 1.15; letter-spacing: -0.04em; color: #1c2130; }
.mm-ready2-head p { margin: 0; max-width: 640px; color: #5c6b8a; font-size: 13px; }
.mm-ready2-chip { display: inline-block; margin-left: 8px; background: #e9ecfb; color: #303F9F; border-radius: 999px; padding: 2px 8px; font-size: 12px; font-weight: 700; vertical-align: middle; }
.mm-ready2-head-actions, .mm-ready2-actions { display: flex; gap: 8px; }
.mm-ready2-actions { display: grid; }
.mm-ready2-btn, .mm-ready2-action { border: 1px solid #e4e7f2; background: #fff; color: #1c2130; border-radius: 8px; min-height: 34px; padding: 7px 12px; font-weight: 700; font-size: 12px; text-decoration: none; display: inline-flex; align-items: center; gap: 8px; }
.mm-ready2-primary { background: #3F51B5; border-color: #3F51B5; color: #fff; }
.mm-ready2-btn:disabled { opacity: 0.55; cursor: not-allowed; }
.mm-ready2-mini { min-height: 28px; padding: 4px 8px; font-size: 12px; }
.mm-ready2-panel, .mm-ready2-side { background: #fff; border: 1px solid #e6e9f2; border-radius: 12px; box-shadow: 0 8px 24px rgba(28, 33, 48, 0.04); margin: 0 0 12px; }
.mm-ready2-panel-h, .mm-ready2-side h2 { display: flex; align-items: center; gap: 10px; margin: 0; }
.mm-ready2-panel-h { padding: 14px 14px 8px; }
.mm-ready2-panel h2, .mm-ready2-side h2 { font-size: 15px; color: #1c2130; }
.mm-ready2-panel-h p, .mm-ready2-side p, .mm-ready2-side li { color: #5c6578; font-size: 12px; }
.mm-ready2-tile { width: 32px; height: 32px; border-radius: 9px; background: #e9ecfb; color: #3F51B5; display: grid; place-items: center; flex: 0 0 32px; }
.mm-ready2-ico { width: 16px; height: 16px; }
.mm-ready2-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.mm-ready2-stat { display: flex; gap: 10px; padding: 10px 14px 14px; min-width: 0; }
.mm-ready2-stat:not(:nth-child(3n)) { border-right: 1px solid #eef1f6; }
.mm-ready2-stat h3 { margin: 0 0 4px; font-size: 12px; }
.mm-ready2-stat p { margin: 0; color: #52607a; font-size: 12px; line-height: 1.45; }
.mm-ready2-toggle { width: 100%; border: 0; background: transparent; text-align: left; padding: 8px 12px; display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.mm-ready2-status[data-kind="research"] .mm-ready2-toggle { background: #f3fbf7; }
.mm-ready2-status[data-kind="sources"] .mm-ready2-toggle { background: #fff6f6; }
.mm-ready2-status[data-kind="plan"] .mm-ready2-toggle { background: #f4f6ff; }
.mm-ready2-count { font-size: 12px; font-weight: 800; border-radius: 8px; padding: 6px 10px; white-space: nowrap; }
.mm-ready2-count.danger { background: #ffe8ea; color: #b42318; }
.mm-ready2-count.neutral { background: #e9ecfb; color: #303F9F; }
.mm-ready2-status.is-closed .mm-ready2-body { display: none; }
.mm-ready2-table { width: 100%; border-collapse: collapse; }
.mm-ready2-table td { padding: 8px 10px; border-bottom: 1px solid #eef1f6; font-size: 12px; color: #52607a; vertical-align: middle; }
.mm-ready2-table td:first-child { color: #1c2130; font-weight: 700; width: 34%; }
.mm-ready2-state { display: inline-flex; gap: 6px; align-items: center; color: #1c2130; font-weight: 700; }
.mm-ready2-dot { width: 16px; height: 16px; border-radius: 50%; display: inline-grid; place-items: center; }
.mm-ready2-dot .mm-ready2-ico { width: 11px; height: 11px; }
.mm-ready2-dot.ok { background: #0eae7d; color: #fff; }
.mm-ready2-dot.blocked { background: #d92d20; color: #fff; }
.mm-ready2-dot.unknown { background: #eef1f6; color: #98a2b3; }
.mm-ready2-plan-bar { display: flex; align-items: center; gap: 8px; }
.mm-ready2-plan-bar .mm-ready2-toggle { flex: 1; }
.mm-ready2-plan-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px 16px; padding: 8px 14px 14px; }
.mm-ready2-plan { display: grid; grid-template-columns: 18px minmax(90px, 34%) 1fr; gap: 8px; align-items: start; }
.mm-ready2-plan strong { font-size: 12px; }
.mm-ready2-plan span { font-size: 12px; color: #52607a; }
.mm-ready2-side { padding: 14px; }
.mm-ready2-side h2 { margin-bottom: 10px; }
.mm-ready2-progress { display: flex; gap: 16px; align-items: center; }
.mm-ready2-donut { width: 112px; height: 112px; border-radius: 50%; background: #e7ebf5; display: grid; place-items: center; flex: 0 0 112px; }
.mm-ready2-donut div { width: 86px; height: 86px; border-radius: 50%; background: #fff; display: grid; place-items: center; text-align: center; }
.mm-ready2-donut b { font-size: 13px; }
.mm-ready2-donut small { color: #5c6b8a; font-size: 12px; }
.mm-ready2-legend { display: flex; gap: 8px; align-items: center; font-size: 12px; margin: 4px 0; }
.mm-ready2-legend i { width: 8px; height: 8px; border-radius: 50%; display: inline-block; }
.mm-ready2-legend i.ok { background: #0eae7d; }
.mm-ready2-legend i.bad { background: #d92d20; }
.mm-ready2-legend i.wait { background: #3F51B5; }
.mm-ready2-legend i.idle { background: #d5dbe8; }
.mm-ready2-action { width: 100%; justify-content: flex-start; }
.mm-ready2-action .mm-ready2-ico:last-child { margin-left: auto; }
.mm-ready2-side ul { margin: 0; padding-left: 16px; }
.mm-ready2-help { background: #f3fbf7; }
.mm-ready2-check { margin: 10px 0 0; }
@media (max-width: 1100px) {
  .mm-ready2-layout { grid-template-columns: 1fr; }
  .mm-ready2-stats, .mm-ready2-plan-grid { grid-template-columns: 1fr; }
  .mm-ready2-stat { border-right: 0 !important; }
}
.mm-plat-choices { display: grid; gap: 6px; margin-top: 8px; }
.mm-plat-choices .mm-plat-connect { justify-content: flex-start; }

.vc2-campaign .vc2-card:has(.mm-detail) { background: transparent; border: 0; box-shadow: none; padding: 0; }
html.mm-campaign-direct #mm-dash-main:has(.mm-detail) { background: #f4f5f6; }
.mm-detail { max-width: 1320px; margin: 0 auto; color: #1c2130; font-family: "Plus Jakarta Sans", "Segoe UI", sans-serif; }
.mm-detail-crumb { display: flex; gap: 8px; align-items: center; color: #5c6b8a; font-size: 12px; margin: 0 0 14px; }
.mm-detail-crumb strong { color: #1c2130; }
.mm-detail-crumb .mm-detail-ico { width: 12px; height: 12px; }
.mm-detail-head, .mm-detail-card-h, .mm-detail-footer { display: flex; justify-content: space-between; gap: 12px; align-items: flex-start; }
.mm-detail-head { margin: 0 0 14px; }
.mm-detail-head h1 { margin: 0 0 8px; font-size: 26px; letter-spacing: -0.04em; color: #1c2130; }
.mm-detail-head p, .mm-detail-card-h p { margin: 2px 0 0; color: #5c6b8a; font-size: 13px; max-width: 760px; }
.mm-detail-actions, .mm-detail-title { display: flex; gap: 8px; align-items: center; }
.mm-detail-btn { border: 1px solid #e4e7f2; background: #fff; color: #1c2130; border-radius: 8px; min-height: 34px; padding: 7px 12px; font-weight: 700; font-size: 12px; text-decoration: none; display: inline-flex; align-items: center; gap: 6px; }
.mm-detail-primary { background: #3F51B5; border-color: #3F51B5; color: #fff; }
.mm-detail-btn:disabled { opacity: 0.55; cursor: not-allowed; }
.mm-detail-mini { min-height: 28px; padding: 4px 8px; }
.mm-detail-card { background: #fff; border: 1px solid #e6e9f2; border-radius: 12px; box-shadow: 0 4px 15px rgba(28, 33, 48, 0.04); margin: 0 0 12px; }
.mm-detail-card h2, .mm-detail-card h3 { margin: 0; font-size: 15px; color: #1c2130; }
.mm-detail-card-h { padding: 12px 14px 8px; }
.mm-detail-tile { width: 36px; height: 36px; border-radius: 9px; background: #e9ecfb; color: #3F51B5; display: grid; place-items: center; flex: 0 0 36px; }
.mm-detail-ico { width: 16px; height: 16px; }
.mm-detail-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.mm-detail-stat { display: flex; gap: 10px; padding: 10px 14px 14px; min-width: 0; }
.mm-detail-stat:not(:nth-child(3n)) { border-right: 1px solid #eef1f6; }
.mm-detail-stat h3 { margin: 0 0 4px; font-size: 12px; }
.mm-detail-stat p { margin: 0; color: #52607a; font-size: 12px; line-height: 1.45; }
.mm-detail-brief { margin: 0 12px 12px; padding: 12px 14px; background: #e9ecfb; border-radius: 8px; color: #303F9F; font-size: 13px; line-height: 1.7; }
.mm-detail-brief p { margin: 0; }
.mm-detail-brief b { color: #1c2130; }
.mm-detail-toggle { width: 100%; border: 0; background: #fff; text-align: left; padding: 8px 12px; display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.mm-detail-fold[data-kind="research"] .mm-detail-toggle { background: #f3fbf7; }
.mm-detail-fold[data-kind="sources"] .mm-detail-toggle { background: #fff6f6; }
.mm-detail-fold[data-kind="plan"] .mm-detail-toggle { background: #f4f6ff; }
.mm-detail-fold.is-closed .mm-detail-body { display: none; }
.mm-detail-table { width: 100%; border-collapse: collapse; }
.mm-detail-table td { padding: 8px 10px; border-bottom: 1px solid #eef1f6; font-size: 12px; color: #52607a; vertical-align: middle; }
.mm-detail-name { color: #1c2130; font-weight: 700; width: 28%; }
.mm-detail-tag { display: inline-flex; align-items: center; gap: 4px; border-radius: 6px; padding: 4px 8px; font-size: 12px; font-weight: 700; white-space: nowrap; }
.mm-detail-tag .mm-detail-ico { width: 12px; height: 12px; }
.mm-detail-tag.ok { background: #e5f8ef; color: #0d7a45; }
.mm-detail-tag.bad { background: #ffe8ea; color: #b42318; }
.mm-detail-tag.warn { background: #fff4e4; color: #9a6700; }
.mm-detail-tag.idle { background: #e9ecfb; color: #303F9F; }
.mm-detail-more, .mm-detail-plan-btn { border: 0; background: transparent; color: #3F51B5; padding: 0; }
.mm-detail-extra td { padding: 0 10px 8px; border: 0; }
.mm-detail-extra div { background: #e9ecfb; border-radius: 8px; padding: 10px 12px; color: #303F9F; }
.mm-detail-extra strong, .mm-detail-plan-extra b { color: #1c2130; }
.mm-detail-plans { padding: 4px 8px 12px; }
.mm-detail-plan { display: grid; grid-template-columns: 24px minmax(120px, 24%) minmax(0, 1fr) 22px; gap: 10px; align-items: center; padding: 11px 8px; border-bottom: 1px solid #eef1f6; }
.mm-detail-plan strong { font-size: 12px; }
.mm-detail-ellipsis { color: #52607a; font-size: 12px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mm-detail-plan-extra { margin: 0 8px 8px 34px; padding: 12px 14px; background: #f4f6ff; border: 1px solid #e6e9f2; border-radius: 8px; color: #52607a; font-size: 12px; line-height: 1.6; }
.mm-detail-notes { padding: 0 14px 12px; }
.mm-detail-note { background: #f6f7fb; border: 1px solid #e6e9f2; border-radius: 8px; padding: 10px 12px; margin-bottom: 8px; color: #52607a; }
.mm-detail-footer { align-items: center; padding: 12px; border: 1px solid #e6e9f2; background: #fff; border-radius: 10px; margin-bottom: 8px; }
.mm-detail-footer span, .mm-detail-privacy { color: #5c6b8a; font-size: 12px; }
.mm-detail-privacy { margin: 0 4px 16px; }
.mm-detail-empty { margin: 0; padding: 8px 14px 14px; color: #5c6b8a; }
@media (max-width: 800px) {
  .mm-detail-stats { grid-template-columns: 1fr; }
  .mm-detail-stat { border-right: 0 !important; }
  .mm-detail-head, .mm-detail-footer { display: block; }
  .mm-detail-actions { margin-top: 10px; }
  .mm-detail-plan { grid-template-columns: 20px minmax(0, 1fr) 18px; }
  .mm-detail-ellipsis { display: none; }
}

/* mm-readiness-exact-scope: mock readiness document, cannot match outside this column. */
#mm-dash-main.vc2-campaign:has(.mm-readiness-exact) {
  padding: 0;
  background: #f7f9fd;
}
#mm-dash-main.vc2-campaign .vc2-card:has(.mm-readiness-exact) {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  padding: 0;
  margin: 0;
}
#mm-dash-main .mm-readiness-exact {
  width: 100%;
  overflow: visible;
}
#mm-dash-main .mm-readiness-exact .workspace {
  overflow: visible;
  height: auto;
  min-height: 0;
}
#mm-dash-main .mm-readiness-exact{--ink:#0d1741;--ink2:#1c2b55;--muted:#71809e;--soft:#f7f9fd;--line:#e5eaf5;--line2:#eef1f8;--blue:#315cf5;--blue2:#496dff;--purple:#7054fb;--green:#09a875;--red:#eb4256;--amber:#eaa020;--card:#fff;--shadow:0 9px 26px rgba(36,57,110,.035);--radius:12px}
#mm-dash-main .mm-readiness-exact, #mm-dash-main .mm-readiness-exact *, #mm-dash-main .mm-readiness-exact *:before, #mm-dash-main .mm-readiness-exact *:after{box-sizing:border-box}
#mm-dash-main .mm-readiness-exact{scroll-behavior:smooth}
#mm-dash-main .mm-readiness-exact{margin:0;background:#f8faff;color:var(--ink);font-family:'Plus Jakarta Sans','Segoe UI',Arial,sans-serif;font-size:12px;font-weight:500;line-height:1.52}
#mm-dash-main .mm-readiness-exact button, #mm-dash-main .mm-readiness-exact input, #mm-dash-main .mm-readiness-exact textarea{font:inherit}
#mm-dash-main .mm-readiness-exact button{cursor:pointer}
#mm-dash-main .mm-readiness-exact button:disabled{opacity:.52;cursor:not-allowed}
#mm-dash-main .mm-readiness-exact a{text-decoration:none;color:inherit}
#mm-dash-main .mm-readiness-exact svg{display:block}
#mm-dash-main .mm-readiness-exact .ico{width:17px;height:17px;flex:0 0 17px;stroke:currentColor;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round}
#mm-dash-main .mm-readiness-exact .muted{color:var(--muted)}
#mm-dash-main .mm-readiness-exact .blue{color:var(--blue)}
#mm-dash-main .mm-readiness-exact .green{color:var(--green)}
#mm-dash-main .mm-readiness-exact .red{color:var(--red)}
#mm-dash-main .mm-readiness-exact .amber{color:var(--amber)}
#mm-dash-main .mm-readiness-exact .nowrap{white-space:nowrap}
#mm-dash-main .mm-readiness-exact .topbar{height:54px;background:#fff;border-bottom:1px solid #e9edf6;display:flex;align-items:center;gap:19px;padding:0 25px;position:sticky;top:0;z-index:20}
#mm-dash-main .mm-readiness-exact .brand{display:flex;align-items:center;gap:9px;min-width:206px;color:#121936;font-weight:800;font-size:15px;letter-spacing:-.7px}
#mm-dash-main .mm-readiness-exact .brand-mark{color:#eb1596;font-size:27px;font-weight:800;line-height:1;transform:translateY(-2px)}
#mm-dash-main .mm-readiness-exact .global-search{margin-left:4px;width:min(510px,37vw);background:#f3f6fc;display:flex;align-items:center;gap:9px;padding:9px 14px;color:#7f8da8;border-radius:7px}
#mm-dash-main .mm-readiness-exact .global-search input{border:0;background:transparent;outline:0;flex:1;min-width:0;color:#14214a}
#mm-dash-main .mm-readiness-exact .global-search kbd{border-radius:5px;background:#e5eaf5;color:#7382a1;padding:1px 5px;font-size:12px}
#mm-dash-main .mm-readiness-exact .top-actions{margin-left:auto;display:flex;align-items:center;gap:19px;color:#334268;white-space:nowrap}
#mm-dash-main .mm-readiness-exact .top-act{display:flex;align-items:center;gap:6px;font-size:12px}
#mm-dash-main .mm-readiness-exact .top-act .ico{width:15px;height:15px}
#mm-dash-main .mm-readiness-exact .wallet-pill{font-size:12px;background:#ffce26;color:#60400a;border-radius:14px;padding:2px 8px;font-weight:800}
#mm-dash-main .mm-readiness-exact .bell{position:relative}
#mm-dash-main .mm-readiness-exact .bell .count{position:absolute;right:-6px;top:-9px;background:#e6426e;border:2px solid #fff;color:#fff;font-size:12px;font-weight:800;border-radius:100px;min-width:16px;text-align:center}
#mm-dash-main .mm-readiness-exact .account{display:flex;align-items:center;gap:8px;font-size:12px}
#mm-dash-main .mm-readiness-exact .avatar{background:#8054d8;color:#fff;border-radius:50%;width:30px;height:30px;display:grid;place-items:center;font-size:12px;font-weight:800}
#mm-dash-main .mm-readiness-exact .account small{display:block;color:#8e98ae;font-size:12px}
#mm-dash-main .mm-readiness-exact .mobile-open{display:none;background:#fff;border:1px solid var(--line);border-radius:8px;padding:7px}
#mm-dash-main .mm-readiness-exact .shell{display:grid;grid-template-columns:195px 199px minmax(560px,1fr);min-height:calc(100vh - 54px)}
#mm-dash-main .mm-readiness-exact .left-nav, #mm-dash-main .mm-readiness-exact .step-nav{background:#fff;border-right:1px solid #e7eaf2}
#mm-dash-main .mm-readiness-exact .left-nav{padding:16px 9px;display:flex;flex-direction:column;gap:4px}
#mm-dash-main .mm-readiness-exact .side-section{margin:0 12px 12px;color:#8190ab;font-weight:800;font-size:12px;letter-spacing:.055em}
#mm-dash-main .mm-readiness-exact .side-section.spaced{margin-top:16px}
#mm-dash-main .mm-readiness-exact .nav-item{height:35px;display:flex;align-items:center;gap:12px;border-radius:6px;padding:0 13px;color:#60708f;font-size:12px;border-left:3px solid transparent}
#mm-dash-main .mm-readiness-exact .nav-item:hover, #mm-dash-main .mm-readiness-exact .nav-item:focus-visible{background:#f5f7ff;color:#365bd9}
#mm-dash-main .mm-readiness-exact .nav-item.active{background:linear-gradient(90deg,#f0ecff,#f7f4ff);color:#4b38e2;border-left-color:#7256ff;font-weight:750}
#mm-dash-main .mm-readiness-exact .nav-item .ico{width:15px;height:15px}
#mm-dash-main .mm-readiness-exact .more{margin-top:10px;border-radius:7px;border:1px solid #e2e8f4;background:#fff;height:35px;color:#243a74;font-weight:700}
#mm-dash-main .mm-readiness-exact .extra-items{display:none}
#mm-dash-main .mm-readiness-exact .extra-items.open{display:block}
#mm-dash-main .mm-readiness-exact .nav-footer{margin-top:auto;padding-top:20px}
#mm-dash-main .mm-readiness-exact .step-nav{padding:18px 11px;position:relative}
#mm-dash-main .mm-readiness-exact .step-head{padding:1px 8px 20px;display:flex;justify-content:space-between;align-items:start}
#mm-dash-main .mm-readiness-exact .step-head strong{font-size:12px;font-weight:850;letter-spacing:.06em}
#mm-dash-main .mm-readiness-exact .step-head small{display:block;margin-top:4px;color:#7080a0;font-size:12px}
#mm-dash-main .mm-readiness-exact .arrow-mini{border:0;background:transparent;color:#4665b2;padding:1px}
#mm-dash-main .mm-readiness-exact .step-timeline{position:relative}
#mm-dash-main .mm-readiness-exact .step-timeline:before{content:"";position:absolute;left:29px;top:18px;bottom:33px;width:1px;background:#dde5f4}
#mm-dash-main .mm-readiness-exact .step{display:flex;align-items:center;gap:11px;min-height:58px;padding:6px 11px;position:relative;border-radius:8px;color:#0e1d4b}
#mm-dash-main .mm-readiness-exact .step:hover{background:#f9faff}
#mm-dash-main .mm-readiness-exact .step.active{background:#f0f3ff}
#mm-dash-main .mm-readiness-exact .step.active:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:#4d58ed;border-radius:6px}
#mm-dash-main .mm-readiness-exact .step-num{width:31px;height:31px;background:#fff;border:1.5px solid #d7e1f5;border-radius:50%;display:grid;place-items:center;flex:0 0 31px;color:#152249;font-size:13px;font-weight:850;box-shadow:0 0 0 3px #fff;z-index:1}
#mm-dash-main .mm-readiness-exact .step.active .step-num{border-color:#4867f5;color:#315bfa}
#mm-dash-main .mm-readiness-exact .step strong{font-size:12px;display:block;line-height:1.4}
#mm-dash-main .mm-readiness-exact .step small{font-size:12px;display:block;color:#8794ae;line-height:1.55}
#mm-dash-main .mm-readiness-exact .step.active strong, #mm-dash-main .mm-readiness-exact .step.active small{color:#354bca}
#mm-dash-main .mm-readiness-exact .workspace{padding:15px 15px 36px 19px;min-width:0}
#mm-dash-main .mm-readiness-exact .content-layout{display:grid;grid-template-columns:minmax(0,1fr) 293px;gap:20px;align-items:start;max-width:1500px;margin:auto}
#mm-dash-main .mm-readiness-exact .main-col{min-width:0}
#mm-dash-main .mm-readiness-exact .breadcrumb{display:flex;gap:10px;align-items:center;color:#7484a4;font-size:12px;margin:0 0 14px;padding-top:1px}
#mm-dash-main .mm-readiness-exact .breadcrumb strong{color:#1a2c5e}
#mm-dash-main .mm-readiness-exact .page-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:0 0 14px}
#mm-dash-main .mm-readiness-exact .page-heading h1{font-size:25px;line-height:1.2;letter-spacing:-1.4px;margin:0 0 7px;font-weight:850;color:#0e1742}
#mm-dash-main .mm-readiness-exact .page-heading p{font-size:12px;color:#70809e;max-width:640px;margin:0}
#mm-dash-main .mm-readiness-exact .heading-actions{display:flex;gap:8px;align-items:center;flex-shrink:0}
#mm-dash-main .mm-readiness-exact .chip{background:#e4f1ff;color:#2672d8;display:inline-block;vertical-align:middle;font-size:12px;font-weight:750;padding:3px 9px;border-radius:30px;margin-left:8px;letter-spacing:0}
#mm-dash-main .mm-readiness-exact .btn{border:1px solid #e0e6f2;background:#fff;min-height:34px;display:inline-flex;align-items:center;gap:7px;justify-content:center;padding:7px 13px;border-radius:7px;color:#1a2b5c;font-size:12px;font-weight:800;box-shadow:0 2px 4px rgba(28,51,101,.015)}
#mm-dash-main .mm-readiness-exact .btn:hover{border-color:#b9c8f5;background:#f8faff}
#mm-dash-main .mm-readiness-exact .btn-primary{background:#345bf2;border-color:#345bf2;color:#fff;box-shadow:0 4px 11px rgba(44,86,230,.14)}
#mm-dash-main .mm-readiness-exact .btn-primary:hover{background:#244bd8;color:#fff}
#mm-dash-main .mm-readiness-exact .btn .ico{width:14px;height:14px}
#mm-dash-main .mm-readiness-exact .btn-ghost{border:0;background:transparent;box-shadow:none}
#mm-dash-main .mm-readiness-exact .btn.small{padding:5px 10px;min-height:29px;font-size:12px}
#mm-dash-main .mm-readiness-exact .panel{background:var(--card);border:1px solid #eaf0f8;box-shadow:var(--shadow);border-radius:var(--radius);margin-bottom:12px;overflow:hidden}
#mm-dash-main .mm-readiness-exact .panel-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 20px 12px;margin-bottom:12px}
#mm-dash-main .mm-readiness-exact .panel-title{display:flex;align-items:center;gap:10px}
#mm-dash-main .mm-readiness-exact .panel-title h2{font-size:14px;letter-spacing:-.2px;font-weight:850;margin:0;color:#111b43}
#mm-dash-main .mm-readiness-exact .panel-title p{margin:2px 0 0;color:#7988a8;font-size:12px}
#mm-dash-main .mm-readiness-exact .icon-tile{width:33px;height:33px;border-radius:9px;background:#ebf1ff;color:#315eff;display:grid;place-items:center;flex:0 0 33px}
#mm-dash-main .mm-readiness-exact .icon-tile .ico{width:18px;height:18px}
#mm-dash-main .mm-readiness-exact .overview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;padding:7px 10px 12px}
#mm-dash-main .mm-readiness-exact .overview-stat{padding:8px 12px;display:flex;gap:11px;align-items:flex-start;min-height:71px;min-width:0}
#mm-dash-main .mm-readiness-exact .overview-stat:not(:nth-child(3n)){border-right:1px solid #eef1f8}
#mm-dash-main .mm-readiness-exact .overview-stat .icon-tile{width:32px;height:32px;flex-basis:32px}
#mm-dash-main .mm-readiness-exact .overview-stat h3{font-size:12px;margin:0 0 5px;font-weight:800;line-height:1.4}
#mm-dash-main .mm-readiness-exact .overview-stat p{font-size:12px;margin:0;color:#536689;line-height:1.52}
#mm-dash-main .mm-readiness-exact .status-section .panel-heading{padding:0}
#mm-dash-main .mm-readiness-exact .status-toggle{width:100%;text-align:left;border:0;background:#fff;padding:9px 13px 0;display:flex;align-items:center;justify-content:space-between;gap:10px}
#mm-dash-main .mm-readiness-exact .status-toggle .panel-title{padding:6px 0}
#mm-dash-main .mm-readiness-exact .status-section[data-kind=research] .status-toggle{background:linear-gradient(90deg,#edfdf7,#f6fffb)}
#mm-dash-main .mm-readiness-exact .status-section[data-kind=sources] .status-toggle{background:linear-gradient(90deg,#fff1f2,#fff9f9)}
#mm-dash-main .mm-readiness-exact .status-section[data-kind=plan] .status-toggle{background:linear-gradient(90deg,#f0f5ff,#fcfdff)}
#mm-dash-main .mm-readiness-exact .status-section .icon-tile{border-radius:50%;width:33px;height:33px;background:#0cac78;color:#fff}
#mm-dash-main .mm-readiness-exact .status-section[data-kind=sources] .icon-tile{background:#f7465b}
#mm-dash-main .mm-readiness-exact .status-section[data-kind=plan] .icon-tile{background:#eaf0ff;color:#3464fc}
#mm-dash-main .mm-readiness-exact .status-group{display:flex;align-items:center;gap:10px}
#mm-dash-main .mm-readiness-exact .counter{font-size:12px;font-weight:800;padding:6px 11px;border-radius:7px;white-space:nowrap}
#mm-dash-main .mm-readiness-exact .counter.success{background:#d5f9e9;color:#008a61}
#mm-dash-main .mm-readiness-exact .counter.danger{background:#ffe5e8;color:#e73148}
#mm-dash-main .mm-readiness-exact .counter.neutral{background:#eaf0ff;color:#3655bf}
#mm-dash-main .mm-readiness-exact .chevron{width:15px;height:15px;transition:transform .22s}
#mm-dash-main .mm-readiness-exact .status-section.collapsed .chevron{transform:rotate(-90deg)}
#mm-dash-main .mm-readiness-exact .status-content{padding:3px 13px 11px}
#mm-dash-main .mm-readiness-exact .status-section.collapsed .status-content{display:none}
#mm-dash-main .mm-readiness-exact .detail-table{width:100%;border-collapse:collapse;table-layout:fixed}
#mm-dash-main .mm-readiness-exact .detail-table td{padding:7px 9px;border-bottom:1px solid #edf1f8;font-size:12px;color:#60718f;vertical-align:middle}
#mm-dash-main .mm-readiness-exact .detail-table tr:last-child td{border-bottom:0}
#mm-dash-main .mm-readiness-exact .detail-table td:first-child{font-weight:750;color:#13214d;width:32%}
#mm-dash-main .mm-readiness-exact .detail-table td:nth-child(2){width:16%}
#mm-dash-main .mm-readiness-exact .detail-table td:nth-child(3){width:45%;color:#647597}
#mm-dash-main .mm-readiness-exact .detail-table td:last-child{width:7%;text-align:right}
#mm-dash-main .mm-readiness-exact .status-label{display:inline-flex;gap:6px;align-items:center;white-space:nowrap;color:#526487}
#mm-dash-main .mm-readiness-exact .status-dot{width:13px;height:13px;border-radius:50%;display:inline-grid;place-items:center;font-size:12px;font-weight:800;flex:none}
#mm-dash-main .mm-readiness-exact .status-dot.ok{background:#0eae7d;color:#fff}
#mm-dash-main .mm-readiness-exact .status-dot.blocked{background:#fa455d;color:#fff}
#mm-dash-main .mm-readiness-exact .status-dot.unknown{background:#eef1f7;color:#9caac1}
#mm-dash-main .mm-readiness-exact .row-more{border:0;color:#3652a6;background:transparent;min-width:21px;height:19px;font-size:18px;line-height:1}
#mm-dash-main .mm-readiness-exact .row-more:hover{background:#f4f6ff;border-radius:5px}
#mm-dash-main .mm-readiness-exact .plan-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px 15px;padding:4px 14px 14px}
#mm-dash-main .mm-readiness-exact .plan-line{display:grid;grid-template-columns:18px minmax(80px,38%) 1fr;gap:7px;padding:3px 1px;align-items:start}
#mm-dash-main .mm-readiness-exact .plan-line .ico{width:14px;height:14px;color:#657dab}
#mm-dash-main .mm-readiness-exact .plan-line strong{color:#1b2955;font-size:12px;font-weight:800}
#mm-dash-main .mm-readiness-exact .plan-line span{font-size:12px;color:#617492}
#mm-dash-main .mm-readiness-exact .right-rail{min-width:0}
#mm-dash-main .mm-readiness-exact .right-panel{background:#fff;border:1px solid #eaf0f8;border-radius:11px;box-shadow:var(--shadow);padding:16px 15px;margin-bottom:13px}
#mm-dash-main .mm-readiness-exact .right-panel h2{font-size:13px;margin:0 0 11px;font-weight:850;display:flex;align-items:center;gap:10px}
#mm-dash-main .mm-readiness-exact .right-panel .icon-tile{border-radius:50%;width:30px;height:30px;flex-basis:30px}
#mm-dash-main .mm-readiness-exact .progress-content{display:flex;align-items:center;gap:21px}
#mm-dash-main .mm-readiness-exact .donut{height:116px;width:116px;position:relative;flex:none;border-radius:50%;background:conic-gradient(#e0e7f5 0 100%);display:grid;place-items:center}
#mm-dash-main .mm-readiness-exact .donut:before{content:"";position:absolute;inset:11px;border-radius:50%;background:#fff}
#mm-dash-main .mm-readiness-exact .donut .middle{position:relative;text-align:center}
#mm-dash-main .mm-readiness-exact .donut .middle b{font-size:23px;letter-spacing:-1.5px;font-weight:850;display:block;line-height:1.3}
#mm-dash-main .mm-readiness-exact .donut .middle small{font-size:12px;color:#7585a4}
#mm-dash-main .mm-readiness-exact .legend{display:grid;gap:8px}
#mm-dash-main .mm-readiness-exact .legend-row{font-size:12px;display:flex;gap:9px;align-items:center;color:#637493}
#mm-dash-main .mm-readiness-exact .legend-row .ball{height:10px;width:10px;border-radius:50%}
#mm-dash-main .mm-readiness-exact .legend-row b{font-weight:700}
#mm-dash-main .mm-readiness-exact .action-stack{display:grid;gap:8px}
#mm-dash-main .mm-readiness-exact .action-row{border:1px solid #e4e9f5;border-radius:7px;background:#fff;display:flex;align-items:center;gap:10px;width:100%;padding:9px 11px;text-align:left;font-size:12px;color:#22386a;font-weight:700}
#mm-dash-main .mm-readiness-exact .action-row:hover{background:#f8faff;border-color:#b7c9ff}
#mm-dash-main .mm-readiness-exact .action-row .ico{width:14px;height:14px;color:#3264f7}
#mm-dash-main .mm-readiness-exact .action-row .chevron-right{margin-left:auto}
#mm-dash-main .mm-readiness-exact .notes ul{margin:0;padding-left:15px}
#mm-dash-main .mm-readiness-exact .notes li{padding:3px 0;color:#576b8e;font-size:12px;line-height:1.6}
#mm-dash-main .mm-readiness-exact .help-panel{background:linear-gradient(120deg,#e9f9ef,#f6fcf9);border-color:#e3f5eb}
#mm-dash-main .mm-readiness-exact .help-panel h2 .icon-tile{color:#10a85d;background:#d7f5e1}
#mm-dash-main .mm-readiness-exact .help-panel p{color:#627592;font-size:12px;line-height:1.6;margin:0 0 11px 40px}
#mm-dash-main .mm-readiness-exact .help-panel .btn{margin-left:40px}
#mm-dash-main .mm-readiness-exact .status-toast{position:fixed;right:25px;bottom:25px;background:#132348;color:#fff;padding:12px 17px;border-radius:10px;box-shadow:0 16px 40px #13234830;z-index:60;max-width:390px;opacity:0;transform:translateY(15px);pointer-events:none;transition:.22s}
#mm-dash-main .mm-readiness-exact .status-toast.show{opacity:1;transform:translateY(0)}
#mm-dash-main .mm-readiness-exact .overlay{display:none;position:fixed;inset:0;background:rgba(20,28,63,.42);z-index:50;align-items:center;justify-content:center;padding:20px}
#mm-dash-main .mm-readiness-exact .overlay.open{display:flex}
#mm-dash-main .mm-readiness-exact .dialog{width:min(480px,100%);background:#fff;border-radius:16px;padding:22px;box-shadow:0 24px 80px #11224a40}
#mm-dash-main .mm-readiness-exact .dialog-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:13px}
#mm-dash-main .mm-readiness-exact .dialog h2{margin:0;font-size:19px}
#mm-dash-main .mm-readiness-exact .dialog p{color:var(--muted);margin:0 0 16px}
#mm-dash-main .mm-readiness-exact .close{border:0;background:#f3f5fb;width:30px;height:30px;border-radius:8px;font-size:19px;color:#46577a}
#mm-dash-main .mm-readiness-exact .field{display:block;margin-bottom:11px;font-weight:750;color:#27365d}
#mm-dash-main .mm-readiness-exact .field input, #mm-dash-main .mm-readiness-exact .field textarea{display:block;margin-top:5px;width:100%;padding:10px 12px;border:1px solid #dce5f2;border-radius:8px;outline:none;color:#132049}
#mm-dash-main .mm-readiness-exact .field input:focus, #mm-dash-main .mm-readiness-exact .field textarea:focus{border-color:#4a74fc;box-shadow:0 0 0 3px #3c65ff1a}
#mm-dash-main .mm-readiness-exact .field textarea{resize:vertical;min-height:90px}
#mm-dash-main .mm-readiness-exact .dialog-foot{display:flex;gap:9px;justify-content:flex-end;margin-top:16px}
#mm-dash-main .mm-readiness-exact .expanded-note{background:#f5f8ff;padding:10px 12px;border-radius:7px;color:#647496;border:1px solid #e8edfb}
#mm-dash-main .mm-readiness-exact .more-menu{position:relative}
#mm-dash-main .mm-readiness-exact .popover{position:absolute;top:calc(100% + 4px);right:0;background:#fff;border:1px solid #e3e9f5;box-shadow:0 10px 28px #15234d15;border-radius:8px;padding:5px;min-width:150px;z-index:10;display:none}
#mm-dash-main .mm-readiness-exact .more-menu.open .popover{display:block}
#mm-dash-main .mm-readiness-exact .popover button{width:100%;background:transparent;border:0;text-align:left;padding:8px;color:#273763;border-radius:5px}
#mm-dash-main .mm-readiness-exact .popover button:hover{background:#eff4ff}
@media (min-width:1700px){#mm-dash-main .mm-readiness-exact .shell{grid-template-columns:210px 210px minmax(700px,1fr)}
#mm-dash-main .mm-readiness-exact .workspace{padding:20px 30px}
#mm-dash-main .mm-readiness-exact .content-layout{grid-template-columns:minmax(0,1fr) 310px}
}
@media (max-width:1270px){#mm-dash-main .mm-readiness-exact .top-actions{gap:10px}
#mm-dash-main .mm-readiness-exact .global-search{width:min(390px,27vw)}
#mm-dash-main .mm-readiness-exact .shell{grid-template-columns:165px 170px minmax(520px,1fr)}
#mm-dash-main .mm-readiness-exact .workspace{padding:14px 12px}
#mm-dash-main .mm-readiness-exact .content-layout{gap:12px;grid-template-columns:minmax(0,1fr) 245px}
#mm-dash-main .mm-readiness-exact .right-panel{padding:12px}
#mm-dash-main .mm-readiness-exact .donut{height:94px;width:94px}
#mm-dash-main .mm-readiness-exact .donut:before{inset:9px}
#mm-dash-main .mm-readiness-exact .progress-content{gap:9px}
#mm-dash-main .mm-readiness-exact .overview-stat{padding:7px 5px}
#mm-dash-main .mm-readiness-exact .overview-grid{padding-left:5px;padding-right:5px}
#mm-dash-main .mm-readiness-exact .top-act span.tlabel{display:none}
#mm-dash-main .mm-readiness-exact .brand{min-width:185px}
#mm-dash-main .mm-readiness-exact .page-heading h1{font-size:23px}
}
@media (max-width:1050px){#mm-dash-main .mm-readiness-exact .shell{grid-template-columns:160px minmax(0,1fr)}
#mm-dash-main .mm-readiness-exact .step-nav{display:none}
#mm-dash-main .mm-readiness-exact .content-layout{grid-template-columns:minmax(0,1fr) 235px}
#mm-dash-main .mm-readiness-exact .top-actions .text-only{display:none}
#mm-dash-main .mm-readiness-exact .brand{min-width:150px}
}
@media (max-width:780px){#mm-dash-main .mm-readiness-exact .topbar{height:58px;padding:0 14px;gap:9px}
#mm-dash-main .mm-readiness-exact .mobile-open{display:block}
#mm-dash-main .mm-readiness-exact .brand{min-width:0;font-size:13px}
#mm-dash-main .mm-readiness-exact .global-search{margin-left:auto;width:auto;padding:7px;background:transparent}
#mm-dash-main .mm-readiness-exact .global-search input, #mm-dash-main .mm-readiness-exact .global-search kbd{display:none}
#mm-dash-main .mm-readiness-exact .top-actions{margin-left:0;gap:10px}
#mm-dash-main .mm-readiness-exact .top-actions .top-act:not(.bell), #mm-dash-main .mm-readiness-exact .top-actions .account div:not(.avatar){display:none}
#mm-dash-main .mm-readiness-exact .shell{grid-template-columns:minmax(0,1fr);min-height:calc(100vh - 58px)}
#mm-dash-main .mm-readiness-exact .left-nav{position:fixed;top:58px;bottom:0;left:0;width:245px;transform:translateX(-110%);transition:transform .2s;z-index:21;box-shadow:8px 0 25px #07152a16;overflow-y:auto}
#mm-dash-main .mm-readiness-exact .left-nav.show{transform:translateX(0)}
#mm-dash-main .mm-readiness-exact .workspace{padding:18px 13px 26px}
#mm-dash-main .mm-readiness-exact .content-layout{display:block}
#mm-dash-main .mm-readiness-exact .right-rail{display:grid;grid-template-columns:1fr 1fr;gap:10px}
#mm-dash-main .mm-readiness-exact .right-panel{margin:0}
#mm-dash-main .mm-readiness-exact .progress-content{justify-content:space-between}
#mm-dash-main .mm-readiness-exact .page-heading{align-items:flex-start}
#mm-dash-main .mm-readiness-exact .heading-actions{gap:5px}
#mm-dash-main .mm-readiness-exact .page-heading h1{font-size:22px}
}
@media (max-width:600px){#mm-dash-main .mm-readiness-exact .right-rail{display:block}
#mm-dash-main .mm-readiness-exact .right-panel{margin-bottom:12px}
#mm-dash-main .mm-readiness-exact .overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
#mm-dash-main .mm-readiness-exact .overview-stat:not(:nth-child(3n)){border-right:0}
#mm-dash-main .mm-readiness-exact .overview-stat:nth-child(odd){border-right:1px solid #eef1f8}
#mm-dash-main .mm-readiness-exact .page-heading{display:block}
#mm-dash-main .mm-readiness-exact .heading-actions{margin-top:12px}
#mm-dash-main .mm-readiness-exact .detail-table td{font-size:12px;padding:7px 4px}
#mm-dash-main .mm-readiness-exact .detail-table td:first-child{width:37%}
#mm-dash-main .mm-readiness-exact .detail-table td:nth-child(2){width:22%}
#mm-dash-main .mm-readiness-exact .detail-table td:nth-child(3){width:36%}
#mm-dash-main .mm-readiness-exact .detail-table td:last-child{width:5%}
#mm-dash-main .mm-readiness-exact .plan-grid{grid-template-columns:1fr}
#mm-dash-main .mm-readiness-exact .panel-heading{padding:12px 20px 12px;margin-bottom:12px}
#mm-dash-main .mm-readiness-exact .breadcrumb{flex-wrap:wrap}
#mm-dash-main .mm-readiness-exact .global-search{display:none}
}
@media (prefers-reduced-motion:reduce){#mm-dash-main .mm-readiness-exact, #mm-dash-main .mm-readiness-exact *, #mm-dash-main .mm-readiness-exact *:before, #mm-dash-main .mm-readiness-exact *:after{scroll-behavior:auto!important;transition:none!important}
}
#mm-dash-main .mm-readiness-exact{background:#f7f9fd}
#mm-dash-main .mm-readiness-exact .shell{grid-template-columns:195px 199px minmax(0,1fr)}
#mm-dash-main .mm-readiness-exact .workspace{padding:16px 24px 32px 19px}
#mm-dash-main .mm-readiness-exact .content-layout{display:block;max-width:1320px;margin:0 auto}
#mm-dash-main .mm-readiness-exact .page-heading h1{font-size:26px;letter-spacing:-1.15px}
#mm-dash-main .mm-readiness-exact .page-heading p{max-width:760px}
#mm-dash-main .mm-readiness-exact .page-heading{margin-bottom:14px;align-items:start}
#mm-dash-main .mm-readiness-exact .panel{background:var(--card);border:1px solid #eaf0f8;box-shadow:var(--shadow);border-radius:var(--radius);margin-bottom:12px;overflow:hidden}
#mm-dash-main .mm-readiness-exact .panel-heading{padding:12px 20px 12px;margin-bottom:12px}
#mm-dash-main .mm-readiness-exact .panel-title h2{font-size:14px}
#mm-dash-main .mm-readiness-exact .panel-title p{font-size:12px}
#mm-dash-main .mm-readiness-exact .overview-grid{grid-template-columns:repeat(3,minmax(0,1fr));padding:4px 9px 10px}
#mm-dash-main .mm-readiness-exact .overview-stat{padding:9px 12px;min-height:69px}
#mm-dash-main .mm-readiness-exact .section-row{display:flex;gap:11px;align-items:center}
#mm-dash-main .mm-readiness-exact .section-index{font-size:12px;color:#224eff;font-weight:850}
#mm-dash-main .mm-readiness-exact .section-title{display:flex;align-items:center;gap:9px}
#mm-dash-main .mm-readiness-exact .section-title .icon-tile{width:36px;height:36px;flex-basis:36px}
#mm-dash-main .mm-readiness-exact .blue-preview{margin:0 12px 12px;padding:11px 13px;background:linear-gradient(115deg,#f2f5ff,#f9fbff);border-radius:8px;color:#506083;font-size:12px;line-height:1.8}
#mm-dash-main .mm-readiness-exact .blue-preview p{margin:0 0 2px}
#mm-dash-main .mm-readiness-exact .blue-preview b{color:#1f3361;font-weight:750}
#mm-dash-main .mm-readiness-exact .compact-status-section .status-toggle{padding:6px 13px 0}
#mm-dash-main .mm-readiness-exact .compact-status-section .status-content{padding:0 13px 10px}
#mm-dash-main .mm-readiness-exact .compact-status-section .status-toggle .panel-title{padding:7px 0}
#mm-dash-main .mm-readiness-exact .compact-status-section[data-kind=research] .status-toggle{background:linear-gradient(90deg,#f2fbf8,#fff)}
#mm-dash-main .mm-readiness-exact .compact-status-section[data-kind=sources] .status-toggle{background:linear-gradient(90deg,#fff7f7,#fff)}
#mm-dash-main .mm-readiness-exact .compact-status-section[data-kind=plan] .status-toggle{background:linear-gradient(90deg,#fffaf1,#fff)}
#mm-dash-main .mm-readiness-exact .compact-status-section[data-kind=detail] .status-toggle{background:#fff}
#mm-dash-main .mm-readiness-exact .compact-status-section[data-kind=plan] .icon-tile{background:#fff3dc;color:#ed9909}
#mm-dash-main .mm-readiness-exact .compact-status-section[data-kind=detail] .icon-tile{background:#eef3ff;color:#3061ff}
#mm-dash-main .mm-readiness-exact .status-content .detail-table td{padding:8px 10px}
#mm-dash-main .mm-readiness-exact .detail-table td:first-child{width:28%}
#mm-dash-main .mm-readiness-exact .detail-table td:nth-child(2){width:16%}
#mm-dash-main .mm-readiness-exact .detail-table td:nth-child(3){width:51%}
#mm-dash-main .mm-readiness-exact .detail-table td:last-child{width:5%}
#mm-dash-main .mm-readiness-exact .status-tag{border-radius:6px;display:inline-flex;align-items:center;gap:5px;font-size:12px;padding:4px 8px;font-weight:750;white-space:nowrap}
#mm-dash-main .mm-readiness-exact .tag-ok{background:#e1f8ed;color:#09895c}
#mm-dash-main .mm-readiness-exact .tag-bad{background:#ffeaeb;color:#df4552}
#mm-dash-main .mm-readiness-exact .tag-warn{background:#fff3da;color:#b97b0b}
#mm-dash-main .mm-readiness-exact .tag-idle{background:#edf1f7;color:#6f7f9b}
#mm-dash-main .mm-readiness-exact .tag-review{background:#fff4e4;color:#b98314}
#mm-dash-main .mm-readiness-exact .detail-table .item-name{font-weight:800;color:#20315d}
#mm-dash-main .mm-readiness-exact .expand-row{background:#f5f8ff;border:1px solid #e3eafa;border-radius:8px;padding:10px 12px;margin:6px 7px;color:#51668f;font-size:12px;line-height:1.65}
#mm-dash-main .mm-readiness-exact .expand-row strong{color:#1c2c55}
#mm-dash-main .mm-readiness-exact .row-trigger{background:transparent;border:0;color:#3563ff;font-size:17px;display:grid;place-items:center;height:26px;width:26px;border-radius:6px}
#mm-dash-main .mm-readiness-exact .row-trigger:hover{background:#edf2ff}
#mm-dash-main .mm-readiness-exact .row-trigger svg{transition:.2s}
#mm-dash-main .mm-readiness-exact .row-trigger[aria-expanded=true] svg{transform:rotate(90deg)}
#mm-dash-main .mm-readiness-exact .detail-table tr.expanded-content td{padding:0 0 8px;border:0}
#mm-dash-main .mm-readiness-exact .plan-items{padding:3px 13px 12px}
#mm-dash-main .mm-readiness-exact .plan-item{display:grid;grid-template-columns:24px minmax(120px,24%) 1fr 22px;gap:10px;align-items:center;padding:11px 8px;border-bottom:1px solid #edf1f7}
#mm-dash-main .mm-readiness-exact .plan-item:last-of-type{border-bottom:0}
#mm-dash-main .mm-readiness-exact .plan-item .ico{width:15px;height:15px;color:#3768f1}
#mm-dash-main .mm-readiness-exact .plan-item strong{font-size:12px;color:#1d2a55}
#mm-dash-main .mm-readiness-exact .plan-item .summary{font-size:12px;color:#627494;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#mm-dash-main .mm-readiness-exact .plan-item button{border:0;background:none;color:#3462ee;display:grid;place-items:center;padding:2px}
#mm-dash-main .mm-readiness-exact .plan-item button .ico{width:14px;height:14px}
#mm-dash-main .mm-readiness-exact .plan-item.open .summary{white-space:normal}
#mm-dash-main .mm-readiness-exact .plan-extra{display:none;margin:0 7px 5px 31px;padding:12px 14px;border:1px solid #e3eafb;background:#f7f9ff;border-radius:8px;color:#556786;font-size:12px;line-height:1.75}
#mm-dash-main .mm-readiness-exact .plan-item.open+.plan-extra{display:block}
#mm-dash-main .mm-readiness-exact .plan-extra b{color:#152a57}
#mm-dash-main .mm-readiness-exact .notes-area{padding:5px 14px 12px}
#mm-dash-main .mm-readiness-exact .note-item{background:#f8faff;border:1px solid #e7ecf6;border-radius:8px;padding:10px 12px;display:flex;justify-content:space-between;align-items:start;gap:10px;margin-bottom:8px;color:#425474;line-height:1.6}
#mm-dash-main .mm-readiness-exact .note-actions{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #edf0f6;padding:12px 14px;background:#fff}
#mm-dash-main .mm-readiness-exact .section-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;margin-bottom:30px;border:1px solid #e9eef8;background:#fff;border-radius:10px}
#mm-dash-main .mm-readiness-exact .privacy-banner{color:#7b89a4;font-size:12px;padding:0 4px 15px}
#mm-dash-main .mm-readiness-exact .edit-micro{margin-left:auto}
@media (min-width:1700px){#mm-dash-main .mm-readiness-exact .shell{grid-template-columns:210px 210px minmax(0,1fr)}
#mm-dash-main .mm-readiness-exact .workspace{padding:20px 32px}
}
@media (max-width:1270px){#mm-dash-main .mm-readiness-exact .shell{grid-template-columns:165px 170px minmax(0,1fr)}
#mm-dash-main .mm-readiness-exact .workspace{padding:14px 13px}
#mm-dash-main .mm-readiness-exact .overview-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:1050px){#mm-dash-main .mm-readiness-exact .shell{grid-template-columns:155px 155px minmax(0,1fr)}
#mm-dash-main .mm-readiness-exact .step-nav{display:block}
#mm-dash-main .mm-readiness-exact .workspace{padding:13px}
#mm-dash-main .mm-readiness-exact .top-actions .text-only{display:none}
#mm-dash-main .mm-readiness-exact .global-search{max-width:330px}
#mm-dash-main .mm-readiness-exact .brand{min-width:150px}
}
@media (max-width:870px){#mm-dash-main .mm-readiness-exact .shell{grid-template-columns:155px minmax(0,1fr)}
#mm-dash-main .mm-readiness-exact .step-nav{display:none}
#mm-dash-main .mm-readiness-exact .global-search{width:min(300px,28vw)}
}
@media (max-width:780px){#mm-dash-main .mm-readiness-exact .shell{display:block}
#mm-dash-main .mm-readiness-exact .left-nav{display:none;position:fixed;z-index:30;left:0;top:58px;bottom:0;width:245px;overflow:auto;box-shadow:12px 0 40px #0f22441a}
#mm-dash-main .mm-readiness-exact .left-nav.show{display:flex}
#mm-dash-main .mm-readiness-exact .workspace{padding:15px}
#mm-dash-main .mm-readiness-exact .overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
#mm-dash-main .mm-readiness-exact .overview-stat:not(:nth-child(3n)){border-right:0}
#mm-dash-main .mm-readiness-exact .overview-stat:nth-child(odd){border-right:1px solid #eef1f8}
#mm-dash-main .mm-readiness-exact .page-heading h1{font-size:23px}
#mm-dash-main .mm-readiness-exact .page-heading{align-items:flex-start}
#mm-dash-main .mm-readiness-exact .plan-item{grid-template-columns:20px 115px 1fr 20px;gap:5px}
}
@media (max-width:520px){#mm-dash-main .mm-readiness-exact .page-heading{display:block}
#mm-dash-main .mm-readiness-exact .heading-actions{margin-top:11px}
#mm-dash-main .mm-readiness-exact .overview-grid{grid-template-columns:1fr}
#mm-dash-main .mm-readiness-exact .overview-stat:nth-child(odd){border-right:0}
#mm-dash-main .mm-readiness-exact .overview-stat{min-height:0;border-bottom:1px solid #eef1f8}
#mm-dash-main .mm-readiness-exact .overview-stat:last-child{border:0}
#mm-dash-main .mm-readiness-exact .detail-table td{font-size:12px}
#mm-dash-main .mm-readiness-exact .detail-table td:first-child{width:37%}
#mm-dash-main .mm-readiness-exact .detail-table td:nth-child(2){width:23%}
#mm-dash-main .mm-readiness-exact .detail-table td:nth-child(3){width:35%}
#mm-dash-main .mm-readiness-exact .detail-table td:last-child{width:5%}
#mm-dash-main .mm-readiness-exact .detail-table td{padding:7px 4px!important}
#mm-dash-main .mm-readiness-exact .plan-item{grid-template-columns:20px 100px 1fr 18px;gap:5px}
#mm-dash-main .mm-readiness-exact .plan-item .summary{font-size:12px}
#mm-dash-main .mm-readiness-exact .blue-preview{font-size:12px}
}
/* Shell lock. Later readiness rules are scoped to .mm-readiness-exact and must
   not hide this sidebar. These selectors win for the campaign columns. */
html.mm-campaign-direct #mm-dash-layout.mm-shell,
body.mm-campaign-open #mm-dash-layout.mm-shell {
  display: grid !important;
  grid-template-columns: 195px 199px minmax(0, 1fr) !important;
}
html.mm-campaign-direct #mm-dash-layout > .left-nav,
html.mm-campaign-direct #mm-dash-layout > .step-nav,
body.mm-campaign-open #mm-dash-layout > .left-nav,
body.mm-campaign-open #mm-dash-layout > .step-nav {
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  transform: none !important;
  position: sticky !important;
  width: auto !important;
  min-width: 150px !important;
  max-width: none !important;
  height: auto !important;
  overflow: visible !important;
}
@media (max-width: 980px) {
  html.mm-campaign-direct #mm-dash-layout.mm-shell,
  body.mm-campaign-open #mm-dash-layout.mm-shell {
    grid-template-columns: 168px 176px minmax(0, 1fr) !important;
  }
}
#mm-dash-main .mm-readiness-exact .panel-heading {
    padding: 12px 20px 12px;
    margin-bottom: 12px;
}
#mm-dash-main .mm-readiness-exact .panel {
    background: var(--card);
    border: 1px solid #eaf0f8;
    box-shadow: var(--shadow);
    border-radius: var(--radius);
    margin-bottom: 12px;
    overflow: hidden;
}
#mm-dash-main .mm-readiness-exact .panel-title h2 {
    font-size: 14px;
}
/* Same left nav on signed-in client pages. No step column on these routes. */
html.mm-client-shell #mm-left-nav {
  position: fixed;
  top: 67px;
  left: 0;
  bottom: 0;
  z-index: 60;
  display: flex;
  flex-direction: column;
  gap: 4px;
  width: 195px;
  min-width: 195px;
  max-width: 195px;
  box-sizing: border-box;
  padding: 16px 9px;
  overflow: hidden;
  background: #fff;
  border-right: 1px solid #e7eaf2;
  color: #162033;
  font-family: "Plus Jakarta Sans", "Segoe UI", sans-serif;
}
html.mm-client-shell #mm-left-nav .side-section {
  margin: 0 12px 8px;
  color: #8190ab;
  font-weight: 800;
  font-size: 12px;
  letter-spacing: 0.055em;
}
html.mm-client-shell #mm-left-nav .side-section.spaced { margin-top: 16px; }
html.mm-client-shell #mm-left-nav .nav-item {
  min-height: 35px;
  display: flex;
  align-items: center;
  gap: 10px;
  border-radius: 6px;
  padding: 6px 10px;
  color: #60708f;
  font-size: 12px;
  font-weight: 650;
  line-height: 1.25;
  text-decoration: none;
  border-left: 3px solid transparent;
}
html.mm-client-shell #mm-left-nav .nav-item:hover,
html.mm-client-shell #mm-left-nav .nav-item:focus-visible { background: #f5f7ff; color: #365bd9; }
html.mm-client-shell #mm-left-nav .nav-item.active {
  background: linear-gradient(90deg, #f0ecff, #f7f4ff);
  color: #4b38e2;
  border-left-color: #7256ff;
  font-weight: 750;
}
html.mm-client-shell #mm-left-nav .nav-item .ico { width: 15px; height: 15px; flex: 0 0 15px; }
html.mm-client-shell main.cdsdp-main-with-sidebar,
html.mm-client-shell main.cdsdp-main-with-sidebar.sidebar-collapsed {
  margin-left: 195px !important;
  width: auto !important;
  max-width: none !important;
}
html.mm-client-shell .flex > .w-280.border-r.bg-white { display: none !important; }
@media (max-width: 980px) {
  html.mm-client-shell #mm-left-nav { width: 168px; min-width: 168px; max-width: 168px; }
  html.mm-client-shell main.cdsdp-main-with-sidebar,
  html.mm-client-shell main.cdsdp-main-with-sidebar.sidebar-collapsed { margin-left: 168px !important; }
}

/* Keep the labeled sidebar visible and the Next icon rail invisible after hydration. */
html.mm-client-shell #cdsdp-sidebar,
html.mm-campaign-direct #cdsdp-sidebar,
body.mm-campaign-open #cdsdp-sidebar,
html.mm-client-shell .cdsdp-dashboard-sidebar,
html.mm-campaign-direct .cdsdp-dashboard-sidebar,
body.mm-campaign-open .cdsdp-dashboard-sidebar,
html.mm-client-shell .cdsdp-sidebar-overlay,
html.mm-campaign-direct .cdsdp-sidebar-overlay,
body.mm-campaign-open .cdsdp-sidebar-overlay,
html.mm-client-shell .cdsdp-mobile-toggle,
html.mm-campaign-direct .cdsdp-mobile-toggle,
body.mm-campaign-open .cdsdp-mobile-toggle,
html.mm-client-shell .flex > .w-280.border-r.bg-white,
html.mm-campaign-direct .flex > .w-280.border-r.bg-white {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  min-width: 0 !important;
  max-width: 0 !important;
  height: 0 !important;
  overflow: hidden !important;
  pointer-events: none !important;
  transform: none !important;
}
html.mm-client-shell #mm-left-nav {
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  left: 0 !important;
  transform: none !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  z-index: 80 !important;
}
html.mm-client-shell #mm-left-nav .nav-item,
html.mm-campaign-direct #mm-dash-layout > #mm-left-nav .nav-item,
body.mm-campaign-open #mm-dash-layout > #mm-left-nav .nav-item {
  flex-shrink: 0;
  white-space: normal;
}
html.mm-campaign-direct #mm-dash-layout > #mm-left-nav,
body.mm-campaign-open #mm-dash-layout > #mm-left-nav {
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: sticky !important;
  left: auto !important;
  transform: none !important;
  width: auto !important;
  max-height: calc(100vh - 67px) !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
}

/* Master sidebar width. Later rules beat the earlier 195px shell. */
html.mm-client-shell #mm-left-nav,
html.mm-campaign-direct #mm-dash-layout > #mm-left-nav {
  width: 250px !important;
  min-width: 250px !important;
  max-width: 250px !important;
}
html.mm-client-shell main.cdsdp-main-with-sidebar,
html.mm-client-shell main.cdsdp-main-with-sidebar.sidebar-collapsed {
  margin-left: 250px !important;
}
html.mm-campaign-direct #mm-dash-layout.mm-shell,
body.mm-campaign-open #mm-dash-layout.mm-shell {
  grid-template-columns: 250px 199px minmax(0, 1fr) !important;
}
html.mm-campaign-direct #mm-dash-layout > #mm-left-nav,
body.mm-campaign-open #mm-dash-layout > #mm-left-nav {
  position: sticky !important;
  top: 0 !important;
  left: auto !important;
  bottom: auto !important;
  z-index: 2 !important;
  height: auto !important;
  max-height: calc(100vh - 67px) !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
}
html.mm-campaign-direct main.cdsdp-main-with-sidebar,
html.mm-campaign-direct main.cdsdp-main-with-sidebar.sidebar-collapsed,
body.mm-campaign-open main.cdsdp-main-with-sidebar {
  margin-left: 0 !important;
}
html.mm-client-shell #cdsdp-sidebar,
html.mm-campaign-direct #cdsdp-sidebar,
html.mm-client-shell .cdsdp-dashboard-sidebar,
html.mm-campaign-direct .cdsdp-dashboard-sidebar {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  min-width: 0 !important;
  max-width: 0 !important;
  pointer-events: none !important;
}
#mm-left-nav .side-section {
  display: block !important;
  visibility: visible !important;
}
#mm-left-nav .mm-more-btn {
  position: sticky;
  bottom: 0;
  z-index: 2;
  width: 100%;
  margin-top: 12px;
  background: #fff;
  border: 1px solid #e2e7f1;
  border-radius: 9px;
  padding: 10px 8px;
  color: #344a78;
  font-weight: 700;
  font-size: 12px;
  cursor: pointer;
}
#mm-left-nav .mm-more-btn[hidden] { display: none !important; }
@media (max-width: 980px) {
  html.mm-client-shell #mm-left-nav {
    width: 250px !important;
    min-width: 250px !important;
    max-width: 250px !important;
  }
  html.mm-client-shell main.cdsdp-main-with-sidebar,
  html.mm-client-shell main.cdsdp-main-with-sidebar.sidebar-collapsed { margin-left: 250px !important; }
  html.mm-campaign-direct #mm-dash-layout.mm-shell,
  body.mm-campaign-open #mm-dash-layout.mm-shell {
    grid-template-columns: 250px 176px minmax(0, 1fr) !important;
  }
}

/* Evidence findings layout. Scoped so the master sidebar and step column stay outside it. */
#mm-dash-main .mm-evidence { color: #122047; font-size: 12px; line-height: 1.52; }
#mm-dash-main .mm-evidence .content-grid { display: grid; grid-template-columns: minmax(0, 1fr) 275px; gap: 14px; align-items: start; }
#mm-dash-main .mm-evidence .workspace, #mm-dash-main .mm-evidence .side-column { min-width: 0; }
#mm-dash-main .mm-evidence .breadcrumbs { display: flex; align-items: center; gap: 7px; color: #8290aa; font-size: 12px; margin: 0 0 13px; }
#mm-dash-main .mm-evidence .breadcrumbs strong { color: #354568; }
#mm-dash-main .mm-evidence .page-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; margin-bottom: 15px; }
#mm-dash-main .mm-evidence .page-head h1 { font-size: 23px; letter-spacing: -1.1px; line-height: 1.15; margin: 0 0 6px; font-weight: 800; }
#mm-dash-main .mm-evidence .page-head p { color: #71809d; margin: 0; max-width: 600px; font-size: 12px; }
#mm-dash-main .mm-evidence .draft-pill { background: #e9f1ff; color: #2563eb; font-size: 12px; vertical-align: middle; padding: 4px 7px; border-radius: 4px; margin-left: 6px; font-weight: 800; }
#mm-dash-main .mm-evidence .btn { display: inline-flex; align-items: center; justify-content: center; gap: 7px; background: #fff; border: 1px solid #dfe6f2; border-radius: 7px; color: #233457; padding: 7px 11px; min-height: 30px; font-size: 12px; font-weight: 800; text-decoration: none; }
#mm-dash-main .mm-evidence .btn.primary { background: #2563eb; color: #fff; border-color: #2563eb; }
#mm-dash-main .mm-evidence .btn.soft { background: #edf3ff; color: #1454d3; border: 0; }
#mm-dash-main .mm-evidence .btn.sm { padding: 5px 9px; min-height: 26px; }
#mm-dash-main .mm-evidence .panel { background: #fff; border: 1px solid #e6ebf3; border-radius: 12px; margin-bottom: 12px; box-shadow: 0 10px 28px rgba(29, 49, 92, .035); overflow: hidden; }
#mm-dash-main .mm-evidence .panel-top { display: flex; gap: 10px; align-items: center; justify-content: space-between; padding: 15px 16px 12px; }
#mm-dash-main .mm-evidence .panel-heading { display: flex; align-items: center; gap: 10px; min-width: 0; }
#mm-dash-main .mm-evidence .panel-heading h2, #mm-dash-main .mm-evidence .side-panel h2 { font-size: 12.5px; margin: 0; font-weight: 800; }
#mm-dash-main .mm-evidence .panel-heading p { color: #71809d; font-size: 12px; margin: 3px 0 0; }
#mm-dash-main .mm-evidence .section-icon, #mm-dash-main .mm-evidence .side-ico, #mm-dash-main .mm-evidence .square-icon { width: 29px; height: 29px; border-radius: 9px; display: grid; place-items: center; color: #225bf2; background: #edf2ff; flex-shrink: 0; }
#mm-dash-main .mm-evidence .square-icon { width: 27px; height: 27px; border-radius: 8px; }
#mm-dash-main .mm-evidence .summary-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; padding: 0 16px 13px; }
#mm-dash-main .mm-evidence .summary-item { display: flex; align-items: flex-start; gap: 9px; padding: 11px 10px; border-right: 1px solid #e9edf4; min-height: 62px; }
#mm-dash-main .mm-evidence .summary-item:nth-child(3n) { border-right: 0; }
#mm-dash-main .mm-evidence .summary-item:nth-child(n+4) { border-top: 1px solid #f2f4f9; }
#mm-dash-main .mm-evidence .summary-item strong { display: block; font-size: 12px; font-weight: 800; }
#mm-dash-main .mm-evidence .summary-item span { display: block; color: #71809b; font-size: 12px; line-height: 1.5; margin-top: 3px; }
#mm-dash-main .mm-evidence .notice { background: #f0f5ff; border: 1px solid #e3ebfc; border-radius: 7px; padding: 9px 10px; display: flex; align-items: center; gap: 8px; margin-bottom: 6px; color: #5e7197; font-size: 12px; }
#mm-dash-main .mm-evidence .panel-body { padding: 0 16px 13px; }
#mm-dash-main .mm-evidence .table-scroll { overflow: auto; }
#mm-dash-main .mm-evidence .data-table { width: 100%; border-collapse: collapse; font-size: 12px; }
#mm-dash-main .mm-evidence .data-table th { text-align: left; font-weight: 700; color: #63718d; background: #f7f9fc; border-bottom: 1px solid #e6ebf3; padding: 8px 9px; }
#mm-dash-main .mm-evidence .data-table td { padding: 8px 9px; border-bottom: 1px solid #edf0f6; vertical-align: middle; color: #52617f; }
#mm-dash-main .mm-evidence .status { display: inline-flex; gap: 5px; align-items: center; font-size: 12px; font-weight: 700; color: #73819b; }
#mm-dash-main .mm-evidence .dot { width: 7px; height: 7px; border-radius: 50%; display: inline-block; background: #c6d1e1; }
#mm-dash-main .mm-evidence .dot.green { background: #06af79; }
#mm-dash-main .mm-evidence .dot.red { background: #f43f52; }
#mm-dash-main .mm-evidence .dot.amber { background: #eea41c; }
#mm-dash-main .mm-evidence .dot.blue { background: #2563eb; }
#mm-dash-main .mm-evidence .tint-badge { border-radius: 100px; padding: 3px 7px; font-size: 12px; font-weight: 800; display: inline-flex; }
#mm-dash-main .mm-evidence .tint-badge.green { color: #07865f; background: #e6f9f1; }
#mm-dash-main .mm-evidence .tint-badge.blue { color: #1859d4; background: #edf3ff; }
#mm-dash-main .mm-evidence .platform { display: flex; align-items: center; gap: 11px; }
#mm-dash-main .mm-evidence .platform-icon { width: 24px; height: 24px; border-radius: 7px; display: grid; place-items: center; font-size: 12px; font-weight: 800; background: #eff4fb; color: #2355bd; }
#mm-dash-main .mm-evidence .platform-name { font-weight: 800; color: #223154; font-size: 12px; }
#mm-dash-main .mm-evidence .platform-sub { font-size: 12px; color: #8694ab; margin-top: 2px; overflow-wrap: anywhere; }
#mm-dash-main .mm-evidence .accounts-section .data-table .name-col { width: 35%; }
#mm-dash-main .mm-evidence .accounts-section .data-table .status-col { width: 45%; }
#mm-dash-main .mm-evidence .accounts-section .data-table .action-col { width: 20%; }
#mm-dash-main .mm-evidence .source-table .source-col { width: 29%; }
#mm-dash-main .mm-evidence .source-table .status-col { width: 23%; }
#mm-dash-main .mm-evidence .source-table .detail-col { width: 40%; }
#mm-dash-main .mm-evidence .additional-notes textarea { width: 100%; min-height: 81px; resize: vertical; border: 1px solid #e6ebf3; border-radius: 7px; padding: 12px; color: #334563; font-size: 12px; }
#mm-dash-main .mm-evidence .counter { text-align: right; color: #71809d; font-size: 12px; margin-top: 3px; }
#mm-dash-main .mm-evidence .form-footer { border-top: 1px solid #e6ebf3; padding: 11px 15px; display: flex; align-items: center; justify-content: space-between; gap: 8px; }
#mm-dash-main .mm-evidence .table-footer { padding: 11px 10px; border-top: 1px solid #e6ebf3; background: #f4f8ff; display: flex; align-items: center; gap: 9px; color: #7182a0; font-size: 12px; }
#mm-dash-main .mm-evidence .side-panel { background: #fff; border: 1px solid #e6ebf3; border-radius: 12px; box-shadow: 0 10px 28px rgba(29, 49, 92, .035); padding: 14px; margin-bottom: 13px; }
#mm-dash-main .mm-evidence .side-panel h2 { display: flex; gap: 8px; align-items: center; margin: 0 0 9px; }
#mm-dash-main .mm-evidence .side-panel p { font-size: 12px; color: #72819f; margin: 0 0 9px; line-height: 1.68; }
#mm-dash-main .mm-evidence .progress-head { display: flex; justify-content: space-between; align-items: center; margin-bottom: 11px; }
#mm-dash-main .mm-evidence .progress-head span { color: #8a99b4; font-size: 12px; }
#mm-dash-main .mm-evidence .progress-track { height: 6px; background: #e9eef7; border-radius: 20px; overflow: hidden; margin: 0 0 13px; }
#mm-dash-main .mm-evidence .progress-fill { height: 100%; background: #2769f5; border-radius: 20px; }
#mm-dash-main .mm-evidence .progress-step { display: flex; gap: 9px; align-items: center; padding: 7px 5px; color: #75839e; font-size: 12px; border-radius: 6px; }
#mm-dash-main .mm-evidence .progress-step.current { background: #f0f5ff; color: #2362e4; font-weight: 800; }
#mm-dash-main .mm-evidence .progress-step.done { color: #62748f; }
#mm-dash-main .mm-evidence .circle-n { width: 19px; height: 19px; border: 1px solid #e0e7f3; background: #f7f9fc; border-radius: 50%; display: grid; place-items: center; font-size: 12px; font-weight: 800; }
#mm-dash-main .mm-evidence .progress-step.current .circle-n, #mm-dash-main .mm-evidence .progress-step.done .circle-n { background: #2563eb; color: #fff; border-color: #2563eb; }
#mm-dash-main .mm-evidence .finding { display: flex; align-items: flex-start; gap: 9px; margin: 0 0 13px; }
#mm-dash-main .mm-evidence .finding .mark { width: 25px; height: 25px; display: grid; place-items: center; border-radius: 50%; background: #e8f6ef; color: #16a777; font-weight: 800; }
#mm-dash-main .mm-evidence .finding .mark.amber { background: #fff6e4; color: #d98f0f; }
#mm-dash-main .mm-evidence .finding .mark.blue { background: #edf3ff; color: #2865e9; }
#mm-dash-main .mm-evidence .finding .mark.gray { background: #f1f4f8; color: #6c7c9c; }
#mm-dash-main .mm-evidence .finding strong { font-size: 12px; display: block; }
#mm-dash-main .mm-evidence .finding span { display: block; color: #71809a; font-size: 12px; margin-top: 2px; }
#mm-dash-main .mm-evidence .missing { padding-left: 17px; margin: 0; }
#mm-dash-main .mm-evidence .missing li { color: #6c7e9b; font-size: 12px; margin: 0 0 7px; }
#mm-dash-main .mm-evidence .research-status { display: flex; align-items: center; gap: 9px; padding: 7px 2px; font-size: 12px; color: #536580; }
#mm-dash-main .mm-evidence .research-status .status-end { margin-left: auto; color: #97a6bd; font-size: 12px; }
#mm-dash-main .mm-evidence .muted { color: #71809d; font-size: 12px; font-weight: 500; }
#mm-dash-main .mm-evidence .ico { width: 16px; height: 16px; }
@media (max-width: 1100px) {
  #mm-dash-main .mm-evidence .content-grid { grid-template-columns: 1fr; }
}

/* Client shell geometry. The rail is 250px and fixed; page content starts at 250px.
   Main margin stays 0 so a flex child plus a left margin does not create horizontal scroll.
   Campaign pages keep their own grid and are excluded. */
html.mm-client-shell body > #mm-left-nav {
  position: fixed !important;
  top: 67px !important;
  left: 0 !important;
  bottom: 0 !important;
  width: 250px !important;
  min-width: 250px !important;
  max-width: 250px !important;
  height: auto !important;
  z-index: 80 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
  box-sizing: border-box !important;
  padding: 16px 9px 12px !important;
  margin: 0 !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  background: #fff !important;
  border-right: 1px solid #e7eaf2 !important;
  color: #162033 !important;
  font-family: "Plus Jakarta Sans", "Segoe UI", sans-serif !important;
}
html.mm-client-shell body > #mm-left-nav .side-section {
  display: block !important;
  visibility: visible !important;
  flex-shrink: 0 !important;
  margin: 0 12px 8px !important;
  color: #8190ab !important;
  font-weight: 800 !important;
  font-size: 12px !important;
  letter-spacing: 0.055em !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
}
html.mm-client-shell body > #mm-left-nav .side-section.spaced {
  margin-top: 16px !important;
}
html.mm-client-shell body > #mm-left-nav .nav-item {
  flex-shrink: 0 !important;
  min-height: 35px !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  color: #60708f !important;
  font-size: 12px !important;
  font-weight: 650 !important;
  text-decoration: none !important;
  white-space: normal !important;
}
html.mm-client-shell #cdsdp-sidebar,
html.mm-client-shell .cdsdp-dashboard-sidebar,
html.mm-client-shell .cdsdp-sidebar-overlay,
html.mm-client-shell .cdsdp-mobile-toggle,
html.mm-client-shell .w-280.border-r.bg-white {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  min-width: 0 !important;
  max-width: 0 !important;
  height: 0 !important;
  overflow: hidden !important;
  pointer-events: none !important;
  transform: none !important;
}
html.mm-client-shell:not(.mm-campaign-direct) body:not(.mm-campaign-open) .cdsdp-MainWrapper {
  padding-left: 250px !important;
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100% !important;
}
html.mm-client-shell:not(.mm-campaign-direct) body:not(.mm-campaign-open) .CdsDP-RootShell > .min-h-screen > .flex {
  padding-left: 250px !important;
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100% !important;
}
html.mm-client-shell:not(.mm-campaign-direct) body:not(.mm-campaign-open) main.cdsdp-main-with-sidebar,
html.mm-client-shell:not(.mm-campaign-direct) body:not(.mm-campaign-open) main.cdsdp-main-with-sidebar.sidebar-collapsed,
html.mm-client-shell:not(.mm-campaign-direct) body:not(.mm-campaign-open) main.CdsDP-main-with-sidebar,
html.mm-client-shell:not(.mm-campaign-direct) body:not(.mm-campaign-open) main.CdsDP-main-with-sidebar.sidebar-collapsed {
  margin-left: 0 !important;
  width: auto !important;
  max-width: 100% !important;
  min-width: 0 !important;
}
html.mm-campaign-direct .cdsdp-MainWrapper,
body.mm-campaign-open .cdsdp-MainWrapper,
html.mm-campaign-direct .CdsDP-RootShell > .min-h-screen > .flex,
body.mm-campaign-open .CdsDP-RootShell > .min-h-screen > .flex {
  padding-left: 0 !important;
}
html.mm-campaign-direct main.cdsdp-main-with-sidebar,
html.mm-campaign-direct main.cdsdp-main-with-sidebar.sidebar-collapsed,
html.mm-campaign-direct main.CdsDP-main-with-sidebar,
body.mm-campaign-open main.cdsdp-main-with-sidebar,
body.mm-campaign-open main.CdsDP-main-with-sidebar {
  margin-left: 0 !important;
}
html.mm-campaign-direct #mm-dash-layout.mm-shell,
body.mm-campaign-open #mm-dash-layout.mm-shell {
  grid-template-columns: 250px 199px minmax(0, 1fr) !important;
}
html.mm-campaign-direct #mm-dash-layout > #mm-left-nav,
body.mm-campaign-open #mm-dash-layout > #mm-left-nav {
  position: sticky !important;
  top: 0 !important;
  left: auto !important;
  bottom: auto !important;
  width: 250px !important;
  min-width: 250px !important;
  max-width: 250px !important;
}
@media (max-width: 980px) {
  html.mm-client-shell body > #mm-left-nav {
    width: 250px !important;
    min-width: 250px !important;
    max-width: 250px !important;
  }
  html.mm-client-shell:not(.mm-campaign-direct) body:not(.mm-campaign-open) .cdsdp-MainWrapper,
  html.mm-client-shell:not(.mm-campaign-direct) body:not(.mm-campaign-open) .CdsDP-RootShell > .min-h-screen > .flex {
    padding-left: 250px !important;
  }
  html.mm-campaign-direct #mm-dash-layout.mm-shell,
  body.mm-campaign-open #mm-dash-layout.mm-shell {
    grid-template-columns: 250px 176px minmax(0, 1fr) !important;
  }
}
/*__MM_CUST_BLOCK_START__*/
/* ===================================================================== */
/* MM CUSTOMER — fully-owned blue client experience (COPY only).          */
/* Scoped under #mm-cust-app so it never affects campaign/legacy pages.    */
/* Brand #3F51B5 / #303F9F / #e9ecfb, page #f4f5f6, Plus Jakarta Sans.     */
/* No purple (#6d28d9/#7c3aed/#8b5cf6), inline SVG icons only.             */
/* ===================================================================== */
html.mm-cust-root, html.mm-cust-root body { margin:0; padding:0; background:#f4f5f6; }
#mm-cust-app {
  --mm-brand:#3F51B5; --mm-brand-d:#303F9F; --mm-brand-l:#e9ecfb;
  --mm-page:#f4f5f6; --mm-card:#ffffff; --mm-ink:#1f2430; --mm-ink-2:#5b6472;
  --mm-line:#e6e8ee; --mm-ok:#1cad76; --mm-warn:#e78913;
  font-family:'Plus Jakarta Sans',system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  color:var(--mm-ink); background:var(--mm-page);
  display:grid; grid-template-columns:250px 1fr; min-height:100vh;
  -webkit-font-smoothing:antialiased;
}
#mm-cust-app *, #mm-cust-app *::before, #mm-cust-app *::after { box-sizing:border-box; }
#mm-cust-app a { color:inherit; text-decoration:none; }

/* ---- 250px master sidebar ---- */
#mm-cust-app .mm-cs-side {
  width:250px; background:var(--mm-card); border-right:1px solid var(--mm-line);
  height:100vh; position:sticky; top:0; overflow-y:auto; padding:0 0 24px;
  display:flex; flex-direction:column;
}
#mm-cust-app .mm-cs-brand { display:flex; align-items:center; gap:10px; padding:18px 18px 14px; font-weight:800; font-size:1.05rem; color:var(--mm-brand-d); letter-spacing:-.01em; }
#mm-cust-app .mm-cs-brand .mm-cs-logo { width:30px; height:30px; border-radius:8px; background:var(--mm-brand); color:#fff; display:grid; place-items:center; font-weight:800; }
#mm-cust-app .mm-cs-group { padding:10px 10px 2px; }
#mm-cust-app .mm-cs-gt { font-size:0.75rem; font-weight:700; letter-spacing:.08em; color:#97a0b0; padding:8px 10px 4px; }
#mm-cust-app .mm-cs-link { display:flex; align-items:center; gap:11px; padding:9px 11px; border-radius:9px; color:var(--mm-ink-2); font-size:.9rem; font-weight:600; line-height:1; }
#mm-cust-app .mm-cs-link svg { width:18px; height:18px; flex:0 0 18px; color:#8a93a3; }
#mm-cust-app .mm-cs-link:hover { background:#f3f5fb; color:var(--mm-ink); }
#mm-cust-app .mm-cs-link.mm-active { background:var(--mm-brand-l); color:var(--mm-brand-d); }
#mm-cust-app .mm-cs-link.mm-active svg { color:var(--mm-brand); }
#mm-cust-app .mm-cs-more { margin:4px 10px 0; }
#mm-cust-app .mm-cs-more > summary { list-style:none; cursor:pointer; padding:9px 11px; border-radius:9px; font-size:.82rem; font-weight:700; color:var(--mm-brand); }
#mm-cust-app .mm-cs-more > summary::-webkit-details-marker { display:none; }
#mm-cust-app .mm-cs-more[open] > summary { color:var(--mm-ink-2); }

/* ---- main column ---- */
#mm-cust-app .mm-cs-main { min-width:0; display:flex; flex-direction:column; }
#mm-cust-app .mm-cs-top { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:18px 28px; border-bottom:1px solid var(--mm-line); background:var(--mm-card); position:sticky; top:0; z-index:5; }
#mm-cust-app .mm-cs-h1 { font-size:1.3rem; font-weight:800; letter-spacing:-.01em; margin:0; }
#mm-cust-app .mm-cs-sub { color:var(--mm-ink-2); font-size:.85rem; margin-top:2px; }
#mm-cust-app .mm-cs-user { display:flex; align-items:center; gap:10px; }
#mm-cust-app .mm-cs-ava { width:38px; height:38px; border-radius:50%; background:var(--mm-brand-l); color:var(--mm-brand-d); display:grid; place-items:center; font-weight:800; font-size:.9rem; overflow:hidden; }
#mm-cust-app .mm-cs-ava img { width:100%; height:100%; object-fit:cover; }
#mm-cust-app .mm-cs-body { padding:24px 28px; }

/* ---- KPI cards ---- */
#mm-cust-app .mm-cs-kpis { display:grid; grid-template-columns:repeat(auto-fit,minmax(190px,1fr)); gap:16px; }
#mm-cust-app .mm-cs-kpi { background:var(--mm-card); border:1px solid var(--mm-line); border-radius:14px; padding:16px 18px; display:block; transition:border-color .15s, box-shadow .15s; }
#mm-cust-app .mm-cs-kpi:hover { border-color:#cfd5ea; box-shadow:0 6px 18px rgba(63,81,181,.07); }
#mm-cust-app .mm-cs-kpi .mm-cs-kico { width:40px; height:40px; border-radius:10px; background:var(--mm-brand-l); color:var(--mm-brand); display:grid; place-items:center; margin-bottom:12px; }
#mm-cust-app .mm-cs-kpi .mm-cs-kico svg { width:20px; height:20px; }
#mm-cust-app .mm-cs-kv { font-size:1.7rem; font-weight:800; letter-spacing:-.02em; line-height:1; }
#mm-cust-app .mm-cs-kt { color:var(--mm-ink-2); font-size:.82rem; font-weight:600; margin-top:6px; }
#mm-cust-app .mm-cs-kh { color:#97a0b0; font-size:0.75rem; margin-top:3px; }
#mm-cust-app .mm-cs-kv.mm-dim { color:#b7bdc9; font-weight:700; }

/* ---- panels ---- */
#mm-cust-app .mm-cs-grid2 { display:grid; grid-template-columns:1.6fr 1fr; gap:16px; margin-top:16px; }
@media (max-width:1000px){ #mm-cust-app .mm-cs-grid2 { grid-template-columns:1fr; } #mm-cust-app { grid-template-columns:1fr; } #mm-cust-app .mm-cs-side{ display:none; } }
#mm-cust-app .mm-cs-panel { background:var(--mm-card); border:1px solid var(--mm-line); border-radius:14px; padding:18px; }
#mm-cust-app .mm-cs-ph { display:flex; align-items:center; justify-content:space-between; margin-bottom:12px; }
#mm-cust-app .mm-cs-pt { font-size:1rem; font-weight:800; }
#mm-cust-app .mm-cs-see { font-size:.8rem; font-weight:700; color:var(--mm-brand); }
#mm-cust-app .mm-cs-row { display:flex; align-items:center; gap:12px; padding:11px 0; border-top:1px solid var(--mm-line); }
#mm-cust-app .mm-cs-row:first-child { border-top:0; }
#mm-cust-app .mm-cs-rt { font-weight:650; font-size:.9rem; }
#mm-cust-app .mm-cs-rs { color:var(--mm-ink-2); font-size:.78rem; margin-top:2px; }
#mm-cust-app .mm-cs-pill { font-size:0.75rem; font-weight:700; padding:3px 9px; border-radius:999px; background:#eef1f7; color:#5b6472; white-space:nowrap; }
#mm-cust-app .mm-cs-pill.ok { background:#e6f7f0; color:#12805a; }
#mm-cust-app .mm-cs-pill.prog { background:var(--mm-brand-l); color:var(--mm-brand-d); }
#mm-cust-app .mm-cs-pill.warn { background:#fdf0dd; color:#9a5b05; }
#mm-cust-app .mm-cs-muted { color:#97a0b0; font-size:.85rem; padding:16px 2px; text-align:center; }
#mm-cust-app .mm-cs-actions { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
#mm-cust-app .mm-cs-act { display:flex; align-items:center; gap:10px; padding:12px; border:1px solid var(--mm-line); border-radius:11px; font-weight:700; font-size:.85rem; }
#mm-cust-app .mm-cs-act:hover { border-color:var(--mm-brand); background:#f6f8ff; }
#mm-cust-app .mm-cs-act svg { width:18px; height:18px; color:var(--mm-brand); }
#mm-cust-app .mm-cs-note { display:inline-flex; align-items:center; gap:6px; font-size:0.75rem; color:#97a0b0; margin-top:4px; }
#mm-cust-app .mm-cs-note.err { color:#b05b2b; }

/* ---- generic page placeholder (honest, non-fabricated) ---- */
#mm-cust-app .mm-cs-empty { background:var(--mm-card); border:1px dashed #cdd3e2; border-radius:14px; padding:40px 24px; text-align:center; color:var(--mm-ink-2); }
#mm-cust-app .mm-cs-empty h3 { margin:0 0 6px; color:var(--mm-ink); font-size:1.05rem; }
#mm-cust-app .mm-cs-skel { color:#c4cad6; }

/*__MM_CLIENTFIX_BLOCK_START__*/
/* ===================================================================== */
/* MM CLIENTFIX — purple → blue brand overrides for the REAL client pages */
/* (COPY only). Scoped to html.mm-client-shell so it only affects the      */
/* signed-in client surface, never the public home / auth pages. The       */
/* native app centralizes purple in --tv-brand-purple (#6d28d9); flipping   */
/* that token recolors buttons, badges and Tailwind purple/violet utilities */
/* in one shot. Raw-hex + inline-style spots are overridden explicitly.     */
/* Brand #3F51B5 / #303F9F / #e9ecfb. NO MutationObserver — CSS only.       */
/* ===================================================================== */

/* 1) Token flip — highest leverage (buttons, badges, focus rings, icons). */
html.mm-client-shell,
html.mm-client-shell body {
  --tv-brand-purple: #3F51B5 !important;
  --tv-brand-purple-hover: #303F9F !important;
  --tv-brand-purple-rgb: 63, 81, 181 !important;
  --tv2-primary: #3F51B5 !important;
  --tv2-primary-hover: #303F9F !important;
  --tv-brand: #3F51B5 !important;
  --brand: #3F51B5 !important;
  --brand-deep: #303F9F !important;
  --primary: #3F51B5 !important;
  --primary-hover: #303F9F !important;
}

/* 2) Tailwind palette utilities used across the native client UI. */
html.mm-client-shell .text-purple-600, html.mm-client-shell .text-violet-600,
html.mm-client-shell .text-purple-700, html.mm-client-shell .text-violet-700,
html.mm-client-shell .text-purple-500, html.mm-client-shell .text-violet-500 { color: #3F51B5 !important; }
html.mm-client-shell .bg-purple-600, html.mm-client-shell .bg-violet-600,
html.mm-client-shell .bg-purple-700, html.mm-client-shell .bg-violet-700,
html.mm-client-shell .bg-purple-500, html.mm-client-shell .bg-violet-500 { background-color: #3F51B5 !important; }
html.mm-client-shell .bg-purple-100, html.mm-client-shell .bg-violet-100,
html.mm-client-shell .bg-purple-50, html.mm-client-shell .bg-violet-50 { background-color: #e9ecfb !important; }
html.mm-client-shell .text-purple-100, html.mm-client-shell .text-violet-100 { color: #e9ecfb !important; }
html.mm-client-shell .border-purple-500, html.mm-client-shell .border-purple-600,
html.mm-client-shell .border-violet-500, html.mm-client-shell .border-violet-600 { border-color: #3F51B5 !important; }
html.mm-client-shell .ring-purple-500, html.mm-client-shell .ring-violet-500,
html.mm-client-shell .ring-purple-600, html.mm-client-shell .ring-violet-600 { --tw-ring-color: #3F51B5 !important; }
html.mm-client-shell .fill-purple-600, html.mm-client-shell .fill-violet-600 { fill: #3F51B5 !important; }
html.mm-client-shell .stroke-purple-600, html.mm-client-shell .stroke-violet-600 { stroke: #3F51B5 !important; }
html.mm-client-shell .from-violet-600, html.mm-client-shell .from-purple-600,
html.mm-client-shell .from-violet-500, html.mm-client-shell .from-purple-500 { --tw-gradient-from: #3F51B5 !important; }
html.mm-client-shell .to-violet-600, html.mm-client-shell .to-purple-600,
html.mm-client-shell .via-violet-600, html.mm-client-shell .via-purple-600 { --tw-gradient-to: #303F9F !important; }
html.mm-client-shell .accent-violet-600, html.mm-client-shell .accent-purple-600 { accent-color: #3F51B5 !important; }

/* 3) Inline-style raw-hex (e.g. the dashboard KPI 'Cases' folder icon
      style="color:#6d28d9", 'PW' case avatars with purple backgrounds, the
      light-purple icon tiles #f3e8ff). External !important beats non-important
      inline styles, so these flip without touching the DOM. */
html.mm-client-shell [style*="color:#6d28d9"], html.mm-client-shell [style*="color: #6d28d9"],
html.mm-client-shell [style*="color:#7c3aed"], html.mm-client-shell [style*="color: #7c3aed"],
html.mm-client-shell [style*="color:#8b5cf6"], html.mm-client-shell [style*="color: #8b5cf6"] { color: #3F51B5 !important; }
html.mm-client-shell [style*="background:#6d28d9"], html.mm-client-shell [style*="background: #6d28d9"],
html.mm-client-shell [style*="background-color:#6d28d9"], html.mm-client-shell [style*="background-color: #6d28d9"],
html.mm-client-shell [style*="background:#7c3aed"], html.mm-client-shell [style*="background-color:#7c3aed"],
html.mm-client-shell [style*="background:#8b5cf6"], html.mm-client-shell [style*="background-color:#8b5cf6"] { background-color: #3F51B5 !important; color: #fff !important; }
html.mm-client-shell [style*="#f3e8ff"], html.mm-client-shell [style*="#ede9fe"], html.mm-client-shell [style*="#f5f3ff"] { background-color: #e9ecfb !important; }
html.mm-client-shell [style*="border-color:#6d28d9"], html.mm-client-shell [style*="border:1px solid #6d28d9"] { border-color: #3F51B5 !important; }

/* 4) Named native component classes that use raw purple (buttons/CTAs). */
html.mm-client-shell .CdsBtnPurple,
html.mm-client-shell .cds-btn-purple,
html.mm-client-shell button.CdsDP-ClientSignup-SubmitButton,
html.mm-client-shell [class*="SubmitButton"] { background-color: #3F51B5 !important; background-image: none !important; }
html.mm-client-shell .CdsBtnPurple:hover,
html.mm-client-shell [class*="SubmitButton"]:hover { background-color: #303F9F !important; }

/* 5) Progress bars / meters that fill purple. */
html.mm-client-shell progress::-webkit-progress-value { background-color: #3F51B5 !important; }
html.mm-client-shell progress::-moz-progress-bar { background-color: #3F51B5 !important; }
html.mm-client-shell [role="progressbar"] > *,
html.mm-client-shell .progress-bar, html.mm-client-shell .cds-progress-fill { background-color: #3F51B5 !important; }

/* 6) Belt-and-braces: the legacy 80px rail stays in the DOM (React owns it)
      but must be visually swapped for the 250px master sidebar. */
html.mm-client-shell #cdsdp-sidebar,
html.mm-client-shell .cdsdp-dashboard-sidebar,
html.mm-client-shell .cdsdp-sidebar-overlay,
html.mm-client-shell .cdsdp-mobile-toggle { display: none !important; }
/*__MM_TOPBAR_BLOCK_START__*/
/* ===== Legacy header everywhere (COPY) =====================================
   The real React UnifiedHeader (data-tv-header="unified") renders NATIVELY on the
   Next client pages and is NOT hidden. The owned, non-React templates (/start and
   the campaigns workspace) carry a STATIC legacy replica (.mm-legacy-header) with
   the same item set. No bespoke top bar is injected anywhere. The single blue
   sidebar sits directly under the 64px sticky header. */
html.mm-client-shell #mm-left-nav,
html.mm-client-shell body > #mm-left-nav { top: 64px !important; }

/* Faithful legacy-header replica for owned templates (/start, /campaigns).
   Reproduces the genuine UnifiedHeader's top-navigation.module.css values and
   native accents (indigo #5559BC, purple #9857CD avatar border, yellow wallet
   badge #facc15/#713f12, red->pink bell badge) + responsive breakpoints, so it is
   visually identical to the dashboard header. Live text/counts are filled by
   MM_HEADER_SCRIPT; badges stay hidden until real data arrives. */
.mm-legacy-header { position: sticky; top: 0; z-index: 50; background: rgba(255,255,255,0.95); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); border-bottom: 1px solid rgba(229,231,235,0.8); box-shadow: 0 1px 2px 0 rgba(0,0,0,0.05); font-family: "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; }
.mm-legacy-header .mm-lh-inner { display: flex; height: 4rem; align-items: center; justify-content: space-between; gap: 1rem; max-width: 100%; margin: 0 auto; padding: 0 1rem; }
.mm-legacy-header .mm-lh-left { display: flex; align-items: center; min-width: 0; flex: 1; }
.mm-legacy-header .mm-lh-brand { display: inline-flex; align-items: center; gap: 0.5rem; min-width: 0; text-decoration: none; color: #111827; }
.mm-legacy-header .mm-lh-brand:hover { opacity: 0.85; }
.mm-legacy-header .mm-lh-mark { width: 2.125rem; height: 1rem; flex-shrink: 0; display: block; }
.mm-legacy-header .mm-lh-name { font-size: 1.05rem; font-weight: 700; letter-spacing: -0.02em; line-height: 1.2; white-space: nowrap; color: #111827; }
.mm-legacy-header .mm-lh-right { display: flex; align-items: center; gap: 0.75rem; flex-shrink: 0; }
.mm-legacy-header .mm-lh-nav { display: none; align-items: center; gap: 0.25rem; flex-shrink: 0; }
.mm-legacy-header .mm-lh-link, .mm-legacy-header .mm-lh-more { display: flex; align-items: center; gap: 0.5rem; border-radius: 0.75rem; padding: 0.625rem; font-size: 0.875rem; font-weight: 500; text-decoration: none; color: #4b5563; background: transparent; border: none; cursor: pointer; transition: all 0.2s ease-in-out; white-space: nowrap; }
.mm-legacy-header .mm-lh-more { gap: 0.25rem; padding: 0.625rem 0.75rem; }
.mm-legacy-header .mm-lh-link:hover, .mm-legacy-header .mm-lh-more:hover { color: #111827; background-color: #f9fafb; }
.mm-legacy-header .mm-lh-link > svg, .mm-legacy-header .mm-lh-more > svg { width: 1rem; height: 1rem; color: #6b7280; flex: none; }
.mm-legacy-header .mm-lh-caret { width: 0.75rem !important; height: 0.75rem !important; margin-left: 0.1rem; }
.mm-legacy-header .mm-lh-coins { margin-left: 0.3rem; display: inline-flex; align-items: center; gap: 0.2rem; padding: 0.12rem 0.45rem; background: #facc15; color: #713f12; font-size: 0.75rem; font-weight: 600; border-radius: 9999px; }
.mm-legacy-header .mm-lh-coins svg { width: 0.72rem; height: 0.72rem; color: #713f12; }
.mm-legacy-header .mm-lh-coins b { font-weight: 700; }
.mm-legacy-header .mm-lh-badge { margin-left: 0.3rem; display: inline-flex; align-items: center; justify-content: center; min-width: 1.15rem; height: 1.15rem; padding: 0 0.25rem; background: #ef4444; color: #fff; font-size: 0.75rem; font-weight: 600; border-radius: 9999px; }
.mm-legacy-header .mm-lh-lang { display: inline-flex; align-items: center; gap: 0.4rem; font-size: 0.82rem; color: #4b5563; border: 1px solid rgba(229,231,235,0.9); border-radius: 0.6rem; padding: 0.35rem 0.6rem; white-space: nowrap; }
.mm-legacy-header .mm-lh-lang svg { width: 1rem; height: 1rem; color: #6b7280; flex: none; }
.mm-legacy-header .mm-lh-icon { display: inline-flex; align-items: center; justify-content: center; width: 2.25rem; height: 2.25rem; border-radius: 0.75rem; border: none; background: transparent; color: #4b5563; cursor: pointer; transition: all 0.2s ease-in-out; position: relative; }
.mm-legacy-header .mm-lh-icon:hover { background: #f3f4f6; color: #111827; }
.mm-legacy-header .mm-lh-icon svg { width: 1.2rem; height: 1.2rem; }
.mm-legacy-header .mm-lh-bellbadge { position: absolute; top: -0.25rem; right: -0.25rem; min-width: 1.15rem; height: 1.15rem; padding: 0 0.2rem; display: inline-flex; align-items: center; justify-content: center; background: linear-gradient(to right, #ef4444, #ec4899); color: #fff; font-size: 0.75rem; font-weight: 700; border-radius: 9999px; box-shadow: 0 2px 4px rgba(0,0,0,0.15); }
.mm-legacy-header .mm-lh-profile { display: flex; align-items: center; gap: 0.5rem; background: transparent; border: none; border-radius: 0.75rem; padding: 0.2rem 0.3rem; cursor: pointer; text-decoration: none; transition: all 0.2s ease-in-out; }
.mm-legacy-header .mm-lh-profile:hover { background-color: rgba(85,89,188,0.05); box-shadow: 0 0 0 1px rgba(85,89,188,0.2); }
.mm-legacy-header .mm-lh-avatar { display: inline-flex; align-items: center; justify-content: center; width: 2rem; height: 2rem; border-radius: 50%; border: 2px solid #9857CD; background: linear-gradient(to bottom right, #5559BC, #9857CD); color: #fff; font-weight: 600; font-size: 0.75rem; flex: none; box-shadow: 0 1px 3px rgba(0,0,0,0.1); }
.mm-legacy-header .mm-lh-pinfo { display: none; flex-direction: column; text-align: left; line-height: 1.1; }
.mm-legacy-header .mm-lh-puser { font-size: 0.875rem; font-weight: 500; color: #111827; }
.mm-legacy-header .mm-lh-prole { font-size: 0.75rem; color: #6b7280; text-transform: capitalize; }
.mm-legacy-header .mm-lh-pchev { width: 0.75rem; height: 0.75rem; color: #9ca3af; display: none; flex: none; }
@media (min-width: 576px) { .mm-legacy-header .mm-lh-inner { padding: 0 1.5rem; } }
@media (min-width: 1024px) { .mm-legacy-header .mm-lh-inner { padding: 0 2rem; } .mm-legacy-header .mm-lh-nav { display: flex; } .mm-legacy-header .mm-lh-pchev { display: block; } }
@media (min-width: 1280px) { .mm-legacy-header .mm-lh-pinfo { display: flex; } }
@media (max-width: 860px) { .mm-legacy-header .mm-lh-lang .mm-lh-langtxt { display: none; } }

/* Campaigns workspace (owned template) now carries the common app chrome: the
   fixed blue #mm-left-nav app sidebar sits at the left under the 64px header,
   exactly as on dashboard/cases/messages. The page's .vc2-shell (dark "Your
   campaigns" rail + campaign-main) is the INNER page content, offset to the right
   of the sidebar. The dark rail is page-level nav, NOT a second app sidebar. */
html.mm-client-shell body.vc2-campaign { margin: 0 !important; }
html.mm-client-shell body.vc2-campaign .vc2-shell {
  max-width: none !important;
  margin: 0 !important;
  padding: 24px 24px 24px 274px !important;
  box-sizing: border-box !important;
}
@media (max-width: 800px) {
  html.mm-client-shell body.vc2-campaign .vc2-shell { padding: 20px 16px 20px 266px !important; }
}
/* ===== end legacy header ===== */

/* ===== Signed-in copyright footer offset =====
   The "© <year> VentureCenter 2" footer is the root-layout PublicFooter
   (variant="app"): <footer class="CdsDP-CopyrightFooter CdsDP-CopyrightFooter--app"
   data-tv-copyright-footer="app">. It is rendered at body-root level (a sibling
   of the dashboard content, NOT inside main.cdsdp-main-with-sidebar), so it
   spans the full page width and slides under the blue sidebar. The blue
   #mm-left-nav app sidebar occupies the left 250px of the viewport, so offset
   the footer by 250px to pull it into the content column, right of the sidebar
   and aligned with the page content. Scoped to the signed-in shell classes so
   public pages (which never carry these classes) are untouched. A belt-and-
   braces main.cdsdp-main-with-sidebar footer rule covers the legacy placement
   in case a build moves the footer back inside main. */
html.mm-client-shell footer.CdsDP-CopyrightFooter,
html.mm-campaign-direct footer.CdsDP-CopyrightFooter,
body.mm-campaign-open footer.CdsDP-CopyrightFooter,
html.mm-client-shell footer[data-tv-copyright-footer],
html.mm-campaign-direct footer[data-tv-copyright-footer],
body.mm-campaign-open footer[data-tv-copyright-footer],
html.mm-client-shell main.cdsdp-main-with-sidebar footer,
html.mm-campaign-direct main.cdsdp-main-with-sidebar footer,
body.mm-campaign-open main.cdsdp-main-with-sidebar footer {
  margin-left: 250px !important;
  box-sizing: border-box !important;
}
@media (max-width: 700px) {
  html.mm-client-shell footer.CdsDP-CopyrightFooter,
  html.mm-campaign-direct footer.CdsDP-CopyrightFooter,
  body.mm-campaign-open footer.CdsDP-CopyrightFooter,
  html.mm-client-shell footer[data-tv-copyright-footer],
  html.mm-campaign-direct footer[data-tv-copyright-footer],
  body.mm-campaign-open footer[data-tv-copyright-footer],
  html.mm-client-shell main.cdsdp-main-with-sidebar footer,
  html.mm-campaign-direct main.cdsdp-main-with-sidebar footer,
  body.mm-campaign-open main.cdsdp-main-with-sidebar footer {
    margin-left: 0 !important;
  }
}

/* ===== Redesigned Platforms step (page content only) =====
   Scoped under .mm-plat2 so these generic class names never leak to the
   proxied app chrome. Recoloured to the site blue system (#3F51B5/#303F9F);
   no purple, no emoji — platform logos are inline SVG tiles. */
.mm-plat2 { --blue: #3F51B5; --blue-dark: #303F9F; color: #10182f; font-family: 'Plus Jakarta Sans','Segoe UI',sans-serif; font-size: 12px; line-height: 1.55; }
.mm-plat2 *, .mm-plat2 *::before, .mm-plat2 *::after { box-sizing: border-box; }
.mm-plat2 svg { height: 16px; width: 16px; stroke: currentColor; fill: none; stroke-width: 1.75; stroke-linecap: round; stroke-linejoin: round; }
.mm-plat2 .crumb { font-size: 12px; color: #7d8aa5; display: flex; align-items: center; gap: 9px; margin: 0 0 12px; flex-wrap: wrap; }
.mm-plat2 .crumb strong { color: #15213b; }
.mm-plat2 .page-title-row { display: flex; align-items: center; gap: 12px; justify-content: space-between; }
.mm-plat2 .page-eyebrow { font-size: 12px; font-weight: 800; color: var(--blue); letter-spacing: .25px; }
.mm-plat2 h1 { font-weight: 800; font-size: 25px; letter-spacing: -1px; margin: 6px 0 4px; line-height: 1.25; color: #0b1730; }
.mm-plat2 .lede { font-size: 12px; color: #65718a; margin: 0 0 17px; max-width: 640px; line-height: 1.7; }
.mm-plat2 .card { background: #fff; border: 1px solid #eaf0f8; box-shadow: 0 7px 25px rgba(30,49,91,.035); border-radius: 10px; }
.mm-plat2 .overview { padding: 15px 17px; margin: 0 0 14px; }
.mm-plat2 .overview-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 16px; }
.mm-plat2 .card-title { font-size: 13px; font-weight: 800; letter-spacing: -.18px; color: #15213a; display: flex; align-items: center; gap: 11px; }
.mm-plat2 .square-icon { width: 31px; height: 31px; border-radius: 8px; background: #eaf1ff; color: var(--blue); display: inline-grid; place-items: center; flex: none; }
.mm-plat2 .square-icon svg { width: 18px; height: 18px; }
.mm-plat2 .icon-button { border: none; background: transparent; padding: 5px; color: #2b3a61; display: grid; place-items: center; border-radius: 6px; cursor: pointer; }
.mm-plat2 .icon-button:hover { background: #f0f4ff; }
.mm-plat2 .icon-button svg { transform: rotate(180deg); }
.mm-plat2 .icon-button.mm-collapsed svg { transform: none; }
.mm-plat2 .overview-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px 12px; }
.mm-plat2 .overview-grid[hidden] { display: none; }
.mm-plat2 .overview-item { display: flex; gap: 10px; align-items: flex-start; min-width: 0; padding-left: 2px; }
.mm-plat2 .overview-item:nth-child(3n+2), .mm-plat2 .overview-item:nth-child(3n+3) { border-left: 1px solid #edf0f7; padding-left: 14px; }
.mm-plat2 .field-icon { height: 26px; width: 26px; border-radius: 7px; display: grid; place-items: center; background: #f1f5ff; color: var(--blue); flex: none; }
.mm-plat2 .field-icon svg { width: 15px; height: 15px; }
.mm-plat2 .field-name { font-size: 12px; color: #17213a; font-weight: 800; margin-bottom: 2px; }
.mm-plat2 .field-value { font-size: 12px; line-height: 1.5; color: #42506e; }
.mm-plat2 .platform-card { overflow: visible; }
.mm-plat2 .platform-header { display: flex; align-items: center; justify-content: space-between; padding: 14px 18px 12px; gap: 12px; }
.mm-plat2 .platform-header .description { margin: 1px 0 0 42px; font-size: 12px; color: #687791; }
.mm-plat2 .recommend { background: #fff; border: 1px solid #e0e4fa; color: var(--blue); border-radius: 7px; font-size: 12px; font-weight: 800; display: flex; gap: 7px; align-items: center; padding: 8px 10px; white-space: nowrap; cursor: pointer; }
.mm-plat2 .recommend:hover { background: #f4f6ff; }
.mm-plat2 .recommend svg { width: 13px; height: 13px; }
.mm-plat2 .table-scroll { overflow-x: auto; padding: 0; }
.mm-plat2 .platform-list { display: flex; flex-direction: column; width: 100%; min-width: 0; }
.mm-plat2 .mm-plat-head-row { display: grid; grid-template-columns: minmax(220px, 1.3fr) minmax(210px, auto) minmax(260px, 1.5fr); gap: 16px; align-items: center; padding: 10px 18px; background: #f4f6fa; border-top: 1px solid #edf0f7; border-bottom: 1px solid #e5e7eb; font-size: 12px; font-weight: 800; color: #243350; }
.mm-plat2 .mm-plat-col-head { min-width: 0; }
.mm-plat2 .mm-plat-rows { display: flex; flex-direction: column; width: 100%; }
.mm-plat2 .mm-plat-row { display: grid; grid-template-columns: minmax(220px, 1.3fr) minmax(210px, auto) minmax(260px, 1.5fr); gap: 16px; align-items: start; height: auto !important; max-height: none !important; min-height: 0; padding: 14px 18px; border-top: 0; border-bottom: 1px solid #e5e7eb; position: relative; overflow: visible; background: #fff; }
.mm-plat2 .mm-plat-row:last-child { border-bottom: 0; }
.mm-plat2 .mm-plat-row:hover { background: #fcfdff; }
.mm-plat2 .mm-plat-col { min-width: 0; height: auto !important; max-height: none !important; position: static !important; overflow: visible; }
.mm-plat2 .mm-plat-col-brand { display: flex; align-items: flex-start; }
.mm-plat2 .brand-cell { display: flex; align-items: flex-start; gap: 12px; min-width: 0; }
.mm-plat2 .brand-cell .mm-plat-mark { height: 29px; width: 29px; flex: 0 0 29px; display: grid; place-items: center; border-radius: 7px; background: #eaf1ff; color: var(--blue); }
.mm-plat2 .brand-cell .mm-plat-mark svg { width: 17px; height: 17px; }
.mm-plat2 .source-name { font-weight: 800; font-size: 12px; color: #131c32; line-height: 1.3; }
.mm-plat2 .source-description { font-size: 12px; color: #687791; line-height: 1.45; margin-top: 2px; white-space: normal; }
.mm-plat2 .mm-plat-col-choice { display: flex; align-items: center; padding-top: 4px; }
.mm-plat2 .choice-set { display: flex; align-items: center; flex-wrap: wrap; gap: 13px; white-space: nowrap; }
.mm-plat2 .choice, .vc2-campaign .mm-plat2 label.choice { display: inline-flex; align-items: center; gap: 5px; margin: 0; font-size: 12px; font-weight: 650; color: #3d4862; cursor: pointer; }
.mm-plat2 .choice input, .vc2-campaign .mm-plat2 .choice input { width: 14px; height: 14px; padding: 0; border: 0; accent-color: var(--blue); margin: 0; cursor: pointer; }
.mm-plat2 .mm-plat-col-conn, .mm-plat2 .mm-plat-account { display: flex; flex-direction: column; align-items: flex-start; gap: 6px; width: 100%; min-width: 0; height: auto !important; max-height: none !important; position: static !important; white-space: normal; line-height: 1.45; }
.mm-plat2 .mm-plat-status { margin: 0; font-size: 12px; font-weight: 700; color: #1e293b; line-height: 1.35; position: static !important; }
.mm-plat2 button.mm-plat-connect, .vc2-campaign .mm-plat2 button.mm-plat-connect { display: inline-flex; align-items: center; justify-content: center; gap: 6px; padding: 6px 12px; min-height: 30px; height: auto !important; border-radius: 7px; border: 1px solid #c5cbe8; background: #fff; color: #303F9F; font-size: 12px; font-weight: 700; line-height: 1.2; cursor: pointer; position: static !important; }
.mm-plat2 button.mm-plat-connect:hover:not(:disabled), .vc2-campaign .mm-plat2 button.mm-plat-connect:hover:not(:disabled) { background: #f4f6ff; }
.mm-plat2 button.mm-plat-connect:disabled, .vc2-campaign .mm-plat2 button.mm-plat-connect:disabled { background: #eef0f4; color: #5c6570; border: 1px solid #d7dbe3; cursor: not-allowed; }
.mm-plat2 .mm-plat-reason, .mm-plat2 .mm-plat-link-help { margin: 0; font-size: 12px; color: #5c6570; line-height: 1.45; white-space: normal; overflow-wrap: break-word; position: static !important; height: auto !important; max-height: none !important; }
.mm-plat2 .url-wrap { width: 100%; min-height: 32px; height: auto; display: flex; align-items: center; gap: 7px; border-radius: 6px; border: 1px solid #e4e9f2; padding: 4px 9px; color: #8090ab; background: #fbfcff; }
.mm-plat2 .url-wrap:focus-within { border-color: #8f9bdd; box-shadow: 0 0 0 3px #e9ebfa; }
.mm-plat2 .url-wrap svg { width: 15px; height: 15px; flex: none; }
.mm-plat2 .url-wrap input, .vc2-campaign .mm-plat2 .url-wrap input { min-width: 0; width: 100%; outline: 0; border: 0; padding: 0; border-radius: 0; background: transparent; font-size: 12px; color: #33415c; }
.mm-plat2 .url-wrap input::placeholder { color: #a8b1c3; font-style: normal; }
@media (max-width: 860px) {
  .mm-plat2 .mm-plat-head-row { display: none; }
  .mm-plat2 .mm-plat-row { grid-template-columns: 1fr; gap: 10px; padding: 14px 14px; }
  .mm-plat2 .mm-plat-col-choice, .mm-plat2 .mm-plat-col-conn { padding-left: 41px; }
}
.mm-plat2 .platform-footer { display: flex; align-items: center; justify-content: space-between; padding: 15px 17px 17px; border-top: 1px solid #edf0f6; margin-top: 7px; }
.mm-plat2 .btn { border: 1px solid #dfe6f2; border-radius: 8px; padding: 8px 13px; min-height: 33px; background: #fff; color: #19263e; display: inline-flex; align-items: center; justify-content: center; gap: 7px; font-size: 12px; font-weight: 800; white-space: nowrap; cursor: pointer; text-decoration: none; }
.mm-plat2 .btn:hover { background: #f6f8ff; }
.mm-plat2 .btn svg { width: 15px; height: 15px; }
.mm-plat2 .btn-primary { border-color: var(--blue); background: var(--blue); color: #fff; box-shadow: 0 3px 10px rgba(63,81,181,.17); }
.mm-plat2 .btn-primary:hover { background: var(--blue-dark); }
.mm-plat2 .top-save { font-size: 12px; min-height: 30px; background: #eef1fb; border: 0; color: #303F9F; }
.mm-plat2 .top-save svg { width: 14px; height: 14px; }
.mm-plat2 .mm-plat-note { font-size: 12px; color: #687791; padding: 10px 17px 0; margin: 0; line-height: 1.6; }
.mm-plat2 .vc2-error { color: #c0392b; font-size: 12px; padding: 0 17px; margin: 6px 0 0; }
.mm-plat2 .mm-plat-saved { color: #1f7a4d; font-size: 12px; padding: 0 17px; margin: 6px 0 0; }
.mm-plat2 .mm-plat2-cols { display: grid; grid-template-columns: minmax(0,1fr) 300px; gap: 16px; align-items: start; }
.mm-plat2 .mm-plat2-main { min-width: 0; }
.mm-plat2 .right-rail { display: flex; flex-direction: column; gap: 14px; min-width: 0; }
.mm-plat2 .rail-card { padding: 15px 16px; }
.mm-plat2 .rail-head { font-size: 12px; font-weight: 800; display: flex; align-items: center; gap: 11px; color: #172037; margin-bottom: 9px; }
.mm-plat2 .rail-icon { width: 29px; height: 29px; display: grid; place-items: center; background: #edf1fb; border-radius: 8px; color: var(--blue); }
.mm-plat2 .rail-icon svg { width: 18px; height: 18px; }
.mm-plat2 .rail-copy { font-size: 12px; line-height: 1.85; color: #5d6b85; margin: 0 0 0 40px; }
.mm-plat2 .tips { background: #f2f4fd; border-color: #e6e9fa; }
.mm-plat2 .tips ul { padding-left: 15px; margin: 0 0 0 24px; font-size: 12px; color: #43526d; line-height: 1.85; }
.mm-plat2 .progress-top { display: flex; justify-content: space-between; align-items: center; margin-bottom: 11px; }
.mm-plat2 .progress-top strong { font-size: 12px; }
.mm-plat2 .progress-top span { font-size: 12px; color: #7c88a2; }
.mm-plat2 .progress-track { height: 7px; background: #edf1f8; border-radius: 50px; overflow: hidden; margin-bottom: 9px; }
.mm-plat2 .progress-fill { background: var(--blue); height: 100%; border-radius: 50px; }
.mm-plat2 .rail-step { display: flex; align-items: center; gap: 12px; font-size: 12px; color: #66738d; height: 37px; padding: 0 4px; border-radius: 6px; }
.mm-plat2 .rail-step.current { background: #eef1fb; color: var(--blue); }
.mm-plat2 .rail-step .dot { width: 22px; height: 22px; border-radius: 50%; background: #eef0f6; display: grid; place-items: center; font-weight: 800; font-size: 12px; color: #485775; flex: none; }
.mm-plat2 .rail-step .dot svg { width: 13px; height: 13px; }
.mm-plat2 .rail-step.current .dot { background: var(--blue); color: #fff; }
.mm-plat2 .rail-step.done .dot { background: #eaf1ff; color: var(--blue); }
.mm-plat2 .helpcard { background: #eefbf4; border-color: #e3f5ec; }
.mm-plat2 .helpcard .rail-icon { background: #dcf4e6; color: #238554; }
@media (max-width: 1180px) { .mm-plat2 .mm-plat2-cols { grid-template-columns: 1fr; } }
@media (max-width: 760px) {
  .mm-plat2 .overview-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .mm-plat2 .overview-item:nth-child(n) { border: 0; padding-left: 0; }
  .mm-plat2 .overview-item:nth-child(2n) { padding-left: 10px; border-left: 1px solid #edf0f7; }
}
/*__MM_TOPBAR_BLOCK_END__*/

/* ===== Redesigned Plan step (scoped .mm-plan-v2, site blue system, no purple,
   no emoji, inline SVG, Plus Jakarta Sans). Self-contained with literal fallbacks
   on every var(--...) and explicit flex/min-width on .fact > div so .fact-icon
    stays 30x30px and .fact-value wraps cleanly. ===== */
.vc2-campaign .vc2-card:has(.mm-plan-v2) { background: transparent; border: 0; box-shadow: none; padding: 0; }
#mm-dash-main.vc2-campaign:has(.mm-plan-v2) { background: #f4f5f6; }
.mm-plan-v2 { --blue:#3F51B5; --blue-2:#303F9F; --blue-dark:#303F9F; --ink:#1f2430; --ink-2:#5b6472; --muted:#5b6472; --line:#e6ecf4; --bg:#f4f5f6; --soft:#f4f5f6; --chip:#e9ecfb; font-family:"Plus Jakarta Sans",system-ui,-apple-system,Segoe UI,Roboto,sans-serif; color:var(--ink, #1f2430); max-width:1180px; margin:0 auto; padding:4px 0 32px; }
.mm-plan-v2 *, .mm-plan-v2 *::before, .mm-plan-v2 *::after { box-sizing:border-box; }
.mm-plan-v2 svg { width:16px; height:16px; flex:0 0 auto; stroke:currentColor; fill:none; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.mm-plan-v2 .crumb { font-size:.82rem; color:var(--ink-2, #5b6472); display:flex; gap:6px; align-items:center; flex-wrap:wrap; margin:0 0 14px; }
.mm-plan-v2 .crumb span { color:#9aa1ad; }
.mm-plan-v2 .crumb strong { color:var(--ink, #1f2430); font-weight:700; }
.mm-plan-v2 .page-title-row { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; margin:0 0 6px; }
.mm-plan-v2 .page-eyebrow { font-size:0.75rem; letter-spacing:.08em; text-transform:uppercase; color:var(--blue, #3F51B5); font-weight:700; margin:0 0 4px; }
.mm-plan-v2 h1 { font-size:1.6rem; font-weight:750; margin:0; line-height:1.2; color:var(--ink, #1f2430); }
.mm-plan-v2 .lede { color:var(--ink-2, #5b6472); font-size:.92rem; margin:4px 0 20px; max-width:70ch; }
.mm-plan-v2 .btn { display:inline-flex; align-items:center; gap:8px; border:1px solid var(--line, #e6ecf4); background:#fff; color:var(--ink, #1f2430); font:inherit; font-weight:600; font-size:.86rem; padding:8px 14px; border-radius:9px; cursor:pointer; text-decoration:none; }
.mm-plan-v2 .btn:hover { border-color:#c7ccd6; }
.mm-plan-v2 .btn-primary { background:var(--blue, #3F51B5); border-color:var(--blue, #3F51B5); color:#fff; }
.mm-plan-v2 .btn-primary:hover { background:var(--blue-dark, #303F9F); border-color:var(--blue-dark, #303F9F); }
.mm-plan-v2 .top-save { white-space:nowrap; }
.mm-plan-v2 .plan2-cols { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:20px; align-items:start; }
.mm-plan-v2 .card { background:#fff; border:1px solid var(--line, #e6ecf4); border-radius:14px; padding:18px; margin:0 0 16px; }
.mm-plan-v2 .card-head { display:flex; align-items:center; justify-content:space-between; gap:12px; margin:0 0 14px; }
.mm-plan-v2 .card-title { display:flex; align-items:center; gap:10px; font-weight:700; font-size:1rem; color:var(--ink, #1f2430); }
.mm-plan-v2 .square-icon { display:inline-flex; align-items:center; justify-content:center; width:30px; height:30px; flex:0 0 30px; border-radius:8px; background:#e9ecfb; background-color:var(--chip, #e9ecfb); color:#3F51B5; }
.mm-plan-v2 .card-link { font-size:.82rem; color:var(--blue, #3F51B5); text-decoration:none; font-weight:600; white-space:nowrap; }
.mm-plan-v2 .card-link:hover { color:var(--blue-dark, #303F9F); text-decoration:underline; }
.mm-plan-v2 .note { color:var(--ink-2, #5b6472); font-size:.82rem; margin:14px 0 0; line-height:1.5; }
.mm-plan-v2 .fact-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.mm-plan-v2 .fact { display:flex; gap:10px; align-items:flex-start; min-width:0; padding:10px 12px; border:1px solid var(--line, #e6ecf4); border-radius:10px; background:var(--bg, #f4f5f6); }
.mm-plan-v2 .fact > div { flex:1 1 auto; min-width:0; }
.mm-plan-v2 .fact-icon { display:flex; align-items:center; justify-content:center; width:30px !important; height:30px; flex:0 0 30px; border-radius:8px; background:#fff; border:1px solid #e6ecf4; border-color:var(--line, #e6ecf4); color:#3F51B5; }
.mm-plan-v2 .fact-icon svg { width:16px; height:16px; color:inherit; stroke:currentColor; }
.mm-plan-v2 .fact-label { font-size:12px; text-transform:uppercase; letter-spacing:.05em; color:var(--ink-2, #5b6472); font-weight:700; line-height:1.3; }
.mm-plan-v2 .fact-value { font-size:13px; font-weight:600; color:var(--ink, #1f2430); margin-top:2px; line-height:1.45; word-break:break-word; overflow-wrap:anywhere; }
.mm-plan-v2 .plan-group { margin:0 0 14px; }
.mm-plan-v2 .group-label { font-size:0.75rem; text-transform:uppercase; letter-spacing:.06em; color:var(--ink-2, #5b6472); font-weight:700; margin:0 0 8px; }
.mm-plan-v2 .planitem { border:1px solid var(--line, #e6ecf4); border-radius:10px; margin:0 0 8px; background:#fff; overflow:hidden; }
.mm-plan-v2 .planitem > summary { display:flex; align-items:center; gap:10px; padding:12px; cursor:pointer; list-style:none; }
.mm-plan-v2 .planitem > summary::-webkit-details-marker { display:none; }
.mm-plan-v2 .pi-icon { display:inline-flex; align-items:center; justify-content:center; width:28px; height:28px; border-radius:7px; background:var(--chip, #e9ecfb); color:var(--blue, #3F51B5); flex:0 0 28px; }
.mm-plan-v2 .pi-head { flex:1 1 auto; min-width:0; }
.mm-plan-v2 .pi-title { display:flex; align-items:center; gap:8px; font-weight:650; font-size:.9rem; }
.mm-plan-v2 .pi-preview { display:block; color:var(--ink-2, #5b6472); font-size:.8rem; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; margin-top:2px; }
.mm-plan-v2 .planitem[open] .pi-preview { display:none; }
.mm-plan-v2 .pi-chev { transition:transform .15s ease; color:var(--ink-2, #5b6472); }
.mm-plan-v2 .planitem[open] .pi-chev { transform:rotate(180deg); }
.mm-plan-v2 .pi-detail { padding:0 12px 14px 50px; color:var(--ink, #1f2430); font-size:.86rem; line-height:1.55; white-space:pre-wrap; word-break:break-word; }
.mm-plan-v2 .chip { display:inline-flex; align-items:center; gap:6px; padding:3px 10px; border-radius:999px; font-size:0.75rem; font-weight:650; }
.mm-plan-v2 .chip-ok { background:#e6f4ea; color:#1f7a3d; }
.mm-plan-v2 .chip-neutral { background:var(--chip, #e9ecfb); color:var(--blue-dark, #303F9F); }
.mm-plan-v2 .chip-warn { background:#fdf0d5; color:#8a5a00; }
.mm-plan-v2 .status-card .card-title { margin-bottom:10px; }
.mm-plan-v2 #plan2-expand { border:1px solid var(--line, #e6ecf4); background:#fff; color:var(--blue, #3F51B5); font:inherit; font-weight:600; font-size:.8rem; padding:6px 10px; border-radius:8px; cursor:pointer; }
.mm-plan-v2 #plan2-expand:hover { border-color:#c7ccd6; }
.mm-plan-v2 .plan2-actions { display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap; margin-top:14px; }
.mm-plan-v2 .plan2-actions-end { display:flex; gap:10px; flex-wrap:wrap; }
.mm-plan-v2 .rail-card { padding:16px; }
.mm-plan-v2 .rail-head { display:flex; align-items:center; gap:8px; font-weight:700; font-size:.92rem; margin:0 0 8px; }
.mm-plan-v2 .rail-icon { display:inline-flex; align-items:center; justify-content:center; width:28px; height:28px; flex:0 0 28px; border-radius:7px; background:var(--chip, #e9ecfb); color:var(--blue, #3F51B5); }
.mm-plan-v2 .rail-copy { color:var(--ink-2, #5b6472); font-size:.82rem; margin:0; line-height:1.5; }
.mm-plan-v2 .rail-card ul { margin:0; padding-left:18px; color:var(--ink-2, #5b6472); font-size:.82rem; display:flex; flex-direction:column; gap:6px; }
.mm-plan-v2 .progress-top { display:flex; align-items:center; justify-content:space-between; font-size:.82rem; color:var(--ink-2, #5b6472); margin:0 0 8px; }
.mm-plan-v2 .progress-top strong { color:var(--ink, #1f2430); }
.mm-plan-v2 .progress-track { height:7px; border-radius:999px; background:var(--chip, #e9ecfb); overflow:hidden; margin:0 0 14px; }
.mm-plan-v2 .progress-fill { height:100%; background:var(--blue, #3F51B5); border-radius:999px; }
.mm-plan-v2 .rail-step { display:flex; align-items:center; gap:10px; padding:5px 0; font-size:.84rem; color:var(--ink-2, #5b6472); }
.mm-plan-v2 .rail-step .dot { display:inline-flex; align-items:center; justify-content:center; width:22px; height:22px; border-radius:999px; background:var(--bg, #f4f5f6); border:1px solid var(--line, #e6ecf4); font-size:0.75rem; font-weight:700; color:var(--ink-2, #5b6472); flex:0 0 22px; }
.mm-plan-v2 .rail-step.current { color:var(--ink, #1f2430); font-weight:700; }
.mm-plan-v2 .rail-step.current .dot { background:var(--blue, #3F51B5); border-color:var(--blue, #3F51B5); color:#fff; }
.mm-plan-v2 .rail-step.done .dot { background:#e6f4ea; border-color:#bfe3c9; color:#1f7a3d; }
@media (max-width: 900px) { .mm-plan-v2 .plan2-cols { grid-template-columns:1fr; } .mm-plan-v2 .fact-grid { grid-template-columns:1fr; } }
/* ===== end .mm-plan-v2 ===== */

/* ===== Standalone 2-column shell for /data-sources & /source-intelligence ===== */
html.mm-campaign-direct #mm-dash-layout.mm-shell.mm-standalone-shell,
body.mm-campaign-open #mm-dash-layout.mm-shell.mm-standalone-shell {
  grid-template-columns: 250px minmax(0, 1fr) !important;
}
#mm-dash-layout.mm-standalone-shell #mm-dash-sub { display: none !important; }

/* ===== Campaign 'Use data sources' optional picker & Evidence summary ===== */
.mm-plat2 .mm-camp-ds-card { margin-top: 14px; padding: 15px 18px; }
.mm-plat2 .mm-camp-ds-head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; flex-wrap:wrap; margin-bottom:10px; }
.mm-plat2 .mm-camp-ds-sub { margin:2px 0 0 42px; font-size:12px; color:#687791; line-height:1.5; }
.mm-plat2 .mm-camp-ds-list { display:flex; flex-direction:column; border-top:1px solid #edf0f7; margin-top:8px; }
.mm-plat2 .mm-camp-ds-row { display:grid; grid-template-columns:28px minmax(190px,1.3fr) minmax(160px,1fr) minmax(160px,1.2fr); gap:14px; align-items:center; padding:11px 6px; border-bottom:1px solid #edf0f7; height:auto !important; }
.mm-plat2 .mm-camp-ds-row:last-child { border-bottom:0; }
.mm-plat2 .mm-camp-ds-check { width:16px; height:16px; accent-color:var(--blue, #3F51B5); cursor:pointer; margin:0; }
.mm-plat2 .mm-camp-ds-empty { padding:14px 16px; background:#f8faff; border:1px dashed #d6e0f5; border-radius:9px; color:#52607a; font-size:12px; display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; }
.mm-plat2 .mm-camp-ds-badge { display:inline-flex; align-items:center; gap:5px; padding:3px 8px; border-radius:6px; font-size:12px; font-weight:750; background:#eff3f9; color:#52607a; }
.mm-plat2 .mm-camp-ds-badge.blue { background:#eaf1ff; color:#3F51B5; }
.mm-plat2 .mm-camp-ds-badge.green { background:#e9f7f1; color:#14856b; }
.mm-plat2 .mm-camp-ds-badge.amber { background:#fff6e7; color:#a66b1c; }

/* ===== Standalone Data Sources (/en-ca/data-sources) & Source Intelligence (/en-ca/source-intelligence) ===== */
#mm-dash-main.vc2-campaign:has(.mm-si-root), #mm-dash-main.vc2-campaign:has(.mm-ds-root) { background: #f8fafd; }
.vc2-campaign .vc2-card:has(.mm-si-root), .vc2-campaign .vc2-card:has(.mm-ds-root) { background: transparent; border: 0; box-shadow: none; padding: 0; }
.mm-ds-root { --blue:#1769f5; --blue-dark:#1058de; --ink:#101c35; --muted:#71809b; --border:#e8edf5; --bg:#fafcff; --panel:#fff; --active:#e9f0ff; --shadow:0 3px 16px rgba(27,50,91,.025); color:var(--ink, #101c35); font-family:'Plus Jakarta Sans','Segoe UI',sans-serif; font-size:12px; line-height:1.5; max-width:1150px; margin:0 auto; }
.mm-ds-root *, .mm-ds-root *::before, .mm-ds-root *::after { box-sizing:border-box; }
.mm-ds-root svg { width:17px; height:17px; stroke:currentColor; fill:none; stroke-width:1.85; stroke-linejoin:round; stroke-linecap:round; flex-shrink:0; display:block; }
.mm-ds-root .ds-crumb { color:#8691a6; font-size:12px; font-weight:600; display:flex; gap:7px; align-items:center; justify-content:space-between; flex-wrap:wrap; margin:0 0 12px; }
.mm-ds-root .ds-crumb b { color:#1c5ef0; font-weight:700; }
.mm-ds-root .ds-intro { display:grid; grid-template-columns:minmax(0,1fr) 250px; gap:24px; align-items:start; margin-bottom:12px; }
.mm-ds-root h1 { font-size:24px; letter-spacing:-1px; line-height:1.24; margin:0 0 8px; font-weight:800; color:#0d1830; }
.mm-ds-root .ds-subtitle { margin:0; color:#5b6780; max-width:520px; font-size:12px; line-height:1.65; font-weight:500; }
.mm-ds-root .ds-help-card { border:1px solid #e6edf8; border-radius:10px; padding:14px 16px; background:#f5f9ff; display:flex; gap:12px; min-height:85px; }
.mm-ds-root .ds-help-icon { display:grid; place-items:center; color:#1466fe; width:22px; height:28px; flex-shrink:0; }
.mm-ds-root .ds-help-card h3 { font-size:12px; margin:1px 0 4px; font-weight:800; color:#101c35; }
.mm-ds-root .ds-help-card p { font-size:12px; color:#677692; line-height:1.6; margin:0 0 4px; }
.mm-ds-root .ds-text-link { border:0; background:none; padding:0; color:#1459ee; font-size:12px; font-weight:750; cursor:pointer; }
.mm-ds-root .ds-notice { border:1px solid #dceafa; border-radius:8px; background:#f2f7ff; padding:13px 15px; margin:10px 0 22px; display:flex; gap:11px; align-items:flex-start; justify-content:space-between; flex-wrap:wrap; }
.mm-ds-root .ds-notice-left { display:flex; gap:11px; align-items:flex-start; }
.mm-ds-root .ds-notice .ds-info { width:18px; height:18px; border-radius:50%; background:#1964f7; color:#fff; display:grid; place-items:center; flex:none; font-size:12px; font-weight:800; }
.mm-ds-root .ds-notice strong { display:block; font-size:12px; font-weight:750; line-height:1.4; color:#101c35; }
.mm-ds-root .ds-notice span { display:block; color:#73809a; font-size:12px; margin-top:2px; line-height:1.5; }
.mm-ds-root .ds-heading { display:grid; grid-template-columns:minmax(0,40%) minmax(0,40%) minmax(0,20%); align-items:center; padding:0 6px 7px; gap:8px; color:#5a6782; font-size:12px; font-weight:750; }
.mm-ds-root .ds-heading .ds-enabled-label { padding-left:12px; }
.mm-ds-root .ds-list { display:grid; gap:6px; }
.mm-ds-root .ds-row { display:grid; grid-template-columns:minmax(0,40%) minmax(0,40%) minmax(0,20%); align-items:center; gap:8px; padding:11px 14px 11px 18px; min-height:70px; height:auto !important; background:#fff; border:1px solid #e9edf4; border-radius:10px; box-shadow:var(--shadow); }
.mm-ds-root .ds-row:hover { border-color:#d2def5; }
.mm-ds-root .ds-row.is-disabled .ds-keyword { opacity:.65; }
.mm-ds-root .ds-identity { display:flex; align-items:center; gap:15px; min-width:0; padding-right:7px; }
.mm-ds-root .ds-logo { width:34px; height:34px; flex:0 0 34px; border-radius:8px; background:#eaf1ff; color:#1769f5; display:grid; place-items:center; font-weight:800; font-size:12px; }
.mm-ds-root .ds-text { min-width:0; }
.mm-ds-root .ds-text strong { font-weight:800; font-size:12px; display:block; margin-bottom:3px; line-height:1.25; color:#13213b; }
.mm-ds-root .ds-text span { display:block; color:#75839d; font-size:12px; line-height:1.5; font-weight:500; }
.mm-ds-root .ds-keyword { height:36px; border:1px solid #e5eaf2; border-radius:7px; display:flex; gap:8px; align-items:center; padding:0 11px; min-width:0; background:#fff; margin:0; }
.mm-ds-root .ds-keyword:focus-within { border-color:#95b8ff; box-shadow:0 0 0 3px #e8f0ff; }
.mm-ds-root .ds-keyword svg { color:#8190ad; width:15px; height:15px; }
.mm-ds-root .ds-keyword input { background:transparent; border:0; outline:0; flex:1; min-width:0; width:100%; font-size:12px; color:#273552; padding:0; }
.mm-ds-root .ds-radio-set { display:flex; justify-content:space-evenly; align-items:center; gap:12px; padding-left:7px; }
.mm-ds-root .ds-radio-opt { display:inline-flex; align-items:center; gap:7px; white-space:nowrap; font-size:12px; font-weight:700; color:#30405b; cursor:pointer; margin:0; }
.mm-ds-root .ds-radio-opt input { width:15px; height:15px; accent-color:#1164f6; margin:0; cursor:pointer; }
.mm-ds-root .ds-save-note { border:1px solid #dae9fb; background:#f2f8ff; border-radius:8px; padding:13px 16px; margin-top:18px; display:flex; gap:14px; align-items:center; }
.mm-ds-root .ds-save-note strong { font-size:12px; font-weight:800; display:block; color:#101c35; }
.mm-ds-root .ds-save-note span { font-size:12px; color:#74819a; display:block; margin-top:3px; }
.mm-ds-root .ds-footer-actions { display:flex; align-items:center; gap:14px; margin-top:16px; flex-wrap:wrap; }
.mm-ds-root .ds-btn { border:1px solid #e4e9f2; background:#fff; border-radius:7px; font-weight:750; font-size:12px; min-height:37px; padding:0 16px; color:#22324f; display:inline-flex; align-items:center; justify-content:center; gap:8px; cursor:pointer; text-decoration:none; }
.mm-ds-root .ds-btn:hover { background:#f5f8ff; }
.mm-ds-root .ds-btn-primary { border:0; background:#1264f3; color:#fff; box-shadow:0 3px 9px rgba(18,100,243,.16); }
.mm-ds-root .ds-btn-primary:hover { background:#0d57da; }
.mm-ds-root .ds-spacer { flex:1; }
.mm-ds-root .ds-reset-btn { border:0; background:transparent; color:#1c5ede; text-decoration:underline; font-size:12px; font-weight:750; padding:7px 5px; cursor:pointer; }
.mm-ds-root .ds-mini-status { font-size:12px; color:#7482a0; text-align:right; margin-top:10px; min-height:15px; }

.mm-si-root { --si-navy:#111d35; --si-blue:#2468ed; --si-blue2:#1658d8; --si-muted:#71809a; --si-line:#e6ecf4; --si-bg:#f8fafd; --si-soft:#f2f6fd; --si-blue-soft:#eaf1ff; --si-green:#14856b; --si-green-bg:#e9f7f1; --si-amber:#a66b1c; --si-amber-bg:#fff6e7; --si-red:#bd5360; --si-red-bg:#fff0f0; color:var(--si-navy, #111d35); font-family:'Plus Jakarta Sans','Segoe UI',sans-serif; font-size:12px; line-height:1.5; max-width:1420px; margin:0 auto; }
.mm-si-root *, .mm-si-root *::before, .mm-si-root *::after { box-sizing:border-box; }
.mm-si-root svg { width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; flex-shrink:0; }
.mm-si-root .si-crumb { display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; font-size:12px; color:#8491a8; font-weight:600; margin-bottom:12px; }
.mm-si-root .si-crumb b { color:var(--si-blue, #2468ed); }
.mm-si-root .si-heading-line { display:flex; align-items:flex-start; gap:20px; justify-content:space-between; flex-wrap:wrap; margin-bottom:14px; }
.mm-si-root .si-eyebrow { font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:1.2px; color:#3F51B5; margin-bottom:6px; }
.mm-si-root h1 { font-size:26px; line-height:1.22; margin:0 0 6px; letter-spacing:-.9px; font-weight:800; color:#0d1830; }
.mm-si-root .si-introcopy { font-size:12px; color:#64748b; max-width:720px; line-height:1.65; margin:0; }
.mm-si-root .si-heading-buttons { display:flex; gap:8px; flex-wrap:wrap; align-items:center; }
.mm-si-root .si-btn { border:1px solid #dfe7f3; background:#fff; color:#1e293b; border-radius:8px; padding:8px 13px; font-size:12px; font-weight:750; display:inline-flex; justify-content:center; align-items:center; gap:7px; white-space:nowrap; min-height:35px; cursor:pointer; text-decoration:none; }
.mm-si-root .si-btn:hover:not(:disabled) { background:#f3f7fe; }
.mm-si-root .si-btn.primary { border-color:var(--si-blue, #2468ed); background:var(--si-blue, #2468ed); color:#fff; box-shadow:0 3px 9px rgba(36,104,237,.15); }
.mm-si-root .si-btn.primary:hover:not(:disabled) { background:var(--si-blue2, #1658d8); }
.mm-si-root .si-btn.tiny { padding:5px 9px; min-height:28px; font-size:12px; border-radius:7px; }
.mm-si-root .si-notice { display:flex; align-items:flex-start; gap:11px; background:#eef5ff; border:1px solid #dce8fa; border-radius:10px; padding:12px 15px; margin:0 0 18px; }
.mm-si-root .si-notice svg { color:#1c66d8; margin-top:2px; }
.mm-si-root .si-notice b { display:block; font-size:12px; color:#111d35; }
.mm-si-root .si-notice p { color:#5b6b84; margin:2px 0 0; font-size:12px; line-height:1.5; }
.mm-si-root .si-tag { display:inline-flex; align-items:center; gap:5px; border-radius:7px; padding:4px 8px; background:#eff3f9; color:#5b677d; font-weight:800; font-size:12px; white-space:nowrap; }
.mm-si-root .si-tag.blue { background:var(--si-blue-soft, #eaf1ff); color:#185edb; }
.mm-si-root .si-tag.green { background:var(--si-green-bg, #e9f7f1); color:var(--si-green, #14856b); }
.mm-si-root .si-tag.amber { background:var(--si-amber-bg, #fff6e7); color:var(--si-amber, #a66b1c); }
.mm-si-root .si-tag.red { background:var(--si-red-bg, #fff0f0); color:var(--si-red, #bd5360); }
.mm-si-root .si-kpis { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-bottom:18px; }
.mm-si-root .si-metric { background:#fff; border:1px solid var(--si-line, #e6ecf4); border-radius:11px; padding:15px 16px; display:flex; align-items:flex-start; gap:12px; min-width:0; }
.mm-si-root .si-micon { width:36px; height:36px; border-radius:9px; background:#edf4ff; display:grid; place-items:center; color:#2367e8; flex-shrink:0; }
.mm-si-root .si-klabel { font-size:12px; color:#64748b; font-weight:700; }
.mm-si-root .si-num { font-size:22px; font-weight:800; letter-spacing:-.8px; margin:1px 0; color:#0f172a; }
.mm-si-root .si-small { font-size:12px; color:#8492a6; }
.mm-si-root .si-workspace { background:#fff; border:1px solid var(--si-line, #e6ecf4); border-radius:13px; min-width:0; overflow:visible; }
.mm-si-root .si-tabs { display:flex; align-items:stretch; gap:22px; border-bottom:1px solid var(--si-line, #e6ecf4); padding:0 20px; overflow-x:auto; }
.mm-si-root .si-tab { background:transparent; border:0; border-bottom:2px solid transparent; padding:15px 2px 13px; font-size:12px; font-weight:800; color:#64748b; white-space:nowrap; display:inline-flex; align-items:center; gap:8px; cursor:pointer; }
.mm-si-root .si-tab.active { color:var(--si-blue, #2468ed); border-bottom-color:var(--si-blue, #2468ed); }
.mm-si-root .si-tab .si-counter { background:#eef3fb; border-radius:6px; color:#5b6b86; padding:1px 6px; font-size:12px; }
.mm-si-root .si-tab.active .si-counter { background:#e5eeff; color:#1558d4; }
.mm-si-root .si-workgrid { display:grid; grid-template-columns:238px minmax(0,1fr) 260px; min-height:620px; align-items:start; }
.mm-si-root .si-explorer { border-right:1px solid var(--si-line, #e6ecf4); padding:16px 11px; background:#fcfdff; min-width:0; }
.mm-si-root .si-exp-head { padding:0 6px; margin-bottom:10px; }
.mm-si-root .si-exp-title { font-size:12px; font-weight:800; color:#1e293b; }
.mm-si-root .si-exp-hint { font-size:12px; color:#7c8ba1; margin-top:2px; }
.mm-si-root .si-exp-search { width:100%; border:1px solid var(--si-line, #e6ecf4); background:#fff; border-radius:8px; margin-top:9px; padding:6px 9px; display:flex; align-items:center; gap:7px; }
.mm-si-root .si-exp-search input { width:100%; border:0; outline:0; min-width:0; font-size:12px; background:transparent; padding:0; }
.mm-si-root .si-exp-group { font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:.06em; color:#7c8ba1; margin:12px 6px 5px; }
.mm-si-root .si-source-entry { display:flex; align-items:center; gap:9px; border:1px solid transparent; background:transparent; border-radius:8px; text-align:left; width:100%; padding:8px 9px; min-height:50px; margin-bottom:3px; cursor:pointer; color:var(--si-navy, #111d35); }
.mm-si-root .si-source-entry:hover { background:#f1f6ff; }
.mm-si-root .si-source-entry.active { background:#edf4ff; border-color:#d4e3ff; }
.mm-si-root .si-source-icon { width:30px; height:30px; flex-shrink:0; border-radius:8px; display:grid; place-items:center; font-size:12px; font-weight:800; color:#2b59c3; background:#eaf1fc; }
.mm-si-root .si-source-name { font-size:12px; font-weight:800; display:block; color:#111d35; line-height:1.25; }
.mm-si-root .si-source-entry small { display:block; font-size:12px; margin-top:2px; color:#7c8ba1; line-height:1.3; }
.mm-si-root .si-dot { width:7px; height:7px; border-radius:50%; background:#c4cedd; margin-left:auto; flex-shrink:0; }
.mm-si-root .si-dot.connected { background:#14856b; }
.mm-si-root .si-dot.public { background:#2468ed; }
.mm-si-root .si-dot.blocked { background:#d97706; }
.mm-si-root .si-detailpanel { min-width:0; padding:20px 22px 28px; border-right:1px solid var(--si-line, #e6ecf4); }
.mm-si-root .si-detail-head { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; margin-bottom:18px; flex-wrap:wrap; }
.mm-si-root .si-detail-head h2 { font-size:19px; line-height:1.2; margin:0 0 5px; font-weight:800; color:#0f172a; }
.mm-si-root .si-detail-head p { color:#64748b; font-size:12px; margin:0; line-height:1.55; }
.mm-si-root .si-chips { display:flex; flex-wrap:wrap; gap:6px; margin-top:8px; }
.mm-si-root .si-meta-row { display:flex; gap:14px; flex-wrap:wrap; margin-top:9px; color:#64748b; font-size:12px; }
.mm-si-root .si-meta-row span { display:inline-flex; gap:5px; align-items:center; }
.mm-si-root .si-card { border:1px solid var(--si-line, #e6ecf4); background:#fff; border-radius:10px; margin-bottom:14px; overflow:visible; }
.mm-si-root .si-card-head { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:13px 16px; border-bottom:1px solid #eff3f8; flex-wrap:wrap; }
.mm-si-root .si-card-head h3 { font-size:12px; font-weight:800; margin:0; display:flex; align-items:center; gap:7px; color:#111d35; }
.mm-si-root .si-card-head p { font-size:12px; color:#7c8ba1; margin:2px 0 0; }
.mm-si-root .si-card-pad { padding:14px 16px; }
.mm-si-root .si-data-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.mm-si-root .si-data-stat { background:#f8fafd; border:1px solid #edf2f8; border-radius:9px; padding:11px 13px; }
.mm-si-root .si-data-stat span { display:block; font-size:12px; color:#64748b; font-weight:700; }
.mm-si-root .si-data-stat strong { display:block; font-size:18px; font-weight:800; margin:2px 0; color:#0f172a; }
.mm-si-root .si-data-stat small { display:block; font-size:12px; color:#8492a6; }
.mm-si-root .si-div-table { display:flex; flex-direction:column; width:100%; }
.mm-si-root .si-div-thead { display:grid; grid-template-columns:1.3fr 0.8fr 1.2fr 0.9fr; gap:12px; padding:9px 16px; background:#f5f8fc; border-bottom:1px solid var(--si-line, #e6ecf4); font-size:12px; font-weight:800; color:#334155; }
.mm-si-root .si-div-trow { display:grid; grid-template-columns:1.3fr 0.8fr 1.2fr 0.9fr; gap:12px; padding:12px 16px; border-bottom:1px solid #eff3f8; align-items:start; font-size:12px; height:auto !important; }
.mm-si-root .si-div-trow:last-child { border-bottom:0; }
.mm-si-root .si-div-thead.cols-3, .mm-si-root .si-div-trow.cols-3 { grid-template-columns:1.1fr 1.4fr 0.8fr; }
.mm-si-root .si-emptybox { padding:24px 18px; text-align:center; color:#64748b; }
.mm-si-root .si-emptybox b { display:block; font-size:12px; color:#1e293b; margin:6px 0 4px; }
.mm-si-root .si-emptybox p { margin:0 auto; max-width:460px; font-size:12px; line-height:1.55; }
.mm-si-root .si-restricted-row { display:flex; align-items:flex-start; gap:11px; padding:10px 0; border-bottom:1px solid #eff3f8; }
.mm-si-root .si-restricted-row:last-child { border-bottom:0; }
.mm-si-root .si-restricted-row b { display:block; font-size:12px; color:#1e293b; }
.mm-si-root .si-restricted-row p { margin:2px 0 0; font-size:12px; color:#64748b; line-height:1.5; }
.mm-si-root .si-summaryline { display:flex; justify-content:space-between; align-items:center; gap:10px; padding:7px 0; border-bottom:1px solid #f1f5f9; font-size:12px; }
.mm-si-root .si-summaryline:last-child { border-bottom:0; }
.mm-si-root .si-summaryline span { color:#64748b; }
.mm-si-root .si-summaryline b { color:#0f172a; font-weight:750; text-align:right; }
.mm-si-root .si-setting-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-top:10px; }
.mm-si-root .si-field { display:flex; flex-direction:column; gap:5px; margin-bottom:8px; }
.mm-si-root .si-field span { font-size:12px; font-weight:750; color:#334155; }
.mm-si-root .si-field input, .mm-si-root .si-field select, .mm-si-root .si-field textarea { width:100%; border:1px solid #dce4f0; border-radius:7px; padding:7px 10px; font-size:12px; color:#0f172a; background:#fff; }
.mm-si-root .si-setting-line { display:flex; justify-content:space-between; align-items:center; gap:14px; padding:10px 0; border-bottom:1px solid #f1f5f9; }
.mm-si-root .si-setting-line:last-child { border-bottom:0; }
.mm-si-root .si-setting-line b { display:block; font-size:12px; color:#1e293b; }
.mm-si-root .si-setting-line p { margin:2px 0 0; font-size:12px; color:#64748b; }
.mm-si-root .si-insight-card { border:1px solid #e6edf8; background:#fff; border-radius:10px; padding:14px; margin-bottom:10px; }
.mm-si-root .si-insight-top { display:flex; justify-content:space-between; align-items:flex-start; gap:10px; }
.mm-si-root .si-insight-card h4 { font-size:12px; margin:0 0 4px; color:#0f172a; font-weight:800; }
.mm-si-root .si-insight-card p { font-size:12px; color:#475569; line-height:1.6; margin:6px 0 10px; }
.mm-si-root .si-insight-meta { font-size:12px; color:#64748b; margin-top:8px; display:flex; align-items:center; gap:6px; flex-wrap:wrap; }
.mm-si-root .si-task-group { margin-bottom:16px; }
.mm-si-root .si-task-group-head { display:flex; justify-content:space-between; align-items:center; background:#f5f8fd; border-radius:8px; padding:9px 12px; margin-bottom:6px; font-size:12px; font-weight:800; }
.mm-si-root .si-task-row { display:flex; gap:11px; align-items:flex-start; border-bottom:1px solid #edf1f7; padding:11px 4px; }
.mm-si-root .si-task-row:last-child { border-bottom:0; }
.mm-si-root .si-rightpanel { padding:16px 14px; background:#fcfdff; min-width:0; display:flex; flex-direction:column; gap:12px; }
.mm-si-root .si-rightcard { border:1px solid var(--si-line, #e6ecf4); background:#fff; border-radius:10px; padding:13px 14px; }
.mm-si-root .si-rhead { font-size:12px; font-weight:800; color:#111d35; display:flex; align-items:center; gap:7px; margin-bottom:9px; }
.mm-si-root .si-rbody { font-size:12px; color:#5b6b84; line-height:1.6; }
.mm-si-root .si-rbody p { margin:0 0 7px; }
.mm-si-root .si-action-list { display:flex; flex-direction:column; gap:6px; }
.mm-si-root .si-action-list button { width:100%; text-align:left; border:1px solid #e2e8f0; background:#f8fafc; border-radius:7px; padding:7px 10px; font-size:12px; font-weight:750; color:#1e293b; display:flex; align-items:center; gap:7px; cursor:pointer; }
.mm-si-root .si-action-list button:hover { background:#edf4ff; border-color:#c7dbfa; color:var(--si-blue, #2468ed); }
.mm-si-modal-veil { position:fixed; inset:0; background:rgba(14,29,55,.35); z-index:90; display:flex; align-items:center; justify-content:center; padding:16px; }
.mm-si-modal { width:min(100%, 480px); background:#fff; border:1px solid #e4eaf2; border-radius:14px; padding:22px; box-shadow:0 24px 70px rgba(12,25,57,.24); font-family:'Plus Jakarta Sans','Segoe UI',sans-serif; color:#101c35; }
.mm-si-modal h2 { font-size:18px; margin:0 0 8px; font-weight:800; }
.mm-si-modal p, .mm-si-modal li { font-size:12px; color:#5b6b84; line-height:1.7; }
@media (max-width: 1120px) {
  .mm-si-root .si-workgrid { grid-template-columns:200px minmax(0,1fr); }
  .mm-si-root .si-rightpanel { grid-column:1 / -1; border-top:1px solid var(--si-line, #e6ecf4); display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }
  .mm-si-root .si-kpis { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 880px) {
  .mm-ds-root .ds-intro { grid-template-columns:1fr; }
  .mm-ds-root .ds-heading { display:none; }
  .mm-ds-root .ds-row { grid-template-columns:1fr; gap:10px; }
  .mm-plat2 .mm-camp-ds-row { grid-template-columns:28px 1fr; }
}
@media (max-width: 780px) {
  .mm-si-root .si-workgrid { grid-template-columns:1fr; }
  .mm-si-root .si-explorer { border-right:0; border-bottom:1px solid var(--si-line, #e6ecf4); }
  .mm-si-root .si-detailpanel { border-right:0; }
  .mm-si-root .si-rightpanel { grid-template-columns:1fr; }
  .mm-si-root .si-div-thead { display:none; }
  .mm-si-root .si-div-trow, .mm-si-root .si-div-trow.cols-3 { grid-template-columns:1fr; gap:8px; }
  .mm-si-root .si-setting-grid, .mm-si-root .si-data-grid { grid-template-columns:1fr; }
}
/* ===== end .mm-si-root / .mm-ds-root ===== */

/* ===== Multi-instance & Source Detail Link Styles ===== */
.mm-ds-root .ds-source-block { display:flex; flex-direction:column; background:#fff; border:1px solid #e9edf4; border-radius:10px; box-shadow:var(--shadow, 0 3px 16px rgba(27,50,91,.025)); overflow:visible; transition:border-color .2s; }
.mm-ds-root .ds-source-block:hover { border-color:#d2def5; }
.mm-ds-root .ds-source-block .ds-row { border:0; box-shadow:none; border-radius:10px; }
.mm-ds-root .ds-title-row { display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin-bottom:3px; }
.mm-ds-root a.ds-detail-link { display:inline-flex; align-items:center; gap:8px; color:#13213b; text-decoration:none; font-weight:800; font-size:12px; cursor:pointer; }
.mm-ds-root a.ds-detail-link:hover { color:#1769f5; }
.mm-ds-root .ds-view-affordance { font-size:12px; font-weight:750; color:#1769f5; background:#eef4ff; padding:2px 7px; border-radius:5px; white-space:nowrap; }
.mm-ds-root .ds-inst-badge { font-size:12px; font-weight:750; color:#334155; background:#f1f5f9; padding:2px 7px; border-radius:5px; white-space:nowrap; }
.mm-ds-root .ds-inst-panel { border-top:1px solid #eef2f7; background:#fafcff; padding:10px 18px 12px 58px; display:flex; flex-direction:column; gap:8px; border-radius:0 0 10px 10px; }
.mm-ds-root .ds-inst-item { display:grid; grid-template-columns:minmax(130px,1fr) minmax(170px,1.4fr) minmax(140px,1.1fr) auto; gap:8px; align-items:center; background:#fff; border:1px solid #e5eaf2; border-radius:8px; padding:7px 10px; }
.mm-ds-root .ds-inst-item input[type="text"] { width:100%; border:1px solid #dce4f0; border-radius:6px; padding:5px 8px; font-size:12px; color:#1e293b; background:#fff; }
.mm-ds-root .ds-inst-actions { display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap; margin-top:2px; }
.mm-ds-root .ds-add-inst-btn { border:1px dashed #b9cef5; background:#f4f8ff; color:#1459ee; border-radius:7px; padding:5px 10px; font-size:12px; font-weight:750; cursor:pointer; display:inline-flex; align-items:center; gap:5px; }
.mm-ds-root .ds-add-inst-btn:hover { background:#e8f0ff; }
.mm-si-root .si-inst-sublist { display:flex; flex-direction:column; gap:2px; padding:2px 0 6px 26px; }
.mm-si-root .si-inst-entry { display:flex; align-items:center; justify-content:space-between; gap:6px; border:1px solid transparent; background:transparent; border-radius:7px; padding:5px 8px; font-size:12px; font-weight:650; color:#475569; text-align:left; cursor:pointer; width:100%; }
.mm-si-root .si-inst-entry:hover { background:#f1f6ff; color:#1e293b; }
.mm-si-root .si-inst-entry.active { background:#e5eeff; border-color:#c7dbfa; color:#1658d8; font-weight:800; }
@media (max-width: 880px) {
  .mm-ds-root .ds-inst-panel { padding-left:14px; }
  .mm-ds-root .ds-inst-item { grid-template-columns:1fr; }
}

/* ===== Connect / Disconnect Buttons & Analysis Studio (.mm-as-root) ===== */
#mm-dash-main.vc2-campaign:has(.mm-as-root) { background: #f7f9fc; }
.vc2-campaign .vc2-card:has(.mm-as-root) { background: transparent; border: 0; box-shadow: none; padding: 0; }
.si-conn-bar { display:inline-flex; align-items:center; gap:6px; flex-wrap:wrap; }
.si-btn.danger { border-color:#f3c6cb; background:#fff5f6; color:#b4232c; }
.si-btn.danger:hover:not(:disabled) { background:#ffe8eb; }
.mm-as-root { --as-bg:#f7f9fc; --as-white:#fff; --as-ink:#14213b; --as-muted:#64748b; --as-line:#e6ebf4; --as-line2:#dbe3f0; --as-blue:#2466e8; --as-soft:#eef4ff; --as-green:#13805c; --as-amber:#a66b1c; --as-red:#b65362; color:var(--as-ink, #14213b); font-family:'Plus Jakarta Sans','Segoe UI',sans-serif; font-size:13px; line-height:1.55; max-width:1420px; margin:0 auto; }
.mm-as-root *, .mm-as-root *::before, .mm-as-root *::after { box-sizing:border-box; }
.mm-as-root svg { width:17px; height:17px; stroke:currentColor; stroke-width:1.8; fill:none; stroke-linecap:round; stroke-linejoin:round; flex-shrink:0; }
.mm-as-root .as-breadcrumb { color:#7c8ba1; font-size:12px; font-weight:600; margin-bottom:12px; display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap; }
.mm-as-root .as-breadcrumb b { color:var(--as-blue, #2466e8); }
.mm-as-root .as-subnav { display:inline-flex; gap:4px; background:#edf2fa; padding:3px; border-radius:9px; flex-wrap:wrap; }
.mm-as-root .as-subnav a { padding:6px 11px; border-radius:7px; font-size:12px; font-weight:750; color:#475569; text-decoration:none; }
.mm-as-root .as-subnav a.active { background:#fff; color:var(--as-blue, #2466e8); box-shadow:0 2px 5px rgba(20,33,59,.06); }
.mm-as-root .as-header { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; margin-bottom:20px; flex-wrap:wrap; }
.mm-as-root .as-eyebrow { font-size:12px; color:#3F51B5; letter-spacing:1px; text-transform:uppercase; font-weight:800; margin-bottom:5px; }
.mm-as-root .as-header h1 { font-size:28px; letter-spacing:-1px; margin:0 0 5px; line-height:1.22; font-weight:800; color:#0f172a; }
.mm-as-root .as-sub { color:#64748b; font-size:12px; max-width:720px; line-height:1.65; margin:0; }
.mm-as-root .as-actions { display:flex; gap:8px; align-items:center; flex-wrap:wrap; }
.mm-as-root .as-btn { display:inline-flex; gap:7px; align-items:center; justify-content:center; border-radius:9px; min-height:36px; padding:8px 14px; border:1px solid var(--as-line2, #dbe3f0); background:#fff; color:#1b3053; font-size:12px; font-weight:800; white-space:nowrap; cursor:pointer; text-decoration:none; }
.mm-as-root .as-btn:hover:not(:disabled) { background:#f3f7ff; }
.mm-as-root .as-btn.blue { background:var(--as-blue, #2466e8); color:#fff; border-color:var(--as-blue, #2466e8); box-shadow:0 4px 11px rgba(36,102,232,.14); }
.mm-as-root .as-btn.blue:hover:not(:disabled) { background:#1557d2; }
.mm-as-root .as-btn.small { min-height:30px; padding:5px 10px; font-size:12px; border-radius:7px; }
.mm-as-root .as-box { border:1px solid var(--as-line, #e6ebf4); border-radius:13px; background:#fff; box-shadow:0 8px 26px rgba(25,47,92,.03); min-width:0; }
.mm-as-root .as-banner { display:flex; align-items:center; justify-content:space-between; gap:14px; border:1px solid #dce7f8; background:#f0f6ff; border-radius:10px; padding:12px 16px; margin-bottom:18px; flex-wrap:wrap; }
.mm-as-root .as-banner strong { font-size:12px; display:block; color:#14213b; }
.mm-as-root .as-banner p { margin:2px 0 0; font-size:12px; color:#5b6b84; }
.mm-as-root .as-kpis { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-bottom:20px; }
.mm-as-root .as-kpi { padding:15px 16px; display:flex; gap:12px; align-items:flex-start; }
.mm-as-root .as-ki { width:36px; height:36px; border-radius:10px; display:grid; place-items:center; background:#edf4ff; color:var(--as-blue, #2466e8); flex-shrink:0; }
.mm-as-root .as-kpi label { color:#64748b; font-size:12px; font-weight:700; display:block; }
.mm-as-root .as-kpi .as-val { font-size:22px; letter-spacing:-.7px; font-weight:800; line-height:1.3; color:#0f172a; }
.mm-as-root .as-kpi small { color:#8492a6; font-size:12px; display:block; }
.mm-as-root .as-two { display:grid; grid-template-columns:minmax(0,1fr) 290px; gap:16px; align-items:start; }
.mm-as-root .as-panelhead { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:18px 20px 12px; flex-wrap:wrap; }
.mm-as-root .as-panelhead h2 { font-size:15.5px; margin:0; font-weight:800; color:#0f172a; }
.mm-as-root .as-panelhead p { font-size:12px; color:#64748b; margin:2px 0 0; }
.mm-as-root .as-catalog { padding:4px 18px 18px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.mm-as-root .as-modulecard { text-align:left; background:#fff; border:1px solid var(--as-line, #e6ebf4); border-radius:11px; padding:16px; min-height:152px; display:flex; flex-direction:column; align-items:flex-start; cursor:pointer; transition:border-color .15s, box-shadow .15s; }
.mm-as-root .as-modulecard:hover { border-color:#95b6f1; box-shadow:0 6px 16px rgba(53,104,179,.08); }
.mm-as-root .as-moduleicon { display:grid; place-items:center; width:35px; height:35px; border-radius:9px; background:#f0f5ff; color:#2466e8; margin-bottom:12px; }
.mm-as-root .as-modulecard strong { font-size:12px; color:#0f172a; font-weight:800; }
.mm-as-root .as-modulecard .as-desc { color:#64748b; font-size:12px; line-height:1.55; margin:5px 0 10px; }
.mm-as-root .as-modulecard .as-foot { font-size:12px; color:var(--as-blue, #2466e8); font-weight:800; margin-top:auto; display:inline-flex; gap:5px; align-items:center; }
.mm-as-root .as-sidebox { padding:17px; margin-bottom:14px; }
.mm-as-root .as-sidebox h3 { font-size:12px; margin:0 0 6px; font-weight:800; color:#0f172a; }
.mm-as-root .as-sidebox p { font-size:12px; color:#64748b; margin:0 0 11px; line-height:1.6; }
.mm-as-root .as-rowline { display:flex; justify-content:space-between; align-items:center; padding:8px 0; gap:8px; border-top:1px solid #f0f2f7; font-size:12px; }
.mm-as-root .as-state { border-radius:6px; padding:3px 7px; font-weight:800; font-size:12px; white-space:nowrap; background:#eff2f7; color:#64748b; }
.mm-as-root .as-state.blue { background:#eaf1ff; color:#2466e8; }
.mm-as-root .as-state.amber { background:#fff5e8; color:#a66b1c; }
.mm-as-root .as-state.green { background:#e8f7f1; color:#14815f; }
.mm-as-root .as-state.red { background:#ffeff1; color:#b65362; }
.mm-as-root .as-quickcard { display:flex; align-items:flex-start; gap:10px; border:1px solid var(--as-line, #e6ebf4); border-radius:9px; padding:10px 11px; cursor:pointer; background:#fff; text-align:left; width:100%; margin-bottom:7px; }
.mm-as-root .as-quickcard:hover { background:#f5f9ff; border-color:#bfd4fa; }
.mm-as-root .as-quickcard strong { display:block; font-size:12px; color:#0f172a; }
.mm-as-root .as-quickcard small { display:block; font-size:12px; color:#64748b; margin-top:2px; }
.mm-as-root .as-div-table { display:flex; flex-direction:column; width:100%; }
.mm-as-root .as-div-thead { display:grid; grid-template-columns:1.5fr 1fr 0.9fr 0.8fr 0.7fr; gap:12px; padding:10px 18px; background:#f8fafd; border-top:1px solid var(--as-line, #e6ebf4); border-bottom:1px solid var(--as-line, #e6ebf4); font-size:12px; font-weight:800; color:#475569; }
.mm-as-root .as-div-trow { display:grid; grid-template-columns:1.5fr 1fr 0.9fr 0.8fr 0.7fr; gap:12px; padding:12px 18px; border-bottom:1px solid #eef2f7; align-items:center; font-size:12px; height:auto !important; }
.mm-as-root .as-div-trow:last-child { border-bottom:0; }
.mm-as-root .as-div-thead.cols-4, .mm-as-root .as-div-trow.cols-4 { grid-template-columns:1.2fr 0.9fr 0.9fr 1.4fr; }
.mm-as-root .as-tabs { display:flex; gap:18px; overflow-x:auto; border-bottom:1px solid var(--as-line, #e6ebf4); padding:0 18px; }
.mm-as-root .as-tab { white-space:nowrap; border:0; border-bottom:2px solid transparent; background:none; color:#64748b; font-size:12px; font-weight:800; padding:14px 2px; cursor:pointer; }
.mm-as-root .as-tab.active { border-bottom-color:var(--as-blue, #2466e8); color:var(--as-blue, #2466e8); }
.mm-as-root .as-detailbody { padding:20px; }
.mm-as-root .as-detailgrid { display:grid; grid-template-columns:minmax(0,1fr) 285px; gap:16px; align-items:start; }
.mm-as-root .as-info-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin-bottom:14px; }
.mm-as-root .as-infofield { padding:12px; border:1px solid var(--as-line, #e6ebf4); border-radius:9px; background:#fff; }
.mm-as-root .as-infofield label { color:#64748b; font-size:12px; display:block; margin-bottom:4px; font-weight:700; }
.mm-as-root .as-infofield strong { font-size:12px; display:block; color:#0f172a; }
.mm-as-root .as-listbox { border:1px solid var(--as-line, #e6ebf4); border-radius:10px; background:#fff; }
.mm-as-root .as-listrow { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; padding:12px 15px; border-bottom:1px solid var(--as-line, #e6ebf4); }
.mm-as-root .as-listrow:last-child { border-bottom:0; }
.mm-as-root .as-empty { text-align:center; padding:36px 20px; color:#64748b; }
.mm-as-root .as-empty h3 { margin:10px 0 5px; font-size:14.5px; color:#0f172a; }
.mm-as-root .as-empty p { font-size:12px; max-width:440px; margin:0 auto 14px; line-height:1.6; }
.mm-as-root .as-wiz-grid { display:grid; grid-template-columns:minmax(0,1fr) 280px; gap:18px; align-items:start; }
.mm-as-root .as-field { margin-bottom:14px; }
.mm-as-root .as-field label { display:block; font-weight:800; font-size:12px; margin-bottom:6px; color:#1e293b; }
.mm-as-root .as-field input, .mm-as-root .as-field select, .mm-as-root .as-field textarea { width:100%; border:1px solid #dce4f0; border-radius:8px; padding:9px 11px; background:#fff; font-size:12px; color:#0f172a; }
.mm-as-root .as-sourcepick { display:grid; gap:6px; max-height:320px; overflow-y:auto; padding-right:4px; }
.mm-as-root .as-sourcepick-row { display:flex; align-items:center; justify-content:space-between; padding:9px 11px; border:1px solid var(--as-line, #e6ebf4); border-radius:8px; font-size:12px; gap:10px; background:#fff; }
@media (max-width: 1040px) {
  .mm-as-root .as-two, .mm-as-root .as-detailgrid, .mm-as-root .as-wiz-grid { grid-template-columns:1fr; }
  .mm-as-root .as-catalog { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .mm-as-root .as-kpis { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 760px) {
  .mm-as-root .as-catalog, .mm-as-root .as-info-grid { grid-template-columns:1fr; }
  .mm-as-root .as-div-thead { display:none; }
  .mm-as-root .as-div-trow, .mm-as-root .as-div-trow.cols-4 { grid-template-columns:1fr; gap:6px; }
}

/* ===== VentureCenter 2 Redesign: Plan (.mm-plan-v2), Tasks (.mm-tasks-v2), Results (.mm-results-v2) + Min 12px ===== */
.vc2-campaign .vc2-card:has(.mm-plan-v2),
.vc2-campaign .vc2-card:has(.mm-tasks-v2),
.vc2-campaign .vc2-card:has(.mm-results-v2) { background: transparent; border: 0; box-shadow: none; padding: 0; }
#mm-dash-main.vc2-campaign:has(.mm-plan-v2),
#mm-dash-main.vc2-campaign:has(.mm-tasks-v2),
#mm-dash-main.vc2-campaign:has(.mm-results-v2) { background: #f7f9fd; }

.mm-plan-v2, .mm-tasks-v2, .mm-results-v2 {
  --bg: #f7f9fd; --panel: #ffffff; --line: #e6ebf3; --line2: #dbe2ef;
  --ink: #121e36; --body: #4a5a7e; --muted: #647396;
  --blue: #3F51B5; --blue-dark: #303F9F; --blue-soft: #e9ecfb; --blue-light: #f3f6ff;
  --ok: #159d71; --warn: #b4690e;
  --shadow: 0 7px 26px rgba(43,64,116,.04);
  font-family: "Plus Jakarta Sans", "Segoe UI", sans-serif;
  color: var(--ink, #121e36);
  font-size: 13px;
  line-height: 1.55;
  max-width: 1360px;
  margin: 0 auto;
  padding: 6px 0 36px;
}
.mm-plan-v2 *, .mm-tasks-v2 *, .mm-results-v2 * { box-sizing: border-box; }
.mm-plan-v2 svg.icon, .mm-tasks-v2 svg.ico, .mm-results-v2 svg.ico {
  width: 17px; height: 17px; stroke: currentColor; stroke-width: 1.8; fill: none;
  stroke-linecap: round; stroke-linejoin: round; flex: 0 0 17px; display: inline-block; vertical-align: middle;
}
.mm-plan-v2 .bread, .mm-tasks-v2 .crumb, .mm-results-v2 .breadcrumbs {
  font-size: 12px; color: #647396; margin: 2px 0 12px; display: flex; gap: 8px; align-items: center; flex-wrap: wrap;
}
.mm-plan-v2 .bread strong, .mm-tasks-v2 .crumb b, .mm-results-v2 .breadcrumbs strong { color: #121e36; font-weight: 700; }
.mm-plan-v2 .pagehead, .mm-tasks-v2 .page-head, .mm-results-v2 .heading-row {
  display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; margin-bottom: 18px; flex-wrap: wrap;
}
.mm-plan-v2 .pagehead h1, .mm-tasks-v2 h1, .mm-results-v2 .page-title {
  font-size: 26px; letter-spacing: -0.8px; line-height: 1.25; margin: 0 0 6px; font-weight: 800; color: #121e36;
  display: flex; align-items: center; gap: 10px; flex-wrap: wrap;
}
.mm-plan-v2 .step-pill, .mm-tasks-v2 .stepbadge, .mm-results-v2 .tag {
  color: #3F51B5; background: #e9ecfb; padding: 5px 11px; font-size: 12px; font-weight: 800; border-radius: 999px; letter-spacing: 0; white-space: nowrap;
}
.mm-plan-v2 .pagehead p, .mm-tasks-v2 .page-head p, .mm-results-v2 .page-subtitle {
  margin: 0; color: #5b6b86; max-width: 720px; font-size: 13px; line-height: 1.55;
}
.mm-plan-v2 .buttons, .mm-tasks-v2 .next-buttons, .mm-results-v2 .next-buttons { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.mm-plan-v2 .btn, .mm-tasks-v2 .btn, .mm-results-v2 .btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 7px; white-space: nowrap;
  border: 1px solid #dce5f1; border-radius: 8px; background: #fff; padding: 8px 14px;
  font-weight: 700; font-size: 12.5px; color: #1f3152; min-height: 36px; text-decoration: none; cursor: pointer;
}
.mm-plan-v2 .btn:hover, .mm-tasks-v2 .btn:hover, .mm-results-v2 .btn:hover { background: #f5f7ff; border-color: #b7c6e8; }
.mm-plan-v2 .btn.blue, .mm-tasks-v2 .btn.primary, .mm-results-v2 .btn-blue {
  background: #3F51B5; color: #fff; border-color: #3F51B5; box-shadow: 0 3px 8px rgba(63,81,181,.16);
}
.mm-plan-v2 .btn.blue:hover, .mm-tasks-v2 .btn.primary:hover, .mm-results-v2 .btn-blue:hover { background: #303F9F; border-color: #303F9F; color: #fff; }
.mm-plan-v2 .btn.ghost, .mm-tasks-v2 .btn.ghost { background: #f4f6fc; border-color: #e6ebf5; color: #3F51B5; }
.mm-plan-v2 .layout, .mm-tasks-v2 .workspace, .mm-results-v2 .page-grid {
  display: grid; grid-template-columns: minmax(0, 1fr) 280px; gap: 18px; align-items: start;
}
.mm-plan-v2 .card, .mm-tasks-v2 .card, .mm-results-v2 .card {
  background: #fff; border: 1px solid #e6ebf3; border-radius: 13px; box-shadow: var(--shadow); margin-bottom: 14px; overflow: hidden; padding: 0;
}
.mm-plan-v2 .card-head, .mm-tasks-v2 .card-header, .mm-results-v2 .card-h {
  padding: 16px 18px 12px; display: flex; align-items: center; justify-content: space-between; gap: 10px; margin: 0;
}
.mm-plan-v2 .headingwithicon, .mm-tasks-v2 .card-title { display: flex; align-items: center; gap: 10px; }
.mm-plan-v2 .card-head h2, .mm-tasks-v2 h2, .mm-results-v2 .card-title { font-size: 15px; margin: 0; font-weight: 800; color: #121e36; }
.mm-plan-v2 .card-head p, .mm-results-v2 .card-descr { font-size: 12px; color: #647396; margin: 2px 0 0; }
.mm-plan-v2 .ico-bg, .mm-tasks-v2 .icbox, .mm-results-v2 .section-icon {
  width: 34px !important; height: 34px !important; flex: 0 0 34px !important; border-radius: 10px;
  background: #e9ecfb; color: #3F51B5; display: inline-flex; align-items: center; justify-content: center;
}
.mm-plan-v2 .campaign-grid, .mm-tasks-v2 .summary-grid, .mm-results-v2 .summary-grid {
  display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); padding: 4px 18px 16px; gap: 12px;
}
.mm-plan-v2 .campaign-fact, .mm-tasks-v2 .summary-item, .mm-results-v2 .sum-entry {
  padding: 12px; border: 1px solid #edf1f7; border-radius: 10px; background: #fafbfe;
  display: flex; align-items: flex-start; gap: 10px; min-width: 0;
}
.mm-plan-v2 .campaign-fact .fact-icon, .mm-tasks-v2 .summary-item .icbox, .mm-results-v2 .sum-entry .section-icon {
  width: 30px !important; height: 30px !important; flex: 0 0 30px !important; border-radius: 8px;
  background: #e9ecfb; color: #3F51B5; display: inline-flex; align-items: center; justify-content: center;
}
.mm-plan-v2 .campaign-fact b, .mm-tasks-v2 .summary-item strong, .mm-results-v2 .sum-label {
  font-size: 12px; font-weight: 800; color: #1e2d4a; display: block; margin-bottom: 3px; line-height: 1.35;
}
.mm-plan-v2 .campaign-fact p, .mm-tasks-v2 .summary-item span, .mm-results-v2 .sum-value {
  font-size: 13px; color: #4a5a7e; margin: 0; line-height: 1.5; word-break: break-word; overflow-wrap: anywhere;
}
.mm-plan-v2 .notice, .mm-tasks-v2 .summary-note, .mm-tasks-v2 .notice {
  margin: 0 18px 16px; padding: 10px 12px; background: #f4f7fd; border: 1px solid #e6ecf7;
  color: #52627e; font-size: 12px; border-radius: 8px; display: flex; align-items: flex-start; gap: 8px; line-height: 1.5;
}
.mm-plan-v2 .group-label {
  margin: 14px 18px 8px; font-size: 12px; color: #5b6b86; font-weight: 800; text-transform: uppercase; letter-spacing: .06em;
}
.mm-plan-v2 .planrows { padding: 0 18px 14px; }
.mm-plan-v2 .planitem { border: 1px solid #e6ebf3; background: #fafcff; border-radius: 10px; overflow: hidden; margin-bottom: 8px; }
.mm-plan-v2 .planitem > summary, .mm-plan-v2 .planitem button.plantrigger {
  width: 100%; border: 0; background: transparent; display: grid; grid-template-columns: 32px minmax(0,1fr) 20px;
  align-items: start; gap: 10px; text-align: left; padding: 12px 14px; color: #121e36; cursor: pointer; list-style: none;
}
.mm-plan-v2 .planitem > summary::-webkit-details-marker { display: none; }
.mm-plan-v2 .planitem .item-icon, .mm-plan-v2 .planitem .pi-icon {
  width: 32px; height: 32px; background: #e9ecfb; color: #3F51B5; border-radius: 8px; display: inline-flex; align-items: center; justify-content: center; flex: 0 0 32px;
}
.mm-plan-v2 .planitem h3, .mm-plan-v2 .planitem .pi-title { font-size: 13.5px; font-weight: 800; margin: 0 0 3px; color: #121e36; display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.mm-plan-v2 .planitem .preview, .mm-plan-v2 .planitem .pi-preview { font-size: 12.5px; color: #5b6b86; margin: 0; line-height: 1.5; display: block; }
.mm-plan-v2 .planitem[open] .pi-preview, .mm-plan-v2 .planitem.expanded .preview { display: none; }
.mm-plan-v2 .planitem .detail, .mm-plan-v2 .planitem .pi-detail {
  border-top: 1px solid #e4eaf5; background: #fff; margin: 0 12px 12px; padding: 12px; font-size: 13px; color: #3d4d6a; white-space: pre-line; line-height: 1.65; border-radius: 8px;
}
.mm-plan-v2 .chip, .mm-tasks-v2 .pill {
  display: inline-flex; align-items: center; justify-content: center; padding: 4px 10px; border-radius: 8px; font-size: 12px; font-weight: 700; white-space: nowrap;
}
.mm-plan-v2 .chip.good, .mm-plan-v2 .chip-ok, .mm-tasks-v2 .pill.completed { background: #e6f8f0; color: #0f8a5f; }
.mm-plan-v2 .chip.blue, .mm-plan-v2 .chip-neutral, .mm-tasks-v2 .pill.in_progress { background: #e9ecfb; color: #3F51B5; }
.mm-plan-v2 .chip.amber, .mm-plan-v2 .chip-warn, .mm-tasks-v2 .pill.pending { background: #fff4df; color: #9c6210; }
.mm-plan-v2 .status-note { padding: 0 18px 16px; color: #52627e; font-size: 13px; line-height: 1.55; }
.mm-plan-v2 .next, .mm-tasks-v2 .next, .mm-results-v2 .next-action {
  background: linear-gradient(115deg, #f0f4ff, #f6f8ff); border: 1px solid #dce5f8; border-radius: 13px; padding: 16px 18px; margin-bottom: 14px;
}
.mm-plan-v2 .next-actions, .mm-results-v2 .next-controls {
  display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 12px 18px 16px; flex-wrap: wrap;
}
.mm-results-v2 .next-controls { padding: 12px 0 0; }

/* Right Rail, Tasks (.mm-tasks-v2) & Results (.mm-results-v2) */
.mm-plan-v2 .rail, .mm-tasks-v2 .rail, .mm-results-v2 .right-col { display: grid; gap: 14px; min-width: 0; }
.mm-plan-v2 .rail .card .body, .mm-tasks-v2 .rail-card, .mm-results-v2 .side-card { padding: 16px 18px; }
.mm-plan-v2 .rail .card .body { padding-top: 0; }
.mm-plan-v2 .rail p, .mm-plan-v2 .rail li,
.mm-tasks-v2 .rail-card p, .mm-tasks-v2 .rail-card li,
.mm-results-v2 .side-card p, .mm-results-v2 .side-card li {
  font-size: 12.5px; color: #52627e; line-height: 1.6;
}
.mm-plan-v2 .rail ul, .mm-tasks-v2 .rail-card ul, .mm-results-v2 .tip-list { margin: 6px 0 0; padding-left: 18px; }
.mm-plan-v2 .rail li, .mm-tasks-v2 .rail-card li, .mm-results-v2 .tip-list li { margin: 0 0 7px; }
.mm-plan-v2 .progress, .mm-tasks-v2 .progressbar, .mm-results-v2 .progress-track {
  height: 7px; border-radius: 20px; background: #e6ecf7; overflow: hidden; margin: 10px 0 12px;
}
.mm-plan-v2 .progress > span, .mm-tasks-v2 .progressbar > i, .mm-results-v2 .progress-track > span {
  display: block; height: 100%; background: #3F51B5; border-radius: 20px;
}
.mm-plan-v2 .rail-step, .mm-tasks-v2 .rail-step, .mm-results-v2 .progress-row {
  display: flex; align-items: center; gap: 10px; margin: 4px 0; border-radius: 8px; padding: 6px 8px;
  color: #52627e; font-size: 12.5px; font-weight: 600; text-decoration: none;
}
.mm-plan-v2 .rail-step .num, .mm-tasks-v2 .rail-circle, .mm-results-v2 .progress-row .round {
  width: 24px; height: 24px; flex: 0 0 24px; background: #eef2f9; border-radius: 50%;
  display: inline-flex; align-items: center; justify-content: center; font-weight: 800; font-size: 12px; color: #52627e;
}
.mm-plan-v2 .rail-step.passed .num, .mm-tasks-v2 .rail-circle.done, .mm-results-v2 .progress-row .round.done {
  background: #dff6eb; color: #0f8a5f;
}
.mm-plan-v2 .rail-step.active, .mm-tasks-v2 .rail-step.active, .mm-results-v2 .progress-row.selected {
  background: #e9ecfb; color: #3F51B5; font-weight: 800;
}
.mm-plan-v2 .rail-step.active .num, .mm-tasks-v2 .rail-circle.current, .mm-results-v2 .progress-row.selected .round {
  background: #3F51B5; color: #fff;
}
.mm-plan-v2 .helpcard, .mm-tasks-v2 .rail-card.help, .mm-results-v2 .help-card {
  background: linear-gradient(140deg, #f0fbf5, #e8f7ef); border-color: #d7efe2;
}

/* Tasks board specific */
.mm-tasks-v2 .tasks { padding: 16px 18px 14px; }
.mm-tasks-v2 .tasks-top { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 0 0 14px; flex-wrap: wrap; }
.mm-tasks-v2 .tasks-controls { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.mm-tasks-v2 .select, .mm-tasks-v2 .task-search {
  height: 36px; border: 1px solid #dce5f1; border-radius: 8px; background: #fff; padding: 0 12px;
  color: #1f3152; font-weight: 600; font-size: 12.5px;
}
.mm-tasks-v2 .legend { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; font-size: 12px; font-weight: 700; }
.mm-tasks-v2 .legend i { display: inline-block; width: 9px; height: 9px; border-radius: 50%; margin-right: 5px; }
.mm-tasks-v2 .legend .completed { color: #0f8a5f; }
.mm-tasks-v2 .legend .completed i { background: #159d71; }
.mm-tasks-v2 .legend .progress { color: #3F51B5; }
.mm-tasks-v2 .legend .progress i { background: #3F51B5; }
.mm-tasks-v2 .legend .pending { color: #9c6210; }
.mm-tasks-v2 .legend .pending i { background: #d48a20; }
.mm-tasks-v2 .group-title {
  width: 100%; border: 1px solid #dce6f7; display: flex; align-items: center; gap: 10px; text-align: left;
  border-radius: 8px; padding: 10px 14px; margin: 10px 0 4px; background: #eef3ff; color: #162750;
  font-weight: 800; font-size: 13px; cursor: pointer;
}
.mm-tasks-v2 .group-title.implementation { background: #fff8e8; border-color: #f3e2b8; color: #5f4516; }
.mm-tasks-v2 .group-title.optimisation { background: #e9ecfb; border-color: #d5dcf6; color: #283593; }
.mm-tasks-v2 .group-title .num {
  border-radius: 6px; padding: 2px 8px; background: #dce7ff; color: #3F51B5; font-size: 12px; font-weight: 800;
}
.mm-tasks-v2 .group-title.implementation .num { background: #fdebc2; color: #9c6210; }
.mm-tasks-v2 .group-title.optimisation .num { background: #d6dcf5; color: #303F9F; }
.mm-tasks-v2 .group-title .chev { margin-left: auto; transition: transform .18s; }
.mm-tasks-v2 .group-title.collapsed .chev { transform: rotate(-90deg); }
.mm-tasks-v2 .task-row-wrap { border-bottom: 1px solid #edf1f6; }
.mm-tasks-v2 .task-row-wrap:last-child { border-bottom: 0; }
.mm-tasks-v2 .task-row {
  border: 0; width: 100%; background: #fff; display: flex; align-items: center; gap: 12px;
  text-align: left; min-height: 44px; padding: 9px 12px; cursor: pointer;
}
.mm-tasks-v2 .task-row:hover { background: #f8faff; }
.mm-tasks-v2 .status-icon {
  width: 22px; height: 22px; border-radius: 50%; background: #159d71; color: #fff;
  display: inline-flex; align-items: center; justify-content: center; flex: 0 0 22px; font-size: 12px; font-weight: 800;
}
.mm-tasks-v2 .status-icon.in_progress { background: #e9ecfb; border: 2px solid #3F51B5; color: #3F51B5; }
.mm-tasks-v2 .status-icon.pending { background: #fff3d6; border: 1px solid #e6a73c; color: #9c6210; }
.mm-tasks-v2 .task-name { min-width: 0; flex: 1; color: #162447; font-weight: 700; font-size: 13.5px; line-height: 1.4; }
.mm-tasks-v2 .task-meta-badges { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
.mm-tasks-v2 .task-origin-chip {
  background: #f1f5fb; color: #475569; border: 1px solid #e2e8f0; border-radius: 6px; padding: 3px 8px; font-size: 12px; font-weight: 600;
}
.mm-tasks-v2 .task-detail {
  margin: 0 12px 10px 34px; background: #f8faff; border: 1px solid #e3ebf8; border-radius: 9px;
  padding: 14px; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 14px; align-items: start;
}
.mm-tasks-v2 .task-detail p { margin: 0 0 6px; font-size: 13px; color: #2b3b5c; line-height: 1.55; }
.mm-tasks-v2 .task-detail .evidence { font-size: 12px; color: #5b6b86; display: block; margin-top: 4px; }
.mm-tasks-v2 .task-detail .actions { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.mm-tasks-v2 .task-detail select, .mm-tasks-v2 .task-detail input {
  height: 34px; border-radius: 7px; border: 1px solid #d5e0f2; padding: 0 10px; background: #fff; color: #1f3152; font-size: 12.5px; font-weight: 600;
}

/* Results step (.mm-results-v2) */
.mm-results-v2 .results-card { padding-bottom: 18px; }
.mm-results-v2 .target-banner {
  margin: 12px 18px 4px; padding: 12px 14px; border-radius: 10px; border: 1px solid #dce6f9;
  background: #f4f7ff; display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; flex-wrap: wrap;
}
.mm-results-v2 .target-banner strong { font-size: 13px; color: #162750; display: block; }
.mm-results-v2 .target-banner span { font-size: 12.5px; color: #4a5a7e; }
.mm-results-v2 .kpi-slots-grid {
  display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; padding: 14px 18px 6px;
}
.mm-results-v2 .kpi-slot-card {
  border: 1px solid #e5ebf5; border-radius: 11px; padding: 14px; background: #fbfcff; display: flex; flex-direction: column; gap: 6px;
}
.mm-results-v2 .kpi-slot-top { display: flex; align-items: flex-start; justify-content: space-between; gap: 8px; }
.mm-results-v2 .kpi-slot-title { font-size: 13px; font-weight: 800; color: #162750; }
.mm-results-v2 .kpi-slot-val { font-size: 20px; font-weight: 800; color: #121e36; letter-spacing: -0.4px; }
.mm-results-v2 .kpi-slot-src { font-size: 12px; font-weight: 700; color: #3F51B5; }
.mm-results-v2 .kpi-slot-note { font-size: 12px; color: #5b6b86; line-height: 1.5; margin: 0; }
.mm-results-v2 .empty-state {
  display: flex; flex-direction: column; align-items: center; text-align: center; padding: 18px 24px 12px;
}
.mm-results-v2 .empty-art { width: 212px; height: 142px; margin: 4px auto 6px; }
.mm-results-v2 .empty-state h3 { margin: 0 0 6px; font-size: 18px; font-weight: 800; color: #121e36; }
.mm-results-v2 .empty-state p { margin: 0; color: #52627e; max-width: 540px; font-size: 13px; line-height: 1.65; }
.mm-results-v2 .explainer {
  border: 1px solid #dce6fb; background: #f3f7ff; border-radius: 10px; margin: 12px 18px 6px;
  padding: 14px 18px; text-align: left; display: flex; gap: 12px; align-items: flex-start;
}
.mm-results-v2 .explainer h4 { margin: 0 0 6px; color: #303F9F; font-size: 13.5px; font-weight: 800; }
.mm-results-v2 .explainer ul { padding-left: 18px; margin: 0; color: #4a5a7e; font-size: 12.5px; line-height: 1.75; }

@media (max-width: 1080px) {
  .mm-plan-v2 .layout, .mm-tasks-v2 .workspace, .mm-results-v2 .page-grid { grid-template-columns: 1fr; }
  .mm-plan-v2 .campaign-grid, .mm-tasks-v2 .summary-grid, .mm-results-v2 .summary-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 680px) {
  .mm-plan-v2 .campaign-grid, .mm-tasks-v2 .summary-grid, .mm-results-v2 .summary-grid, .mm-results-v2 .kpi-slots-grid { grid-template-columns: 1fr; }
  .mm-tasks-v2 .task-detail { grid-template-columns: 1fr; margin-left: 12px; }
}

/* Scoped Next/React Client Pages Minimum 12px Font-Size Override (leaves public / and /en-ca untouched) */
html.mm-client-shell .CdsDP-list-view-additional-info,
html.mm-client-shell .CdsDP-list-view-created-date,
html.mm-client-shell .partner-dashboard_livePill__Za_QC,
html.mm-client-shell .partner-dashboard_soonPill___wYU_,
html.mm-client-shell .partner-dashboard_chip__7qlGn,
html.mm-client-shell .partner-dashboard_chipSolid__nn27e,
html.mm-client-shell .text-\[10\.5px\],
html.mm-client-shell .text-\[10px\],
html.mm-client-shell .text-\[11\.5px\],
html.mm-client-shell .text-\[11px\],
html.mm-client-shell .text-\[8px\],
html.mm-client-shell .text-\[9\.5px\],
html.mm-client-shell .text-\[9px\],
html.mm-client-shell .sm\:text-\[11px\],
html.mm-client-shell .CdsDP-message-time,
html.mm-client-shell .CdsDP-conversation-count,
html.mm-client-shell .CdsDP-conversation-time,
html.mm-client-shell .CdsDP-last-seen,
html.mm-client-shell .CdsDP-btn-xs,
html.mm-client-shell .promote_metricLbl__F0Hhg,
html.mm-client-shell .promote_badge__JQR2y,
html.mm-client-shell .CdsDP-ProCredentials-PickerGroup,
html.mm-client-shell .cdsdp-sidebar-badge,
html.mm-client-shell .cdsdp-dashboard-sidebar.collapsed .cdsdp-sidebar-badge,
html.mm-client-shell .tv2-fc-typing,
html.mm-client-shell .tv2-fc-meta,
html.mm-client-shell .tv2-fc-minimized-avatar,
html.mm-client-shell .tv2-fc-minimized-badge,
html.mm-client-shell .messaging-panel_headerBadge__n_bpf,
html.mm-client-shell .messaging-panel_inboxBadge__aZK_Y,
html.mm-client-shell .messaging-panel_inboxMenuText__lVgP_ em,
html.mm-client-shell .messaging-panel_rowTime__8kBfs,
html.mm-client-shell .messaging-panel_unreadBadge__UJn3z,
html.mm-client-shell .CdsDP-MessagePage-TabBadge,
html.mm-client-shell .provider-card__section-title,
html.mm-client-shell .case-activity-timeline_timelineTime__F_isV,
html.mm-client-shell .CdsDP-milestone-accepted-badge,
html.mm-client-shell .CdsDP-proposal-verified-badge,
html.mm-client-shell .CdsDP-user-type,
html.mm-client-shell .CdsDP-active-badge,
html.mm-client-shell .CdsDP-verified-badge,
html.mm-client-shell .message-bell_badge__vwenb,
html.mm-client-shell .message-bell_tabBadge__iBdAG,
html.mm-client-shell .message-bell_itemUnread__c1jBf,
html.mm-client-shell .message-bell_itemTime__Mdcq8,
html.mm-client-shell .CdsDP-sidebar-badge,
html.mm-client-shell .CdsDP-dashboard-sidebar.collapsed .CdsDP-sidebar-badge,
html.mm-client-shell .CdsDP-user-dates,
html.mm-client-shell .CdsDP-status-badge,
html.mm-client-shell .CdsDP-type-badge,
html.mm-client-shell .CdsDP-ClientSignup-StrengthLabel,
html.mm-client-shell .CdsDP-ClientSignup-VStepBadge,
html.mm-client-shell .CdsDP-ProCredentials-Badge,
html.mm-client-shell .CdsDP-NativeKyc-TypeSides,
html.mm-client-shell .CdsDP-NativeKyc-Chip {
  font-size: 12px !important;
  line-height: 1.4 !important;
}

/* ===== MarketingMind Level 3 Strategy (.mm-l3-root) & Website Analytics & Heatmaps (.mm-wa-root) ===== */
.vc2-campaign .vc2-card:has(.mm-l3-root),
.vc2-campaign .vc2-card:has(.mm-wa-root) { background: transparent; border: 0; box-shadow: none; padding: 0; }
#mm-dash-main.vc2-campaign:has(.mm-l3-root),
#mm-dash-main.vc2-campaign:has(.mm-wa-root) { background: #f7f9fd; }

.mm-l3-root, .mm-wa-root {
  --blue: #3F51B5; --blue-dark: #303F9F; --navy: #142342; --slate: #5b6b86;
  --bg: #f7f9fd; --line: #e6eaf1; --paper: #ffffff; --soft: #e9ecfb;
  --shadow: 0 7px 26px rgba(23,42,83,.05);
  font-family: "Plus Jakarta Sans", "Segoe UI", system-ui, sans-serif;
  color: var(--navy, #142342);
  font-size: 13px;
  line-height: 1.55;
  max-width: 1440px;
  margin: 0 auto;
  padding: 6px 0 42px;
}
.mm-l3-root *, .mm-wa-root * { box-sizing: border-box; }
.mm-l3-root svg, .mm-wa-root svg {
  width: 16px; height: 16px; stroke: currentColor; stroke-width: 1.85; fill: none;
  stroke-linecap: round; stroke-linejoin: round; flex: 0 0 16px; display: inline-block; vertical-align: middle;
}
.mm-l3-root .wa-crumb, .mm-wa-root .wa-crumb { font-size: 12px; color: #64748b; font-weight: 600; margin: 0 0 10px; display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.mm-l3-root .wa-crumb b, .mm-wa-root .wa-crumb b { color: #3F51B5; }
.mm-l3-root .wa-head, .mm-wa-root .wa-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; flex-wrap: wrap; margin-bottom: 16px; }
.mm-l3-root .wa-eyebrow, .mm-wa-root .wa-eyebrow { font-size: 12px; color: #3F51B5; letter-spacing: 0.08em; font-weight: 800; text-transform: uppercase; }
.mm-l3-root h1, .mm-wa-root h1 { margin: 4px 0 6px; font-size: 26px; letter-spacing: -0.8px; line-height: 1.25; font-weight: 800; color: #142342; }
.mm-l3-root .wa-sub, .mm-wa-root .wa-sub { font-size: 13px; line-height: 1.6; color: #5b6b86; max-width: 780px; margin: 0; }
.mm-l3-root .wa-actions, .mm-wa-root .wa-actions { display: flex; align-items: center; gap: 9px; flex-wrap: wrap; }
.mm-l3-root .wa-btn, .mm-wa-root .wa-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 7px;
  border: 1px solid #d8e2f0; border-radius: 9px; background: #fff; color: #1b3158;
  font-size: 12.5px; font-weight: 700; padding: 8px 14px; min-height: 36px; white-space: nowrap; text-decoration: none; cursor: pointer;
}
.mm-l3-root .wa-btn:hover:not(:disabled), .mm-wa-root .wa-btn:hover:not(:disabled) { background: #f4f7ff; border-color: #b5c6e8; }
.mm-l3-root .wa-btn.primary, .mm-wa-root .wa-btn.primary { background: #3F51B5; color: #fff; border-color: #3F51B5; box-shadow: 0 4px 10px rgba(63,81,181,.16); }
.mm-l3-root .wa-btn.primary:hover:not(:disabled), .mm-wa-root .wa-btn.primary:hover:not(:disabled) { background: #303F9F; border-color: #303F9F; color: #fff; }
.mm-l3-root .wa-btn:disabled, .mm-wa-root .wa-btn:disabled { opacity: 0.6; cursor: not-allowed; }
.mm-l3-root .wa-pill, .mm-wa-root .wa-pill {
  border-radius: 999px; border: 1px solid #d5dff5; background: #e9ecfb; padding: 4px 11px;
  color: #303F9F; font-size: 12px; font-weight: 800; white-space: nowrap; display: inline-flex; align-items: center; gap: 6px;
}
.mm-l3-root .wa-pill.warn, .mm-wa-root .wa-pill.warn { background: #fff4df; border-color: #f2d59b; color: #8f570d; }
.mm-l3-root .wa-pill.ok, .mm-wa-root .wa-pill.ok { background: #e6f8f0; border-color: #bce8d4; color: #0f8a5f; }
.mm-l3-root .wa-banner, .mm-wa-root .wa-banner {
  margin: 0 0 16px; border: 1px solid #cfe0fa; background: #eff6ff; color: #264878;
  border-radius: 11px; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 16px; font-size: 12.5px; line-height: 1.5; flex-wrap: wrap;
}
.mm-l3-root .wa-cards, .mm-wa-root .wa-cards { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 13px; margin-bottom: 16px; }
.mm-l3-root .wa-stat, .mm-wa-root .wa-stat { background: #fff; border: 1px solid #e6eaf1; border-radius: 13px; padding: 16px 18px; box-shadow: var(--shadow); }
.mm-l3-root .wa-stat .label, .mm-wa-root .wa-stat .label { color: #5b6b86; font-size: 12px; font-weight: 700; }
.mm-l3-root .wa-stat .value, .mm-wa-root .wa-stat .value { font-size: 22px; font-weight: 800; letter-spacing: -0.6px; margin-top: 8px; color: #142342; }
.mm-l3-root .wa-stat .helper, .mm-wa-root .wa-stat .helper { color: #64748b; font-size: 12px; margin-top: 4px; }
.mm-l3-root .wa-tabs, .mm-wa-root .wa-tabs { display: flex; gap: 6px; border-bottom: 1px solid #e6eaf1; margin-bottom: 18px; overflow-x: auto; }
.mm-l3-root .wa-tab, .mm-wa-root .wa-tab {
  color: #5b6b86; background: none; border: 0; border-bottom: 2px solid transparent;
  padding: 12px 14px; font-weight: 700; font-size: 13px; white-space: nowrap; cursor: pointer;
}
.mm-l3-root .wa-tab.active, .mm-wa-root .wa-tab.active { color: #3F51B5; border-bottom-color: #3F51B5; font-weight: 800; }
.mm-l3-root .wa-two, .mm-wa-root .wa-two { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(290px, 0.85fr); gap: 16px; align-items: start; }
.mm-l3-root .wa-three, .mm-wa-root .wa-three { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.mm-l3-root .wa-panel, .mm-wa-root .wa-panel { border: 1px solid #e6eaf1; border-radius: 13px; background: #fff; box-shadow: var(--shadow); padding: 18px; margin-bottom: 14px; }
.mm-l3-root .wa-panel h2, .mm-wa-root .wa-panel h2 { font-size: 15.5px; margin: 0 0 4px; font-weight: 800; color: #142342; }
.mm-l3-root .wa-small, .mm-wa-root .wa-small { font-size: 12.5px; color: #5b6b86; line-height: 1.55; margin: 0; }
.mm-l3-root .wa-kv, .mm-wa-root .wa-kv { display: flex; justify-content: space-between; align-items: center; border-bottom: 1px solid #edf0f4; padding: 10px 0; gap: 10px; font-size: 12.5px; flex-wrap: wrap; }
.mm-l3-root .wa-kv:last-child, .mm-wa-root .wa-kv:last-child { border-bottom: 0; }
.mm-l3-root .wa-kv b, .mm-wa-root .wa-kv b { font-weight: 800; color: #142342; }
.mm-l3-root .wa-callout, .mm-wa-root .wa-callout { padding: 12px 14px; border-radius: 10px; background: #f3f6ff; border: 1px solid #dce5f9; font-size: 12.5px; line-height: 1.6; color: #283c66; }
.mm-wa-root .wa-codebox { background: #10203c; color: #dce7ff; font-family: ui-monospace, Consolas, monospace; font-size: 12px; line-height: 1.6; padding: 16px; white-space: pre-wrap; overflow-wrap: anywhere; border-radius: 11px; margin: 12px 0; }
.mm-l3-root .wa-input, .mm-wa-root .wa-input, .mm-l3-root .wa-select, .mm-wa-root .wa-select {
  border: 1px solid #d8e2f0; border-radius: 8px; padding: 8px 11px; font-size: 12.5px; color: #142342; background: #fff; min-height: 36px;
}
.mm-wa-root .wa-heatmap-frame {
  border: 1px solid #dbe3ef; border-radius: 13px; position: relative; overflow: hidden;
  background: #fff; min-height: 420px; padding: 18px;
}
.mm-wa-root .wa-bin-grid {
  display: grid; grid-template-columns: repeat(10, minmax(0, 1fr)); gap: 4px; margin-top: 12px;
}
.mm-wa-root .wa-bin-cell {
  min-height: 30px; border-radius: 6px; border: 1px solid #edf1f7; display: flex;
  align-items: center; justify-content: center; font-size: 12px; font-weight: 700; color: #142342;
}
@media (max-width: 1100px) {
  .mm-l3-root .wa-two, .mm-wa-root .wa-two, .mm-l3-root .wa-three, .mm-wa-root .wa-three { grid-template-columns: 1fr; }
  .mm-l3-root .wa-cards, .mm-wa-root .wa-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
  .mm-l3-root .wa-cards, .mm-wa-root .wa-cards { grid-template-columns: 1fr; }
}

/* ===== Level 3 Strategy & Optimization Studio (.mm-l3-root .l3-*) ===== */
.mm-l3-root {
  --l3-ok: #0f8a5f; --l3-ok-bg: #e6f8f0; --l3-ok-line: #bce8d4;
  --l3-warn: #8f570d; --l3-warn-bg: #fff4df; --l3-warn-line: #f2d59b;
  --l3-bad: #b42318; --l3-bad-bg: #fdecea; --l3-bad-line: #f5c2bd;
  --l3-muted: #64748b; --l3-muted-bg: #f4f5f6; --l3-focus: #303F9F;
}
.mm-l3-root .l3-ico { width: 16px; height: 16px; flex: 0 0 16px; }
.mm-l3-root a:focus-visible, .mm-l3-root button:focus-visible, .mm-l3-root input:focus-visible,
.mm-l3-root select:focus-visible, .mm-l3-root textarea:focus-visible, .mm-l3-root summary:focus-visible,
.mm-l3-root [tabindex]:focus-visible { outline: 2px solid var(--l3-focus, #303F9F); outline-offset: 2px; }
.mm-l3-root .l3-crumb { font-size: 12px; color: var(--l3-muted, #64748b); font-weight: 600; margin: 0 0 10px; display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.mm-l3-root .l3-crumb a { color: var(--l3-muted, #64748b); text-decoration: none; }
.mm-l3-root .l3-crumb b { color: var(--blue, #3F51B5); }
.mm-l3-root .l3-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; flex-wrap: wrap; margin-bottom: 14px; }
.mm-l3-root .l3-eyebrow { font-size: 12px; color: var(--blue, #3F51B5); letter-spacing: 0.08em; font-weight: 800; text-transform: uppercase; }
.mm-l3-root .l3-sub { font-size: 13px; line-height: 1.6; color: var(--slate, #5b6b86); max-width: 760px; margin: 0; }
.mm-l3-root .l3-actions { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.mm-l3-root .l3-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 7px; min-height: 36px;
  border: 1px solid #d8e2f0; border-radius: 9px; background: var(--paper, #ffffff); color: #1b3158;
  padding: 7px 13px; font: inherit; font-size: 12.5px; font-weight: 700; cursor: pointer; text-decoration: none; white-space: nowrap;
}
.mm-l3-root .l3-btn:hover { background: #f4f7ff; border-color: #b5c6e8; }
.mm-l3-root .l3-btn.primary { background: var(--blue, #3F51B5); border-color: var(--blue, #3F51B5); color: #ffffff; }
.mm-l3-root .l3-btn.primary:hover { background: var(--blue-dark, #303F9F); border-color: var(--blue-dark, #303F9F); }
.mm-l3-root .l3-btn.danger { background: var(--l3-bad-bg, #fdecea); border-color: var(--l3-bad-line, #f5c2bd); color: var(--l3-bad, #b42318); }
.mm-l3-root .l3-link { background: none; border: 0; padding: 0; font: inherit; font-size: 12.5px; font-weight: 700; color: var(--blue, #3F51B5); cursor: pointer; text-align: left; }
.mm-l3-root .l3-icon-btn { background: none; border: 1px solid transparent; border-radius: 8px; padding: 6px; color: var(--navy, #142342); cursor: pointer; display: inline-flex; }
.mm-l3-root .l3-icon-btn:hover { background: var(--soft, #e9ecfb); }
.mm-l3-root .l3-info, .mm-l3-root .l3-notice, .mm-l3-root .l3-callout {
  display: flex; gap: 10px; align-items: flex-start; border-radius: 11px; padding: 11px 14px; font-size: 12.5px; line-height: 1.55; margin: 0 0 14px;
  background: var(--soft, #e9ecfb); border: 1px solid #d5dff5; color: #263a6b;
}
.mm-l3-root .l3-notice { justify-content: space-between; background: #eff6ff; border-color: #cfe0fa; }
.mm-l3-root .l3-notice span { flex: 1 1 auto; }
.mm-l3-root .l3-notice.ok { background: var(--l3-ok-bg, #e6f8f0); border-color: var(--l3-ok-line, #bce8d4); color: #0b5e41; }
.mm-l3-root .l3-notice.bad { background: var(--l3-bad-bg, #fdecea); border-color: var(--l3-bad-line, #f5c2bd); color: #8a1c12; }
.mm-l3-root .l3-callout { margin: 12px 0 0; background: #f3f6ff; }
.mm-l3-root .l3-kpis { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin-bottom: 14px; }
.mm-l3-root .l3-kpi { background: var(--paper, #ffffff); border: 1px solid var(--line, #e6eaf1); border-radius: 13px; padding: 14px 16px; box-shadow: var(--shadow, 0 7px 26px rgba(23,42,83,.05)); }
.mm-l3-root .l3-kpi-label { font-size: 12px; font-weight: 700; color: var(--slate, #5b6b86); }
.mm-l3-root .l3-kpi-value { font-size: 20px; font-weight: 800; color: var(--navy, #142342); margin-top: 6px; letter-spacing: -0.4px; overflow-wrap: anywhere; }
.mm-l3-root .l3-kpi-help { font-size: 12px; color: var(--l3-muted, #64748b); margin-top: 3px; }
.mm-l3-root .l3-tabs { display: flex; gap: 4px; border-bottom: 1px solid var(--line, #e6eaf1); margin-bottom: 16px; overflow-x: auto; }
.mm-l3-root .l3-tab {
  background: none; border: 0; border-bottom: 2px solid transparent; padding: 11px 13px; font: inherit; font-size: 13px;
  font-weight: 700; color: var(--slate, #5b6b86); cursor: pointer; white-space: nowrap; display: inline-flex; align-items: center; gap: 6px;
}
.mm-l3-root .l3-tab.active { color: var(--blue, #3F51B5); border-bottom-color: var(--blue, #3F51B5); font-weight: 800; }
.mm-l3-root .l3-count { background: var(--blue, #3F51B5); color: #ffffff; border-radius: 999px; padding: 0 7px; font-size: 12px; line-height: 18px; }
.mm-l3-root .l3-layout { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 16px; align-items: start; }
.mm-l3-root .l3-panel { background: var(--paper, #ffffff); border: 1px solid var(--line, #e6eaf1); border-radius: 13px; padding: 16px 18px; margin-bottom: 14px; box-shadow: var(--shadow, 0 7px 26px rgba(23,42,83,.05)); }
.mm-l3-root .l3-panel h2 { font-size: 15px; font-weight: 800; color: var(--navy, #142342); margin: 0 0 4px; }
.mm-l3-root h3 { font-size: 13.5px; font-weight: 800; color: var(--navy, #142342); margin: 12px 0 6px; }
.mm-l3-root .l3-panel-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; flex-wrap: wrap; margin-bottom: 10px; }
.mm-l3-root .l3-panel-head > div:first-child { flex: 1 1 320px; }
.mm-l3-root .l3-muted { font-size: 12.5px; color: var(--l3-muted, #64748b); line-height: 1.55; margin: 4px 0; }
.mm-l3-root .l3-text { font-size: 13px; color: var(--navy, #142342); line-height: 1.6; margin: 6px 0; overflow-wrap: anywhere; }
.mm-l3-root .l3-warn-text { display: flex; gap: 6px; align-items: flex-start; font-size: 12.5px; color: var(--l3-warn, #8f570d); margin: 4px 0; }
.mm-l3-root .l3-code { font-family: ui-monospace, Consolas, monospace; font-size: 12px; overflow-wrap: anywhere; }
.mm-l3-root .l3-pill {
  display: inline-flex; align-items: center; border-radius: 999px; padding: 3px 10px; font-size: 12px; font-weight: 800; white-space: nowrap;
  background: var(--soft, #e9ecfb); border: 1px solid #d5dff5; color: var(--blue-dark, #303F9F);
}
.mm-l3-root .l3-pill.ok { background: var(--l3-ok-bg, #e6f8f0); border-color: var(--l3-ok-line, #bce8d4); color: var(--l3-ok, #0f8a5f); }
.mm-l3-root .l3-pill.warn { background: var(--l3-warn-bg, #fff4df); border-color: var(--l3-warn-line, #f2d59b); color: var(--l3-warn, #8f570d); }
.mm-l3-root .l3-pill.bad { background: var(--l3-bad-bg, #fdecea); border-color: var(--l3-bad-line, #f5c2bd); color: var(--l3-bad, #b42318); }
.mm-l3-root .l3-pill.muted { background: var(--l3-muted-bg, #f4f5f6); border-color: #e2e6ec; color: #475569; }
.mm-l3-root .l3-pill.info { background: var(--soft, #e9ecfb); border-color: #c5cff0; color: var(--blue-dark, #303F9F); }
.mm-l3-root .l3-item { border: 1px solid var(--line, #e6eaf1); border-radius: 11px; padding: 14px; margin-top: 10px; background: #fbfcff; }
.mm-l3-root .l3-item-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 10px; flex-wrap: wrap; }
.mm-l3-root .l3-item-head > div:first-child { flex: 1 1 280px; display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
.mm-l3-root .l3-item-head h3 { flex: 1 1 100%; font-size: 14px; margin: 6px 0 0; overflow-wrap: anywhere; }
.mm-l3-root .l3-meta { display: flex; flex-wrap: wrap; gap: 6px 14px; font-size: 12px; color: var(--l3-muted, #64748b); margin-top: 6px; }
.mm-l3-root .l3-next { display: flex; gap: 6px; align-items: flex-start; font-size: 12.5px; color: var(--l3-ok, #0f8a5f); margin: 8px 0 0; }
.mm-l3-root .l3-kv { display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 8px 0; border-bottom: 1px solid #edf0f4; font-size: 12.5px; flex-wrap: wrap; }
.mm-l3-root .l3-kv:last-child { border-bottom: 0; }
.mm-l3-root .l3-kv > span { color: var(--slate, #5b6b86); }
.mm-l3-root .l3-kv b { font-weight: 800; color: var(--navy, #142342); text-align: right; overflow-wrap: anywhere; }
.mm-l3-root .l3-row { display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 10px 0; border-bottom: 1px solid #edf0f4; flex-wrap: wrap; }
.mm-l3-root .l3-row:last-child { border-bottom: 0; }
.mm-l3-root .l3-row-main { flex: 1 1 260px; display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.mm-l3-root .l3-row-main b { font-size: 13px; color: var(--navy, #142342); overflow-wrap: anywhere; }
.mm-l3-root .l3-row-main span { font-size: 12px; color: var(--l3-muted, #64748b); overflow-wrap: anywhere; }
.mm-l3-root .l3-row-end { display: flex; justify-content: flex-end; gap: 8px; flex-wrap: wrap; margin-top: 12px; }
.mm-l3-root .l3-empty { display: flex; gap: 10px; align-items: flex-start; padding: 14px; border-radius: 10px; border: 1px dashed #cdd6ea; background: #f8faff; margin-top: 10px; font-size: 12.5px; color: #283c66; }
.mm-l3-root .l3-empty p { margin: 2px 0 0; color: var(--l3-muted, #64748b); }
.mm-l3-root .l3-grid2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.mm-l3-root .l3-grid3 { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.mm-l3-root .l3-filters { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; margin: 8px 0 4px; }
.mm-l3-root .l3-panel-head .l3-field { min-width: 180px; }
.mm-l3-root .l3-field { display: flex; flex-direction: column; gap: 4px; margin: 6px 0; }
.mm-l3-root .l3-field-label { font-size: 12px; font-weight: 700; color: var(--navy, #142342); }
.mm-l3-root .l3-hint { font-size: 12px; color: var(--l3-muted, #64748b); }
.mm-l3-root .l3-input {
  width: 100%; border: 1px solid #d8e2f0; border-radius: 8px; padding: 8px 10px; font: inherit; font-size: 13px;
  color: var(--navy, #142342); background: var(--paper, #ffffff); min-height: 36px;
}
.mm-l3-root textarea.l3-input { resize: vertical; line-height: 1.5; }
.mm-l3-root .l3-inline { display: flex; align-items: flex-end; gap: 10px; flex-wrap: wrap; margin-top: 8px; }
.mm-l3-root .l3-inline .l3-field { min-width: 180px; }
.mm-l3-root .l3-action-row { border: 1px solid var(--line, #e6eaf1); border-radius: 10px; padding: 10px 12px; margin: 8px 0; background: #fbfcff; font-size: 12.5px; }
.mm-l3-root .l3-checklist { display: flex; flex-direction: column; gap: 6px; max-height: 180px; overflow-y: auto; border: 1px solid var(--line, #e6eaf1); border-radius: 9px; padding: 8px 10px; }
.mm-l3-root .l3-check-opt { display: flex; gap: 8px; align-items: flex-start; font-size: 12.5px; color: var(--navy, #142342); margin: 6px 0; }
.mm-l3-root .l3-check-opt input { margin-top: 3px; }
.mm-l3-root .l3-checks { margin-top: 10px; }
.mm-l3-root .l3-check { display: flex; gap: 8px; align-items: flex-start; font-size: 12.5px; padding: 5px 0; color: var(--navy, #142342); }
.mm-l3-root .l3-check.ok .l3-ico { color: var(--l3-ok, #0f8a5f); }
.mm-l3-root .l3-check.bad .l3-ico { color: var(--l3-warn, #8f570d); }
.mm-l3-root .l3-details { margin-top: 8px; font-size: 12.5px; }
.mm-l3-root .l3-details summary { cursor: pointer; font-weight: 700; color: var(--blue, #3F51B5); }
.mm-l3-root .l3-steps { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; margin-top: 8px; }
.mm-l3-root .l3-step { display: flex; flex-direction: column; gap: 4px; padding: 12px; border-radius: 10px; background: #f3f6ff; border: 1px solid #dce5f9; font-size: 12.5px; color: #283c66; }
.mm-l3-root .l3-window { border: 1px solid var(--line, #e6eaf1); border-radius: 10px; padding: 10px 12px; margin-top: 10px; }
.mm-l3-root .l3-window h3 { margin-top: 0; }
.mm-l3-root .l3-list { margin: 6px 0; padding-left: 18px; font-size: 12.5px; color: var(--navy, #142342); }
.mm-l3-root .l3-list li { margin: 4px 0; }
.mm-l3-root .l3-rail .l3-panel { padding: 14px; }
.mm-l3-root .l3-rail-item {
  display: flex; flex-direction: column; gap: 2px; width: 100%; text-align: left; background: #f8faff; border: 1px solid var(--line, #e6eaf1);
  border-radius: 9px; padding: 9px 10px; margin-top: 8px; font: inherit; font-size: 12.5px; cursor: pointer; color: var(--navy, #142342);
}
.mm-l3-root .l3-rail-item span { font-size: 12px; color: var(--l3-muted, #64748b); }
.mm-l3-root .l3-rail-item:hover { border-color: #b5c6e8; }
.mm-l3-root .l3-ready { display: flex; align-items: center; gap: 8px; padding: 6px 0; font-size: 12.5px; }
.mm-l3-root .l3-ready b { margin-left: auto; font-size: 12px; color: var(--slate, #5b6b86); text-align: right; }
.mm-l3-root .l3-dot { width: 8px; height: 8px; border-radius: 50%; flex: 0 0 8px; background: var(--l3-warn, #8f570d); }
.mm-l3-root .l3-dot.ok { background: var(--l3-ok, #0f8a5f); }
.mm-l3-root .l3-backdrop { position: fixed; inset: 0; background: rgba(20,35,66,.38); z-index: 2400; }
.mm-l3-root .l3-drawer, .mm-l3-root .l3-modal {
  position: fixed; z-index: 2401; background: var(--paper, #ffffff); display: flex; flex-direction: column;
  box-shadow: 0 18px 50px rgba(20,35,66,.25); font-size: 13px; color: var(--navy, #142342);
}
.mm-l3-root .l3-drawer { top: 0; right: 0; bottom: 0; width: min(560px, 100%); }
.mm-l3-root .l3-modal { top: 50%; left: 50%; transform: translate(-50%, -50%); width: min(760px, calc(100% - 24px)); max-height: calc(100vh - 32px); border-radius: 14px; }
.mm-l3-root .l3-dialog-head { display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 14px 18px; border-bottom: 1px solid var(--line, #e6eaf1); }
.mm-l3-root .l3-dialog-head h2 { font-size: 16px; margin: 0; font-weight: 800; overflow-wrap: anywhere; }
.mm-l3-root .l3-dialog-body { padding: 14px 18px; overflow-y: auto; flex: 1 1 auto; }
.mm-l3-root .l3-dialog-foot { display: flex; justify-content: flex-end; gap: 8px; padding: 12px 18px; border-top: 1px solid var(--line, #e6eaf1); }
.mm-l3-root .l3-form-error { color: var(--l3-bad, #b42318); font-size: 12.5px; font-weight: 700; margin: 8px 0 0; min-height: 1px; }
@media (max-width: 1100px) {
  .mm-l3-root .l3-layout { grid-template-columns: 1fr; }
  .mm-l3-root .l3-kpis, .mm-l3-root .l3-steps, .mm-l3-root .l3-filters { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
  .mm-l3-root .l3-kpis, .mm-l3-root .l3-steps, .mm-l3-root .l3-filters, .mm-l3-root .l3-grid2, .mm-l3-root .l3-grid3 { grid-template-columns: 1fr; }
  .mm-l3-root .l3-modal { top: auto; bottom: 0; left: 0; transform: none; width: 100%; max-height: 92vh; border-radius: 14px 14px 0 0; }
  .mm-l3-root .l3-btn { white-space: normal; }
}

/* ---- Level 4 Execution & Automation (.mm-l4-root also carries .mm-l3-root, so l3-* styles apply) ---- */
.mm-l4-root .l4-banner {
  display: flex; gap: 12px; align-items: flex-start; border-radius: 12px; padding: 12px 16px; margin: 0 0 14px; font-size: 13px; line-height: 1.55;
  background: var(--l4-banner-bg, #eef1fb); border: 1px solid var(--l4-banner-line, #c9d2f1); color: var(--navy, #142342);
}
.mm-l4-root .l4-banner .l3-ico { color: var(--blue, #3F51B5); flex: 0 0 auto; margin-top: 2px; }
.mm-l4-root .l4-banner b { display: block; color: var(--blue-dark, #303F9F); }
.mm-l4-root .l4-banner span { display: block; color: var(--slate, #5b6b86); }
.mm-l4-root .l4-kpis { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.mm-l4-root .l4-steps { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.mm-l4-root .l3-step.l4-done { background: var(--soft, #e9ecfb); border-color: var(--l4-done-line, #b9c4ef); }
.mm-l4-root .l3-step .l3-pill { align-self: flex-start; margin-top: 4px; }
.mm-l4-root .l4-gates { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }
.mm-l4-root .l4-actions { flex-wrap: wrap; justify-content: flex-start; margin: 10px 0 12px; }
.mm-l4-root .l4-preview { border: 1px solid var(--line, #e6eaf1); border-radius: 10px; padding: 10px 12px; background: var(--bg, #f4f5f6); }
.mm-l4-root .l4-prev-sec { margin-top: 8px; }
.mm-l4-root .l4-prev-sec span { display: block; font-size: 12px; font-weight: 700; color: var(--slate, #5b6b86); }
.mm-l4-root .l4-prev-sec p { margin: 2px 0 0; font-size: 13px; line-height: 1.5; white-space: pre-wrap; overflow-wrap: anywhere; color: var(--navy, #142342); }
.mm-l4-root .l4-pre {
  margin: 8px 0 0; padding: 10px 12px; max-height: 320px; overflow: auto; border-radius: 10px; font-size: 12px; line-height: 1.5;
  font-family: ui-monospace, Consolas, monospace; background: var(--bg, #f4f5f6); border: 1px solid var(--line, #e6eaf1); white-space: pre-wrap; overflow-wrap: anywhere;
}
.mm-l4-root .l4-blocked { border-color: var(--l4-blocked-line, #e7c48a); background: var(--l4-blocked-bg, #fff8ec); color: var(--l3-warn, #8f570d); }
.mm-l4-root .l4-cal-day { border-top: 1px solid var(--line, #e6eaf1); padding-top: 10px; margin-top: 10px; }
.mm-l4-root .l4-cal-day h3 { font-size: 13px; margin: 0 0 4px; color: var(--blue-dark, #303F9F); }
@media (max-width: 1100px) {
  .mm-l4-root .l4-kpis, .mm-l4-root .l4-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
  .mm-l4-root .l4-kpis, .mm-l4-root .l4-steps { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
  .mm-l4-root *, .mm-l4-root *::before, .mm-l4-root *::after { transition: none !important; animation: none !important; scroll-behavior: auto !important; }
}

/* ---- Level 5 Measurement & Optimization (.mm-l5-root also carries .mm-l3-root, so l3-* styles apply) ---- */
.mm-l5-root {
  --l5-bar: var(--blue, #3F51B5); --l5-gap: #cbd2dc; --l5-axis: #dfe4ec; --l5-track: #eef1f7;
  --l5-heat-bg: #f4f5f6; --l5-heat-line: #e6eaf1; --l5-heat-rgb: 63, 81, 181;
}
.mm-l5-root .l5-banner {
  display: flex; gap: 12px; align-items: flex-start; border-radius: 12px; padding: 12px 16px; margin: 0 0 14px; font-size: 13px; line-height: 1.55;
  background: var(--l4-banner-bg, #eef1fb); border: 1px solid var(--l4-banner-line, #c9d2f1); color: var(--navy, #142342);
}
.mm-l5-root .l5-banner .l3-ico { color: var(--blue, #3F51B5); flex: 0 0 auto; margin-top: 2px; }
.mm-l5-root .l5-banner b { display: block; color: var(--blue-dark, #303F9F); }
.mm-l5-root .l5-banner span { display: block; color: var(--slate, #5b6b86); }
.mm-l5-root .l5-filters {
  display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px 12px; align-items: end; margin: 0 0 4px;
  background: var(--paper, #ffffff); border: 1px solid var(--line, #e6eaf1); border-radius: 13px; padding: 12px 14px;
}
.mm-l5-root .l5-filters .l3-field { margin: 0; }
.mm-l5-root .l5-filter-act { display: flex; align-items: flex-end; }
.mm-l5-root .l5-filter-act .l3-btn { width: 100%; }
.mm-l5-root .l5-hm-ctl { margin: 10px 0 12px; background: var(--bg, #f4f5f6); box-shadow: none; }
.mm-l5-root .l5-kpis { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.mm-l5-root .l5-kpi { display: flex; flex-direction: column; gap: 2px; }
.mm-l5-root .l5-kpi .l3-kpi-value.l5-unknown { font-size: 15px; color: var(--l3-muted, #64748b); letter-spacing: 0; }
.mm-l5-root .l5-kpi-status { margin-top: 4px; display: flex; flex-wrap: wrap; gap: 4px; }
.mm-l5-root .l5-change { font-size: 12px; color: var(--blue-dark, #303F9F); margin-top: 3px; line-height: 1.45; }
.mm-l5-root .l5-two { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.mm-l5-root .l5-h3 { margin: 10px 0 4px; font-size: 13px; }
.mm-l5-root .l5-panel-head { display: flex; justify-content: space-between; align-items: center; gap: 10px; flex-wrap: wrap; margin-bottom: 6px; }
.mm-l5-root .l5-panel-head h2 { margin: 0; }
.mm-l5-root .l5-pills { display: flex; flex-wrap: wrap; gap: 6px; margin: 4px 0 10px; }
.mm-l5-root .l5-chart { margin: 0; min-width: 0; }
.mm-l5-root .l5-chart svg { display: block; width: 100%; height: 120px; background: var(--bg, #f4f5f6); border-radius: 10px; }
.mm-l5-root .l5-bar { fill: var(--l5-bar, #3F51B5); }
.mm-l5-root .l5-gap { fill: var(--l5-gap, #cbd2dc); }
.mm-l5-root .l5-axis { stroke: var(--l5-axis, #dfe4ec); stroke-width: 1; }
.mm-l5-root .l5-ticks { display: flex; justify-content: space-between; font-size: 12px; color: var(--l3-muted, #64748b); margin-top: 3px; }
.mm-l5-root .l5-chart figcaption { margin-top: 4px; }.mm-l5-root .l5-fstep { margin: 0 0 10px; }
.mm-l5-root .l5-fstep-head { display: flex; justify-content: space-between; gap: 10px; flex-wrap: wrap; font-size: 13px; color: var(--navy, #142342); }
.mm-l5-root .l5-fstep-head span { font-size: 12px; color: var(--l3-muted, #64748b); }
.mm-l5-root .l5-fbar { height: 10px; border-radius: 999px; background: var(--l5-track, #eef1f7); overflow: hidden; margin-top: 4px; }
.mm-l5-root .l5-fbar span { display: block; height: 100%; width: var(--l5-w, 0%); background: var(--l5-bar, #3F51B5); border-radius: 999px; }
.mm-l5-root .l5-frow { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1.4fr) minmax(0, 0.7fr); gap: 8px; align-items: end; }
.mm-l5-root .l5-heat {
  display: grid; grid-template-columns: repeat(var(--l5-grid, 20), minmax(0, 1fr)); gap: 1px; aspect-ratio: 4 / 3; max-width: 640px;
  background: var(--l5-heat-line, #e6eaf1); border: 1px solid var(--l5-heat-line, #e6eaf1); border-radius: 10px; overflow: hidden; margin: 6px 0 10px;
}
.mm-l5-root .l5-cell { background: var(--l5-heat-bg, #f4f5f6); min-height: 6px; }
.mm-l5-root .l5-cell[style] { background: rgba(var(--l5-heat-rgb, 63, 81, 181), var(--l5-h, 0.2)); }
@media (max-width: 1100px) {
  .mm-l5-root .l5-filters, .mm-l5-root .l5-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .mm-l5-root .l5-two { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .mm-l5-root .l5-filters, .mm-l5-root .l5-kpis, .mm-l5-root .l5-frow { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
  .mm-l5-root *, .mm-l5-root *::before, .mm-l5-root *::after { transition: none !important; animation: none !important; scroll-behavior: auto !important; }
}

/* MarketingMind Ops console (/{locale}/ops), admin-only. Scoped to .mm-ops-root / .mm-ops-footer. */
.mm-ops-root{--ops-primary:#3F51B5;--ops-primary-dark:#303F9F;--ops-ink:#1c1d21;--ops-muted:#4a4f5c;--ops-line:rgba(63,81,181,.16);--ops-soft:#eef0fa;--ops-card:#ffffff;--ops-ok:#1b6e3a;--ops-ok-bg:#e6f4ea;--ops-warn:#7a4b00;--ops-warn-bg:#fff4dc;--ops-bad:#8a1f11;--ops-bad-bg:#fdecea;font-family:"Plus Jakarta Sans","Segoe UI",system-ui,sans-serif;color:var(--ops-ink,#1c1d21);font-size:14px;line-height:1.5;display:flex;flex-direction:column;gap:14px}
.mm-ops-root .mm-ops-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}
.mm-ops-root .mm-ops-title{margin:0;font-size:22px;font-weight:700}
.mm-ops-root .mm-ops-sub{margin:4px 0 0;color:var(--ops-muted,#4a4f5c);font-size:14px}
.mm-ops-root .mm-ops-who{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ops-muted,#4a4f5c)}
.mm-ops-root .mm-ops-tabs{display:flex;flex-wrap:wrap;gap:6px;border-bottom:1px solid var(--ops-line,rgba(63,81,181,.16));padding-bottom:8px}
.mm-ops-root .mm-ops-tab{font:inherit;font-size:14px;font-weight:600;color:var(--ops-primary,#3F51B5);background:transparent;border:1px solid transparent;border-radius:8px;padding:7px 12px;cursor:pointer}
.mm-ops-root .mm-ops-tab:hover{background:var(--ops-soft,#eef0fa)}
.mm-ops-root .mm-ops-tab[aria-selected="true"]{background:var(--ops-primary,#3F51B5);color:#ffffff}
.mm-ops-root .mm-ops-body{display:flex;flex-direction:column;gap:14px}
.mm-ops-root .mm-ops-card{background:var(--ops-card,#ffffff);border:1px solid var(--ops-line,rgba(63,81,181,.16));border-radius:12px;padding:16px 18px;display:flex;flex-direction:column;gap:10px;min-width:0}
.mm-ops-root .mm-ops-h2{margin:0;font-size:16px;font-weight:700}
.mm-ops-root .mm-ops-muted{margin:0;color:var(--ops-muted,#4a4f5c);font-size:13px}
.mm-ops-root .mm-ops-note,.mm-ops-root .mm-ops-empty{color:var(--ops-muted,#4a4f5c);font-size:14px}
.mm-ops-root .mm-ops-error{color:var(--ops-bad,#8a1f11);background:var(--ops-bad-bg,#fdecea);border:1px solid #f5c6c0;border-radius:10px;padding:12px 14px;font-size:14px}
.mm-ops-root .mm-ops-grid{display:flex;flex-direction:column;border:1px solid var(--ops-line,rgba(63,81,181,.16));border-radius:10px;overflow:hidden;min-width:0}
.mm-ops-root .mm-ops-row{display:grid;grid-template-columns:repeat(var(--ops-cols,4),minmax(0,1fr));gap:10px;padding:8px 12px;border-top:1px solid var(--ops-line,rgba(63,81,181,.16));font-size:13px}
.mm-ops-root .mm-ops-row:first-child{border-top:0}
.mm-ops-root .mm-ops-row--head{background:var(--ops-soft,#eef0fa);font-weight:700;font-size:12px;color:var(--ops-primary-dark,#303F9F)}
.mm-ops-root .mm-ops-cell{min-width:0;overflow-wrap:anywhere}
.mm-ops-root .mm-ops-cell-k{display:none}
.mm-ops-root .mm-ops-pill{display:inline-flex;align-items:center;border-radius:999px;padding:2px 10px;font-size:12px;font-weight:700;border:1px solid transparent}
.mm-ops-root .mm-ops-pill--ok{color:var(--ops-ok,#1b6e3a);background:var(--ops-ok-bg,#e6f4ea)}
.mm-ops-root .mm-ops-pill--warn{color:var(--ops-warn,#7a4b00);background:var(--ops-warn-bg,#fff4dc)}
.mm-ops-root .mm-ops-pill--bad{color:var(--ops-bad,#8a1f11);background:var(--ops-bad-bg,#fdecea)}
.mm-ops-root .mm-ops-pill--info{color:var(--ops-primary-dark,#303F9F);background:var(--ops-soft,#eef0fa)}
.mm-ops-root .mm-ops-btn{font:inherit;font-size:14px;font-weight:650;color:#ffffff;background:var(--ops-primary,#3F51B5);border:1px solid var(--ops-primary,#3F51B5);border-radius:8px;padding:8px 14px;cursor:pointer;white-space:nowrap}
.mm-ops-root .mm-ops-btn:hover{background:var(--ops-primary-dark,#303F9F)}
.mm-ops-root .mm-ops-btn--ghost{color:var(--ops-primary,#3F51B5);background:#ffffff;border-color:var(--ops-line,rgba(63,81,181,.3))}
.mm-ops-root .mm-ops-btn--ghost:hover{background:var(--ops-soft,#eef0fa)}
.mm-ops-root .mm-ops-btn--danger{background:var(--ops-bad,#8a1f11);border-color:var(--ops-bad,#8a1f11)}
.mm-ops-root .mm-ops-btn--danger:hover{background:#6e180d}
.mm-ops-root .mm-ops-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.mm-ops-root .mm-ops-tenant{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 0;border-top:1px solid var(--ops-line,rgba(63,81,181,.16))}
.mm-ops-root .mm-ops-tenant:first-of-type{border-top:0}
.mm-ops-root .mm-ops-tenant-main{display:flex;flex-direction:column;gap:2px;min-width:0}
.mm-ops-root .mm-ops-counts{font-size:13px;color:var(--ops-muted,#4a4f5c);overflow-wrap:anywhere}
.mm-ops-root .mm-ops-ws{display:flex;flex-direction:column;gap:8px;padding:12px 0;border-top:1px solid var(--ops-line,rgba(63,81,181,.16))}
.mm-ops-root .mm-ops-ws-head{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}
.mm-ops-root .mm-ops-form{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}
.mm-ops-root .mm-ops-field{display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:600;color:var(--ops-muted,#4a4f5c);min-width:200px;flex:1 1 220px}
.mm-ops-root .mm-ops-input{font:inherit;font-size:14px;color:var(--ops-ink,#1c1d21);border:1px solid rgba(63,81,181,.3);border-radius:8px;padding:7px 10px;background:#ffffff}
.mm-ops-root .mm-ops-input:focus{outline:2px solid var(--ops-primary,#3F51B5);outline-offset:1px}
.mm-ops-root .mm-ops-msg{font-size:13px;color:var(--ops-muted,#4a4f5c)}
.mm-ops-root .mm-ops-msg--bad{color:var(--ops-bad,#8a1f11)}
.mm-ops-footer{--ops-foot-ink:#4a4f5c;--ops-foot-line:rgba(63,81,181,.16);display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:28px;padding-top:14px;border-top:1px solid var(--ops-foot-line,rgba(63,81,181,.16));font-family:"Plus Jakarta Sans","Segoe UI",system-ui,sans-serif;font-size:12px;color:var(--ops-foot-ink,#4a4f5c)}
@media (max-width:900px){.mm-ops-root .mm-ops-row{grid-template-columns:1fr}.mm-ops-root .mm-ops-row--head{display:none}.mm-ops-root .mm-ops-cell-k{display:block;font-size:12px;font-weight:700;color:var(--ops-primary-dark,#303F9F)}}

/*__MM_WS_CSS_START__*/
/* Organizations & Workspaces (customer shell). Brand palette only; 12px minimum text. */
#mm-cust-app [data-mm-gate][hidden], #mm-cust-app .mm-ws-picker[hidden], #mm-ws-root [hidden] { display:none !important; }
#mm-cust-app .mm-ws-picker { display:flex; align-items:center; gap:8px; }
#mm-cust-app .mm-ws-pl { font-size:.75rem; font-weight:700; color:var(--mm-ink-2); text-transform:uppercase; letter-spacing:.04em; }
#mm-cust-app .mm-ws-sel { font:inherit; font-size:.85rem; font-weight:600; color:var(--mm-ink); background:var(--mm-card); border:1px solid var(--mm-line); border-radius:10px; padding:7px 10px; max-width:260px; }
#mm-cust-app .mm-ws-sel:focus, #mm-ws-root input:focus, #mm-ws-root select:focus { outline:2px solid var(--mm-brand); outline-offset:1px; border-color:var(--mm-brand); }
#mm-ws-root { display:flex; flex-direction:column; gap:16px; }
#mm-ws-ui { display:flex; flex-direction:column; gap:16px; }
#mm-ws-root .mm-ws-blocked { text-align:center; padding:24px 12px; color:var(--mm-ink-2); }
#mm-ws-root .mm-ws-blocked h3 { margin:0 0 6px; color:var(--mm-ink); font-size:1.05rem; }
#mm-ws-root .mm-ws-blocked p { margin:0 0 14px; font-size:.9rem; }
#mm-ws-root .mm-ws-head { display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap; }
#mm-ws-root .mm-ws-ident { display:flex; align-items:center; gap:12px; min-width:0; }
#mm-ws-root .mm-ws-ico { width:42px; height:42px; border-radius:12px; background:var(--mm-brand-l); color:var(--mm-brand); display:grid; place-items:center; flex:none; }
#mm-ws-root .mm-ws-ico svg { width:22px; height:22px; }
#mm-ws-root .mm-ws-name { font-size:1.1rem; font-weight:800; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
#mm-ws-root .mm-ws-meta { color:var(--mm-ink-2); font-size:.8rem; margin-top:2px; }
#mm-ws-root .mm-ws-headact, #mm-ws-root .mm-ws-actions { display:flex; gap:8px; flex-wrap:wrap; align-items:center; }
#mm-ws-root .mm-ws-actions { margin-top:12px; }
#mm-ws-root .mm-ws-btn { font:inherit; font-size:.85rem; font-weight:700; color:#fff; background:var(--mm-brand); border:1px solid var(--mm-brand); border-radius:10px; padding:8px 14px; cursor:pointer; text-decoration:none; display:inline-flex; align-items:center; gap:6px; }
#mm-ws-root .mm-ws-btn:hover { background:var(--mm-brand-d); border-color:var(--mm-brand-d); }
#mm-ws-root .mm-ws-btn:disabled { opacity:.55; cursor:default; }
#mm-ws-root .mm-ws-btn:focus-visible, #mm-ws-root .mm-ws-tab:focus-visible { outline:2px solid var(--mm-brand); outline-offset:2px; }
#mm-ws-root .mm-ws-ghost { color:var(--mm-brand-d); background:var(--mm-card); border-color:var(--mm-line); }
#mm-ws-root .mm-ws-ghost:hover { background:#f6f8ff; border-color:var(--mm-brand); }
#mm-ws-root .mm-ws-sm { font-size:.78rem; padding:5px 10px; }
#mm-ws-root .mm-ws-tabs { display:flex; gap:4px; flex-wrap:wrap; border-bottom:1px solid var(--mm-line); }
#mm-ws-root .mm-ws-tab { font:inherit; font-size:.85rem; font-weight:700; color:var(--mm-ink-2); background:none; border:0; border-bottom:2px solid transparent; padding:10px 12px; cursor:pointer; }
#mm-ws-root .mm-ws-tab.mm-on { color:var(--mm-brand); border-bottom-color:var(--mm-brand); }
#mm-ws-root .mm-ws-stats { display:grid; grid-template-columns:repeat(auto-fit, minmax(160px, 1fr)); gap:12px; }
#mm-ws-root .mm-ws-stat { border:1px solid var(--mm-line); border-radius:12px; padding:14px; }
#mm-ws-root .mm-ws-sv { font-size:1.4rem; font-weight:800; color:var(--mm-ink); }
#mm-ws-root .mm-ws-sl { font-size:.8rem; font-weight:700; color:var(--mm-ink-2); margin-top:2px; }
#mm-ws-root .mm-ws-sh { font-size:.75rem; color:var(--mm-ink-2); margin-top:4px; }
#mm-ws-root .mm-ws-help { color:var(--mm-ink-2); font-size:.85rem; line-height:1.5; margin:12px 0 0; }
#mm-ws-root .mm-ws-note { font-size:.85rem; line-height:1.5; padding:10px 12px; border-radius:10px; background:var(--mm-brand-l); color:var(--mm-brand-d); margin:12px 0 0; }
#mm-ws-root .mm-ws-note.mm-ws-err { background:#fdecea; color:#a3261b; }
#mm-ws-root .mm-ws-note.mm-ws-ok { background:#e6f7f0; color:#12805a; }
#mm-ws-root .mm-ws-sep { margin-top:22px; }
#mm-ws-root .mm-ws-cur { background:#f6f8ff; border-radius:10px; padding-left:10px; padding-right:10px; }
#mm-ws-root .mm-ws-rowlink { color:inherit; text-decoration:none; }
#mm-ws-root .mm-ws-rowlink:hover .mm-cs-rt { color:var(--mm-brand); }
#mm-ws-root .mm-ws-you { font-size:.75rem; font-weight:700; color:var(--mm-brand); background:var(--mm-brand-l); border-radius:999px; padding:1px 8px; margin-left:6px; }
#mm-ws-root .mm-ws-ctrl { display:flex; gap:6px; align-items:center; flex-wrap:wrap; justify-content:flex-end; }
#mm-ws-root .mm-ws-form { display:flex; flex-direction:column; gap:6px; max-width:520px; margin-top:14px; }
#mm-ws-root .mm-ws-form label { font-size:.8rem; font-weight:700; color:var(--mm-ink); margin-top:6px; }
#mm-ws-root .mm-ws-form input, #mm-ws-root .mm-ws-form select { font:inherit; font-size:.9rem; color:var(--mm-ink); background:var(--mm-card); border:1px solid var(--mm-line); border-radius:10px; padding:9px 11px; }
#mm-ws-root .mm-ws-inv { border-top:1px solid var(--mm-line); padding-top:14px; max-width:none; }
#mm-ws-root .mm-ws-link { border:1px solid var(--mm-brand); border-radius:12px; padding:14px; margin-top:12px; background:#f6f8ff; }
#mm-ws-root .mm-ws-link input { width:100%; box-sizing:border-box; font-size:.8rem; margin-top:8px; }
#mm-ws-root .mm-ws-lt { display:flex; align-items:center; gap:8px; font-weight:800; font-size:.9rem; color:var(--mm-brand-d); }
#mm-ws-root .mm-ws-lt svg { width:18px; height:18px; }
#mm-ws-root .mm-ws-capgrid { display:grid; grid-template-columns:repeat(auto-fit, minmax(220px, 1fr)); gap:12px; }
#mm-ws-root .mm-ws-capg { border:1px solid var(--mm-line); border-radius:12px; padding:12px; }
#mm-ws-root .mm-ws-capt { font-size:.78rem; font-weight:800; color:var(--mm-ink-2); text-transform:uppercase; letter-spacing:.04em; margin-bottom:6px; }
#mm-ws-root .mm-ws-cap { display:flex; align-items:center; gap:8px; font-size:.85rem; color:#97a0b0; padding:4px 0; }
#mm-ws-root .mm-ws-cap.mm-yes { color:var(--mm-ink); }
#mm-ws-root .mm-ws-cap svg { width:16px; height:16px; flex:none; }
#mm-ws-root .mm-ws-cap.mm-yes svg { color:var(--mm-ok); }
#mm-ws-root .mm-ws-deleg { border:1px solid var(--mm-line); border-radius:12px; padding:12px; margin-top:10px; display:flex; flex-direction:column; gap:6px; }
#mm-ws-root .mm-ws-chk { display:flex; align-items:center; gap:8px; font-size:.85rem; }
#mm-ws-root .mm-ws-chk input { accent-color:var(--mm-brand); width:16px; height:16px; }
#mm-ws-root .mm-ws-confirm p { font-size:.9rem; margin:0; }
#mm-ws-root .mm-ws-pending, #mm-ws-root .mm-ws-accept { border-color:var(--mm-brand); }
#mm-cust-app .mm-ws-vh, #mm-ws-root .mm-ws-vh { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
@media (max-width:720px) {
  #mm-cust-app .mm-ws-pl { display:none; }
  #mm-cust-app .mm-ws-sel { max-width:160px; }
  #mm-ws-root .mm-ws-ctrl { justify-content:flex-start; }
}
/*__MM_WS_CSS_END__*/
/*__MM_CC_CSS_START__*/
/* MM CUSTOMER - Command Center. Scoped to #mm-cust-app .mm-cc. */
#mm-cc-root [hidden] { display:none !important; }
#mm-cust-app .mm-cc, #mm-cust-app #mm-cc-ui { display:flex; flex-direction:column; gap:16px; }
#mm-cust-app .mm-cc .mm-cs-ph { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:12px; }
#mm-cust-app .mm-cc-blocked { padding:8px 4px; }
#mm-cust-app .mm-cc-blocked h3 { margin:0 0 6px; font-size:1.05rem; font-weight:700; color:var(--mm-ink); }
#mm-cust-app .mm-cc-blocked p { margin:0 0 12px; font-size:0.875rem; color:var(--mm-ink-2); line-height:1.5; max-width:62ch; }
#mm-cust-app .mm-cc-ro { display:inline-flex; align-items:center; gap:6px; font-size:0.75rem; font-weight:600; color:var(--mm-ink-2); }
#mm-cust-app .mm-cc-ro svg { width:14px; height:14px; }
#mm-cust-app .mm-cc-badges { display:grid; grid-template-columns:repeat(auto-fill, minmax(200px, 1fr)); gap:10px; }
#mm-cust-app .mm-cc-badge { display:flex; align-items:center; gap:10px; padding:10px 12px; border:1px solid var(--mm-line); border-radius:12px; background:var(--mm-card); }
#mm-cust-app .mm-cc-badge svg { width:22px; height:22px; flex:0 0 22px; color:var(--mm-brand); }
#mm-cust-app .mm-cc-badge.mm-cc-hold { background:#fdf6ec; border-color:#f3dcb8; }
#mm-cust-app .mm-cc-badge.mm-cc-hold svg { color:#9a5b05; }
#mm-cust-app .mm-cc-bl { font-size:0.75rem; color:var(--mm-ink-2); font-weight:600; }
#mm-cust-app .mm-cc-bv { font-size:0.875rem; color:var(--mm-ink); font-weight:700; }
#mm-cust-app .mm-cc-help { margin:10px 0 0; font-size:0.8125rem; color:var(--mm-ink-2); line-height:1.5; }
#mm-cust-app .mm-cc-life { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(5, minmax(0, 1fr)); gap:10px; }
#mm-cust-app .mm-cc-life li { display:flex; gap:10px; align-items:flex-start; padding:10px; border-radius:12px; background:var(--mm-page); }
#mm-cust-app .mm-cc-n { flex:0 0 26px; height:26px; border-radius:50%; background:var(--mm-brand); color:#fff; font-size:0.8125rem; font-weight:700; display:flex; align-items:center; justify-content:center; }
#mm-cust-app .mm-cc-lt { font-size:0.875rem; font-weight:700; color:var(--mm-ink); }
#mm-cust-app .mm-cc-ls { font-size:0.75rem; color:var(--mm-ink-2); line-height:1.4; margin-top:2px; }
#mm-cust-app .mm-cc-grid { display:grid; grid-template-columns:minmax(260px, 2fr) minmax(0, 3fr); gap:16px; align-items:start; }
#mm-cust-app .mm-cc-run { display:block; width:100%; text-align:left; font:inherit; padding:12px; margin:0 0 8px; border:1px solid var(--mm-line); border-radius:12px; background:var(--mm-card); cursor:pointer; }
#mm-cust-app .mm-cc-run:hover, #mm-cust-app .mm-cc-run:focus-visible { border-color:var(--mm-brand); outline:none; }
#mm-cust-app .mm-cc-run.mm-on { border-color:var(--mm-brand); box-shadow:0 0 0 3px var(--mm-brand-l); }
#mm-cust-app .mm-cc-rt { font-size:0.875rem; font-weight:700; color:var(--mm-ink); }
#mm-cust-app .mm-cc-rs { font-size:0.75rem; color:var(--mm-ink-2); margin-top:2px; line-height:1.4; }
#mm-cust-app .mm-cc-rr { display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin-top:8px; }
#mm-cust-app .mm-cc-why { font-size:0.75rem; color:#9a5b05; line-height:1.4; }
#mm-cust-app .mm-cc-ver { font-size:0.75rem; color:var(--mm-ink-2); font-weight:600; }
#mm-cust-app .mm-cc-def { padding:10px 0; border-top:1px solid var(--mm-line); }
#mm-cust-app .mm-cc-def:first-of-type { border-top:0; }
#mm-cust-app .mm-cc-empty { font-size:0.8125rem; color:var(--mm-ink-2); padding:10px 0; }
#mm-cust-app .mm-cc-note { font-size:0.8125rem; line-height:1.5; padding:10px 12px; border-radius:10px; background:var(--mm-brand-l); color:var(--mm-brand-d); margin:10px 0; }
#mm-cust-app .mm-cc-note.mm-cc-err { background:#fdf0dd; color:#9a5b05; }
#mm-cust-app .mm-cc-ok { display:flex; align-items:center; gap:8px; font-size:0.8125rem; color:#12805a; font-weight:600; margin:4px 0 10px; }
#mm-cust-app .mm-cc-ok svg { width:16px; height:16px; }
#mm-cust-app .mm-cc-btn { display:inline-flex; align-items:center; justify-content:center; font:inherit; font-size:0.875rem; font-weight:700; padding:9px 16px; border-radius:10px; border:1px solid var(--mm-brand); background:var(--mm-brand); color:#fff; cursor:pointer; text-decoration:none; }
#mm-cust-app .mm-cc-btn:hover { background:var(--mm-brand-d); border-color:var(--mm-brand-d); }
#mm-cust-app .mm-cc-btn:disabled { opacity:0.55; cursor:default; }
#mm-cust-app .mm-cc-btn.mm-cc-ghost { background:var(--mm-card); color:var(--mm-brand-d); }
#mm-cust-app .mm-cc-btn.mm-cc-ghost:hover { background:var(--mm-brand-l); }
#mm-cust-app .mm-cc-btn.mm-cc-sm { font-size:0.8125rem; padding:6px 12px; }
#mm-cust-app .mm-cc-actions { display:flex; flex-wrap:wrap; gap:8px; margin:12px 0; }
#mm-cust-app .mm-cc-tabs { display:flex; gap:4px; border-bottom:1px solid var(--mm-line); margin:14px 0 12px; }
#mm-cust-app .mm-cc-tab { font:inherit; font-size:0.8125rem; font-weight:700; padding:8px 12px; border:0; background:none; color:var(--mm-ink-2); cursor:pointer; border-bottom:2px solid transparent; margin-bottom:-1px; }
#mm-cust-app .mm-cc-tab.mm-on { color:var(--mm-brand-d); border-bottom-color:var(--mm-brand); }
#mm-cust-app .mm-cc-stages, #mm-cust-app .mm-cc-events { list-style:none; margin:0; padding:0; }
#mm-cust-app .mm-cc-stage { display:flex; gap:12px; padding:0 0 14px; position:relative; }
#mm-cust-app .mm-cc-stage:not(:last-child)::after { content:""; position:absolute; left:11px; top:26px; bottom:2px; width:2px; background:var(--mm-line); }
#mm-cust-app .mm-cc-dot { flex:0 0 24px; height:24px; border-radius:50%; border:2px solid var(--mm-line); background:var(--mm-card); display:flex; align-items:center; justify-content:center; color:#fff; }
#mm-cust-app .mm-cc-dot svg { width:14px; height:14px; }
#mm-cust-app .mm-cc-s-completed .mm-cc-dot { background:var(--mm-ok); border-color:var(--mm-ok); }
#mm-cust-app .mm-cc-s-ready .mm-cc-dot, #mm-cust-app .mm-cc-s-queued .mm-cc-dot, #mm-cust-app .mm-cc-s-running .mm-cc-dot { border-color:var(--mm-brand); }
#mm-cust-app .mm-cc-s-blocked_safety .mm-cc-dot, #mm-cust-app .mm-cc-s-failed .mm-cc-dot, #mm-cust-app .mm-cc-s-stale_review_required .mm-cc-dot { border-color:var(--mm-warn); }
#mm-cust-app .mm-cc-sbody { flex:1; min-width:0; }
#mm-cust-app .mm-cc-sh { display:flex; flex-wrap:wrap; align-items:center; gap:8px; }
#mm-cust-app .mm-cc-events li { padding:8px 0; border-top:1px solid var(--mm-line); }
#mm-cust-app .mm-cc-events li:first-child { border-top:0; }
#mm-cust-app .mm-cc-ev { display:grid; grid-template-columns:repeat(auto-fill, minmax(180px, 1fr)); gap:10px; }
#mm-cust-app .mm-cc-evc { padding:10px 12px; border:1px solid var(--mm-line); border-radius:12px; }
#mm-cust-app .mm-cc-costs { display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:10px; }
#mm-cust-app .mm-cc-stat { padding:12px; border-radius:12px; background:var(--mm-page); }
#mm-cust-app .mm-cc-sv { font-size:1.125rem; font-weight:800; color:var(--mm-ink); }
#mm-cust-app .mm-cc-sl { font-size:0.75rem; color:var(--mm-ink-2); margin-top:2px; }
#mm-cust-app .mm-cc-form { display:flex; flex-direction:column; gap:6px; padding:12px; margin:0 0 12px; border:1px solid var(--mm-line); border-radius:12px; background:var(--mm-page); }
#mm-cust-app .mm-cc-form label { font-size:0.8125rem; font-weight:600; color:var(--mm-ink); }
#mm-cust-app .mm-cc-form input, #mm-cust-app .mm-cc-form select { font:inherit; font-size:0.875rem; padding:8px 10px; border:1px solid var(--mm-line); border-radius:8px; background:var(--mm-card); color:var(--mm-ink); }
#mm-cust-app .mm-cc-form input:focus, #mm-cust-app .mm-cc-form select:focus { outline:2px solid var(--mm-brand-l); border-color:var(--mm-brand); }
#mm-cust-app .mm-cc-fs { border:0; padding:0; margin:6px 0; display:flex; flex-direction:column; gap:6px; }
#mm-cust-app .mm-cc-fs legend { font-size:0.8125rem; font-weight:600; color:var(--mm-ink); margin-bottom:4px; }
#mm-cust-app .mm-cc-form .mm-cc-chk { display:flex; align-items:center; gap:8px; font-weight:500; }
#mm-cust-app .mm-cc-form .mm-cc-chk input { width:16px; height:16px; padding:0; }
@media (max-width: 900px) {
  #mm-cust-app .mm-cc-grid { grid-template-columns:1fr; }
  #mm-cust-app .mm-cc-life { grid-template-columns:1fr; }
  #mm-cust-app .mm-cc-costs { grid-template-columns:1fr; }
}
/*__MM_CC_CSS_END__*/
/*__MM_RP_CSS_START__*/
/* MM CUSTOMER - Research Playbooks. Scoped to #mm-cust-app .mm-rp. */
#mm-rp-root [hidden] { display:none !important; }
#mm-cust-app .mm-rp, #mm-cust-app #mm-rp-ui { display:flex; flex-direction:column; gap:16px; }
#mm-cust-app .mm-rp .mm-cs-ph { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:12px; }
#mm-cust-app .mm-rp-blocked { padding:8px 4px; }
#mm-cust-app .mm-rp-blocked h3 { margin:0 0 6px; font-size:1.05rem; font-weight:700; color:var(--mm-ink); }
#mm-cust-app .mm-rp-blocked p { margin:0 0 12px; font-size:0.875rem; color:var(--mm-ink-2); line-height:1.5; max-width:62ch; }
#mm-cust-app .mm-rp-by { display:inline-flex; align-items:center; gap:6px; font-size:0.75rem; font-weight:600; color:var(--mm-ink-2); }
#mm-cust-app .mm-rp-by svg { width:14px; height:14px; }
#mm-cust-app .mm-rp-help { margin:8px 0 0; font-size:0.8125rem; color:var(--mm-ink-2); line-height:1.5; }
#mm-cust-app .mm-rp-cards { display:grid; grid-template-columns:repeat(auto-fill, minmax(240px, 1fr)); gap:12px; margin-top:12px; }
#mm-cust-app .mm-rp-card { padding:14px; border:1px solid var(--mm-line); border-radius:12px; background:var(--mm-card); }
#mm-cust-app .mm-rp-ch { display:flex; gap:10px; align-items:flex-start; }
#mm-cust-app .mm-rp-ch svg { width:24px; height:24px; flex:0 0 24px; color:var(--mm-brand); }
#mm-cust-app .mm-rp-ct { font-size:0.9375rem; font-weight:700; color:var(--mm-ink); }
#mm-cust-app .mm-rp-pills { display:flex; flex-wrap:wrap; gap:6px; margin-top:6px; }
#mm-cust-app .mm-rp-cs { margin:8px 0; font-size:0.8125rem; color:var(--mm-ink-2); line-height:1.5; }
#mm-cust-app .mm-rp-sub { font-size:0.75rem; font-weight:700; color:var(--mm-ink); text-transform:uppercase; letter-spacing:0.04em; margin:10px 0 4px; }
#mm-cust-app .mm-rp-list { margin:0; padding-left:18px; font-size:0.8125rem; color:var(--mm-ink-2); line-height:1.5; }
#mm-cust-app .mm-rp-warnlist { color:#9a5b05; }
#mm-cust-app .mm-rp-why { margin:10px 0 0; font-size:0.75rem; color:#9a5b05; line-height:1.4; }
#mm-cust-app .mm-rp-grid { display:grid; grid-template-columns:minmax(260px, 2fr) minmax(0, 3fr); gap:16px; align-items:start; }
#mm-cust-app .mm-rp-req { display:block; width:100%; text-align:left; font:inherit; padding:12px; margin:0 0 8px; border:1px solid var(--mm-line); border-radius:12px; background:var(--mm-card); cursor:pointer; }
#mm-cust-app .mm-rp-req:hover, #mm-cust-app .mm-rp-req:focus-visible { border-color:var(--mm-brand); outline:none; }
#mm-cust-app .mm-rp-req.mm-on { border-color:var(--mm-brand); box-shadow:0 0 0 3px var(--mm-brand-l); }
#mm-cust-app .mm-rp-rt { font-size:0.875rem; font-weight:700; color:var(--mm-ink); }
#mm-cust-app .mm-rp-rs { font-size:0.75rem; color:var(--mm-ink-2); margin-top:2px; line-height:1.4; }
#mm-cust-app .mm-rp-rr { display:flex; flex-wrap:wrap; align-items:center; gap:6px; margin-top:8px; }
#mm-cust-app .mm-rp-obj { margin:0 0 6px; font-size:0.875rem; color:var(--mm-ink); line-height:1.5; }
#mm-cust-app .mm-rp-empty { font-size:0.8125rem; color:var(--mm-ink-2); padding:10px 0; }
#mm-cust-app .mm-rp-note { font-size:0.8125rem; line-height:1.5; padding:10px 12px; border-radius:10px; background:var(--mm-brand-l); color:var(--mm-brand-d); margin:10px 0; }
#mm-cust-app .mm-rp-note.mm-rp-err { background:#fdf0dd; color:#9a5b05; }
#mm-cust-app .mm-rp-ok { display:flex; align-items:center; gap:8px; font-size:0.8125rem; color:#12805a; font-weight:600; margin:4px 0 8px; }
#mm-cust-app .mm-rp-ok svg { width:16px; height:16px; }
#mm-cust-app .mm-rp-btn { display:inline-flex; align-items:center; justify-content:center; font:inherit; font-size:0.875rem; font-weight:700; padding:9px 16px; border-radius:10px; border:1px solid var(--mm-brand); background:var(--mm-brand); color:#fff; cursor:pointer; text-decoration:none; }
#mm-cust-app .mm-rp-btn:hover { background:var(--mm-brand-d); border-color:var(--mm-brand-d); }
#mm-cust-app .mm-rp-btn:disabled { opacity:0.55; cursor:default; }
#mm-cust-app .mm-rp-btn.mm-rp-ghost { background:var(--mm-card); color:var(--mm-brand-d); }
#mm-cust-app .mm-rp-btn.mm-rp-ghost:hover { background:var(--mm-brand-l); }
#mm-cust-app .mm-rp-btn.mm-rp-sm { font-size:0.8125rem; padding:6px 12px; }
#mm-cust-app .mm-rp-actions { display:flex; flex-wrap:wrap; gap:8px; margin:12px 0; }
#mm-cust-app .mm-rp-runs { display:flex; flex-wrap:wrap; gap:8px; }
#mm-cust-app .mm-rp-evh { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:14px; padding-top:12px; border-top:1px solid var(--mm-line); }
#mm-cust-app .mm-rp-items { display:flex; flex-direction:column; gap:10px; margin-top:8px; }
#mm-cust-app .mm-rp-item { padding:12px; border:1px solid var(--mm-line); border-radius:12px; background:var(--mm-card); }
#mm-cust-app .mm-rp-it { font-size:0.875rem; font-weight:700; color:var(--mm-ink); overflow-wrap:anywhere; }
#mm-cust-app .mm-rp-src { font-size:0.75rem; color:var(--mm-ink-2); margin-top:2px; overflow-wrap:anywhere; }
#mm-cust-app .mm-rp-quote { margin:8px 0 4px; padding:6px 10px; border-left:3px solid var(--mm-brand); background:var(--mm-page); font-size:0.8125rem; color:var(--mm-ink); line-height:1.5; }
#mm-cust-app .mm-rp-form { display:flex; flex-direction:column; gap:6px; padding:12px; margin:0 0 12px; border:1px solid var(--mm-line); border-radius:12px; background:var(--mm-page); }
#mm-cust-app .mm-rp-form label { font-size:0.8125rem; font-weight:600; color:var(--mm-ink); }
#mm-cust-app .mm-rp-form input, #mm-cust-app .mm-rp-form select, #mm-cust-app .mm-rp-form textarea { font:inherit; font-size:0.875rem; padding:8px 10px; border:1px solid var(--mm-line); border-radius:8px; background:var(--mm-card); color:var(--mm-ink); }
#mm-cust-app .mm-rp-form input:focus, #mm-cust-app .mm-rp-form select:focus, #mm-cust-app .mm-rp-form textarea:focus { outline:2px solid var(--mm-brand-l); border-color:var(--mm-brand); }
#mm-cust-app .mm-rp-form .mm-rp-chk { display:flex; align-items:flex-start; gap:8px; font-weight:500; line-height:1.5; }
#mm-cust-app .mm-rp-form .mm-rp-chk input { width:16px; height:16px; padding:0; margin-top:3px; flex:0 0 16px; }
@media (max-width: 900px) {
  #mm-cust-app .mm-rp-grid { grid-template-columns:1fr; }
}
/*__MM_RP_CSS_END__*/
/*__MM_CAP_CSS_START__*/
/* MM CUSTOMER - Capabilities. Scoped to #mm-cust-app .mm-cap. */
#mm-cap-root [hidden] { display:none !important; }
#mm-cust-app .mm-cap, #mm-cust-app #mm-cap-ui { display:flex; flex-direction:column; gap:16px; }
#mm-cust-app .mm-cap-blocked { padding:8px 4px; }
#mm-cust-app .mm-cap-blocked h3 { margin:0 0 6px; font-size:1.05rem; font-weight:700; color:var(--mm-ink); }
#mm-cust-app .mm-cap-blocked p { margin:0 0 12px; font-size:0.875rem; color:var(--mm-ink-2); line-height:1.5; max-width:62ch; }
#mm-cust-app .mm-cap-ro { display:inline-flex; align-items:center; gap:6px; font-size:0.75rem; font-weight:600; color:var(--mm-ink-2); }
#mm-cust-app .mm-cap-ro svg { width:14px; height:14px; }
#mm-cust-app .mm-cap-counts { list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; gap:10px; }
#mm-cust-app .mm-cap-count { display:inline-flex; align-items:center; gap:8px; padding:6px 10px; border:1px solid var(--mm-line); border-radius:10px; background:var(--mm-card); }
#mm-cust-app .mm-cap-n { font-size:0.875rem; font-weight:700; color:var(--mm-ink); }
#mm-cust-app .mm-cap-help { margin:10px 0 0; font-size:0.8125rem; color:var(--mm-ink-2); line-height:1.5; }
#mm-cust-app .mm-cap-list { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(auto-fill, minmax(280px, 1fr)); gap:12px; }
#mm-cust-app .mm-cap-card { padding:12px; border:1px solid var(--mm-line); border-radius:12px; background:var(--mm-card); }
#mm-cust-app .mm-cap-head { display:flex; align-items:flex-start; gap:10px; }
#mm-cust-app .mm-cap-ic { flex:0 0 32px; height:32px; border-radius:10px; background:var(--mm-brand-l); color:var(--mm-brand); display:flex; align-items:center; justify-content:center; }
#mm-cust-app .mm-cap-ic svg { width:18px; height:18px; }
#mm-cust-app .mm-cap-tt { flex:1 1 auto; min-width:0; }
#mm-cust-app .mm-cap-title { font-size:0.875rem; font-weight:700; color:var(--mm-ink); }
#mm-cust-app .mm-cap-sub { font-size:0.75rem; color:var(--mm-ink-2); margin-top:2px; }
#mm-cust-app .mm-cap-sum { margin:8px 0 0; font-size:0.8125rem; color:var(--mm-ink-2); line-height:1.5; }
#mm-cust-app .mm-cap-rs { margin:8px 0 0; padding-left:18px; font-size:0.75rem; color:#9a5b05; line-height:1.5; }
#mm-cust-app .mm-cap-btn { display:inline-flex; align-items:center; justify-content:center; font:inherit; font-size:0.875rem; font-weight:700; padding:9px 16px; border-radius:10px; border:1px solid var(--mm-brand); background:var(--mm-brand); color:#fff; text-decoration:none; }
/*__MM_CAP_CSS_END__*/

/* Client sidebar: a heading written in mixed case (Tool Space) keeps its case; the other headings stay in capitals. */
#mm-left-nav .side-section.mm-side-case,
#mm-dash-layout .side-section.mm-side-case,
html.mm-client-shell body > #mm-left-nav .side-section.mm-side-case { text-transform: none !important; }

/* ===== Channel Post/Ads tracks (chads) ===== */
.mm-ch-tracks { display: inline-flex; gap: 4px; padding: 3px; border: 1px solid #e6eaf1; border-radius: 9px; background: #f4f5f6; margin: 2px 0 8px; }
.mm-ch-track-btn { -webkit-appearance: none; appearance: none; border: 0; background: transparent; color: #3d4250; font: inherit; font-weight: 650; font-size: 13px; padding: 6px 18px; border-radius: 7px; cursor: pointer; line-height: 1.2; }
.mm-ch-track-btn.is-active { background: #3F51B5; color: #fff; }
.mm-ch-ads-track .mm-ch-ads-banner { display: flex; gap: 8px; align-items: flex-start; border: 1px solid #f0c38a; background: #fff7ec; color: #8f570d; border-radius: 9px; padding: 10px 12px; margin: 0 0 12px; font-size: 12.5px; line-height: 1.5; }
.mm-ch-ads-track .mm-ch-ads-banner svg { flex: 0 0 16px; margin-top: 1px; }
.mm-ch-ads-src { display: flex; gap: 18px; flex-wrap: wrap; }
.mm-ch-ads-opt { display: inline-flex; gap: 7px; align-items: center; font-size: 13px; color: #1c1d21; font-weight: 600; cursor: pointer; }
.mm-ch-ads-field { margin: 8px 0; }
.mm-ch-ads-label { display: block; font-size: 12px; font-weight: 700; color: #142342; margin: 0 0 4px; }
.mm-ch-ads-track .l3-input { width: 100%; border: 1px solid #dce5f1; border-radius: 8px; padding: 8px 10px; font: inherit; font-size: 13px; color: #1c1d21; background: #fff; }
.mm-ch-ads-track textarea.l3-input { resize: vertical; line-height: 1.5; }
.mm-ch-ads-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4px 14px; margin-top: 6px; }
.mm-ch-ads-grid .full { grid-column: 1 / -1; }
.mm-ch-ads-verdict { border: 1px solid #e6b3b3; background: #fdf3f3; border-radius: 10px; padding: 12px 14px; margin-top: 12px; }
.mm-ch-ads-verdict .mm-ch-ads-banner { border-color: #e6b3b3; background: #fff; color: #9b1c1c; font-weight: 600; }
.mm-ch-ads-summary { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 14px; margin: 4px 0 8px; }
.mm-ch-ads-summary > div span { display: block; font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .03em; color: #5b6b86; }
.mm-ch-ads-summary > div p { margin: 2px 0 0; font-size: 13px; color: #142342; line-height: 1.45; overflow-wrap: anywhere; }
.mm-ch-ads-verdict .l3-check { display: flex; gap: 8px; align-items: flex-start; font-size: 12.5px; padding: 4px 0; color: #142342; }
.mm-ch-ads-verdict .l3-check .l3-ico { flex: 0 0 16px; margin-top: 1px; }
.mm-ch-ads-verdict .l3-check.ok .l3-ico { color: #0f8a5f; }
.mm-ch-ads-verdict .l3-check.bad .l3-ico { color: #9b1c1c; }
@media (max-width: 640px) { .mm-ch-ads-grid, .mm-ch-ads-summary { grid-template-columns: 1fr; } }

/* ===== Campaign space Overview (mm-ov) =====
   Scoped to .mm-ov-root so only the campaign-space Overview tab is restyled.
   No other tab, step or multi-channel view inherits anything from here. */
.mm-ov-root { --ov-blue:#1769f5; --ov-deep:#2c4fca; --ov-ink:#101c35; --ov-muted:#687792; --ov-line:#e2e9f4; --ov-shadow:0 6px 19px rgba(31,57,104,.035); color:var(--ov-ink); font-family:'Plus Jakarta Sans','Segoe UI',Arial,sans-serif; font-size:12px; line-height:1.55; }
.mm-ov-root *, .mm-ov-root *::before, .mm-ov-root *::after { box-sizing:border-box; }
.mm-ov-root .mm-ov-ico { width:17px; height:17px; flex:none; }
.mm-ov-headline { display:flex; justify-content:space-between; align-items:center; gap:14px; margin:0 0 24px; flex-wrap:wrap; }
.mm-ov-eyebrow { color:var(--ov-deep); font-size:10px; font-weight:800; letter-spacing:.75px; text-transform:uppercase; }
.mm-ov-root h1 { font-size:26px; line-height:1.27; letter-spacing:-.92px; margin:6px 0 5px; font-weight:800; color:var(--ov-ink); }
.mm-ov-lede { font-size:11.5px; line-height:1.5; margin:0; max-width:720px; color:var(--ov-muted); }
.mm-ov-actions { display:flex; gap:9px; align-items:center; flex-wrap:wrap; }
.mm-ov-btn { border:1px solid #d9e3f4; color:#2b4d98; background:#fff; padding:9px 13px; border-radius:9px; display:inline-flex; align-items:center; justify-content:center; gap:8px; white-space:nowrap; font-weight:750; font-size:10.5px; min-height:35px; text-decoration:none; cursor:pointer; }
.mm-ov-btn:hover { background:#f4f7ff; color:#2b4d98; text-decoration:none; }
.mm-ov-btn .mm-ov-ico { width:14px; height:14px; }
.mm-ov-btn.primary { color:#fff; background:var(--ov-deep); border-color:var(--ov-deep); box-shadow:0 4px 12px rgba(37,75,211,.15); }
.mm-ov-btn.primary:hover { background:#2347bc; color:#fff; }
.mm-ov-stats { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:10px; margin:0 0 20px; }
.mm-ov-stat { background:linear-gradient(120deg,#f2f6ff 0%,#eef3fd 100%); border-radius:12px; min-width:0; padding:15px 12px; min-height:110px; }
.mm-ov-stat-ic { color:#2654d7; display:block; height:25px; }
.mm-ov-stat-ic .mm-ov-ico { width:23px; height:23px; }
.mm-ov-stat small { display:block; font-size:9.8px; color:#61708d; margin:7px 0 5px; }
.mm-ov-stat strong { font-size:11.3px; line-height:1.3; display:block; overflow-wrap:anywhere; color:var(--ov-ink); }
.mm-ov-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:15px; margin:0 0 15px; align-items:stretch; }
.mm-ov-card { background:#fff; border:1px solid var(--ov-line); border-radius:12px; box-shadow:var(--ov-shadow); min-width:0; padding:15px 16px; display:flex; flex-direction:column; }
.mm-ov-card-head { display:flex; align-items:center; gap:10px; margin:0 0 14px; padding-bottom:12px; border-bottom:1px solid #eaf0f7; }
.mm-ov-card-ic { display:grid; place-items:center; width:32px; height:32px; background:#eef3ff; color:var(--ov-blue); border-radius:50%; flex:none; }
.mm-ov-card-ic .mm-ov-ico { width:18px; height:18px; }
.mm-ov-card-title { font-size:12px; font-weight:800; line-height:1.3; color:var(--ov-ink); }
.mm-ov-head-aside { margin-left:auto; }
.mm-ov-card-body { flex:1 1 auto; min-width:0; }
.mm-ov-card-foot { margin-top:12px; }
.mm-ov-card.mm-ov-next { border-color:#d7defe; background:linear-gradient(160deg,#fff,#fafaff); }
.mm-ov-card.mm-ov-next .mm-ov-card-head { background:#f2f4ff; margin:-15px -16px 13px; padding:14px 16px; border-radius:11px 11px 0 0; border-bottom:0; }
.mm-ov-badge { display:inline-flex; gap:6px; align-items:center; border-radius:999px; padding:5px 10px; font-size:9px; font-weight:800; background:#eef3fb; color:#5b6b86; white-space:nowrap; }
.mm-ov-badge.green { background:#def6e9; color:#157044; }
.mm-ov-badge.amber { background:#fff4da; color:#a47018; }
.mm-ov-badge.blue { background:#e9f0ff; color:#3158c4; }
.mm-ov-badge.gray { background:#f1f3f8; color:#738098; }
.mm-ov-kv { display:grid; grid-template-columns:44% 1fr; gap:12px; padding:8px 0; border-bottom:1px solid #ecf0f6; font-size:10px; margin:0; }
.mm-ov-kv:last-child { border-bottom:0; }
.mm-ov-kv dt { font-weight:750; color:#283a5f; }
.mm-ov-kv dd { margin:0; color:#445371; overflow-wrap:anywhere; }
.mm-ov-wide { width:100%; border:0; background:#eef3ff; border-radius:8px; min-height:34px; padding:9px 11px; color:#3159c6; display:flex; align-items:center; gap:8px; text-align:left; font-size:10px; font-weight:800; text-decoration:none; cursor:pointer; }
.mm-ov-wide:hover { background:#e5eeff; color:#3159c6; text-decoration:none; }
.mm-ov-wide > span { flex:1 1 auto; min-width:0; }
.mm-ov-wide .mm-ov-ico { width:14px; height:14px; }
.mm-ov-acct { display:flex; align-items:center; gap:11px; margin:2px 0 12px; }
.mm-ov-xmark { color:#fff; background:#0d0f14; border-radius:6px; display:grid; place-items:center; width:30px; height:30px; flex:none; }
.mm-ov-xmark svg { width:15px; height:15px; }
.mm-ov-acct > span { min-width:0; }
.mm-ov-acct strong { display:block; font-size:10.5px; overflow-wrap:anywhere; color:var(--ov-ink); }
.mm-ov-acct small { display:block; font-size:9px; margin-top:3px; color:var(--ov-muted); line-height:1.45; }
.mm-ov-check { display:flex; align-items:flex-start; gap:10px; padding:9px 0; font-size:10px; border-bottom:1px solid #f0f3f9; }
.mm-ov-check:last-child { border-bottom:0; }
.mm-ov-check-box { flex:none; height:17px; width:17px; border-radius:5px; border:1.5px solid #b2c1db; background:#fff; display:grid; place-items:center; margin-top:1px; color:transparent; }
.mm-ov-check.done .mm-ov-check-box { background:#196af1; border-color:#196af1; color:#fff; }
.mm-ov-check-box svg { width:12px; height:12px; }
.mm-ov-check-txt { min-width:0; flex:1 1 auto; }
.mm-ov-check strong { display:block; font-size:10.3px; line-height:1.4; color:var(--ov-ink); }
.mm-ov-check small { display:block; line-height:1.45; font-size:9.2px; margin-top:2px; color:var(--ov-muted); }
.mm-ov-check .mm-ov-badge { flex:none; align-self:flex-start; }
.mm-ov-count { font-size:26px; font-weight:800; color:#2254d2; line-height:1; margin:0; }
.mm-ov-mid { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.mm-ov-sub { font-size:10.5px; color:#5d7192; line-height:1.5; margin:6px 0 10px; }
.mm-ov-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); margin:2px 0 12px; }
.mm-ov-metric { border-right:1px solid #edf0f6; padding:3px 10px 6px; min-width:0; }
.mm-ov-metric:first-child { padding-left:0; }
.mm-ov-metric:last-child { border-right:0; }
.mm-ov-metric strong { display:block; font-weight:850; color:#1b2540; font-size:21px; line-height:1.15; }
.mm-ov-metric small { font-size:9px; color:var(--ov-muted); display:block; margin-top:2px; }
.mm-ov-note { background:#f4f7ff; border-radius:9px; padding:11px 12px; font-size:10px; color:#657795; line-height:1.55; display:flex; gap:8px; margin:10px 0 0; }
.mm-ov-note .mm-ov-ico { color:#2f5bd8; width:16px; height:16px; margin-top:1px; }
.mm-ov-note.amber { background:#fff7ec; color:#8f570d; }
.mm-ov-note.amber .mm-ov-ico { color:#b45309; }
.mm-ov-guide { background:linear-gradient(135deg,#f6f2ff,#f4f6ff); padding:14px; border-radius:10px; }
.mm-ov-guide h3 { color:#2d48a6; font-size:11px; margin:0 0 7px; font-weight:800; line-height:1.4; }
.mm-ov-guide p { font-size:10px; margin:0; color:#596a93; line-height:1.55; }
.mm-ov-quiet { font-size:9.5px; color:#8492aa; margin:10px 0 0; line-height:1.5; }
.mm-ov-loading { color:var(--ov-muted); font-size:10.5px; margin:0; padding:6px 0; }
@media (max-width:1320px) {
  .mm-ov-stats { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .mm-ov-cards { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:860px) {
  .mm-ov-root h1 { font-size:23px; }
  .mm-ov-headline { align-items:flex-start; flex-direction:column; }
  .mm-ov-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .mm-ov-cards { grid-template-columns:1fr; }
}

/* ===== Campaign space tabs (mm-sk) =====
   Connections, Campaigns, Content Studio, Measurements, Command Center,
   Toolspace and Finishline. Each of those tab roots also carries .mm-ov-root,
   so the tokens and the stat / card / badge / key-value vocabulary above are
   shared and the tabs read as one product. Everything below is scoped to one
   of the seven tab root classes, so no other tab, no step page and no
   multi-channel view inherits anything from here. */
.mm-sk-empty { border:1px dashed #d0dbee; background:#fbfdff; border-radius:11px; padding:22px 18px; text-align:center; color:#7e8ca3; font-size:10.5px; line-height:1.6; }
.mm-sk-empty strong { display:block; font-size:11.5px; color:#3c4b6b; margin-bottom:4px; }
.mm-sk-row { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; padding:10px 0; border-bottom:1px solid #eef2f8; }
.mm-sk-row:last-of-type { border-bottom:0; }
.mm-sk-row > span { min-width:0; }
.mm-sk-row strong { display:block; font-size:10.3px; line-height:1.4; color:#101c35; }
.mm-sk-row small { display:block; font-size:9.2px; line-height:1.45; margin-top:2px; color:#687792; }
.mm-sk-row .mm-ov-badge { flex:none; align-self:flex-start; }
.mm-sk-bar { height:8px; background:#edf1fb; border-radius:8px; overflow:hidden; margin:2px 0 12px; }
.mm-sk-bar i { display:block; height:100%; background:#1769f5; border-radius:8px; }
.mm-sk-accept { justify-content:flex-start; border:0; font:inherit; }
.mm-sk-accept:disabled { opacity:.55; cursor:not-allowed; background:#f1f3f8; color:#738098; }

/* Connections: the step-2 channel form keeps every field, id and handler. Only
   its surface is brought onto the space design language. */
.mm-conn-root.mm-plat2 { --blue:#2c4fca; --blue-dark:#2347bc; }
.mm-conn-root.mm-plat2 .card { border:1px solid #e2e9f4; border-radius:12px; box-shadow:0 6px 19px rgba(31,57,104,.035); }
.mm-conn-root.mm-plat2 .overview { padding:15px 16px; margin:0 0 15px; }
.mm-conn-root.mm-plat2 .card-title { font-size:12px; font-weight:800; color:#101c35; gap:10px; }
.mm-conn-root.mm-plat2 .square-icon,
.mm-conn-root.mm-plat2 .brand-cell .mm-plat-mark,
.mm-conn-root.mm-plat2 .mm-plat-mark { width:32px; height:32px; flex:0 0 32px; border-radius:50%; background:#eef3ff; color:#1769f5; }
.mm-conn-root.mm-plat2 .platform-header { padding:15px 16px 12px; }
.mm-conn-root.mm-plat2 .platform-header .description { font-size:10.5px; line-height:1.55; color:#687792; margin-left:42px; }
.mm-conn-root.mm-plat2 .field-name { font-size:10.3px; font-weight:800; color:#283a5f; }
.mm-conn-root.mm-plat2 .field-value { font-size:10px; color:#445371; line-height:1.5; }
.mm-conn-root.mm-plat2 .mm-plat-facts { grid-template-columns:repeat(5,minmax(0,1fr)); gap:10px 14px; padding:0 16px 12px; }
.mm-conn-root.mm-plat2 .mm-plat-facts dt { font-size:9.2px; font-weight:800; letter-spacing:.4px; text-transform:uppercase; color:#5b6b86; }
.mm-conn-root.mm-plat2 .mm-plat-facts dd { font-size:10.3px; font-weight:750; color:#283a5f; line-height:1.45; }
.mm-conn-root.mm-plat2 .mm-plat-note,
.mm-conn-root.mm-plat2 .mm-plat-link-help,
.mm-conn-root.mm-plat2 .mm-plat-reason { font-size:10px; line-height:1.55; color:#657795; }
.mm-conn-root.mm-plat2 .source-name { font-size:10.5px; color:#101c35; }
.mm-conn-root.mm-plat2 .source-description,
.mm-conn-root.mm-plat2 .mm-plat-status { font-size:10px; line-height:1.5; }
.mm-conn-root.mm-plat2 .btn { border:1px solid #d9e3f4; border-radius:9px; min-height:35px; padding:9px 13px; font-size:10.5px; font-weight:750; color:#2b4d98; background:#fff; }
.mm-conn-root.mm-plat2 .btn:hover { background:#f4f7ff; }
.mm-conn-root.mm-plat2 .btn svg { width:14px; height:14px; }
.mm-conn-root.mm-plat2 .btn-primary { background:#2c4fca; border-color:#2c4fca; color:#fff; box-shadow:0 4px 12px rgba(37,75,211,.15); }
.mm-conn-root.mm-plat2 .btn-primary:hover { background:#2347bc; }
.mm-conn-root.mm-plat2 .mm-ov-actions .top-save { background:#eef3ff; border:0; color:#3159c6; font-weight:800; }
.mm-conn-root.mm-plat2 .mm-ov-actions .top-save:hover { background:#e5eeff; }
.mm-conn-root.mm-plat2 .platform-footer { padding:14px 16px 16px; border-top:1px solid #eaf0f7; }
.mm-conn-root.mm-plat2 .rail-card { padding:15px 16px; border-radius:12px; }
.mm-conn-root.mm-plat2 .rail-head { font-size:11px; color:#101c35; }
.mm-conn-root.mm-plat2 .rail-copy { font-size:10px; line-height:1.7; color:#5d7192; margin-left:0; }
.mm-conn-root.mm-plat2 .progress-top strong { font-size:10.5px; color:#101c35; }
.mm-conn-root.mm-plat2 .progress-top span { font-size:9.5px; color:#8492aa; }
.mm-conn-root.mm-plat2 .rail-step { font-size:10px; }
.mm-conn-root.mm-plat2 .rail-step.current { background:#eef3ff; color:#2c4fca; }
.mm-conn-root.mm-plat2 .rail-step.current .dot { background:#2c4fca; }
.mm-conn-root.mm-plat2 #mm-ch-more > summary { padding:14px 16px; font-size:12px; cursor:pointer; }
.mm-conn-root.mm-plat2 #mm-ch-more > .description { padding:0 16px; font-size:10.5px; color:#687792; }
.mm-conn-root.mm-plat2 .mm-ov-headline { margin-bottom:20px; }

/* The organic-post board and the X Ads record injected after the X card. The
   ids, buttons and requests are untouched; only the surface changes. */
.mm-conn-root #mm-slice-x > .card { margin:0 0 15px; padding:15px 16px; }
.mm-conn-root #mm-slice-x h2 { font-size:12px; font-weight:800; color:#101c35; margin:0 0 10px; padding-bottom:10px; border-bottom:1px solid #eaf0f7; }
.mm-conn-root #mm-slice-x .mm-plat-note { padding:0; margin:8px 0 0; }
.mm-conn-root #mm-slice-x label { font-size:10.3px; }
.mm-conn-root #mm-slice-x input[type="text"],
.mm-conn-root #mm-slice-x input[type="url"],
.mm-conn-root #mm-slice-x input[type="number"],
.mm-conn-root #mm-slice-x textarea,
.mm-conn-root #mm-slice-x select { border:1px solid #d5e0f0; border-radius:8px; font:inherit; font-size:10.5px; color:#101c35; background:#fff; }
.mm-conn-root #mm-slice-x .item { border:1px solid #eaf0f7; border-radius:10px; background:#f8faff !important; }

/* Content Studio and the composer. mmChComposerHtml, the Post | Ads tracks,
   the 280-character counter and the image builder are rendered unchanged; this
   only gives their existing markup the space design language. */
.mm-cs-root .mm-cs-composer { margin-top:2px; }
.mm-cs-root #mm-ch-x-composer,
.mm-conn-root #mm-ch-x-composer { background:#fff; border:1px solid #e2e9f4; border-radius:12px; box-shadow:0 6px 19px rgba(31,57,104,.035); padding:16px !important; margin-top:0 !important; }
.mm-cs-root #mm-ch-x-composer h3,
.mm-conn-root #mm-ch-x-composer h3 { font-size:12px; font-weight:800; color:#101c35; margin:0 0 6px; }
.mm-cs-root #mm-ch-x-composer .mm-plat-note,
.mm-cs-root #mm-ch-x-composer .l3-hint { font-size:10px; line-height:1.55; color:#657795; padding:0; margin:6px 0 0; }
.mm-cs-root #mm-ch-x-composer .l3-field,
.mm-conn-root #mm-ch-x-composer .l3-field { display:flex; flex-direction:column; gap:5px; margin:10px 0 0; }
.mm-cs-root #mm-ch-x-composer .l3-field-label,
.mm-conn-root #mm-ch-x-composer .l3-field-label { font-size:10.5px; font-weight:800; color:#3e547c; }
.mm-cs-root #mm-ch-x-composer .l3-input,
.mm-conn-root #mm-ch-x-composer .l3-input { width:100%; border:1px solid #d5e0f0; border-radius:8px; padding:10px 12px; font:inherit; font-size:11px; line-height:1.55; color:#101c35; background:#fff; }
.mm-cs-root #mm-ch-x-composer textarea.l3-input,
.mm-conn-root #mm-ch-x-composer textarea.l3-input { resize:vertical; min-height:96px; }
.mm-cs-root #mm-ch-x-composer .l3-input:focus,
.mm-conn-root #mm-ch-x-composer .l3-input:focus { outline:0; border-color:#87b4ff; box-shadow:0 0 0 3px #eaf1ff; }
.mm-cs-root #mm-ch-x-composer .btn { border:1px solid #d9e3f4; border-radius:9px; min-height:35px; padding:9px 13px; font:inherit; font-size:10.5px; font-weight:750; color:#2b4d98; background:#fff; display:inline-flex; align-items:center; justify-content:center; gap:8px; cursor:pointer; }
.mm-cs-root #mm-ch-x-composer .btn:hover { background:#f4f7ff; }
.mm-cs-root #mm-ch-x-composer .btn-primary { background:#2c4fca; border-color:#2c4fca; color:#fff; box-shadow:0 4px 12px rgba(37,75,211,.15); }
.mm-cs-root #mm-ch-x-composer .btn-primary:hover { background:#2347bc; }
.mm-cs-root #mm-ch-x-composer .btn:disabled { opacity:.5; cursor:not-allowed; }
.mm-cs-root .mm-ch-tracks,
.mm-conn-root .mm-ch-tracks { border-color:#e2e9f4; background:#f1f5ff; border-radius:10px; }
.mm-cs-root .mm-ch-track-btn,
.mm-conn-root .mm-ch-track-btn { font-size:10.5px; font-weight:800; padding:7px 18px; border-radius:8px; color:#52658b; }
.mm-cs-root .mm-ch-track-btn.is-active,
.mm-conn-root .mm-ch-track-btn.is-active { background:#2c4fca; color:#fff; }
.mm-cs-root .mm-ch-ads-label,
.mm-conn-root .mm-ch-ads-label { font-size:10.5px; font-weight:800; color:#3e547c; }
.mm-cs-root .mm-ch-ads-opt,
.mm-conn-root .mm-ch-ads-opt { font-size:10.5px; font-weight:700; color:#283a5f; }
.mm-cs-root .mm-ch-ads-track .l3-input,
.mm-conn-root .mm-ch-ads-track .l3-input { border-radius:8px; border-color:#d5e0f0; font-size:11px; }
.mm-cs-root .mm-ch-ads-track .mm-ch-ads-banner,
.mm-conn-root .mm-ch-ads-track .mm-ch-ads-banner { border-radius:10px; font-size:10.5px; line-height:1.55; }
.mm-cs-root .mm-ch-ads-verdict,
.mm-conn-root .mm-ch-ads-verdict { border-radius:12px; }
.mm-cs-root .mm-ch-ads-summary > div span,
.mm-conn-root .mm-ch-ads-summary > div span { font-size:9.2px; letter-spacing:.4px; color:#5b6b86; }
.mm-cs-root .mm-ch-ads-summary > div p,
.mm-conn-root .mm-ch-ads-summary > div p { font-size:10.5px; }
.mm-cs-root .mm-ch-ads-verdict .l3-check,
.mm-conn-root .mm-ch-ads-verdict .l3-check { font-size:10.3px; }
.mm-cs-root #mm-slice-image,
.mm-conn-root #mm-slice-image { background:#fff; border:1px solid #e2e9f4; border-radius:12px; box-shadow:0 6px 19px rgba(31,57,104,.035); padding:16px; margin:0 0 12px; }
.mm-cs-root #mm-slice-image h2,
.mm-conn-root #mm-slice-image h2 { font-size:12px; font-weight:800; color:#101c35; margin:0 0 10px; padding-bottom:10px; border-bottom:1px solid #eaf0f7; }
.mm-cs-root #mm-slice-image label { font-size:10.5px; }
.mm-cs-root #mm-slice-image label > span { font-size:10.5px; font-weight:800; color:#3e547c; }
.mm-cs-root #mm-slice-image input[type="text"] { border:1px solid #d5e0f0; border-radius:8px; font:inherit; font-size:11px; color:#101c35; }
.mm-cs-root #mm-slice-image .btn { border:1px solid #d9e3f4; border-radius:9px; min-height:35px; padding:9px 13px; font:inherit; font-size:10.5px; font-weight:750; color:#2b4d98; background:#fff; display:inline-flex; align-items:center; justify-content:center; gap:8px; cursor:pointer; }
.mm-cs-root #mm-slice-image .btn-primary { background:#2c4fca; border-color:#2c4fca; color:#fff; }
.mm-cs-root #mm-slice-image canvas { border:1px solid #e2e9f4; border-radius:10px; }

/* Campaigns, Measurements, Command Center, Toolspace and Finishline are built
   entirely from the shared vocabulary, so they need only layout tweaks. */
.mm-camp-root .mm-ov-card-title,
.mm-tool-root .mm-ov-card-title { overflow-wrap:anywhere; }
.mm-tool-root .mm-ov-card-body .mm-ov-sub { margin:0; }
.mm-meas-root .mm-ov-cards:last-of-type,
.mm-cmd-root .mm-ov-cards:last-of-type,
.mm-fin-root .mm-ov-cards:last-of-type { margin-bottom:0; }
@media (max-width:1320px) {
  .mm-conn-root.mm-plat2 .mm-plat-facts { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:860px) {
  .mm-conn-root.mm-plat2 .mm-plat-facts { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .mm-conn-root.mm-plat2 .mm-ov-actions { width:100%; }
}

/* ===== Campaign space: stage timeline (mm-tl) =====
   Scoped under .mm-ov-root, so only the campaign-space Overview tab picks this
   up. The rail is read-only: every stage is decided by this campaign's own
   records and a stage with no record is styled as not recorded, never done. */
.mm-ov-root .mm-tl { background:#fff; border:1px solid var(--ov-line); border-radius:12px; box-shadow:var(--ov-shadow); padding:14px 16px 12px; margin:0 0 15px; }
.mm-ov-root .mm-tl-head { display:flex; align-items:center; justify-content:space-between; gap:10px; margin:0 0 12px; padding-bottom:11px; border-bottom:1px solid #eaf0f7; }
.mm-ov-root .mm-tl-title { display:flex; align-items:center; gap:8px; font-size:12px; font-weight:800; color:var(--ov-ink); }
.mm-ov-root .mm-tl-title .mm-ov-ico { color:var(--ov-blue); }
.mm-ov-root .mm-tl-track { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:8px; }
.mm-ov-root .mm-tl-step { position:relative; display:flex; flex-direction:column; align-items:flex-start; gap:7px; width:100%; min-width:0; text-align:left; border:1px solid transparent; border-radius:10px; background:transparent; padding:9px 10px 10px; color:inherit; font:inherit; text-decoration:none; cursor:pointer; }
.mm-ov-root .mm-tl-step:hover { background:#f6f9ff; text-decoration:none; }
.mm-ov-root .mm-tl-step::after { content:""; position:absolute; left:44px; right:-8px; top:22px; height:2px; background:#e4eaf6; }
.mm-ov-root .mm-tl-step:last-child::after { display:none; }
.mm-ov-root .mm-tl-step.done::after { background:#c3e3d1; }
.mm-ov-root .mm-tl-num { display:grid; place-items:center; width:28px; height:28px; border-radius:50%; border:1px solid #d7e2f4; background:#fff; color:#273c64; font-weight:800; font-size:11px; flex:none; position:relative; z-index:1; }
.mm-ov-root .mm-tl-num svg { width:14px; height:14px; }
.mm-ov-root .mm-tl-step.done .mm-tl-num { background:#157044; border-color:#157044; color:#fff; }
.mm-ov-root .mm-tl-step.current { background:#edf3ff; border-color:#d7e2fb; }
.mm-ov-root .mm-tl-step.current .mm-tl-num { border-color:var(--ov-blue); color:var(--ov-blue); box-shadow:0 0 0 3px #e2ecff; }
.mm-ov-root .mm-tl-step.unknown .mm-tl-num { border-style:dashed; color:#8492aa; }
.mm-ov-root .mm-tl-txt { min-width:0; }
.mm-ov-root .mm-tl-txt strong { display:block; font-size:10.5px; line-height:1.3; color:var(--ov-ink); }
.mm-ov-root .mm-tl-txt small { display:block; font-size:9px; line-height:1.45; margin-top:3px; color:var(--ov-muted); overflow-wrap:anywhere; }
.mm-ov-root .mm-tl-step.current .mm-tl-txt strong { color:#2058d5; }
.mm-ov-root .mm-tl-step .mm-ov-badge { align-self:flex-start; }
@media (max-width:1320px) {
  .mm-ov-root .mm-tl-track { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .mm-ov-root .mm-tl-step::after { display:none; }
}
@media (max-width:860px) {
  .mm-ov-root .mm-tl-track { grid-template-columns:1fr; }
}

/* ===== Campaign space: self-reported marker on a headline figure =====
   A figure the owner typed carries this tag wherever it appears, so it can
   never read as a measured or provider-confirmed number. An empty slot states
   that there is no source rather than showing a zero. */
.mm-ov-root .mm-ov-metric .mm-sr-tag { display:inline-block; margin-top:5px; padding:3px 7px; border-radius:999px; background:#fff4da; color:#a47018; font-size:8.5px; font-weight:800; letter-spacing:.3px; text-transform:uppercase; }
.mm-ov-root .mm-ov-metric .mm-sr-none { display:block; margin-top:5px; font-size:8.5px; color:#8492aa; }

/* ===== Campaign space: record a measurement snapshot by hand (mm-ms) =====
   Scoped to the Measurements tab root. Nothing here is styled to look like a
   measured figure: the entry card and its log are explicitly owner-reported. */
.mm-meas-root .mm-ov-cards.mm-ms-pair { grid-template-columns:repeat(2,minmax(0,1fr)); }
.mm-meas-root .mm-ms-form { display:flex; flex-direction:column; gap:10px; }
.mm-meas-root .mm-ms-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.mm-meas-root .mm-ms-field { display:flex; flex-direction:column; gap:5px; min-width:0; margin:0; }
.mm-meas-root .mm-ms-field > span { font-size:10px; font-weight:750; color:#283a5f; }
.mm-meas-root .mm-ms-field > span small { font-weight:600; font-size:9px; color:#8492aa; }
.mm-meas-root .mm-ms-field input { width:100%; min-height:34px; border:1px solid #d9e3f4; border-radius:8px; padding:7px 10px; font:inherit; font-size:10.5px; color:var(--ov-ink); background:#fff; }
.mm-meas-root .mm-ms-field input:focus { outline:2px solid #a9c8fb; outline-offset:1px; border-color:#a9c8fb; }
.mm-meas-root .mm-ms-save { align-self:flex-start; }
.mm-meas-root .mm-ms-err { margin:0; padding:9px 11px; border-radius:8px; background:#fdeff0; color:#b34f54; font-size:10px; line-height:1.5; }
@media (max-width:860px) {
  .mm-meas-root .mm-ov-cards.mm-ms-pair { grid-template-columns:1fr; }
  .mm-meas-root .mm-ms-grid { grid-template-columns:1fr; }
}

/* ===== Campaign space: edit the brief in place (mm-bm) =====
   Its own root class. The dialog is appended to the page body, so everything
   here is scoped to .mm-bm-back / .mm-bm-root and reaches no other screen. */
.mm-bm-back { position:fixed; inset:0; z-index:200; display:flex; align-items:flex-start; justify-content:center; padding:24px 18px; overflow:auto; background:rgba(16,28,53,.46); }
.mm-bm-root { width:min(620px,100%); max-height:88vh; overflow:auto; margin:auto; padding:20px 22px 22px; border-radius:15px; background:#fff; box-shadow:0 25px 65px rgba(21,41,80,.22); }
.mm-bm-top { display:flex; align-items:center; justify-content:space-between; gap:10px; margin:0 0 14px; padding-bottom:12px; border-bottom:1px solid #eaf0f7; }
.mm-bm-root h2 { margin:0; font-size:18px; font-weight:800; letter-spacing:-.4px; color:#101c35; }
.mm-bm-x { display:grid; place-items:center; width:28px; height:28px; border:0; border-radius:8px; background:#f0f4fa; color:#607290; cursor:pointer; }
.mm-bm-x:hover { background:#e6ecf6; }
.mm-bm-x svg { width:14px; height:14px; }
.mm-bm-root .mm-ov-lede { margin:0 0 14px; }
.mm-bm-sec { margin:0 0 16px; }
.mm-bm-sec h3 { margin:0 0 9px; font-size:10px; font-weight:800; letter-spacing:.5px; text-transform:uppercase; color:#2d48a6; }
.mm-bm-field { display:flex; flex-direction:column; gap:5px; margin:0 0 10px; }
.mm-bm-field > span { font-size:10px; font-weight:750; color:#283a5f; }
.mm-bm-field > span small { display:block; margin-top:2px; font-size:9px; font-weight:600; color:#8492aa; }
.mm-bm-field input, .mm-bm-field textarea { width:100%; border:1px solid #d9e3f4; border-radius:8px; padding:8px 10px; font:inherit; font-size:10.5px; line-height:1.55; color:#101c35; background:#fff; resize:vertical; }
.mm-bm-field input { min-height:34px; }
.mm-bm-field input:focus, .mm-bm-field textarea:focus { outline:2px solid #a9c8fb; outline-offset:1px; border-color:#a9c8fb; }
.mm-bm-err { margin:0 0 12px; padding:9px 11px; border-radius:8px; background:#fdeff0; color:#b34f54; font-size:10px; line-height:1.5; }
.mm-bm-foot { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:9px; padding-top:12px; border-top:1px solid #eaf0f7; }
@media (max-width:860px) {
  .mm-bm-back { padding:12px; }
  .mm-bm-root { padding:16px; }
}
