/* ============================================================
   Marketing OS — CSS ĐỒNG BỘ design system app (styles.css tokens).
   Ăn theo var(--accent amber) / --text / --border / --shadow-* / font Public Sans.
   MỌI selector scope #workspace-marketing-os + prefix .mkt-* (chống trùng —
   bài học rtm-css-class-collisions, amap-css-universal-reset-specificity).
   KHÔNG font riêng, KHÔNG màu bespoke — kế thừa app để nhất quán mọi workspace.
   ============================================================ */
#workspace-marketing-os {
  /* MagnoliaX Design System v2 "Monday" — light-first, primary xanh #0073EA.
     Hardcode token Monday (KHÔNG ăn --accent amber của app) để đúng chuẩn platform. */
  --mkt-bg: #F6F7FB;
  --mkt-panel: #FFFFFF;
  --mkt-panel-2: #F5F6F8;
  --mkt-text: #323338;
  --mkt-muted: #676879;
  --mkt-soft: #9699A6;
  --mkt-line: #E6E9EF;
  --mkt-line-soft: #EDEEF2;
  --mkt-accent: #0073EA;        /* primary Monday blue */
  --mkt-accent-2: #0060B9;
  --mkt-accent-soft: #CCE5FF;
  --mkt-green: #00C875;      --mkt-green-soft: #E5F9F0;   /* done */
  --mkt-warn: #FDAB3D;       --mkt-warn-soft: #FFF4E5;    /* working */
  --mkt-danger: #E2445C;     --mkt-danger-soft: #FCE8EB;  /* stuck */
  --mkt-blue: #579BFC;       --mkt-blue-soft: #E9F2FF;    /* info */
  --mkt-shadow: 0 4px 12px rgba(0, 0, 0, .08);
  --mkt-shadow-sm: 0 1px 2px rgba(0, 0, 0, .04);
  --mkt-radius: 8px;

  background: var(--mkt-bg);
  color: var(--mkt-text);
  font-family: 'Public Sans', 'Be Vietnam Pro', 'Figtree', system-ui, -apple-system, sans-serif;
  font-variant-numeric: tabular-nums;
  min-height: 100%;
}
/* icon line SVG chuẩn (thay emoji) */
#workspace-marketing-os .mkt-ic { width: 16px; height: 16px; stroke: currentColor; fill: none; stroke-width: 1.75; stroke-linecap: round; stroke-linejoin: round; flex-shrink: 0; vertical-align: middle; }
#workspace-marketing-os .mkt-ic.s14 { width: 14px; height: 14px; }
#workspace-marketing-os .mkt-ic.s18 { width: 18px; height: 18px; }
#workspace-marketing-os .mkt-ic.s28 { width: 28px; height: 28px; stroke-width: 1.5; }
#workspace-marketing-os .mkt-bdot { width: 8px; height: 8px; border-radius: 50%; display: inline-block; vertical-align: middle; margin-right: 5px; }
#workspace-marketing-os .mkt-icon-btn { padding: 6px 8px; color: var(--mkt-muted); }
#workspace-marketing-os .mkt-icon-btn:hover { color: var(--mkt-danger); border-color: var(--mkt-danger); background: var(--mkt-danger-soft); }
#workspace-marketing-os .mkt-title-ic { display: inline-flex; align-items: center; gap: 8px; }
#workspace-marketing-os .mkt-title-ic .mkt-ic { color: var(--mkt-accent); }
#workspace-marketing-os *,
#workspace-marketing-os *::before,
#workspace-marketing-os *::after { box-sizing: border-box; }

#workspace-marketing-os .mkt-main { padding: 18px; max-width: none; margin: 0; }

/* ---------- Hero / header ---------- */
#workspace-marketing-os .mkt-hero {
  background: var(--mkt-panel);
  border: 1px solid var(--mkt-line);
  border-radius: var(--mkt-radius);
  box-shadow: var(--mkt-shadow-sm);
  padding: 18px;
  display: grid;
  grid-template-columns: 1.4fr .9fr;
  gap: 16px;
}
#workspace-marketing-os .mkt-eyebrow { font-size: 11px; font-weight: 700; color: var(--mkt-accent-2); letter-spacing: .06em; text-transform: uppercase; }
#workspace-marketing-os .mkt-h1 { margin: 6px 0 6px; font-size: 24px; line-height: 1.2; font-weight: 700; color: var(--mkt-text); }
#workspace-marketing-os .mkt-subtitle { margin: 0; color: var(--mkt-muted); font-size: 13px; }
#workspace-marketing-os .mkt-hero-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; align-content: start; gap: 8px; }
/* chỉ báo alignment sống (luôn hiện, bấm để xem chi tiết) */
#workspace-marketing-os .mkt-align { display: inline-flex; align-items: center; gap: 6px; height: 34px; padding: 0 13px; border-radius: 8px; font-weight: 600; font-size: 13px; cursor: pointer; white-space: nowrap; }
#workspace-marketing-os .mkt-align.ok { background: var(--mkt-green-soft); color: #018f55; }
#workspace-marketing-os .mkt-align.warn { background: var(--mkt-warn-soft); color: #B4730F; }
#workspace-marketing-os .mkt-align.bad { background: var(--mkt-danger-soft); color: #C32E43; }
#workspace-marketing-os .mkt-align:hover { filter: brightness(.96); }

#workspace-marketing-os .mkt-ghost-btn,
#workspace-marketing-os .mkt-primary-btn,
#workspace-marketing-os .mkt-soft-btn {
  border: 1px solid var(--mkt-line);
  background: var(--mkt-panel);
  border-radius: var(--mkt-radius);
  padding: 8px 13px;
  font-weight: 600;
  font-size: 13px;
  color: var(--mkt-text);
  cursor: pointer;
  white-space: nowrap;
  font-family: inherit;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  transition: background .14s, border-color .14s, box-shadow .14s;
}
#workspace-marketing-os .mkt-primary-btn { border-color: var(--mkt-accent); background: var(--mkt-accent); color: #fff; }
#workspace-marketing-os .mkt-primary-btn:hover { background: var(--mkt-accent-2); border-color: var(--mkt-accent-2); }
#workspace-marketing-os .mkt-soft-btn { background: var(--mkt-accent-soft); color: var(--mkt-accent-2); border-color: transparent; }
#workspace-marketing-os .mkt-soft-btn:hover { background: var(--mkt-accent); color: #fff; }
#workspace-marketing-os .mkt-ghost-btn:hover { background: var(--mkt-panel-2); }
#workspace-marketing-os .mkt-danger-btn { color: var(--mkt-danger); border-color: var(--mkt-danger); }
#workspace-marketing-os .mkt-danger-btn:hover { background: var(--mkt-danger-soft); color: var(--mkt-danger); }
#workspace-marketing-os .mkt-primary-btn:focus-visible,
#workspace-marketing-os .mkt-soft-btn:focus-visible,
#workspace-marketing-os .mkt-ghost-btn:focus-visible { outline: none; box-shadow: 0 0 0 3px rgba(0, 115, 234, .30); }

/* ---------- Filter bar ---------- */
#workspace-marketing-os .mkt-filters {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr)) auto;   /* Brand·Cycle·Team·Role·Owner·Status·Search + Clear */
  gap: 8px;
  margin-top: 14px;
}
#workspace-marketing-os .mkt-field {
  background: var(--mkt-panel);
  border: 1px solid var(--mkt-line);
  border-radius: 8px;
  padding: 6px 10px;
  color: var(--mkt-muted);
  font-size: 12px;
  min-height: 42px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 2px;
}
#workspace-marketing-os .mkt-field label { font-size: 10px; font-weight: 600; color: var(--mkt-soft); text-transform: uppercase; letter-spacing: .03em; }
#workspace-marketing-os .mkt-field select,
#workspace-marketing-os .mkt-field input {
  border: 0; background: transparent; font-size: 13px; font-weight: 600; color: var(--mkt-text);
  padding: 0; width: 100%; outline: none; font-family: inherit;
}
#workspace-marketing-os .mkt-field input::placeholder { font-weight: 400; color: var(--mkt-soft); }

/* ---------- Flow summary cards ---------- */
#workspace-marketing-os .mkt-flow {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin: 14px 0;
}
#workspace-marketing-os .mkt-flow-card {
  position: relative; background: var(--mkt-panel); border: 1px solid var(--mkt-line);
  border-radius: var(--mkt-radius); padding: 15px; box-shadow: var(--mkt-shadow-sm); min-height: 112px;
}
#workspace-marketing-os .mkt-flow-card:not(:last-child)::after {
  content: "→"; position: absolute; right: -13px; top: 42%; color: var(--mkt-soft); font-weight: 700; z-index: 5;
}
#workspace-marketing-os .mkt-flow-title { display: flex; align-items: center; justify-content: space-between; font-weight: 700; gap: 8px; }
#workspace-marketing-os .mkt-metric { font-size: 26px; font-weight: 700; margin-top: 10px; color: var(--mkt-text); }
#workspace-marketing-os .mkt-mini { color: var(--mkt-muted); font-size: 12px; }

/* ---------- Brand navigator (Overview) ---------- */
#workspace-marketing-os .mkt-brand-strip { margin: 4px 0 16px; }
#workspace-marketing-os .mkt-brand-strip-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 10px; flex-wrap: wrap; }
#workspace-marketing-os .mkt-brands { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 12px; }
#workspace-marketing-os .mkt-brand-card {
  background: var(--mkt-panel); border: 1px solid var(--mkt-line); border-top: 3px solid var(--bc, var(--mkt-accent));
  border-radius: var(--mkt-radius); padding: 13px 14px; box-shadow: var(--mkt-shadow-sm);
}
#workspace-marketing-os .mkt-brand-card.active { border-color: var(--bc, var(--mkt-accent)); box-shadow: var(--mkt-shadow); }
#workspace-marketing-os .mkt-brand-head { display: flex; align-items: center; gap: 8px; font-size: 14px; }
#workspace-marketing-os .mkt-brand-dot { width: 12px; height: 12px; border-radius: 50%; flex: none; }
#workspace-marketing-os .mkt-brand-metrics { display: grid; grid-template-columns: repeat(4, 1fr); gap: 6px; margin-top: 12px; }
#workspace-marketing-os .mkt-brand-metrics > div { text-align: center; }
#workspace-marketing-os .mkt-brand-metrics strong { display: block; font-size: 16px; }
#workspace-marketing-os .mkt-brand-metrics span { font-size: 11px; color: var(--mkt-muted); }
#workspace-marketing-os .mkt-brand-risk { display: flex; align-items: center; gap: 6px; margin-top: 10px; font-size: 12px; font-weight: 600; color: #C32E43; background: var(--mkt-danger-soft); padding: 5px 8px; border-radius: 7px; }

/* ---------- Brand logo (upload) ---------- */
#workspace-marketing-os .mkt-brand-logo { width: 34px; height: 34px; border-radius: 8px; display: inline-flex; align-items: center; justify-content: center; font-weight: 700; font-size: 14px; overflow: hidden; flex: none; border: 1px solid var(--mkt-line); }
#workspace-marketing-os .mkt-brand-logo img { width: 100%; height: 100%; object-fit: cover; display: block; }
#workspace-marketing-os .mkt-brand-logo-xs { width: 15px; height: 15px; border-radius: 4px; object-fit: cover; vertical-align: middle; margin-right: 3px; display: inline-block; }
#workspace-marketing-os .mkt-logo-upload { display: inline-flex; align-items: center; font-size: 11px; font-weight: 600; color: var(--mkt-accent-2); background: var(--mkt-accent-soft); border: 1px solid var(--mkt-accent); border-radius: 6px; padding: 4px 9px; cursor: pointer; }
#workspace-marketing-os .mkt-logo-upload:hover { background: var(--mkt-accent); color: #fff; }
#workspace-marketing-os .mkt-linkbtn { border: 0; background: transparent; color: var(--mkt-danger); font-size: 11px; font-weight: 600; cursor: pointer; padding: 2px 4px; }
#workspace-marketing-os .mkt-linkbtn:hover { text-decoration: underline; }

/* ---------- Tab Cấu hình ---------- */
#workspace-marketing-os .mkt-config { display: grid; grid-template-columns: 1fr; gap: 14px; }
#workspace-marketing-os .mkt-config .mkt-drawer-section:first-child { margin-top: 4px; }

/* ---------- Form Tạo OKR gọn (2 cột) + planner KR ---------- */
#workspace-marketing-os .mkt-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px 12px; }
#workspace-marketing-os .mkt-form-grid .mkt-form-row { margin-bottom: 0; }
#workspace-marketing-os .mkt-form-grid .mkt-col-2 { grid-column: 1 / -1; }
#workspace-marketing-os .mkt-kr-plan-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 8px; }
#workspace-marketing-os .mkt-kr-plan-head h5 { margin: 0; font-size: 13px; font-weight: 700; color: var(--mkt-text); text-transform: none; letter-spacing: 0; }
/* Card plan KR trong form OKR — CÙNG bộ trường form Thêm KR (grid 2 cột, có nhãn) */
#workspace-marketing-os .mkt-krplan-card { position: relative; border: 1px solid var(--mkt-line); border-radius: var(--mkt-radius); background: var(--mkt-panel-2); padding: 12px 12px 12px; margin-bottom: 10px; }
#workspace-marketing-os .mkt-krplan-del { position: absolute; top: 8px; right: 8px; border: none; background: transparent; color: var(--mkt-soft); cursor: pointer; padding: 2px; line-height: 1; }
#workspace-marketing-os .mkt-krplan-del:hover { color: var(--mkt-danger); }
#workspace-marketing-os .mkt-krplan-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px 12px; }
#workspace-marketing-os .mkt-krplan-f { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
#workspace-marketing-os .mkt-krplan-f.mkt-col-2 { grid-column: 1 / -1; }
#workspace-marketing-os .mkt-krplan-f > label { font-size: 11px; font-weight: 600; color: var(--mkt-muted); }
#workspace-marketing-os .mkt-krplan-f input,
#workspace-marketing-os .mkt-krplan-f select { border: 1px solid var(--mkt-line); border-radius: 7px; padding: 7px 9px; font-size: 12.5px; font-family: inherit; width: 100%; color: var(--mkt-text); background: var(--mkt-panel); }
#workspace-marketing-os .mkt-krplan-f input:focus,
#workspace-marketing-os .mkt-krplan-f select:focus { outline: none; border-color: var(--mkt-accent); box-shadow: 0 0 0 3px rgba(0,115,234,.12); }
@media (max-width: 560px) { #workspace-marketing-os .mkt-krplan-grid { grid-template-columns: 1fr; } }

/* ---------- People overview ---------- */
#workspace-marketing-os .mkt-people {
  display: grid; grid-template-columns: 1.05fr 1fr 1fr 1fr; gap: 12px; margin: 0 0 14px;
}
#workspace-marketing-os .mkt-member-card {
  background: var(--mkt-panel); border: 1px solid var(--mkt-line); border-radius: var(--mkt-radius);
  padding: 14px; box-shadow: var(--mkt-shadow-sm);
}
#workspace-marketing-os .mkt-member-top { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
#workspace-marketing-os .mkt-avatar {
  width: 36px; height: 36px; display: inline-flex; align-items: center; justify-content: center;
  border-radius: 50%; background: var(--mkt-accent-soft); color: var(--mkt-accent-2); font-weight: 700; margin-right: 9px; flex: none; font-size: 13px;
}
#workspace-marketing-os .mkt-person { display: flex; align-items: center; }
#workspace-marketing-os .mkt-person-name { font-weight: 700; line-height: 1.15; }
#workspace-marketing-os .mkt-person-role { color: var(--mkt-muted); font-size: 12px; margin-top: 2px; }
#workspace-marketing-os .mkt-score { font-size: 22px; font-weight: 700; color: var(--mkt-text); }
#workspace-marketing-os .mkt-member-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin-top: 12px; }
#workspace-marketing-os .mkt-mini-stat { background: var(--mkt-panel-2); border: 1px solid var(--mkt-line-soft); border-radius: 8px; padding: 9px; }
#workspace-marketing-os .mkt-mini-stat strong { display: block; font-size: 15px; }

/* ---------- Tabs ---------- */
#workspace-marketing-os .mkt-tabs {
  display: flex; gap: 6px; background: var(--mkt-panel); border: 1px solid var(--mkt-line);
  border-radius: 10px; padding: 5px; position: sticky; top: 0; z-index: 10;
  box-shadow: var(--mkt-shadow-sm); overflow-x: auto;
}
#workspace-marketing-os .mkt-tab {
  border: 0; border-radius: 6px; padding: 8px 13px; color: var(--mkt-muted); background: transparent;
  font-weight: 600; font-size: 13px; cursor: pointer; white-space: nowrap; font-family: inherit;
  display: inline-flex; align-items: center; gap: 7px;
}
#workspace-marketing-os .mkt-tab:hover { background: var(--mkt-panel-2); color: var(--mkt-text); }
#workspace-marketing-os .mkt-tab.active { background: var(--mkt-accent); color: #fff; }
/* Subtab theo brand trong tab OKR */
#workspace-marketing-os .mkt-subtabbar { display: flex; gap: 6px; flex-wrap: wrap; margin: 2px 0 14px; }
#workspace-marketing-os .mkt-subtab { display: inline-flex; align-items: center; gap: 7px; padding: 7px 13px; border: 1px solid var(--mkt-line); background: var(--mkt-panel); border-radius: 9px; font-size: 13px; font-weight: 600; color: var(--mkt-muted); cursor: pointer; white-space: nowrap; }
#workspace-marketing-os .mkt-subtab:hover { background: var(--mkt-panel-2); color: var(--mkt-text); }
#workspace-marketing-os .mkt-subtab.active { background: var(--mkt-accent); color: #fff; border-color: var(--mkt-accent); }
#workspace-marketing-os .mkt-subtab-dot { width: 10px; height: 10px; border-radius: 3px; flex: none; }
#workspace-marketing-os .mkt-subtab.active .mkt-subtab-dot { background: #fff !important; }
#workspace-marketing-os .mkt-subtab-logo { width: 16px; height: 16px; border-radius: 4px; object-fit: cover; flex: none; }
#workspace-marketing-os .mkt-subtab-cnt { font-size: 11px; font-weight: 700; background: rgba(0,0,0,.08); border-radius: 99px; padding: 1px 7px; }
#workspace-marketing-os .mkt-subtab.active .mkt-subtab-cnt { background: rgba(255,255,255,.22); }
#workspace-marketing-os .mkt-tab .mkt-ic { opacity: .95; }
#workspace-marketing-os .mkt-panel-tab { display: none; margin-top: 14px; }
#workspace-marketing-os .mkt-panel-tab.active { display: block; }

/* ---------- Layout helpers ---------- */
#workspace-marketing-os .mkt-grid-2 { display: grid; grid-template-columns: 1.25fr .75fr; gap: 14px; }
#workspace-marketing-os .mkt-grid-3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
#workspace-marketing-os .mkt-two-cols { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
#workspace-marketing-os .mkt-muted { color: var(--mkt-muted); }
#workspace-marketing-os .mkt-right { text-align: right; }

/* ---------- Panels ---------- */
#workspace-marketing-os .mkt-panel {
  background: var(--mkt-panel); border: 1px solid var(--mkt-line); border-radius: var(--mkt-radius);
  padding: 16px; box-shadow: var(--mkt-shadow-sm);
}
#workspace-marketing-os .mkt-panel-header { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 12px; flex-wrap: wrap; }
#workspace-marketing-os .mkt-panel-title { font-weight: 700; font-size: 15px; }

/* ---------- Pills / chips / badges ---------- */
#workspace-marketing-os .mkt-pill,
#workspace-marketing-os .mkt-chip {
  display: inline-flex; align-items: center; gap: 6px; padding: 4px 9px; border-radius: 999px;
  background: var(--mkt-panel-2); color: var(--mkt-muted); font-size: 11px; font-weight: 600; white-space: nowrap;
}
#workspace-marketing-os .mkt-green { background: var(--mkt-green-soft); color: #018f55; }
#workspace-marketing-os .mkt-yellow { background: var(--mkt-warn-soft); color: #B4730F; }
#workspace-marketing-os .mkt-red { background: var(--mkt-danger-soft); color: #C32E43; }
#workspace-marketing-os .mkt-blue { background: var(--mkt-blue-soft); color: #1C5FB8; }

/* ---------- OKR cards (Monday: card trắng + sọc accent trạng thái) ---------- */
#workspace-marketing-os .mkt-okr-card {
  position: relative; border: 1px solid var(--mkt-line); border-radius: var(--mkt-radius);
  padding: 15px 16px 15px 19px; margin-bottom: 12px; background: var(--mkt-panel);
  box-shadow: var(--mkt-shadow-sm); cursor: pointer; transition: box-shadow .15s, transform .1s; overflow: hidden;
}
#workspace-marketing-os .mkt-okr-card::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 4px; background: var(--okr-accent, var(--mkt-accent)); }
/* KPI strip đầu tab OKR */
#workspace-marketing-os .mkt-okr-kpis { display: grid; grid-template-columns: repeat(6, 1fr); gap: 12px; }
#workspace-marketing-os .mkt-kpi { position: relative; background: var(--mkt-panel); border: 1px solid var(--mkt-line); border-radius: var(--mkt-radius); padding: 13px 14px 13px 16px; overflow: hidden; box-shadow: var(--mkt-shadow-sm); }
#workspace-marketing-os .mkt-kpi::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 4px; background: var(--kpi, var(--mkt-accent)); }
#workspace-marketing-os .mkt-kpi-label { font-size: 11px; font-weight: 600; color: var(--mkt-muted); text-transform: uppercase; letter-spacing: .03em; line-height: 1.3; }
#workspace-marketing-os .mkt-kpi-value { font-size: 26px; font-weight: 800; margin-top: 5px; }
#workspace-marketing-os .mkt-okr-warn { margin-top: 16px; padding-top: 14px; border-top: 1px solid var(--mkt-line); }
#workspace-marketing-os .mkt-warn-2col { grid-template-columns: 1fr 1fr; }
/* Lưới card OKR — tự co: màn càng rộng càng nhiều cột → card không bị kéo quá to */
#workspace-marketing-os .mkt-okr-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(430px, 1fr)); gap: 14px; align-items: start; margin-top: 4px; }
#workspace-marketing-os .mkt-okr-grid .mkt-okr-card { margin-bottom: 0; }
/* Board theo brand: mỗi brand 1 cột, OKR xếp dọc */
#workspace-marketing-os .mkt-brand-cols { display: grid; grid-template-columns: repeat(var(--bcols, 3), minmax(320px, 1fr)); gap: 14px; align-items: start; overflow-x: auto; padding-bottom: 4px; }
#workspace-marketing-os .mkt-brand-cols .mkt-bgrp,
#workspace-marketing-os .mkt-brand-cols .mkt-eff-grp { margin-bottom: 0; min-width: 0; }
#workspace-marketing-os .mkt-brand-cols .mkt-eff-card { width: auto; }
#workspace-marketing-os .mkt-okr-vstack { display: flex; flex-direction: column; gap: 12px; }
#workspace-marketing-os .mkt-okr-vstack .mkt-okr-card { margin-bottom: 0; }
/* task xếp dọc trong cột brand (thay kanban lane) */
#workspace-marketing-os .mkt-tcol-tasks { display: flex; flex-direction: column; gap: 8px; margin-top: 8px; min-width: 0; }
/* bung project = kanban trong cột brand: cho phép co + cuộn ngang, lane hẹp hơn chút */
#workspace-marketing-os .mkt-brand-cols .mkt-okr-vstack,
#workspace-marketing-os .mkt-brand-cols .mkt-projblk { min-width: 0; }
#workspace-marketing-os .mkt-brand-cols .mkt-kboard { grid-template-columns: repeat(var(--kl, 5), minmax(200px, 1fr)); }
#workspace-marketing-os .mkt-projblk.vcol { margin-bottom: 4px; }
#workspace-marketing-os .mkt-brand-cols .mkt-pcard,
#workspace-marketing-os .mkt-brand-cols .mkt-kcard { width: auto; }
@media (max-width: 720px) { #workspace-marketing-os .mkt-brand-cols { grid-template-columns: 1fr; } }

/* ---------- Nhóm theo BRAND (mọi tab) ---------- */
#workspace-marketing-os .mkt-bgrp { margin-bottom: 18px; }
#workspace-marketing-os .mkt-bgrp:last-child { margin-bottom: 0; }
#workspace-marketing-os .mkt-grp-bar { display: flex; align-items: center; gap: 10px; padding: 9px 12px; background: var(--mkt-panel-2); border-radius: 8px; box-shadow: inset 3px 0 0 var(--gc, var(--mkt-accent)); cursor: pointer; margin-bottom: 10px; }
#workspace-marketing-os .mkt-grp-bar:hover { background: var(--mkt-line-soft); }
#workspace-marketing-os .mkt-grp-tog { display: inline-flex; color: var(--mkt-muted); transition: transform .15s; }
#workspace-marketing-os .mkt-bgrp.collapsed .mkt-grp-tog,
#workspace-marketing-os tbody.mkt-grp-tbody.collapsed .mkt-grp-tog { transform: rotate(-90deg); }
#workspace-marketing-os .mkt-grp-name { font-size: 14px; font-weight: 700; color: var(--mkt-text); }
#workspace-marketing-os .mkt-grp-count { background: #EBECF0; color: var(--mkt-muted); border-radius: 99px; min-width: 22px; height: 20px; padding: 0 7px; font-size: 12px; font-weight: 700; display: inline-grid; place-items: center; }
#workspace-marketing-os .mkt-bgrp.collapsed .mkt-bgrp-body { display: none; }
/* nhóm brand trong bảng (KR / Task) */
#workspace-marketing-os .mkt-table tbody.mkt-grp-tbody.collapsed tr:not(.mkt-grp-row) { display: none; }
#workspace-marketing-os .mkt-table .mkt-grp-row td { padding: 10px 0 6px !important; background: transparent !important; border-bottom: 0; }
#workspace-marketing-os .mkt-table .mkt-grp-row:hover td { background: transparent !important; }
#workspace-marketing-os .mkt-table .mkt-grp-row .mkt-grp-bar { margin-bottom: 0; }
#workspace-marketing-os .mkt-table tbody.mkt-grp-tbody:not(:first-child) .mkt-grp-row td { padding-top: 20px !important; }
#workspace-marketing-os .mkt-okr-card:hover { box-shadow: var(--mkt-shadow); transform: translateY(-1px); }
#workspace-marketing-os .mkt-okr-top { display: flex; justify-content: space-between; gap: 12px; align-items: flex-start; }
#workspace-marketing-os .mkt-okr-title { font-weight: 700; margin: 0 0 6px; font-size: 15px; }
#workspace-marketing-os .mkt-okr-meta { color: var(--mkt-muted); font-size: 12px; line-height: 1.6; }

/* ---------- Progress bar (semantic: xanh đạt / vàng cảnh báo / đỏ rủi ro) ---------- */
#workspace-marketing-os .mkt-progress { height: 8px; border-radius: 99px; background: var(--mkt-line-soft); overflow: hidden; margin: 12px 0 8px; }
#workspace-marketing-os .mkt-bar { height: 100%; background: var(--mkt-green); border-radius: inherit; transition: width .3s ease; }
#workspace-marketing-os .mkt-bar.warn { background: var(--mkt-warn); }
#workspace-marketing-os .mkt-bar.danger { background: var(--mkt-danger); }

#workspace-marketing-os .mkt-kr-list { display: grid; gap: 6px; margin-top: 10px; }
/* trong card OKR: gom KR thành 2 cột cho đặc, hết khoảng trắng giữa */
#workspace-marketing-os .mkt-kr-list-2col { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px 14px; }
#workspace-marketing-os .mkt-kr-row {
  display: grid; grid-template-columns: minmax(0, 1fr) 84px 38px; gap: 10px; align-items: center;
  padding: 8px 11px; border-radius: 6px; background: var(--mkt-panel-2); font-size: 13px; cursor: pointer; transition: background .12s;
}
#workspace-marketing-os .mkt-kr-row:hover { background: var(--mkt-accent-soft); }
#workspace-marketing-os .mkt-kr-row .mkt-kr-nm-wrap { min-width: 0; display: flex; flex-direction: column; gap: 1px; }
#workspace-marketing-os .mkt-kr-row .mkt-kr-sub { font-size: 11px; color: var(--mkt-muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; font-variant-numeric: tabular-nums; }
#workspace-marketing-os .mkt-kr-head { font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; color: var(--mkt-muted); margin-top: 12px; }
/* thanh tiến độ tổng OKR + % ở cuối */
/* thanh tổng OKR: cụm về trái + giới hạn dài (không kéo full card) */
#workspace-marketing-os .mkt-okr-prog { display: flex; align-items: center; gap: 10px; }
#workspace-marketing-os .mkt-okr-prog .mkt-progress { flex: 1; max-width: 240px; margin: 12px 0; }
#workspace-marketing-os .mkt-okr-prog-pct { font-weight: 800; font-size: 14px; color: var(--mkt-text); }
#workspace-marketing-os .mkt-kr-row .mkt-kr-nm { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-weight: 600; }
#workspace-marketing-os .mkt-kr-row .mkt-kr-mini { height: 6px; margin: 0; }
#workspace-marketing-os .mkt-kr-row .mkt-kr-pct { text-align: right; font-weight: 700; font-size: 12px; color: var(--mkt-muted); }

/* ---------- Tables ---------- */
#workspace-marketing-os .mkt-table-wrap { overflow-x: auto; }
#workspace-marketing-os .mkt-table { width: 100%; border-collapse: separate; border-spacing: 0; font-size: 13px; }
#workspace-marketing-os .mkt-table th,
#workspace-marketing-os .mkt-table td { text-align: left; padding: 10px 10px; border-bottom: 1px solid var(--mkt-line); vertical-align: middle; }
#workspace-marketing-os .mkt-table th { color: var(--mkt-muted); font-size: 11px; text-transform: uppercase; letter-spacing: .02em; background: var(--mkt-panel-2); font-weight: 600; }
#workspace-marketing-os .mkt-table tbody tr { cursor: pointer; }
#workspace-marketing-os .mkt-table tbody tr:hover td { background: var(--mkt-panel-2); }

/* ---------- Kanban ---------- */
#workspace-marketing-os .mkt-kanban { display: grid; grid-template-columns: repeat(var(--mkt-lanes, 4), minmax(0, 1fr)); gap: 12px; }
#workspace-marketing-os .mkt-lane { background: var(--mkt-panel-2); border: 1px solid var(--mkt-line); border-radius: 10px; padding: 10px; min-height: 320px; }
#workspace-marketing-os .mkt-lane-title { font-weight: 700; margin: 4px 4px 10px; display: flex; justify-content: space-between; font-size: 13px; }
#workspace-marketing-os .mkt-project-card { background: var(--mkt-panel); border: 1px solid var(--mkt-line); border-radius: 8px; padding: 12px; margin-bottom: 10px; cursor: pointer; transition: box-shadow .15s, border-color .15s; }
#workspace-marketing-os .mkt-project-card:hover { box-shadow: var(--mkt-shadow); border-color: var(--mkt-accent); }
#workspace-marketing-os .mkt-project-card h4 { margin: 0 0 8px; font-size: 14px; font-weight: 700; }

/* ---------- Task board ---------- */
#workspace-marketing-os .mkt-task-board { display: grid; grid-template-columns: .8fr 1.2fr; gap: 14px; }
#workspace-marketing-os .mkt-today-box { display: grid; gap: 10px; }
#workspace-marketing-os .mkt-task-card { border: 1px solid var(--mkt-line); border-radius: 8px; padding: 12px; background: var(--mkt-panel-2); }
#workspace-marketing-os .mkt-mini-cards { display: grid; grid-template-columns: repeat(5, 1fr); gap: 10px; margin-bottom: 14px; }

/* ---------- Member performance ---------- */
#workspace-marketing-os .mkt-role-section { margin-top: 14px; }
#workspace-marketing-os .mkt-role-title { display: flex; align-items: center; justify-content: space-between; font-weight: 700; margin-bottom: 8px; }
#workspace-marketing-os .mkt-score-card { border: 1px solid var(--mkt-line); background: var(--mkt-panel-2); border-radius: 10px; padding: 14px; }
#workspace-marketing-os .mkt-score-row { display: flex; justify-content: space-between; gap: 10px; padding: 8px 0; border-bottom: 1px solid var(--mkt-line-soft); }
#workspace-marketing-os .mkt-score-row:last-child { border-bottom: 0; }

/* ---------- Heatmap ---------- */
#workspace-marketing-os .mkt-heatmap { display: grid; grid-template-columns: 1.2fr repeat(5, .55fr); gap: 8px; font-size: 12px; align-items: center; }
#workspace-marketing-os .mkt-heat-head { color: var(--mkt-muted); font-weight: 600; font-size: 11px; text-transform: uppercase; }
#workspace-marketing-os .mkt-heat-cell { height: 34px; border-radius: 8px; display: flex; align-items: center; justify-content: center; font-weight: 700; background: var(--mkt-panel-2); }
#workspace-marketing-os .mkt-heat-high { background: var(--mkt-green-soft); color: var(--mkt-green); }
#workspace-marketing-os .mkt-heat-mid { background: var(--mkt-accent-soft); color: var(--mkt-accent-2); }
#workspace-marketing-os .mkt-heat-low { background: var(--mkt-danger-soft); color: var(--mkt-danger); }
#workspace-marketing-os .mkt-legend { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 12px; font-size: 12px; color: var(--mkt-muted); }
#workspace-marketing-os .mkt-legend span { display: inline-flex; align-items: center; gap: 6px; }
#workspace-marketing-os .mkt-legend i { width: 14px; height: 14px; border-radius: 4px; display: inline-block; }

/* ---------- Empty state ---------- */
#workspace-marketing-os .mkt-empty {
  text-align: center; padding: 44px 20px; color: var(--mkt-soft); border: 1px dashed var(--mkt-line);
  border-radius: 10px; background: var(--mkt-panel-2);
}
#workspace-marketing-os .mkt-empty .mkt-empty-icon { margin-bottom: 10px; color: var(--mkt-soft); }
#workspace-marketing-os .mkt-empty .mkt-empty-icon .mkt-ic { width: 40px; height: 40px; stroke-width: 1.4; }
#workspace-marketing-os .mkt-empty h4 { margin: 0 0 6px; color: var(--mkt-muted); font-size: 15px; }

/* ---------- Modal (popup GIỮA màn hình) ---------- */
#workspace-marketing-os .mkt-drawer-overlay {
  position: fixed; inset: 0; background: rgba(15, 23, 42, .52); z-index: 4000;
  display: flex; align-items: center; justify-content: center; padding: 28px;
  opacity: 0; transition: opacity .18s; backdrop-filter: blur(3px); -webkit-backdrop-filter: blur(3px);
}
#workspace-marketing-os .mkt-drawer-overlay.open { opacity: 1; }
#workspace-marketing-os .mkt-drawer {
  width: min(880px, 100%); max-height: 92vh; background: var(--mkt-panel);
  border: 1px solid var(--mkt-line); border-radius: 14px; box-shadow: 0 20px 60px rgba(15, 23, 42, .34);
  overflow-y: auto; transform: translateY(16px) scale(.985); transition: transform .22s cubic-bezier(.2, .7, .3, 1), opacity .2s; padding: 0 28px 24px;
}
#workspace-marketing-os .mkt-drawer-overlay.open .mkt-drawer { transform: translateY(0) scale(1); }
/* Header sticky kiểu Monday: dính trên khi cuộn, có gạch chân + dải màu primary mảnh */
#workspace-marketing-os .mkt-drawer-head {
  position: sticky; top: 0; z-index: 3;
  display: flex; justify-content: space-between; align-items: flex-start; gap: 12px;
  margin: 0 -28px 18px; padding: 20px 28px 15px;
  background: var(--mkt-panel); border-bottom: 1px solid var(--mkt-line); border-radius: 14px 14px 0 0;
}
#workspace-marketing-os .mkt-drawer-head::before { content: ''; position: absolute; left: 0; top: 0; height: 3px; width: 100%; background: var(--mkt-accent); border-radius: 14px 14px 0 0; }
#workspace-marketing-os .mkt-drawer-head h3 { margin: 0 0 3px; font-size: 19px; font-weight: 800; letter-spacing: -.01em; color: var(--mkt-text); }
#workspace-marketing-os .mkt-drawer-close { border: 1px solid var(--mkt-line); background: var(--mkt-panel-2); border-radius: 8px; width: 34px; height: 34px; font-size: 18px; cursor: pointer; color: var(--mkt-muted); flex: none; display: inline-flex; align-items: center; justify-content: center; transition: background .15s, color .15s, border-color .15s; }
#workspace-marketing-os .mkt-drawer-close:hover { background: var(--mkt-danger-soft); color: var(--mkt-danger); border-color: var(--mkt-danger); }
#workspace-marketing-os .mkt-drawer-section { margin: 16px 0; }
#workspace-marketing-os .mkt-drawer-section h5 { margin: 0 0 8px; font-size: 11px; text-transform: uppercase; letter-spacing: .04em; color: var(--mkt-soft); font-weight: 700; }
#workspace-marketing-os .mkt-kv { display: grid; grid-template-columns: 130px 1fr; gap: 8px 10px; font-size: 13px; }
#workspace-marketing-os .mkt-kv dt { color: var(--mkt-muted); }
#workspace-marketing-os .mkt-kv dd { margin: 0; font-weight: 600; }
#workspace-marketing-os .mkt-form-row { display: grid; gap: 5px; margin-bottom: 12px; }
#workspace-marketing-os .mkt-form-row label { font-size: 12px; font-weight: 600; color: var(--mkt-muted); }
#workspace-marketing-os .mkt-form-row input,
#workspace-marketing-os .mkt-form-row select,
#workspace-marketing-os .mkt-form-row textarea {
  border: 1px solid var(--mkt-line); border-radius: 8px; padding: 9px 11px; font-size: 13px; font-family: inherit; width: 100%; color: var(--mkt-text); background: var(--mkt-panel); transition: border-color .15s, box-shadow .15s;
}
#workspace-marketing-os .mkt-form-row input:hover,
#workspace-marketing-os .mkt-form-row select:hover,
#workspace-marketing-os .mkt-form-row textarea:hover { border-color: var(--mkt-soft); }
#workspace-marketing-os .mkt-form-row input:focus,
#workspace-marketing-os .mkt-form-row select:focus,
#workspace-marketing-os .mkt-form-row textarea:focus { outline: none; border-color: var(--mkt-accent); box-shadow: 0 0 0 3px rgba(0, 115, 234, .14); }
#workspace-marketing-os .mkt-drawer input::placeholder,
#workspace-marketing-os .mkt-drawer textarea::placeholder { color: var(--mkt-soft); }
#workspace-marketing-os .mkt-drawer input.mkt-num { font-variant-numeric: tabular-nums; letter-spacing: .01em; }
#workspace-marketing-os .mkt-form-note { display: flex; align-items: flex-start; gap: 7px; background: var(--mkt-accent-soft); color: var(--mkt-accent-2); border-radius: 8px; padding: 10px 12px; font-size: 12px; margin-top: 8px; }
#workspace-marketing-os .mkt-form-note .mkt-ic { margin-top: 1px; }
#workspace-marketing-os .mkt-warn-list { display: grid; gap: 6px; }
#workspace-marketing-os .mkt-warn-item { display: flex; align-items: center; gap: 7px; background: var(--mkt-warn-soft); color: #B4730F; border-radius: 8px; padding: 8px 11px; font-size: 12px; font-weight: 600; }
#workspace-marketing-os .mkt-warn-item.danger { background: var(--mkt-danger-soft); color: var(--mkt-danger); }
#workspace-marketing-os .mkt-warn-item.ok { background: var(--mkt-green-soft); color: var(--mkt-green); }

/* ---------- Charts (CSS thuần, không thư viện) ---------- */
#workspace-marketing-os .mkt-chart-row { display: grid; grid-template-columns: 150px 1fr 46px; gap: 10px; align-items: center; padding: 5px 0; font-size: 12px; }
#workspace-marketing-os .mkt-chart-lb { color: var(--mkt-muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
#workspace-marketing-os .mkt-chart-track { height: 8px; border-radius: 99px; background: var(--mkt-line-soft); overflow: hidden; }
#workspace-marketing-os .mkt-chart-fill { display: block; height: 100%; border-radius: inherit; background: var(--mkt-accent); }
#workspace-marketing-os .mkt-chart-val { text-align: right; font-weight: 700; color: var(--mkt-text); }
#workspace-marketing-os .mkt-stack { display: flex; height: 16px; border-radius: 99px; overflow: hidden; background: var(--mkt-line-soft); }
#workspace-marketing-os .mkt-stack-seg { height: 100%; }
/* màu dùng chung cho chart-fill / stack-seg / legend i */
#workspace-marketing-os .mkt-chart-fill.green, #workspace-marketing-os .mkt-stack-seg.green, #workspace-marketing-os .mkt-legend i.green { background: var(--mkt-green); }
#workspace-marketing-os .mkt-chart-fill.amber, #workspace-marketing-os .mkt-stack-seg.amber, #workspace-marketing-os .mkt-legend i.amber { background: var(--mkt-warn); }
#workspace-marketing-os .mkt-chart-fill.red, #workspace-marketing-os .mkt-stack-seg.red, #workspace-marketing-os .mkt-legend i.red { background: var(--mkt-danger); }
#workspace-marketing-os .mkt-chart-fill.blue, #workspace-marketing-os .mkt-stack-seg.blue, #workspace-marketing-os .mkt-legend i.blue { background: var(--mkt-blue); }

/* ---------- Clickable cards + list drawer ---------- */
#workspace-marketing-os .mkt-clickable { cursor: pointer; transition: box-shadow .15s, border-color .15s, transform .1s; }
#workspace-marketing-os .mkt-clickable:hover { box-shadow: var(--mkt-shadow); border-color: var(--mkt-accent); }
#workspace-marketing-os .mkt-clickable:active { transform: translateY(1px); }
#workspace-marketing-os .mkt-list { display: grid; gap: 2px; }
#workspace-marketing-os .mkt-list-row { display: grid; grid-template-columns: 1fr auto auto; gap: 10px; align-items: center; padding: 10px 8px; border-bottom: 1px solid var(--mkt-line-soft); cursor: pointer; border-radius: 8px; }
#workspace-marketing-os .mkt-list-row:hover { background: var(--mkt-panel-2); }
#workspace-marketing-os .mkt-list-nm { font-weight: 600; font-size: 13px; }
#workspace-marketing-os .mkt-list-row strong { font-size: 13px; color: var(--mkt-text); }

/* ---------- Chartbox (Chart.js canvas) ---------- */
#workspace-marketing-os .mkt-chartbox { position: relative; height: 230px; width: 100%; }
#workspace-marketing-os .mkt-chartbox.tall { height: 264px; }

/* ---------- Bảng quản lý thành viên (trong drawer) ---------- */
#workspace-marketing-os .mkt-manage-table td { padding: 8px 8px; }
#workspace-marketing-os .mkt-manage-table select,
#workspace-marketing-os .mkt-manage-table input {
  border: 1px solid var(--mkt-line); border-radius: 6px; padding: 5px 7px; font-size: 12px;
  font-family: inherit; width: 100%; max-width: 140px; color: var(--mkt-text); background: var(--mkt-panel);
}
#workspace-marketing-os .mkt-manage-table select:focus,
#workspace-marketing-os .mkt-manage-table input:focus { outline: none; border-color: var(--mkt-accent); }

/* ---------- Responsive ---------- */
@media (max-width: 1180px) {
  #workspace-marketing-os .mkt-hero,
  #workspace-marketing-os .mkt-grid-2,
  #workspace-marketing-os .mkt-task-board { grid-template-columns: 1fr; }
  #workspace-marketing-os .mkt-filters,
  #workspace-marketing-os .mkt-flow,
  #workspace-marketing-os .mkt-kanban,
  #workspace-marketing-os .mkt-people,
  #workspace-marketing-os .mkt-grid-3,
  #workspace-marketing-os .mkt-mini-cards { grid-template-columns: 1fr 1fr; }
  #workspace-marketing-os .mkt-okr-kpis { grid-template-columns: repeat(3, 1fr); }
  #workspace-marketing-os .mkt-warn-2col { grid-template-columns: 1fr; }
}
@media (max-width: 720px) {
  #workspace-marketing-os .mkt-okr-kpis { grid-template-columns: 1fr 1fr; }
  #workspace-marketing-os .mkt-main { padding: 12px; }
  #workspace-marketing-os .mkt-filters,
  #workspace-marketing-os .mkt-flow,
  #workspace-marketing-os .mkt-kanban,
  #workspace-marketing-os .mkt-people,
  #workspace-marketing-os .mkt-grid-3,
  #workspace-marketing-os .mkt-mini-cards { grid-template-columns: 1fr; }
  #workspace-marketing-os .mkt-hero-actions { justify-content: flex-start; }
  #workspace-marketing-os .mkt-heatmap { grid-template-columns: 1fr; }
  #workspace-marketing-os .mkt-heat-cell { justify-content: flex-start; padding-left: 10px; }
  #workspace-marketing-os .mkt-kr-list-2col { grid-template-columns: 1fr; }
  #workspace-marketing-os .mkt-drawer-overlay { padding: 12px; }
  #workspace-marketing-os .mkt-drawer { width: 100%; max-height: 94vh; }
}

/* ── Bàn làm việc (desk cá nhân) ── */
#workspace-marketing-os .mkt-desk-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 14px; flex-wrap: wrap; margin-bottom: 14px; }
#workspace-marketing-os .mkt-desk-title { font-size: 20px; font-weight: 800; color: var(--mkt-text); margin-top: 2px; }
#workspace-marketing-os .mkt-desk-picker label { display: block; font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; color: var(--mkt-muted); margin-bottom: 4px; }
#workspace-marketing-os .mkt-desk-me { padding: 8px 12px; border: 1px solid var(--mkt-line); border-radius: 8px; background: var(--mkt-panel); font-size: 13px; font-weight: 600; color: var(--mkt-text); min-width: 240px; }
#workspace-marketing-os .mkt-desk-list { display: flex; flex-direction: column; }
#workspace-marketing-os .mkt-desk-sec { display: flex; flex-direction: column; gap: 8px; margin-bottom: 16px; }
#workspace-marketing-os .mkt-desk-sec-h { font-size: 12px; font-weight: 800; text-transform: uppercase; letter-spacing: .04em; color: var(--sec, var(--mkt-muted)); display: flex; align-items: center; gap: 8px; margin: 2px 0 2px; }
#workspace-marketing-os .mkt-desk-sec-h span { background: color-mix(in srgb, var(--sec) 15%, transparent); color: var(--sec); border-radius: 99px; padding: 1px 8px; font-size: 11px; }
#workspace-marketing-os .mkt-desk-task { display: flex; gap: 12px; align-items: center; justify-content: space-between; flex-wrap: wrap; padding: 11px 14px; border: 1px solid var(--mkt-line); border-left: 3px solid var(--mkt-line); border-radius: 9px; background: var(--mkt-panel); }
#workspace-marketing-os .mkt-desk-task.overdue { border-left-color: var(--mkt-danger); }
#workspace-marketing-os .mkt-desk-task.blocked { border-left-color: var(--mkt-danger); background: var(--mkt-danger-soft); }
#workspace-marketing-os .mkt-desk-task-main { min-width: 200px; flex: 1; }
#workspace-marketing-os .mkt-desk-task-nm { font-weight: 700; font-size: 14px; color: var(--mkt-text); cursor: pointer; display: inline-block; }
#workspace-marketing-os .mkt-desk-task-nm:hover { color: var(--mkt-accent); }
#workspace-marketing-os .mkt-desk-task-ctx { font-size: 12px; color: var(--mkt-muted); margin-top: 3px; display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
#workspace-marketing-os .mkt-desk-blocker { font-size: 12px; color: var(--mkt-danger); margin-top: 5px; display: flex; align-items: center; gap: 5px; }
#workspace-marketing-os .mkt-desk-task-ctrl { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
#workspace-marketing-os .mkt-desk-st { padding: 6px 9px; border: 1px solid var(--mkt-line); border-radius: 7px; font-size: 12.5px; font-weight: 700; background: var(--mkt-panel); color: var(--mkt-text); cursor: pointer; }
#workspace-marketing-os .mkt-desk-st.mkt-green { color: #0E9F90; }
#workspace-marketing-os .mkt-desk-st.mkt-yellow { color: #B45309; }
#workspace-marketing-os .mkt-desk-st.mkt-red { color: var(--mkt-danger); }
#workspace-marketing-os .mkt-desk-hrs { width: 60px; padding: 6px; border: 1px solid var(--mkt-line); border-radius: 7px; font-size: 12.5px; text-align: right; }
#workspace-marketing-os .mkt-desk-blk { width: 170px; max-width: 46vw; padding: 6px 9px; border: 1px solid var(--mkt-line); border-radius: 7px; font-size: 12.5px; }
#workspace-marketing-os .mkt-desk-done { margin-top: 4px; }
#workspace-marketing-os .mkt-desk-done summary { cursor: pointer; font-size: 12.5px; font-weight: 700; color: var(--mkt-muted); padding: 6px 0; }


/* ── Kanban board v2 (Task tab + Project board + cockpit) ── */
#workspace-marketing-os .mkt-khint { display: flex; align-items: center; gap: 7px; font-size: 12px; color: var(--mkt-muted); background: var(--mkt-panel-2); border-radius: 8px; padding: 8px 11px; margin-bottom: 12px; }
#workspace-marketing-os .mkt-kboard { display: grid; grid-template-columns: repeat(var(--kl, 5), minmax(224px, 1fr)); gap: 12px; align-items: start; overflow-x: auto; padding-bottom: 4px; }
#workspace-marketing-os .mkt-klane { background: var(--mkt-panel-2); border: 1px solid var(--mkt-line); border-radius: 12px; padding: 8px; min-height: 110px; transition: background .15s, box-shadow .15s; }
#workspace-marketing-os .mkt-klane.drop-hover { background: var(--mkt-accent-soft); box-shadow: inset 0 0 0 2px var(--mkt-accent); }
#workspace-marketing-os .mkt-klane-h { display: flex; align-items: center; justify-content: space-between; gap: 8px; font-size: 12px; font-weight: 800; text-transform: uppercase; letter-spacing: .03em; padding: 6px 9px; border-radius: 8px; margin-bottom: 8px; }
#workspace-marketing-os .mkt-klane-h b { background: rgba(0, 0, 0, .1); border-radius: 99px; padding: 1px 8px; font-size: 12px; }
#workspace-marketing-os .mkt-klane-h.green { background: var(--mkt-green-soft); color: #018f55; }
#workspace-marketing-os .mkt-klane-h.blue { background: var(--mkt-accent-soft); color: var(--mkt-accent-2); }
#workspace-marketing-os .mkt-klane-h.amber { background: var(--mkt-warn-soft); color: #B4730F; }
#workspace-marketing-os .mkt-klane-h.red { background: var(--mkt-danger-soft); color: #C32E43; }
#workspace-marketing-os .mkt-klane-h.soft { background: #EEF0F4; color: var(--mkt-muted); }
#workspace-marketing-os .mkt-klane-body { display: flex; flex-direction: column; gap: 8px; }
#workspace-marketing-os .mkt-klane-empty { text-align: center; color: var(--mkt-soft); font-size: 12px; padding: 12px 0; }

#workspace-marketing-os .mkt-kcard { background: var(--mkt-panel); border: 1px solid var(--mkt-line); border-left: 3px solid var(--acc, var(--mkt-accent)); border-radius: 9px; padding: 10px 11px; cursor: grab; box-shadow: var(--mkt-shadow-sm); transition: box-shadow .15s, transform .1s; }
#workspace-marketing-os .mkt-kcard:hover { box-shadow: var(--mkt-shadow); transform: translateY(-1px); }
#workspace-marketing-os .mkt-kcard:active { cursor: grabbing; }
#workspace-marketing-os .mkt-kcard.dragging { opacity: .45; }
#workspace-marketing-os .mkt-kcard.blocked { background: var(--mkt-danger-soft); border-left-color: var(--mkt-danger); }
#workspace-marketing-os .mkt-kcard-nm { font-weight: 700; font-size: 13px; line-height: 1.3; }
#workspace-marketing-os .mkt-kcard:hover .mkt-kcard-nm { color: var(--mkt-accent); }
#workspace-marketing-os .mkt-kcard-ctx { font-size: 11.5px; color: var(--mkt-muted); margin-top: 3px; line-height: 1.35; }
#workspace-marketing-os .mkt-kcard-blk { font-size: 11.5px; color: var(--mkt-danger); margin-top: 6px; display: flex; gap: 5px; align-items: flex-start; }
#workspace-marketing-os .mkt-kcard-foot { display: flex; align-items: center; gap: 7px; margin-top: 9px; flex-wrap: wrap; }
#workspace-marketing-os .mkt-kcard-due { font-size: 11px; color: var(--mkt-muted); font-weight: 600; margin-left: auto; }
#workspace-marketing-os .mkt-kcard-due.od { color: var(--mkt-danger); }
#workspace-marketing-os .mkt-kcard-ctrl { margin-top: 8px; }
#workspace-marketing-os .mkt-ksel { width: 100%; padding: 5px 7px; border: 1px solid var(--mkt-line); border-radius: 7px; font-size: 11.5px; font-weight: 700; background: var(--mkt-panel); color: var(--mkt-text); cursor: pointer; font-family: inherit; }
#workspace-marketing-os .mkt-ksel:focus { outline: none; border-color: var(--mkt-accent); }
#workspace-marketing-os .mkt-ksel.mkt-green { color: #0E9F90; }
#workspace-marketing-os .mkt-ksel.mkt-yellow { color: #B45309; }
#workspace-marketing-os .mkt-ksel.mkt-red { color: var(--mkt-danger); }

/* project card (bảng dự án) */
#workspace-marketing-os .mkt-pcard { background: var(--mkt-panel); border: 1px solid var(--mkt-line); border-left: 3px solid var(--acc, var(--mkt-accent)); border-radius: 10px; padding: 12px; cursor: grab; box-shadow: var(--mkt-shadow-sm); transition: box-shadow .15s, transform .1s; }
#workspace-marketing-os .mkt-pcard:hover { box-shadow: var(--mkt-shadow); transform: translateY(-1px); }
#workspace-marketing-os .mkt-pcard:active { cursor: grabbing; }
#workspace-marketing-os .mkt-pcard.dragging { opacity: .45; }
#workspace-marketing-os .mkt-pcard-top { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; }
#workspace-marketing-os .mkt-pcard-nm { font-weight: 700; font-size: 13.5px; line-height: 1.3; }
#workspace-marketing-os .mkt-pcard-ctx { display: flex; align-items: center; gap: 6px; margin-top: 8px; font-size: 11.5px; color: var(--mkt-muted); }
#workspace-marketing-os .mkt-pcard-kr { font-size: 11.5px; color: var(--mkt-muted); margin-top: 7px; }
#workspace-marketing-os .mkt-pcard-foot { display: flex; align-items: center; justify-content: space-between; gap: 8px; font-size: 11px; color: var(--mkt-muted); margin-top: 2px; }
#workspace-marketing-os .mkt-pcard-foot .od { color: var(--mkt-danger); }

/* progress ring */
#workspace-marketing-os .mkt-ring { position: relative; width: 48px; height: 48px; flex: none; display: inline-grid; place-items: center; }
#workspace-marketing-os .mkt-ring-t { position: absolute; font-size: 12.5px; font-weight: 800; color: var(--mkt-text); }
#workspace-marketing-os .mkt-ring-t i { font-style: normal; font-size: 8px; font-weight: 700; color: var(--mkt-muted); margin-left: .5px; }

/* avatar mini */
#workspace-marketing-os .mkt-av2 { width: 22px; height: 22px; border-radius: 50%; background: var(--mkt-accent-soft); color: var(--mkt-accent-2); font-size: 9.5px; font-weight: 800; display: inline-grid; place-items: center; flex: none; }

/* breakdown bar */
#workspace-marketing-os .mkt-bd { display: flex; height: 7px; width: 100%; border-radius: 99px; overflow: hidden; background: var(--mkt-line-soft); margin: 8px 0; }
#workspace-marketing-os .mkt-bd-seg { height: 100%; }
#workspace-marketing-os .mkt-bd-seg.green { background: var(--mkt-green); }
#workspace-marketing-os .mkt-bd-seg.blue { background: var(--mkt-accent); }
#workspace-marketing-os .mkt-bd-seg.amber { background: var(--mkt-warn); }
#workspace-marketing-os .mkt-bd-seg.red { background: var(--mkt-danger); }
#workspace-marketing-os .mkt-bd-seg.soft { background: var(--mkt-soft); }

/* schedule health text */
#workspace-marketing-os .mkt-sh { font-weight: 700; white-space: nowrap; }
#workspace-marketing-os .mkt-sh.ok { color: #018f55; }
#workspace-marketing-os .mkt-sh.warn { color: #B4730F; }
#workspace-marketing-os .mkt-sh.danger { color: var(--mkt-danger); }

/* project mgmt cards (view chủ dự án) */
#workspace-marketing-os .mkt-mgmt-list { display: grid; grid-template-columns: repeat(auto-fill, minmax(360px, 1fr)); gap: 12px; }
#workspace-marketing-os .mkt-mgmt-card { display: flex; align-items: center; gap: 14px; background: var(--mkt-panel); border: 1px solid var(--mkt-line); border-left: 4px solid var(--acc, var(--mkt-accent)); border-radius: 12px; padding: 14px; cursor: pointer; box-shadow: var(--mkt-shadow-sm); transition: box-shadow .15s, transform .1s; }
#workspace-marketing-os .mkt-mgmt-card:hover { box-shadow: var(--mkt-shadow); transform: translateY(-1px); }
#workspace-marketing-os .mkt-mgmt-l { flex: none; }
#workspace-marketing-os .mkt-mgmt-body { flex: 1; min-width: 0; }
#workspace-marketing-os .mkt-mgmt-h { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
#workspace-marketing-os .mkt-mgmt-nm { font-weight: 700; font-size: 14px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
#workspace-marketing-os .mkt-mgmt-sub { font-size: 12px; color: var(--mkt-muted); margin-top: 2px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
#workspace-marketing-os .mkt-mgmt-stats { display: flex; flex-wrap: wrap; gap: 12px; font-size: 12px; color: var(--mkt-muted); margin-top: 4px; }
#workspace-marketing-os .mkt-mgmt-stats b { color: var(--mkt-text); }
#workspace-marketing-os .mkt-mgmt-stats .od, #workspace-marketing-os .mkt-mgmt-stats .od b { color: var(--mkt-danger); }
#workspace-marketing-os .mkt-mgmt-go { flex: none; color: var(--mkt-soft); }
#workspace-marketing-os .mkt-mgmt-go .mkt-ic { transform: rotate(-90deg); }

/* cockpit drawer */
#workspace-marketing-os .mkt-drawer.wide { width: min(1180px, 100%); }
#workspace-marketing-os .mkt-sched { display: grid; gap: 8px; }
#workspace-marketing-os .mkt-sched-row { display: grid; grid-template-columns: 92px 1fr 44px; gap: 10px; align-items: center; font-size: 12px; color: var(--mkt-muted); }
#workspace-marketing-os .mkt-sched-row b { text-align: right; color: var(--mkt-text); font-weight: 800; }
#workspace-marketing-os .mkt-bar.blue-bar { background: var(--mkt-blue); }
#workspace-marketing-os .mkt-sh-badge { display: inline-block; margin-top: 10px; font-size: 12px; font-weight: 700; padding: 5px 11px; border-radius: 99px; }
#workspace-marketing-os .mkt-sh-badge.ok { background: var(--mkt-green-soft); color: #018f55; }
#workspace-marketing-os .mkt-sh-badge.warn { background: var(--mkt-warn-soft); color: #B4730F; }
#workspace-marketing-os .mkt-sh-badge.danger { background: var(--mkt-danger-soft); color: #C32E43; }
#workspace-marketing-os .mkt-mload-list { display: grid; gap: 6px; }
#workspace-marketing-os .mkt-mload { display: grid; grid-template-columns: 1fr auto auto; gap: 12px; align-items: center; padding: 8px 11px; background: var(--mkt-panel-2); border-radius: 8px; font-size: 12.5px; }
#workspace-marketing-os .mkt-mload-nm { display: flex; align-items: center; gap: 8px; font-weight: 600; }
#workspace-marketing-os .mkt-mload span { color: var(--mkt-muted); font-weight: 600; }


/* ── Task board nhóm brand › dự án ── */
#workspace-marketing-os .mkt-projblk { margin-bottom: 16px; }
#workspace-marketing-os .mkt-projblk:last-child { margin-bottom: 0; }
#workspace-marketing-os .mkt-projblk-h { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; margin: 6px 0 9px; padding: 7px 11px; background: var(--mkt-accent-soft); border: 0; border-left: 4px solid var(--mkt-accent); border-radius: 8px; cursor: pointer; }
#workspace-marketing-os .mkt-projblk-tog { display: inline-flex; color: var(--mkt-accent-2); transition: transform .15s; }
#workspace-marketing-os .mkt-projblk.vcol.collapsed .mkt-projblk-tog { transform: rotate(-90deg); }
#workspace-marketing-os .mkt-projblk.vcol.collapsed .mkt-tcol-tasks { display: none; }
#workspace-marketing-os .mkt-projblk-open { margin-left: auto; display: inline-flex; align-items: center; gap: 4px; color: var(--mkt-accent-2); font-weight: 600; }
#workspace-marketing-os .mkt-projblk-open:hover { text-decoration: underline; }
#workspace-marketing-os .mkt-projblk-h:hover { filter: brightness(.97); }
#workspace-marketing-os .mkt-projblk-nm { font-weight: 800; font-size: 13.5px; color: var(--mkt-accent-2); text-transform: uppercase; letter-spacing: .02em; }
#workspace-marketing-os .mkt-projblk-sub { font-size: 12px; color: #1C5FB8; font-weight: 600; }
/* header "Task lẻ" (không project) → tông xám trung tính, phân biệt với project */
#workspace-marketing-os .mkt-projblk-h--le { background: var(--mkt-panel-2); border-left-color: var(--mkt-soft); }
#workspace-marketing-os .mkt-projblk-h--le .mkt-projblk-nm { color: var(--mkt-muted); }
#workspace-marketing-os .mkt-projblk-h--le .mkt-projblk-sub { color: var(--mkt-muted); }
#workspace-marketing-os .mkt-projblk-h--le .mkt-projblk-tog { color: var(--mkt-muted); }


/* ── Tab Hiệu quả: thẻ hiệu quả từng thành viên ── */
#workspace-marketing-os .mkt-eff-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(340px, 1fr)); gap: 12px; margin-top: 14px; align-items: start; }
#workspace-marketing-os .mkt-eff-card { background: var(--mkt-panel); border: 1px solid var(--mkt-line); border-radius: 12px; padding: 14px; box-shadow: var(--mkt-shadow-sm); cursor: pointer; transition: box-shadow .15s, transform .1s, border-color .15s; }
#workspace-marketing-os .mkt-eff-card:hover { box-shadow: var(--mkt-shadow); transform: translateY(-1px); border-color: var(--mkt-accent); }
#workspace-marketing-os .mkt-eff-top { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; }
#workspace-marketing-os .mkt-eff-who { display: flex; align-items: center; gap: 10px; min-width: 0; }
#workspace-marketing-os .mkt-av2.lg { width: 38px; height: 38px; font-size: 13px; }
#workspace-marketing-os .mkt-eff-nm { font-weight: 700; font-size: 14px; }
#workspace-marketing-os .mkt-eff-role { font-size: 12px; color: var(--mkt-muted); margin-top: 1px; }
#workspace-marketing-os .mkt-eff-body { display: flex; align-items: center; gap: 16px; margin: 14px 0 12px; }
#workspace-marketing-os .mkt-eff-ring { display: flex; flex-direction: column; align-items: center; gap: 4px; flex: none; }
#workspace-marketing-os .mkt-eff-ring > span { font-size: 11px; color: var(--mkt-muted); font-weight: 600; }
#workspace-marketing-os .mkt-eff-metrics { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; flex: 1; min-width: 0; }
#workspace-marketing-os .mkt-eff-metric { background: var(--mkt-panel-2); border-radius: 8px; padding: 8px 6px; text-align: center; }
#workspace-marketing-os .mkt-eff-metric b { display: block; font-size: 16px; font-weight: 800; }
#workspace-marketing-os .mkt-eff-metric span { font-size: 10.5px; color: var(--mkt-muted); }
#workspace-marketing-os .mkt-eff-bd { margin-bottom: 12px; }
#workspace-marketing-os .mkt-eff-bdleg { display: flex; flex-wrap: wrap; gap: 4px 10px; font-size: 10.5px; color: var(--mkt-muted); }
#workspace-marketing-os .mkt-eff-bdleg span { display: inline-flex; align-items: center; gap: 4px; }
#workspace-marketing-os .mkt-eff-bdleg span::before { content: ""; width: 8px; height: 8px; border-radius: 2px; flex: none; }
#workspace-marketing-os .mkt-eff-bdleg .g::before { background: var(--mkt-green); }
#workspace-marketing-os .mkt-eff-bdleg .b::before { background: var(--mkt-accent); }
#workspace-marketing-os .mkt-eff-bdleg .a::before { background: var(--mkt-warn); }
#workspace-marketing-os .mkt-eff-bdleg .s::before { background: var(--mkt-soft); }
#workspace-marketing-os .mkt-eff-bdleg .r::before { background: var(--mkt-danger); }
#workspace-marketing-os .mkt-eff-loadhead { display: flex; align-items: center; justify-content: space-between; font-size: 12px; color: var(--mkt-muted); font-weight: 600; }
#workspace-marketing-os .mkt-eff-attn { display: flex; align-items: center; gap: 6px; margin-top: 10px; font-size: 12px; font-weight: 600; color: var(--mkt-danger); background: var(--mkt-danger-soft); padding: 6px 10px; border-radius: 8px; }


/* nhóm thẻ hiệu quả theo vị trí */
#workspace-marketing-os .mkt-eff-grp { margin-top: 16px; }
#workspace-marketing-os .mkt-eff-grp .mkt-eff-grid { margin-top: 10px; }
#workspace-marketing-os .mkt-eff-grp-h { display: flex; align-items: center; justify-content: space-between; gap: 10px; flex-wrap: wrap; padding: 8px 12px; background: var(--mkt-panel-2); border-radius: 8px; box-shadow: inset 3px 0 0 var(--mkt-accent); }
#workspace-marketing-os .mkt-eff-grp-nm { display: inline-flex; align-items: center; gap: 7px; font-size: 14px; font-weight: 800; color: var(--mkt-text); }
#workspace-marketing-os .mkt-eff-grp-nm .mkt-ic { color: var(--mkt-accent); }
#workspace-marketing-os .mkt-eff-grp-meta { font-size: 12px; font-weight: 600; color: var(--mkt-muted); }

/* ---- Danh mục chung Role & Team (tab Cấu hình) ---- */
#workspace-marketing-os .mkt-taxo-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
@media (max-width: 720px) { #workspace-marketing-os .mkt-taxo-grid { grid-template-columns: 1fr; } }
#workspace-marketing-os .mkt-taxo-col { background: var(--mkt-panel-2); border: 1px solid var(--mkt-line); border-radius: var(--mkt-radius); padding: 12px; }
#workspace-marketing-os .mkt-taxo-h { font-size: 12px; font-weight: 800; text-transform: uppercase; letter-spacing: .4px; color: var(--mkt-muted); margin-bottom: 10px; }
#workspace-marketing-os .mkt-taxo-h .mkt-mini { color: var(--mkt-accent); }
#workspace-marketing-os .mkt-taxo-row { display: flex; align-items: center; gap: 6px; margin-bottom: 6px; }
#workspace-marketing-os .mkt-taxo-inp { flex: 1; padding: 7px 10px; border: 1px solid var(--mkt-line); border-radius: 6px; background: var(--mkt-panel); color: var(--mkt-text); font: inherit; }
#workspace-marketing-os .mkt-taxo-inp:focus { outline: none; border-color: var(--mkt-accent); box-shadow: 0 0 0 3px rgba(0,115,234,.12); }
#workspace-marketing-os .mkt-taxo-add { display: flex; gap: 6px; margin-top: 10px; padding-top: 10px; border-top: 1px dashed var(--mkt-line); }
#workspace-marketing-os .mkt-taxo-add input { flex: 1; padding: 7px 10px; border: 1px solid var(--mkt-line); border-radius: 6px; background: var(--mkt-panel); color: var(--mkt-text); font: inherit; }
#workspace-marketing-os .mkt-taxo-add input:focus { outline: none; border-color: var(--mkt-accent); box-shadow: 0 0 0 3px rgba(0,115,234,.12); }
#workspace-marketing-os .mkt-taxo-add-btn { white-space: nowrap; }
#workspace-marketing-os .mkt-empty-mini { font-size: 12.5px; color: var(--mkt-muted); padding: 8px 2px; font-style: italic; }

/* ---- Danh sách checkbox chọn nhiều thành viên (form Project) ---- */
#workspace-marketing-os .mkt-chklist { border: 1px solid var(--mkt-line); border-radius: 7px; background: var(--mkt-panel); overflow: hidden; }
#workspace-marketing-os .mkt-chk-all { border-bottom: 1px solid var(--mkt-line); background: var(--mkt-panel-2); font-weight: 600; }
#workspace-marketing-os .mkt-chklist-items { max-height: 176px; overflow-y: auto; }
#workspace-marketing-os .mkt-chk { display: flex; align-items: center; gap: 8px; padding: 7px 10px; font-size: 13px; color: var(--mkt-text); cursor: pointer; }
#workspace-marketing-os .mkt-chk:hover { background: var(--mkt-panel-2); }
#workspace-marketing-os .mkt-chk input { width: 15px; height: 15px; accent-color: var(--mkt-accent); flex: none; cursor: pointer; }
#workspace-marketing-os .mkt-chk em { color: var(--mkt-muted); font-style: normal; font-size: 12px; }

/* ---- Dropdown MÀU (mỗi option 1 pill màu, kiểu Monday) ---- */
#workspace-marketing-os .mkt-cs { position: relative; }
#workspace-marketing-os .mkt-cs-btn { width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 8px; border: 1px solid var(--mkt-line); border-radius: 8px; padding: 6px 10px; background: var(--mkt-panel); cursor: pointer; font: inherit; color: var(--mkt-text); transition: border-color .15s, box-shadow .15s; }
#workspace-marketing-os .mkt-cs-btn:hover { border-color: var(--mkt-soft); }
#workspace-marketing-os .mkt-cs.open .mkt-cs-btn { border-color: var(--mkt-accent); box-shadow: 0 0 0 3px rgba(0, 115, 234, .14); }
#workspace-marketing-os .mkt-cs-btn > .mkt-ic { color: var(--mkt-muted); flex: none; transition: transform .15s; }
#workspace-marketing-os .mkt-cs.open .mkt-cs-btn > .mkt-ic { transform: rotate(180deg); }
#workspace-marketing-os .mkt-cs-pop { position: absolute; top: calc(100% + 5px); left: 0; right: 0; z-index: 20; background: var(--mkt-panel); border: 1px solid var(--mkt-line); border-radius: 10px; box-shadow: 0 12px 32px rgba(15, 23, 42, .18); padding: 5px; display: none; max-height: 244px; overflow-y: auto; }
#workspace-marketing-os .mkt-cs.open .mkt-cs-pop { display: block; }
#workspace-marketing-os .mkt-cs-opt { width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 8px; border: none; background: transparent; padding: 6px 7px; border-radius: 7px; cursor: pointer; font: inherit; }
#workspace-marketing-os .mkt-cs-opt:hover { background: var(--mkt-panel-2); }
#workspace-marketing-os .mkt-cs-opt.sel { background: var(--mkt-accent-soft); }
#workspace-marketing-os .mkt-cs-opt > .mkt-ic { color: var(--mkt-accent); flex: none; }

/* ---- Dòng xem trước số (số thô, hiện "= 1,000,000") ---- */
#workspace-marketing-os .mkt-num-hint { font-size: 11.5px; color: var(--mkt-accent-2); font-weight: 600; margin-top: 3px; min-height: 14px; font-variant-numeric: tabular-nums; letter-spacing: .01em; }

/* ---- Task drawer: input/textarea sửa trực tiếp + đính kèm output ---- */
#workspace-marketing-os .mkt-drawer-section > textarea[data-tedit],
#workspace-marketing-os .mkt-drawer-section > input[data-tedit] { width: 100%; border: 1px solid var(--mkt-line); border-radius: 8px; padding: 9px 11px; font: inherit; font-size: 13px; color: var(--mkt-text); background: var(--mkt-panel); transition: border-color .15s, box-shadow .15s; }
#workspace-marketing-os .mkt-drawer-section > textarea[data-tedit]:focus,
#workspace-marketing-os .mkt-drawer-section > input[data-tedit]:focus { outline: none; border-color: var(--mkt-accent); box-shadow: 0 0 0 3px rgba(0,115,234,.14); }
#workspace-marketing-os .mkt-att-grid { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 10px; }
#workspace-marketing-os .mkt-att-item { position: relative; }
#workspace-marketing-os .mkt-att-thumb { display: block; width: 92px; height: 92px; border-radius: 8px; overflow: hidden; border: 1px solid var(--mkt-line); }
#workspace-marketing-os .mkt-att-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
#workspace-marketing-os .mkt-att-file { display: inline-flex; align-items: center; gap: 6px; max-width: 220px; padding: 8px 10px; border: 1px solid var(--mkt-line); border-radius: 8px; background: var(--mkt-panel-2); color: var(--mkt-accent-2); font-size: 12px; font-weight: 600; text-decoration: none; }
#workspace-marketing-os .mkt-att-file span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
#workspace-marketing-os .mkt-att-file:hover { border-color: var(--mkt-accent); }
#workspace-marketing-os .mkt-att-del { position: absolute; top: -7px; right: -7px; width: 20px; height: 20px; border-radius: 999px; border: 1px solid var(--mkt-line); background: var(--mkt-panel); color: var(--mkt-muted); cursor: pointer; display: inline-flex; align-items: center; justify-content: center; box-shadow: var(--mkt-shadow-sm); padding: 0; }
#workspace-marketing-os .mkt-att-del:hover { color: var(--mkt-danger); border-color: var(--mkt-danger); }
#workspace-marketing-os .mkt-att-add { display: flex; gap: 6px; flex-wrap: wrap; align-items: center; }
#workspace-marketing-os .mkt-att-add input[data-tasklink] { flex: 1; min-width: 180px; border: 1px solid var(--mkt-line); border-radius: 8px; padding: 8px 11px; font: inherit; font-size: 13px; color: var(--mkt-text); background: var(--mkt-panel); }
#workspace-marketing-os .mkt-att-add input[data-tasklink]:focus { outline: none; border-color: var(--mkt-accent); box-shadow: 0 0 0 3px rgba(0,115,234,.14); }
#workspace-marketing-os .mkt-att-uplbl { cursor: pointer; }


/* ── Tab Action outlet (Trade MKT) ── */
#workspace-marketing-os .mkt-act-table { font-size: 12.5px; }
#workspace-marketing-os .mkt-act-table td { vertical-align: top; }
#workspace-marketing-os .mkt-act-table td:nth-child(2) { min-width: 120px; }


/* ── Liên kết outlet DB (tab Action) ── */
#workspace-marketing-os .mkt-linkdot { font-size: 9px; vertical-align: middle; margin-left: 2px; }
#workspace-marketing-os .mkt-linkdot.ok { color: var(--mkt-green); }
#workspace-marketing-os .mkt-linkdot.warn { color: var(--mkt-warn); }
#workspace-marketing-os .mkt-linkok { font-size: 11px; color: #018f55; margin-top: 4px; font-weight: 600; }
#workspace-marketing-os .mkt-linkwarn { font-size: 11px; color: #B4730F; margin-top: 4px; font-weight: 600; }
