/* ============================================================
   MODULE MARKETING — Khối Chiến lược (Đợt 1)
   CSS port 100% từ mockup-marketing-chien-luoc.html, SCOPE dưới .mktg-root
   → KHÔNG đụng CSS app. Biến màu brand tự định nghĩa (mục D), font Roboto.
   ============================================================ */
.mktg-root{
  --gold:#E1A146; --gold-light:#EDB96A; --gold-cream:#FBF1DC; --gold-ink:#9C6A16; --gold-pale:#FEF9EE;
  --navy:#0D1B33; --navy-sidebar:#0C1526;
  --bg:#F6F2EA; --panel:#FFFFFF; --text:#26221B; --soft:#8A8170; --line:#ECE5D8;
  --red:#C0392B; --blue:#2F5FA8; --green:#2E7D5B; --greend:#1F6B4A; --amber:#B9791C;
  font-family:'Roboto',-apple-system,sans-serif; color:var(--text); line-height:1.5;
}
.mktg-root *{box-sizing:border-box}
.mktg-root button{font-family:inherit}

/* ── page head ── */
.mktg-root .page-head .eyebrow{font-size:10.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-ink)}
.mktg-root .page-head .h1{font-size:21px;font-weight:900;color:var(--navy);margin-top:2px}
.mktg-root .page-head .sub{font-size:12.5px;color:var(--soft);margin-top:2px}

/* ── filters ── */
.mktg-root .filters{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:16px 0 18px}
.mktg-root .chip{padding:6px 13px;border-radius:999px;border:1px solid var(--line);background:#fff;font-size:12.5px;color:var(--text);cursor:pointer}
.mktg-root .chip.active{background:var(--navy);color:#fff;border-color:var(--navy)}
.mktg-root .select{padding:7px 13px;border-radius:9px;border:1px solid var(--line);background:#fff;font-size:12.5px;color:var(--text);cursor:pointer}
.mktg-root .spacer{flex:1}
.mktg-root .hint{font-size:12px;color:var(--soft);margin:-6px 0 14px}

/* ── cụm lọc Tổng quan (thương hiệu + năm + tháng) ── */
.mktg-root .mkt-fsel{padding:7px 12px;border-radius:9px;border:1px solid var(--line);background:#fff;font-size:12.5px;font-weight:600;color:var(--navy);cursor:pointer;font-family:inherit}
.mktg-root .mkt-fsel:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 2px var(--gold-cream)}
.mktg-root .filters.objbrand{margin:14px 0 6px}
.mktg-root .filters.objbrand .lb{font-size:12px;color:var(--soft);margin-right:2px}
.mktg-root .objbrand-note{font-size:11.5px;color:var(--soft);margin:0 0 14px;line-height:1.5}
.mktg-root .kdelta{font-size:11px;font-weight:700;padding:1px 6px;border-radius:999px;margin-left:2px;white-space:nowrap}
.mktg-root .kdelta.up{background:#E8F3ED;color:#2E7D5B}
.mktg-root .kdelta.down{background:#FBEAE7;color:#C0392B}
.mktg-root .kdelta.flat{background:#ECECEC;color:#6b6b6b}
.mktg-root .ovf-note{background:var(--gold-pale);border:1px solid var(--gold-cream);border-radius:10px;padding:9px 13px;font-size:12.5px;color:var(--gold-ink);margin:0 0 14px}
.mktg-root .ovf-hint{font-size:11.5px;color:var(--soft);line-height:1.55;margin:-4px 0 16px;background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:9px 13px}
.mktg-root .ovf-updated{font-size:11.5px;color:var(--soft);text-align:right;margin-top:14px;font-style:italic}
@media(max-width:860px){
  .mktg-root .filters.ovf{gap:7px}
  .mktg-root .filters.ovf .spacer{flex-basis:100%;height:0}
  .mktg-root .mkt-fsel{flex:1;min-width:0}
  .mktg-root .ovf-updated{text-align:left}
}

/* ── segmented ── */
.mktg-root .seg{display:inline-flex;background:var(--gold-cream);border-radius:10px;padding:3px;gap:2px}
.mktg-root .seg button{border:none;background:transparent;padding:7px 15px;border-radius:8px;font-size:12.5px;font-weight:700;color:var(--gold-ink);cursor:pointer}
.mktg-root .seg button.active{background:var(--navy);color:#fff}

/* ── stat cards ── */
.mktg-root .stat-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(178px,1fr));margin-bottom:16px}
.mktg-root .stat{background:#fff;border:1px solid var(--line);border-left-width:5px;border-radius:12px;padding:13px 15px}
.mktg-root .stat .lab{font-size:10px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--soft)}
.mktg-root .stat .val{font-size:22px;font-weight:900;color:var(--navy);margin-top:5px;line-height:1.1}
.mktg-root .stat .val small{font-size:13px;color:var(--soft);font-weight:700}
.mktg-root .stat .meta{font-size:11px;color:var(--soft);margin-top:4px}
.mktg-root .stat .up{color:var(--green);font-weight:700}
.mktg-root .b-blue{border-left-color:var(--blue)} .mktg-root .b-gold{border-left-color:var(--gold)}
.mktg-root .b-green{border-left-color:var(--green)} .mktg-root .b-amber{border-left-color:var(--amber)}
.mktg-root .b-greend{border-left-color:var(--greend)} .mktg-root .b-navy{border-left-color:var(--navy)}

/* ── panel ── */
.mktg-root .panel{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px 18px;margin-bottom:16px}
.mktg-root .panel h3{font-size:14px;color:var(--navy);margin-bottom:13px;display:flex;align-items:center;gap:8px}
.mktg-root .panel h3 .tag{font-size:10.5px;color:var(--gold-ink);background:var(--gold-cream);padding:2px 9px;border-radius:999px;font-weight:700}

/* ── progress bars ── */
.mktg-root .bar-row{margin-bottom:13px}
.mktg-root .bar-row:last-child{margin-bottom:0}
.mktg-root .bar-top{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:5px;gap:10px}
.mktg-root .bar-top .nm{font-weight:600;font-size:13px;color:var(--text)}
.mktg-root .bar-top .nums{color:var(--soft);font-size:11.5px;white-space:nowrap}
.mktg-root .bar-top .nums b{color:var(--gold-ink);font-weight:700}
.mktg-root .bar{height:9px;background:var(--gold-cream);border-radius:99px;overflow:hidden}
.mktg-root .bar>span{display:block;height:100%;background:linear-gradient(90deg,var(--gold-light),var(--gold-ink));border-radius:99px}

/* ── tables ── */
.mktg-root .tbl-wrap{overflow-x:auto}
.mktg-root .tbl{width:100%;border-collapse:collapse;font-size:13px;min-width:340px}
.mktg-root .tbl th{text-align:left;font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:var(--soft);font-weight:700;padding:8px 10px;border-bottom:1px solid var(--line);white-space:nowrap}
.mktg-root .tbl td{padding:9px 10px;border-bottom:1px solid var(--line);color:var(--text)}
.mktg-root .tbl tr:last-child td{border-bottom:none}
.mktg-root .tbl .num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.mktg-root .tbl .strong{font-weight:700;color:var(--navy)}
.mktg-root .tbl .total td{background:var(--gold-pale);font-weight:700;color:var(--navy)}

/* ── editable 12-month grid ── */
.mktg-root .grid th.month{text-align:right}
.mktg-root .grid td.lab,.mktg-root .grid th.firstcol{position:sticky;left:0;background:#fff;z-index:2;font-weight:600;color:var(--navy);min-width:140px}
.mktg-root .grid th.firstcol{z-index:3}
.mktg-root .grid td.edit{text-align:right;font-variant-numeric:tabular-nums;background:#fffdf7;border:1px solid #efe6cf;border-radius:6px;cursor:text;min-width:108px}
.mktg-root .grid td.edit:focus{outline:2px solid var(--gold);background:#fff}
.mktg-root .grid td.tot{text-align:right;font-weight:700;color:var(--navy);background:var(--gold-pale);white-space:nowrap}
.mktg-root .grid td.tbcell{text-align:right;font-variant-numeric:tabular-nums;color:var(--soft);min-width:108px;background:#fbfbf9}
.mktg-root .mkt-fill{display:inline-block;margin-left:6px;font-size:10.5px;font-weight:700;color:var(--gold-ink);background:var(--gold-pale);border:1px solid var(--gold-cream);border-radius:7px;padding:2px 7px;cursor:pointer;white-space:nowrap}
.mktg-root .mkt-fill:hover{background:var(--gold-cream)}
.mktg-root .mkt-auto{display:inline-block;margin-left:6px;font-size:9.5px;font-weight:700;color:var(--blue);background:#EAF0F9;border-radius:99px;padding:1px 7px;letter-spacing:.03em}
.mktg-root .goal-banner{background:linear-gradient(90deg,var(--gold-cream),var(--gold-pale));border:1px solid var(--gold-light);border-left:5px solid var(--gold);border-radius:12px;padding:12px 16px;font-size:13.5px;color:var(--gold-ink);margin-bottom:16px}
.mktg-root .goal-banner b{color:var(--navy)}
.mktg-root .unit-note{font-size:11px;color:var(--soft);margin-bottom:9px}

/* ── compare cards (thực đạt) ── */
.mktg-root .cmp-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(218px,1fr));margin-bottom:16px}
.mktg-root .cmp{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 15px}
.mktg-root .cmp .t{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--soft)}
.mktg-root .cmp .pct{font-size:27px;font-weight:900;line-height:1;margin:8px 0}
.mktg-root .cmp .pct.good{color:var(--green)} .mktg-root .cmp .pct.mid{color:var(--amber)} .mktg-root .cmp .pct.low{color:var(--blue)}
.mktg-root .cmp .kvline{font-size:12px;color:var(--soft);display:flex;justify-content:space-between;gap:8px}
.mktg-root .cmp .kvline b{color:var(--navy);font-weight:700}
.mktg-root .cmp .pbar{height:8px;background:var(--line);border-radius:99px;overflow:hidden;margin-top:9px}
.mktg-root .cmp .pbar>span{display:block;height:100%;border-radius:99px}
.mktg-root .cmp .pbar .good{background:var(--green)} .mktg-root .cmp .pbar .mid{background:var(--amber)} .mktg-root .cmp .pbar .low{background:var(--blue)}

/* ── budget allocation ── */
.mktg-root .alloc-row{border-bottom:1px dashed var(--line);padding:11px 0}
.mktg-root .alloc-row:last-child{border-bottom:none}
.mktg-root .alloc-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px;flex-wrap:wrap}
.mktg-root .alloc-top .nm{font-weight:600;color:var(--navy);font-size:13.5px}
.mktg-root .alloc-top .right{display:flex;align-items:center;gap:7px}
.mktg-root .alloc-top .ev{background:#fffdf7;border:1px solid #efe6cf;border-radius:6px;padding:3px 8px;font-size:13px;font-weight:700;color:var(--gold-ink);min-width:42px;text-align:right;cursor:text}
.mktg-root .alloc-top .ev:focus{outline:2px solid var(--gold);background:#fff}
.mktg-root .alloc-top .pcsign{color:var(--soft);font-size:12px}
.mktg-root .alloc-top .mn{font-weight:700;color:var(--navy);font-size:13.5px;white-space:nowrap;font-variant-numeric:tabular-nums;min-width:140px;text-align:right}
.mktg-root .alloc-bar{height:11px;background:var(--gold-cream);border-radius:99px;overflow:hidden}
.mktg-root .alloc-bar>span{display:block;height:100%;background:linear-gradient(90deg,var(--gold-light),var(--gold-ink));border-radius:99px}
.mktg-root .alloc-foot{display:flex;justify-content:space-between;font-size:13.5px;font-weight:700;color:var(--navy);margin-top:13px;padding-top:12px;border-top:1px solid var(--line)}
.mktg-root .alloc-dc{font-size:11.5px;color:var(--soft);margin-top:7px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.mktg-root .alloc-dc .ev{background:#fff;border:1px solid #efe6cf;border-radius:6px;padding:2px 8px;font-weight:700;color:var(--gold-ink);cursor:text;font-variant-numeric:tabular-nums}
.mktg-root .alloc-dc .ev:focus{outline:2px solid var(--gold)}
.mktg-root .setrow{display:flex;align-items:center;gap:7px;flex-wrap:wrap;background:var(--gold-pale);border:1px solid var(--gold-cream);border-radius:10px;padding:11px 14px;margin-bottom:14px;font-size:13px;color:var(--text);line-height:2}
.mktg-root .setrow .ev{background:#fff;border:1px solid #efe6cf;border-radius:6px;padding:3px 8px;font-weight:700;color:var(--gold-ink);cursor:text}
.mktg-root .setrow b{color:var(--navy)}
.mktg-root .viewbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px}
.mktg-root .viewbar .lb{font-size:12px;color:var(--soft)}

/* ── 2-col layout ── */
.mktg-root .cols{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media(max-width:980px){.mktg-root .cols{grid-template-columns:1fr}}

/* ── status / pill ── */
.mktg-root .st{font-size:10.5px;font-weight:700;padding:3px 9px;border-radius:999px;display:inline-block}
.mktg-root .st.done{background:#E8F3ED;color:var(--green)}
.mktg-root .st.doing{background:#FBF1DC;color:var(--amber)}
.mktg-root .st.idea{background:#EAF0F9;color:var(--blue)}
.mktg-root .pill{font-size:10.5px;color:var(--soft);background:var(--bg);border:1px solid var(--line);padding:2px 8px;border-radius:999px}

/* ── buttons ── */
.mktg-root .btn-gold{background:linear-gradient(180deg,var(--gold),var(--gold-ink));color:#fff;border:none;padding:8px 15px;border-radius:9px;font-size:12.5px;font-weight:700;cursor:pointer}
.mktg-root .btn-out{background:#fff;border:1px solid var(--line);color:var(--text);padding:8px 14px;border-radius:9px;font-size:12.5px;font-weight:600;cursor:pointer}

/* ── concept cards ── */
.mktg-root .cc-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(218px,1fr))}
.mktg-root .cc{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;display:flex;flex-direction:column;cursor:pointer;transition:transform .12s,box-shadow .12s}
.mktg-root .cc:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(13,27,51,.12)}
.mktg-root .cc .img{height:118px;position:relative;background:linear-gradient(135deg,#1c3052,var(--navy));background-size:cover;background-position:center}
.mktg-root .cc .img.v2{background:linear-gradient(135deg,var(--gold),var(--amber))}
.mktg-root .cc .img .mon{position:absolute;top:10px;left:10px;background:rgba(255,255,255,.93);color:var(--navy);font-size:10.5px;font-weight:700;padding:3px 9px;border-radius:999px}
.mktg-root .cc .img .stt{position:absolute;top:10px;right:10px}
.mktg-root .cc .body{padding:12px 14px;flex:1;display:flex;flex-direction:column;gap:7px}
.mktg-root .cc .nm{font-size:14.5px;font-weight:700;color:var(--navy);line-height:1.25}
.mktg-root .cc .row{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.mktg-root .cc .prep{font-size:11px;color:var(--soft)}
.mktg-root .cc .cc-exp{margin-top:auto;display:block;width:100%;box-sizing:border-box;border:1px solid var(--gold);color:var(--gold-ink);background:var(--gold-pale);font-size:11.5px;font-weight:700;padding:8px 10px;border-radius:9px;text-align:center;cursor:pointer;white-space:nowrap;line-height:1.2;transition:background .12s,color .12s}
.mktg-root .cc .cc-exp:hover{background:var(--gold);color:#fff}

/* ── concept detail ── */
.mktg-root .back{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:var(--gold-ink);font-weight:700;cursor:pointer;margin-bottom:12px}
.mktg-root .cd-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;flex-wrap:wrap}
.mktg-root .cd-actions{display:flex;gap:8px;flex-wrap:wrap}
.mktg-root .sec{margin-top:20px}
.mktg-root .sec .st-title{font-size:12.5px;font-weight:700;color:var(--navy);text-transform:uppercase;letter-spacing:.06em;margin-bottom:11px;display:flex;align-items:center;gap:9px}
.mktg-root .sec .st-title::before{content:"";width:5px;height:15px;background:var(--gold);border-radius:2px;display:inline-block}
.mktg-root .mood{margin-bottom:15px}
.mktg-root .mood .mlab{font-size:13px;font-weight:600;color:var(--text)}
.mktg-root .mood .msub{font-size:11px;color:var(--soft);margin:2px 0 8px}
.mktg-root .thumbs{display:flex;gap:8px;flex-wrap:wrap}
.mktg-root .thumb{width:94px;height:116px;border-radius:9px;flex:none;border:1px solid var(--line);background:linear-gradient(135deg,#2a3f63,#0D1B33);background-size:cover;background-position:center;position:relative;overflow:hidden}
.mktg-root .thumb.f{background:linear-gradient(160deg,#46583f,#1d2a1d)}
.mktg-root .thumb.k{background:linear-gradient(160deg,#aebccd,#74879d)}
.mktg-root .thumb.m{background:linear-gradient(160deg,#ece7da,#c7c0ad)}
.mktg-root .thumb .del{position:absolute;top:3px;right:3px;width:20px;height:20px;border-radius:50%;border:none;background:rgba(13,27,51,.72);color:#fff;font-size:12px;cursor:pointer;display:none;align-items:center;justify-content:center;line-height:1}
.mktg-root .thumb:hover .del{display:flex}
.mktg-root .thumb-add{width:94px;height:116px;border-radius:9px;flex:none;border:1.5px dashed var(--gold);background:var(--gold-pale);color:var(--gold-ink);font-size:12px;font-weight:700;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px}
.mktg-root .kv{display:grid;grid-template-columns:1fr 1fr;gap:2px 22px}
.mktg-root .kv .r{display:flex;justify-content:space-between;gap:12px;font-size:13px;border-bottom:1px dashed var(--line);padding:7px 0}
.mktg-root .kv .r .k{color:var(--soft)} .mktg-root .kv .r .v{font-weight:600;color:var(--navy);text-align:right}
.mktg-root .tl{position:relative;padding-left:8px}
.mktg-root .tl::before{content:"";position:absolute;left:5px;top:5px;bottom:6px;width:2px;background:var(--gold-cream)}
.mktg-root .tl-item{position:relative;padding:0 0 13px 20px}
.mktg-root .tl-item:last-child{padding-bottom:0}
.mktg-root .tl-item::before{content:"";position:absolute;left:-1px;top:4px;width:11px;height:11px;border-radius:50%;background:var(--gold);border:2px solid #fff;box-shadow:0 0 0 1.5px var(--gold-light)}
.mktg-root .tl-item .tm{font-weight:700;color:var(--navy);font-size:13px;display:inline-block;min-width:54px}
.mktg-root .tl-item .ds{font-size:13px;color:var(--text)}
.mktg-root .models{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.mktg-root .mcard{display:flex;gap:11px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:11px;background:#fff}
.mktg-root .mcard .pic{width:50px;height:50px;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--gold-ink));flex:none}
.mktg-root .mcard .nm{font-weight:700;color:var(--navy);font-size:14px}
.mktg-root .mcard .rl{font-size:11.5px;color:var(--soft);margin:1px 0 3px}
.mktg-root .mcard .lk{font-size:11.5px;color:var(--gold-ink);font-weight:700;cursor:pointer}
.mktg-root .prep-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.mktg-root .pchk{display:flex;align-items:center;gap:9px;font-size:13px;border:1px solid var(--line);border-radius:9px;padding:9px 11px;background:#fff;cursor:pointer}
.mktg-root .pchk .bx{width:17px;height:17px;border-radius:5px;border:1.5px solid var(--gold);flex:none;display:flex;align-items:center;justify-content:center;color:var(--green);font-size:11px;font-weight:700;background:var(--gold-pale)}

/* ── empty state ── */
.mktg-root .mkt-empty{text-align:center;color:var(--soft);font-size:13px;padding:34px 16px;border:1.5px dashed var(--line);border-radius:12px;background:#fff}
.mktg-root .mkt-deny{text-align:center;color:var(--soft);font-size:13.5px;padding:40px 16px}
.mktg-root .mkt-moneyhide{font-size:11.5px;color:var(--soft);font-style:italic}

/* ══ TAB KẾ HOẠCH TRAFFIC ══ */
.mktg-root .b-red{border-left-color:var(--red)}
.mktg-root .kpi-note{font-size:12px;color:var(--gold-ink);font-weight:600;margin:16px 0 10px;display:flex;align-items:center;gap:7px}
.mktg-root .kpi-note::before{content:"";width:5px;height:14px;background:var(--gold);border-radius:2px}
.mktg-root .funnel{display:flex;flex-direction:column;align-items:center}
.mktg-root .fn-stage{width:100%;color:#fff;border-radius:11px;padding:12px 18px;display:flex;align-items:center;justify-content:space-between;gap:12px;box-shadow:0 4px 12px rgba(13,27,51,.13);min-width:0}
.mktg-root .fn-stage .lab{font-size:12.5px;font-weight:700;opacity:1;color:#fff;text-shadow:0 1px 2.5px rgba(0,0,0,.45)}
.mktg-root .fn-stage .num{font-size:20px;font-weight:900;white-space:nowrap;color:#fff;text-shadow:0 1px 2.5px rgba(0,0,0,.4)}
.mktg-root .fn-gap{display:flex;align-items:center;gap:6px;padding:7px 0;color:var(--soft);font-size:11.5px;flex-wrap:wrap}
.mktg-root .fn-gap .ev{background:#fffdf7;border:1px solid #efe6cf;border-radius:6px;padding:2px 7px;font-weight:700;color:var(--gold-ink);cursor:text;font-size:12px}
.mktg-root .fn-gap .ev:focus{outline:2px solid var(--gold);background:#fff}
.mktg-root .fnsel{margin-bottom:12px;font-size:12.5px;color:var(--soft)}
.mktg-root .fnsel b{color:var(--navy)}
.mktg-root .linkline{background:var(--gold-pale);border:1px dashed var(--gold-light);border-radius:9px;padding:9px 13px;font-size:12px;color:var(--text);margin-top:13px}
.mktg-root .linkline b{color:var(--gold-ink)}
.mktg-root .legend2{font-size:11.5px;color:var(--soft);margin-bottom:10px;display:flex;gap:14px;flex-wrap:wrap}
.mktg-root .legend2 i{display:inline-block;width:11px;height:11px;border-radius:3px;margin-right:5px;vertical-align:middle}
.mktg-root .grid td.ro{text-align:right;font-variant-numeric:tabular-nums;background:#f1ece1;color:#6f6857;white-space:nowrap;min-width:88px}
.mktg-root .grid td.auto{text-align:right;font-variant-numeric:tabular-nums;background:#eef1f6;color:#1f3350;white-space:nowrap;min-width:78px;font-weight:600}
.mktg-root .tbl tr.grp td{background:var(--navy);color:#fff;font-weight:700;font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;padding:7px 10px}
.mktg-root .tbl tr.grp.bud td{background:#5a5345}
.mktg-root .grid tr[data-row="khach"] td.lab{color:var(--gold-ink)}
.mktg-root .select.sm{padding:5px 9px;font-size:12px;border-radius:7px;max-width:230px}
.mktg-root td.kn{min-width:160px;color:var(--text);font-weight:600}
.mktg-root .tr-per{display:inline-block;min-width:110px;border-bottom:1px dashed var(--line);cursor:text}
.mktg-root .tr-per:focus{outline:2px solid var(--gold)}
.mktg-root .xbtn{border:none;background:#FCEDEA;color:var(--red);width:26px;height:26px;border-radius:7px;cursor:pointer;font-weight:700;font-size:15px;line-height:1}
.mktg-root .xbtn:hover{background:#f6d6d2}
.mktg-root td.act{text-align:center;width:40px}
.mktg-root .btn-add{background:#fff;border:1px dashed var(--gold);color:var(--gold-ink);padding:8px 15px;border-radius:9px;font-size:12.5px;font-weight:700;cursor:pointer}
.mktg-root .btn-add:hover{background:var(--gold-pale)}
.mktg-root .alloc-tbl td.edit{background:#fffdf7;border:1px solid #efe6cf;border-radius:6px;cursor:text;text-align:right;font-variant-numeric:tabular-nums;min-width:62px;font-weight:600;color:var(--gold-ink)}
.mktg-root .alloc-tbl td.edit:focus{outline:2px solid var(--gold);background:#fff}
.mktg-root .alloc-badge{display:flex;gap:8px;flex-wrap:wrap;margin-top:13px}
.mktg-root .bdg{font-size:11.5px;font-weight:700;padding:5px 11px;border-radius:999px}
.mktg-root .bdg.ok{background:#E8F3ED;color:var(--green)}
.mktg-root .bdg.off{background:#FCEDEA;color:var(--red)}
.mktg-root .cmp .pct.g{color:var(--green)} .mktg-root .cmp .pct.m{color:var(--amber)} .mktg-root .cmp .pct.l{color:var(--blue)}
.mktg-root .cmp .pbar.g>span{background:var(--green)} .mktg-root .cmp .pbar.m>span{background:var(--amber)} .mktg-root .cmp .pbar.l>span{background:var(--blue)}
.mktg-root .cmp .kvline b.td{background:#fffdf7;border:1px solid #efe6cf;border-radius:5px;padding:1px 7px;color:var(--gold-ink);cursor:text}
.mktg-root .cmp .kvline b.td:focus{outline:2px solid var(--gold)}

/* ── form overlay (thêm/sửa concept) ── */
.mktg-ov{position:fixed;inset:0;background:rgba(13,27,51,.55);z-index:9000;display:none;align-items:flex-start;justify-content:center;padding:28px 14px;overflow:auto}
.mktg-ov.open{display:flex}
.mktg-ov .box{background:#fff;border-radius:16px;width:560px;max-width:96vw;padding:0;overflow:hidden;box-shadow:0 24px 60px rgba(13,27,51,.32);font-family:'Roboto',sans-serif}
.mktg-ov .hd{background:var(--navy,#0D1B33);color:#fff;padding:14px 18px;font-size:15px;font-weight:700;display:flex;align-items:center;justify-content:space-between}
.mktg-ov .hd .x{background:none;border:none;color:#cfc6b5;font-size:20px;cursor:pointer;line-height:1}
.mktg-ov .bd{padding:16px 18px;max-height:74vh;overflow:auto}
.mktg-ov .fld{margin-bottom:13px}
.mktg-ov .fld label{display:block;font-size:11.5px;font-weight:700;color:#8A8170;text-transform:uppercase;letter-spacing:.05em;margin-bottom:5px}
.mktg-ov .fld input,.mktg-ov .fld select,.mktg-ov .fld textarea{width:100%;border:1px solid #ECE5D8;border-radius:9px;padding:9px 11px;font-size:13.5px;font-family:'Roboto',sans-serif;color:#26221B;background:#fff}
.mktg-ov .fld input:focus,.mktg-ov .fld select:focus,.mktg-ov .fld textarea:focus{outline:2px solid #E1A146}
.mktg-ov .grid2{display:grid;grid-template-columns:1fr 1fr;gap:11px}
.mktg-ov .ft{display:flex;justify-content:flex-end;gap:9px;padding:13px 18px;border-top:1px solid #ECE5D8;background:#FBFAF7}
@media(max-width:600px){.mktg-ov .grid2{grid-template-columns:1fr}}

/* ── responsive (mobile ~380px, theo .phone overrides của mockup) ── */
@media(max-width:860px){
  .mktg-root .stat-grid{grid-template-columns:1fr;gap:10px}
  .mktg-root .cmp-grid{grid-template-columns:1fr 1fr}
  .mktg-root .cc-grid{grid-template-columns:1fr}
  .mktg-root .kv,.mktg-root .models,.mktg-root .prep-grid{grid-template-columns:1fr}
  .mktg-root .alloc-top .mn{min-width:0}
  .mktg-root .page-head .h1{font-size:19px}
  .mktg-root .fn-stage{width:100%!important}
}

/* ── nút xóa năm (chỉ CEO, năm chưa có số liệu) ── */
.mktg-root .mkt-delyear{display:inline-block;margin-left:6px;font-size:11px;font-weight:700;color:var(--soft);cursor:pointer;opacity:.75;line-height:1}
.mktg-root .mkt-delyear:hover{color:var(--red);opacity:1}
.mktg-root .chip.active .mkt-delyear{color:rgba(255,255,255,.72)}
.mktg-root .chip.active .mkt-delyear:hover{color:#fff}

/* ════════════════════════════════════════════════════════════
   FORM BÀN PHÍM SỐ — Mục tiêu 12 tháng (bám mockup-marketing-muctieu-form.html)
   ════════════════════════════════════════════════════════════ */
/* ô bấm trong bảng 12 tháng */
.mktg-root .grid td.npcell{cursor:pointer;color:var(--navy);font-weight:700;background:var(--gold-pale);text-align:right;white-space:nowrap;transition:background .12s}
.mktg-root .grid td.npcell:hover{background:#FBE8C7;outline:2px solid var(--gold-light);outline-offset:-2px}
.mktg-root .grid td.npcell:active{background:var(--gold-cream)}
/* overlay — TỰ cấp biến brand (gắn body, ngoài .mktg-root) */
.mkt-np-ov{
  --gold:#E1A146;--gold-light:#EDB96A;--gold-cream:#FBF1DC;--gold-ink:#9C6A16;--gold-pale:#FEF9EE;
  --navy:#0D1B33;--bg:#F6F2EA;--text:#26221B;--soft:#8A8170;--line:#ECE5D8;--red:#C0392B;--blue:#2F5FA8;--green:#2E7D5B;
  position:fixed;inset:0;background:rgba(13,27,51,.5);z-index:9100;display:none;align-items:center;justify-content:center;padding:14px;font-family:'Roboto',-apple-system,sans-serif}
.mkt-np-ov.show{display:flex}
.mkt-np-modal{background:#fff;border-radius:20px;padding:18px 18px 16px;width:430px;max-width:97vw;box-shadow:0 24px 60px rgba(13,27,51,.4);max-height:96vh;overflow-y:auto}
.mkt-np-ov .np-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:13px}
.mkt-np-ov .np-head .ttl{font-size:15px;font-weight:900;color:var(--navy)}
.mkt-np-ov .np-head .x{border:none;background:var(--bg);width:34px;height:34px;border-radius:50%;font-size:17px;cursor:pointer;color:var(--soft)}
.mkt-np-ov .crit-tabs{display:flex;gap:7px;margin-bottom:12px}
.mkt-np-ov .crit{flex:1;border:1px solid var(--line);background:#fff;border-radius:10px;padding:10px;font-size:13px;font-weight:700;color:var(--soft);cursor:pointer;text-align:center}
.mkt-np-ov .crit.active{background:var(--navy);color:#fff;border-color:var(--navy)}
.mkt-np-ov .mnav{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:11px}
.mkt-np-ov .mnav button{border:1px solid var(--line);background:#fff;border-radius:10px;width:44px;height:44px;font-size:19px;font-weight:800;cursor:pointer;color:var(--navy)}
.mkt-np-ov .mnav button:active{background:var(--gold-pale)}
.mkt-np-ov .mnav .mlabel{font-size:17px;font-weight:900;color:var(--navy)}
.mkt-np-ov .npval{font-size:30px;font-weight:900;color:var(--navy);text-align:right;padding:15px 16px;background:var(--bg);border:1.5px solid var(--gold-light);border-radius:13px;min-height:64px;word-break:break-all}
.mkt-np-ov .npval .u{font-size:16px;color:var(--soft);font-weight:700;margin-left:6px}
.mkt-np-ov .quick{display:flex;gap:7px;flex-wrap:wrap;margin:11px 0}
.mkt-np-ov .qbtn{border:1px solid var(--gold-light);background:var(--gold-pale);color:var(--gold-ink);border-radius:999px;padding:9px 14px;font-size:13px;font-weight:700;cursor:pointer}
.mkt-np-ov .qbtn:active{background:var(--gold-light);color:#fff}
.mkt-np-ov .qbtn.clr{background:#fff;color:var(--soft);border-color:var(--line)}
.mkt-np-ov .np-keys{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:4px}
.mkt-np-ov .np-keys button{padding:17px 0;font-size:21px;font-weight:800;border:1px solid var(--line);background:#fff;border-radius:12px;cursor:pointer;color:var(--navy)}
.mkt-np-ov .np-keys button:active{background:var(--gold-pale)}
.mkt-np-ov .np-keys button.util{font-size:17px;color:var(--gold-ink);background:var(--gold-cream)}
.mkt-np-ov .applyall{display:flex;align-items:center;gap:9px;margin-top:12px;font-size:13px;color:var(--text);cursor:pointer;user-select:none}
.mkt-np-ov .applyall input{width:18px;height:18px;accent-color:var(--gold)}
.mkt-np-ov .impact{font-size:12.5px;color:var(--text);margin-top:12px;background:#F4FAF6;border:1px solid #cde9da;border-radius:10px;padding:10px 12px;line-height:1.5}
.mkt-np-ov .impact b{color:var(--green)}
.mkt-np-ov .np-foot{display:flex;gap:9px;margin-top:14px}
.mkt-np-ov .nbtn{flex:1;border:none;border-radius:11px;padding:13px;font-size:13.5px;font-weight:800;cursor:pointer}
.mkt-np-ov .nbtn.ghost{background:#f1ece2;color:var(--soft);flex:none;padding:13px 16px}
.mkt-np-ov .nbtn.save{background:var(--gold-ink);color:#fff}
.mkt-np-ov .nbtn.next{background:linear-gradient(135deg,var(--gold),var(--gold-ink));color:#fff}
@media(max-width:560px){
  .mkt-np-ov{align-items:flex-end;padding:0}
  .mkt-np-modal{border-radius:18px 18px 0 0;width:100%;max-width:100%;align-self:flex-end;padding:16px 14px calc(16px + env(safe-area-inset-bottom))}
  .mkt-np-ov .npval{font-size:26px}
  .mkt-np-ov .np-keys button{padding:15px 0}
}

/* ════════════════════════════════════════════════════════════
   TAB — KẾ HOẠCH & TRIỂN KHAI NỘI DUNG (bám mockup-marketing-noidung.html)
   ════════════════════════════════════════════════════════════ */
.mktg-root .note{font-size:12px;color:var(--soft);margin-bottom:13px}
/* toolbar + dải nền tảng */
.mktg-root .toolbar{display:flex;flex-direction:column;gap:11px;margin:16px 0 14px}
.mktg-root .tb-group{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.mktg-root .plat-bar{display:flex;gap:8px;flex-wrap:wrap}
.mktg-root .plat-btn{display:inline-flex;align-items:center;gap:8px;padding:6px 14px 6px 6px;border-radius:999px;border:1px solid var(--line);background:#fff;font-size:13px;font-weight:600;color:var(--text);cursor:pointer}
.mktg-root .plat-btn:hover{border-color:var(--gold-light)}
.mktg-root .plat-btn.active{border-color:var(--navy);box-shadow:0 0 0 2px rgba(13,27,51,.12)}
.mktg-root .pdot{width:26px;height:26px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-weight:900;font-size:13px;flex:none}
.mktg-root .pdot.all{background:linear-gradient(135deg,var(--gold),var(--gold-ink))}
.mktg-root .pdot.web{background:#fff;border:1px solid var(--gold-light)}
/* thanh vai trò */
.mktg-root .rolebar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:var(--gold-pale);border:1px solid var(--gold-cream);border-radius:10px;padding:9px 13px;margin-bottom:14px}
.mktg-root .rolebar .lb{font-size:12.5px;color:var(--gold-ink);font-weight:600}
/* sub-tab */
.mktg-root .subtabs{display:flex;gap:4px;margin:0 0 16px;border-bottom:1px solid var(--line);flex-wrap:wrap}
.mktg-root .subtabs button{border:none;background:transparent;padding:10px 16px;font-size:13.5px;font-weight:700;color:var(--soft);cursor:pointer;border-bottom:3px solid transparent;margin-bottom:-1px}
.mktg-root .subtabs button:hover{color:var(--navy)}
.mktg-root .subtabs button.active{color:var(--navy);border-bottom-color:var(--gold)}
.mktg-root .sub-view{display:none}.mktg-root .sub-view.active{display:block}
/* tiến độ */
.mktg-root .prog-wrap{margin-top:4px}
.mktg-root .prog-top{display:flex;justify-content:space-between;align-items:baseline;gap:10px;font-size:12.5px;color:var(--text);margin-bottom:6px}
.mktg-root .prog-top b{font-size:18px;color:var(--navy);white-space:nowrap}
.mktg-root .prog{height:14px;background:var(--gold-cream);border-radius:999px;overflow:hidden}
.mktg-root .prog-fill{height:100%;background:linear-gradient(90deg,var(--gold),var(--gold-ink));border-radius:999px;transition:width .35s}
.mktg-root .prog-cap{font-size:11px;color:var(--soft);margin-top:6px}
/* cảnh báo */
.mktg-root .warn-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;border-radius:10px;padding:10px 14px;font-size:12.5px;font-weight:600;margin-bottom:14px}
.mktg-root .warn-bar.bad{background:#FCEDEA;border:1px solid #f3c6c2;color:#9b2f22}
.mktg-root .warn-bar.ok{background:#E8F3ED;border:1px solid #cfe8da;color:#216046}
.mktg-root .warn-bar .wtag{background:#fff;border-radius:999px;padding:2px 9px;font-weight:700}
.mktg-root .warn{color:var(--red);font-weight:700;cursor:help;margin-left:4px}
/* bảng Plan — màu 4 tuyến */
.mktg-root .tbl tr.grp[data-tuyen="NB"] td{background:#2F5FA8}
.mktg-root .tbl tr.grp[data-tuyen="TH"] td{background:#B9791C}
.mktg-root .tbl tr.grp[data-tuyen="TT"] td{background:#2E7D5B}
.mktg-root .tbl tr.grp[data-tuyen="CD"] td{background:#C0392B}
.mktg-root .addmini{margin-left:8px;border:none;background:rgba(255,255,255,.22);color:#fff;font-size:10.5px;font-weight:700;padding:3px 10px;border-radius:999px;cursor:pointer}
.mktg-root .addmini:hover{background:rgba(255,255,255,.34)}
.mktg-root td.lo{font-weight:600;color:var(--navy);min-width:150px}
.mktg-root td.fm{color:var(--soft);min-width:170px;font-size:12px}
.mktg-root .num.edit{background:#fffdf7;border:1px solid #efe6cf;border-radius:6px;cursor:text;text-align:right;font-weight:700;color:var(--gold-ink);min-width:54px}
.mktg-root .num.edit:focus{outline:2px solid var(--gold);background:#fff}
.mktg-root .num.slw{color:#1f3350;background:#eef1f6;text-align:right;font-weight:600;min-width:54px}
.mktg-root td.act{text-align:center;width:40px}
/* badge Dạng (BGC/EGC/UGC) */
.mktg-root .dn{font-size:10px;font-weight:700;padding:2px 7px;border-radius:6px;white-space:nowrap}
.mktg-root .dn.bgc{background:#E7EEF7;color:var(--blue)}.mktg-root .dn.egc{background:#FBF1DC;color:var(--gold-ink)}.mktg-root .dn.ugc{background:#E8F3ED;color:var(--green)}
/* trạng thái bài (3 mức) */
.mktg-root .st.dang{background:#E8F3ED;color:#2E7D5B}.mktg-root .st.cho{background:#FBF1DC;color:#9C6A16}.mktg-root .st.kehoach{background:#F0ECE3;color:#8A8170}
/* lịch đăng bài */
.mktg-root .sched-tbl{min-width:820px}
.mktg-root td.hook{color:var(--text);min-width:200px;font-size:12.5px;font-weight:600}
.mktg-root td.hook[contenteditable]:focus{outline:2px solid var(--gold);border-radius:6px}
.mktg-root .kdot{width:20px;height:20px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-weight:900;font-size:10px;vertical-align:middle;margin-right:2px}
.mktg-root .exp{border:none;background:transparent;color:var(--soft);font-size:13px;cursor:pointer;width:22px;padding:2px}
.mktg-root .exp:hover{color:var(--gold-ink)}
.mktg-root tr.detail{display:none}
.mktg-root tr.detail.open{display:table-row}
.mktg-root tr.detail>td{background:#FBF7EF;border-bottom:2px solid var(--gold-cream)}
.mktg-root .dt-grid{display:flex;flex-direction:column;gap:9px;padding:6px 2px}
.mktg-root .dt-lab{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--soft)}
.mktg-root .dt-cap{background:#fff;border:1px solid #efe6cf;border-radius:8px;padding:9px 11px;font-size:12.5px;min-height:50px;color:var(--text);line-height:1.55}
.mktg-root .dt-cap:focus,.mktg-root .dt-link:focus,.mktg-root .dt-note:focus{outline:2px solid var(--gold)}
.mktg-root .dt-row{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}
.mktg-root .dt-row .dt-lab{min-width:62px;padding-top:5px}
.mktg-root .dt-link,.mktg-root .dt-note{background:#fff;border:1px solid #efe6cf;border-radius:6px;padding:5px 9px;font-size:12px;flex:1;min-width:170px}
.mktg-root input.dt-link{font-family:'Roboto',sans-serif;color:var(--text)}
.mktg-root .dt-link{color:var(--blue)}.mktg-root .dt-note{color:var(--text)}
.mktg-root .dt-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.mktg-root .dt-check{font-size:12.5px;color:var(--text);display:flex;align-items:center;gap:7px;font-weight:600}
.mktg-root .lk{color:var(--blue);font-weight:600;font-size:12.5px;text-decoration:none}
.mktg-root .lk:hover{text-decoration:underline}
.mktg-root td.lk-cell{white-space:nowrap}
/* header nhận diện kênh */
.mktg-root .kenh-head{margin-bottom:13px}
.mktg-root .kenh-card{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--line);border-left-width:6px;border-radius:12px;padding:12px 15px}
.mktg-root .kenh-ic{width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:900;font-size:18px;flex:none}
.mktg-root .kenh-name{font-size:15px;font-weight:900;color:var(--navy)}
.mktg-root .kenh-sub{font-size:11.5px;color:var(--soft);margin-top:2px;font-weight:600}
.mktg-root .kenh-sub b{color:var(--gold-ink)}
@media(max-width:860px){
  .mktg-root .subtabs button{padding:9px 11px;font-size:12.5px}
  .mktg-root .plat-btn{font-size:12px;padding:5px 11px 5px 5px}
}

/* ════════════════════════════════════════════════════════════
   TAB — KÊNH TRUYỀN THÔNG (bám mockup-marketing-kenh.html)
   ════════════════════════════════════════════════════════════ */
.mktg-root .week-tbl{min-width:1000px}
.mktg-root .chan-tbl{min-width:640px}
.mktg-root .kn-ic{width:30px;height:30px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-weight:900;font-size:14px;flex:none}
.mktg-root .kn-ic.web{background:#fff;border:1px solid var(--gold-light)}
.mktg-root .kn-row{display:flex;align-items:center;gap:9px}
.mktg-root .kn-name{font-weight:600;color:var(--navy)}
.mktg-root .kn-badge{font-size:10px;font-weight:700;padding:2px 8px;border-radius:999px;color:#fff;white-space:nowrap}
.mktg-root tr.kn-down{background:#FCEFEC}
.mktg-root .kn-ed{display:inline-block;background:#fffdf7;border:1px solid #efe6cf;border-radius:6px;cursor:text;padding:2px 6px;min-width:60px;text-align:right;font-weight:700;color:var(--gold-ink)}
.mktg-root .kn-ed:focus{outline:2px solid var(--gold);background:#fff}
.mktg-root .kn-ed.kn-txt-ed,.mktg-root .kn-ed.kn-name-ed,.mktg-root .kn-ed.kn-link-ed{text-align:left;min-width:140px;font-weight:400;color:var(--text)}
.mktg-root .kn-ed.kn-name-ed{font-weight:600;color:var(--navy);min-width:150px}
.mktg-root td.kn-txt{min-width:170px;font-size:12px}
.mktg-root .kn-lock{display:inline-block;background:#f4f1ea;border:1px solid #e7e1d5;border-radius:6px;color:var(--soft);padding:2px 6px;min-width:60px;text-align:right;cursor:not-allowed}
.mktg-root td.kn-txt .kn-lock{text-align:left;min-width:150px}
.mktg-root .kn-date{background:#fffdf7;border:1px solid #efe6cf;border-radius:6px;padding:3px 6px;font-size:11.5px;font-family:'Roboto',sans-serif;color:var(--text)}
.mktg-root .kn-d{font-size:10px;font-weight:700;margin-left:5px;white-space:nowrap}
.mktg-root .kn-d.up{color:var(--green)}.mktg-root .kn-d.dn{color:var(--red)}.mktg-root .kn-d.eq{color:var(--soft)}
.mktg-root .kn-er{color:var(--gold-ink);font-weight:700}
.mktg-root .kn-delta{font-size:11px;font-weight:700;margin-left:6px}
.mktg-root .kn-delta.up{color:var(--green)}.mktg-root .kn-delta.dn{color:var(--red)}
.mktg-root .kn-bars{display:flex;align-items:flex-end;gap:14px;height:160px;padding:10px 4px 0;overflow-x:auto}
.mktg-root .kn-bar-col{display:flex;flex-direction:column;align-items:center;gap:6px;flex:1;min-width:64px}
.mktg-root .kn-bar{width:38px;background:linear-gradient(180deg,var(--gold),var(--gold-ink));border-radius:7px 7px 0 0}
.mktg-root .kn-bar-lab{font-size:11px;color:var(--soft);font-weight:600;text-align:center}
.mktg-root .kn-bar-val{font-size:11px;font-weight:700;color:var(--navy)}
.mktg-root .kn-gseg button{padding:5px 11px;font-size:11.5px}

/* ════════════════════════════════════════════════════════════
   TAB — VIDEO NỘI BỘ (bám mockup-marketing-video.html)
   ════════════════════════════════════════════════════════════ */
.mktg-root .filters{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 14px}
.mktg-root .filters .lb{font-size:12px;color:var(--soft)}
.mktg-root .vid-tbl{min-width:1360px}
.mktg-root tr.late{background:#FCEFEC}
.mktg-root .vid-ed{display:inline-block;background:#fffdf7;border:1px solid #efe6cf;border-radius:6px;cursor:text;padding:2px 6px;min-width:70px;color:var(--text)}
.mktg-root .vid-ed:focus{outline:2px solid var(--gold);background:#fff}
.mktg-root td.nd .vid-ed{min-width:180px}
.mktg-root .vid-lock{display:inline-block;background:#f4f1ea;border:1px solid #e7e1d5;border-radius:6px;color:var(--soft);padding:2px 6px;min-width:70px;cursor:not-allowed}
.mktg-root td.nd .vid-lock{min-width:180px}
.mktg-root .vid-date{background:#fffdf7;border:1px solid #efe6cf;border-radius:6px;padding:3px 6px;font-size:12px;font-family:'Roboto',sans-serif;color:var(--text)}
.mktg-root .dang-badge{font-size:10px;font-weight:700;padding:2px 8px;border-radius:999px}
.mktg-root .dang-EGC{background:#EAF0F8;color:#2F5FA8}.mktg-root .dang-BGC{background:#FBF1DC;color:#9C6A16}
.mktg-root .late-flag{font-size:10px;font-weight:700;color:var(--red);margin-left:5px}
.mktg-root .vstatus{font-size:10.5px;font-weight:700;padding:3px 9px;border-radius:999px;display:inline-block}
.mktg-root .vstatus.st-kh,.mktg-root .vid-status.st-kh{background:#F0ECE3;color:#8A8170}
.mktg-root .vstatus.st-cq,.mktg-root .vid-status.st-cq{background:#FBEFE0;color:#B9791C}
.mktg-root .vstatus.st-dq,.mktg-root .vid-status.st-dq{background:#FBF1DC;color:#9C6A16}
.mktg-root .vstatus.st-dd,.mktg-root .vid-status.st-dd{background:#FCEFD6;color:#9C6A16}
.mktg-root .vstatus.st-final,.mktg-root .vid-status.st-final{background:#EAF0F8;color:#2F5FA8}
.mktg-root .vstatus.st-ht,.mktg-root .vid-status.st-ht{background:#E8F3ED;color:#2E7D5B}
.mktg-root .vid-ready{display:inline-block;font-size:9.5px;font-weight:700;color:#2E7D5B;background:#E8F3ED;border-radius:999px;padding:1px 7px;margin-left:4px;white-space:nowrap}

/* ════════════════════════════════════════════════════════════
   TAB — VIDEO UGC – KHÁCH REVIEW (V2 — 4 tab; bám 4 mockup mới)
   prefix uv-  ·  palette cấp lại cho .uv-root + overlay form (gắn body)
   ════════════════════════════════════════════════════════════ */
.uv-root,.uv-detail-ov{--gold:#E1A146;--gold-light:#EDB96A;--gold-cream:#FBF1DC;--gold-ink:#9C6A16;--gold-pale:#FEF9EE;--navy:#0D1B33;--bg:#F6F2EA;--panel:#FFFFFF;--text:#26221B;--soft:#8A8170;--line:#ECE5D8;--red:#C0392B;--blue:#2F5FA8;--green:#2E7D5B;--amber:#B9791C;--teal:#2C6E7A;font-family:'Roboto',-apple-system,sans-serif}
.uv-root{color:var(--text)}
.uv-root *{box-sizing:border-box}

/* header */
.uv-hbar{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px}
.uv-ttl{font-size:18px;font-weight:900;color:var(--navy)}
.uv-ttl small{display:block;font-size:11px;font-weight:500;color:var(--soft);margin-top:2px}
.uv-ownerchip{font-size:10.5px;font-weight:700;color:var(--gold-ink);background:var(--gold-cream);border:1px solid var(--gold-light);border-radius:999px;padding:5px 11px;white-space:nowrap}

/* big tabs */
.uv-bigtabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}
.uv-bigtab{border:1px solid var(--line);background:#fff;border-radius:11px;padding:10px 15px;font-size:13.5px;font-weight:700;color:var(--soft);cursor:pointer;display:flex;align-items:center;gap:7px}
.uv-bigtab.active{background:var(--navy);color:#fff;border-color:var(--navy)}
.uv-bigtab .cnt{font-size:11px;background:var(--gold);color:#3a2708;border-radius:999px;padding:1px 8px;font-weight:800}

/* src tabs (2 thẻ lớn) */
.uv-srctabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:12px}
.uv-srctab{flex:1 1 280px;min-width:0;display:flex;align-items:center;gap:11px;border:1px solid var(--line);background:#fff;border-radius:13px;padding:12px 14px;cursor:pointer}
.uv-srctab.active{box-shadow:0 0 0 2px var(--navy) inset;border-color:var(--navy)}
.uv-srctab .ic{width:36px;height:36px;border-radius:9px;display:flex;align-items:center;justify-content:center;font-size:18px;color:#fff;flex:none}
.uv-srctab.src-vlog .ic{background:var(--blue)}
.uv-srctab.src-album .ic{background:var(--teal)}
.uv-srctab .tx{min-width:0;flex:1}
.uv-srctab .nm{font-size:13.5px;font-weight:800;color:var(--navy)}
.uv-srctab .ds{font-size:11px;color:var(--soft);margin-top:1px}
.uv-srctab .cnt{font-size:13px;font-weight:900;color:var(--navy);background:var(--gold-cream);border-radius:999px;padding:2px 10px;flex:none}

/* autobar */
.uv-autobar{font-size:12px;color:var(--green);background:#EAF3EE;border:1px solid #bfe0cd;border-radius:9px;padding:9px 12px;margin-bottom:12px;line-height:1.5}
.uv-autobar.gold{color:var(--gold-ink);background:var(--gold-pale);border-color:var(--gold-cream);margin-top:12px;margin-bottom:0}

/* statbar 1 dòng */
.uv-statbar{display:flex;align-items:center;gap:8px 18px;flex-wrap:wrap;background:#fff;border:1px solid var(--line);border-radius:11px;padding:11px 15px;margin-bottom:12px}
.uv-stat{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--soft);font-weight:600}
.uv-stat b{font-size:16px;font-weight:900;color:var(--navy)}
.uv-stat .d{width:9px;height:9px;border-radius:50%;flex:none}
.uv-stat .d.sd-all{background:var(--navy)}.uv-stat .d.sd-ok,.uv-stat .d.sd-money,.uv-stat .d.sd-done{background:var(--green)}
.uv-stat .d.sd-lh{background:var(--blue)}.uv-stat .d.sd-no{background:var(--amber)}.uv-stat .d.sd-run{background:var(--amber)}
.uv-stat .d.sd-late{background:var(--red)}.uv-stat .d.sd-gift{background:var(--amber)}
.uv-stat .d.sd-done{background:var(--blue)}
.uv-statsep{width:1px;height:22px;background:var(--line)}
.uv-stat.miniprog{flex:1;min-width:160px;gap:9px}
.uv-stat.miniprog .bar{flex:1;height:7px;background:#eee;border-radius:999px;overflow:hidden}
.uv-stat.miniprog .bar i{display:block;height:100%;background:var(--green);border-radius:999px}
.uv-warnchip{font-size:11.5px;font-weight:700;color:var(--red);background:#FBEDEB;border:1px solid #f0c9c4;border-radius:999px;padding:5px 11px}

/* filters */
.uv-filters{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-bottom:12px}
.uv-flb{font-size:11px;font-weight:700;color:var(--soft)}
.uv-pill{border:1px solid var(--line);background:#fff;border-radius:999px;padding:6px 13px;font-size:12px;font-weight:700;color:var(--text);cursor:pointer}
.uv-pill.active{background:var(--navy);color:#fff;border-color:var(--navy)}
.uv-fsel{border:1px solid var(--line);background:#fff;border-radius:9px;padding:6px 10px;font-size:12.5px;font-weight:600;color:var(--text);font-family:inherit}

/* bảng */
.uv-tbl-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:12px;background:#fff}
.uv-vtbl{width:100%;border-collapse:collapse;font-size:12.5px}
.uv-vtbl.uv-moi{min-width:1300px;table-layout:fixed}.uv-vtbl.uv-sx{min-width:1340px}.uv-vtbl.uv-qua{min-width:1180px}
.uv-vtbl.uv-moi .uv-knm{white-space:normal;overflow-wrap:break-word}   /* fixed layout: tên khách xuống dòng thay vì tràn */
.uv-vtbl th{background:var(--gold-cream);color:var(--gold-ink);text-transform:uppercase;font-size:10.5px;font-weight:800;text-align:left;padding:9px 10px;border-bottom:1px solid var(--line);border-right:1px solid var(--line);white-space:nowrap}
.uv-vtbl td{padding:7px 10px;border-bottom:1px solid var(--line);border-right:1px solid var(--line);vertical-align:middle}   /* ⭐ canh GIỮA dọc, trên–dưới đều nhau (như tab cũ) */
.uv-vtbl.uv-moi td{padding-top:13px;padding-bottom:13px}   /* ⭐ Mời: dòng cao hơn cho thoáng (~52px → ~64px) */
.uv-vtbl tr:last-child td{border-bottom:none}
.uv-vtbl tr.ok td{background:#F3F9F5}
.uv-vtbl tr.tre td{background:#FCF2F0}
.uv-vtbl tr.chua td{background:#FCF2F0}
.uv-vtbl tr.done td{background:#F3F9F5}
.uv-knm{font-weight:800;color:var(--navy);white-space:nowrap}
.uv-read{color:var(--text);white-space:nowrap}.uv-read.soft{color:var(--soft)}
.uv-empty{text-align:center;color:var(--soft);padding:20px;font-size:13px}

/* ô sửa trong bảng */
.uv-cellsel,.uv-ttsel,.uv-tdsel{border:1px solid var(--line);background:#fff;border-radius:8px;padding:5px 7px;font-size:12px;font-weight:600;color:var(--text);font-family:inherit;max-width:160px}
.uv-cellsel{font-weight:700;color:var(--navy);height:30px;box-sizing:border-box;vertical-align:middle}
.uv-cellsel.empty{border-color:var(--line);background:#fff;color:var(--soft);font-weight:600}
.uv-ttsel,.uv-tdsel{font-weight:800;border:none}
/* ⭐ Người liên hệ (Mời) — tên NỔI + đậm, canh thẳng, tông trắng dịu (bám mockup .who-sel) */
/* !important + scoped: đè style toàn cục (kéo padding 30px → cao 62px méo); ô gọn 30px như tab cũ */
.uv-vtbl .uv-whosel,.uv-card .uv-whosel{width:100%;min-width:120px;max-width:none;border:1px solid #E4DDCB !important;background:#fff !important;font-size:12.5px;font-weight:800;color:#2A2620 !important;padding:5px 9px !important;height:30px !important;min-height:0 !important;box-sizing:border-box}
.uv-vtbl .uv-whosel.empty,.uv-card .uv-whosel.empty{background:#fff !important;color:#7d7565 !important;font-weight:700}
.uv-cellin{border:1px solid var(--line);background:#fff;border-radius:8px;padding:5px 8px;font-size:12px;color:var(--text);font-family:inherit;width:100%;min-width:90px}
.uv-cellta{border:1px solid var(--line);border-radius:9px;padding:7px 9px;font-size:12.5px;color:var(--text);font-family:inherit;width:100%;min-height:84px;resize:vertical}
/* ⭐ Ghi chú: tự mở rộng khi bấm/gõ, thu lại khi xong */
/* ⭐ Ghi chú: gọn 1 dòng, bấm/gõ NỞ TO, rời ra thu nhỏ (bám mockup .note) */
.uv-note{width:100%;min-width:170px;height:36px;min-height:36px;padding:8px 10px;line-height:1.45;resize:none;overflow:hidden;transition:height .15s ease,border-color .15s;vertical-align:middle}
.uv-note:focus{height:82px;overflow:auto;border-color:var(--gold-light);outline:none}
.uv-noteread{white-space:normal;display:inline-block;max-width:210px;line-height:1.34}
/* ⭐ Địa điểm — xuống dòng xem TOÀN BỘ, không cắt chữ (bám mockup .loc) */
.uv-vtbl .uv-loc{max-width:190px;white-space:normal;overflow-wrap:break-word;word-break:break-word;line-height:1.4;color:var(--text)}
/* ⭐ Ekip chụp — 2-3 người thì XUỐNG DÒNG, không tràn đè cột SĐT */
.uv-vtbl.uv-moi .uv-ekip{white-space:normal;overflow-wrap:break-word;line-height:1.35}
/* ⭐ 2 SĐT chú rể / cô dâu (CR · CD) — gọn, canh số thẳng hàng (bám mockup .phones) */
.uv-ph-td{white-space:nowrap;vertical-align:middle}
.uv-phs{display:flex;flex-direction:column;gap:4px;min-width:150px}
.uv-phs .uv-ph{display:flex;align-items:baseline;gap:8px;line-height:1.3}
.uv-phs .uv-ph .lb{font-size:11px;font-weight:700;color:var(--soft);text-transform:uppercase;width:26px;flex:none}
.uv-phs .uv-ph .nm{font-size:12.5px;font-weight:600;color:var(--text);font-variant-numeric:tabular-nums}
.uv-phs .uv-ph1{font-size:12.5px;font-weight:600;color:var(--text);font-variant-numeric:tabular-nums}
/* ⭐ Ngày liên hệ — thấp gọn, tông kem dịu (bám mockup .date; picker VN dd/mm/yyyy qua vdpInit).
   !important + scoped: đè ô hiển thị vdp (readonly) khỏi bị style toàn cục kéo cao/đổi màu */
.uv-vtbl .uv-date,.uv-card .uv-date{border:1px solid #E7DFC9 !important;background:#FDF6E9 !important;border-radius:8px;padding:5px 8px !important;font-size:12px;font-weight:600;font-family:inherit;color:var(--text) !important;height:30px !important;min-height:0 !important;width:120px;max-width:120px;box-sizing:border-box;line-height:18px;vertical-align:middle}
.uv-vtbl .uv-date.empty,.uv-card .uv-date.empty{color:#9b927f !important}
.uv-badge{display:inline-block;font-size:11px;font-weight:800;border-radius:999px;padding:3px 10px;white-space:nowrap}
.uv-badge.bg-vlog{background:#E9F0FA;color:var(--blue)}.uv-badge.bg-album{background:#E6F1F2;color:var(--teal)}
.uv-hk{display:inline-block;font-size:11px;font-weight:700;border-radius:999px;padding:3px 9px}
.uv-hk.hk-xong{background:#EAF3EE;color:var(--green)}.uv-hk.hk-lam{background:#FBEFE0;color:var(--amber)}
.uv-callbtn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:7px;border:1px solid var(--line);color:var(--green);text-decoration:none;font-size:14px}
.uv-prodbtn{background:var(--green);color:#fff;border:none;border-radius:8px;padding:6px 11px;font-size:12px;font-weight:700;cursor:pointer;white-space:nowrap}
.uv-acts{display:flex;gap:6px;align-items:center}
.uv-dash{color:var(--soft)}
.uv-addrow{margin-top:12px}
.uv-addk{border:1.5px dashed var(--gold-light);background:#fff;color:var(--gold-ink);border-radius:10px;padding:9px 15px;font-size:12.5px;font-weight:700;cursor:pointer}

/* chip phụ trách + role + link + numpad */
.uv-ptwrap{display:flex;flex-wrap:wrap;gap:4px;align-items:center}
.uv-pchip{display:inline-flex;align-items:center;gap:4px;background:var(--navy);color:#fff;border-radius:999px;padding:2px 4px 2px 9px;font-size:11px;font-weight:600;white-space:nowrap}
.uv-pchip b{cursor:pointer;font-size:12px;line-height:1}
.uv-addp{border:1px dashed var(--line);background:#fff;border-radius:8px;padding:3px 6px;font-size:11px;color:var(--soft);font-family:inherit}
.uv-linkcell{display:flex;gap:4px;align-items:center}
.uv-lkopen{border:1px solid var(--line);background:#fff;border-radius:7px;padding:4px 8px;font-size:12px;cursor:pointer;color:var(--blue)}
.uv-numbtn{border:1px solid var(--line);background:var(--gold-pale);border-radius:8px;padding:5px 11px;font-size:12.5px;font-weight:800;color:var(--navy);cursor:pointer}
.uv-numbtn.low{color:var(--red);border-color:#e7b3ac;background:#FCF2F0}
.uv-trebadge{display:inline-block;background:var(--red);color:#fff;font-size:9.5px;font-weight:800;border-radius:999px;padding:1px 7px;margin-left:5px}
.uv-imgbtn{border:1px solid var(--line);background:#fff;border-radius:8px;padding:6px 11px;font-size:12px;font-weight:700;cursor:pointer;color:var(--text)}
.uv-imgbtn.has{background:#EAF3EE;border-color:#bfe0cd;color:var(--green)}
.uv-editbtn{border:1px solid var(--line);background:var(--gold-pale);border-radius:8px;padding:6px 11px;font-size:12px;font-weight:700;cursor:pointer;color:var(--gold-ink)}
.uv-gcprev{display:inline-block;max-width:170px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--soft);font-size:11.5px}

/* pager */
.uv-pager{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:11px;font-size:12px;color:var(--soft)}
.uv-pg{border:1px solid var(--line);background:#fff;border-radius:7px;padding:4px 10px;font-size:12px;cursor:pointer;color:var(--text)}
.uv-pg.active{background:var(--navy);color:#fff;border-color:var(--navy)}

/* thẻ mobile (ẩn desktop) */
.uv-cards{display:none}
.uv-card{border:1px solid var(--line);background:#fff;border-radius:12px;padding:12px;margin-bottom:10px}
.uv-card.ok{background:#F3F9F5;border-color:#bfe0cd}
.uv-card.tre,.uv-card.chua{background:#FCF2F0;border-color:#e7b3ac}
.uv-card.done{background:#F3F9F5;border-color:#bfe0cd}
.uv-vc-h{font-size:14px;font-weight:800;color:var(--navy);margin-bottom:5px}
.uv-vc-meta{font-size:11px;color:var(--soft);line-height:1.6;margin-bottom:9px}
.uv-vc-row{display:grid;grid-template-columns:96px 1fr;gap:7px;align-items:center;margin-bottom:7px}
.uv-vc-row>span{font-size:10px;font-weight:700;text-transform:uppercase;color:var(--soft)}
.uv-vc-line{font-size:12.5px;margin-bottom:5px}.uv-vc-line>span{color:var(--soft);font-weight:600}
.uv-vc-foot{display:flex;gap:7px;flex-wrap:wrap;align-items:center;margin-top:9px}

/* Hiệu quả */
.uv-kpis{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-bottom:14px}
.uv-kpi{background:#fff;border:1px solid var(--line);border-top:3px solid var(--gold);border-radius:12px;padding:12px 13px}
.uv-kpi.k-ok{border-top-color:var(--green)}.uv-kpi.k-view{border-top-color:var(--blue)}.uv-kpi.k-cost{border-top-color:var(--amber)}
.uv-kpi .l{font-size:10px;font-weight:700;text-transform:uppercase;color:var(--soft);letter-spacing:.02em}
.uv-kpi .v{font-size:21px;font-weight:900;color:var(--navy);line-height:1.15;margin-top:3px}
.uv-kpi .s{font-size:10.5px;color:var(--soft);margin-top:2px}
.uv-grid2{display:grid;grid-template-columns:1.3fr 1fr;gap:12px;margin-bottom:14px}
.uv-card2{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px}
.uv-card2 h3{margin:0;font-size:14px;font-weight:900;color:var(--navy)}
.uv-card2 .sub{font-size:11px;color:var(--soft);margin:2px 0 11px}
.uv-fnl{display:flex;flex-direction:column;gap:9px}
.uv-fnl-row{display:grid;grid-template-columns:96px 1fr auto;gap:10px;align-items:center}
.uv-fnl-row .nm{font-size:12px;font-weight:700}
.uv-fnl-bar{height:26px;border-radius:7px;background:var(--gold-pale);overflow:hidden}
.uv-fnl-bar i{display:block;height:100%;border-radius:7px}
.uv-fnl-bar i.fb1{background:var(--navy)}.uv-fnl-bar i.fb2{background:var(--blue)}.uv-fnl-bar i.fb3{background:var(--gold)}.uv-fnl-bar i.fb4{background:var(--green)}
.uv-fnl-row .vv{text-align:right;min-width:74px;font-size:12.5px;font-weight:900;color:var(--navy)}
.uv-fnl-row .vv small{font-size:10.5px;font-weight:600;color:var(--soft)}
.uv-cmp{width:100%;border-collapse:collapse;font-size:12.5px}
.uv-cmp th{text-transform:uppercase;font-size:10.5px;font-weight:800;color:var(--gold-ink);text-align:right;padding:6px 8px;border-bottom:1px solid var(--line)}
.uv-cmp th:first-child{text-align:left}
.uv-cmp td{padding:6px 8px;border-bottom:1px solid var(--line);text-align:right}
.uv-cmp tr:last-child td{border-bottom:none}
.uv-cmp td.mt{text-align:left;font-weight:600;color:var(--soft)}
.uv-cmp td.vlog{color:var(--blue);font-weight:800}.uv-cmp td.album{color:var(--teal);font-weight:800}
.uv-rtbl{width:100%;border-collapse:collapse;font-size:12.5px;min-width:640px;margin-bottom:14px}
.uv-rtbl caption{text-align:left;font-size:13.5px;font-weight:900;color:var(--navy);padding:11px 12px 8px}
.uv-rtbl caption .capsub{font-size:11px;font-weight:500;color:var(--soft)}
.uv-rtbl th{background:var(--gold-cream);color:var(--gold-ink);text-transform:uppercase;font-size:10.5px;font-weight:800;text-align:right;padding:8px 10px}
.uv-rtbl th:first-child{text-align:left}
.uv-rtbl td{padding:8px 10px;border-bottom:1px solid var(--line);text-align:right}
.uv-rtbl td.rk{text-align:left;font-weight:800;color:var(--navy);white-space:nowrap}
.uv-pctbar{display:inline-flex;align-items:center;gap:7px;justify-content:flex-end}
.uv-pctbar .b{width:64px;height:7px;background:#eee;border-radius:999px;overflow:hidden}
.uv-pctbar .b i{display:block;height:100%}
.uv-pctbar .b i.pg{background:var(--green)}.uv-pctbar .b i.pa{background:var(--amber)}.uv-pctbar .b i.pr{background:var(--red)}
.uv-pctbar .t{font-weight:900;min-width:40px;text-align:right}
.uv-vaitro{display:inline-flex;gap:4px;flex-wrap:wrap;justify-content:flex-end}
.uv-vt{font-size:9.5px;font-weight:800;border-radius:5px;padding:1px 7px}
.uv-vt.vt-kb{background:#E9F0FA;color:var(--blue)}.uv-vt.vt-quay{background:#FBEFE0;color:var(--amber)}.uv-vt.vt-ed{background:#E6F1F2;color:var(--teal)}.uv-vt.vt-pt{background:var(--gold-cream);color:var(--gold-ink)}

/* form Cập nhật (overlay gắn body) */
.uv-detail-ov{position:fixed;inset:0;background:rgba(13,27,51,.5);z-index:70;display:none;align-items:flex-start;justify-content:center;padding:24px 12px;overflow:auto}
.uv-detail-ov.show{display:flex}
.uv-dbox{background:#fff;border-radius:16px;width:560px;max-width:97vw;max-height:94vh;display:flex;flex-direction:column;overflow:hidden;font-family:'Roboto',sans-serif}
.uv-dhead{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:15px 18px;border-bottom:1px solid var(--line);position:sticky;top:0;background:#fff}
.uv-dt{font-size:15px;font-weight:900;color:var(--navy)}
.uv-dsub{font-size:11.5px;color:var(--soft);margin-top:2px}
.uv-x{border:none;background:#f1ece2;border-radius:8px;width:30px;height:30px;cursor:pointer;font-size:14px;color:var(--soft)}
.uv-dbody{padding:16px 18px;overflow:auto}
.uv-dgrid{display:grid;grid-template-columns:1fr 1fr;gap:13px}
.uv-fld{display:flex;flex-direction:column;gap:5px}.uv-fld.full{grid-column:1/-1}
.uv-fld label{font-size:11px;font-weight:700;color:var(--soft)}
.uv-hint{font-size:11px;color:var(--soft)}
.uv-bigbtn{border:1px solid var(--line);background:var(--gold-pale);border-radius:9px;padding:9px 12px;font-size:14px;font-weight:800;color:var(--navy);cursor:pointer;text-align:left}
.uv-tkblock{background:var(--gold-pale);border:1px solid var(--gold-cream);border-radius:11px;padding:12px}
.uv-tktt{font-size:12px;font-weight:800;color:var(--gold-ink);margin-bottom:9px}
.uv-tkgrid{display:grid;grid-template-columns:1.4fr 1fr;gap:10px}
.uv-imgrow{display:flex;align-items:center;gap:11px;border:1.5px dashed var(--line);border-radius:11px;padding:11px}
.uv-imghint{font-size:11px;color:var(--soft)}
.uv-dfoot{display:flex;justify-content:flex-end;gap:8px;padding:13px 18px;border-top:1px solid var(--line);position:sticky;bottom:0;background:#fff}
.uv-nbtn{border:none;border-radius:9px;padding:9px 18px;font-size:13px;font-weight:700;cursor:pointer;font-family:inherit}
.uv-nbtn.ghost{background:#f1ece2;color:var(--text)}.uv-nbtn.save{background:var(--gold-ink);color:#fff}

/* numpad (mnp) phải NỔI trên form quà */
#mkt-np-ov{z-index:90 !important}

.uv-root .mkt-deny{background:#fff;border:1px solid var(--line);border-radius:12px;padding:24px;text-align:center;color:var(--soft);font-size:13.5px}

/* MOBILE */
@media (max-width:860px){
  .uv-tbl-scroll{display:none}
  .uv-cards{display:block}
  .uv-srctab{flex:1 1 100%}
  .uv-stat.miniprog{flex-basis:100%}
  .uv-kpis{grid-template-columns:1fr 1fr}
  .uv-grid2{grid-template-columns:1fr}
  .uv-dgrid,.uv-tkgrid{grid-template-columns:1fr}
  .uv-rtbl{min-width:560px}
  .uv-bigtabs,.uv-filters,.uv-hbar{flex-wrap:wrap}
  .uv-card .uv-date{width:100%;max-width:none}
  .uv-card .uv-note{min-width:0}
  .uv-card .uv-whosel{min-width:0}
}
/* ════════════════════════════════════════════════════════════
   TAB — SEEDING (bám mockup-marketing-seeding.html)
   ════════════════════════════════════════════════════════════ */
.mktg-root .se-subtabs{display:flex;gap:8px;margin:0 0 16px;flex-wrap:wrap}
.mktg-root .se-subtab{border:1px solid var(--line);background:#fff;border-radius:11px;padding:11px 15px;font-size:13px;font-weight:700;color:var(--soft);cursor:pointer;display:flex;align-items:center;gap:7px}
.mktg-root .se-subtab .n{font-size:11px;background:var(--gold-cream);color:var(--gold-ink);border-radius:999px;padding:1px 8px;font-weight:700}
.mktg-root .se-subtab.active{background:var(--navy);color:#fff;border-color:var(--navy)}
.mktg-root .se-subtab.active .n{background:var(--gold);color:#3a2708}
.mktg-root .se-pane{display:none}
.mktg-root .se-pane.active{display:block}
.mktg-root .seN{min-width:1280px}
.mktg-root .seG{min-width:1240px}
.mktg-root .seL{min-width:1340px}
.mktg-root tr.bad-row{background:#FCEFEC}

/* ════ NHẬT KÝ — SỔ GHI CHÉP (prefix .slog · bám mockup-seeding-so-ghi.html · màu KHOÁ CỨNG literal) ════ */
.mktg-root .slog{--sp:#F4F3F0;--cd:#FFF;--ln:#DFDBD3;--ln2:#EDEAE4;--sf:#F7F6F3;--ik:#1C1A16;--ik2:#605B52;--ik3:#A29C90;--nv:#132443;--gd:#D99A3E;--gdbg:#FCF4E6;--ok:#2D7A56;--okbg:#EAF4EF;--wn:#B8842B;--wnbg:#FAF2E2;--bd:#B93A2C;--bdbg:#FAEDEB;--fb:#1877F2;font-size:13px;color:var(--ik)}
.mktg-root .slog .ki{width:16px;height:16px;display:inline-flex;flex-shrink:0}.mktg-root .slog .ki svg{width:100%;height:100%;display:block}
.mktg-root .slog .kpi{display:grid;grid-template-columns:repeat(4,1fr);gap:11px;margin-bottom:13px}
.mktg-root .slog .kp{background:var(--cd);border:1px solid var(--ln);border-radius:12px;padding:14px 16px;position:relative;overflow:hidden}
.mktg-root .slog .kp::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--gd)}
.mktg-root .slog .kp.r::before{background:var(--bd)}.mktg-root .slog .kp.y::before{background:var(--wn)}.mktg-root .slog .kp.g::before{background:var(--ok)}
.mktg-root .slog .kp-l{font-size:9px;letter-spacing:.07em;text-transform:uppercase;color:var(--ik3);font-weight:800;margin-bottom:6px}
.mktg-root .slog .kp-v{font-size:27px;font-weight:800;line-height:1;letter-spacing:-.02em;color:var(--ik)}
.mktg-root .slog .kp.r .kp-v{color:var(--bd)}.mktg-root .slog .kp.y .kp-v{color:var(--wn)}.mktg-root .slog .kp.g .kp-v{color:var(--ok)}
.mktg-root .slog .kp-s{font-size:10.5px;color:var(--ik3);margin-top:5px}
.mktg-root .slog .book{background:var(--cd);border:1px solid var(--ln);border-radius:13px;overflow:hidden}
.mktg-root .slog .add{background:var(--gdbg);border-bottom:2px solid var(--gd);padding:13px 15px}
.mktg-root .slog .add-h{display:flex;align-items:center;gap:8px;margin-bottom:10px}
.mktg-root .slog .add-i{width:24px;height:24px;border-radius:7px;background:var(--gd);color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:800}
.mktg-root .slog .add-t{font-size:13.5px;font-weight:800;color:#8A6119}
.mktg-root .slog .add-s{font-size:11px;color:#A88540;margin-left:auto}
.mktg-root .slog .arow{display:grid;grid-template-columns:148px 190px 1fr 1.5fr 104px 76px;gap:8px;align-items:start}
.mktg-root .slog .af{display:flex;flex-direction:column;gap:5px;min-width:0}
.mktg-root .slog .af-l{font-size:8.5px;letter-spacing:.05em;text-transform:uppercase;color:#A88540;font-weight:800}
.mktg-root .slog .af-l b{color:var(--bd)}.mktg-root .slog .af-l em{font-style:normal;text-transform:none;letter-spacing:0;font-weight:600}
.mktg-root .slog .af select,.mktg-root .slog .af input{border:1px solid #EAD8B4;background:#fff;border-radius:8px;padding:10px 11px;font-size:12.5px;font-weight:700;color:var(--ik);width:100%;height:40px}
.mktg-root .slog .af select:focus,.mktg-root .slog .af input:focus{outline:none;border-color:var(--gd);box-shadow:0 0 0 3px rgba(217,154,62,.18)}
.mktg-root .slog .af input::placeholder{color:#C9C2B4;font-weight:400}
.mktg-root .slog .abtn{border:none;background:var(--nv);color:#fff;border-radius:8px;padding:11px;font-size:13px;font-weight:800;height:40px;margin-top:18px;cursor:pointer;font-family:inherit}
.mktg-root .slog .abtn:hover{background:#1D3358}
.mktg-root .slog .se-addwarn{margin-top:9px}
.mktg-root .slog .se-req{font-size:11.5px;font-weight:700;color:var(--bd);background:var(--bdbg);border:1px solid #EFD3CE;border-radius:8px;padding:8px 11px}
/* ── VIỆC 1·2·3: bảng chọn Nick/Nguồn 3 cột + ô ghi tự giãn (bám mockup-seeding-bang-chon + o-ghi-tu-gian) ── */
.mktg-root .slog .add{position:relative}
.mktg-root .slog .af-l{display:flex;align-items:center;gap:5px;min-height:13px}
.mktg-root .slog .af-l em{font-style:normal;text-transform:none;letter-spacing:0;font-weight:700;margin-left:auto;color:#8A6119}
.mktg-root .slog .se-pickbtn{display:flex;align-items:center;gap:7px;width:100%;height:40px;border:1px solid #EAD8B4;background:#fff;border-radius:8px;padding:9px 11px;font-size:12.5px;font-weight:700;color:var(--ik);cursor:pointer;font-family:inherit;text-align:left;overflow:hidden;white-space:nowrap}
.mktg-root .slog .se-pickbtn.ph{color:#C9C2B4;font-weight:400}
.mktg-root .slog .se-pickbtn:hover{border-color:var(--gd)}
.mktg-root .slog .se-pickbtn .ki{width:15px;height:15px;flex-shrink:0}
.mktg-root .slog .grow{border:1px solid #EAD8B4;background:#fff;border-radius:8px;padding:10px 11px;font-size:12.5px;font-weight:600;color:var(--ik);width:100%;line-height:18px;height:40px;min-height:40px;resize:none;overflow:hidden;display:block;font-family:inherit}
.mktg-root .slog .grow:focus{outline:none;border-color:var(--gd);box-shadow:0 0 0 3px rgba(217,154,62,.18)}
.mktg-root .slog .grow::placeholder{color:#C9C2B4;font-weight:400}
.mktg-root .slog .cnt{font-size:9.5px;color:#A88540;font-weight:700;margin-top:4px;text-align:right}
.mktg-root .slog .cnt b{color:#8A6119}.mktg-root .slog .cnt.hide{display:none}
.mktg-root .slog .qw{background:#fff;border:1px solid #F2D5CF;border-left:3px solid var(--bd);border-radius:8px;padding:9px 12px;font-size:11.5px;color:#8E3226;line-height:1.65}.mktg-root .slog .qw b{color:var(--ik)}
/* ⭐ POPUP NỔI body-level — phủ kín, căn giữa, KHÔNG bị khối cha bó (Lỗi 1+3). Bọc mktg-root>slog để giữ biến màu + CSS scoped. */
.se-pickov{position:fixed;inset:0;background:rgba(19,36,67,.42);z-index:9000;display:none;align-items:center;justify-content:center;padding:24px;font-family:'Roboto',Arial,sans-serif}
.se-pickov.open{display:flex}
.se-pickov>.mktg-root,.se-pickov .slog,.se-pickov [data-pickpop]{display:contents}
.mktg-root .slog .pick{background:var(--cd);border:1px solid var(--ln);border-radius:14px;overflow:hidden;box-shadow:0 24px 68px rgba(19,36,67,.28);width:100%;max-width:1000px;max-height:88vh;display:flex;flex-direction:column}
.mktg-root .slog .pk-h,.mktg-root .slog .pk-s,.mktg-root .slog .strip,.mktg-root .slog .pk-f,.mktg-root .slog .col-h{flex-shrink:0}
.mktg-root .slog .pk-h{display:flex;align-items:center;gap:10px;padding:14px 18px;border-bottom:1px solid var(--ln2)}
.mktg-root .slog .pk-t{font-size:15px;font-weight:800}
.mktg-root .slog .pk-n{font-size:10px;font-weight:900;padding:3px 9px;border-radius:20px;background:var(--sf);color:var(--ik2);border:1px solid var(--ln)}
.mktg-root .slog .pk-x{margin-left:auto;width:28px;height:28px;border:1px solid var(--ln);background:var(--cd);color:var(--ik3);border-radius:8px;font-size:11px;cursor:pointer;font-family:inherit}
.mktg-root .slog .pk-x:hover{border-color:var(--bd);color:var(--bd)}
.mktg-root .slog .pk-s{display:flex;align-items:center;gap:9px;padding:11px 18px;background:var(--sf);border-bottom:1px solid var(--ln2)}
.mktg-root .slog .pk-s::before{content:"🔍";font-size:12px;opacity:.5}
.mktg-root .slog .pk-s input{flex:1;border:1px solid var(--ln);background:var(--cd);border-radius:8px;padding:9px 12px;font-size:12.5px;font-weight:600;color:var(--ik);outline:none;height:auto;font-family:inherit}
.mktg-root .slog .pk-s input:focus{border-color:var(--gd);box-shadow:0 0 0 3px rgba(217,154,62,.16)}
.mktg-root .slog .strip{display:flex;align-items:center;gap:8px;padding:11px 18px;background:var(--gdbg);border-bottom:1px solid #EAD8B4;flex-wrap:wrap;overflow:hidden}
.mktg-root .slog .goi,.mktg-root .slog .gan{max-width:100%;overflow:hidden}
.mktg-root .slog .goi .glbl,.mktg-root .slog .gan .glbl{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mktg-root .slog .st-l{font-size:9px;letter-spacing:.06em;text-transform:uppercase;font-weight:800;color:#8A6119}
.mktg-root .slog .goi,.mktg-root .slog .gan{display:inline-flex;align-items:center;gap:6px;border:1px solid #EAD8B4;background:var(--cd);color:var(--ik);border-radius:8px;padding:7px 11px;font-size:12px;font-weight:800;cursor:pointer;font-family:inherit}
.mktg-root .slog .goi:hover,.mktg-root .slog .gan:hover{border-color:var(--gd);background:#fff}
.mktg-root .slog .goi .ki,.mktg-root .slog .gan .ki{width:13px;height:13px}
.mktg-root .slog .gan b{font-size:10px;font-weight:900;color:var(--ik3);margin-left:2px}
.mktg-root .slog .pick .cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:minmax(0,1fr);flex:1;min-height:0;overflow:hidden}
.mktg-root .slog .pick .col{border-right:1px solid var(--ln2);min-width:0;min-height:0;display:flex;flex-direction:column}.mktg-root .slog .pick .col:last-child{border-right:none}
.mktg-root .slog .col-h{display:flex;align-items:center;gap:8px;padding:11px 14px;background:var(--sf);border-bottom:1px solid var(--ln2);border-top:3px solid var(--ln)}
.mktg-root .slog .col.p-fb .col-h{border-top-color:#1877F2}.mktg-root .slog .col.p-tiktok .col-h{border-top-color:#FE2C55}.mktg-root .slog .col.p-thread .col-h{border-top-color:#26241F}
.mktg-root .slog .lgo{width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;border:1px solid var(--ln);background:var(--cd);flex-shrink:0}
.mktg-root .slog .col.p-fb .lgo{background:#EDF3FC;border-color:#D3E3F8}.mktg-root .slog .col.p-tiktok .lgo{background:#FDF0F3;border-color:#F7D6DE}.mktg-root .slog .col.p-thread .lgo{background:#F2F0EC;border-color:#E0DDD6}
.mktg-root .slog .lgo .ki{width:17px;height:17px}
.mktg-root .slog .col-t{font-size:11.5px;font-weight:800;letter-spacing:.03em;text-transform:uppercase;color:var(--ik);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mktg-root .slog .col-n{font-size:10px;font-weight:900;padding:3px 8px;border-radius:20px;background:var(--cd);color:var(--ik2);border:1px solid var(--ln);flex-shrink:0}
.mktg-root .slog .col-b{padding:10px;flex:1;min-height:0;max-height:calc(88vh - 250px);overflow-y:auto;overscroll-behavior:contain}
.mktg-root .slog .col-b::-webkit-scrollbar{width:8px}
.mktg-root .slog .col-b::-webkit-scrollbar-track{background:var(--sf);border-radius:5px}
.mktg-root .slog .col-b::-webkit-scrollbar-thumb{background:var(--ln);border-radius:5px;border:2px solid var(--sf)}
.mktg-root .slog .col-b::-webkit-scrollbar-thumb:hover{background:var(--ik3)}
.mktg-root .slog .pk-empty{text-align:center;padding:26px 12px;font-size:11.5px;color:var(--ik3);font-weight:600;border:1px dashed var(--ln);border-radius:9px;background:var(--sf)}
.mktg-root .slog .ncard{border:1px solid var(--ln);border-radius:9px;padding:9px 11px;margin-bottom:7px;cursor:pointer;background:var(--cd);overflow:hidden}
.mktg-root .slog .ncard:last-child{margin-bottom:0}
.mktg-root .slog .ncard:hover{border-color:var(--nv);background:var(--sf)}
.mktg-root .slog .ncard.g{border-left:3px solid var(--ok)}.mktg-root .slog .ncard.y{border-left:3px solid var(--wn)}.mktg-root .slog .ncard.r{border-left:3px solid var(--bd)}
.mktg-root .slog .ncard.het{opacity:.42;cursor:not-allowed}.mktg-root .slog .ncard.het:hover{border-color:var(--ln);border-left-color:var(--bd);background:var(--cd)}
.mktg-root .slog .nc-1{display:flex;align-items:center;gap:6px;margin-bottom:7px}
.mktg-root .slog .star{color:var(--gd);font-size:12px}
.mktg-root .slog .nma{font-size:12.5px;font-weight:800;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mktg-root .slog .nname{font-size:12.5px;font-weight:700;color:var(--ik);margin:-1px 0 9px;line-height:1.35;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mktg-root .slog .nc-2{display:flex;align-items:center;justify-content:space-between;gap:8px}
.mktg-root .slog .ndots{display:flex;gap:3px}
.mktg-root .slog .dt{width:8px;height:8px;border-radius:50%;background:var(--ln2);display:block;border:1px solid var(--ln)}
.mktg-root .slog .dt.on{background:var(--ik2);border-color:var(--ik2)}
.mktg-root .slog .nst{font-size:9px;font-weight:800;padding:3px 7px;border-radius:5px;white-space:nowrap}
.mktg-root .slog .nst.g{background:var(--okbg);color:var(--ok)}.mktg-root .slog .nst.y{background:var(--wnbg);color:var(--wn)}.mktg-root .slog .nst.r{background:var(--bdbg);color:var(--bd)}
.mktg-root .slog .ntag{display:block;margin-top:6px;font-size:9px;font-weight:800;padding:3px 7px;border-radius:5px;background:var(--okbg);color:var(--ok);width:fit-content}
.mktg-root .slog .gcard{display:flex;align-items:center;gap:8px;border:1px solid var(--ln);border-radius:9px;padding:9px 11px;margin-bottom:6px;cursor:pointer;background:var(--cd);overflow:hidden}
.mktg-root .slog .gcard:last-child{margin-bottom:0}
.mktg-root .slog .gcard:hover{border-color:var(--nv);background:var(--sf)}
.mktg-root .slog .gt{flex:1;min-width:0;font-size:12px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mktg-root .slog .gm{display:flex;align-items:center;gap:6px;flex-shrink:0}
.mktg-root .slog .gsl{font-size:9.5px;font-weight:900;padding:3px 7px;border-radius:5px;background:var(--sf);color:var(--ik2);border:1px solid var(--ln)}
.mktg-root .slog .gk{font-size:9px;color:var(--ok);font-weight:800}
.mktg-root .slog .pk-f{display:flex;align-items:center;gap:9px;padding:12px 18px;border-top:1px solid var(--ln2);background:var(--sf)}
.mktg-root .slog .pk-f .tip{font-size:10.5px;color:var(--ik3);flex:1}
.mktg-root .slog .newb{border:1px dashed var(--gd);background:var(--gdbg);color:#8A6119;border-radius:8px;padding:9px 14px;font-size:12px;font-weight:800;cursor:pointer;font-family:inherit;white-space:nowrap}
.mktg-root .slog .newb:hover{background:var(--gd);color:#fff;border-style:solid}
@media(max-width:860px){
 .se-pickov{padding:12px}
 .mktg-root .slog .pick{max-height:92vh}
 .mktg-root .slog .pick .cols{grid-template-columns:minmax(0,1fr);grid-template-rows:none;overflow-y:auto;max-height:calc(92vh - 215px)}
 .mktg-root .slog .pick .col{border-right:none;border-bottom:1px solid var(--ln2)}.mktg-root .slog .pick .col:last-child{border-bottom:none}
 .mktg-root .slog .col-b{overflow-y:visible;max-height:none}
 .mktg-root .slog .pk-f{flex-direction:column;align-items:stretch}.mktg-root .slog .newb{width:100%}
}
.mktg-root .slog .fbar{display:flex;gap:7px;align-items:center;padding:11px 15px;flex-wrap:wrap;border-bottom:1px solid var(--ln);background:var(--sf)}
.mktg-root .slog .fl2{font-size:10.5px;font-weight:800;color:var(--ik3)}
.mktg-root .slog .fs{border:1px solid var(--ln);background:var(--cd);border-radius:7px;padding:7px 10px;font-size:11.5px;font-weight:700;color:var(--ik);height:auto}
.mktg-root .slog .fs.num{width:54px;text-align:center}
.mktg-root .slog .fg{display:flex;gap:3px;background:#EBE8E2;border-radius:8px;padding:3px}
.mktg-root .slog .fg button{border:none;background:transparent;border-radius:6px;padding:6px 11px;font-size:11px;font-weight:800;color:var(--ik3);display:flex;align-items:center;gap:5px;cursor:pointer;font-family:inherit}
.mktg-root .slog .fg button.on{background:var(--nv);color:#fff}
.mktg-root .slog .fg button .ki{width:13px;height:13px}
.mktg-root .slog .fg button.hot{color:var(--bd)}.mktg-root .slog .fg button.hot.on{background:var(--bd);color:#fff}
.mktg-root .slog .fg .n{font-size:9px;font-weight:900;opacity:.7}
.mktg-root .slog .tw{overflow-x:auto}
.mktg-root .slog .book table{width:100%;border-collapse:collapse;min-width:1100px;background:transparent;margin:0}
.mktg-root .slog .book thead th{background:var(--sf);border-bottom:2px solid var(--ln);font-size:8.5px;letter-spacing:.07em;text-transform:uppercase;text-align:left;padding:12px 14px;font-weight:800;color:var(--ik2);white-space:nowrap}
.mktg-root .slog .book tbody tr{border-bottom:1px solid var(--ln)}
.mktg-root .slog .book tbody tr:nth-child(even){background:var(--sf)}
.mktg-root .slog .book tbody tr:hover{background:#F0EEE9}
.mktg-root .slog .book tbody td{padding:15px 14px;font-size:12.5px;vertical-align:top}
.mktg-root .slog .book tbody tr.r-r td:first-child{box-shadow:inset 4px 0 0 var(--bd)}
.mktg-root .slog .book tbody tr.r-y td:first-child{box-shadow:inset 4px 0 0 var(--wn)}
.mktg-root .slog .book tbody tr.se-editing{background:var(--gdbg)}
.mktg-root .slog .t-ngay{width:58px;font-weight:800;color:var(--ik2);white-space:nowrap;padding-left:18px}
.mktg-root .slog .t-nick{width:138px}.mktg-root .slog .t-kenh{width:122px}.mktg-root .slog .t-nguon{width:172px}
.mktg-root .slog .t-khop{width:56px;text-align:center}.mktg-root .slog .t-link{width:44px;text-align:center}
.mktg-root .slog .t-nd{min-width:380px}.mktg-root .slog .t-loai{width:90px}.mktg-root .slog .t-act{width:60px}
/* ô Nick/Nguồn TỪNG DÒNG nhật ký = nút mở bảng chọn popup (giống ô Ghi dòng mới) */
.mktg-root .slog .se-rowpick{display:inline-flex;align-items:center;gap:6px;max-width:100%;font-size:12px;font-weight:800;border:1px solid var(--ln);background:#fff;color:var(--ik);border-radius:8px;padding:5px 9px;cursor:pointer;font-family:inherit;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mktg-root .slog .se-rowpick:hover{border-color:var(--gd);background:var(--gdbg)}
.mktg-root .slog .se-rowpick .ki{width:13px;height:13px;flex-shrink:0}
.mktg-root .slog .se-rowpick.src-btn{font-weight:700;color:var(--ik2)}
.mktg-root .slog .pill{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:800;border-radius:8px;padding:6px 10px;border:1px solid var(--ln);background:#fff;white-space:nowrap}
.mktg-root .slog .pill.k-fb{border-color:#CFE1FC;background:#F3F8FE;color:#0B5CC4}
.mktg-root .slog .pill.k-tiktok,.mktg-root .slog .pill.k-thread{border-color:var(--ln);background:#FAF9F7;color:#1C1A16}
.mktg-root .slog .fill{border:1px dashed var(--bd);background:#fff;color:var(--bd);border-radius:8px;padding:7px 11px;font-size:11px;font-weight:800;white-space:nowrap;cursor:pointer;font-family:inherit}
.mktg-root .slog .fill:hover{background:var(--bd);color:#fff}
.mktg-root .slog .src{font-size:12px;font-weight:700;color:var(--ik2)}
.mktg-root .slog .tick{color:var(--ok);font-size:16px;font-weight:900}
.mktg-root .slog .cross{color:var(--bd);font-size:15px;font-weight:900}
.mktg-root .slog .dash{color:#CFCABE}
.mktg-root .slog .t-link a{color:var(--ik3);text-decoration:none;font-size:14px}.mktg-root .slog .t-link a:hover{color:var(--fb)}
.mktg-root .slog .flag{display:block;margin-top:6px;font-size:9px;font-weight:800;padding:3px 7px;border-radius:5px;width:fit-content}
.mktg-root .slog .flag.r{background:var(--bdbg);color:var(--bd)}.mktg-root .slog .flag.y{background:var(--wnbg);color:var(--wn)}
.mktg-root .slog .lo{font-size:10px;font-weight:800;padding:5px 9px;border-radius:6px;background:#EFEDE8;color:var(--ik2);white-space:nowrap}
.mktg-root .slog .ed{border:1px solid var(--ln);background:#fff;color:var(--nv);border-radius:7px;padding:6px 11px;font-size:11px;font-weight:800;cursor:pointer;font-family:inherit}
.mktg-root .slog .ed:hover{border-color:var(--gd);background:var(--gdbg)}
.mktg-root .slog .ed.on{background:var(--nv);color:#fff;border-color:var(--nv)}
.mktg-root .slog .ndw{max-width:520px}
.mktg-root .slog .nd{font-size:12.5px;line-height:1.7;color:var(--ik);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.mktg-root .slog .nd.open{-webkit-line-clamp:unset;display:block}
.mktg-root .slog .more{border:none;background:transparent;color:var(--fb);font-size:11px;font-weight:800;padding:4px 0 0;cursor:pointer;font-family:inherit}
.mktg-root .slog .more:hover{text-decoration:underline}
.mktg-root .slog .dupw{margin-top:8px;display:flex;align-items:center;gap:8px}
.mktg-root .slog .dup{display:block;width:64px;height:5px;border-radius:4px;background:#E5E2DB;overflow:hidden;flex-shrink:0}
.mktg-root .slog .dup i{display:block;height:100%;border-radius:4px}
.mktg-root .slog .dup.hot i{background:var(--bd)}.mktg-root .slog .dup.mid i{background:var(--wn)}
.mktg-root .slog .dl{font-style:normal;font-size:10.5px;font-weight:700}
.mktg-root .slog .dl.hot{color:var(--bd)}.mktg-root .slog .dl.mid{color:var(--wn)}.mktg-root .slog .dl.ok{color:var(--ok)}
.mktg-root .slog .se-ein{width:100%;border:1px solid var(--ln);border-radius:7px;padding:7px 9px;font-size:12px;font-weight:700;color:var(--ik);background:#fff;font-family:inherit;height:auto}
.mktg-root .slog .se-ein:focus{outline:none;border-color:var(--gd);box-shadow:0 0 0 3px rgba(217,154,62,.18)}
.mktg-root .slog textarea.se-etx{min-height:62px;resize:vertical;line-height:1.5}
.mktg-root .slog .pg{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 15px;flex-wrap:wrap}
.mktg-root .slog .pg-i{font-size:11.5px;color:var(--ik3)}.mktg-root .slog .pg-i b{color:var(--ik)}
.mktg-root .slog .pg-b{display:flex;gap:4px;flex-wrap:wrap}
.mktg-root .slog .pg-b button{border:1px solid var(--ln);background:var(--cd);color:var(--nv);border-radius:7px;padding:7px 11px;font-size:11.5px;font-weight:700;cursor:pointer;font-family:inherit}
.mktg-root .slog .pg-b button.on{background:var(--nv);border-color:var(--nv);color:#fff}
@media(max-width:860px){
 .mktg-root .slog .kpi{grid-template-columns:1fr 1fr}
 .mktg-root .slog .arow{grid-template-columns:1fr}.mktg-root .slog .abtn{width:100%}
 .mktg-root .slog .book table{min-width:0}.mktg-root .slog .book thead{display:none}
 .mktg-root .slog .book tbody tr{display:block;border:1px solid var(--ln);border-left:4px solid var(--ln);border-radius:11px;margin:0 0 9px;background:#fff}
 .mktg-root .slog .book tbody tr.r-r{border-left-color:var(--bd)}.mktg-root .slog .book tbody tr.r-y{border-left-color:var(--wn)}
 .mktg-root .slog .book tbody tr.r-r td:first-child,.mktg-root .slog .book tbody tr.r-y td:first-child{box-shadow:none}
 .mktg-root .slog .book tbody td{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;padding:8px 12px}
 .mktg-root .slog .book tbody td::before{content:attr(data-l);font-size:9px;text-transform:uppercase;color:var(--ik3);font-weight:800;flex-shrink:0;padding-top:3px}
 .mktg-root .slog .t-ngay{padding-left:12px}.mktg-root .slog .t-nd{flex-direction:column}.mktg-root .slog .t-nd::before{margin-bottom:6px}
 .mktg-root .slog .ndw{max-width:none}.mktg-root .slog .ed{width:100%}
}
.mktg-root .u-edit.wide{min-width:220px;white-space:normal}
/* ════ TAB NGUỒN — sn- (bám mockup-seeding-nguon.html · tái dùng biến & khung .slog) ════ */
.mktg-root .slog .sn-kp{cursor:pointer;transition:border-color .12s,box-shadow .12s}
.mktg-root .slog .sn-kp:hover{border-color:var(--nv)}
.mktg-root .slog .sn-kp.on{border-color:var(--nv);box-shadow:0 0 0 2px rgba(19,36,67,.14)}
.mktg-root .slog .sn-kp.r.on{border-color:var(--bd);box-shadow:0 0 0 2px rgba(185,58,44,.16)}
.mktg-root .slog .sn-kp.y.on{border-color:var(--wn);box-shadow:0 0 0 2px rgba(184,132,43,.16)}
.mktg-root .slog .sn-kp.g.on{border-color:var(--ok);box-shadow:0 0 0 2px rgba(45,122,86,.16)}
.mktg-root .slog .kp-a{font-size:10px;font-weight:800;color:var(--ik3);margin-top:5px}
.mktg-root .slog .sn-kp.r .kp-a{color:var(--bd)}.mktg-root .slog .sn-kp.y .kp-a{color:var(--wn)}.mktg-root .slog .sn-kp.g .kp-a{color:var(--ok)}
/* ô thêm nguồn (6 cột) */
.mktg-root .slog .sn-arow{display:grid;grid-template-columns:1.3fr 1.6fr 1fr 132px 108px 84px;gap:9px;align-items:end}
.mktg-root .slog .sn-add{border:1px solid #EAD8B4;background:#fff;border-radius:8px;padding:10px 11px;font-size:12.5px;font-weight:700;color:var(--ik);width:100%;height:40px;font-family:inherit}
.mktg-root .slog .sn-add:focus{outline:none;border-color:var(--gd);box-shadow:0 0 0 3px rgba(217,154,62,.18)}
.mktg-root .slog .sn-add::placeholder{color:#C9C2B4;font-weight:400}
.mktg-root .slog .sn-kenh{background:#F3EFE7;color:#8A6119;font-weight:800;border-color:#EAD8B4;cursor:default}
.mktg-root .slog .sn-achk{margin-top:9px}
.mktg-root .slog .sn-achk:empty{margin-top:0}
.mktg-root .slog .sn-req{font-size:11.5px;font-weight:700;color:var(--bd);background:var(--bdbg);border:1px solid #EFD3CE;border-radius:8px;padding:8px 11px}
.mktg-root .slog .sn-dup{font-size:11.5px;font-weight:700;color:#8A6119;background:var(--wnbg);border:1px solid #EAD8B4;border-left:3px solid var(--wn);border-radius:8px;padding:8px 11px;line-height:1.6}.mktg-root .slog .sn-dup b{color:var(--ik)}
/* thanh lọc */
.mktg-root .slog .sn-kchips{display:flex;gap:5px;flex-wrap:wrap}
.mktg-root .slog .sn-kchips button{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--ln);background:#fff;color:var(--ik2);border-radius:8px;padding:6px 11px;font-size:11.5px;font-weight:800;cursor:pointer;font-family:inherit}
.mktg-root .slog .sn-kchips button .ki{width:13px;height:13px}
.mktg-root .slog .sn-kchips button b{font-size:9.5px;font-weight:900;color:var(--ik3)}
.mktg-root .slog .sn-kchips button:hover{border-color:var(--nv)}
.mktg-root .slog .sn-kchips button.on{background:var(--nv);border-color:var(--nv);color:#fff}.mktg-root .slog .sn-kchips button.on b{color:#fff;opacity:.75}
.mktg-root .slog .sn-f2seg{display:flex;gap:3px;background:#EBE8E2;border-radius:8px;padding:3px;margin-left:6px}
.mktg-root .slog .sn-f2seg button{border:none;background:transparent;border-radius:6px;padding:6px 11px;font-size:11px;font-weight:800;color:var(--ik3);display:flex;align-items:center;gap:5px;cursor:pointer;font-family:inherit}
.mktg-root .slog .sn-f2seg button b{font-size:9px;font-weight:900;opacity:.7}
.mktg-root .slog .sn-f2seg button.on{background:var(--nv);color:#fff}
/* cảnh báo tự bảo vệ cột Tệp khách (VIỆC 0) */
.mktg-root .slog .sn-tepwarn{margin:11px 15px 0;font-size:11.5px;font-weight:700;color:#8A6119;background:var(--wnbg);border:1px solid #EAD8B4;border-left:3px solid var(--wn);border-radius:8px;padding:9px 12px;line-height:1.6}.mktg-root .slog .sn-tepwarn b{color:var(--ik)}
/* bảng nguồn */
.mktg-root .slog .sn-tbl{width:100%;border-collapse:collapse;min-width:940px;background:transparent;margin:0}
.mktg-root .slog .sn-tw{overflow-x:auto}
.mktg-root .slog .sn-tbl .tnw{display:inline-flex;align-items:center;gap:8px}
.mktg-root .slog .sn-tbl .tn{font-weight:800;color:var(--ik)}
.mktg-root .slog .sn-tbl .tn-link{color:var(--nv);text-decoration:none;cursor:pointer;border-bottom:1px dotted var(--ln)}
.mktg-root .slog .sn-tbl .tn-link:hover{color:var(--gd);border-bottom-color:var(--gd)}
.mktg-root .slog .sn-tbl .olk{display:inline-flex;align-items:center;gap:4px;flex-shrink:0;font-size:11.5px;font-weight:800;color:var(--nv);text-decoration:none;border:1px solid var(--ln);background:#fff;border-radius:7px;padding:4px 9px;white-space:nowrap}
.mktg-root .slog .sn-tbl .olk:hover{border-color:var(--gd);background:var(--gdbg);color:#8A6119}
.mktg-root .slog .sn-tbl .olk-i{font-size:14px;line-height:1}
.mktg-root .slog .sn-tbl .tflag{display:block;margin-top:5px;font-size:9.5px;font-weight:800;color:var(--bd);background:var(--bdbg);border-radius:5px;padding:3px 7px;width:fit-content}
.mktg-root .slog .sn-tbl .sl{font-size:15px;font-weight:900;color:var(--ik);margin-right:6px}
.mktg-root .slog .sn-tbl .cu{font-size:10.5px;color:var(--ik3);font-weight:700}.mktg-root .slog .sn-tbl .cu.no{color:var(--bd)}
.mktg-root .slog .sn-tbl .uu{font-size:10px;font-weight:800;padding:5px 9px;border-radius:6px;white-space:nowrap}
.mktg-root .slog .sn-tbl .uu.hi{background:var(--gdbg);color:#8A6119;border:1px solid #EAD8B4}
.mktg-root .slog .sn-tbl .uu.md{background:#EFEDE8;color:var(--ik2)}
.mktg-root .slog .sn-tbl .uu.low{background:#F1F0EC;color:var(--ik3)}
.mktg-root .slog .sn-tbl .kt{font-size:10.5px;font-weight:800;padding:5px 10px;border-radius:20px;white-space:nowrap}
.mktg-root .slog .sn-tbl .kt.ok{background:var(--okbg);color:var(--ok)}
.mktg-root .slog .sn-tbl .kt.bad{background:var(--bdbg);color:var(--bd)}
.mktg-root .slog .sn-tbl .kt.warn{background:var(--wnbg);color:var(--wn)}
/* dùng lại kiểu bảng/mobile của .book */
.mktg-root .slog .sn-tbl thead th{background:var(--sf);border-bottom:2px solid var(--ln);font-size:8.5px;letter-spacing:.07em;text-transform:uppercase;text-align:left;padding:12px 14px;font-weight:800;color:var(--ik2);white-space:nowrap}
.mktg-root .slog .sn-tbl tbody tr{border-bottom:1px solid var(--ln)}
.mktg-root .slog .sn-tbl tbody tr:nth-child(even){background:var(--sf)}
.mktg-root .slog .sn-tbl tbody tr:hover{background:#F0EEE9}
.mktg-root .slog .sn-tbl tbody td{padding:13px 14px;font-size:12.5px;vertical-align:middle}
.mktg-root .slog .sn-tbl tbody tr.r-r td:first-child{box-shadow:inset 4px 0 0 var(--bd)}
.mktg-root .slog .sn-tbl tbody tr.r-y td:first-child{box-shadow:inset 4px 0 0 var(--wn)}
.mktg-root .slog .sn-tbl tbody tr.sn-editing{background:var(--gdbg)}
.mktg-root .slog .sn-tbl .d1{font-weight:800;color:var(--ik2);white-space:nowrap}
.mktg-root .slog .sn-tbl .d8{text-align:right}
/* VIỆC 6 — cụm gộp */
.mktg-root .slog .sn-cumtop{display:flex;align-items:center;gap:11px;padding:13px 15px;border-bottom:1px solid var(--ln);background:var(--sf)}
.mktg-root .slog .sn-cumhint{font-size:11.5px;color:var(--ik2);font-weight:700}
.mktg-root .slog .sn-cumempty{padding:26px 16px;text-align:center;color:var(--ok);font-weight:700;font-size:13px}
.mktg-root .slog .sn-cum{border:1px solid var(--ln);border-radius:12px;margin:13px 15px;overflow:hidden;background:#fff}
.mktg-root .slog .sn-cum-h{display:flex;align-items:center;gap:9px;padding:11px 15px;background:var(--bdbg);border-bottom:1px solid #EFD3CE}
.mktg-root .slog .sn-cum-n{font-size:11px;font-weight:900;color:var(--bd);text-transform:uppercase;letter-spacing:.05em}
.mktg-root .slog .sn-cum-l{font-size:12.5px;font-weight:800;color:var(--ik)}
.mktg-root .slog .sn-cum-c{font-size:11px;color:var(--ik3);font-weight:700;margin-left:auto}
.mktg-root .slog .sn-cum-b{padding:9px 15px}
.mktg-root .slog .sn-ci{display:flex;align-items:center;gap:10px;padding:9px 11px;border:1px solid var(--ln);border-radius:9px;margin-bottom:7px;background:var(--sf)}
.mktg-root .slog .sn-ci:last-child{margin-bottom:0}
.mktg-root .slog .sn-ci.keep{background:var(--okbg);border-color:#BFDECB}
.mktg-root .slog .sn-ci .cdot{width:8px;height:8px;border-radius:50%;background:var(--ik3);flex-shrink:0}
.mktg-root .slog .sn-ci.keep .cdot{background:var(--ok)}
.mktg-root .slog .sn-ci .cma{font-size:11.5px;font-weight:900;color:var(--ik2);width:66px;flex-shrink:0}
.mktg-root .slog .sn-ci .cten{font-size:12.5px;font-weight:700;color:var(--ik);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mktg-root .slog .sn-ci .ccmt{font-size:11.5px;color:var(--ik2);font-weight:700;white-space:nowrap}.mktg-root .slog .sn-ci .ccmt b{color:var(--ik);font-size:13px}
.mktg-root .slog .sn-ci .ccu{font-size:10.5px;color:var(--ik3);white-space:nowrap;width:64px;text-align:right;flex-shrink:0}
.mktg-root .slog .sn-ci .cbadge{font-size:9px;font-weight:900;letter-spacing:.04em;padding:4px 8px;border-radius:20px;background:#EFEDE8;color:var(--ik3);white-space:nowrap;flex-shrink:0}
.mktg-root .slog .sn-ci.keep .cbadge{background:var(--ok);color:#fff}
.mktg-root .slog .sn-cum-f{display:flex;align-items:center;gap:10px;padding:11px 15px;border-top:1px solid var(--ln2);background:var(--sf);flex-wrap:wrap}
.mktg-root .slog .cum-t{font-size:11px;color:var(--ik2);line-height:1.55;flex:1;min-width:180px}.mktg-root .slog .cum-t b{color:var(--ik)}
.mktg-root .slog .cum-note{font-size:10.5px;color:var(--ik3);font-style:italic}
.mktg-root .slog .cbtn{border:1px solid var(--ln);background:#fff;border-radius:8px;padding:8px 13px;font-size:11.5px;font-weight:800;cursor:pointer;font-family:inherit}
.mktg-root .slog .cbtn.no{color:var(--ik2)}.mktg-root .slog .cbtn.no:hover{border-color:var(--nv)}
.mktg-root .slog .cbtn.go{background:var(--bd);border-color:var(--bd);color:#fff}.mktg-root .slog .cbtn.go:hover{background:#A32E22}
@media(max-width:860px){
 .mktg-root .slog .sn-arow{grid-template-columns:1fr;gap:7px}
 .mktg-root .slog .sn-arow .abtn{margin-top:4px}
 .mktg-root .slog .sn-tbl{min-width:0;display:block}.mktg-root .slog .sn-tbl thead{display:none}.mktg-root .slog .sn-tbl tbody{display:block}
 .mktg-root .slog .sn-tbl tbody tr{display:block;border:1px solid var(--ln);border-left:4px solid var(--ln);border-radius:11px;margin:0 0 9px;padding:2px 0;background:#fff}
 .mktg-root .slog .sn-tbl tbody tr.r-r{border-left-color:var(--bd)}.mktg-root .slog .sn-tbl tbody tr.r-y{border-left-color:var(--wn)}
 .mktg-root .slog .sn-tbl tbody tr.r-r td:first-child,.mktg-root .slog .sn-tbl tbody tr.r-y td:first-child{box-shadow:none}
 .mktg-root .slog .sn-tbl tbody td{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 12px;min-width:0}
 .mktg-root .slog .sn-tbl tbody td>*{min-width:0}
 .mktg-root .slog .sn-tbl .tnw{flex-wrap:wrap;min-width:0}.mktg-root .slog .sn-tbl .tn{white-space:normal;overflow-wrap:anywhere}
 .mktg-root .slog .sn-tbl .tflag{overflow-wrap:anywhere;word-break:break-word}
 .mktg-root .slog .sn-tbl tbody td::before{content:attr(data-l);font-size:9px;text-transform:uppercase;color:var(--ik3);font-weight:800;flex-shrink:0}
 .mktg-root .slog .sn-tbl .d8{justify-content:flex-end}.mktg-root .slog .sn-tbl .d8 .ed{width:100%}
 .mktg-root .slog .sn-tbl .d8::before{display:none}
 .mktg-root .slog .sn-cum-c{margin-left:0;width:100%}
 .mktg-root .slog .sn-ci{flex-wrap:wrap}.mktg-root .slog .sn-ci .cten{flex:1 1 100%;white-space:normal}
 .mktg-root .slog .sn-f2seg{margin-left:0;width:100%;justify-content:space-between}
}
/* badge nền tảng + trạng thái seeding */
.mktg-root .nen-fb{background:#EAF0F8;color:#2F5FA8}
.mktg-root .nen-tiktok{background:#ECECEC;color:#111}
.mktg-root .nen-thread{background:#ECECEC;color:#111}
.mktg-root .ti-nuoi{background:#EAF0F8;color:#2F5FA8}
.mktg-root .ti-dung{background:#E8F3ED;color:#2E7D5B}
.mktg-root .ti-cham{background:#FBEFE0;color:#B9791C}
.mktg-root .ti-nghi{background:#ECECEC;color:#6b6b6b}
.mktg-root .ti-khoa{background:#FBEAE7;color:#C0392B}
.mktg-root .tn-theodoi{background:#E8F3ED;color:#2E7D5B}
.mktg-root .tn-tam{background:#ECECEC;color:#6b6b6b}
.mktg-root .ph-co{background:#E8F3ED;color:#2E7D5B}
.mktg-root .ph-khong{background:#ECECEC;color:#6b6b6b}
.mktg-root .lap-yes{background:#FBEAE7;color:#C0392B}
.mktg-root .lap-no{background:#E8F3ED;color:#2E7D5B}
.mktg-root .kt-ok{background:#E8F3ED;color:#2E7D5B}
.mktg-root .kt-trung{background:#FBEAE7;color:#C0392B}
.mktg-root .lo-cg{background:#EAF0F8;color:#2F5FA8}
.mktg-root .lo-cd{background:#FBF1DC;color:#9C6A16}
/* ô đăng nhập nick */
.mktg-root .logincell{font-size:12px;min-width:230px}
.mktg-root .se-tk{color:var(--soft);word-break:break-all}
.mktg-root .se-pwline{margin-top:2px}
.mktg-root .pw,.mktg-root .pw2{font-family:monospace;letter-spacing:1px}
.mktg-root .eye{border:none;background:#f1ece1;border-radius:6px;cursor:pointer;font-size:12px;padding:1px 6px}
.mktg-root .se-noperm{font-size:11px;color:var(--soft)}
.mktg-root .se-mini{border:none;background:#f1ece1;border-radius:6px;cursor:pointer;font-size:13px;padding:1px 7px;line-height:1}
.mktg-root .se-mini:hover{background:#e6dfd0}
.mktg-root .flag{font-size:10px;font-weight:700;color:var(--red);margin-left:5px;white-space:nowrap}
.mktg-root .se-limit{width:54px;padding:5px 7px;border-radius:7px;border:1px solid var(--line);font-size:12px;font-family:'Roboto',sans-serif}
.mktg-root .kbar{height:8px;background:var(--gold-cream);border-radius:999px;overflow:hidden;min-width:90px;flex:1;max-width:160px}
.mktg-root .kbar>i{display:block;height:100%;background:linear-gradient(90deg,var(--gold),var(--gold-ink))}
/* modal thêm/sửa nick */
.mktg-root .se-ov{position:fixed;inset:0;background:rgba(13,27,51,.55);display:flex;align-items:flex-start;justify-content:center;padding:24px 14px;z-index:1200;overflow:auto}
.mktg-root .se-card{background:#fff;border-radius:14px;width:640px;max-width:96vw;box-shadow:0 20px 60px rgba(13,27,51,.35)}
.mktg-root .se-cardh{display:flex;align-items:center;justify-content:space-between;font-size:16px;font-weight:900;color:var(--navy);padding:15px 18px;border-bottom:1px solid var(--line)}
.mktg-root .se-x{border:none;background:#f1ece1;border-radius:8px;width:30px;height:30px;cursor:pointer;font-size:18px;line-height:1}
.mktg-root .se-form{display:grid;grid-template-columns:1fr 1fr;gap:11px 14px;padding:16px 18px}
.mktg-root .se-form label{display:flex;flex-direction:column;gap:4px;font-size:11.5px;font-weight:700;color:var(--soft)}
.mktg-root .se-form .se-full{grid-column:1/-1}
.mktg-root .se-in{padding:8px 10px;border-radius:9px;border:1px solid var(--line);font-size:13px;font-family:'Roboto',sans-serif;color:var(--text);font-weight:400}
.mktg-root .se-seclabel{font-size:12px;font-weight:700;color:var(--gold-ink);background:var(--gold-pale);border:1px dashed var(--gold-light);border-radius:9px;padding:8px 11px;margin-top:4px}
.mktg-root .se-cardf{display:flex;justify-content:flex-end;gap:9px;padding:13px 18px;border-top:1px solid var(--line)}
.mktg-root .se-save{background:var(--navy);color:#fff;border:none;border-radius:9px;padding:9px 18px;font-size:13px;font-weight:700;cursor:pointer}
.mktg-root .se-save:hover{background:#16294a}
@media(max-width:860px){ .mktg-root .se-form{grid-template-columns:1fr} }

/* ════════════════════════════════════════════════════════════
   MỤC — KHO CÂU TRẢ LỜI (bám mockup-marketing-kho-cau-tra-loi.html)
   ════════════════════════════════════════════════════════════ */
.mktg-root .faq-subtabs{display:flex;gap:8px;margin:0 0 14px;flex-wrap:wrap}
.mktg-root .faq-subtab{border:1px solid var(--line);background:#fff;border-radius:11px;padding:11px 16px;font-size:13.5px;font-weight:700;color:var(--soft);cursor:pointer;display:flex;align-items:center;gap:7px}
.mktg-root .faq-subtab .n{font-size:11px;background:var(--gold-cream);color:var(--gold-ink);border-radius:999px;padding:1px 8px;font-weight:700}
.mktg-root .faq-subtab.active{background:var(--navy);color:#fff;border-color:var(--navy)}
.mktg-root .faq-subtab.active .n{background:var(--gold);color:#3a2708}
.mktg-root .faq-pane{display:none}
.mktg-root .faq-pane.active{display:block}
.mktg-root .faq-meta{font-size:11.5px;color:var(--soft);margin-bottom:14px}
.mktg-root .faq-meta b{color:var(--navy)}
.mktg-root .searchrow{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px}
.mktg-root .search-box{flex:1;min-width:220px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:10px 14px;font-size:13.5px;color:var(--text);font-family:'Roboto',sans-serif}
.mktg-root .search-box:focus{outline:2px solid var(--gold)}
.mktg-root .badge.topic{background:var(--gold-cream);color:var(--gold-ink)}
.mktg-root .vai-cg{background:#EAF0F8;color:#2F5FA8}
.mktg-root .vai-cd{background:#FBF1DC;color:#9C6A16}
.mktg-root .vai-kb{background:#E8F3ED;color:#2E7D5B}
.mktg-root .faq-card{background:#fff;border:1px solid var(--line);border-radius:13px;padding:15px 17px;margin-bottom:13px}
.mktg-root .faq-q{font-size:14.5px;font-weight:700;color:var(--navy);display:flex;align-items:flex-start;gap:8px;flex-wrap:wrap;margin-bottom:10px}
.mktg-root .faq-q .qt{flex:1;min-width:0}
.mktg-root .cmt-head{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:9px;align-items:center}
.mktg-root .ans{display:flex;gap:10px;align-items:flex-start;background:var(--gold-pale);border:1px solid #f0e6cf;border-radius:10px;padding:10px 12px;margin-top:8px}
.mktg-root .copytext{flex:1;font-size:13px;color:var(--text);min-width:0}
.mktg-root .faq-ed[contenteditable="true"]{outline:none;cursor:text}
.mktg-root .faq-ed[contenteditable="true"]:focus{background:#fff;border-radius:6px;box-shadow:0 0 0 2px var(--gold);padding:2px 4px}
.mktg-root .copybtn{flex:none;border:none;background:linear-gradient(135deg,var(--gold),var(--gold-ink));color:#fff;font-size:12px;font-weight:700;padding:6px 12px;border-radius:8px;cursor:pointer;white-space:nowrap}
.mktg-root .copybtn:hover{filter:brightness(1.05)}
.mktg-root .copybtn:active{transform:translateY(1px)}
.mktg-root .ans .faqdel{flex:none;border:none;background:#FCEDEA;color:var(--red);width:28px;height:28px;border-radius:7px;cursor:pointer;font-weight:700;font-size:15px}
.mktg-root .faq-mini{border:1px dashed var(--gold-light);background:var(--gold-pale);color:var(--gold-ink);padding:5px 11px;border-radius:8px;font-size:12px;font-weight:700;cursor:pointer}
.mktg-root .faq-csel{max-width:200px}
.mktg-root .faq-empty{text-align:center;color:var(--soft);font-size:13px;padding:24px}

/* ════════════════════════════════════════════════════════════
   TAB — QUẢNG CÁO ADS (bám mockup-marketing-ads.html)
   ════════════════════════════════════════════════════════════ */
.mktg-root .ads-toolbar{background:#fff;border:1px solid var(--line);border-radius:13px;padding:12px 14px;margin-bottom:16px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.mktg-root .ads-segq{display:inline-flex;background:var(--gold-cream);border-radius:10px;padding:3px;gap:2px}
.mktg-root .ads-segq button{border:none;background:transparent;padding:7px 14px;border-radius:8px;font-size:12.5px;font-weight:700;color:var(--gold-ink);cursor:pointer;white-space:nowrap}
.mktg-root .ads-segq button.active{background:var(--navy);color:#fff}
.mktg-root .ads-segq button .c{font-size:11px;opacity:.7;margin-left:3px}
.mktg-root .ads-search{flex:1;min-width:160px;background:var(--bg);border:1px solid var(--line);border-radius:9px;padding:8px 13px;font-size:13px;color:var(--text);font-family:'Roboto',sans-serif}
.mktg-root .ads-search:focus{outline:2px solid var(--gold);background:#fff}
.mktg-root .ads-sep{width:1px;height:26px;background:var(--line)}
.mktg-root .viewtoggle{display:inline-flex;border:1px solid var(--line);border-radius:9px;overflow:hidden;margin-left:auto}
.mktg-root .viewtoggle button{border:none;background:#fff;padding:8px 13px;font-size:12.5px;font-weight:700;color:var(--soft);cursor:pointer}
.mktg-root .viewtoggle button.active{background:var(--navy);color:#fff}
.mktg-root .ads-rescount{font-size:12px;color:var(--soft);margin:0 0 12px 2px}.mktg-root .ads-rescount b{color:var(--navy)}
.mktg-root .empty{text-align:center;color:var(--soft);font-size:13px;padding:30px}
/* badge màu */
.mktg-root .dg-anh{background:#EAF0F8;color:#2F5FA8}.mktg-root .dg-reel{background:#FBF1DC;color:#9C6A16}.mktg-root .dg-video{background:#E9E6F0;color:#0D1B33}
.mktg-root .sp-vaycuoi{background:#FBEFE0;color:#B9791C}.mktg-root .sp-anhcuoi{background:#FBF1DC;color:#9C6A16}.mktg-root .sp-feedback{background:#E8F3ED;color:#2E7D5B}.mktg-root .sp-dn{background:#EAF0F8;color:#2F5FA8}.mktg-root .sp-dt{background:#E6EEF0;color:#2C6E7A}.mktg-root .sp-ns{background:#F0EDE6;color:#7A5C2C}
.mktg-root .md-remarketing{background:#EAF0F8;color:#2F5FA8}.mktg-root .md-khuyenmai{background:#FBEAE7;color:#C0392B}.mktg-root .md-tuyensinh{background:#E8F3ED;color:#2E7D5B}.mktg-root .md-tuyennhansu{background:#FBEFE0;color:#B9791C}.mktg-root .md-thuhutkhach{background:#F4E9EE;color:#7A2942}
.mktg-root .ts-chay{background:#E8F3ED;color:#2E7D5B}.mktg-root .ts-dung{background:#FBEAE7;color:#C0392B}
.mktg-root .dx-new{background:#FBEFE0;color:#B9791C}.mktg-root .dx-ok{background:#E8F3ED;color:#2E7D5B}
/* lưới thẻ */
.mktg-root .gal{display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(248px,1fr))}
.mktg-root .gcard{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .15s,transform .15s}
.mktg-root .gcard:hover{box-shadow:0 10px 26px rgba(13,27,51,.12);transform:translateY(-2px)}
.mktg-root .gthumb{height:138px;display:flex;align-items:center;justify-content:center;font-size:46px;position:relative;overflow:hidden}
.mktg-root .gthumb-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.mktg-root .gthumb .st{position:absolute;top:9px;right:9px}
.mktg-root .gthumb .rib{position:absolute;top:9px;left:9px;background:#fff;color:var(--amber);border:1px solid var(--amber);font-size:10.5px;font-weight:700;padding:2px 9px;border-radius:999px;z-index:1}
.mktg-root .th-vaycuoi{background:linear-gradient(135deg,#F6E0C0,#EDB96A)}.mktg-root .th-anhcuoi{background:linear-gradient(135deg,#FBF1DC,#E1A146)}.mktg-root .th-feedback{background:linear-gradient(135deg,#D9EFE3,#7FC3A0)}.mktg-root .th-dn{background:linear-gradient(135deg,#DCE6F4,#7FA0D0)}.mktg-root .th-dt{background:linear-gradient(135deg,#D6EAEE,#7FB8C3)}.mktg-root .th-ns{background:linear-gradient(135deg,#EDE3D6,#C3A77F)}
.mktg-root .gbody{padding:12px 14px;display:flex;flex-direction:column;gap:8px;flex:1}
.mktg-root .gtitle{font-size:13.5px;font-weight:700;color:var(--navy);line-height:1.35}
.mktg-root .gbadges{display:flex;gap:5px;flex-wrap:wrap}
.mktg-root .gmeta{font-size:11.5px;color:var(--soft);line-height:1.5}
.mktg-root .gnote{font-size:11.5px;color:var(--amber);background:var(--gold-pale);border-radius:7px;padding:5px 8px}
.mktg-root .gfoot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;padding-top:9px;border-top:1px solid var(--line)}
.mktg-root .gprice{font-size:14px;font-weight:900;color:var(--gold-ink)}
.mktg-root .gactions{display:flex;gap:6px}
.mktg-root .gbtn{border:none;background:var(--navy);color:#fff;font-size:11.5px;font-weight:700;padding:6px 11px;border-radius:8px;cursor:pointer}
.mktg-root .gdel{border:none;background:#FCEDEA;color:var(--red);width:30px;border-radius:8px;cursor:pointer;font-weight:700;font-size:15px}
/* bảng */
.mktg-root .ads-tblwrap{overflow-x:auto;background:#fff;border:1px solid var(--line);border-radius:13px;padding:6px 10px}
.mktg-root .ads-tbl{min-width:940px}
.mktg-root .ads-tbl .t-name{font-weight:700;color:var(--navy);display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.mktg-root .ads-tbl .t-sub{font-size:11px;color:var(--soft);margin-top:3px}
.mktg-root tr.warn-row{background:#FFF7EE}
.mktg-root .thumb{width:54px;height:40px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:19px;flex:none;overflow:hidden;position:relative}
.mktg-root .thumb-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.mktg-root .ads-thumbprev{width:74px;height:54px;border-radius:9px;border:1px solid var(--line);background:var(--gold-cream);display:flex;align-items:center;justify-content:center;font-size:24px;overflow:hidden;flex:none}
.mktg-root .ads-thumbprev img{width:100%;height:100%;object-fit:cover}
@media(max-width:860px){ .mktg-root .gal{grid-template-columns:1fr} .mktg-root .viewtoggle{margin-left:0} }

/* ═══════════════ BÁO CÁO MARKETING (gộp) — prefix .rpt-wrap (bám mockup-marketing-baocao.html) ═══════════════ */
.mktg-root .rpt-pane{display:none}
.mktg-root .rpt-pane.active{display:block}
.mktg-root .rpt-loading{padding:34px 8px;text-align:center;color:var(--soft);font-size:13.5px}
.mktg-root .rpt-wrap .sec-title{font-size:13px;font-weight:900;color:var(--navy);margin:4px 0 11px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.mktg-root .rpt-wrap .sec-title .ic{font-size:15px}
.mktg-root .rpt-wrap .sec-title .hint{font-size:11px;font-weight:600;color:var(--soft)}
.mktg-root .rpt-wrap .eval{font-size:10.5px;font-weight:700;padding:2px 10px;border-radius:999px;white-space:nowrap}
.mktg-root .rpt-wrap .eval.tot{background:#E8F3ED;color:#2E7D5B}
.mktg-root .rpt-wrap .eval.kha{background:#FBEFE0;color:#B9791C}
.mktg-root .rpt-wrap .eval.can{background:#FBEAE7;color:#C0392B}
.mktg-root .rpt-wrap .kbar{height:8px;background:var(--gold-cream);border-radius:999px;overflow:hidden}
.mktg-root .rpt-wrap .kbar>i{display:block;height:100%}
.mktg-root .rpt-wrap .pbar{height:7px;background:var(--gold-cream);border-radius:999px;overflow:hidden;margin-top:10px}
.mktg-root .rpt-wrap .pbar>i{display:block;height:100%;background:linear-gradient(90deg,var(--gold),var(--gold-ink))}
.mktg-root .rpt-wrap .kpi-grid{display:grid;gap:13px;grid-template-columns:repeat(auto-fill,minmax(195px,1fr));margin-bottom:22px}
.mktg-root .rpt-wrap .kpi{background:#fff;border:1px solid var(--line);border-radius:14px;padding:15px 16px}
.mktg-root .rpt-wrap .kpi .lab{font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--soft)}
.mktg-root .rpt-wrap .kpi .val{font-size:27px;font-weight:900;color:var(--navy);margin-top:6px;line-height:1}
.mktg-root .rpt-wrap .kpi .row{display:flex;align-items:center;gap:8px;margin-top:8px;flex-wrap:wrap}
.mktg-root .rpt-wrap .kpi .sub{font-size:11px;color:var(--soft)}
.mktg-root .rpt-wrap .delta{font-size:11.5px;font-weight:700;padding:1px 8px;border-radius:999px}
.mktg-root .rpt-wrap .delta.up{background:#E8F3ED;color:#2E7D5B}
.mktg-root .rpt-wrap .delta.down{background:#FBEAE7;color:#C0392B}
.mktg-root .rpt-wrap .delta.flat{background:#ECECEC;color:#6b6b6b}
.mktg-root .rpt-wrap .mang-grid{display:grid;gap:13px;grid-template-columns:repeat(auto-fill,minmax(235px,1fr));margin-bottom:22px}
.mktg-root .rpt-wrap .mcard{background:#fff;border:1px solid var(--line);border-left-width:5px;border-radius:13px;padding:14px 16px}
.mktg-root .rpt-wrap .mcard.s-ok{border-left-color:var(--green,#2E7D5B)}
.mktg-root .rpt-wrap .mcard.s-warn{border-left-color:var(--amber,#B9791C)}
.mktg-root .rpt-wrap .mcard.s-bad{border-left-color:var(--red,#C0392B)}
.mktg-root .rpt-wrap .mcard .mh{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:9px}
.mktg-root .rpt-wrap .mcard .mt{font-size:13.5px;font-weight:800;color:var(--navy);display:flex;align-items:center;gap:7px}
.mktg-root .rpt-wrap .sbadge{font-size:10px;font-weight:700;padding:2px 9px;border-radius:999px}
.mktg-root .rpt-wrap .sbadge.s-ok{background:#E8F3ED;color:#2E7D5B}
.mktg-root .rpt-wrap .sbadge.s-warn{background:#FBEFE0;color:#B9791C}
.mktg-root .rpt-wrap .sbadge.s-bad{background:#FBEAE7;color:#C0392B}
.mktg-root .rpt-wrap .mline{font-size:12.5px;color:var(--text);padding:3px 0;display:flex;justify-content:space-between;gap:10px}
.mktg-root .rpt-wrap .mline b{color:var(--navy);font-weight:700}
.mktg-root .rpt-wrap .mline .mut{color:var(--soft)}
.mktg-root .rpt-wrap .todo{background:#fff;border:1px solid var(--line);border-radius:14px;padding:6px 8px}
.mktg-root .rpt-wrap .titem{display:flex;gap:12px;align-items:flex-start;padding:11px 10px;border-bottom:1px solid var(--line)}
.mktg-root .rpt-wrap .titem:last-child{border-bottom:none}
.mktg-root .rpt-wrap .titem .ti-ic{width:30px;height:30px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:15px;flex:none;background:var(--gold-cream)}
.mktg-root .rpt-wrap .titem.lv-bad .ti-ic{background:#FBEAE7}
.mktg-root .rpt-wrap .titem.lv-warn .ti-ic{background:#FBEFE0}
.mktg-root .rpt-wrap .titem .ti-t{font-size:13px;font-weight:700;color:var(--navy)}
.mktg-root .rpt-wrap .titem .ti-s{font-size:12px;color:var(--soft);margin-top:2px}
.mktg-root .rpt-wrap .titem .ti-s b{color:var(--gold-ink)}
.mktg-root .rpt-wrap .pos{background:#fff;border:1px solid var(--line);border-radius:14px;padding:15px 17px;margin-bottom:15px}
.mktg-root .rpt-wrap .pos-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:6px}
.mktg-root .rpt-wrap .pos-ic{width:40px;height:40px;border-radius:11px;background:var(--gold-cream);display:flex;align-items:center;justify-content:center;font-size:20px;flex:none}
.mktg-root .rpt-wrap .pos-name{font-size:15px;font-weight:900;color:var(--navy)}
.mktg-root .rpt-wrap .pos-tags{display:flex;gap:7px;flex-wrap:wrap;margin-left:auto}
.mktg-root .rpt-wrap .pchip{font-size:11px;font-weight:700;background:var(--bg);border:1px solid var(--line);border-radius:999px;padding:3px 11px;color:var(--navy)}
.mktg-root .rpt-wrap .pchip b{color:var(--gold-ink)}
.mktg-root .rpt-wrap .pos-do{font-size:11.5px;color:var(--soft);margin-bottom:12px}
.mktg-root .rpt-wrap .pos-do b{color:var(--navy)}
.mktg-root .rpt-wrap .prow{display:flex;align-items:center;gap:12px;padding:9px 4px;border-top:1px solid var(--line)}
.mktg-root .rpt-wrap .rank{width:24px;height:24px;border-radius:7px;background:var(--navy);color:#fff;font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center;flex:none}
.mktg-root .rpt-wrap .rank.r1{background:linear-gradient(135deg,var(--gold),var(--gold-ink))}
.mktg-root .rpt-wrap .prow .pn{font-weight:700;color:var(--navy);font-size:13.5px;min-width:88px}
.mktg-root .rpt-wrap .prow .pc{font-size:12px;color:var(--soft);flex:1;min-width:110px}
.mktg-root .rpt-wrap .kpibar{display:flex;align-items:center;gap:9px;min-width:140px}
.mktg-root .rpt-wrap .kpibar .kbar{flex:1;max-width:110px}
.mktg-root .rpt-wrap .kpct{font-size:12px;font-weight:700;color:var(--navy);width:40px}
.mktg-root .rpt-wrap .card2{background:#fff;border:1px solid var(--line);border-radius:15px;padding:16px 18px;margin-bottom:14px}
.mktg-root .rpt-wrap .card2 .c2h{font-size:12.5px;font-weight:900;color:var(--navy);text-transform:uppercase;letter-spacing:.04em;display:flex;align-items:center;gap:8px;margin-bottom:13px;flex-wrap:wrap}
.mktg-root .rpt-wrap .card2 .c2h .ic{font-size:15px}
.mktg-root .rpt-wrap .card2 .c2h .right{margin-left:auto;font-size:11px;font-weight:700}
.mktg-root .rpt-wrap .subh{font-size:11.5px;font-weight:800;color:var(--gold-ink);text-transform:uppercase;letter-spacing:.04em;margin:14px 0 9px}
.mktg-root .rpt-wrap .subh:first-child{margin-top:0}
.mktg-root .rpt-wrap .ov2{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.mktg-root .rpt-wrap .av-lg{width:60px;height:60px;border-radius:18px;background:linear-gradient(135deg,var(--gold),var(--gold-ink));color:#fff;font-weight:900;font-size:25px;display:flex;align-items:center;justify-content:center;flex:none}
.mktg-root .rpt-wrap .ov2 .who .nm2{font-size:20px;font-weight:900;color:var(--navy)}
.mktg-root .rpt-wrap .ov2 .who .vt2{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px;align-items:center}
.mktg-root .rpt-wrap .vtbadge{font-size:10.5px;font-weight:700;background:var(--gold-cream);color:var(--gold-ink);border-radius:999px;padding:2px 11px}
.mktg-root .rpt-wrap .coach{font-size:11px;font-weight:800;border-radius:999px;padding:4px 13px}
.mktg-root .rpt-wrap .coach.xs{background:#E8F3ED;color:#2E7D5B}
.mktg-root .rpt-wrap .coach.od{background:#EAF0F8;color:#2F5FA8}
.mktg-root .rpt-wrap .coach.kc{background:#FBEAE7;color:#C0392B}
.mktg-root .rpt-wrap .ov2 .nums{display:flex;gap:13px;margin-left:auto;flex-wrap:wrap}
.mktg-root .rpt-wrap .numbox{background:var(--gold-pale);border:1px solid #f0e6cf;border-radius:13px;padding:10px 15px;text-align:center;min-width:82px}
.mktg-root .rpt-wrap .numbox .v{font-size:23px;font-weight:900;color:var(--navy);line-height:1}
.mktg-root .rpt-wrap .numbox .l{font-size:9.5px;color:var(--soft);text-transform:uppercase;letter-spacing:.05em;margin-top:4px}
.mktg-root .rpt-wrap .numbox .up{color:#2E7D5B}
.mktg-root .rpt-wrap .numbox .down{color:#C0392B}
.mktg-root .rpt-wrap .numbox .flat{color:var(--soft)}
.mktg-root .rpt-wrap .planstrip{font-size:12.5px;color:var(--soft);margin:0 0 14px 2px}
.mktg-root .rpt-wrap .planbadge{font-size:11px;font-weight:800;border-radius:999px;padding:3px 12px}
.mktg-root .rpt-wrap .planbadge.yes{background:#E8F3ED;color:#2E7D5B}
.mktg-root .rpt-wrap .planbadge.no{background:#FBEAE7;color:#C0392B}
.mktg-root .rpt-wrap .jrow{display:flex;align-items:center;gap:12px;padding:9px 0;border-bottom:1px solid var(--line)}
.mktg-root .rpt-wrap .jrow:last-child{border-bottom:none}
.mktg-root .rpt-wrap .jrow .jt{font-size:13px;font-weight:600;color:var(--navy);flex:1;min-width:0}
.mktg-root .rpt-wrap .jrow .jbar{width:90px;height:7px;background:var(--gold-cream);border-radius:999px;overflow:hidden;flex:none}
.mktg-root .rpt-wrap .jrow .jbar>i{display:block;height:100%}
.mktg-root .rpt-wrap .jrow .jv{font-size:12.5px;font-weight:700;width:120px;text-align:right;color:var(--navy)}
.mktg-root .rpt-wrap .rate{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 0;border-bottom:1px solid var(--line)}
.mktg-root .rpt-wrap .rate:last-child{border-bottom:none}
.mktg-root .rpt-wrap .rate .rl{font-size:13px;color:var(--navy);font-weight:600}
.mktg-root .rpt-wrap select.dg-tot{background:#E8F3ED;color:#2E7D5B;border-color:#cde9da}
.mktg-root .rpt-wrap select.dg-kha{background:#FBEFE0;color:#B9791C;border-color:#f0dcc0}
.mktg-root .rpt-wrap select.dg-can{background:#FBEAE7;color:#C0392B;border-color:#f1d3cb}
.mktg-root .rpt-wrap .chk{display:flex;align-items:flex-start;gap:10px;padding:8px 0;border-bottom:1px dashed var(--line)}
.mktg-root .rpt-wrap .chk:last-of-type{border-bottom:none}
.mktg-root .rpt-wrap .chk input{width:18px;height:18px;margin-top:1px;accent-color:var(--gold-ink);cursor:pointer;flex:none}
.mktg-root .rpt-wrap .chk .ct{font-size:13px;color:var(--text);flex:1;background:#fffdf7;border:1px solid #efe6cf;border-radius:6px;padding:4px 8px}
.mktg-root .rpt-wrap .chk.done .ct{text-decoration:line-through;color:var(--soft);background:#f4f1ea}
.mktg-root .rpt-wrap .chk .cdel{border:none;background:#FCEDEA;color:#C0392B;width:24px;height:24px;border-radius:6px;cursor:pointer;font-weight:700;flex:none}
.mktg-root .rpt-wrap .miniadd{margin-top:10px;background:#fff;border:1px dashed var(--gold);color:var(--gold-ink);padding:7px 13px;border-radius:9px;font-size:12px;font-weight:700;cursor:pointer}
.mktg-root .rpt-wrap .miniadd:hover{background:var(--gold-pale)}
.mktg-root .rpt-wrap .empti{font-size:12.5px;color:var(--soft);padding:6px 0}
.mktg-root .rpt-wrap .leadtag{font-size:9.5px;font-weight:700;color:var(--gold-ink);background:var(--gold-cream);border-radius:999px;padding:1px 8px}
.mktg-root .rpt-wrap .noteinput{width:100%;border:1px solid var(--line);border-radius:10px;padding:9px 12px;font-size:13px;font-family:inherit;resize:vertical;min-height:56px;color:var(--text)}
.mktg-root .rpt-wrap .noteinput:focus{outline:2px solid var(--gold)}
.mktg-root .rpt-wrap .savebtn{margin-top:8px;background:linear-gradient(135deg,var(--gold),var(--gold-ink));color:#fff;border:none;padding:8px 16px;border-radius:9px;font-size:12.5px;font-weight:700;cursor:pointer}
.mktg-root .rpt-wrap .nlist{margin-top:13px;display:flex;flex-direction:column;gap:9px}
.mktg-root .rpt-wrap .nitem{background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:9px 12px}
.mktg-root .rpt-wrap .nitem .nd{font-size:11px;color:var(--gold-ink);font-weight:700;margin-bottom:3px}
.mktg-root .rpt-wrap .nitem .nt{font-size:12.5px}
.mktg-root .rpt-wrap .md{display:grid;grid-template-columns:240px 1fr;gap:15px;align-items:start}
.mktg-root .rpt-wrap .md-list{background:#fff;border:1px solid var(--line);border-radius:14px;padding:8px;display:flex;flex-direction:column;gap:3px;max-height:680px;overflow:auto}
.mktg-root .rpt-wrap .md-row{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:10px;cursor:pointer}
.mktg-root .rpt-wrap .md-row:hover{background:var(--bg)}
.mktg-root .rpt-wrap .md-row.active{background:var(--navy)}
.mktg-root .rpt-wrap .md-row.active .mr-n{color:#fff}
.mktg-root .rpt-wrap .md-row.active .mr-v{color:var(--gold-cream)}
.mktg-root .rpt-wrap .av-sm{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--gold-ink));color:#fff;font-weight:800;font-size:13px;display:flex;align-items:center;justify-content:center;flex:none}
.mktg-root .rpt-wrap .mr-n{font-size:13px;font-weight:700;color:var(--navy);line-height:1.15}
.mktg-root .rpt-wrap .mr-v{font-size:10px;color:var(--soft)}
.mktg-root .rpt-wrap .mr-mid{margin-top:4px;display:flex;align-items:center;gap:6px}
.mktg-root .rpt-wrap .mr-mid .kbar{flex:1;max-width:70px}
.mktg-root .rpt-wrap .mr-mid .mp{font-size:10.5px;font-weight:700;color:var(--soft)}
.mktg-root .rpt-wrap .mr-dot{width:9px;height:9px;border-radius:50%;flex:none}
.mktg-root .rpt-wrap .dot-xs{background:#2E7D5B}
.mktg-root .rpt-wrap .dot-od{background:#2F5FA8}
.mktg-root .rpt-wrap .dot-kc{background:#C0392B}
@media(max-width:860px){
  .mktg-root .rpt-wrap .kpi-grid{grid-template-columns:1fr 1fr}
  .mktg-root .rpt-wrap .mang-grid{grid-template-columns:1fr 1fr}
  .mktg-root .rpt-wrap .md{grid-template-columns:1fr}
  .mktg-root .rpt-wrap .md-list{flex-direction:row;overflow-x:auto;max-height:none;padding-bottom:10px}
  .mktg-root .rpt-wrap .md-row{flex:none;width:188px}
  .mktg-root .rpt-wrap .mr-mid .kbar{max-width:90px}
  .mktg-root .rpt-wrap .ov2 .nums{margin-left:0;width:100%}
  .mktg-root .rpt-wrap .prow{flex-wrap:wrap}
  .mktg-root .rpt-wrap .prow .pc{min-width:100%;order:3}
}

/* ════════════════════════════════════════════════════════════
   TAB — EDITOR – DỰNG VIDEO (bám mockup-marketing-editor.html)
   Prefix edv- · tái dùng .page-head/.rolebar/.warn-bar/.stat/.panel/.tbl/.btn-add
   ════════════════════════════════════════════════════════════ */
.mktg-root .edv-subtabs{display:flex;gap:8px;margin:0 0 16px;overflow-x:auto;padding-bottom:2px}
.mktg-root .edv-subtab{flex:none;border:1px solid var(--line);background:#fff;border-radius:11px;padding:10px 15px;font-size:13px;font-weight:700;color:var(--soft);cursor:pointer;white-space:nowrap}
.mktg-root .edv-subtab.active{background:var(--navy);color:#fff;border-color:var(--navy)}
.mktg-root .edv-pane{display:none}.mktg-root .edv-pane.active{display:block}
.mktg-root .edv-empty{text-align:center;color:var(--soft);font-size:13px;padding:18px}
/* INTAKE — Hàng chờ giao */
.mktg-root .edv-intake{background:#FFFCF6;border:1px solid var(--gold-light);border-radius:14px;padding:13px 15px;margin-bottom:14px}
.mktg-root .edv-intake-h{font-size:13px;font-weight:900;color:var(--gold-ink);display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:11px}
.mktg-root .edv-intake-h .cnt{font-size:11px;background:var(--gold);color:#3a2708;border-radius:999px;padding:1px 9px}
.mktg-root .edv-intake-h .hint{font-size:11px;font-weight:600;color:var(--soft)}
.mktg-root .edv-intake-list{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}
.mktg-root .edv-icard{background:#fff;border:1px solid var(--line);border-left:4px solid var(--gold);border-radius:11px;padding:11px 13px}
.mktg-root .edv-giao-row{display:flex;gap:6px;margin-top:10px}.mktg-root .edv-giao-row .select{flex:1}
.mktg-root .edv-giao-btn{border:none;background:linear-gradient(135deg,var(--gold),var(--gold-ink));color:#fff;border-radius:8px;padding:6px 12px;font-size:12px;font-weight:700;cursor:pointer;white-space:nowrap}
/* KANBAN */
/* ⚠ minmax(0,1fr) BẮT BUỘC — đừng đổi về 1fr:
   `1fr` = `minmax(auto,1fr)`, cận dưới AUTO = min-content. Tên việc dán cả link dài
   ("Mẫu váy: https://… Nhạc: https://…") là chuỗi KHÔNG có chỗ ngắt → min-content cột
   "Đã đăng" = 1141px → cột đó giành hết chỗ, 3 cột kia bị ép còn 162/80/194px = VỠ GIAO DIỆN.
   Đo thật 16/07: 1fr → 162|80|194|1141 · minmax(0,1fr) → 316|316|316|316.
   (.edv-d-t đã có ellipsis sẵn, nhưng ellipsis KHÔNG cứu được vì min-content vẫn tính
    theo chữ nowrap đầy đủ — phải chặn ở TRACK.) Dùng chung cho kanban Editor + Quay phim. */
.mktg-root .edv-kan{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.mktg-root .edv-kcol{background:#fff;border:1px solid var(--line);border-radius:13px;padding:10px;min-height:120px;border-top-width:3px}
.mktg-root .edv-kcol.c-chodung{border-top-color:var(--amber)}.mktg-root .edv-kcol.c-dangdung{border-top-color:var(--blue)}.mktg-root .edv-kcol.c-choduyet{border-top-color:var(--gold)}.mktg-root .edv-kcol.c-dadang{border-top-color:var(--green)}
.mktg-root .edv-kcol-h{display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:800;color:var(--navy);margin-bottom:10px;padding:2px 4px}
.mktg-root .edv-kcol-h .cnt{font-size:11px;background:var(--gold-cream);color:var(--gold-ink);border-radius:999px;padding:1px 8px}
.mktg-root .edv-kcard{background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:10px;margin-bottom:8px}
.mktg-root .edv-kcard.late{border-color:#e7b3aa;background:#FDF3F0}
.mktg-root .edv-kc-t{font-size:12.5px;font-weight:700;color:var(--navy);line-height:1.32}
.mktg-root .edv-kc-meta{display:flex;gap:5px;flex-wrap:wrap;margin-top:7px}
.mktg-root .edv-kc-by{font-size:10.5px;color:var(--soft);margin-top:6px}.mktg-root .edv-kc-by b{color:var(--navy)}
.mktg-root .edv-kc-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:9px}
.mktg-root .edv-dl{font-size:11px;font-weight:700}
.mktg-root .edv-dl.dl-late{color:var(--red)}.mktg-root .edv-dl.dl-soon{color:var(--amber)}.mktg-root .edv-dl.dl-ok{color:var(--soft)}.mktg-root .edv-dl.dl-done{color:var(--green)}
.mktg-root .edv-kmove{display:flex;gap:4px}
.mktg-root .edv-kmove button{border:1px solid var(--line);background:#fff;border-radius:6px;width:26px;height:24px;cursor:pointer;font-weight:700;color:var(--navy);font-size:12px}
.mktg-root .edv-kmove button:hover{background:var(--gold-pale)}.mktg-root .edv-kmove button:disabled{opacity:.35;cursor:not-allowed}
.mktg-root .edv-kc-edit{border:1px solid var(--line);background:#fff;border-radius:6px;width:26px;height:24px;cursor:pointer;font-weight:700;color:var(--gold-ink);font-size:12px;flex:none}
.mktg-root .edv-kc-edit:hover{background:var(--gold-pale);border-color:var(--gold)}
/* BADGES */
.mktg-root .edv-badge{font-size:10px;font-weight:700;padding:2px 8px;border-radius:999px;white-space:nowrap}
.mktg-root .edv-badge.b-edt{background:#EAF0F8;color:#2F5FA8}
.mktg-root .edv-badge.nhanh{background:#FDEFD6;color:#9C6A16}
.mktg-root .edv-badge.b-loai{background:#F0EDE6;color:#7A5C2C}
.mktg-root .edv-badge.ng-quay{background:#E8F3ED;color:#2E7D5B}
.mktg-root .edv-badge.ng-video_noibo{background:#EAF0F8;color:#2F5FA8}
.mktg-root .edv-badge.ng-ugc{background:#FBEFE0;color:#B9791C}
.mktg-root .edv-badge.ng-phat_sinh{background:#F0EDE6;color:#7A5C2C}
/* VIỆC CỦA TÔI */
.mktg-root .edv-mybar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px}
.mktg-root .edv-mybar .lb{font-size:12px;font-weight:700;color:var(--gold-ink)}
.mktg-root .edv-vrow{background:#fff;border:1px solid var(--line);border-left-width:4px;border-radius:11px;padding:12px 14px;margin-bottom:9px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.mktg-root .edv-vrow.late{border-left-color:var(--red)}.mktg-root .edv-vrow.soon{border-left-color:var(--amber)}.mktg-root .edv-vrow.ok{border-left-color:var(--blue)}.mktg-root .edv-vrow.done{border-left-color:var(--green)}
.mktg-root .edv-vt{font-size:13.5px;font-weight:700;color:var(--navy);flex:1;min-width:160px}
.mktg-root .edv-vmeta{display:flex;gap:6px;flex-wrap:wrap}
.mktg-root .edv-stbadge{font-size:10px;font-weight:700;padding:2px 9px;border-radius:999px}
.mktg-root .edv-stbadge.st-chogiao{background:#F0EDE6;color:#7A5C2C}
.mktg-root .edv-stbadge.st-chodung{background:#FBEFE0;color:#B9791C}
.mktg-root .edv-stbadge.st-dangdung{background:#EAF0F8;color:#2F5FA8}
.mktg-root .edv-stbadge.st-choduyet{background:#FBF1DC;color:#9C6A16}
.mktg-root .edv-stbadge.st-dadang{background:#E8F3ED;color:#2E7D5B}
/* NĂNG SUẤT */
.mktg-root .edv-ns-grid{display:grid;gap:13px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
.mktg-root .edv-nscard{border:1px solid var(--line);border-radius:13px;padding:13px 15px;background:var(--gold-pale)}
.mktg-root .edv-nshead{display:flex;align-items:center;gap:10px;margin-bottom:9px}
.mktg-root .edv-av{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--gold-ink));color:#fff;font-weight:800;font-size:15px;display:flex;align-items:center;justify-content:center;flex:none}
.mktg-root .edv-nsname{font-size:14px;font-weight:800;color:var(--navy)}.mktg-root .edv-nsrole{font-size:11px;color:var(--soft)}
.mktg-root .edv-nsbig{margin-left:auto;text-align:right}.mktg-root .edv-nsbig .v{font-size:22px;font-weight:900;color:var(--gold-ink);line-height:1}.mktg-root .edv-nsbig .l{font-size:9.5px;color:var(--soft);text-transform:uppercase}
.mktg-root .edv-nschips{display:flex;gap:5px;flex-wrap:wrap}.mktg-root .edv-nschip{font-size:10.5px;font-weight:700;background:#fff;border:1px solid var(--line);border-radius:999px;padding:2px 9px;color:var(--navy)}.mktg-root .edv-nschip b{color:var(--gold-ink)}
.mktg-root .edv-lk{color:var(--blue);cursor:pointer;font-size:12.5px;text-decoration:none}
/* MODAL Giao nhanh (edv-ov/edv-modal — KHÔNG dùng .modal toàn cục của app) */
.edv-ov{position:fixed;inset:0;background:rgba(13,27,51,.45);display:none;align-items:center;justify-content:center;z-index:10050;padding:16px}
.edv-ov.show{display:flex}
.edv-ov .edv-modal{background:#fff;border-radius:16px;padding:20px 20px 16px;width:420px;max-width:96vw;box-shadow:0 24px 60px rgba(13,27,51,.35);font-family:'Roboto',sans-serif;max-height:92vh;overflow-y:auto}
.edv-ov .edv-modal-h{font-size:16px;font-weight:900;color:#0D1B33}
.edv-ov .edv-modal-sub{font-size:12px;color:#8A8170;margin:4px 0 14px}
.edv-ov .edv-fld{display:block;margin-bottom:12px}.edv-ov .edv-fld>span{display:block;font-size:11.5px;font-weight:700;color:#9C6A16;margin-bottom:5px}
.edv-ov .edv-fld input,.edv-ov .edv-fld select{width:100%;border:1px solid #ECE5D8;border-radius:9px;padding:9px 11px;font-size:13px;font-family:inherit;color:#26221B}
.edv-ov .edv-fld input:focus,.edv-ov .edv-fld select:focus{outline:2px solid #E1A146}
.edv-ov .edv-chks{display:flex;gap:14px}.edv-ov .edv-chks label{font-size:13px;display:flex;align-items:center;gap:6px;color:#26221B;cursor:pointer}.edv-ov .edv-chks input{width:17px;height:17px;accent-color:#9C6A16}
.edv-ov .edv-modal-foot{display:flex;justify-content:flex-end;gap:9px;margin-top:6px}
.edv-ov .edv-mbtn{border:none;border-radius:9px;padding:9px 16px;font-size:13px;font-weight:700;cursor:pointer}
.edv-ov .edv-mbtn.ghost{background:#f1ece2;color:#8A8170}.edv-ov .edv-mbtn.go{background:linear-gradient(135deg,#E1A146,#9C6A16);color:#fff}
.edv-ov .edv-mbtn.del{background:#FCEDEA;color:#C0392B}.edv-ov .edv-mbtn.del:hover{background:#f6d7d0}
/* ── Editor bám mockup-editor-giao-viec + cot-dadang: link nút bấm · yêu cầu · Đã đăng gộp tuần · modal dán link (màu khoá cứng) ── */
.mktg-root .edv-kc-t.nhoi{font-size:11px;font-weight:600;color:#605B52;word-break:break-all;line-height:1.55}
.mktg-root .edv-dl.dl-none{color:#A29C90;font-weight:600}
.mktg-root .edv-chips{display:flex;gap:5px;flex-wrap:wrap;align-items:center;margin-top:8px}
.mktg-root .edv-chip{display:inline-flex;align-items:center;gap:5px;text-decoration:none;font-size:11px;font-weight:800;padding:5px 9px;border-radius:8px;border:1px solid var(--line);background:#fff;color:#605B52}
.mktg-root .edv-chip .ki{width:14px;height:14px;display:inline-flex;flex-shrink:0}.mktg-root .edv-chip .ki svg{width:100%;height:100%;display:block}
.mktg-root .edv-chip:hover{background:#F7F6F3}
.mktg-root .edv-chip.mau:hover{border-color:#1877F2}.mktg-root .edv-chip.nhac:hover{border-color:#B93A2C}.mktg-root .edv-chip.tulieu:hover{border-color:#2D7A56}
.mktg-root .edv-openall{border:1px dashed var(--line);background:transparent;color:#A29C90;border-radius:8px;padding:5px 9px;font-size:10.5px;font-weight:800;cursor:pointer;font-family:inherit}
.mktg-root .edv-openall:hover{border-color:var(--navy);color:var(--navy);background:#F7F6F3}
.mktg-root .edv-req{display:flex;gap:6px;align-items:flex-start;background:#F7F6F3;border-radius:8px;padding:7px 9px;font-size:11px;color:#605B52;line-height:1.5;margin-top:8px}
.mktg-root .edv-req .ki{width:13px;height:13px;flex-shrink:0;margin-top:1px}.mktg-root .edv-req .ki svg{width:100%;height:100%;display:block}
.mktg-root .edv-tachbtn{margin-top:8px;border:1px dashed #D99A3E;background:#FCF4E6;color:#8A6119;border-radius:8px;padding:6px 11px;font-size:11px;font-weight:800;cursor:pointer;font-family:inherit;display:block;width:100%}
.mktg-root .edv-tachbtn:hover{background:#D99A3E;color:#fff;border-style:solid}
.mktg-root .edv-kcol.dadang .edv-dgrp{border:1px solid var(--line);border-radius:10px;margin-bottom:8px;overflow:hidden}
.mktg-root .edv-dg-h{display:flex;align-items:center;gap:8px;padding:9px 11px;background:#F7F6F3;cursor:pointer}
.mktg-root .edv-dg-h:hover{background:#F0EEE9}
.mktg-root .edv-dg-t{font-size:12px;font-weight:800;flex:1;color:var(--navy)}
.mktg-root .edv-dg-n{font-size:10px;font-weight:900;padding:2px 8px;border-radius:20px;background:#E8F3ED;color:#2E7D5B}
.mktg-root .edv-dg-c{font-size:10px;color:#A29C90;transition:transform .15s}
.mktg-root .edv-dgrp.cl .edv-dg-c{transform:rotate(-90deg)}
.mktg-root .edv-dg-b{background:#fff}.mktg-root .edv-dgrp.cl .edv-dg-b{display:none}
.mktg-root .edv-drow{display:flex;align-items:center;gap:8px;padding:8px 11px;border-top:1px solid #EDEAE4;cursor:pointer}
.mktg-root .edv-drow:hover{background:#F7F6F3}
.mktg-root .edv-d-t{flex:1;font-size:12px;font-weight:700;color:var(--navy);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.mktg-root .edv-d-k{display:flex;gap:3px;flex-shrink:0}.mktg-root .edv-d-k .ki{width:13px;height:13px;display:inline-flex}.mktg-root .edv-d-k .ki svg{width:100%;height:100%;display:block}
.mktg-root .edv-d-e{font-size:10px;font-weight:800;padding:2px 7px;border-radius:5px;background:#FCF4E6;color:#8A6119;flex-shrink:0}
.mktg-root .edv-d-o{border:1px solid var(--line);background:#fff;color:var(--navy);border-radius:6px;padding:4px 9px;font-size:10.5px;font-weight:800;flex-shrink:0;text-decoration:none;cursor:pointer;font-family:inherit}
.mktg-root .edv-d-o:hover{border-color:#D99A3E;background:#FCF4E6}
.edv-ov .edv-att{background:#FCF4E6;border:2px dashed #D99A3E;border-radius:11px;padding:12px 13px;margin-bottom:13px}
.edv-ov .edv-att-h{display:flex;align-items:center;gap:7px;margin-bottom:9px;flex-wrap:wrap}
.edv-ov .edv-att-i{width:22px;height:22px;border-radius:6px;background:#D99A3E;color:#fff;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;flex-shrink:0}
.edv-ov .edv-att-t{font-size:12.5px;font-weight:800;color:#8A6119}
.edv-ov .edv-att-s{font-size:10.5px;color:#A88540;margin-left:auto}
.edv-ov .edv-att textarea{width:100%;border:1px solid #EAD8B4;background:#fff;border-radius:8px;padding:10px 11px;font-size:12px;line-height:1.6;color:#605B52;resize:vertical;min-height:58px;font-family:inherit}
.edv-ov .edv-att textarea:focus{outline:none;border-color:#D99A3E;box-shadow:0 0 0 3px rgba(217,154,62,.16)}
.edv-ov .edv-att textarea::placeholder{color:#C4BEB2}
.edv-ov .edv-att-go{margin-top:8px;border:none;background:#132443;color:#fff;border-radius:8px;padding:9px 14px;font-size:12px;font-weight:800;width:100%;cursor:pointer;font-family:inherit}
.edv-ov .edv-att-go:hover{background:#1D3358}
.edv-ov .edv-lnks{display:flex;flex-direction:column;gap:6px}.edv-ov .edv-lnks:not(:empty){margin-top:10px}
.edv-ov .edv-lnk{display:flex;align-items:center;gap:7px;background:#EAF4EF;border:1px solid #C9E0D4;border-radius:8px;padding:8px 10px}
.edv-ov .edv-lnk .ki{width:16px;height:16px;flex-shrink:0;display:inline-flex}.edv-ov .edv-lnk .ki svg{width:100%;height:100%;display:block}
.edv-ov .edv-lnk .u{flex:1;font-size:11px;color:#605B52;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.edv-ov .edv-lnk .op{border:1px solid #C9E0D4;background:#fff;color:#2D7A56;border-radius:6px;padding:4px 9px;font-size:10px;font-weight:800;text-decoration:none;cursor:pointer;flex-shrink:0}
.edv-ov .edv-lnk .op:hover{background:#2D7A56;color:#fff}
.edv-ov .edv-lnk .x{width:20px;height:20px;border:1px solid #C9E0D4;background:#fff;color:#A29C90;border-radius:5px;font-size:9px;cursor:pointer;font-family:inherit;flex-shrink:0}
.edv-ov .edv-lnk .x:hover{border-color:#B93A2C;color:#B93A2C}
.edv-ov .edv-zalo{display:flex;align-items:center;gap:7px;margin-top:9px;padding-top:9px;border-top:1px dashed #EAD8B4;font-size:11px;color:#8A6119;cursor:pointer}
.edv-ov .edv-zalo input{width:15px;height:15px;accent-color:#D99A3E}
.edv-ov .edv-opt{font-style:normal;text-transform:none;letter-spacing:0;color:#A29C90;font-weight:700;margin-left:4px}
.edv-ov .edv-fld>span .ki{width:14px;height:14px;display:inline-flex;vertical-align:-2px}.edv-ov .edv-fld>span .ki svg{width:100%;height:100%;display:block}
.edv-ov .edv-edin{width:100%;border:1px solid #ECE5D8;border-radius:9px;padding:9px 11px;font-size:13px;font-family:inherit;color:#26221B}
.edv-ov .edv-edin:focus{outline:2px solid #E1A146}.edv-ov .edv-edin::placeholder{color:#C4BEB2}
/* MOBILE: kanban xếp dọc, sub-tab cuộn ngang */
@media(max-width:860px){
  /* ⚠ minmax(0,1fr) chứ KHÔNG phải 1fr — cùng bẫy ở trên: đo thật khung 771px mà cột
     vẫn đòi 1141px vì tên việc chứa link dài → TRÀN NGANG trên điện thoại. */
  .mktg-root .edv-kan{grid-template-columns:minmax(0,1fr)}
  .mktg-root .edv-intake-list{grid-template-columns:minmax(0,1fr)}
}

/* ════════════════════════════════════════════════════════════
   TAB — QUAY PHIM (bám mockup-marketing-quayphim.html)
   Tái dùng khung edv- (subtabs/pane/intake/kan/kcard/mybar/nscard/ov); thêm màu/badge riêng qp-
   ════════════════════════════════════════════════════════════ */
.mktg-root .edv-kcol.c-lenlich{border-top-color:var(--amber)}
.mktg-root .edv-kcol.c-daquay{border-top-color:var(--blue)}
.mktg-root .edv-kcol.c-giaofile{border-top-color:var(--gold)}
.mktg-root .edv-kcol.c-guikhach{border-top-color:var(--green)}
.mktg-root .edv-stbadge.st-lenlich{background:#FBEFE0;color:#B9791C}
.mktg-root .edv-stbadge.st-daquay{background:#EAF0F8;color:#2F5FA8}
.mktg-root .edv-stbadge.st-giaofile{background:#FBF1DC;color:#9C6A16}
.mktg-root .edv-stbadge.st-guikhach{background:#E8F3ED;color:#2E7D5B}
.mktg-root .edv-badge.qp-ek{background:#EAF0F8;color:#2F5FA8}
.mktg-root .edv-badge.qp-ng-lich_khach{background:#FBEAE7;color:#C0392B}
.mktg-root .edv-badge.qp-ng-ke_hoach{background:#EAF0F8;color:#2F5FA8}
.mktg-root .edv-badge.qp-ng-phat_sinh{background:#F0EDE6;color:#7A5C2C}
.mktg-root .edv-badge.qp-lo-offline{background:#ECECEC;color:#666}
.mktg-root .edv-badge.qp-lo-hautruong{background:#FBF1DC;color:#9C6A16}
.mktg-root .edv-badge.qp-lo-quaymau{background:#E6EEF0;color:#2C6E7A}
.mktg-root .edv-badge.qp-lo-ugc{background:#FBEFE0;color:#B9791C}
.mktg-root .edv-badge.qp-lo-quayalbum{background:#E8F3ED;color:#2E7D5B}
.mktg-root .edv-badge.qp-lo-vlogmkt{background:#EAF0F8;color:#2F5FA8}
.mktg-root .edv-badge.qp-lo-egc1{background:#EDE6D4;color:#0D1B33}
.mktg-root .edv-badge.qp-lo-fbkhach{background:#FBEAE7;color:#C0392B}
.mktg-root .edv-badge.qp-lo-quaykhac{background:#EDE3D6;color:#7A5C2C}
.mktg-root .qp-when{font-size:11px;color:var(--soft);margin-top:6px}
.mktg-root .qp-src{font-size:10.5px;color:var(--green);background:#E8F3ED;border-radius:6px;padding:2px 7px;margin-top:6px;display:inline-block}
.mktg-root .qp-sdt{font-size:12px;color:var(--navy);white-space:nowrap}

/* ════════════════════════════════════════════════════════════
   QUAY PHIM — thẻ đầy đủ + phiếu giao việc + Kho file gốc
   (prefix qp2- thẻ · qp-ph- phiếu · qp-kho- kho · qp-filebox)
   ════════════════════════════════════════════════════════════ */
.mktg-root .edv-kcard[data-qpcard]{cursor:pointer}
.mktg-root .qp2-dateline{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:11.5px;color:var(--text);margin-top:6px}
.mktg-root .qp2-dateline .qi{color:var(--gold-deep)}
.mktg-root .qp2-cd{font-size:9.5px;font-weight:700;padding:2px 8px;border-radius:20px}
.mktg-root .qp2-cd.red{background:#FBEAE7;color:#C0392B}
.mktg-root .qp2-cd.gold{background:#FBF1DC;color:#9C6A16}
.mktg-root .qp2-cd.gray{background:#EEEAE1;color:#8A8170}
.mktg-root .qp2-cd.late{background:#F6D7D0;color:#A5261A}
.mktg-root .qp2-loc{font-size:11.5px;color:var(--soft);margin-top:4px}
.mktg-root .qp2-content{background:#FBF8F1;border:1px solid var(--gold-cream);border-radius:8px;padding:6px 10px;margin-top:8px;font-size:11.5px}
.mktg-root .qp2-content .cl{font-size:8.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--gold-ink);font-weight:700;margin-bottom:2px}
.mktg-root .qp2-content .cv{color:var(--navy);font-weight:700}
.mktg-root .qp2-ekline{display:flex;gap:12px;flex-wrap:wrap;font-size:11px;color:var(--soft);margin-top:7px}
.mktg-root .qp2-ekline b{color:var(--navy)}
.mktg-root .qp2-fileline{display:flex;align-items:center;gap:5px;flex-wrap:wrap;font-size:10.5px;color:var(--soft);margin-top:7px;padding-top:6px;border-top:1px dashed var(--line)}
.mktg-root .qp2-fileline code{background:#F3EEE2;border:1px solid var(--line);border-radius:5px;padding:1px 6px;color:var(--navy);font-weight:700}
.mktg-root .qp2-fileline.none{color:#B9791C}

/* Phiếu giao việc (overlay body-attached — dùng .edv-ov + màu literal) */
.edv-ov .qp-phieu{background:#fff;border-radius:16px;width:560px;max-width:96vw;max-height:92vh;overflow-y:auto;box-shadow:0 24px 60px rgba(13,27,51,.35);font-family:'Roboto',sans-serif;position:relative}
.edv-ov .qp-phieu::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:#E1A146;border-radius:16px 16px 0 0}
.edv-ov .qp-ph-hd{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:16px 18px;border-bottom:1px solid #ECE5D8;flex-wrap:wrap}
.edv-ov .qp-ph-nm{font-size:16px;font-weight:900;color:#0D1B33}
.edv-ov .qp-ph-src{font-size:10px;font-weight:700;padding:3px 11px;border-radius:20px;background:#EDE6F0;color:#7a5c8a}
.edv-ov .qp-ph-src.ps{background:#E9E4D6;color:#7c7160}
.edv-ov .qp-ph-src.noibo{background:#E7EEF7;color:#2F5FA8}
.edv-ov .qp-ph-b{padding:16px 18px}
.edv-ov .qp-fgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.edv-ov .qp-fg.full{grid-column:1/-1}
.edv-ov .qp-fg label{font-size:10px;letter-spacing:.03em;text-transform:uppercase;color:#8A8170;font-weight:700;display:block;margin-bottom:5px}
.edv-ov .qp-fg .sync{color:#7a5c8a;font-size:8.5px;margin-left:6px;text-transform:none;letter-spacing:0}
.edv-ov .qp-fg input,.edv-ov .qp-fg select,.edv-ov .qp-fg textarea{width:100%;border:1px solid #ECE5D8;background:#FCFAF5;border-radius:9px;padding:9px 11px;font-size:13px;font-family:inherit;color:#26221B}
.edv-ov .qp-fg textarea{min-height:56px;resize:vertical}
.edv-ov .qp-fg input:focus,.edv-ov .qp-fg select:focus,.edv-ov .qp-fg textarea:focus{outline:2px solid #E1A146}
.edv-ov .qp-fg.locked input{background:#F1ECE2;color:#8A8170}
.edv-ov .qp-lockhint{font-size:11px;color:#8A8170;background:#FBF8F1;border:1px solid #ECE5D8;border-radius:9px;padding:9px 12px;margin-top:12px;line-height:1.5}
.edv-ov .qp-lockhint b{color:#0D1B33}.edv-ov .qp-lockhint a{color:#2F5FA8;font-weight:700;cursor:pointer;white-space:nowrap}
.edv-ov .qp-filebox{margin-top:14px;background:#FBF8F1;border:1px solid #ECE5D8;border-radius:11px;padding:13px 14px}
.edv-ov .qp-filebox-l{font-size:11px;letter-spacing:.03em;text-transform:uppercase;color:#9C6A16;font-weight:700;margin-bottom:11px}
.edv-ov .qp-foldn{display:flex;gap:8px}
.edv-ov .qp-foldn input{flex:1;background:#fff;border:1px solid #ECE5D8;border-radius:8px;padding:9px 10px;font-size:13px;color:#0D1B33;font-weight:700;font-family:inherit}
.edv-ov .qp-copyfd{border:1px solid #0D1B33;background:#0D1B33;color:#fff;border-radius:8px;padding:0 14px;font-size:11.5px;font-weight:600;cursor:pointer;white-space:nowrap}
.edv-ov .qp-hintfd{font-size:10.5px;color:#8A8170;margin-top:5px}
.edv-ov .qp-chk{display:flex;align-items:center;gap:8px;margin-top:12px;font-size:13px;color:#0D1B33;font-weight:600;cursor:pointer}
.edv-ov .qp-chk input{width:17px;height:17px;accent-color:#2E7D5B}
.edv-ov .qp-ph-ft{display:flex;justify-content:flex-end;gap:9px;padding:0 18px 16px}
.edv-ov .qp-ph-ft .g{background:#fff;color:#0D1B33;border:1px solid #ECE5D8;border-radius:9px;padding:10px 18px;font-size:13px;font-weight:600;cursor:pointer}
.edv-ov .qp-ph-ft .navy{background:#0D1B33;color:#fff;border:none;border-radius:9px;padding:10px 20px;font-size:13px;font-weight:600;cursor:pointer}
@media(max-width:560px){.edv-ov .qp-fgrid{grid-template-columns:1fr}}

/* Kho file gốc */
.mktg-root .qp-kho-banner{display:flex;gap:11px;align-items:flex-start;background:#EAF1FB;border:1px solid #CFE0F4;border-radius:12px;padding:11px 14px;margin-bottom:14px;font-size:12px;line-height:1.5;color:#2b3a52}
.mktg-root .qp-kho-banner b{color:var(--navy)}
.mktg-root .qp-kho-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.mktg-root .qp-kho-search{display:flex;align-items:center;gap:8px;border:1px solid var(--line);background:#fff;border-radius:9px;padding:7px 12px;min-width:200px;flex:1}
.mktg-root .qp-kho-search input{border:none;outline:none;background:transparent;font-family:inherit;font-size:13px;flex:1;color:var(--text)}
.mktg-root .qp-kho-dd{border:1px solid var(--line);background:#fff;border-radius:9px;padding:8px 11px;font-size:12.5px;font-family:inherit;color:var(--navy)}
.mktg-root .qp-fd{background:#F3EEE2;border:1px solid var(--line);border-radius:6px;padding:2px 8px;font-size:11px;color:var(--navy);font-weight:700;white-space:nowrap}
.mktg-root .qp-drv{color:var(--blue);font-weight:700;margin-left:5px;font-size:10.5px;white-space:nowrap}
.mktg-root .qp-openc{color:var(--navy);font-weight:700;font-size:11.5px;border:1px solid var(--line);border-radius:8px;padding:5px 11px;background:#fff;cursor:pointer;white-space:nowrap}
.mktg-root .qp-openc:hover{border-color:var(--gold)}

/* ════════════════════════════════════════════════════════════
   EDITOR DỰNG VIDEO — link trên thẻ · kênh đã đăng · Kho video
   (bám mockup-marketing-editor-khovideo.html · prefix edv-)
   ════════════════════════════════════════════════════════════ */
.mktg-root .edv-kc-click{cursor:pointer}
.mktg-root .edv-kcard.done .edv-kc-click:hover .edv-kc-t{color:var(--gold-ink)}
.mktg-root .edv-kcard.done{border-top:3px solid var(--green)}
.mktg-root .edv-kc-src{margin-top:8px}
.mktg-root .edv-kc-src a,.mktg-root .edv-buoilk{color:var(--blue);font-weight:700;font-size:11px;cursor:pointer;text-decoration:none;white-space:nowrap}
.mktg-root .edv-kc-src a:hover,.mktg-root .edv-buoilk:hover{text-decoration:underline}
.mktg-root .edv-kc-link{display:flex;gap:6px;align-items:center;margin-top:9px}
.mktg-root .edv-kc-link input{flex:1;min-width:0;border:1px solid var(--line);background:#fff;border-radius:8px;padding:7px 9px;font-size:11.5px;font-family:inherit;color:var(--navy)}
.mktg-root .edv-kc-link input:focus{outline:2px solid var(--gold)}
.mktg-root .edv-kc-link input[readonly]{background:#F1ECE2;color:var(--soft)}
.mktg-root .edv-kc-lkopen{border:1px solid var(--navy);background:var(--navy);color:#fff;border-radius:8px;padding:0 11px;line-height:30px;font-size:11px;font-weight:600;text-decoration:none;white-space:nowrap}
.mktg-root .edv-kc-chans{margin-top:10px;padding-top:9px;border-top:1px dashed var(--line)}
.mktg-root .edv-kc-chl{font-size:9px;letter-spacing:.04em;text-transform:uppercase;color:var(--soft);font-weight:700;margin-bottom:7px}
.mktg-root .edv-chans{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.mktg-root .edv-chch{font-size:10px;font-weight:700;padding:4px 10px;border-radius:20px;display:inline-flex;align-items:center;gap:5px;white-space:nowrap}
.mktg-root .edv-chch::before{content:"✓";font-size:8px;opacity:.85}
.mktg-root .edv-chch.tik{background:#E6E9EF;color:var(--navy)}
.mktg-root .edv-chch.fb{background:#E7EEF7;color:var(--blue)}
.mktg-root .edv-chch.yt{background:#F8E4DF;color:var(--red)}
.mktg-root .edv-chch.ig{background:var(--gold-cream);color:var(--gold-ink)}
.mktg-root .edv-chch.th{background:#E9E4D6;color:#7c7160}
.mktg-root .edv-chch.other{background:#EDEAE2;color:#6a6152}
.mktg-root .edv-chlk{color:inherit;text-decoration:none;font-weight:900;opacity:.75}
.mktg-root .edv-chlk:hover{opacity:1}
.mktg-root .edv-chx{border:none;background:rgba(0,0,0,.08);color:#7a2820;width:16px;height:16px;border-radius:50%;cursor:pointer;font-weight:700;line-height:1;font-size:11px;padding:0}
.mktg-root .edv-chx:hover{background:var(--red);color:#fff}
.mktg-root .edv-addch{border:1px dashed var(--gold);background:#fff;color:var(--gold-ink);border-radius:20px;padding:4px 12px;font-size:10.5px;font-weight:700;cursor:pointer}
.mktg-root .edv-addch:hover{background:var(--gold-pale)}
.mktg-root .edv-nochan{font-size:11px;color:var(--soft)}
.mktg-root .edv-openc{color:var(--navy);font-weight:700;font-size:11.5px;border:1px solid var(--line);border-radius:8px;padding:6px 11px;background:#fff;cursor:pointer;white-space:nowrap}
.mktg-root .edv-openc:hover{border-color:var(--gold);background:var(--gold-pale)}
.mktg-root .edv-kcard.edv-flash{outline:3px solid var(--gold);outline-offset:2px;animation:edvFlash 2.2s ease}
@keyframes edvFlash{0%{background:var(--gold-cream)}100%{background:var(--bg)}}
/* Kho video — bảng auto-view */
.mktg-root .edv-kho-scroll{overflow-x:auto}
.mktg-root .edv-kho-tbl{width:100%;border-collapse:collapse;min-width:860px}
.mktg-root .edv-kho-tbl thead th{background:var(--navy);color:#fff;font-size:9.5px;letter-spacing:.04em;text-transform:uppercase;text-align:left;padding:11px 12px;font-weight:700;white-space:nowrap}
.mktg-root .edv-kho-tbl tbody td{padding:11px 12px;border-bottom:1px solid var(--line);vertical-align:middle}
.mktg-root .edv-kho-tbl tbody tr:last-child td{border-bottom:none}
.mktg-root .edv-kho-tbl tbody tr:nth-child(even){background:#FBF8F1}
.mktg-root .edv-kho-tbl tbody tr:hover{background:var(--gold-pale)}
.mktg-root .edv-kho-ng{font-weight:800;color:var(--navy);white-space:nowrap}
.mktg-root .edv-kho-nm{font-size:12.5px;font-weight:700;color:var(--navy);margin-bottom:3px}
.mktg-root .edv-kho-sub{font-size:10.5px;color:var(--soft)}
.mktg-root .edv-kho-open{text-align:right}
@media(max-width:860px){
  .mktg-root .edv-kho-tbl{min-width:0;display:block}
  .mktg-root .edv-kho-tbl thead{display:none}
  .mktg-root .edv-kho-tbl tbody,.mktg-root .edv-kho-tbl tr{display:block}
  .mktg-root .edv-kho-tbl tbody tr{border:1px solid var(--line);border-radius:11px;margin-bottom:12px;background:#fff;overflow:hidden}
  .mktg-root .edv-kho-tbl tbody td{display:flex;justify-content:space-between;gap:12px;align-items:center;text-align:right;padding:9px 12px}
  .mktg-root .edv-kho-tbl tbody td::before{content:attr(data-l);color:var(--soft);font-weight:700;font-size:10px;text-transform:uppercase;text-align:left;flex:none}
  .mktg-root .edv-kho-tbl .edv-chans{justify-content:flex-end}
  .mktg-root .edv-kho-open{justify-content:flex-end}
  .mktg-root .edv-kc-link input{font-size:12px}
}
/* Phiếu đầy đủ (modal edv-ov, body-attached — màu literal) */
.edv-ov .edv-ed-srcline{font-size:12px;color:#26221B;background:#FBF8F1;border:1px solid #ECE5D8;border-radius:9px;padding:9px 12px;margin-bottom:14px}
.edv-ov .edv-ed-srcline .edv-ed-srclb{font-weight:700;color:#9C6A16;margin-right:5px}
.edv-ov .edv-ed-srcline .edv-lk{color:#2F5FA8;font-weight:700;cursor:pointer;text-decoration:none;white-space:nowrap}
.edv-ov .edv-ed-done{color:#8A8170;font-size:11.5px}
.edv-ov #edv-ed-chans .edv-chans{display:flex;gap:6px;flex-wrap:wrap}
.edv-ov #edv-ed-chans .edv-chch{font-size:10.5px;font-weight:700;padding:4px 10px;border-radius:20px;display:inline-flex;align-items:center;gap:5px}
.edv-ov #edv-ed-chans .edv-chch::before{content:"✓";font-size:8px;opacity:.85}
.edv-ov #edv-ed-chans .edv-chch.tik{background:#E6E9EF;color:#0D1B33}
.edv-ov #edv-ed-chans .edv-chch.fb{background:#E7EEF7;color:#2F5FA8}
.edv-ov #edv-ed-chans .edv-chch.yt{background:#F8E4DF;color:#C0392B}
.edv-ov #edv-ed-chans .edv-chch.ig{background:#FBF1DC;color:#9C6A16}
.edv-ov #edv-ed-chans .edv-chch.th{background:#E9E4D6;color:#7c7160}
.edv-ov #edv-ed-chans .edv-chch.other{background:#EDEAE2;color:#6a6152}
.edv-ov #edv-ed-chans .edv-chlk{color:inherit;text-decoration:none;font-weight:900;opacity:.75}
.edv-ov .edv-ed-chhint{font-size:11px;color:#8A8170;margin-top:6px}

/* ════════════════════════════════════════════════════════════
   TAB — CÀI ĐẶT PHÒNG MARKETING (bám mockup-marketing-caidat.html) · prefix cdm-
   ════════════════════════════════════════════════════════════ */
.mktg-root .cdm-note{background:#FFF7EE;border:1px solid var(--gold-light);border-radius:11px;padding:10px 14px;font-size:12.5px;color:var(--gold-ink);font-weight:600;margin:14px 0 16px}
.mktg-root .cdm-wrap{display:grid;grid-template-columns:248px 1fr;gap:16px;align-items:start}
.mktg-root .cdm-menu{background:#fff;border:1px solid var(--line);border-radius:14px;padding:8px;display:flex;flex-direction:column;gap:3px;position:sticky;top:14px}
.mktg-root .cdm-smi{display:flex;align-items:center;gap:11px;padding:11px 13px;border-radius:10px;font-size:13px;font-weight:700;color:var(--soft);cursor:pointer}
.mktg-root .cdm-smi .ic{font-size:16px}.mktg-root .cdm-smi:hover{background:var(--bg)}.mktg-root .cdm-smi.active{background:var(--navy);color:#fff}
.mktg-root .cdm-panel{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px 20px;min-width:0}
.mktg-root .cdm-ph{font-size:16px;font-weight:900;color:var(--navy);display:flex;align-items:center;gap:9px}
.mktg-root .cdm-psub{font-size:12.5px;color:var(--soft);margin:4px 0 16px}
.mktg-root .cdm-sec{margin-bottom:20px}.mktg-root .cdm-sec:last-of-type{margin-bottom:0}
.mktg-root .cdm-sech{font-size:11.5px;font-weight:800;color:var(--gold-ink);text-transform:uppercase;letter-spacing:.04em;margin-bottom:10px}
.mktg-root .cdm-inp{border:1px solid var(--line);border-radius:8px;padding:8px 11px;font-size:13px;font-family:inherit;color:var(--text);width:100%}.mktg-root .cdm-inp:focus{outline:2px solid var(--gold)}
.mktg-root .cdm-inp.sm{width:92px}
.mktg-root .cdm-ck{width:18px;height:18px;accent-color:var(--gold-ink);cursor:pointer}
.mktg-root .cdm-sw{position:relative;display:inline-block;width:42px;height:24px;flex:none}.mktg-root .cdm-sw input{display:none}.mktg-root .cdm-sw i{position:absolute;inset:0;background:#d8d0c2;border-radius:999px;transition:.2s;cursor:pointer}.mktg-root .cdm-sw i:before{content:'';position:absolute;width:18px;height:18px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.2s}.mktg-root .cdm-sw input:checked+i{background:var(--green)}.mktg-root .cdm-sw input:checked+i:before{transform:translateX(18px)}
.mktg-root .cdm-swrow{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid var(--line)}.mktg-root .cdm-swrow:last-child{border-bottom:none}
.mktg-root .cdm-swrow .swl{font-size:13px;color:var(--navy);font-weight:600}.mktg-root .cdm-swrow .sws{font-size:11.5px;color:var(--soft);margin-top:2px}
.mktg-root .cdm-seg{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:14px}
.mktg-root .cdm-seg button{border:1px solid var(--line);background:#fff;border-radius:9px;padding:7px 13px;font-size:12.5px;font-weight:700;color:var(--soft);cursor:pointer}.mktg-root .cdm-seg button.active{background:var(--navy);color:#fff;border-color:var(--navy)}
.mktg-root .cdm-chips{display:flex;flex-wrap:wrap;margin-bottom:12px}
.mktg-root .cdm-chip{display:inline-flex;align-items:center;gap:7px;background:var(--gold-cream);color:var(--gold-ink);border-radius:999px;padding:5px 6px 5px 13px;font-size:12.5px;font-weight:600;margin:0 7px 7px 0}
.mktg-root .cdm-chip button{border:none;background:#fff;color:var(--red);width:20px;height:20px;border-radius:50%;cursor:pointer;font-weight:700;line-height:1}
.mktg-root .cdm-addrow{display:flex;gap:8px;max-width:380px}.mktg-root .cdm-addrow .cdm-inp{flex:1}
.mktg-root .cdm-btnmini{border:1px dashed var(--gold);background:#fff;color:var(--gold-ink);padding:8px 14px;border-radius:9px;font-size:12.5px;font-weight:700;cursor:pointer;white-space:nowrap}.mktg-root .cdm-btnmini:hover{background:var(--gold-pale)}
.mktg-root .cdm-frow{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 0;border-bottom:1px solid var(--line);flex-wrap:wrap}.mktg-root .cdm-frow:last-child{border-bottom:none}
.mktg-root .cdm-frow .fl{font-size:13px;color:var(--navy);font-weight:600}.mktg-root .cdm-frow .fs{font-size:11.5px;color:var(--soft);margin-top:2px}
.mktg-root .cdm-radios{display:flex;gap:16px;flex-wrap:wrap}.mktg-root .cdm-radios label{font-size:13px;display:flex;align-items:center;gap:7px;cursor:pointer}.mktg-root .cdm-radios input{accent-color:var(--gold-ink);width:16px;height:16px}
.mktg-root .cdm-savebar{display:flex;justify-content:flex-end;gap:9px;margin-top:18px;padding-top:14px;border-top:1px solid var(--line)}
.mktg-root .cdm-btnsave{background:linear-gradient(135deg,var(--gold),var(--gold-ink));color:#fff;border:none;padding:10px 20px;border-radius:9px;font-size:13px;font-weight:700;cursor:pointer}
.mktg-root .cdm-btnghost{background:#f1ece2;color:var(--soft);border:none;padding:10px 18px;border-radius:9px;font-size:13px;font-weight:700;cursor:pointer}
.mktg-root .cdm-pill{font-size:11px;font-weight:700;border-radius:999px;padding:2px 9px;cursor:pointer}.mktg-root .cdm-pill.on{background:#E8F3ED;color:#2E7D5B}.mktg-root .cdm-pill.off{background:#F0EDE6;color:#7A5C2C}
.mktg-root .cdm-logrow td{font-size:12px;color:var(--soft)}.mktg-root .cdm-logrow td b{color:var(--navy)}
@media(max-width:880px){
  .mktg-root .cdm-wrap{grid-template-columns:1fr}
  .mktg-root .cdm-menu{flex-direction:row;overflow-x:auto;position:static}
  .mktg-root .cdm-smi{flex:none;white-space:nowrap}
}

/* ═══════════════ TAB NGHỈ PHÉP PHÒNG MARKETING (np-) ═══════════════ */
.mktg-root .np-wtrow{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0}
.mktg-root .np-wt{background:var(--navy);color:#fff;border-radius:11px;padding:10px 16px;flex:1;min-width:150px}
.mktg-root .np-wt .l{font-size:9.5px;color:#cfc6b5;text-transform:uppercase;letter-spacing:.05em}
.mktg-root .np-wt .v{font-size:16px;font-weight:900;color:var(--gold);margin-top:3px}
.mktg-root .np-today{background:#EAF0F8;border:1px solid #cdddf2;border-radius:11px;padding:10px 14px;font-size:12.5px;color:var(--blue);font-weight:600;margin-bottom:14px}
.mktg-root .np-today b{color:var(--navy)}
.mktg-root .np-toprow{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:13px}
.mktg-root .np-legend{display:flex;gap:10px;flex-wrap:wrap}
.mktg-root .np-lg{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;color:var(--soft);font-weight:600}
.mktg-root .np-lgdot{width:11px;height:11px;border-radius:3px}
.mktg-root .np-btn-xin{background:linear-gradient(135deg,var(--gold),var(--gold-ink));color:#fff;border:none;padding:9px 16px;border-radius:9px;font-size:13px;font-weight:700;cursor:pointer;white-space:nowrap}
.mktg-root .np-cal{background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px;overflow-x:auto}
.mktg-root .np-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;min-width:660px}
.mktg-root .np-cal-dow{font-size:10px;font-weight:800;color:var(--soft);text-align:center;padding:4px 0;text-transform:uppercase}
.mktg-root .np-cal-dow.sun{color:var(--red)}
.mktg-root .np-cal-cell{min-height:86px;border:1px solid var(--line);border-radius:9px;padding:5px 6px;background:#fff}
.mktg-root .np-cal-cell.cn{background:var(--gold-pale)}
.mktg-root .np-cal-cell.le{background:#FBEAE7;border-color:#f1d3cb}
.mktg-root .np-cal-cell.empty{background:transparent;border:none}
.mktg-root .np-cal-cell.today{box-shadow:0 0 0 2px var(--gold)}
.mktg-root .np-cal-top{display:flex;align-items:center;justify-content:space-between}
.mktg-root .np-cal-d{font-size:12px;font-weight:800;color:var(--navy)}
.mktg-root .np-cal-tag{font-size:8.5px;font-weight:700}
.mktg-root .np-cal-tag.cn{color:var(--gold-ink)}
.mktg-root .np-cal-tag.le{color:var(--red)}
.mktg-root .np-daychip{font-size:9.5px;font-weight:700;border-radius:6px;padding:1px 5px;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}
.mktg-root .np-daychip.pending{opacity:.62;border:1px dashed currentColor}
.mktg-root .np-daychip.dc-blue{background:#EAF0F8;color:#2F5FA8}
.mktg-root .np-daychip.dc-gold{background:#FBF1DC;color:#9C6A16}
.mktg-root .np-daychip.dc-red{background:#FBEAE7;color:#C0392B}
.mktg-root .np-daychip.dc-green{background:#E8F3ED;color:#2E7D5B}
.mktg-root .np-daychip.dc-amber{background:#FBEFE0;color:#B9791C}
.mktg-root .np-daychip.dc-bu{background:#ECECEC;color:#555}
.mktg-root .np-card{background:#fff;border:1px solid var(--line);border-left-width:4px;border-radius:12px;padding:13px 15px;margin-bottom:10px}
.mktg-root .np-card.l-blue{border-left-color:var(--blue)}
.mktg-root .np-card.l-gold{border-left-color:var(--gold)}
.mktg-root .np-card.l-red{border-left-color:var(--red)}
.mktg-root .np-card.l-green{border-left-color:var(--green)}
.mktg-root .np-card.l-amber{border-left-color:var(--amber)}
.mktg-root .np-card-h{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.mktg-root .np-av{width:30px;height:30px;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--gold-ink));color:#fff;font-weight:800;font-size:12px;display:flex;align-items:center;justify-content:center;flex:none}
.mktg-root .np-nm{font-size:13.5px;font-weight:800;color:var(--navy)}
.mktg-root .np-badge{font-size:10px;font-weight:700;padding:2px 9px;border-radius:999px;white-space:nowrap}
.mktg-root .np-badge.lt-blue{background:#EAF0F8;color:#2F5FA8}
.mktg-root .np-badge.lt-gold{background:#FBF1DC;color:#9C6A16}
.mktg-root .np-badge.lt-red{background:#FBEAE7;color:#C0392B}
.mktg-root .np-badge.lt-green{background:#E8F3ED;color:#2E7D5B}
.mktg-root .np-badge.lt-amber{background:#FBEFE0;color:#B9791C}
.mktg-root .np-st{font-size:10.5px;font-weight:700;padding:2px 10px;border-radius:999px;margin-left:auto}
.mktg-root .np-st.st-cho{background:#FBEFE0;color:#B9791C}
.mktg-root .np-st.st-duyet{background:#E8F3ED;color:#2E7D5B}
/* ⭐ NC1: chip lý do trên lịch + danh sách "Chi tiết nghỉ trong tháng" (trong .mktg-root — var OK) */
.mktg-root .np-dchrs{font-weight:400;opacity:.9}
.mktg-root .np-mdtitle{font-size:13px;font-weight:800;color:var(--navy);margin:18px 0 10px}
.mktg-root .np-mdlist{display:flex;flex-direction:column;gap:8px}
.mktg-root .np-mdrow{border:1px solid var(--line);border-left:4px solid #2F5FA8;border-radius:11px;padding:10px 13px;background:#fff;cursor:pointer;transition:.12s}
.mktg-root .np-mdrow:hover{background:var(--gold-pale)}
.mktg-root .np-mdrow.l-gold{border-left-color:#9C6A16} .mktg-root .np-mdrow.l-red{border-left-color:var(--red)} .mktg-root .np-mdrow.l-green{border-left-color:var(--green)} .mktg-root .np-mdrow.l-amber{border-left-color:var(--amber)}
.mktg-root .np-mdtop{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.mktg-root .np-mdrow .np-dpav{flex:none;width:28px;height:28px;border-radius:50%;background:var(--navy);color:var(--gold-light);font-weight:800;font-size:12px;display:grid;place-items:center}
.mktg-root .np-mdnm{font-weight:800;color:var(--navy);font-size:13px}
.mktg-root .np-mdst{font-weight:700;font-size:11px}
.mktg-root .np-mdbody{font-size:12px;color:#4b463c;margin-top:7px;line-height:1.55}
.mktg-root .np-mdk{color:var(--navy)}
.mktg-root .np-mdrs{color:var(--gold-ink)}
.mktg-root .np-doch{display:inline-block;font-size:11px;font-weight:600;padding:2px 8px;border-radius:20px}
.mktg-root .np-doch.phep{background:#E8F3ED;color:var(--green)} .mktg-root .np-doch.bu{background:#F1EEE8;color:#6b6250} .mktg-root .np-doch.om{background:#FBEAE7;color:var(--red)}
/* ⭐ NC1: popover chi tiết ngày (edv-ov gắn body → LITERAL màu, tự cấp lại np-badge) */
.edv-ov .np-dpbox{background:#fff;border-radius:16px;width:460px;max-width:96vw;max-height:84vh;overflow-y:auto;box-shadow:0 24px 60px rgba(13,27,51,.4);font-family:'Roboto',sans-serif}
.edv-ov .np-dphead{position:sticky;top:0;background:#fff;border-bottom:1px solid #ECE5D8;padding:13px 16px;display:flex;align-items:center;justify-content:space-between;gap:10px}
.edv-ov .np-dpttl{font-size:14px;font-weight:900;color:#0D1B33}
.edv-ov .np-dpbody{padding:12px 16px}
.edv-ov .np-dprow{display:flex;gap:11px;align-items:center;padding:10px;border:1px solid #ECE5D8;border-radius:12px;margin-bottom:8px;cursor:pointer}
.edv-ov .np-dprow:hover{background:#FEF9EE;border-color:#FBF1DC}
.edv-ov .np-dpav{flex:none;width:34px;height:34px;border-radius:50%;background:#0D1B33;color:#EDB96A;font-weight:800;font-size:13px;display:grid;place-items:center}
.edv-ov .np-dpinfo{flex:1;min-width:0}
.edv-ov .np-dpnm{font-weight:800;color:#0D1B33;font-size:13px}
.edv-ov .np-dpmeta{font-size:11.5px;color:#8A8170;margin-top:2px}
.edv-ov .np-dpgo{flex:none;color:#9C6A16;font-weight:700;font-size:12px}
.edv-ov .np-dpbu{background:#F1EEE8;border-radius:9px;padding:8px 11px;font-size:12px;color:#6b6250;margin-top:4px}
.edv-ov .np-badge{font-size:10px;font-weight:700;padding:2px 9px;border-radius:999px;white-space:nowrap}
.edv-ov .np-badge.lt-blue{background:#EAF0F8;color:#2F5FA8} .edv-ov .np-badge.lt-gold{background:#FBF1DC;color:#9C6A16} .edv-ov .np-badge.lt-red{background:#FBEAE7;color:#C0392B} .edv-ov .np-badge.lt-green{background:#E8F3ED;color:#2E7D5B} .edv-ov .np-badge.lt-amber{background:#FBEFE0;color:#B9791C}
.mktg-root .np-st.st-tuchoi{background:#FBEAE7;color:#C0392B}
.mktg-root .np-cardbody{font-size:12.5px;color:var(--text);margin-top:8px;display:flex;gap:16px;flex-wrap:wrap}
.mktg-root .np-it{display:flex;flex-direction:column}
.mktg-root .np-k{font-size:10px;color:var(--soft);text-transform:uppercase;letter-spacing:.04em}
.mktg-root .np-v{font-weight:700;color:var(--navy);font-size:12.5px}
.mktg-root .np-approver{font-size:11px;color:var(--gold-ink);font-weight:700;margin-top:9px}
.mktg-root .np-foot{display:flex;gap:8px;margin-top:9px;flex-wrap:wrap}
.mktg-root .np-bt-duyet{background:var(--green);color:#fff;border:none;padding:7px 15px;border-radius:8px;font-size:12.5px;font-weight:700;cursor:pointer}
.mktg-root .np-bt-tuchoi{background:#FCEDEA;color:var(--red);border:1px solid #f1d3cb;padding:7px 15px;border-radius:8px;font-size:12.5px;font-weight:700;cursor:pointer}
.mktg-root .np-empty{text-align:center;color:var(--soft);font-size:13px;padding:26px}
.mktg-root .np-overbar{background:#FBEAE7;border:1px solid #f1d3cb;color:var(--red);border-radius:11px;padding:10px 14px;font-size:12.5px;font-weight:600;margin-bottom:12px}
.mktg-root .np-nopill{font-size:10.5px;font-weight:700;padding:2px 9px;border-radius:999px}
.mktg-root .np-nopill.ok{background:#E8F3ED;color:#2E7D5B}
.mktg-root .np-nopill.no{background:#FBEAE7;color:#C0392B}
.mktg-root .np-rules{display:flex;flex-direction:column;gap:12px}
.mktg-root .np-rule-card{background:#fff;border:1px solid var(--line);border-radius:13px;padding:15px 18px}
.mktg-root .np-rule-card h4{font-size:13.5px;font-weight:900;color:var(--navy);display:flex;align-items:center;gap:8px;margin-bottom:10px}
.mktg-root .np-rule-card ul{margin:0;padding-left:19px}
.mktg-root .np-rule-card li{font-size:12.8px;color:var(--text);margin-bottom:6px}
.mktg-root .np-rule-card li b{color:var(--navy)}
.mktg-root .np-rule-hi{background:var(--gold-pale);border:1px solid #f0e6cf;border-radius:8px;padding:9px 12px;font-size:12.3px;color:var(--gold-ink);font-weight:600;margin-top:10px}
.mktg-root .np-who-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}
.mktg-root .np-who-card{background:var(--gold-pale);border:1px solid #f0e6cf;border-radius:11px;padding:12px 14px}
.mktg-root .np-who-card .wn{font-size:13px;font-weight:800;color:var(--navy)}
.mktg-root .np-who-card .wr{font-size:11.5px;color:var(--soft);margin-top:3px}
/* form trong modal (edv-ov append vào body — KHÔNG dưới .mktg-root) */
.edv-ov .np-warnbox{border-radius:9px;padding:9px 12px;font-size:11.8px;font-weight:600;margin-bottom:12px;background:#FEF9EE;border:1px solid #f0e6cf;color:#9C6A16}
.edv-ov .np-warnbox .wl{display:block;margin-bottom:3px}
.edv-ov .np-warnbox .wl.red{color:#C0392B}
.edv-ov .np-two{display:flex;gap:10px}
.edv-ov .np-two .edv-fld{flex:1}
/* ── (06/07) np- BỔ SUNG: Quỹ phép + Cài đặt chế độ nghỉ + Ngày lễ ── */
.edv-ov .np-warnbox .wl.ok{color:#2E7D5B}
.edv-ov .np-qmini{background:#fff;border:1px solid #ECE5D8;border-radius:8px;padding:8px 11px;margin:6px 0;font-size:11.6px;color:var(--soft);font-weight:600}
.edv-ov .np-qmini b{color:var(--navy)}
.mktg-root .np-qnote{background:var(--gold-pale);border:1px solid #f0e6cf;border-radius:10px;padding:10px 14px;font-size:12.3px;color:var(--gold-ink);margin-bottom:12px}
.mktg-root .np-qnote b{color:var(--navy)}
.mktg-root .np-quota-tbl .np-qc{text-align:center;font-variant-numeric:tabular-nums}
.mktg-root .np-quota-tbl .np-he{color:var(--gold-ink);font-weight:700}
.mktg-root .np-quota-tbl .np-buno{color:var(--red);font-weight:800}
.mktg-root .np-rtag{font-size:9.5px;font-weight:700;padding:2px 8px;border-radius:999px;margin-left:6px}
.mktg-root .np-rtag.leader{background:var(--gold-cream);color:var(--gold-ink)}
.mktg-root .np-rtag.content{background:#E7EEF7;color:#2F5FA8}
.mktg-root .np-rtag.seeding{background:#E1EFEA;color:#2E7D6E}
.mktg-root .np-rtag.editor{background:#EDE3D3;color:#C6862F}
.mktg-root .np-rtag.quay{background:#E6E9EF;color:#0D1B33}
/* ── (06/07) Nghỉ phép cập nhật: 2 bảng NỔI BẬT (Quỹ phép + Theo dõi & làm bù) ── */
.mktg-root .np-hl-tbl{min-width:520px;border-collapse:collapse;background:#fff}
.mktg-root .np-hl-tbl thead th{background:var(--navy);color:#fff;font-size:9.5px;letter-spacing:.05em;text-transform:uppercase;text-align:left;padding:11px 12px;font-weight:700;white-space:nowrap;border-bottom:none}
.mktg-root .np-hl-tbl thead th:first-child{border-top-left-radius:9px}
.mktg-root .np-hl-tbl thead th:last-child{border-top-right-radius:9px}
.mktg-root .np-hl-tbl tbody td{padding:11px 12px;border-bottom:1px solid var(--line);vertical-align:middle}
.mktg-root .np-hl-tbl tbody tr:nth-child(odd){background:#fff}
.mktg-root .np-hl-tbl tbody tr:nth-child(even){background:#FBF8F1}
.mktg-root .np-hl-tbl tbody tr:hover{background:var(--gold-pale)}
.mktg-root .np-hl-tbl tbody tr:last-child td{border-bottom:none}
.mktg-root .np-hl-tbl .q-nm{vertical-align:middle;white-space:nowrap;min-width:150px}
.mktg-root .np-hl-tbl .q-nm .nnm,.mktg-root .np-hl-tbl .q-nm .np-rtag{vertical-align:middle}
.mktg-root .np-hl-tbl .nnm{font-size:13px;font-weight:800;color:var(--navy)}
.mktg-root .np-hl-tbl .qc{text-align:center;font-weight:700;color:var(--navy);font-variant-numeric:tabular-nums}
.mktg-root .np-hl-tbl .cbar{display:inline-block;width:60px;height:8px;background:#EDE6D6;border-radius:5px;overflow:hidden;vertical-align:middle;margin-right:8px}
.mktg-root .np-hl-tbl .cf{display:block;height:100%;border-radius:5px}
.mktg-root .np-hl-tbl .cf.g{background:linear-gradient(90deg,var(--green),#57b98a)}
.mktg-root .np-hl-tbl .cf.y{background:linear-gradient(90deg,var(--amber),var(--gold-light))}
.mktg-root .np-hl-tbl .cf.r{background:linear-gradient(90deg,var(--red),#e07a6e)}
.mktg-root .np-hl-tbl .cv{font-size:14px}
.mktg-root .np-hl-tbl .cv.g{color:var(--green)}
.mktg-root .np-hl-tbl .cv.y{color:var(--amber)}
.mktg-root .np-hl-tbl .cv.r{color:var(--red)}
.mktg-root .np-hl-tbl .hev{font-size:14px;font-weight:800;color:#C6862F}
.mktg-root .np-hl-tbl .bv{font-size:12px;color:var(--soft);font-weight:700}
.mktg-root .np-hl-tbl .pill{font-size:10.5px;font-weight:700;padding:4px 11px;border-radius:20px;white-space:nowrap;display:inline-flex;align-items:center;gap:6px}
.mktg-root .np-hl-tbl .pill::before{content:"";width:7px;height:7px;border-radius:50%}
.mktg-root .np-hl-tbl .pill.ok{background:#E4F0EA;color:var(--green)}
.mktg-root .np-hl-tbl .pill.ok::before{background:var(--green)}
.mktg-root .np-hl-tbl .pill.bu{background:#F8E4DF;color:var(--red)}
.mktg-root .np-hl-tbl .pill.bu::before{background:var(--red)}
.mktg-root .np-hl-tbl .np-ql{white-space:nowrap;color:var(--navy)}
/* ⭐ NC2: cột "Còn nợ bù (tính cả tháng trước)" — nợ bù lũy kế mang qua tháng */
.mktg-root .np-hl-tbl{min-width:680px}
.mktg-root .np-hl-tbl thead th.np-oweth{background:#123055;color:var(--gold-light)}
.mktg-root .np-hl-tbl tbody td.np-owecol{background:var(--gold-pale);text-align:left}
.mktg-root .np-owe-big{font-weight:900;color:var(--red);font-size:15px}
.mktg-root .np-owe-ok{color:var(--green);font-weight:700;font-size:12px}
.mktg-root .np-owe-detail{margin-top:3px;font-weight:400;line-height:1.5}
.mktg-root .np-owe-od{display:inline-block;background:#F1EEE8;border-radius:6px;padding:1px 7px;margin:1px 3px 1px 0;color:#6b6250;font-size:11px;white-space:nowrap}
.mktg-root .np-owe-od.prev{background:#FBEAE7;color:var(--red);font-weight:600}
/* ⭐ NC3: khối "HƯỚNG XỬ LÝ" trong modal chi tiết (edv-ov gắn body, NGOÀI .mktg-root → màu LITERAL, KHÔNG var) */
.edv-ov .np-hxl{border-radius:12px;padding:13px 15px;margin:12px 0;border:1.5px solid}
.edv-ov .np-hxl-ht{font-size:10.5px;font-weight:900;letter-spacing:.06em;margin-bottom:7px}
.edv-ov .np-hxl-main{font-size:14px;font-weight:700;line-height:1.4}
.edv-ov .np-hxl-sub{font-size:12px;margin-top:6px;line-height:1.45}
.edv-ov .np-hxl.phep{background:#E8F3ED;border-color:#bfe0cd;color:#1f6446} .edv-ov .np-hxl.phep .np-hxl-main{color:#2E7D5B}
.edv-ov .np-hxl.bu{background:#F3EFE6;border-color:#e3d9c4;color:#6b6250} .edv-ov .np-hxl.bu .np-hxl-main{color:#0D1B33}
.edv-ov .np-hxl.om{background:#FBEAE7;border-color:#f0cfc9;color:#8a2a1e} .edv-ov .np-hxl.om .np-hxl-main{color:#C0392B}
.edv-ov .np-hxl-dates{margin-top:7px;display:flex;flex-wrap:wrap;gap:5px}
.edv-ov .np-hxl-dd{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:7px;padding:3px 9px;font-size:11.5px;font-weight:700;color:#0D1B33}
/* Ngày nghỉ lễ (CHỈ XEM) trong tab Nội quy — cho mọi nhân sự */
.mktg-root .np-le-ro-card{border-top:3px solid var(--gold)}
.mktg-root .np-le-ro-sub{font-size:12.3px;color:var(--soft);margin:-2px 0 11px}
.mktg-root .np-le-ro-sub b{color:var(--gold-ink)}
.mktg-root .np-le-ro-tbl .np-lr-dow{font-size:12px;font-weight:700;color:var(--soft);white-space:nowrap}
.mktg-root .np-le-ro-tbl .np-lr-dow.wknd{color:var(--red)}
.mktg-root .np-le-ro-tbl .np-lr-date{white-space:nowrap;font-weight:800;color:var(--navy);font-variant-numeric:tabular-nums}
.mktg-root .np-le-ro-tbl .nnm{font-size:13px;font-weight:800;color:var(--navy)}
.mktg-root .np-le-ro-tbl .np-lr-note{font-size:12px;color:var(--soft)}
.mktg-root .np-le-ro-tbl .np-lr-badge{display:inline-block;background:var(--gold-pale);border:1px solid var(--gold-cream);color:var(--gold-ink);font-weight:800;font-size:11.5px;padding:3px 10px;border-radius:20px;white-space:nowrap}
.mktg-root .np-le-ro-empty{padding:16px;text-align:center;color:var(--soft);font-size:13px}
.mktg-root .np-le-ro-hi{margin-top:11px}
.mktg-root .np-le-ro-off{border-top-style:dashed}
.mktg-root .np-le-ro-lock{background:var(--gold-pale);border:1px dashed var(--gold);color:var(--gold-ink);font-size:11.8px;font-weight:700;border-radius:8px;padding:8px 11px;margin-bottom:10px}
/* Công tắc bật/tắt (Cài đặt) */
.mktg-root .np-swrow{display:flex;align-items:center;gap:14px;justify-content:space-between;background:var(--gold-pale);border:1px solid var(--gold-cream);border-radius:10px;padding:11px 14px;margin:2px 0 12px}
.mktg-root .np-swlbl{display:flex;flex-direction:column;gap:2px;min-width:0}
.mktg-root .np-swlbl b{font-size:12.8px;color:var(--navy)}
.mktg-root .np-swsub{font-size:11.5px;color:var(--soft)}
.mktg-root .np-sw{position:relative;width:46px;height:26px;border-radius:999px;background:#d8d0c2;border:none;cursor:pointer;flex:0 0 auto;transition:background .2s;padding:0}
.mktg-root .np-sw::before{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;transition:left .2s;box-shadow:0 1px 3px rgba(0,0,0,.25)}
.mktg-root .np-sw.on{background:var(--green)}
.mktg-root .np-sw.on::before{left:23px}
.mktg-root .np-qlchip{font-size:9px;font-weight:700;padding:2px 7px;border-radius:999px;background:#E4F0EA;color:var(--green);margin-left:3px}
.mktg-root .np-qlmuted{font-size:10px;color:var(--soft);font-weight:600}
.mktg-root .np-chotbar{background:var(--gold-pale);border:1px solid var(--gold-cream);border-radius:11px;padding:10px 14px;font-size:12.3px;color:var(--gold-ink);margin-bottom:12px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.mktg-root .np-chotbar b{color:var(--navy)}
.mktg-root .np-chotbar.due{background:#FBEAE7;border-color:#f1d3cb;color:#C0392B}
.mktg-root .np-chotbar.due b{color:#8a2a1e}
.mktg-root .np-chotbar.done{background:#E8F3ED;border-color:#cfe6da;color:var(--green)}
.mktg-root .np-chotbar.done b{color:#1c5a41}
.mktg-root .np-chotbar .np-le-bt2{margin-left:auto}
.mktg-root .np-le-bt2.gold{background:var(--gold);color:#fff;border-color:var(--gold)}
.mktg-root .np-le-bt2.gold:hover{background:#C6862F}
/* Stepper số ngày + ô làm bù tự sinh (trong modal Xin nghỉ) */
.edv-ov .np-stepper{display:flex;align-items:center;gap:10px}
.edv-ov .np-stp{width:38px;height:38px;border:1px solid #ECE5D8;background:#fff;border-radius:9px;font-size:19px;font-weight:700;color:#0D1B33;line-height:1;flex:none;cursor:pointer}
.edv-ov .np-stp:hover{border-color:#E1A146;background:#FEF9EE}
.edv-ov .np-stv{min-width:36px;text-align:center;font-size:18px;font-weight:900;color:#0D1B33}
.edv-ov .np-stunit{font-size:12px;color:#8A8170}
.edv-ov .np-bunote{font-size:11.5px;color:#9C6A16;background:#FEF9EE;border:1px solid #FBF1DC;border-radius:9px;padding:9px 11px;margin-bottom:9px;line-height:1.5}
.edv-ov .np-bunote b{color:#0D1B33}
.edv-ov .np-bugrid{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.edv-ov .np-burow>span{display:block;font-size:10px;color:#8A8170;font-weight:700;margin-bottom:5px;text-transform:uppercase;letter-spacing:.03em}
.edv-ov .np-buinput{width:100%;border:1px solid #ECE5D8;border-radius:9px;padding:9px 11px;font-size:13px;font-family:inherit;color:#26221B}
.edv-ov .np-buinput:focus{outline:2px solid #E1A146;border-color:#E1A146}
.edv-ov .np-buok{border-radius:9px;padding:10px 12px;font-size:12px;line-height:1.5;background:#E4F0EA;border:1px solid #CFE6DA;color:#2E7D5B}
.edv-ov .np-buok b{color:#0D1B33}
@media(max-width:560px){.edv-ov .np-bugrid{grid-template-columns:1fr}}
.mktg-root .np-setcard{background:#fff;border:1px solid var(--line);border-radius:13px;padding:15px 18px;margin-bottom:14px}
.mktg-root .np-setcard h4{font-size:13.5px;font-weight:900;color:var(--navy);margin-bottom:12px}
.mktg-root .np-setgrid{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}
.mktg-root .np-setf label{display:block;font-size:11.5px;font-weight:700;color:var(--soft);margin-bottom:5px}
.mktg-root .np-setin{display:flex;align-items:center;gap:8px}
.mktg-root .np-setin input{width:92px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;font-family:inherit;font-size:13px;color:var(--navy)}
.mktg-root .np-setin span{font-size:11.5px;color:var(--soft)}
.mktg-root .np-setf select{width:100%;padding:8px 10px;border:1px solid var(--line);border-radius:8px;font-family:inherit;font-size:13px;background:#fff}
.mktg-root .np-setbar{margin-top:14px;text-align:right}
.mktg-root .np-le-hd{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:12px}
.mktg-root .np-le-hd h4{font-size:13.5px;font-weight:900;color:var(--navy)}
.mktg-root .np-le-acts{display:flex;gap:8px;flex-wrap:wrap}
.mktg-root .np-le-bt2{background:var(--navy);color:#fff;border:none;border-radius:8px;padding:8px 13px;font-size:12px;font-weight:700;cursor:pointer;font-family:inherit}
.mktg-root .np-le-bt2:hover{background:#15294a}
.mktg-root .np-le-bt{background:var(--gold-pale);color:var(--gold-ink);border:1px solid var(--gold-cream);border-radius:7px;padding:5px 10px;font-size:11px;font-weight:700;cursor:pointer;font-family:inherit;white-space:nowrap}
.mktg-root .np-lenote{width:100%;min-width:120px;padding:6px 9px;border:1px solid var(--line);border-radius:7px;font-family:inherit;font-size:12px;color:var(--text)}
/* kéo thả + ▲▼ sắp xếp ngày lễ */
.mktg-root .np-le-tbl tbody tr[draggable]{cursor:default}
.mktg-root .np-le-drag{white-space:nowrap;width:64px}
.mktg-root .np-le-handle{cursor:grab;color:var(--soft);font-size:16px;user-select:none;margin-right:5px;vertical-align:middle}
.mktg-root .np-le-handle:active{cursor:grabbing}
.mktg-root .np-le-mv{display:inline-flex;flex-direction:column;gap:2px;vertical-align:middle}
.mktg-root .np-le-mv button{border:1px solid var(--line);background:#fff;color:var(--navy);border-radius:5px;width:22px;height:15px;line-height:1;font-size:8px;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center}
.mktg-root .np-le-mv button:hover{background:var(--gold-pale);border-color:var(--gold)}
.mktg-root .np-le-tbl tbody tr.np-le-dragging{opacity:.45}
.mktg-root .np-le-tbl tbody tr.np-le-over td{box-shadow:inset 0 2px 0 var(--gold)}
.edv-ov .edv-mbtn.danger{background:#FBEAE7;color:#C0392B;border:1px solid #f1d3cb}
.edv-ov .edv-mbtn.danger:hover{background:#f6ded8}
/* Nội quy phòng — CEO chỉnh sửa + kéo thả nhóm */
.mktg-root .np-nq-card{position:relative}
.mktg-root .np-nq-ghead{display:flex;align-items:center;gap:7px;margin-bottom:10px}
.mktg-root .np-nq-icon{width:44px;text-align:center;padding:6px 4px;border:1px solid var(--line);border-radius:7px;font-size:15px;font-family:inherit}
.mktg-root .np-nq-title{flex:1;min-width:0;padding:7px 10px;border:1px solid var(--line);border-radius:7px;font-size:13.5px;font-weight:800;color:var(--navy);font-family:inherit}
.mktg-root .np-nq-gdel{border:1px solid #f1d3cb;background:#FBEAE7;color:#C0392B;border-radius:7px;width:30px;height:30px;cursor:pointer;font-size:13px;flex:none}
.mktg-root .np-nq-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.mktg-root .np-nq-li{display:flex;align-items:center;gap:7px}
.mktg-root .np-nq-itin{flex:1;min-width:0;padding:7px 10px;border:1px solid var(--line);border-radius:7px;font-size:12.5px;color:var(--text);font-family:inherit}
.mktg-root .np-nq-del{border:1px solid var(--line);background:#fff;color:var(--soft);border-radius:6px;width:26px;height:26px;cursor:pointer;font-size:11px;flex:none}
.mktg-root .np-nq-del:hover{background:#FBEAE7;color:#C0392B;border-color:#f1d3cb}
.mktg-root .np-nq-additem{margin-top:9px;background:var(--gold-pale);color:var(--gold-ink);border:1px dashed var(--gold-cream);border-radius:7px;padding:6px 12px;font-size:11.5px;font-weight:700;cursor:pointer;font-family:inherit}
.mktg-root .np-nq-additem:hover{border-color:var(--gold)}
.mktg-root .np-nq-card[draggable]{cursor:default}
.mktg-root .np-nq-card.np-le-dragging{opacity:.45}
.mktg-root .np-nq-card.np-le-over{box-shadow:inset 0 3px 0 var(--gold)}
.mktg-root .np-nq-topbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;flex-wrap:wrap}
.mktg-root .np-nq-toptxt{font-size:12px;color:var(--soft);font-weight:600}
.mktg-root .np-nq-body{width:100%;padding:9px 11px;border:1px solid var(--line);border-radius:8px;font-size:12.5px;line-height:1.6;color:var(--text);font-family:inherit;resize:vertical;min-height:74px;background:#fff}
.mktg-root .np-nq-body:focus{outline:none;border-color:var(--gold)}
.mktg-root .np-nq-flabel{font-size:11px;font-weight:700;color:var(--soft);margin:9px 0 5px}
.mktg-root .np-nq-flabel.gold{color:var(--gold-ink)}
.mktg-root .np-nq-flabel b{color:var(--navy)}
.mktg-root .np-nq-hi{min-height:auto;background:var(--gold-pale);border-color:#f0e6cf;color:var(--gold-ink);font-weight:600}
.mktg-root .np-nq-who{min-height:80px}
.mktg-root .np-nq-editbar{display:flex;align-items:center;gap:8px;margin-top:12px;flex-wrap:wrap}
.mktg-root .np-le-bt2.ghost2{background:var(--gold-pale);color:var(--gold-ink);border:1px dashed var(--gold-cream)}
.mktg-root .np-le-bt2.ghost2:hover{border-color:var(--gold);background:var(--gold-cream)}
/* mobile */
@media(max-width:860px){
  .mktg-root .np-wt{min-width:0;flex:1 1 46%}
  .mktg-root .np-cardbody{gap:10px}
  .mktg-root .np-toprow{align-items:flex-start}
  .mktg-root .np-setgrid{grid-template-columns:1fr}
  .mktg-root .np-le-hd{align-items:flex-start}
  .mktg-root .np-nq-ghead{flex-wrap:wrap}
  .mktg-root .np-nq-title{flex:1 1 100%;order:5}
}
/* ── (28/06) np- BỔ SUNG: đổi/hủy + chi tiết đơn + lịch sử + nhật ký tổng ── */
.mktg-root .np-doiflag{font-size:10px;font-weight:700;color:var(--blue);background:#E9F0FA;border:1px solid #cfe0f5;border-radius:999px;padding:2px 9px;white-space:nowrap}
.mktg-root .np-bt-open{margin-left:auto;background:#fff;border:1px solid var(--line);color:var(--gold-ink);font-size:12px;font-weight:700;padding:6px 13px;border-radius:8px;cursor:pointer}
.mktg-root .np-bt-open:hover{border-color:var(--gold-light);background:var(--gold-pale)}
.mktg-root .np-foot{align-items:center}
.mktg-root .np-logbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:11px}
.mktg-root .np-logfg{display:flex;align-items:center;gap:7px}
.mktg-root .np-logfl{font-size:11.5px;font-weight:700;color:var(--soft)}
.mktg-root .np-logsel{min-width:150px}
.mktg-root .np-lognote{font-size:11.5px;color:var(--soft)}
.mktg-root .np-logbox{background:#fff;border:1px solid var(--line);border-radius:12px;padding:4px 15px}
.mktg-root .np-logitem{border-bottom:1px solid var(--line);padding:11px 2px}
.mktg-root .np-logitem:last-child{border-bottom:none}
.mktg-root .np-logtop{font-size:13px;color:var(--text);line-height:1.45}
.mktg-root .np-logtop b{font-weight:700;color:var(--navy)}
.mktg-root .np-logvid{font-size:11px;font-weight:800;color:var(--gold-ink);background:var(--gold-cream);border-radius:6px;padding:1px 7px;margin-right:5px;cursor:pointer}
.mktg-root .np-logowner{font-size:11px;color:var(--soft);font-weight:600}
.mktg-root .np-logrs{font-size:12px;color:var(--soft);font-style:italic;margin-top:2px}
.mktg-root .np-logtm{font-size:11.5px;color:var(--soft);margin-top:2px}
/* modal chi tiết / đổi / lý do (append vào body → KHÔNG dưới .mktg-root → dùng màu literal) */
.edv-ov.np-top{z-index:10072}
.edv-ov .edv-fld textarea{width:100%;border:1px solid #ECE5D8;border-radius:9px;padding:9px 11px;font-size:13px;font-family:inherit;color:#26221B;min-height:78px;resize:vertical;line-height:1.5}
.edv-ov .edv-fld textarea:focus{outline:2px solid #E1A146;border-color:#E1A146}
.edv-ov .np-dnote{font-size:11.5px;color:#8A8170;background:#FEF9EE;border:1px solid #f0e6cf;border-radius:8px;padding:8px 11px;margin:2px 0 12px}
.edv-ov .np-dbox{background:#fff;border-radius:18px;width:560px;max-width:97vw;max-height:92vh;overflow-y:auto;box-shadow:0 24px 60px rgba(13,27,51,.4);font-family:'Roboto',sans-serif}
.edv-ov .np-dhead{position:sticky;top:0;background:#fff;border-bottom:1px solid #ECE5D8;padding:14px 18px;display:flex;align-items:center;justify-content:space-between;gap:10px;z-index:2}
.edv-ov .np-dttl{font-size:15px;font-weight:900;color:#0D1B33}
.edv-ov .np-dttl small{display:block;font-size:11px;color:#8A8170;font-weight:500;margin-top:2px}
.edv-ov .np-dx{border:none;background:#F6F2EA;width:33px;height:33px;border-radius:50%;font-size:16px;cursor:pointer;color:#8A8170}
.edv-ov .np-dbody{padding:16px 18px}
.edv-ov .np-dinfo2{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:13px}
.edv-ov .np-dinfo2 .f{background:#FEF9EE;border:1px solid #FBF1DC;border-radius:9px;padding:9px 11px}
.edv-ov .np-dinfo2 .f .k{font-size:10px;font-weight:700;color:#8A8170;text-transform:uppercase}
.edv-ov .np-dinfo2 .f .v{font-size:13.5px;font-weight:700;color:#0D1B33;margin-top:2px}
.edv-ov .np-apprbox{font-size:11.5px;color:#9C6A16;background:#FEF9EE;border:1px dashed #EDB96A;border-radius:8px;padding:8px 11px;margin-bottom:12px}
.edv-ov .np-apprbox b{color:#0D1B33}
.edv-ov .np-acts{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}
.edv-ov .np-actb{border:none;border-radius:9px;padding:9px 14px;font-size:12.5px;font-weight:800;cursor:pointer}
.edv-ov .np-actb.ab-doi{background:#E9F0FA;color:#2F5FA8;border:1px solid #bcd3f0}
.edv-ov .np-actb.ab-huy{background:#FBEDEB;color:#C0392B;border:1px solid #f0c9c4}
.edv-ov .np-actb.ab-duyet{background:#EAF3EE;color:#2E7D5B;border:1px solid #bfe0cd}
.edv-ov .np-actb.ab-tuchoi{background:#fff;color:#C0392B;border:1px solid #f0c9c4}
.edv-ov .np-lockmsg{font-size:12px;color:#8A8170;background:#F6F2EA;border:1px solid #ECE5D8;border-radius:9px;padding:10px 12px;margin-bottom:14px}
.edv-ov .np-secl{font-size:11px;font-weight:800;color:#8A8170;text-transform:uppercase;letter-spacing:.03em;margin-bottom:12px}
.edv-ov .np-tl{display:flex;flex-direction:column}
.edv-ov .np-tl-item{display:flex;gap:11px}
.edv-ov .np-tl-dot{display:flex;flex-direction:column;align-items:center}
.edv-ov .np-tld{width:11px;height:11px;border-radius:50%;flex:none;margin-top:3px}
.edv-ov .np-tlln{flex:1;width:2px;background:#ECE5D8;min-height:8px}
.edv-ov .np-tl-c{padding-bottom:15px}
.edv-ov .np-tac{font-size:13px;color:#26221B}
.edv-ov .np-tac b{font-weight:700;color:#0D1B33}
.edv-ov .np-trs{font-size:12px;color:#8A8170;margin-top:2px;font-style:italic}
.edv-ov .np-ttm{font-size:11.5px;color:#8A8170;margin-top:2px}
.edv-ov .np-d-tao{background:#888780}.edv-ov .np-d-duyet{background:#2E7D5B}.edv-ov .np-d-doi{background:#2F5FA8}.edv-ov .np-d-tuchoi{background:#C0392B}.edv-ov .np-d-nghi{background:#8A8170}
.edv-ov .np-empty{text-align:center;color:#8A8170;font-size:12.5px;padding:18px}
@media(max-width:560px){ .edv-ov .np-dinfo2{grid-template-columns:1fr} .edv-ov .np-dbox{border-radius:14px} }

/* ═══════════════ TAB Ý TƯỞNG TUẦN (yt-) ═══════════════ */
.mktg-root .page-head{position:relative}
.mktg-root .yt-headright{display:flex;align-items:center;gap:10px}
.mktg-root .yt-bellwrap{position:relative}
.mktg-root .yt-bell{width:38px;height:38px;border-radius:50%;background:#fff;border:1px solid var(--line);font-size:16px;cursor:pointer;position:relative;display:flex;align-items:center;justify-content:center}
.mktg-root .yt-nbadge{position:absolute;top:2px;right:3px;background:var(--red);color:#fff;font-size:9px;font-weight:800;min-width:15px;height:15px;border-radius:999px;display:flex;align-items:center;justify-content:center;padding:0 3px}
.mktg-root .yt-notif-panel{position:absolute;right:0;top:46px;width:312px;max-width:86vw;background:#fff;border:1px solid var(--line);border-radius:13px;box-shadow:0 18px 50px rgba(13,27,51,.25);padding:8px;z-index:75;max-height:60vh;overflow-y:auto}
.mktg-root .yt-notif-h{font-size:12px;font-weight:800;color:var(--navy);padding:7px 9px}
.mktg-root .yt-notif-item{font-size:12px;color:var(--text);padding:9px;border-top:1px solid var(--line);line-height:1.4}
.mktg-root .yt-notif-item.unread{background:var(--gold-pale)}
.mktg-root .yt-notif-item .t{font-size:10px;color:var(--soft);margin-top:2px}
.mktg-root .yt-statgrid{display:grid;gap:12px;grid-template-columns:repeat(4,1fr);margin-bottom:16px}
.mktg-root .yt-scard{background:#fff;border:1px solid var(--line);border-left:5px solid var(--gold);border-radius:12px;padding:12px 15px}
.mktg-root .yt-scard .l{font-size:11px;color:var(--soft);text-transform:uppercase;letter-spacing:.04em}
.mktg-root .yt-scard .v{font-size:22px;font-weight:900;color:var(--navy);margin-top:2px}
.mktg-root .yt-toprow{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:14px}
.mktg-root .yt-bchips{display:flex;gap:7px;flex-wrap:wrap}
.mktg-root .yt-bchip{border:1px solid var(--line);background:#fff;border-radius:999px;padding:6px 13px;font-size:12px;font-weight:700;color:var(--soft);cursor:pointer}
.mktg-root .yt-bchip.active{background:var(--navy);color:#fff;border-color:var(--navy)}
.mktg-root .yt-btnnew{background:linear-gradient(135deg,var(--gold),var(--gold-ink));color:#fff;border:none;padding:9px 16px;border-radius:9px;font-size:13px;font-weight:700;cursor:pointer;white-space:nowrap}
.mktg-root .yt-kan{display:grid;grid-template-columns:repeat(5,1fr);gap:11px}
.mktg-root .yt-kcol{background:#fff;border:1px solid var(--line);border-radius:13px;padding:9px;min-height:140px;border-top-width:3px}
.mktg-root .yt-kcol.k-moi{border-top-color:var(--gold)}.mktg-root .yt-kcol.k-xemxet{border-top-color:var(--blue)}.mktg-root .yt-kcol.k-chon{border-top-color:var(--amber)}.mktg-root .yt-kcol.k-lam{border-top-color:#2C6E7A}.mktg-root .yt-kcol.k-xong{border-top-color:var(--green)}
.mktg-root .yt-kcolh{display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:800;color:var(--navy);margin-bottom:9px;padding:2px 3px}
.mktg-root .yt-cnt{font-size:10.5px;background:var(--gold-cream);color:var(--gold-ink);border-radius:999px;padding:1px 7px}
.mktg-root .yt-icard{background:var(--bg);border:1px solid var(--line);border-radius:11px;padding:10px 11px;margin-bottom:9px}
.mktg-root .yt-tt{font-size:12.5px;font-weight:800;color:var(--navy);line-height:1.3;display:flex;gap:5px;align-items:flex-start}
.mktg-root .yt-tt-link{cursor:pointer}.mktg-root .yt-tt-link:hover{color:var(--gold-ink);text-decoration:underline}
.mktg-root .yt-star{cursor:pointer;font-size:13px;color:#d8cdb5;flex:none}.mktg-root .yt-star.on{color:var(--gold)}
.mktg-root .yt-meta{display:flex;align-items:center;gap:6px;margin-top:7px;flex-wrap:wrap}
.mktg-root .yt-avxs{width:21px;height:21px;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--gold-ink));color:#fff;font-weight:800;font-size:10px;display:flex;align-items:center;justify-content:center;flex:none}
.mktg-root .yt-who{font-size:10.5px;color:var(--soft);font-weight:600}
.mktg-root .yt-badge{font-size:9px;font-weight:700;padding:2px 7px;border-radius:999px;white-space:nowrap}
.mktg-root .yt-badge.b-mimosa{background:#FBF1DC;color:#9C6A16}.mktg-root .yt-badge.b-cali{background:#EAF0F8;color:#2F5FA8}.mktg-root .yt-badge.b-chung{background:#EDE3D6;color:#7A5C2C}
.mktg-root .yt-badge.l-content{background:#EAF0F8;color:#2F5FA8}.mktg-root .yt-badge.l-campaign{background:#FBF1DC;color:#9C6A16}.mktg-root .yt-badge.l-sanpham{background:#E8F3ED;color:#2E7D5B}.mktg-root .yt-badge.l-quytrinh{background:#FBEFE0;color:#B9791C}.mktg-root .yt-badge.l-kenh{background:#E6EEF0;color:#2C6E7A}.mktg-root .yt-badge.l-khac{background:#EDE3D6;color:#7A5C2C}
.mktg-root .yt-utb{font-size:9px;font-weight:700;padding:2px 7px;border-radius:999px}.mktg-root .yt-utb.u-cao{background:#FBEAE7;color:#C0392B}.mktg-root .yt-utb.u-vua{background:#FBEFE0;color:#B9791C}.mktg-root .yt-utb.u-thap{background:#EDE3D6;color:#7A5C2C}
.mktg-root .yt-desc{font-size:11px;color:var(--text);margin-top:7px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.mktg-root .yt-icard-foot{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-top:9px}
.mktg-root .yt-vote{display:inline-flex;align-items:center;gap:5px;background:#fff;border:1px solid var(--line);border-radius:999px;padding:3px 9px;font-size:11px;font-weight:700;color:var(--gold-ink);cursor:pointer}.mktg-root .yt-vote:hover{background:var(--gold-pale)}.mktg-root .yt-vote.voted{background:var(--gold);color:#fff;border-color:var(--gold)}
.mktg-root .yt-cbtn{display:inline-flex;align-items:center;gap:4px;background:#fff;border:1px solid var(--line);border-radius:999px;padding:3px 9px;font-size:11px;font-weight:700;color:var(--soft);cursor:pointer}
.mktg-root .yt-kmove{display:flex;gap:3px}.mktg-root .yt-kmove button{border:1px solid var(--line);background:#fff;border-radius:6px;width:24px;height:23px;cursor:pointer;font-weight:700;color:var(--navy);font-size:11px}.mktg-root .yt-kmove button:hover{background:var(--gold-pale)}.mktg-root .yt-kmove button:disabled{opacity:.3;cursor:not-allowed}
.mktg-root .yt-emptiny{text-align:center;color:var(--soft);font-size:12px;padding:16px}
.mktg-root .yt-filters{display:flex;gap:9px;flex-wrap:wrap;align-items:flex-end;background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px 14px;margin-bottom:14px}
.mktg-root .yt-fl{display:flex;flex-direction:column;gap:3px}.mktg-root .yt-fl .k{font-size:9.5px;color:var(--soft);text-transform:uppercase;font-weight:700}
.mktg-root .yt-fl-toggle{border:1px solid var(--line);background:#fff;border-radius:9px;padding:8px 13px;font-size:12.5px;font-weight:700;color:var(--soft);cursor:pointer}.mktg-root .yt-fl-toggle.on{background:var(--gold);color:#fff;border-color:var(--gold)}
.mktg-root .yt-libcount{font-size:12px;color:var(--soft);margin-bottom:10px}
.mktg-root .yt-librow{background:#fff;border:1px solid var(--line);border-left-width:4px;border-radius:11px;padding:11px 14px;margin-bottom:8px;display:flex;align-items:center;gap:12px;flex-wrap:wrap;cursor:pointer}.mktg-root .yt-librow:hover{background:var(--gold-pale)}
.mktg-root .yt-librow.lr-mimosa{border-left-color:var(--gold)}.mktg-root .yt-librow.lr-cali{border-left-color:var(--blue)}.mktg-root .yt-librow.lr-chung{border-left-color:var(--soft)}
.mktg-root .yt-lt{font-size:13px;font-weight:800;color:var(--navy);flex:1;min-width:170px;display:flex;gap:6px;align-items:center}
.mktg-root .yt-libmeta{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.mktg-root .yt-votechip{font-size:11px;font-weight:700;color:var(--gold-ink);background:var(--gold-cream);border-radius:999px;padding:2px 9px}
.mktg-root .yt-sb{font-size:10px;font-weight:700;padding:2px 9px;border-radius:999px}
.mktg-root .yt-sb.s-moi{background:#FBF1DC;color:#9C6A16}.mktg-root .yt-sb.s-xemxet{background:#EAF0F8;color:#2F5FA8}.mktg-root .yt-sb.s-chon{background:#FBEFE0;color:#B9791C}.mktg-root .yt-sb.s-lam{background:#E6EEF0;color:#2C6E7A}.mktg-root .yt-sb.s-xong{background:#E8F3ED;color:#2E7D5B}.mktg-root .yt-sb.s-luu{background:#EDE3D6;color:#7A5C2C}
.mktg-root .yt-tkcard{background:#fff;border:1px solid var(--line);border-radius:13px;padding:15px 16px;margin-bottom:12px;border-left:4px solid var(--gold)}
.mktg-root .yt-tkcard.tc-cali{border-left-color:var(--blue)}.mktg-root .yt-tkcard.tc-chung{border-left-color:var(--soft)}
.mktg-root .yt-tkh{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.mktg-root .yt-tktitle{font-size:14.5px;font-weight:800;color:var(--navy)}
.mktg-root .yt-tkrow{display:flex;gap:14px;flex-wrap:wrap;margin:11px 0 4px}
.mktg-root .yt-tkfield{display:flex;flex-direction:column;gap:4px}.mktg-root .yt-tkfield .k{font-size:9.5px;color:var(--soft);text-transform:uppercase;font-weight:700}
.mktg-root .yt-dl{border:1px solid var(--line);border-radius:8px;padding:6px 10px;font-size:12.5px;font-family:inherit;color:var(--text)}
.mktg-root .yt-prog{height:8px;background:#eee;border-radius:999px;overflow:hidden;margin:10px 0 4px}.mktg-root .yt-prog>i{display:block;height:100%;background:linear-gradient(90deg,var(--gold),var(--gold-ink))}
.mktg-root .yt-progl{font-size:11px;color:var(--soft);font-weight:700;margin-bottom:8px}
.mktg-root .yt-checks{display:flex;flex-direction:column;gap:6px;margin:6px 0}
.mktg-root .yt-chk{display:flex;align-items:center;gap:9px;font-size:13px;color:var(--text)}.mktg-root .yt-chk input{width:17px;height:17px;accent-color:var(--green);cursor:pointer}.mktg-root .yt-chk.done .ct{text-decoration:line-through;color:var(--soft)}
.mktg-root .yt-addstep{display:flex;gap:7px;margin-top:8px;max-width:440px}.mktg-root .yt-addstep input{flex:1;border:1px solid var(--line);border-radius:8px;padding:7px 10px;font-size:12.5px;font-family:inherit}
.mktg-root .yt-tkactions{display:flex;gap:8px;margin-top:11px;flex-wrap:wrap}
.mktg-root .yt-actgo{background:var(--green);color:#fff;border:none;padding:7px 14px;border-radius:8px;font-size:12.5px;font-weight:700;cursor:pointer}
.mktg-root .yt-actstep{background:#fff;border:1px dashed var(--gold);color:var(--gold-ink);padding:7px 13px;border-radius:8px;font-size:12.5px;font-weight:700;cursor:pointer}
.mktg-root .yt-kqbox{margin-top:11px;background:#F4FAF6;border:1px solid #cde9da;border-radius:10px;padding:11px}
.mktg-root .yt-kqbox h5{font-size:11.5px;font-weight:800;color:var(--green);margin-bottom:7px}
.mktg-root .yt-kqbox textarea{width:100%;border:1px solid var(--line);border-radius:8px;padding:8px 10px;font-size:12.5px;font-family:inherit;min-height:54px;resize:vertical}
.mktg-root .yt-kqsave{margin-top:7px;background:var(--green);color:#fff;border:none;padding:6px 13px;border-radius:8px;font-size:12px;font-weight:700;cursor:pointer}
@media(max-width:1024px){ .mktg-root .yt-kan{grid-template-columns:1fr 1fr 1fr}.mktg-root .yt-statgrid{grid-template-columns:1fr 1fr} }
@media(max-width:860px){ .mktg-root .yt-kan{grid-template-columns:1fr}.mktg-root .yt-headright{flex-wrap:wrap} }
/* Modal yt- (append vào body — KHÔNG dưới .mktg-root) */
.yt-ov{position:fixed;inset:0;background:rgba(13,27,51,.45);display:none;align-items:center;justify-content:center;z-index:10050;padding:16px;font-family:'Roboto',sans-serif}
.yt-ov.show{display:flex}
.yt-ov .yt-modal{background:#fff;border-radius:16px;padding:20px 20px 16px;width:470px;max-width:96vw;box-shadow:0 24px 60px rgba(13,27,51,.35);max-height:92vh;overflow-y:auto}
.yt-ov .yt-modal.yt-modal-wide{width:560px}
.yt-ov .yt-modal-h{font-size:16px;font-weight:900;color:#0D1B33}
.yt-ov .yt-modal-sub{font-size:12px;color:#8A8170;margin:4px 0 14px}
.yt-ov .yt-fld{display:block;margin-bottom:12px}.yt-ov .yt-fld>span{display:block;font-size:11.5px;font-weight:700;color:#9C6A16;margin-bottom:5px}
.yt-ov .yt-fld input,.yt-ov .yt-fld select,.yt-ov .yt-fld textarea{width:100%;border:1px solid #ECE5D8;border-radius:9px;padding:9px 11px;font-size:13px;font-family:inherit;color:#26221B}
.yt-ov .yt-fld textarea{min-height:70px;resize:vertical}
.yt-ov .yt-fld input:focus,.yt-ov .yt-fld select:focus,.yt-ov .yt-fld textarea:focus{outline:2px solid #E1A146}
.yt-ov .yt-two{display:flex;gap:10px}.yt-ov .yt-two .yt-fld{flex:1}
.yt-ov .yt-modal-foot{display:flex;justify-content:flex-end;gap:9px;margin-top:6px}
.yt-ov .yt-mbtn{border:none;border-radius:9px;padding:9px 16px;font-size:13px;font-weight:700;cursor:pointer}.yt-ov .yt-mbtn.ghost{background:#f1ece2;color:#8A8170}.yt-ov .yt-mbtn.go{background:linear-gradient(135deg,#E1A146,#9C6A16);color:#fff}
/* nội dung chi tiết trong modal (tái dùng class yt- nhưng nằm trong .yt-ov) */
.yt-ov .yt-tkh{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-bottom:4px}
.yt-ov .yt-tktitle{font-size:15px;font-weight:800;color:#0D1B33}
.yt-ov .yt-star{cursor:pointer;font-size:14px;color:#d8cdb5}.yt-ov .yt-star.on{color:#E1A146}
.yt-ov .yt-badge{font-size:9px;font-weight:700;padding:2px 7px;border-radius:999px;white-space:nowrap}
.yt-ov .yt-badge.b-mimosa{background:#FBF1DC;color:#9C6A16}.yt-ov .yt-badge.b-cali{background:#EAF0F8;color:#2F5FA8}.yt-ov .yt-badge.b-chung{background:#EDE3D6;color:#7A5C2C}
.yt-ov .yt-badge.l-content{background:#EAF0F8;color:#2F5FA8}.yt-ov .yt-badge.l-campaign{background:#FBF1DC;color:#9C6A16}.yt-ov .yt-badge.l-sanpham{background:#E8F3ED;color:#2E7D5B}.yt-ov .yt-badge.l-quytrinh{background:#FBEFE0;color:#B9791C}.yt-ov .yt-badge.l-kenh{background:#E6EEF0;color:#2C6E7A}.yt-ov .yt-badge.l-khac{background:#EDE3D6;color:#7A5C2C}
.yt-ov .yt-utb{font-size:9px;font-weight:700;padding:2px 7px;border-radius:999px}.yt-ov .yt-utb.u-cao{background:#FBEAE7;color:#C0392B}.yt-ov .yt-utb.u-vua{background:#FBEFE0;color:#B9791C}.yt-ov .yt-utb.u-thap{background:#EDE3D6;color:#7A5C2C}
.yt-ov .yt-sb{font-size:10px;font-weight:700;padding:2px 9px;border-radius:999px}
.yt-ov .yt-sb.s-moi{background:#FBF1DC;color:#9C6A16}.yt-ov .yt-sb.s-xemxet{background:#EAF0F8;color:#2F5FA8}.yt-ov .yt-sb.s-chon{background:#FBEFE0;color:#B9791C}.yt-ov .yt-sb.s-lam{background:#E6EEF0;color:#2C6E7A}.yt-ov .yt-sb.s-xong{background:#E8F3ED;color:#2E7D5B}.yt-ov .yt-sb.s-luu{background:#EDE3D6;color:#7A5C2C}
.yt-ov .yt-dmeta{display:flex;gap:16px;flex-wrap:wrap;margin:11px 0}.yt-ov .yt-dmeta .it{display:flex;flex-direction:column;gap:3px}.yt-ov .yt-dmeta .k{font-size:9.5px;color:#8A8170;text-transform:uppercase;font-weight:700}.yt-ov .yt-dmeta .v{font-size:12.5px;font-weight:700;color:#0D1B33}
.yt-ov .yt-dsec{margin-top:15px}.yt-ov .yt-dsec h4{font-size:11.5px;font-weight:800;color:#9C6A16;text-transform:uppercase;letter-spacing:.04em;margin-bottom:9px}
.yt-ov .yt-prog{height:8px;background:#eee;border-radius:999px;overflow:hidden;margin:8px 0 4px}.yt-ov .yt-prog>i{display:block;height:100%;background:linear-gradient(90deg,#E1A146,#9C6A16)}
.yt-ov .yt-progl{font-size:11px;color:#8A8170;font-weight:700;margin-bottom:6px}
.yt-ov .yt-checks{display:flex;flex-direction:column;gap:6px;margin:6px 0}.yt-ov .yt-chk{display:flex;align-items:center;gap:9px;font-size:13px;color:#26221B}.yt-ov .yt-chk input{width:16px;height:16px}.yt-ov .yt-chk.done .ct{text-decoration:line-through;color:#8A8170}
.yt-ov .yt-kq-box{background:#E8F3ED;border:1px solid #cde9da;border-radius:10px;padding:11px;font-size:12.5px;color:#26221B;line-height:1.5}
.yt-ov .yt-gac-box{background:#FBEAE7;border:1px solid #f1d3cb;border-radius:10px;padding:11px;font-size:12.5px;color:#C0392B;line-height:1.5}
.yt-ov .yt-cmt{display:flex;gap:9px;margin-bottom:10px}.yt-ov .yt-cmt .yt-avxs{margin-top:2px;width:21px;height:21px;border-radius:50%;background:linear-gradient(135deg,#E1A146,#9C6A16);color:#fff;font-weight:800;font-size:10px;display:flex;align-items:center;justify-content:center;flex:none}
.yt-ov .yt-cmt-body{background:#F6F2EA;border:1px solid #ECE5D8;border-radius:10px;padding:8px 11px;flex:1}
.yt-ov .yt-cmt-top{display:flex;justify-content:space-between;gap:8px}.yt-ov .yt-cmt-nm{font-size:12px;font-weight:800;color:#0D1B33}.yt-ov .yt-cmt-t{font-size:10px;color:#8A8170}
.yt-ov .yt-cmt-text{font-size:12.5px;color:#26221B;margin-top:3px;line-height:1.45}
.yt-ov .yt-cmt-add{display:flex;gap:8px;margin-top:10px}.yt-ov .yt-cmt-add input{flex:1;border:1px solid #ECE5D8;border-radius:9px;padding:9px 11px;font-size:13px;font-family:inherit}
.yt-ov .select{padding:6px 9px;border-radius:8px;border:1px solid #ECE5D8;background:#fff;font-size:12px;font-family:inherit;color:#26221B;cursor:pointer}

/* ── CAM-1: gợi ý "Số thật từ HĐ" (auto) ── */
.mktg-root .mkt-realbar{margin:0 0 12px;padding:11px 14px;background:var(--gold-pale);border:1px solid var(--gold-cream);border-left:4px solid var(--gold);border-radius:10px;font-size:13px;color:var(--navy);line-height:1.6}
.mktg-root .mkt-realbar b{color:var(--gold-ink)}
.mktg-root .mkt-realfill{margin-left:6px;vertical-align:middle;cursor:pointer}
.mktg-root .mkt-realnote{font-size:11px;color:var(--soft);margin-top:4px;font-weight:400}
.mktg-root .mkt-realhint2{font-size:11px;color:var(--gold-ink);margin-top:5px;display:flex;align-items:center;gap:6px;justify-content:center}
.mktg-root .mkt-realhint2 b{color:var(--navy)}
.mktg-root .mkt-mini{font-size:10.5px;padding:2px 8px;border:1px solid var(--gold);background:#fff;color:var(--gold-ink);border-radius:7px;cursor:pointer;font-family:inherit}
.mktg-root .mkt-mini:hover{background:var(--gold-cream)}

/* ── CAM-2: bảng nhiều cột → thẻ trên điện thoại ── */
@media(max-width:860px){
  .mktg-root table.mkt-cardtbl{display:block;width:100%;min-width:0}
  .mktg-root table.mkt-cardtbl thead{display:none}
  .mktg-root table.mkt-cardtbl tbody{display:block}
  .mktg-root table.mkt-cardtbl tbody tr{display:block;background:#fff;border:1px solid var(--line);border-radius:11px;padding:7px 13px;margin:0 0 10px;box-shadow:0 1px 4px rgba(13,27,51,.05)}
  .mktg-root table.mkt-cardtbl tbody tr:last-child{margin-bottom:2px}
  .mktg-root table.mkt-cardtbl tbody td{display:flex;justify-content:space-between;gap:12px;align-items:baseline;padding:5px 0;border:none !important;text-align:right;font-size:13px;white-space:normal;width:auto;max-width:none}
  .mktg-root table.mkt-cardtbl tbody td+td{border-top:1px dashed var(--line) !important}
  .mktg-root table.mkt-cardtbl tbody td::before{content:attr(data-label);font-weight:700;color:var(--soft);text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.02em;flex:0 0 38%;white-space:nowrap}
  .mktg-root table.mkt-cardtbl tbody td:empty{display:none}
  .mktg-root table.np-hl-tbl.mkt-cardtbl tbody tr:nth-child(even){background:#fff}
  .mktg-root table.np-hl-tbl.mkt-cardtbl tbody tr:hover{background:#fff}
  .mktg-root .np-hl-tbl .q-nm{min-width:0}
  .mktg-root .tbl-wrap{overflow-x:visible}
}

/* ============================================================
   TAB "KẾ HOẠCH & TRIỂN KHAI NỘI DUNG" v2 (prefix ct2-) — bám 3 mockup
   Scoped dưới .ct2-root. Brand navy+gold, Roboto, KHÔNG tím. Mobile tự xuống hàng.
   ============================================================ */
.mktg-root.ct2-root{font-family:'Roboto',-apple-system,sans-serif}
.ct2-root .ct2-htop{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:11px}
.ct2-root .ct2-ttl{font-size:18px;font-weight:900;color:var(--navy)}
.ct2-root .ct2-ttl small{display:block;font-size:11.5px;color:var(--soft);font-weight:500;margin-top:1px}
.ct2-root .ct2-owner{font-size:11px;font-weight:700;color:var(--gold-ink);background:var(--gold-cream);border:1px solid var(--gold-light);border-radius:999px;padding:5px 11px;white-space:nowrap}
/* bộ lọc thời gian */
.ct2-root .ct2-filter{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px}
.ct2-root .ct2-seg{display:inline-flex;background:var(--gold-cream);border-radius:9px;padding:3px}
.ct2-root .ct2-seg button{border:none;background:transparent;color:var(--gold-ink);font-size:12.5px;font-weight:700;padding:7px 13px;border-radius:7px;cursor:pointer}
.ct2-root .ct2-seg button.active{background:var(--navy);color:#fff}
.ct2-root .ct2-pnav{display:inline-flex;align-items:center;gap:4px;background:#fff;border:1px solid var(--line);border-radius:9px;padding:3px}
.ct2-root .ct2-pnav button{border:none;background:transparent;width:30px;height:30px;border-radius:7px;font-size:14px;font-weight:800;color:var(--navy);cursor:pointer}
.ct2-root .ct2-pnav button:hover{background:var(--gold-pale)}
.ct2-root .ct2-perlbl{font-size:12.5px;font-weight:800;color:var(--navy);padding:0 8px;min-width:120px;text-align:center}
.ct2-root .ct2-qbtn{border:1px solid var(--line);background:#fff;border-radius:9px;padding:8px 12px;font-size:12px;font-weight:700;color:var(--soft);cursor:pointer}
.ct2-root .ct2-qbtn:hover{background:var(--gold-pale);color:var(--gold-ink)}
/* Theo ngày — ô ngày kiểu VN (dd/mm/yyyy) + input lịch ẩn để trổ lịch chọn ngày bất kỳ */
.ct2-root .ct2-pnav-day{position:relative}
.ct2-root .ct2-daybox{font-size:12.5px;font-weight:800;color:var(--gold-ink);background:var(--gold-pale);border:1px solid var(--gold-light);border-radius:8px;padding:5px 12px;min-width:112px;text-align:center;cursor:pointer;user-select:none;font-variant-numeric:tabular-nums}
.ct2-root .ct2-daybox:hover{background:var(--gold-cream)}
/* chip kênh */
.ct2-root .ct2-chips{display:flex;gap:6px;overflow-x:auto;padding-bottom:3px;margin-bottom:11px;-webkit-overflow-scrolling:touch}
.ct2-root .ct2-chip{flex:none;display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:#fff;border-radius:999px;padding:5px 11px 5px 6px;font-size:12px;font-weight:700;color:var(--text);cursor:pointer;white-space:nowrap}
.ct2-root .ct2-chip .ct2-dot{width:18px;height:18px;border-radius:50%;color:#fff;font-size:9.5px;font-weight:800;display:flex;align-items:center;justify-content:center;flex:none}
.ct2-root .ct2-chip.active{border-color:var(--navy);background:var(--navy);color:#fff}
/* dải tiến độ 1 dòng */
.ct2-root .ct2-pstrip{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:#fff;border:1px solid var(--line);border-left:4px solid var(--gold);border-radius:11px;padding:10px 14px;margin-bottom:12px}
.ct2-root .ct2-nums{display:flex;gap:14px;flex-wrap:wrap;font-size:12.5px;color:var(--soft)}
.ct2-root .ct2-nums b{color:var(--navy);font-size:14px}
.ct2-root .ct2-pct{margin-left:auto;display:flex;align-items:center;gap:9px;min-width:180px;flex:1;justify-content:flex-end}
.ct2-root .ct2-pbar{flex:1;max-width:240px;height:7px;background:#eee;border-radius:999px;overflow:hidden}
.ct2-root .ct2-pbar>i{display:block;height:100%;background:linear-gradient(90deg,var(--gold),var(--gold-ink))}
.ct2-root .ct2-pbar.grn>i{background:linear-gradient(90deg,#2E7D5B,#1f6b4a)}
.ct2-root .ct2-pbl{font-size:13px;font-weight:900;color:var(--gold-ink)}
.ct2-root .ct2-pbl.grn{color:#2E7D5B}
/* sub-tab */
.ct2-root .ct2-subtabs{display:flex;gap:8px;margin-bottom:13px;overflow-x:auto}
.ct2-root .ct2-subtabs button{flex:none;display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);background:#fff;border-radius:10px;padding:9px 12px 9px 15px;font-size:13px;font-weight:700;color:var(--soft);cursor:pointer}
.ct2-root .ct2-subtabs button.active{background:var(--navy);color:#fff;border-color:var(--navy)}
/* GHIM tab mở đầu — nhỏ gọn inline, không tăng chiều cao thanh tab */
.ct2-root .ct2-pin{display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;padding:1px;margin:-2px -1px;border-radius:5px;cursor:pointer;line-height:0}
.ct2-root .ct2-pin svg{width:14px;height:14px;display:block}
.ct2-root .ct2-pin .pk{fill:none;stroke:#c3bcac;stroke-width:1.4;stroke-linejoin:round;stroke-linecap:round}
.ct2-root .ct2-subtabs button.active .ct2-pin .pk{stroke:#9fb0cf}
.ct2-root .ct2-pin.set .pk{fill:var(--gold);stroke:var(--gold-ink)}
.ct2-root .ct2-subtabs button.active .ct2-pin.set .pk{fill:var(--gold);stroke:#fff}
.ct2-root .ct2-pin:hover{background:rgba(140,120,60,.16)}
.ct2-root .ct2-pane{display:none}.ct2-root .ct2-pane.active{display:block}
/* funnel */
.ct2-root .ct2-funnel{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;margin-bottom:12px}
.ct2-root .ct2-fcell{background:#fff;border:1px solid var(--line);border-radius:10px;padding:10px 11px;border-top:3px solid var(--gold)}
.ct2-root .ct2-fcell.f0{border-top-color:var(--navy)}.ct2-root .ct2-fcell.f1{border-top-color:#2F5FA8}.ct2-root .ct2-fcell.f2{border-top-color:#B9791C}.ct2-root .ct2-fcell.f3{border-top-color:#2E7D5B}.ct2-root .ct2-fcell.f4{border-top-color:#C0392B}
.ct2-root .ct2-fcell .l{font-size:10.5px;color:var(--soft);text-transform:uppercase;font-weight:700}
.ct2-root .ct2-fcell .v{font-size:20px;font-weight:900;color:var(--navy);margin-top:2px;font-variant-numeric:tabular-nums}
/* ghi chú */
.ct2-root .ct2-guide,.ct2-root .ct2-note{font-size:12px;color:var(--soft);background:#fff;border:1px solid var(--line);border-radius:10px;padding:10px 13px;line-height:1.5;margin-bottom:12px}
.ct2-root .ct2-guide b,.ct2-root .ct2-note b{color:var(--gold-ink)}
.ct2-root .ct2-dangnote{font-size:11.5px;color:var(--soft);background:#fff;border:1px dashed var(--line);border-radius:10px;padding:9px 12px;line-height:1.55;margin-bottom:12px}
.ct2-root .ct2-dangnote b{color:var(--gold-ink)}
/* khối tuyến */
.ct2-root .ct2-tblock{border:1px solid var(--line);border-radius:12px;overflow:hidden;margin-bottom:12px;background:#fff}
.ct2-root .ct2-tbhead{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:11px 13px;color:#fff}
.ct2-root .ct2-tbname{font-size:13px;font-weight:800;line-height:1.2}
.ct2-root .ct2-tbname small{font-weight:500;opacity:.92;font-size:11px;display:block;margin-top:2px}
.ct2-root .ct2-tbright{display:flex;align-items:center;gap:8px}
.ct2-root .ct2-tbsum{font-size:11.5px;font-weight:800;background:rgba(255,255,255,.22);border-radius:999px;padding:4px 10px;white-space:nowrap}
.ct2-root .ct2-tbadd{border:none;background:rgba(255,255,255,.92);color:var(--navy);border-radius:8px;padding:6px 11px;font-size:11.5px;font-weight:700;cursor:pointer}
/* dòng nội dung Plan */
.ct2-root .ct2-pline{display:flex;flex-wrap:wrap;gap:9px;align-items:flex-end;padding:11px 13px;border-bottom:1px solid var(--line)}
.ct2-root .ct2-pline:last-child{border-bottom:none}
.ct2-root .ct2-pf{display:flex;flex-direction:column;gap:3px}
.ct2-root .ct2-pf>label{font-size:9px;color:var(--soft);font-weight:700;text-transform:uppercase}
.ct2-root .ct2-pf.ten{flex:1;min-width:150px}
.ct2-root .ct2-in,.ct2-root .ct2-sel{border:1px solid var(--line);border-radius:8px;padding:8px 10px;font-size:12.5px;font-family:inherit;color:var(--text);background:#fff}
.ct2-root .ct2-pf.sl .ct2-in{width:80px;background:var(--gold-pale);text-align:right;font-weight:700}
.ct2-root .ct2-pf.nguoi .ct2-sel{min-width:122px}
.ct2-root .ct2-wk{font-size:15px;font-weight:800;color:var(--navy);padding:6px 4px;text-align:center;min-width:34px;font-variant-numeric:tabular-nums}
.ct2-root .ct2-ro{font-size:12.5px;color:var(--text);padding:8px 2px}
.ct2-root .ct2-ro.num{font-weight:700;text-align:right;min-width:34px}
.ct2-root .ct2-plx{border:1px solid var(--line);background:#fff;color:#C0392B;border-radius:8px;width:34px;height:35px;font-size:16px;cursor:pointer;align-self:flex-end}
.ct2-root .ct2-plx:hover{background:#FBEAE7}
.ct2-root .ct2-empline{font-size:12px;color:var(--soft);padding:13px;font-style:italic}
.ct2-root .ct2-plantotal{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;background:var(--gold-pale);border:1px solid var(--gold-light);border-radius:11px;padding:11px 14px;margin-bottom:12px;font-weight:800;color:var(--navy);font-size:13px}
.ct2-root .ct2-plantotal .big{font-size:19px;color:var(--gold-ink)}
/* tải theo người */
.ct2-root .ct2-loadbox{background:#fff;border:1px solid var(--line);border-radius:11px;padding:12px 14px;margin-bottom:12px}
.ct2-root .ct2-loadbox h4{font-size:12px;font-weight:800;color:var(--navy);margin-bottom:9px}
.ct2-root .ct2-loadrow{display:flex;gap:8px;flex-wrap:wrap}
.ct2-root .ct2-lchip{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:999px;padding:6px 11px;font-size:12px;font-weight:700;color:var(--navy);background:var(--bg)}
.ct2-root .ct2-lchip .n{background:var(--navy);color:#fff;border-radius:999px;padding:1px 8px;font-size:11px}
.ct2-root .ct2-lchip.warn{border-color:#f1d3cb;background:#FBEAE7;color:#C0392B}
.ct2-root .ct2-lchip.warn .n{background:#C0392B}
/* công việc — toolbar */
.ct2-root .ct2-cvtop{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px}
.ct2-root .ct2-viewtog{display:inline-flex;background:#fff;border:1px solid var(--line);border-radius:9px;padding:3px}
.ct2-root .ct2-viewtog button{border:none;background:transparent;color:var(--soft);font-size:12.5px;font-weight:700;padding:7px 13px;border-radius:7px;cursor:pointer}
.ct2-root .ct2-viewtog button.active{background:var(--gold);color:#3a2708}
.ct2-root .ct2-lf{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:11px}
.ct2-root .ct2-lf .lab{font-size:11.5px;color:var(--soft);font-weight:700;display:inline-flex;align-items:center;gap:5px}
.ct2-root .ct2-stchips{display:inline-flex;gap:5px;flex-wrap:wrap}
.ct2-root .ct2-stchip{border:1px solid var(--line);background:#fff;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:700;color:var(--soft);cursor:pointer}
.ct2-root .ct2-stchip.active{background:var(--navy);color:#fff;border-color:var(--navy)}
/* thêm nhanh */
.ct2-root .ct2-quickadd{display:flex;gap:8px;flex-wrap:wrap;align-items:center;background:var(--gold-pale);border:1px solid var(--gold-light);border-radius:11px;padding:10px 12px;margin-bottom:14px}
.ct2-root .ct2-qtext{flex:1;min-width:150px;border:1px solid var(--line);border-radius:9px;padding:9px 11px;font-size:13px;font-family:inherit}
.ct2-root .ct2-quickadd .ct2-sel{max-width:150px}
.ct2-root .ct2-qadd{background:linear-gradient(135deg,var(--gold),var(--gold-ink));color:#fff;border:none;padding:9px 16px;border-radius:9px;font-size:13px;font-weight:700;cursor:pointer;white-space:nowrap}
/* gom theo ngày */
.ct2-root .ct2-daygrp{margin-bottom:14px}
.ct2-root .ct2-dayhd{display:flex;align-items:center;gap:9px;cursor:pointer;padding:8px 4px;border-bottom:2px solid var(--gold-cream)}
.ct2-root .ct2-darr{font-size:12px;color:var(--soft);transition:transform .15s}
.ct2-root .ct2-daygrp.collapsed .ct2-darr{transform:rotate(-90deg)}
.ct2-root .ct2-dt{font-size:13.5px;font-weight:900;color:var(--navy)}
.ct2-root .ct2-dt small{font-weight:600;color:var(--soft);font-size:11.5px;margin-left:5px}
.ct2-root .ct2-dsum{margin-left:auto;font-size:11.5px;color:var(--soft);font-weight:700}
.ct2-root .ct2-dsum b{color:#2E7D5B}
.ct2-root .ct2-daygrp.collapsed .ct2-daybody{display:none}
.ct2-root .ct2-daybody{padding-top:9px}
/* item việc */
.ct2-root .ct2-witem{border:1px solid var(--line);border-radius:11px;margin-bottom:8px;background:#fff;overflow:hidden}
.ct2-root .ct2-wrow{display:flex;flex-wrap:wrap;align-items:center;gap:8px 11px;padding:10px 13px}
.ct2-root .ct2-wck{display:flex;align-items:center}
.ct2-root .ct2-wck input{width:19px;height:19px;accent-color:#2E7D5B;cursor:pointer}
.ct2-root .ct2-wtitle{font-weight:700;color:var(--navy);font-size:13px;flex:1;min-width:140px;cursor:pointer}
.ct2-root .ct2-wtitle.done{text-decoration:line-through;color:var(--soft)}
.ct2-root .ct2-wmeta{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.ct2-root .ct2-kb{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;color:var(--text)}
.ct2-root .ct2-kdot{width:16px;height:16px;border-radius:50%;color:#fff;font-size:8.5px;font-weight:800;display:flex;align-items:center;justify-content:center}
.ct2-root .ct2-wtag{font-size:10px;font-weight:700;color:var(--gold-ink);background:var(--gold-cream);border-radius:999px;padding:2px 8px}
.ct2-root .ct2-wdang{font-size:10px;font-weight:700;color:#2F5FA8;background:#EAF0F8;border-radius:999px;padding:2px 8px}
.ct2-root .ct2-wwho{font-size:11.5px;color:var(--soft);font-weight:600}
.ct2-root .ct2-stbadge{font-size:10px;font-weight:700;padding:2px 9px;border-radius:999px}
.ct2-root .ct2-stbadge.st-kehoach{background:#FBEFE0;color:#B9791C}
.ct2-root .ct2-stbadge.st-chodang{background:#EAF0F8;color:#2F5FA8}
.ct2-root .ct2-stbadge.st-dadang{background:#E8F3ED;color:#2E7D5B}
.ct2-root .ct2-plink{font-size:13px;color:#2F5FA8;text-decoration:none}
.ct2-root .ct2-plink.off{color:#cfc6b5}
.ct2-root .ct2-wexp{font-size:13px;color:var(--soft);cursor:pointer;transition:transform .15s}
.ct2-root .ct2-witem.open .ct2-wexp{transform:rotate(90deg)}
.ct2-root .ct2-wbody{display:none;border-top:1px solid var(--line);padding:13px;background:var(--gold-pale)}
.ct2-root .ct2-witem.open .ct2-wbody{display:block}
.ct2-root .ct2-wgrid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:10px}
.ct2-root .ct2-fl{margin-bottom:10px}
.ct2-root .ct2-fl>span{display:block;font-size:10.5px;font-weight:700;color:var(--gold-ink);text-transform:uppercase;margin-bottom:4px}
.ct2-root .ct2-wbody .ct2-in,.ct2-root .ct2-wbody .ct2-sel,.ct2-root .ct2-ta{width:100%;border:1px solid var(--line);border-radius:9px;padding:9px 11px;font-size:13px;font-family:inherit;color:var(--text);background:#fff}
.ct2-root .ct2-ta{min-height:56px;resize:vertical}
.ct2-root .ct2-wfoot{display:flex;align-items:center;justify-content:space-between;gap:9px;flex-wrap:wrap;margin-top:4px}
.ct2-root .ct2-bsave{background:linear-gradient(135deg,var(--gold),var(--gold-ink));color:#fff;border:none;padding:8px 15px;border-radius:9px;font-size:12.5px;font-weight:700;cursor:pointer}
.ct2-root .ct2-bdel{background:#fff;border:1px solid var(--line);color:#C0392B;border-radius:9px;padding:8px 13px;font-size:12.5px;font-weight:700;cursor:pointer}
/* tóm tắt + báo cáo */
.ct2-root .ct2-worksum{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:#fff;border:1px solid var(--line);border-left:4px solid #2E7D5B;border-radius:11px;padding:10px 14px;margin:12px 0}
.ct2-root .ct2-repbox{background:#fff;border:1px solid var(--line);border-radius:11px;padding:12px 14px;margin:0 0 12px}
.ct2-root .ct2-repbox h4{font-size:12px;font-weight:800;color:var(--navy);margin-bottom:9px}
.ct2-root .ct2-reprow{display:flex;gap:8px;flex-wrap:wrap}
.ct2-root .ct2-rchip{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:999px;padding:6px 11px;font-size:12px;font-weight:700;color:var(--navy);background:var(--bg)}
.ct2-root .ct2-rchip .n{background:#2E7D5B;color:#fff;border-radius:999px;padding:1px 8px;font-size:11px}
.ct2-root .ct2-rchip .tot{color:var(--soft);font-weight:600}
.ct2-root .ct2-empty{text-align:center;color:var(--soft);font-size:12.5px;padding:18px}
/* ===== Cài đặt danh mục Nhóm — Tuyến — Định dạng theo kênh (prefix ctcfg-) ===== */
.ct2-cfg .klabel{font-size:11.5px;font-weight:700;color:var(--soft);margin-bottom:7px}
.ct2-cfg .ctcfg-card{border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden;box-shadow:0 1px 3px rgba(13,27,51,.06)}
.ct2-cfg .ctcfg-chd{display:flex;align-items:center;gap:10px;padding:12px 15px;border-bottom:1px solid var(--line);background:#FBF8F1}
.ct2-cfg .ctcfg-cdot{width:20px;height:20px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:900;color:#fff}
.ct2-cfg .ctcfg-ct{font-size:14px;font-weight:900;color:var(--navy)}
.ct2-cfg .ctcfg-cn{font-size:11px;font-weight:700;color:var(--gold-ink);background:var(--gold-cream);border-radius:999px;padding:2px 10px;margin-left:auto}
.ct2-cfg .ctcfg-warn{display:flex;gap:8px;align-items:flex-start;background:#FBEAE7;border-bottom:1px solid #EFD0C8;padding:9px 15px;font-size:11.5px;color:#C0392B;font-weight:600;line-height:1.5}
.ct2-cfg .ctcfg-warn b{color:var(--navy)}
.ct2-cfg .ctcfg-tbl{width:100%;border-collapse:collapse}
.ct2-cfg .ctcfg-tbl thead th{background:var(--navy);color:#fff;font-size:9.5px;letter-spacing:.04em;text-transform:uppercase;text-align:left;padding:9px 12px;font-weight:700}
.ct2-cfg .ctcfg-tbl tbody td{padding:7px 12px;border-bottom:1px solid var(--line);vertical-align:middle}
.ct2-cfg .ctcfg-tbl tbody tr:last-child td{border-bottom:none}
.ct2-cfg .ctcfg-tbl tbody tr:hover{background:var(--gold-pale)}
.ct2-cfg .ctcfg-empty{color:var(--soft);padding:16px 12px;text-align:center;font-size:12.5px}
.ct2-cfg .ctcfg-in{width:100%;border:1px solid var(--line);background:#FCFAF5;border-radius:8px;padding:8px 11px;font-size:13px;font-family:inherit;color:var(--navy);font-weight:600}
.ct2-cfg .ctcfg-sel{width:100%;border:1px solid var(--line);background:#fff;border-radius:8px;padding:8px 10px;font-size:12.5px;font-family:inherit;color:var(--navy);font-weight:700;cursor:pointer}
.ct2-cfg .ctcfg-tsel.sl-nb{background:#E7EEF7;color:#2F5FA8}.ct2-cfg .ctcfg-tsel.sl-th{background:#F6ECD6;color:#8a6a3a}.ct2-cfg .ctcfg-tsel.sl-tt{background:#E4F0EA;color:#2E7D5B}.ct2-cfg .ctcfg-tsel.sl-cd{background:#F8E4DF;color:#C0392B}
.ct2-cfg .ctcfg-acts{white-space:nowrap;text-align:right}
.ct2-cfg .ctcfg-mv{width:26px;height:24px;border:1px solid var(--line);background:#fff;border-radius:6px;font-size:8px;color:var(--navy);cursor:pointer}
.ct2-cfg .ctcfg-mv:hover{background:var(--gold-pale)}
.ct2-cfg .ctcfg-del{width:28px;height:28px;border:1px solid #EFD0C8;background:#FBEAE7;color:#C0392B;border-radius:7px;font-size:12px;margin-left:4px;cursor:pointer}
.ct2-cfg .ctcfg-del:hover{background:#F6D5CD}
.ct2-cfg .ctcfg-addrow{display:grid;grid-template-columns:1.5fr 1fr 1fr auto;gap:9px;padding:12px 15px;background:#FBF8F1;border-top:1px solid var(--line);align-items:center}
.ct2-cfg .ctcfg-addrow .ctcfg-in{background:#fff}
.ct2-cfg .ctcfg-badd{background:linear-gradient(135deg,var(--gold),var(--gold-ink));color:#fff;border:none;border-radius:9px;padding:10px 16px;font-size:12.5px;font-weight:700;cursor:pointer;white-space:nowrap}
.ct2-cfg .ctcfg-copyrow{display:flex;align-items:center;gap:8px;padding:11px 15px;border-top:1px solid var(--line);font-size:11.5px;color:var(--soft);flex-wrap:wrap}
.ct2-cfg .ctcfg-copyrow select{padding:7px 10px;border-radius:8px;border:1px solid var(--line);background:#fff;font-size:12px;cursor:pointer;font-family:inherit}
/* Plan: ô chọn nhóm + nhãn tuyến/định dạng tự bật + nút ✎ đổi ngoại lệ */
.mktg-root .ct2pp-nhomsel{border:1.5px solid var(--gold,#E1A146);background:var(--gold-pale,#FEF9EE);color:var(--navy,#0D1B33);font-weight:700}
.mktg-root .ct2pp-ddwrap{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.mktg-root .ct2pp-tde{width:24px;height:24px;flex:0 0 auto;border:1px solid var(--line,#E2D9C7);background:#fff;border-radius:6px;font-size:11px;color:var(--navy,#0D1B33);cursor:pointer;line-height:1}
.mktg-root .ct2pp-tde:hover{background:var(--gold-pale,#FEF9EE)}
.mktg-root .ct2pp-tde.on{background:#E4F0EA;border-color:#B7DCC7;color:#2E7D5B}
/* Công việc: nhãn tuyến/định dạng tự bật từ nhóm */
.mktg-root .ct2-ndauto{display:flex;align-items:center;gap:7px;flex-wrap:wrap;font-size:11px;color:var(--soft,#8A8170);font-weight:600;margin:6px 2px 2px}
.mktg-root .ct2-ndauto.in-detail{grid-column:1/-1;margin:8px 0 2px}
.mktg-root .ct2-ndt{font-size:10px;font-weight:700;padding:3px 9px;border-radius:20px;background:#EEE;color:#555;white-space:nowrap}
.mktg-root .ct2-ndt.nb{background:#E7EEF7;color:#2F5FA8}.mktg-root .ct2-ndt.th{background:#F6ECD6;color:#8a6a3a}.mktg-root .ct2-ndt.tt{background:#E4F0EA;color:#2E7D5B}.mktg-root .ct2-ndt.cd{background:#F8E4DF;color:#C0392B}
.mktg-root .ct2-ddb{font-size:10px;font-weight:700;border-radius:6px;padding:2px 7px;white-space:nowrap}
.mktg-root .ct2-nab{font-size:10.5px;font-weight:700;color:#C0392B}

/* ════ "THEO KÊNH" — GOM 3 TẦNG + LỌC NHÂN SỰ + PHIẾU TRƯỢT (prefix tck-, bám mockup-theo-kenh.html · màu literal ẤM) ════ */
.mktg-root .tck-ki{width:17px;height:17px;display:inline-flex;flex-shrink:0}.mktg-root .tck-ki svg{width:100%;height:100%;display:block}
.mktg-root .tck-hint{background:#FBF1DC;border:1px solid #EEDDBE;border-radius:10px;padding:10px 13px;font-size:11.5px;color:#8B6520;margin-bottom:12px;line-height:1.55}.mktg-root .tck-hint b{color:#26241F}
/* BỘ LỌC */
.mktg-root .tck-filt{display:flex;align-items:center;gap:8px;margin-bottom:12px;flex-wrap:wrap;background:#fff;border:1px solid #E0DDD6;border-radius:11px;padding:11px 13px}
.mktg-root .tck-fl{font-size:10.5px;letter-spacing:.05em;text-transform:uppercase;color:#8B867C;font-weight:800}
.mktg-root .tck-fc{border:1px solid #E0DDD6;background:#fff;border-radius:30px;padding:7px 14px;font-size:11.5px;font-weight:700;color:#8B867C;cursor:pointer}
.mktg-root .tck-fc.on{background:#0D1B33;color:#fff;border-color:#0D1B33}
.mktg-root .tck-fc.bad.on{background:#C0392B;border-color:#C0392B}
.mktg-root .tck-fsel{border:1px solid #E0DDD6;background:#fff;border-radius:8px;padding:8px 12px;font-size:12px;color:#26241F;font-weight:700;min-width:150px;height:auto;vertical-align:middle}
.mktg-root .tck-fsel.on{border-color:#E1A146;box-shadow:0 0 0 2px rgba(225,161,70,.2)}
.mktg-root .tck-freset{margin-left:auto;border:1px solid #E0DDD6;background:#fff;color:#8B867C;border-radius:8px;padding:7px 13px;font-size:11.5px;font-weight:700;cursor:pointer}
.mktg-root .tck-freset:hover{border-color:#E1A146;color:#0D1B33}
.mktg-root .tck-fmark{display:flex;align-items:center;gap:7px;background:#FBF1DC;border:1px solid #EEDDBE;border-radius:9px;padding:8px 12px;font-size:11.5px;color:#8B6520;margin-bottom:12px}.mktg-root .tck-fmark b{color:#26241F}
/* DẢI TỔNG */
.mktg-root .tck-tot{background:#fff;border:1px solid #E0DDD6;border-radius:12px 12px 0 0;overflow:hidden}
.mktg-root .tck-tot-h{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;background:#0D1B33;border-bottom:3px solid #E1A146;padding:11px 15px}
.mktg-root .tck-tot-t{font-size:13.5px;font-weight:900;color:#fff;display:flex;align-items:center;gap:9px}
.mktg-root .tck-who2{background:#E1A146;color:#fff;font-size:10px;font-weight:800;padding:3px 10px;border-radius:20px}
.mktg-root .tck-tot-d{background:rgba(225,161,70,.2);border:1px solid rgba(225,161,70,.45);color:#EFC578;font-size:10px;font-weight:800;padding:4px 11px;border-radius:20px}
.mktg-root .tck-tot-bd{padding:13px 15px}
.mktg-root .tck-tot-k{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;margin-bottom:12px}
.mktg-root .tck-tk{background:#FBFAF7;border:1px solid #E0DDD6;border-radius:10px;padding:10px;text-align:center}
.mktg-root .tck-tk .l{font-size:8.5px;letter-spacing:.05em;text-transform:uppercase;color:#8B867C;font-weight:800;margin-bottom:4px}
.mktg-root .tck-tk .v{font-size:24px;font-weight:900;line-height:1.15;color:#26241F}.mktg-root .tck-tk .v.g{color:#2E7D5B}.mktg-root .tck-tk .v.y{color:#C6862F}.mktg-root .tck-tk .v.r{color:#C0392B}
.mktg-root .tck-tk .s{font-size:9px;color:#8B867C;margin-top:2px}
.mktg-root .tck-barbig{display:block;height:12px;background:#E7E3DA;border-radius:7px;overflow:hidden}.mktg-root .tck-barbig .tck-bi{display:block;height:100%;border-radius:7px}
.mktg-root .tck-bi.g{background:#2E7D5B}.mktg-root .tck-bi.y{background:#C6862F}.mktg-root .tck-bi.r{background:#C0392B}
.mktg-root .tck-lg{display:flex;justify-content:space-between;margin-top:8px;font-size:10.5px;color:#8B867C;flex-wrap:wrap;gap:6px}.mktg-root .tck-lg b{color:#26241F}
.mktg-root .tck-warn{background:#FDF4F2;border:1px solid #F0D9D3;border-top:none;border-radius:0 0 12px 12px;padding:11px 15px;margin-bottom:12px}
.mktg-root .tck-warn.ok{background:#E4F0EA;border-color:#CFE6DA}
.mktg-root .tck-warn-t{font-size:11.5px;font-weight:900;color:#C0392B;margin-bottom:8px}.mktg-root .tck-warn.ok .tck-warn-t{color:#2E7D5B;margin-bottom:0}
.mktg-root .tck-chip{display:inline-block;font-size:10.5px;font-weight:700;padding:5px 10px;border-radius:8px;margin:0 6px 6px 0;background:#fff;border:1px solid #F0D9D3;color:#8a3a2e}
.mktg-root .tck-chip i{font-style:normal;font-size:9px;font-weight:800;padding:2px 6px;border-radius:20px;background:#F8E4DF;margin:0 3px}
/* DỮ LIỆU THIẾU */
.mktg-root .tck-miss{background:#FEFAF2;border:1px solid #EEDDBE;border-radius:11px;padding:11px 14px;margin-bottom:12px}
.mktg-root .tck-miss-t{font-size:11.5px;font-weight:900;color:#9C6A16;margin-bottom:6px}
.mktg-root .tck-missrow{font-size:11px;color:#6E6A62;line-height:1.6;margin-top:3px}.mktg-root .tck-missrow b{color:#26241F}
/* TẦNG 1 */
.mktg-root .tck-wrap{background:#fff;border:1px solid #E0DDD6;border-radius:12px;overflow:hidden}
.mktg-root .tck-PG{display:grid;grid-template-columns:1.25fr 76px 92px 92px 158px 118px 108px 32px;gap:10px;align-items:center}
.mktg-root .tck-hd{background:#0D1B33;color:#fff;padding:10px 13px}.mktg-root .tck-hd span{font-size:9px;letter-spacing:.06em;text-transform:uppercase;font-weight:800}
.mktg-root .tck-pl{border-bottom:1px solid #E0DDD6}.mktg-root .tck-pl:last-child{border-bottom:none}
.mktg-root .tck-pl-h{padding:12px 13px;cursor:pointer}.mktg-root .tck-pl-h:hover{background:#F5F3EE}.mktg-root .tck-pl:nth-child(odd) .tck-pl-h{background:#FBFAF8}
.mktg-root .tck-pnm{display:flex;align-items:center;gap:9px}.mktg-root .tck-pnm b{font-size:14px;font-weight:900;color:#26241F}
.mktg-root .tck-cc2{text-align:center;font-size:12px;color:#8B867C}.mktg-root .tck-cc2 b{font-size:14px;font-weight:900;color:#26241F;display:block}
.mktg-root .tck-sub{display:block;font-size:9.5px;color:#8B867C;font-weight:600;margin-top:2px}
.mktg-root .tck-pw{display:flex;align-items:center;gap:8px}
.mktg-root .tck-bar{flex:1;display:block;height:8px;background:#E7E3DA;border-radius:5px;overflow:hidden}.mktg-root .tck-bar i{display:block;height:100%;border-radius:5px}
.mktg-root .tck-bar i.g{background:#2E7D5B}.mktg-root .tck-bar i.y{background:#C6862F}.mktg-root .tck-bar i.r{background:#C0392B}
.mktg-root .tck-pv{font-size:12.5px;font-weight:900;white-space:nowrap}.mktg-root .tck-pv.g{color:#2E7D5B}.mktg-root .tck-pv.y{color:#C6862F}.mktg-root .tck-pv.r{color:#C0392B}
.mktg-root .tck-st{font-size:9.5px;font-weight:800;padding:4px 9px;border-radius:20px;white-space:nowrap}
.mktg-root .tck-st-ok{background:#E4F0EA;color:#2E7D5B}.mktg-root .tck-st-mid{background:#FBEFD8;color:#C6862F}.mktg-root .tck-st-bad{background:#F8E4DF;color:#C0392B}.mktg-root .tck-st-wait{background:#EFEDE7;color:#8B867C}
.mktg-root .tck-car{justify-self:end;width:28px;height:28px;border:1px solid #E0DDD6;background:#fff;border-radius:8px;color:#0D1B33;font-size:10px;cursor:pointer}.mktg-root .tck-pl.cl .tck-car{transform:rotate(-90deg)}
.mktg-root .tck-pl-b{background:#FAF9F6;border-top:1px solid #E0DDD6;padding:10px 12px 12px}.mktg-root .tck-pl.cl .tck-pl-b{display:none}
/* TẦNG 2 */
.mktg-root .tck-KG{display:grid;grid-template-columns:1.35fr 110px 62px 62px 62px 130px 76px 108px 30px;gap:9px;align-items:center}
.mktg-root .tck-khd{background:#F0EDE6;border:1px solid #E0DDD6;border-radius:9px;padding:8px 12px;margin-bottom:7px}
.mktg-root .tck-khd span{font-size:8.5px;letter-spacing:.06em;text-transform:uppercase;color:#6E6A62;font-weight:800;text-align:center}
.mktg-root .tck-khd span:first-child,.mktg-root .tck-khd span:nth-child(2){text-align:left}
.mktg-root .tck-kn{background:#fff;border:1px solid #E0DDD6;border-radius:10px;margin-bottom:7px;overflow:hidden}.mktg-root .tck-kn:last-child{margin-bottom:0}
.mktg-root .tck-kn-h{padding:10px 12px;cursor:pointer}.mktg-root .tck-kn-h:hover{background:#F5F3EE}
.mktg-root .tck-knm{font-size:12.5px;font-weight:800;color:#26241F}
.mktg-root .tck-who{font-size:10px;font-weight:700;padding:5px 9px;border-radius:20px;background:#F0EBE1;color:#8a6a3a;text-align:center;white-space:nowrap;border:1px solid #E6DDC9;cursor:pointer;transition:.12s}
.mktg-root .tck-who:hover{background:#E1A146;color:#fff;border-color:#E1A146}
.mktg-root .tck-who.none{background:transparent;border:none;color:#8B867C;cursor:default}
.mktg-root .tck-cc{text-align:center;font-size:12px;font-weight:800}
.mktg-root .tck-cc b{display:block;font-size:15px;font-weight:900;color:#26241F;line-height:1.1}.mktg-root .tck-cc b.g{color:#2E7D5B}.mktg-root .tck-cc b.y{color:#C6862F}.mktg-root .tck-cc b.r{color:#C0392B}
.mktg-root .tck-sub2{display:block;font-size:8.5px;color:#8B867C;font-weight:600;margin-top:2px;text-transform:lowercase;letter-spacing:0}
.mktg-root .tck-kcar{justify-self:end;width:26px;height:26px;border:1px solid #E0DDD6;background:#fff;border-radius:7px;color:#0D1B33;font-size:9px;cursor:pointer}.mktg-root .tck-kn.cl .tck-kcar{transform:rotate(-90deg)}
.mktg-root .tck-kn-b{background:#FAF9F6;border-top:1px solid #EFEDE8;padding:10px}.mktg-root .tck-kn.cl .tck-kn-b{display:none}
/* TẦNG 3 */
.mktg-root .tck-mini{background:#fff;border:1px solid #E0DDD6;border-radius:9px;margin-bottom:8px;overflow:hidden}
.mktg-root .tck-mini.r{border-color:#F0D9D3}.mktg-root .tck-mini.y{border-color:#EEDDBE}
.mktg-root .tck-mini-t{display:flex;align-items:center;gap:8px;padding:9px 11px;font-size:12px;font-weight:800}
.mktg-root .tck-mini.r .tck-mini-t{background:#FDF4F2;color:#C0392B}.mktg-root .tck-mini.y .tck-mini-t{background:#FEFAF2;color:#C6862F}
.mktg-root .tck-mini-t b{color:#26241F}
.mktg-root .tck-dot{width:8px;height:8px;border-radius:50%}.mktg-root .tck-dot.r{background:#C0392B}.mktg-root .tck-dot.y{background:#C6862F}
.mktg-root table.tck-bt{width:100%;border-collapse:collapse}
.mktg-root table.tck-bt thead th{background:#F4F2ED;color:#6E6A62;border-bottom:1px solid #E0DDD6;font-size:8.5px;letter-spacing:.06em;text-transform:uppercase;text-align:left;padding:6px 11px;font-weight:800}
.mktg-root table.tck-bt tbody td{padding:8px 11px;border-bottom:1px solid #EFEDE8;font-size:11.5px}
.mktg-root table.tck-bt tbody tr:last-child td{border-bottom:none}.mktg-root table.tck-bt tbody tr:nth-child(even){background:#FBFAF8}
.mktg-root .tck-pn{font-weight:700;color:#26241F}.mktg-root .tck-pd{color:#8B867C}
/* ⭐ Link "đã đăng" ở danh sách bài (tck-bt): tên = link (Kiểu 1) + nút "Xem bài ↗" cạnh tên (Kiểu 3) */
.mktg-root .tck-pnlink{color:#0D1B33;text-decoration:none;font-weight:700;border-bottom:1px solid transparent}
.mktg-root .tck-pnlink:hover{color:#C6862F;border-bottom-color:#E1A146}
.mktg-root .tck-lkar{color:#C6862F;font-weight:900;margin-left:3px}
.mktg-root .tck-viewbtn{display:inline-flex;align-items:center;gap:4px;margin-left:8px;padding:2px 9px;border:1px solid #E0DDD6;border-radius:7px;background:#fff;color:#0D1B33;font-size:10.5px;font-weight:800;text-decoration:none;white-space:nowrap;vertical-align:middle}
.mktg-root .tck-viewbtn:hover{background:#FEF9EE;border-color:#E1A146;color:#9C6A16}
.mktg-root .tck-tb{font-size:9.5px;font-weight:800;padding:4px 9px;border-radius:20px;white-space:nowrap}
.mktg-root .tck-t-nb{background:#EFE9D8;color:#8a7a4a}.mktg-root .tck-t-th{background:#E7EEF7;color:#2F5FA8}.mktg-root .tck-t-tt{background:#FBF1DC;color:#9C6A16}.mktg-root .tck-t-cd{background:#F8E4DF;color:#C0392B}
.mktg-root .tck-allok{background:#E4F0EA;border:1px solid #CFE6DA;border-radius:9px;padding:10px 12px;font-size:11.5px;color:#2E7D5B;font-weight:700;margin-bottom:8px}
.mktg-root .tck-seeall{width:100%;border:1px dashed #E0DDD6;background:#fff;color:#8B867C;border-radius:9px;padding:9px;font-size:11.5px;font-weight:700;cursor:pointer}.mktg-root .tck-seeall:hover{border-color:#E1A146;color:#0D1B33}
.mktg-root .tck-seenbox{margin-top:8px}.mktg-root .tck-seenbox.cl{display:none}
.mktg-root .tck-empty{background:#fff;border:1px dashed #E0DDD6;border-radius:12px;padding:30px;text-align:center;color:#8B867C;font-size:12.5px}
/* PHIẾU TRƯỢT (body-level) */
.tck-ovl{position:fixed;inset:0;background:rgba(13,27,51,.34);opacity:0;pointer-events:none;transition:.2s;z-index:10080}
.tck-ovl.on{opacity:1;pointer-events:auto}
.tck-drw{position:fixed;top:0;right:0;bottom:0;width:min(470px,92vw);background:#ECEAE5;border-left:1px solid #E0DDD6;box-shadow:-10px 0 40px rgba(13,27,51,.18);transform:translateX(100%);transition:transform .22s ease;z-index:10085;overflow-y:auto;max-width:none}
.tck-drw.on{transform:translateX(0)}
.mktg-root.tck-drw .tck-pnl-hd{position:sticky;top:0;display:flex;align-items:center;gap:11px;background:linear-gradient(135deg,#0D1B33,#1E3560);border-bottom:3px solid #E1A146;padding:14px 16px;z-index:2}
.mktg-root.tck-drw .tck-pav{width:38px;height:38px;border-radius:11px;background:#E1A146;color:#fff;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:900}
.mktg-root.tck-drw .tck-pnm2{display:flex;flex-direction:column;font-size:16px;font-weight:900;color:#fff}
.mktg-root.tck-drw .tck-pvt{font-size:10.5px;font-weight:600;color:rgba(255,255,255,.72)}
.mktg-root.tck-drw .tck-pcl{margin-left:auto;width:30px;height:30px;border:1px solid rgba(255,255,255,.28);background:transparent;color:#fff;border-radius:8px;font-size:13px;cursor:pointer}
.mktg-root.tck-drw .tck-pnl-bd{padding:14px 16px 22px}
.mktg-root.tck-drw .tck-pnl-k{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:14px}
.mktg-root.tck-drw .tck-pk2{background:#fff;border:1px solid #E0DDD6;border-radius:10px;padding:9px 6px;text-align:center}
.mktg-root.tck-drw .tck-pk2 .l{font-size:8px;letter-spacing:.04em;text-transform:uppercase;color:#8B867C;font-weight:800;margin-bottom:3px}
.mktg-root.tck-drw .tck-pk2 .v{font-size:20px;font-weight:900;color:#26241F}.mktg-root.tck-drw .tck-pk2 .v.g{color:#2E7D5B}.mktg-root.tck-drw .tck-pk2 .v.y{color:#C6862F}.mktg-root.tck-drw .tck-pk2 .v.r{color:#C0392B}
.mktg-root.tck-drw .tck-pnl-t{font-size:10px;letter-spacing:.09em;text-transform:uppercase;color:#C6862F;font-weight:800;margin:14px 0 8px;padding-bottom:6px;border-bottom:2px solid #E1A146}
.mktg-root.tck-drw .tck-pk-r{display:grid;grid-template-columns:18px 1fr 52px 60px 38px 52px;gap:8px;align-items:center;background:#fff;border:1px solid #E0DDD6;border-radius:9px;padding:9px 10px;margin-bottom:6px}
.mktg-root.tck-drw .tck-pk-n{display:flex;flex-direction:column;font-size:12px;font-weight:800;color:#26241F;line-height:1.25;min-width:0}
.mktg-root.tck-drw .tck-pk-s{font-size:9px;font-weight:600;color:#8B867C}
.mktg-root.tck-drw .tck-pk-b{font-size:11px;color:#8B867C;text-align:right;white-space:nowrap}.mktg-root.tck-drw .tck-pk-b b{color:#26241F;font-size:12.5px}
.mktg-root.tck-drw .tck-bar.mini2{height:6px}
.mktg-root.tck-drw .tck-pb-g{background:#fff;border:1px solid #E0DDD6;border-radius:10px;overflow:hidden;margin-bottom:8px}
.mktg-root.tck-drw .tck-pb-t{font-size:11px;font-weight:800;padding:8px 11px}.mktg-root.tck-drw .tck-pb-t.r{background:#FDF4F2;color:#C0392B}.mktg-root.tck-drw .tck-pb-t.y{background:#FEFAF2;color:#C6862F}
.mktg-root.tck-drw .tck-pb-r{display:flex;align-items:center;gap:9px;padding:9px 11px;border-top:1px solid #EFEDE8}
.mktg-root.tck-drw .tck-pb-n{flex:1;font-size:11.5px;font-weight:700;color:#26241F}.mktg-root.tck-drw .tck-pb-k{font-size:10px;color:#8B867C;white-space:nowrap}
.mktg-root.tck-drw .tck-pb-none{padding:10px 11px;border-top:1px solid #EFEDE8;font-size:11px;color:#8B867C}
.mktg-root.tck-drw .tck-pfull{width:100%;background:#0D1B33;color:#fff;border:none;border-radius:9px;padding:12px;font-size:12.5px;font-weight:700;margin-top:12px;cursor:pointer}
.mktg-root.tck-drw .tck-pfilt{width:100%;border:1px solid #E1A146;background:#FBF1DC;color:#8B6520;border-radius:9px;padding:10px;font-size:12px;font-weight:700;margin-top:8px;cursor:pointer}
.mktg-root.tck-drw .tck-ki{width:17px;height:17px;display:inline-flex;flex-shrink:0}.mktg-root.tck-drw .tck-ki svg{width:100%;height:100%;display:block}
.mktg-root.tck-drw .tck-bar{display:block;height:6px;background:#E7E3DA;border-radius:5px;overflow:hidden}.mktg-root.tck-drw .tck-bar i{display:block;height:100%;border-radius:5px}.mktg-root.tck-drw .tck-bar i.g{background:#2E7D5B}.mktg-root.tck-drw .tck-bar i.y{background:#C6862F}.mktg-root.tck-drw .tck-bar i.r{background:#C0392B}
.mktg-root.tck-drw .tck-pv{font-size:11px;font-weight:900}.mktg-root.tck-drw .tck-pv.g{color:#2E7D5B}.mktg-root.tck-drw .tck-pv.y{color:#C6862F}.mktg-root.tck-drw .tck-pv.r{color:#C0392B}
.mktg-root.tck-drw .tck-st{font-size:9px;font-weight:800;padding:3px 8px;border-radius:20px;white-space:nowrap}.mktg-root.tck-drw .tck-st-ok{background:#E4F0EA;color:#2E7D5B}.mktg-root.tck-drw .tck-st-bad{background:#F8E4DF;color:#C0392B}
/* MOBILE ≤860 */
@media(max-width:860px){
 .mktg-root .tck-tot-k{grid-template-columns:1fr 1fr}
 .mktg-root .tck-hd{display:none}
 .mktg-root .tck-PG,.mktg-root .tck-KG{grid-template-columns:1fr;gap:7px}
 .mktg-root .tck-cc2,.mktg-root .tck-cc,.mktg-root .tck-pw{text-align:left}
 .mktg-root .tck-car,.mktg-root .tck-kcar{justify-self:start}
 .mktg-root .tck-khd{display:none}.mktg-root .tck-freset{margin-left:0;width:100%}
 .mktg-root .tck-kn-h .tck-cc,.mktg-root .tck-kn-h .tck-pw{display:flex;justify-content:space-between;align-items:center;gap:10px}
 .mktg-root .tck-kn-h .tck-cc::before,.mktg-root .tck-kn-h .tck-pw::before{content:attr(data-l);font-size:9.5px;text-transform:uppercase;color:#8B867C;font-weight:800}
 .mktg-root .tck-kn-h .tck-cc b{display:inline}.mktg-root .tck-kn-h .tck-sub2{display:none}
 .mktg-root table.tck-bt,.mktg-root table.tck-bt thead,.mktg-root table.tck-bt tbody,.mktg-root table.tck-bt tr,.mktg-root table.tck-bt td{display:block}
 .mktg-root table.tck-bt thead{display:none}
 .mktg-root table.tck-bt tbody tr{border:1px solid #EFEDE8;border-radius:9px;margin:8px;padding:3px}
 .mktg-root table.tck-bt tbody td{display:flex;justify-content:space-between;gap:10px;text-align:right;padding:7px 10px}
 .mktg-root table.tck-bt tbody td::before{content:attr(data-l);color:#8B867C;font-weight:800;font-size:9.5px;text-transform:uppercase}
 .tck-drw{width:100vw}
 .mktg-root.tck-drw .tck-pk-r{grid-template-columns:18px 1fr 52px;row-gap:6px}.mktg-root.tck-drw .tck-pk-r .tck-bar,.mktg-root.tck-drw .tck-pk-r .tck-pv,.mktg-root.tck-drw .tck-pk-r .tck-st{grid-column:2 / -1}
}

/* ════ "CHỈ TIÊU CỦA TÔI" — 3 khuôn mặt theo vai trò (prefix cmt-, bám mockup-chi-tieu-cua-toi.html · màu ẤM literal) ════ */
.mktg-root .cmt-wrap{display:block}
.mktg-root .cmt-ki{width:18px;height:18px;display:inline-flex;flex-shrink:0}.mktg-root .cmt-ki svg{width:100%;height:100%;display:block}
.mktg-root .cmt-rolebar{display:flex;align-items:center;gap:11px;background:#FBF1DC;border:1px solid #EEDDBE;border-radius:11px;padding:11px 14px;margin-bottom:13px;flex-wrap:wrap}
.mktg-root .cmt-rb-t{font-size:13px;font-weight:900;color:#26241F}.mktg-root .cmt-rb-s{font-size:11.5px;color:#8B6520}.mktg-root .cmt-rb-s b{color:#26241F}
.mktg-root .cmt-toolbar{display:flex;gap:8px;margin-bottom:13px;flex-wrap:wrap}
.mktg-root .cmt-tb2{border:1px solid #E0DDD6;background:#fff;color:#26241F;border-radius:8px;padding:8px 14px;font-size:11.5px;font-weight:700;cursor:pointer}.mktg-root .cmt-tb2:hover{border-color:#E1A146;color:#0D1B33}
.mktg-root .cmt-tot{background:#fff;border:1px solid #E0DDD6;border-radius:12px;overflow:hidden;margin-bottom:14px}
.mktg-root .cmt-tot-h{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;background:#0D1B33;border-bottom:3px solid #E1A146;padding:11px 15px}
.mktg-root .cmt-tot-t{font-size:13.5px;font-weight:900;color:#fff}
.mktg-root .cmt-tot-d{background:rgba(225,161,70,.2);border:1px solid rgba(225,161,70,.45);color:#EFC578;font-size:10px;font-weight:800;padding:4px 11px;border-radius:20px}
.mktg-root .cmt-tot-bd{padding:13px 15px}
.mktg-root .cmt-tot-k{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;margin-bottom:12px}.mktg-root .cmt-tot-k4{grid-template-columns:repeat(4,1fr)}
.mktg-root .cmt-tk{background:#FBFAF7;border:1px solid #E0DDD6;border-radius:10px;padding:10px;text-align:center}
.mktg-root .cmt-tk .l{font-size:8.5px;letter-spacing:.05em;text-transform:uppercase;color:#8B867C;font-weight:800;margin-bottom:4px}
.mktg-root .cmt-tk .v{font-size:24px;font-weight:900;line-height:1.15;color:#26241F}.mktg-root .cmt-tk .v.g{color:#2E7D5B}.mktg-root .cmt-tk .v.y{color:#C6862F}.mktg-root .cmt-tk .v.r{color:#C0392B}
.mktg-root .cmt-tk .s{font-size:9px;color:#8B867C;margin-top:2px}
.mktg-root .cmt-barbig{display:block;height:12px;background:#E7E3DA;border-radius:7px;overflow:hidden}.mktg-root .cmt-barbig i{display:block;height:100%;border-radius:7px}.mktg-root .cmt-barbig i.g{background:#2E7D5B}.mktg-root .cmt-barbig i.y{background:#C6862F}.mktg-root .cmt-barbig i.r{background:#C0392B}
.mktg-root .cmt-lg{display:flex;justify-content:space-between;margin-top:8px;font-size:10.5px;color:#8B867C;flex-wrap:wrap;gap:6px}.mktg-root .cmt-lg b{color:#26241F}
.mktg-root .cmt-sec2{display:flex;align-items:center;gap:10px;margin:20px 0 0;padding-bottom:9px;border-bottom:3px solid #E1A146;font-size:14px;font-weight:900;cursor:pointer;color:#26241F}
.mktg-root .cmt-sec2:hover .cmt-fold{border-color:#E1A146;color:#0D1B33}
.mktg-root .cmt-num2{width:25px;height:25px;border-radius:8px;background:#E1A146;color:#fff;display:flex;align-items:center;justify-content:center;font-size:12.5px;font-weight:900;flex-shrink:0}
.mktg-root .cmt-cnt2{font-size:11px;font-weight:700;color:#8B867C;margin-left:auto}
.mktg-root .cmt-fold{border:1px solid #E0DDD6;background:#fff;color:#26241F;border-radius:8px;padding:6px 12px;font-size:11px;font-weight:700;white-space:nowrap;flex-shrink:0;cursor:pointer}
.mktg-root .cmt-fold .ci{display:inline-block;transition:transform .15s}.mktg-root .cmt-sec2.cl .cmt-fold .ci{transform:rotate(-90deg)}
.mktg-root .cmt-box{padding-top:12px}.mktg-root .cmt-box.cl{display:none}
.mktg-root .cmt-gbox{background:#fff;border:1px solid #E0DDD6;border-radius:11px;overflow:hidden;margin-bottom:10px}.mktg-root .cmt-gbox.r{border-color:#F0D9D3}.mktg-root .cmt-gbox.y{border-color:#EEDDBE}.mktg-root .cmt-gbox.wide{overflow-x:auto}
.mktg-root .cmt-gt{font-size:11.5px;font-weight:800;padding:9px 13px}.mktg-root .cmt-gt.r{background:#FDF4F2;color:#C0392B}.mktg-root .cmt-gt.y{background:#FEFAF2;color:#C6862F}
.mktg-root .cmt-prow{display:grid;grid-template-columns:32px 1fr 78px 148px 90px 96px;gap:10px;align-items:center;padding:11px 13px;border-top:1px solid #EFEDE8}
.mktg-root .cmt-krow{display:grid;grid-template-columns:18px 1fr 78px 148px 74px;gap:10px;align-items:center;padding:10px 13px;border-top:1px solid #EFEDE8}
.mktg-root .cmt-drow{display:grid;grid-template-columns:1fr 96px 84px 74px;gap:10px;align-items:center;padding:10px 13px;border-top:1px solid #EFEDE8}
.mktg-root .cmt-rrow{display:grid;grid-template-columns:26px 1fr 148px 70px;gap:10px;align-items:center;padding:10px 13px;border-top:1px solid #EFEDE8}
.mktg-root .cmt-trow{display:grid;grid-template-columns:1fr 90px 110px;gap:10px;align-items:center;padding:11px 13px;border-top:1px solid #EFEDE8}
.mktg-root .cmt-trow.bad{background:#FDF4F2}.mktg-root .cmt-trow.mid{background:#FEFAF2}
.mktg-root .cmt-gbox>div:first-child{border-top:none}
.mktg-root .cmt-pav2{width:30px;height:30px;border-radius:9px;background:#E1A146;color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:900}
.mktg-root .cmt-pnn,.mktg-root .cmt-knn,.mktg-root .cmt-dnn,.mktg-root .cmt-tnn{display:flex;flex-direction:column;font-size:12.5px;font-weight:800;color:#26241F;line-height:1.3;min-width:0}
.mktg-root .cmt-dnn,.mktg-root .cmt-tnn{font-weight:700}
.mktg-root .cmt-pvv{font-size:9.5px;font-weight:600;color:#8B867C}
.mktg-root .cmt-cc3{text-align:center;font-size:11px;color:#8B867C}.mktg-root .cmt-cc3 b{font-size:14px;font-weight:900;color:#26241F}.mktg-root .cmt-cc3 b.g{color:#2E7D5B}.mktg-root .cmt-cc3 b.y{color:#C6862F}.mktg-root .cmt-cc3 b.r{color:#C0392B}
.mktg-root .cmt-s3{display:block;font-size:8.5px;color:#8B867C}
.mktg-root .cmt-pw{display:flex;align-items:center;gap:8px}
.mktg-root .cmt-bar{flex:1;display:block;height:8px;background:#E7E3DA;border-radius:5px;overflow:hidden}.mktg-root .cmt-bar i{display:block;height:100%;border-radius:5px}.mktg-root .cmt-bar i.g{background:#2E7D5B}.mktg-root .cmt-bar i.y{background:#C6862F}.mktg-root .cmt-bar i.r{background:#C0392B}
.mktg-root .cmt-pv{font-size:12px;font-weight:900;white-space:nowrap}.mktg-root .cmt-pv.g{color:#2E7D5B}.mktg-root .cmt-pv.y{color:#C6862F}.mktg-root .cmt-pv.r{color:#C0392B}
.mktg-root .cmt-st{font-size:9.5px;font-weight:800;padding:5px 9px;border-radius:20px;white-space:nowrap;text-align:center}
.mktg-root .cmt-st-ok{background:#E4F0EA;color:#2E7D5B}.mktg-root .cmt-st-mid{background:#FBEFD8;color:#C6862F}.mktg-root .cmt-st-bad{background:#F8E4DF;color:#C0392B}.mktg-root .cmt-st-wait{background:#EFEDE7;color:#807A70}
.mktg-root .cmt-tb{font-size:9.5px;font-weight:800;padding:5px 9px;border-radius:20px;white-space:nowrap;text-align:center}
.mktg-root .cmt-t-nb{background:#EFE9D8;color:#8a7a4a}.mktg-root .cmt-t-th{background:#E7EEF7;color:#2F5FA8}.mktg-root .cmt-t-tt{background:#FBF1DC;color:#9C6A16}.mktg-root .cmt-t-cd{background:#F8E4DF;color:#C0392B}
.mktg-root .cmt-dwho{font-size:10px;font-weight:700;padding:5px 9px;border-radius:20px;background:#F0EBE1;color:#8a6a3a;text-align:center;white-space:nowrap}
.mktg-root .cmt-mini-btn{border:1px solid #E0DDD6;background:#fff;color:#0D1B33;border-radius:8px;padding:7px 10px;font-size:10.5px;font-weight:700;white-space:nowrap;cursor:pointer}.mktg-root .cmt-mini-btn:hover{background:#0D1B33;color:#fff;border-color:#0D1B33}
.mktg-root .cmt-rnum{width:24px;height:24px;border-radius:7px;display:flex;align-items:center;justify-content:center;font-size:11.5px;font-weight:900;color:#fff}.mktg-root .cmt-rnum.g{background:#2E7D5B}.mktg-root .cmt-rnum.y{background:#C6862F}.mktg-root .cmt-rnum.r{background:#C0392B}
.mktg-root .cmt-bigbtn{width:100%;background:#0D1B33;color:#fff;border:none;border-radius:10px;padding:13px;font-size:13px;font-weight:700;margin-top:6px;cursor:pointer}.mktg-root .cmt-bigbtn:hover{background:#1E3560}
.mktg-root .cmt-khd2,.mktg-root .cmt-krow2{display:grid;grid-template-columns:1.5fr 78px 120px 108px 132px 88px 96px 82px;gap:9px;align-items:center}
.mktg-root .cmt-khd2{background:#F0EDE6;padding:9px 13px;border-bottom:1px solid #E0DDD6}
.mktg-root .cmt-khd2 span{font-size:8.5px;letter-spacing:.06em;text-transform:uppercase;color:#6E6A62;font-weight:800;text-align:center}.mktg-root .cmt-khd2 span:first-child{text-align:left}
.mktg-root .cmt-krow2{padding:11px 13px;border-top:1px solid #EFEDE8}.mktg-root .cmt-krow2:nth-child(even){background:#FBFAF8}
.mktg-root .cmt-kico{display:inline-flex;margin-right:6px;vertical-align:middle}
.mktg-root .cmt-allok{padding:12px 13px;font-size:11.5px;color:#2E7D5B;font-weight:700}
.mktg-root .cmt-miss{background:#FEFAF2;border:1px solid #EEDDBE;border-radius:9px;padding:10px 12px;font-size:11px;color:#8a7a4a;margin:-2px 0 10px}.mktg-root .cmt-miss b{color:#26241F}
.mktg-root .cmt-empty{background:#fff;border:1px dashed #E0DDD6;border-radius:11px;padding:22px;text-align:center;color:#8B867C;font-size:12.5px}
.mktg-root .cmt-fullsheet{margin-top:10px}.mktg-root .cmt-fullsheet.cl{display:none}
.mktg-root .cmt-note{margin-top:14px;background:#fff;border:1px solid #E0DDD6;border-left:3px solid #E1A146;border-radius:10px;padding:13px 15px;font-size:12.5px;line-height:1.75;color:#26241F}.mktg-root .cmt-note b{color:#0D1B33}
@media(max-width:860px){
 .mktg-root .cmt-tot-k,.mktg-root .cmt-tot-k4{grid-template-columns:1fr 1fr}
 .mktg-root .cmt-prow,.mktg-root .cmt-krow,.mktg-root .cmt-drow,.mktg-root .cmt-rrow,.mktg-root .cmt-trow,.mktg-root .cmt-krow2{grid-template-columns:1fr;gap:7px}
 .mktg-root .cmt-khd2{display:none}
 .mktg-root .cmt-krow2 .cmt-cc3,.mktg-root .cmt-krow2 .cmt-pw{display:flex;justify-content:space-between;align-items:center;gap:10px}
 .mktg-root .cmt-krow2 .cmt-cc3::before,.mktg-root .cmt-krow2 .cmt-pw::before{content:attr(data-l);font-size:9.5px;text-transform:uppercase;color:#8B867C;font-weight:800}
 .mktg-root .cmt-krow2 .cmt-s3{display:none}
 .mktg-root .cmt-cc3,.mktg-root .cmt-pw{text-align:left}.mktg-root .cmt-mini-btn{width:100%}
 .mktg-root .cmt-st,.mktg-root .cmt-tb,.mktg-root .cmt-dwho{justify-self:start}
}

/* ══════════ QUẢN LÝ CÔNG VIỆC — redesign bám mockup-qlcv (prefix cv-) ══════════ */
/* VIỆC 1 — chip kênh có icon thương hiệu SVG */
.mktg-root .cv-ki{width:14px;height:14px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
.mktg-root .cv-ki svg{width:100%;height:100%;display:block}
.mktg-root .cv-chip .cv-ki{margin-right:1px}
.mktg-root .cv-star{color:#E1A146;font-size:12px}
.mktg-root .ct2-chip.active .cv-star{color:#fff}
.mktg-root .ct2-chip.active .cv-ki svg{fill:#fff !important}
/* VIỆC 2 — hàng lọc: Tuyến (chips) · Nhóm · Người · Trạng thái */
.mktg-root .cv-frow{display:flex;align-items:center;gap:9px;flex-wrap:wrap;background:#FCFAF5;padding:11px 14px;border:1px solid #E6DFD0;border-radius:11px}
.mktg-root .cv-frow-tuyen{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.mktg-root .cv-tline{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.mktg-root .cv-fl{font-size:10.5px;letter-spacing:.05em;text-transform:uppercase;color:#8A8170;font-weight:800;white-space:nowrap}
.mktg-root .cv-sepv{width:1px;height:20px;background:#E6DFD0;margin:0 2px}
.mktg-root .cv-frow-sel{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.mktg-root .cv-fbox{display:inline-flex;align-items:center;gap:6px}
.mktg-root .cv-fsel{border:1px solid #E6DFD0;background:#fff;border-radius:8px;padding:7px 10px;font-size:12px;color:#0D1B33;font-weight:600;font-family:inherit;cursor:pointer;max-width:220px}
.mktg-root .cv-tchip{border:1px solid #E6DFD0;background:#fff;border-radius:30px;padding:6px 12px;font-size:11.5px;font-weight:700;color:#8A8170;cursor:pointer}
.mktg-root .cv-tchip.on{background:#0D1B33;color:#fff;border-color:#0D1B33}
.mktg-root .cv-tchip.nb:hover{border-color:#8a7a4a;color:#8a7a4a}.mktg-root .cv-tchip.th:hover{border-color:#2F5FA8;color:#2F5FA8}.mktg-root .cv-tchip.tt:hover{border-color:#C6862F;color:#9C6A16}.mktg-root .cv-tchip.cd:hover{border-color:#C0392B;color:#C0392B}
/* VIỆC 2 — form Thêm việc */
.mktg-root .cv-addwrap{border:1px solid #FBF1DC;background:#FEF9EE;border-radius:11px;margin:14px 0;padding:12px 13px}
.mktg-root .cv-addt{font-size:11px;font-weight:800;color:#9C6A16;text-transform:uppercase;letter-spacing:.04em;margin-bottom:10px}
.mktg-root .cv-daybtn{border:1px solid #E6DFD0;background:#fff;border-radius:9px;padding:9px 14px;font-size:12.5px;font-weight:700;color:#0D1B33;margin-bottom:10px;cursor:pointer}
.mktg-root .cv-arow{display:grid;grid-template-columns:1.7fr 1fr 1.3fr 1.1fr auto;gap:9px;align-items:end}
.mktg-root .cv-fld label{display:block;font-size:9.5px;letter-spacing:.05em;text-transform:uppercase;color:#9C6A16;font-weight:800;margin-bottom:5px}
.mktg-root .cv-fld input,.mktg-root .cv-fld select,.mktg-root .cv-fld .cv-chsel{width:100%;border:1px solid #E6DFD0;background:#fff;border-radius:9px;padding:9px 11px;font-size:12.5px;color:#0D1B33;font-weight:600;font-family:inherit}
.mktg-root .cv-btn-them{background:#C6862F;color:#fff;border:none;border-radius:9px;padding:10px 18px;font-size:12.5px;font-weight:700;white-space:nowrap;width:100%;cursor:pointer}
.mktg-root .cv-autobar{margin-top:10px;background:#F1F8F4;border:1px solid #CFE6DA;border-radius:9px;padding:9px 12px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.mktg-root .cv-autol{font-size:11px;font-weight:800;color:#2E7D5B;text-transform:uppercase;letter-spacing:.04em}
.mktg-root .cv-aitem{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;color:#8A8170;font-weight:700}
.mktg-root .cv-chg{border:1px solid #E6DFD0;background:#fff;color:#8A8170;border-radius:6px;padding:2px 8px;font-size:10px;font-weight:700;cursor:pointer}
.mktg-root .cv-autosel{border:1px solid #CFE6DA;background:#fff;border-radius:7px;padding:4px 8px;font-size:11.5px;font-weight:700;color:#0D1B33;font-family:inherit;cursor:pointer}
/* VIỆC 3 — danh sách việc */
.mktg-root .ct2-task.cv-item{border:none;border-radius:0;margin:0;background:transparent;box-shadow:none}
.mktg-root [data-ctpane="cv"] [data-ctwork] .ct2-daybody{padding:0}
.mktg-root .cv-GRID{display:grid;grid-template-columns:1fr 136px 118px 162px 130px 112px 34px;gap:10px;align-items:center}
.mktg-root .cv-hrow{padding:9px 15px;border-bottom:1px solid #E6DFD0;background:#F6F1E6}
.mktg-root .cv-hrow span{font-size:9px;letter-spacing:.06em;text-transform:uppercase;color:#8A8170;font-weight:800}
.mktg-root .cv-drow{padding:8px 15px;border-bottom:1px solid #E6DFD0;min-height:44px;cursor:pointer}
.mktg-root .cv-drow:hover{background:#FEF9EE}
.mktg-root .cv-c1{display:flex;align-items:center;gap:10px;min-width:0}
.mktg-root .cv-c2,.mktg-root .cv-c3,.mktg-root .cv-c4,.mktg-root .cv-c5,.mktg-root .cv-c6{min-width:0}
.mktg-root .cv-c7{text-align:right}
.mktg-root .cv-vt{font-size:13px;font-weight:700;color:#0D1B33;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mktg-root .cv-vt.done{text-decoration:line-through;color:#8A8170}
.mktg-root .cv-ck{width:20px;height:20px;border:1px solid #E6DFD0;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:11px;color:#fff;background:#fff;flex-shrink:0;cursor:pointer}
.mktg-root .cv-ck.on{background:#2E7D5B;border-color:#2E7D5B}
.mktg-root .cv-cav{width:26px;height:26px;border:1px solid #E6DFD0;background:#fff;border-radius:7px;color:#0D1B33;font-size:10px;cursor:pointer;flex-shrink:0}
.mktg-root .cv-imgc{font-size:10.5px;color:#8A8170;font-weight:700;flex-shrink:0}
.mktg-root .cv-lk{color:#2F5FA8;text-decoration:none;font-weight:800;flex-shrink:0}
.mktg-root .cv-pill{display:inline-flex;align-items:center;gap:5px;font-size:10px;font-weight:700;padding:4px 9px;border-radius:20px;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.mktg-root .cv-kn{background:#F1F4F9;color:#0D1B33;border:1px solid #E1E7F0}
.mktg-root .cv-tu.t-nb{background:#EFE9D8;color:#8a7a4a}.mktg-root .cv-tu.t-th{background:#E7EEF7;color:#2F5FA8}.mktg-root .cv-tu.t-tt{background:#FBF1DC;color:#9C6A16}.mktg-root .cv-tu.t-cd{background:#F8E4DF;color:#C0392B}
.mktg-root .cv-nh{background:#F1ECE2;color:#8a6a3a}
.mktg-root .cv-ng{background:#F3EFE6;color:#8A8170}
.mktg-root .cv-emp{background:#F4F0E7;color:#b0a794;font-weight:600}
.mktg-root .cv-ttsel{border:none;border-radius:20px;padding:4px 10px;font-size:10px;font-weight:700;font-family:inherit;cursor:pointer;max-width:100%}
.mktg-root .cv-mrow{display:none}
.mktg-root .cv-mtop{display:flex;align-items:center;gap:9px;margin-bottom:7px}
.mktg-root .cv-mtags{display:flex;flex-wrap:wrap;gap:5px;padding-left:29px}
@media(max-width:860px){
  .mktg-root .ct2-chips{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:5px}
  .mktg-root .ct2-chips .ct2-chip{flex:0 0 auto}
  .mktg-root .cv-frow{flex-direction:column;align-items:stretch;gap:8px}
  .mktg-root .cv-sepv{display:none}
  .mktg-root .cv-tline{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:3px}
  .mktg-root .cv-tchip{flex:0 0 auto}
  .mktg-root .cv-frow-sel{display:grid;grid-template-columns:1fr 1fr;gap:7px}
  .mktg-root .cv-fbox{flex-direction:column;align-items:stretch;gap:4px}
  .mktg-root .cv-fone{grid-column:1 / -1}
  .mktg-root .cv-fsel{max-width:none}
  .mktg-root .cv-arow{grid-template-columns:1fr}
  .mktg-root .cv-autol{width:100%}
  .mktg-root .cv-hrow,.mktg-root .cv-drow{display:none}
  .mktg-root .cv-mrow{display:block;padding:10px 12px;border-bottom:1px solid #E6DFD0;cursor:pointer}
  .mktg-root .cv-mtop .cv-vt{flex:1;min-width:0;font-size:12.5px}
  .mktg-root .cv-mtop .cv-cav{margin-left:auto}
}

/* ══════════ PHIẾU GIAO VIỆC (Tiến độ theo người) — bám mockup-marketing-phieu-trong-bang (prefix tds-) ══════════ */
.mktg-root .tds-topbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:10px 0 12px}
.mktg-root .tds-tophint{font-size:12px;color:#8A8170}.mktg-root .tds-tophint b{color:#0D1B33}
.mktg-root .tds-btnpdf{margin-left:auto;background:#E1A146;color:#fff;border:none;border-radius:9px;padding:9px 15px;font-size:12px;font-weight:700;font-family:inherit;cursor:pointer;white-space:nowrap;display:inline-flex;align-items:center;gap:7px;box-shadow:0 3px 10px rgba(225,161,70,.35)}
.mktg-root .tds-btnpdf:hover{background:#C6862F}
/* Bảng người */
.mktg-root .tds-tablewrap{background:#fff;border:1px solid #E2D9C7;border-radius:12px;overflow:hidden}
.mktg-root .tds-ptable{width:100%;border-collapse:collapse}
.mktg-root .tds-ptable thead th{background:#0D1B33;color:#fff;font-size:9.5px;letter-spacing:.04em;text-transform:uppercase;text-align:left;padding:11px 12px;font-weight:700;white-space:nowrap}
.mktg-root .tds-ptable tbody td{padding:11px 12px;border-bottom:1px solid #E2D9C7;vertical-align:middle}
.mktg-root .tds-ptable tbody tr.tds-prow:nth-of-type(even){background:#FBF8F1}
.mktg-root .tds-ptable tbody tr.tds-prow:hover{background:#FEF9EE}
.mktg-root .tds-cnm{min-width:140px}.mktg-root .tds-nn{font-size:13px;font-weight:800;color:#0D1B33;margin-right:7px}
.mktg-root .tds-vt{font-size:9px;font-weight:700;padding:2px 8px;border-radius:20px;background:#EDE6F0;color:#7a5c8a;white-space:nowrap}
.mktg-root .tds-cc{text-align:center;font-weight:700;color:#0D1B33}
.mktg-root .tds-cop{text-align:right}
.mktg-root .tds-openc{color:#0D1B33;font-weight:700;font-size:11.5px;border:1px solid #E2D9C7;border-radius:8px;padding:6px 11px;background:#fff;white-space:nowrap;cursor:pointer;display:inline-block}
.mktg-root .tds-openc:hover{border-color:#E1A146}
.mktg-root .tds-openc.on{background:#0D1B33;color:#fff;border-color:#0D1B33}
/* Hàng phiếu bung — GỌN trong bảng, thụt lề, nền kem */
.mktg-root .tds-sheetrow td{background:#F1ECE2 !important;padding:0 14px 16px !important;border-bottom:1px solid #E2D9C7}
.mktg-root .tds-sheetrow:hover td{background:#F1ECE2 !important}
/* Thanh tiến độ + % (ngắn gọn, % sát cạnh) */
.mktg-root .tds-pbar{display:inline-block;height:8px;background:#EDE6D6;border-radius:5px;overflow:hidden;vertical-align:middle;margin-right:8px}
.mktg-root .tds-pf{display:block;height:100%;border-radius:5px}
.mktg-root .tds-pf.g{background:linear-gradient(90deg,#2E7D5B,#57b98a)}.mktg-root .tds-pf.y{background:linear-gradient(90deg,#C6862F,#EFC578)}.mktg-root .tds-pf.r{background:linear-gradient(90deg,#C0392B,#e07a6e)}
.mktg-root .tds-pv{font-size:12px;font-weight:700}.mktg-root .tds-pv.g{color:#2E7D5B}.mktg-root .tds-pv.y{color:#C6862F}.mktg-root .tds-pv.r{color:#C0392B}
/* Trạng thái pill (chấm màu) */
.mktg-root .tds-st{font-size:9.5px;font-weight:700;padding:4px 11px;border-radius:20px;white-space:nowrap;display:inline-flex;align-items:center;gap:6px}
.mktg-root .tds-st::before{content:"";width:6px;height:6px;border-radius:50%}
.mktg-root .tds-st-ok{background:#E4F0EA;color:#2E7D5B}.mktg-root .tds-st-ok::before{background:#2E7D5B}
.mktg-root .tds-st-mid{background:#FBEFD8;color:#C6862F}.mktg-root .tds-st-mid::before{background:#C6862F}
.mktg-root .tds-st-bad{background:#F8E4DF;color:#C0392B}.mktg-root .tds-st-bad::before{background:#C0392B}
.mktg-root .tds-st-wait{background:#EEE8DB;color:#7c7566}.mktg-root .tds-st-wait::before{background:#a89f8c}
/* Tuyến badge */
.mktg-root .tds-tb{font-size:9px;font-weight:700;padding:3px 9px;border-radius:20px;white-space:nowrap}
.mktg-root .tds-tb.t-nb{background:#EFE9D8;color:#8a7a4a}.mktg-root .tds-tb.t-th{background:#E7EEF7;color:#2F5FA8}.mktg-root .tds-tb.t-tt{background:#FBF1DC;color:#9C6A16}.mktg-root .tds-tb.t-cd{background:#F8E4DF;color:#C0392B}
/* Card phiếu */
.mktg-root .tds-card{background:#fff;border:1px solid #E2D9C7;border-radius:14px;box-shadow:0 8px 24px rgba(13,27,51,.12);overflow:hidden;position:relative}
.mktg-root .tds-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:#E1A146;z-index:1}
.mktg-root .tds-phhd{background:#0D1B33;color:#fff;padding:16px 18px;display:flex;align-items:center;gap:13px;flex-wrap:wrap}
.mktg-root .tds-av{width:44px;height:44px;border-radius:50%;background:#E1A146;color:#0D1B33;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:18px;flex-shrink:0}
.mktg-root .tds-hnm{font-size:16px;font-weight:900}.mktg-root .tds-hsub{font-size:11.5px;color:rgba(255,255,255,.75);margin-top:2px}
.mktg-root .tds-big{margin-left:auto;text-align:right}.mktg-root .tds-big .n{font-size:24px;font-weight:900;color:#EFC578;line-height:1}.mktg-root .tds-big .l{font-size:10px;color:rgba(255,255,255,.7);letter-spacing:.05em;text-transform:uppercase;margin-top:3px}
.mktg-root .tds-phhd .tds-btnpdf{margin-left:0;box-shadow:none;padding:8px 13px;font-size:11px}
.mktg-root .tds-kpi{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#E2D9C7}
.mktg-root .tds-kp{background:#fff;padding:13px;text-align:center}.mktg-root .tds-kp .l{font-size:9px;letter-spacing:.06em;text-transform:uppercase;color:#8A8170;font-weight:700;margin-bottom:5px}.mktg-root .tds-kp .v{font-size:19px;font-weight:900;color:#0D1B33}
.mktg-root .tds-kp.g .v{color:#2E7D5B}.mktg-root .tds-kp.y .v{color:#C6862F}.mktg-root .tds-kp.r .v{color:#C0392B}
.mktg-root .tds-blk{padding:15px 18px;border-top:1px solid #E2D9C7}
.mktg-root .tds-blkt{font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:#9C6A16;font-weight:700;margin-bottom:12px}
/* Mục 1: Tuyến → Loại → Bài */
.mktg-root .tds-tuyens{display:flex;flex-direction:column;gap:10px}
.mktg-root .tds-tu{background:#fff;border:1px solid #E2D9C7;border-radius:12px;overflow:hidden}
.mktg-root .tds-tuhd{display:flex;align-items:center;gap:11px;padding:11px 13px;background:#FBF8F1;cursor:pointer;flex-wrap:wrap}
.mktg-root .tds-tuhd:hover{background:#FEF9EE}
.mktg-root .tds-tun{font-size:11.5px;color:#8A8170;white-space:nowrap}.mktg-root .tds-tun b{color:#0D1B33;font-size:14px}
.mktg-root .tds-tuld{font-size:10px;font-weight:700;padding:3px 9px;border-radius:20px;background:#EDE6F0;color:#7a5c8a;white-space:nowrap}
.mktg-root .tds-tupc{font-size:12px;font-weight:800;min-width:74px}.mktg-root .tds-tupc.g{color:#2E7D5B}.mktg-root .tds-tupc.y{color:#C6862F}.mktg-root .tds-tupc.r{color:#C0392B}
.mktg-root .tds-tufold{margin-left:auto;border:1px solid #0D1B33;background:#fff;border-radius:8px;padding:6px 12px;font-size:11px;font-weight:700;color:#0D1B33;display:inline-flex;align-items:center;gap:6px;white-space:nowrap;flex-shrink:0;cursor:pointer}
.mktg-root .tds-tufold:hover{background:#0D1B33;color:#fff}
.mktg-root .tds-tufold .fi{display:inline-block;transition:transform .2s}.mktg-root .tds-tu.collapsed .tds-tufold .fi{transform:rotate(-90deg)}
.mktg-root .tds-tubody{border-top:1px solid #E2D9C7;padding:11px;background:#FCFAF5;display:flex;flex-direction:column;gap:8px}
.mktg-root .tds-tu.collapsed .tds-tubody{display:none}
.mktg-root .tds-nd{background:#fff;border:1px solid #E2D9C7;border-radius:10px;overflow:hidden}
.mktg-root .tds-ndhd{display:flex;align-items:center;gap:10px;padding:10px 12px;cursor:pointer;flex-wrap:wrap}
.mktg-root .tds-ndhd:hover{background:#FEF9EE}
.mktg-root .tds-ndnum{width:22px;height:22px;border-radius:6px;background:#0D1B33;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:900;flex-shrink:0}
.mktg-root .tds-ndnm{font-size:12.5px;font-weight:800;color:#0D1B33}.mktg-root .tds-fmt{font-size:10px;font-weight:700;padding:3px 9px;border-radius:20px;background:#EDE6F0;color:#7a5c8a}
.mktg-root .tds-ndn{font-size:11px;color:#8A8170;white-space:nowrap}.mktg-root .tds-ndn b{color:#0D1B33;font-size:13px}
.mktg-root .tds-ndfold{margin-left:auto;border:1px solid #E2D9C7;background:#fff;border-radius:7px;width:26px;height:26px;color:#0D1B33;font-size:11px;cursor:pointer;flex-shrink:0}
.mktg-root .tds-ndfold .fi{display:inline-block;transition:transform .2s}.mktg-root .tds-nd.collapsed .tds-ndfold .fi{transform:rotate(-90deg)}
.mktg-root .tds-ndbody{border-top:1px solid #E2D9C7}.mktg-root .tds-nd.collapsed .tds-ndbody{display:none}
.mktg-root .tds-ndbody table{width:100%;border-collapse:collapse}
.mktg-root .tds-ndbody thead th{background:#F1ECE2;color:#8A8170;font-size:9px;text-transform:uppercase;letter-spacing:.04em;text-align:left;padding:8px 12px;font-weight:700}
.mktg-root .tds-ndbody tbody td{padding:9px 12px;font-size:12px;border-bottom:1px solid #E2D9C7}
.mktg-root .tds-ndbody tbody tr:last-child td{border-bottom:none}
.mktg-root .tds-pnm{font-weight:700;color:#0D1B33}.mktg-root .tds-plk{text-align:right}
.mktg-root .tds-viewp{color:#2F5FA8;font-weight:700;font-size:11.5px;white-space:nowrap;border:1px solid #CFE0F4;background:#E7EEF7;border-radius:8px;padding:5px 11px;text-decoration:none}
.mktg-root .tds-nolink{color:#c3b9a4}
/* Mục 2 · 4 tables */
.mktg-root .tds-blk table{width:100%;border-collapse:collapse}
.mktg-root .tds-blk table thead th{background:#0D1B33;color:#fff;font-size:9px;letter-spacing:.04em;text-transform:uppercase;text-align:left;padding:9px 12px;font-weight:700}
.mktg-root .tds-blk>table tbody td,.mktg-root .tds-blk>div>table tbody td{padding:9px 12px;font-size:12px;border-bottom:1px solid #E2D9C7}
.mktg-root .tds-blk table tbody tr:nth-child(even){background:#FBF8F1}
.mktg-root .tds-knm,.mktg-root .tds-tdnm{font-weight:700;color:#0D1B33}
/* Mục 3: tuần */
.mktg-root .tds-wkrow{display:flex;align-items:center;gap:12px;padding:9px 12px;border:1px solid #E2D9C7;border-radius:10px;margin-bottom:7px;background:#fff}
.mktg-root .tds-wkrow.mid{background:#FEF9EE;border-color:#FBF1DC}
.mktg-root .tds-wkn{font-size:12px;font-weight:800;color:#0D1B33;min-width:118px}.mktg-root .tds-wkd{display:block;font-size:10px;color:#8A8170;font-weight:500}
.mktg-root .tds-wkb{font-size:12px;color:#8A8170;margin-left:auto;margin-right:12px}.mktg-root .tds-wkb b{color:#0D1B33;font-size:14px}
.mktg-root .tds-warn{margin-top:12px;background:#F8E4DF;border:1px solid #EFD0C8;border-radius:10px;padding:10px 13px;font-size:12px;color:#C0392B;line-height:1.5}.mktg-root .tds-warn b{color:#0D1B33}
@media(max-width:860px){
  .mktg-root .tds-btnpdf{margin-left:0}
  .mktg-root .tds-kpi{grid-template-columns:1fr 1fr}
  .mktg-root .tds-big{margin-left:0;text-align:left;width:100%;margin-top:4px}
  .mktg-root .tds-ptable,.mktg-root .tds-ptable tbody{display:block;width:auto}
  .mktg-root .tds-sheetrow{display:block}
  .mktg-root .tds-sheetrow td{display:block;width:auto;padding:0 6px 12px !important}
  .mktg-root .tds-sheetrow td::before{display:none !important}
  .mktg-root .tds-ptable thead{display:none}
  .mktg-root .tds-ptable tbody tr.tds-prow{display:block;border:1px solid #E2D9C7;border-radius:11px;margin:10px;padding:4px;background:#fff}
  .mktg-root .tds-ptable tbody tr.tds-prow td{display:flex;justify-content:space-between;gap:12px;align-items:center;text-align:right;padding:8px 11px;border-bottom:1px solid #E2D9C7}
  .mktg-root .tds-ptable tbody tr.tds-prow td::before{content:attr(data-l);color:#8A8170;font-weight:700;font-size:10.5px;text-transform:uppercase;text-align:left}
  .mktg-root .tds-ptable tbody tr.tds-prow td.tds-cnm{justify-content:flex-start}
  .mktg-root .tds-ndbody thead,.mktg-root .tds-blk table thead{display:none}
  .mktg-root .tds-ndbody table,.mktg-root .tds-ndbody tbody,.mktg-root .tds-ndbody tr,.mktg-root .tds-ndbody td,.mktg-root .tds-blk table,.mktg-root .tds-blk tbody,.mktg-root .tds-blk table tr,.mktg-root .tds-blk table td{display:block;width:auto}
  .mktg-root .tds-ndbody tbody tr,.mktg-root .tds-blk table tbody tr{border:1px solid #E2D9C7;border-radius:9px;margin:8px 0;padding:3px}
  .mktg-root .tds-ndbody tbody td,.mktg-root .tds-blk table tbody td{display:flex;justify-content:space-between;gap:10px;align-items:center;text-align:right;border-bottom:1px solid #E2D9C7}
  .mktg-root .tds-ndbody tbody td::before,.mktg-root .tds-blk table tbody td::before{content:attr(data-l);color:#8A8170;font-weight:700;font-size:10px;text-transform:uppercase;text-align:left}
  .mktg-root .tds-tufold .ft{display:none}
  .mktg-root .tds-wkn{min-width:0}
}
/* ── Phiếu giao việc: MODAL xem trước (giữa màn hình · nền tối mờ — như phiếu BC Sale) ── */
.tds-ov{position:fixed;inset:0;background:rgba(13,27,51,.55);display:none;align-items:flex-start;justify-content:center;z-index:10080;overflow-y:auto;padding:26px 14px;font-family:'Roboto',-apple-system,sans-serif}
.tds-ov.show{display:flex}
.tds-ov .tds-paper{width:100%;max-width:900px;background:#fff;border-radius:8px;box-shadow:0 22px 64px rgba(0,0,0,.34);overflow:hidden}
.tds-ov .tds-ppbar{display:flex;align-items:center;gap:10px;padding:12px 18px;background:#FBF8F1;border-bottom:1px solid #E7E0D2}
.tds-ov .tds-ppbar .ppt{font-size:12.5px;font-weight:700;color:#0D1B33;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tds-ov .tds-ppbar .pr{background:#0D1B33;color:#fff;border:none;border-radius:8px;padding:8px 15px;font-family:inherit;font-size:12.5px;font-weight:800;cursor:pointer;white-space:nowrap}
.tds-ov .tds-ppbar .pr:hover{background:#12264a}
.tds-ov .tds-ppbar .x{font-size:12px;color:#8A8170;border:1px solid #E7E0D2;border-radius:8px;padding:7px 12px;background:#fff;cursor:pointer;font-family:inherit;white-space:nowrap}
.tds-ov .tds-ppbar .x:hover{border-color:#C0392B;color:#C0392B}
.tds-ov .tds-docwrap{padding:22px 26px 30px;background:#fff}
/* Đầu phiếu (brand) + khối chữ ký — chuyển từ chuỗi print cũ vào đây để dùng trong modal */
.mktg-root .tds-brand{display:flex;align-items:center;gap:12px;border-bottom:2px solid #0D1B33;padding-bottom:10px;margin-bottom:14px}
.mktg-root .tds-brand .eb{font-size:9px;letter-spacing:.22em;text-transform:uppercase;color:#C6862F;font-weight:700}
.mktg-root .tds-brand h1{font-size:18px;font-weight:900;color:#0D1B33}
.mktg-root .tds-brand .kd{margin-left:auto;text-align:right;font-size:11px;color:#8A8170}
.mktg-root .tds-brand .kd b{display:block;font-size:14px;color:#0D1B33}
.mktg-root .tds-signs{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:22px;text-align:center}
.mktg-root .tds-sg .r{font-size:10px;font-weight:700;color:#0D1B33;text-transform:uppercase}
.mktg-root .tds-sg .ln{margin-top:42px;border-top:1px solid #0D1B33;padding-top:5px;font-size:9px;color:#8A8170}
/* Trong phiếu xem trước: mở hết tuyến/loại + ẩn nút gấp & nút PDF con */
.mktg-root .tds-print .tds-tu.collapsed .tds-tubody{display:block}
.mktg-root .tds-print .tds-nd.collapsed .tds-ndbody{display:block}
.mktg-root .tds-print .tds-tufold,.mktg-root .tds-print .tds-ndfold,.mktg-root .tds-print .tds-btnpdf{display:none}
/* Khi In / Lưu PDF: chỉ hiện phiếu, ẩn phần còn lại + thanh công cụ */
@media print{
  body.tdpdf-printing *{visibility:hidden!important}
  body.tdpdf-printing #td-pdf-ov,body.tdpdf-printing #td-pdf-ov *{visibility:visible!important}
  body.tdpdf-printing #td-pdf-ov{position:absolute!important;inset:0!important;background:#fff!important;display:block!important;overflow:visible!important;padding:0!important;z-index:99999!important}
  body.tdpdf-printing #td-pdf-ov .tds-ppbar{display:none!important}
  body.tdpdf-printing #td-pdf-ov .tds-paper{max-width:100%!important;box-shadow:none!important;border-radius:0!important}
  /* VIỆC 3 — không cắt đôi khối/dòng/thẻ giữa 2 trang; tiêu đề mục dính nội dung; header bảng dài lặp mỗi trang; bỏ bóng */
  body.tdpdf-printing #td-pdf-ov .pnv-tu,body.tdpdf-printing #td-pdf-ov .pnv-nd,body.tdpdf-printing #td-pdf-ov .pnv-rr,body.tdpdf-printing #td-pdf-ov .pnv-wk,body.tdpdf-printing #td-pdf-ov tr{page-break-inside:avoid;break-inside:avoid}
  body.tdpdf-printing #td-pdf-ov .pnv-mt2{page-break-after:avoid;break-after:avoid}
  body.tdpdf-printing #td-pdf-ov table.pnv-pt thead,body.tdpdf-printing #td-pdf-ov table.pnv-kt thead{display:table-header-group}
  body.tdpdf-printing #td-pdf-ov .pnv-card,body.tdpdf-printing #td-pdf-ov .pnv-tu,body.tdpdf-printing #td-pdf-ov .pnv-sect{box-shadow:none!important}
  /* PHIẾU V2 (pv2-) — IN theo ĐÚNG cái đang mở (WYSIWYG, KHÔNG ép mở hết); ẩn mọi nút; không cắt đôi; thead lặp; bỏ bóng */
  body.tdpdf-printing #td-pdf-ov .pv2-fold,body.tdpdf-printing #td-pdf-ov .pv2-tfold,body.tdpdf-printing #td-pdf-ov .pv2-ncar,body.tdpdf-printing #td-pdf-ov .pv2-car,body.tdpdf-printing #td-pdf-ov .pv2-gcar,body.tdpdf-printing #td-pdf-ov .pv2-dcar,body.tdpdf-printing #td-pdf-ov .pv2-pdf,body.tdpdf-printing #td-pdf-ov .pv2-toolbar,body.tdpdf-printing #td-pdf-ov .pv2-src button,body.tdpdf-printing #td-pdf-ov .tds-ppbar{display:none !important}
  body.tdpdf-printing #td-pdf-ov .pv2-tu,body.tdpdf-printing #td-pdf-ov .pv2-nd,body.tdpdf-printing #td-pdf-ov .pv2-pl,body.tdpdf-printing #td-pdf-ov .pv2-grp,body.tdpdf-printing #td-pdf-ov .pv2-day,body.tdpdf-printing #td-pdf-ov .pv2-wk,body.tdpdf-printing #td-pdf-ov .pv2-w5c,body.tdpdf-printing #td-pdf-ov .pv2-rtot,body.tdpdf-printing #td-pdf-ov .pv2-rwrap{page-break-inside:avoid;break-inside:avoid}
  body.tdpdf-printing #td-pdf-ov .pv2-sec{page-break-after:avoid;break-after:avoid}
  body.tdpdf-printing #td-pdf-ov table.pv2-pt thead,body.tdpdf-printing #td-pdf-ov table.pv2-kt thead,body.tdpdf-printing #td-pdf-ov table.pv2-kt2 thead{display:table-header-group}
  body.tdpdf-printing #td-pdf-ov .pv2-card,body.tdpdf-printing #td-pdf-ov .pv2-tu,body.tdpdf-printing #td-pdf-ov .pv2-sect,body.tdpdf-printing #td-pdf-ov .pv2-grp{box-shadow:none!important}
}
@media(max-width:600px){ .tds-ov{padding:12px 8px} .tds-ov .tds-docwrap{padding:16px 14px 22px} }
/* ── REACH — thẻ "Reach của tôi" + bảng Reach cả phòng (bám mockup-marketing-reach.html · màu literal) ── */
.mktg-root .tdr-sec{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#9C6A16;font-weight:700;margin:22px 2px 12px;display:flex;align-items:center;gap:9px}
.mktg-root .tdr-sec::before{content:"◆";color:#E1A146;font-size:8px}
.mktg-root .tdr-rule{flex:1;height:1px;background:linear-gradient(90deg,#FBF1DC,transparent)}
.mktg-root .tdr-who2{font-size:9px;background:#0D1B33;color:#fff;padding:3px 9px;border-radius:20px;letter-spacing:0}
.mktg-root .tdr-who{font-size:10px;font-weight:700;padding:3px 10px;border-radius:20px;background:#EDE6F0;color:#7a5c8a;white-space:nowrap}
.mktg-root .tdr-sub{display:block;font-size:10px;color:#8A8170;font-weight:600;margin-top:2px}
.mktg-root .tdr-my{background:#fff;border:1px solid #E2D9C7;border-radius:14px;box-shadow:0 1px 3px rgba(13,27,51,.06);overflow:hidden;margin-bottom:14px}
.mktg-root .tdr-myhd{background:#0D1B33;color:#fff;padding:14px 18px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.mktg-root .tdr-myt{font-size:15px;font-weight:900}
.mktg-root .tdr-mys{font-size:11px;color:rgba(255,255,255,.75);margin-top:2px}
.mktg-root .tdr-mych{margin-left:auto;font-size:11px;background:rgba(225,161,70,.18);border:1px solid rgba(225,161,70,.45);color:#EFC578;padding:5px 13px;border-radius:20px;font-weight:700}
.mktg-root .tdr-myk{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#E2D9C7}
.mktg-root .tdr-mk{background:#fff;padding:14px;text-align:center}
.mktg-root .tdr-mk .l{font-size:9px;letter-spacing:.06em;text-transform:uppercase;color:#8A8170;font-weight:700;margin-bottom:5px}
.mktg-root .tdr-mk .v{font-size:19px;font-weight:900;color:#0D1B33}
.mktg-root .tdr-mk.g .v{color:#2E7D5B}.mktg-root .tdr-mk.y .v{color:#C6862F}.mktg-root .tdr-mk.r .v{color:#C0392B}
.mktg-root .tdr-mk .n{font-size:10px;color:#8A8170;font-weight:600;margin-top:3px}
.mktg-root .tdr-myb{padding:14px 18px}
.mktg-root .tdr-barwrap{margin-bottom:12px}
.mktg-root .tdr-barbig{height:14px;background:#EDE6D6;border-radius:8px;overflow:hidden}
.mktg-root .tdr-barbig span{display:block;height:100%;border-radius:8px}
.mktg-root .tdr-barlbl{display:flex;justify-content:space-between;font-size:10.5px;color:#8A8170;margin-top:5px;font-weight:600}
.mktg-root .tdr-barlbl b{color:#0D1B33}
.mktg-root .tdr-fore{background:#F8E4DF;border:1px solid #EFD0C8;border-radius:10px;padding:11px 13px;font-size:12px;line-height:1.55;color:#C0392B}
.mktg-root .tdr-fore b{color:#0D1B33}
.mktg-root .tdr-fore.ok{background:#E4F0EA;border-color:#CFE6DA;color:#2E7D5B}
.mktg-root .tdr-srcrow{display:flex;align-items:center;gap:11px;margin-top:12px;flex-wrap:wrap;background:#EAF1FB;border:1px solid #CFE0F4;border-radius:10px;padding:11px 13px}
.mktg-root .tdr-srcrow .si{font-size:15px}
.mktg-root .tdr-srcrow .sx{flex:1;font-size:11.5px;color:#2b3a52;line-height:1.5;min-width:180px}
.mktg-root .tdr-srcrow .sx b{color:#0D1B33}
.mktg-root .tdr-btnsync{background:#0D1B33;color:#fff;border:none;border-radius:8px;padding:8px 15px;font-size:11.5px;font-weight:700;white-space:nowrap;cursor:pointer;font-family:inherit}
.mktg-root .tdr-fmt{font-size:10px;font-weight:700;padding:3px 9px;border-radius:20px;background:#FBF1DC;color:#9C6A16;white-space:nowrap}
.mktg-root .tdr-dd{font-size:11px;font-weight:800;padding:3px 9px;border-radius:20px;white-space:nowrap}
.mktg-root .tdr-dd.g{background:#E4F0EA;color:#2E7D5B}
.mktg-root .tdr-dd.r{background:#F8E4DF;color:#C0392B}
@media(max-width:860px){ .mktg-root .tdr-myk{grid-template-columns:1fr 1fr} }
/* ════ REACH CẢ PHÒNG — 2 TẦNG theo nền tảng (prefix r2t-, bám mockup-reach-2-tang.html · màu literal) ════ */
.mktg-root .r2t-ki{width:17px;height:17px;display:inline-flex;flex-shrink:0}.mktg-root .r2t-ki svg{width:100%;height:100%;display:block}
.mktg-root .r2t-sec{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#9C6A16;font-weight:700;margin:22px 2px 12px;display:flex;align-items:center;gap:9px}
.mktg-root .r2t-sec::before{content:"◆";color:#E1A146;font-size:8px}
.mktg-root .r2t-rule{flex:1;height:1px;background:linear-gradient(90deg,#FBF1DC,transparent)}
.mktg-root .r2t-who2{font-size:9px;background:#0D1B33;color:#fff;padding:3px 9px;border-radius:20px;letter-spacing:0}
.mktg-root .r2t-tot{background:#fff;border:1px solid #E2D9C7;border-radius:14px 14px 0 0;overflow:hidden}
.mktg-root .r2t-tot-h{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;background:#0D1B33;border-bottom:3px solid #E1A146;padding:11px 16px}
.mktg-root .r2t-tot-t{font-size:13.5px;font-weight:900;color:#fff}
.mktg-root .r2t-tot-d{background:rgba(225,161,70,.2);border:1px solid rgba(225,161,70,.45);color:#EFC578;font-size:10px;font-weight:800;padding:4px 11px;border-radius:20px}
.mktg-root .r2t-tot-bd{padding:14px 16px}
.mktg-root .r2t-tot-k{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:13px}
.mktg-root .r2t-tk{background:#FCFBF8;border:1px solid #E2D9C7;border-radius:10px;padding:11px;text-align:center}
.mktg-root .r2t-tk .l{font-size:8.5px;letter-spacing:.05em;text-transform:uppercase;color:#8A8170;font-weight:800;margin-bottom:4px}
.mktg-root .r2t-tk .v{font-size:24px;font-weight:900;color:#22262E;line-height:1.15}.mktg-root .r2t-tk .v.g{color:#2E7D5B}.mktg-root .r2t-tk .v.y{color:#C6862F}.mktg-root .r2t-tk .v.r{color:#C0392B}
.mktg-root .r2t-tk .s{font-size:9px;color:#8A8170;margin-top:2px}
.mktg-root .r2t-barbig{display:block;height:12px;background:#EDE6D6;border-radius:7px;position:relative;overflow:visible}
.mktg-root .r2t-barbig i{display:block;height:100%;border-radius:7px}
.mktg-root .r2t-barbig i.g{background:#2E7D5B}.mktg-root .r2t-barbig i.y{background:#C6862F}.mktg-root .r2t-barbig i.r{background:#C0392B}
.mktg-root .r2t-barbig u{position:absolute;top:-3px;width:2px;height:18px;background:#0D1B33;border-radius:2px}
.mktg-root .r2t-lg{display:flex;justify-content:space-between;margin-top:8px;font-size:10.5px;color:#8A8170;flex-wrap:wrap;gap:6px}.mktg-root .r2t-lg b{color:#22262E}
.mktg-root .r2t-warn{display:flex;align-items:center;gap:9px;background:#FBEFD8;border:1px solid #FBF1DC;border-top:none;border-radius:0 0 14px 14px;padding:10px 14px;font-size:11.5px;color:#9C6A16;margin-bottom:12px}.mktg-root .r2t-warn b{color:#22262E}
.mktg-root .r2t-wrap{background:#fff;border:1px solid #E2D9C7;border-radius:14px;overflow:hidden;box-shadow:0 1px 3px rgba(13,27,51,.06)}
.mktg-root .r2t-PG{display:grid;grid-template-columns:1.35fr 88px 118px 178px 148px 84px 32px;gap:11px;align-items:center}
.mktg-root .r2t-hd{background:#0D1B33;color:#fff;padding:10px 14px}.mktg-root .r2t-hd span{font-size:9px;letter-spacing:.06em;text-transform:uppercase;font-weight:800}
.mktg-root .r2t-pl{border-bottom:1px solid #E2D9C7}.mktg-root .r2t-pl:last-child{border-bottom:none}
.mktg-root .r2t-pl-h{padding:12px 14px;cursor:pointer}.mktg-root .r2t-pl-h:hover{background:#FDF8EF}.mktg-root .r2t-pl:nth-child(odd) .r2t-pl-h{background:#FCFAF5}.mktg-root .r2t-pl:nth-child(odd) .r2t-pl-h:hover{background:#FDF8EF}
.mktg-root .r2t-pn{display:flex;align-items:center;gap:9px}.mktg-root .r2t-pn b{font-size:14.5px;font-weight:900;color:#22262E}
.mktg-root .r2t-cc2{text-align:center;font-size:12px;color:#8A8170}.mktg-root .r2t-cc2 b{font-size:14px;font-weight:900;color:#22262E;display:block}
.mktg-root .r2t-sub{display:block;font-size:9.5px;color:#8A8170;font-weight:600;margin-top:2px}
.mktg-root .r2t-pw{display:flex;flex-direction:column;gap:3px}
.mktg-root .r2t-pbar{display:block;width:100%;height:8px;background:#EDE6D6;border-radius:5px;overflow:hidden}.mktg-root .r2t-pbar i{display:block;height:100%;border-radius:5px}
.mktg-root .r2t-pbar i.g{background:#2E7D5B}.mktg-root .r2t-pbar i.y{background:#C6862F}.mktg-root .r2t-pbar i.r{background:#C0392B}
.mktg-root .r2t-pv{font-size:13px;font-weight:900}.mktg-root .r2t-pv.g{color:#2E7D5B}.mktg-root .r2t-pv.y{color:#C6862F}.mktg-root .r2t-pv.r{color:#C0392B}
.mktg-root .r2t-st{font-size:9.5px;font-weight:800;padding:5px 10px;border-radius:20px;white-space:nowrap}
.mktg-root .r2t-st.st-ok{background:#E4F0EA;color:#2E7D5B}.mktg-root .r2t-st.st-mid{background:#FBEFD8;color:#C6862F}.mktg-root .r2t-st.st-bad{background:#F8E4DF;color:#C0392B}
.mktg-root .r2t-car{justify-self:end;width:28px;height:28px;border:1px solid #E2D9C7;background:#fff;border-radius:8px;color:#0D1B33;font-size:10px;cursor:pointer;font-family:inherit}.mktg-root .r2t-pl.cl .r2t-car{transform:rotate(-90deg)}
.mktg-root .r2t-pl-b{background:#FBF9F4;border-top:1px solid #E2D9C7;padding:10px 14px 12px}.mktg-root .r2t-pl.cl .r2t-pl-b{display:none}
.mktg-root table.r2t-kt{width:100%;border-collapse:collapse;background:#fff;border:1px solid #E2D9C7;border-radius:10px;overflow:hidden}
.mktg-root table.r2t-kt thead th{background:#F4F6F8;color:#6B7280;border-bottom:1px solid #E2D9C7;font-size:8.5px;letter-spacing:.06em;text-transform:uppercase;text-align:left;padding:8px 10px;font-weight:800}
.mktg-root table.r2t-kt tbody td{padding:9px 10px;border-bottom:1px solid #F1EEE7;font-size:11.5px;vertical-align:middle}
.mktg-root table.r2t-kt tbody tr:last-child td{border-bottom:none}.mktg-root table.r2t-kt tbody tr:nth-child(even){background:#FCFBF8}
.mktg-root .r2t-ck{font-weight:800;color:#22262E}.mktg-root .r2t-cc{text-align:center}
.mktg-root .r2t-who{font-size:10px;font-weight:700;padding:4px 10px;border-radius:20px;background:#EDE6F0;color:#7a5c8a;white-space:nowrap}
.mktg-root .r2t-delta{font-size:10.5px;font-weight:800;padding:4px 9px;border-radius:20px;white-space:nowrap}
.mktg-root .r2t-delta.up{background:#E4F0EA;color:#2E7D5B}.mktg-root .r2t-delta.dn{background:#F8E4DF;color:#C0392B}
.mktg-root .r2t-quick{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}
.mktg-root .r2t-q{background:#fff;border:1px solid #E2D9C7;border-radius:12px;padding:12px 14px}
.mktg-root .r2t-q .t{font-size:10px;letter-spacing:.05em;text-transform:uppercase;font-weight:800;margin-bottom:9px;display:flex;align-items:center;gap:6px}
.mktg-root .r2t-q.up .t{color:#2E7D5B}.mktg-root .r2t-q.dn .t{color:#C0392B}
.mktg-root .r2t-chip{display:block;font-size:11.5px;font-weight:700;padding:7px 11px;border-radius:9px;margin-bottom:6px}.mktg-root .r2t-chip:last-child{margin-bottom:0}
.mktg-root .r2t-chip i{font-style:normal;font-size:9.5px;font-weight:800;padding:2px 7px;border-radius:20px;background:rgba(0,0,0,.06);margin:0 4px}
.mktg-root .r2t-chip.up{background:#E4F0EA;color:#1f6349}.mktg-root .r2t-chip.dn{background:#F8E4DF;color:#8a3a2e}
.mktg-root .r2t-miss{margin-top:12px;background:#FBEFD8;border:1px solid #F0D9A8;border-left:4px solid #C6862F;border-radius:10px;padding:11px 14px;font-size:11.5px;line-height:1.7;color:#7a5a1a}.mktg-root .r2t-miss b{color:#22262E}.mktg-root .r2t-miss>div{margin-top:4px}
.mktg-root .r2t-src{display:flex;align-items:center;gap:11px;margin-top:12px;background:#EAF1FB;border:1px solid #CFE0F4;border-radius:10px;padding:11px 13px;font-size:11.5px;color:#2b3a52;flex-wrap:wrap}.mktg-root .r2t-src b{color:#0D1B33}
.mktg-root .r2t-src button{margin-left:auto;background:#0D1B33;color:#fff;border:none;border-radius:8px;padding:8px 15px;font-size:11.5px;font-weight:700;cursor:pointer;font-family:inherit}
.mktg-root .r2t-note{margin-top:16px;background:#fff;border:1px solid #E2D9C7;border-left:3px solid #E1A146;border-radius:10px;padding:13px 15px;font-size:12.5px;line-height:1.75;color:#22262E}.mktg-root .r2t-note b{color:#0D1B33}
@media(max-width:860px){
  .mktg-root .r2t-tot-k{grid-template-columns:1fr 1fr}
  .mktg-root .r2t-hd{display:none}
  .mktg-root .r2t-PG{grid-template-columns:1fr;gap:7px}
  .mktg-root .r2t-cc2,.mktg-root .r2t-pw{text-align:left}
  .mktg-root .r2t-car{justify-self:start}
  .mktg-root .r2t-quick{grid-template-columns:1fr}
  .mktg-root table.r2t-kt,.mktg-root table.r2t-kt thead,.mktg-root table.r2t-kt tbody,.mktg-root table.r2t-kt tr,.mktg-root table.r2t-kt td{display:block}
  .mktg-root table.r2t-kt thead{display:none}
  .mktg-root table.r2t-kt tbody tr{border:1px solid #E2D9C7;border-radius:10px;margin-bottom:8px;padding:4px}
  .mktg-root table.r2t-kt tbody td{display:flex;justify-content:space-between;align-items:center;gap:10px;text-align:right;padding:7px 10px}
  .mktg-root table.r2t-kt tbody td::before{content:attr(data-l);color:#8A8170;font-weight:800;font-size:9.5px;text-transform:uppercase}
  .mktg-root table.r2t-kt tbody td[data-l="Đã đạt"]{flex-wrap:wrap}
}
/* ════ PHIẾU GIAO VIỆC — NAVY RÕ TẦNG (prefix pnv-, bám mockup-phieu-navy-rotang.html · màu literal) ════ */
.mktg-root .pnv-card{background:#F5F6F7;border:1px solid #DFE1E5;border-radius:14px;overflow:hidden;box-shadow:0 4px 18px rgba(13,27,51,.10)}
.mktg-root .pnv-ph{display:flex;align-items:center;gap:12px;background:linear-gradient(135deg,#0D1B33,#1E3560);border-bottom:3px solid #E1A146;padding:15px 16px;flex-wrap:wrap}
.mktg-root .pnv-av{width:40px;height:40px;border-radius:12px;background:#E1A146;color:#fff;display:flex;align-items:center;justify-content:center;font-size:17px;font-weight:900;flex-shrink:0}
.mktg-root .pnv-hinfo{display:flex;flex-direction:column;min-width:0}
.mktg-root .pnv-nm{font-size:17px;font-weight:900;color:#fff}
.mktg-root .pnv-sub{font-size:11px;color:rgba(255,255,255,.75)}
.mktg-root .pnv-mt{margin-left:auto;text-align:right}
.mktg-root .pnv-mt b{font-size:22px;font-weight:900;color:#EFC578}
.mktg-root .pnv-mt i{display:block;font-size:9px;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.65);font-style:normal}
.mktg-root .pnv-pdf{background:#E1A146;color:#fff;border:none;border-radius:9px;padding:9px 15px;font-size:11.5px;font-weight:700;cursor:pointer;font-family:inherit}
.mktg-root .pnv-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:14px 16px;background:#fff;border-bottom:1px solid #DFE1E5}
.mktg-root .pnv-k{background:#fff;border:1px solid #DFE1E5;border-radius:10px;padding:11px;text-align:center}
.mktg-root .pnv-k .l{font-size:8.5px;letter-spacing:.06em;text-transform:uppercase;color:#8A8B92;font-weight:800;margin-bottom:4px}
.mktg-root .pnv-k .v{font-size:26px;font-weight:900;color:#22262E;line-height:1.15}
.mktg-root .pnv-k.g .v{color:#2E7D5B}.mktg-root .pnv-k.y .v{color:#C6862F}
.mktg-root .pnv-body{padding:14px 16px}
.mktg-root .pnv-sect{background:#fff;border:1px solid #DFE1E5;border-radius:12px;padding:13px;margin-bottom:4px}
.mktg-root .pnv-mt2{display:flex;align-items:center;gap:10px;margin:22px 0 12px;padding-bottom:9px;border-bottom:3px solid #E1A146;font-size:14.5px;font-weight:900;color:#22262E;letter-spacing:.01em}
.mktg-root .pnv-body>.pnv-mt2:first-child{margin-top:0}
.mktg-root .pnv-mt2 .num{width:26px;height:26px;border-radius:8px;background:#E1A146;color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:900;flex-shrink:0}
.mktg-root .pnv-bar{display:inline-block;width:100%;height:7px;background:#E6E8EC;border-radius:5px;overflow:hidden;vertical-align:middle;position:relative}
.mktg-root .pnv-bar.sm{width:80px;margin-right:7px}
.mktg-root .pnv-bar i{display:block;height:100%;border-radius:5px}
.mktg-root .pnv-bar i.g{background:#2E7D5B}.mktg-root .pnv-bar i.y{background:linear-gradient(90deg,#C6862F,#EFC578)}.mktg-root .pnv-bar i.r{background:#C0392B}
.mktg-root .pnv-pv{font-size:12px;font-weight:800}.mktg-root .pnv-pv.g{color:#2E7D5B}.mktg-root .pnv-pv.y{color:#C6862F}.mktg-root .pnv-pv.r{color:#C0392B}
.mktg-root .pnv-st{font-size:9px;font-weight:800;padding:4px 9px;border-radius:20px;white-space:nowrap}
.mktg-root .pnv-st.st-ok,.mktg-root .pnv-st.st-g{background:#E4F0EA;color:#2E7D5B}
.mktg-root .pnv-st.st-mid,.mktg-root .pnv-st.st-y{background:#FBEFD8;color:#C6862F}
.mktg-root .pnv-st.st-wait{background:#F0EADC;color:#8b8271}
.mktg-root .pnv-st.st-r{background:#F8E4DF;color:#C0392B}
.mktg-root .pnv-tb{font-size:10.5px;font-weight:800;padding:5px 11px;border-radius:20px;white-space:nowrap}
.mktg-root .pnv-tb.t-nb{background:#EFE9D8;color:#8a7a4a}.mktg-root .pnv-tb.t-th{background:#E7EEF7;color:#2F5FA8}.mktg-root .pnv-tb.t-tt{background:#FBF1DC;color:#15294a}.mktg-root .pnv-tb.t-cd{background:#F8E4DF;color:#C0392B}
.mktg-root .pnv-fmt{font-size:9px;font-weight:800;padding:3px 9px;border-radius:20px;background:#EDE6F0;color:#7a5c8a;white-space:nowrap}
.mktg-root .pnv-tu{background:#fff;border:1px solid #DFE1E5;border-radius:11px;margin-bottom:9px;overflow:hidden;box-shadow:0 1px 3px rgba(13,27,51,.05)}
.mktg-root .pnv-tu-h{display:grid;grid-template-columns:100px 88px 108px 116px 46px 1fr;gap:10px;align-items:center;padding:10px 12px;cursor:pointer}
.mktg-root .pnv-tu-h:hover{background:#F4F6F8}
.mktg-root .pnv-tbai{font-size:11px;color:#8A8B92;white-space:nowrap}.mktg-root .pnv-tbai b{color:#22262E;font-size:13px}
.mktg-root .pnv-tld{font-size:9px;font-weight:800;padding:3px 8px;border-radius:20px;background:#F1ECE2;color:#8a6a3a;text-align:center;white-space:nowrap}
.mktg-root .pnv-tpc{font-size:12px;font-weight:800;text-align:right}
.mktg-root .pnv-tpc.g,.mktg-root .pnv-npc.g{color:#2E7D5B}.mktg-root .pnv-tpc.y,.mktg-root .pnv-npc.y{color:#C6862F}.mktg-root .pnv-tpc.r,.mktg-root .pnv-npc.r{color:#C0392B}
.mktg-root .pnv-tfold{justify-self:end;border:1px solid #C6862F;background:#fff;color:#C6862F;border-radius:8px;padding:6px 12px;font-size:10.5px;font-weight:700;white-space:nowrap;cursor:pointer;font-family:inherit}
.mktg-root .pnv-tfold:hover{background:#C6862F;color:#fff}
.mktg-root .pnv-tfold .ci{display:inline-block}.mktg-root .pnv-tu.cl .pnv-tfold .ci{transform:rotate(-90deg)}
.mktg-root .pnv-tu-b{border-top:1px solid #EDEEF1;background:#F7F9FB;padding:9px}.mktg-root .pnv-tu.cl .pnv-tu-b{display:none}
.mktg-root .pnv-twarn{background:#F8E4DF;border:1px solid #EFD0C8;border-radius:9px;padding:8px 11px;font-size:11px;color:#8a3a2e;margin-top:7px}.mktg-root .pnv-twarn b{color:#22262E}
.mktg-root .pnv-nd{background:#fff;border:1px solid #EDEEF1;border-radius:9px;margin-bottom:7px;overflow:hidden}.mktg-root .pnv-nd:last-child{margin-bottom:0}
.mktg-root .pnv-nd-h{display:grid;grid-template-columns:24px 1fr 84px 66px 92px 40px 30px;gap:9px;align-items:center;padding:8px 11px;cursor:pointer}
.mktg-root .pnv-nd-h:hover{background:#F4F6F8}
.mktg-root .pnv-nnum{width:22px;height:22px;border-radius:6px;background:#C6862F;color:#fff;display:flex;align-items:center;justify-content:center;font-size:10.5px;font-weight:900}
.mktg-root .pnv-nname{font-size:13.5px;font-weight:800;color:#22262E}
.mktg-root .pnv-nbai{font-size:11px;color:#8A8B92;white-space:nowrap;text-align:right}.mktg-root .pnv-nbai b{color:#22262E;font-size:12.5px}
.mktg-root .pnv-npc{font-size:11px;font-weight:800;text-align:right}
.mktg-root .pnv-ncar{justify-self:end;width:26px;height:26px;border:1px solid #DFE1E5;background:#fff;border-radius:7px;color:#15294a;font-size:10px;cursor:pointer;font-family:inherit}.mktg-root .pnv-nd.cl .pnv-ncar{transform:rotate(-90deg)}
.mktg-root .pnv-nd-b{border-top:1px solid #EDEEF1}.mktg-root .pnv-nd.cl .pnv-nd-b{display:none}
.mktg-root .pnv-nd.pnv-nobai{background:#FDF4F2;border-color:#F0D9D3}.mktg-root .pnv-nd.pnv-nobai .pnv-nd-h{cursor:default}
.mktg-root .pnv-nomark{justify-self:end;font-size:9px;font-weight:800;color:#C0392B;background:#F8E4DF;border-radius:20px;padding:4px 9px;white-space:nowrap}
.mktg-root table.pnv-pt{width:100%;border-collapse:collapse}
.mktg-root table.pnv-pt thead th{background:#F4F6F8;color:#6B7280;border-bottom:1px solid #DFE1E5;font-size:8.5px;letter-spacing:.06em;text-transform:uppercase;text-align:left;padding:6px 11px;font-weight:800}
.mktg-root table.pnv-pt tbody td{padding:9px 11px;border-bottom:1px solid #EDEEF1;font-size:12px}
.mktg-root table.pnv-pt tbody tr:nth-child(even){background:#FAFAFB}.mktg-root table.pnv-pt tbody tr:last-child td{border-bottom:none}
.mktg-root .pnv-pn{font-weight:700;color:#22262E}.mktg-root .pnv-pk,.mktg-root .pnv-pd{color:#8A8B92}.mktg-root .pnv-pl{text-align:right}
.mktg-root .pnv-vp{color:#2F5FA8;font-weight:700;font-size:10.5px;border:1px solid #CFE0F4;background:#E7EEF7;border-radius:7px;padding:4px 9px;white-space:nowrap;text-decoration:none}.mktg-root .pnv-nl{color:#d3c8b2}
.mktg-root .pnv-empty{color:#8A8B92;font-style:italic;padding:10px 11px}
.mktg-root table.pnv-kt{width:100%;border-collapse:collapse;background:#fff;border:1px solid #DFE1E5;border-radius:11px;overflow:hidden}
.mktg-root table.pnv-kt thead th{background:#0D1B33;color:#fff;font-size:9.5px;letter-spacing:.07em;text-transform:uppercase;text-align:left;padding:10px 11px;font-weight:800}
.mktg-root table.pnv-kt tbody td{padding:10px 11px;border-bottom:1px solid #EDEEF1;font-size:12px}
.mktg-root table.pnv-kt tbody tr:nth-child(even){background:#FAFAFB}.mktg-root table.pnv-kt tbody tr:last-child td{border-bottom:none}
.mktg-root .pnv-kn{font-weight:800;color:#22262E;font-size:12.5px}.mktg-root .pnv-cc{text-align:center;font-weight:800;color:#22262E}
.mktg-root .pnv-wk{display:grid;grid-template-columns:70px 1fr 90px 90px 74px;gap:10px;align-items:center;background:#fff;border:1px solid #DFE1E5;border-radius:9px;padding:9px 12px;margin-bottom:6px}
.mktg-root .pnv-wn{font-size:13px;font-weight:900;color:#22262E}.mktg-root .pnv-wd{font-size:11px;color:#8A8B92}.mktg-root .pnv-wb{font-size:11px;color:#8A8B92;text-align:right}.mktg-root .pnv-wb b{color:#22262E;font-size:13px}
.mktg-root .pnv-rtot{background:#fff;border:1px solid #DFE1E5;border-left:5px solid #E1A146;border-radius:12px;padding:14px 15px;margin-bottom:11px}
.mktg-root .pnv-rtot-h{display:flex;justify-content:space-between;align-items:center;margin-bottom:11px;flex-wrap:wrap;gap:8px}
.mktg-root .pnv-rtot-t{font-size:14px;font-weight:900;color:#22262E}.mktg-root .pnv-rtot-d{background:#E1A146;color:#fff;font-size:10px;font-weight:800;padding:3px 10px;border-radius:20px}
.mktg-root .pnv-rtot-k{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-bottom:11px}
.mktg-root .pnv-tk{background:#fff;border:1px solid #DFE1E5;border-radius:10px;padding:10px;text-align:center}
.mktg-root .pnv-tk .l{font-size:8.5px;letter-spacing:.05em;text-transform:uppercase;color:#8A8B92;font-weight:800;margin-bottom:4px}
.mktg-root .pnv-tk .v{font-size:22px;font-weight:900;color:#22262E;line-height:1.15}.mktg-root .pnv-tk .v.g{color:#2E7D5B}.mktg-root .pnv-tk .v.y{color:#C6862F}.mktg-root .pnv-tk .v.r{color:#C0392B}
.mktg-root .pnv-tk .s{font-size:9px;color:#8A8B92;margin-top:2px}
.mktg-root .pnv-rtot-b .pnv-bar.big{height:11px}
.mktg-root .pnv-rtot-b .pnv-bar.big u{position:absolute;top:-3px;width:2px;height:17px;background:#15294a;border-radius:2px}
.mktg-root .pnv-rtot-lg{display:flex;justify-content:space-between;margin-top:7px;font-size:10.5px;color:#8A8B92;flex-wrap:wrap;gap:6px}.mktg-root .pnv-rtot-lg b{color:#15294a}
.mktg-root .pnv-rsum{display:flex;align-items:center;gap:8px;background:#FBEFD8;border:1px solid #FBF1DC;border-radius:9px;padding:9px 12px;margin-bottom:9px;font-size:11.5px;color:#15294a}.mktg-root .pnv-rsum b{color:#22262E}
.mktg-root .pnv-rwrap{border:1px solid #DFE1E5;border-radius:11px;overflow:hidden;background:#fff}
.mktg-root .pnv-RG{display:grid;grid-template-columns:1.5fr 92px 96px 128px 82px 106px 84px 30px;gap:9px;align-items:center}
.mktg-root .pnv-rhd{background:#0D1B33;padding:10px 12px}.mktg-root .pnv-rhd span{font-size:9.5px;letter-spacing:.07em;text-transform:uppercase;color:#fff;font-weight:800}
.mktg-root .pnv-rr{border-bottom:1px solid #EDEEF1}.mktg-root .pnv-rr:nth-child(odd) .pnv-rr-h{background:#FAFAFB}.mktg-root .pnv-rr:last-child{border-bottom:none}
.mktg-root .pnv-rr-h{padding:10px 12px;cursor:pointer}.mktg-root .pnv-rr-h:hover{background:#F4F6F8}
.mktg-root .pnv-rk b{display:block;font-size:13.5px;font-weight:800;color:#22262E}.mktg-root .pnv-rk i{font-size:9.5px;color:#8A8B92;font-style:normal}
.mktg-root .pnv-rn{font-size:12px;color:#8A8B92;text-align:right}.mktg-root .pnv-rn b{font-size:15px;font-weight:900;color:#22262E}.mktg-root .pnv-rn i{display:block;font-size:9.5px;font-style:normal}
.mktg-root .pnv-rn b.g{color:#2E7D5B}.mktg-root .pnv-rn b.y{color:#C6862F}.mktg-root .pnv-rn b.r{color:#C0392B}
.mktg-root .pnv-rbar{display:flex;align-items:center;gap:7px}.mktg-root .pnv-rbar em{font-size:11px;font-weight:800;font-style:normal}.mktg-root .pnv-rbar em.g{color:#2E7D5B}.mktg-root .pnv-rbar em.y{color:#C6862F}.mktg-root .pnv-rbar em.r{color:#C0392B}
.mktg-root .pnv-rt{text-align:center}
.mktg-root .pnv-rcar{justify-self:end;width:26px;height:26px;border:1px solid #DFE1E5;background:#fff;border-radius:7px;color:#15294a;font-size:9px;cursor:pointer;font-family:inherit}.mktg-root .pnv-rr.cl .pnv-rcar{transform:rotate(-90deg)}
.mktg-root .pnv-rdet{border-top:1px solid #EDEEF1;background:#F7F9FB;padding:10px 12px}.mktg-root .pnv-rr.cl .pnv-rdet{display:none}
.mktg-root .pnv-rwarn{background:#F8E4DF;border:1px solid #EFD0C8;border-radius:9px;padding:9px 11px;font-size:11.5px;color:#8a3a2e;line-height:1.55}.mktg-root .pnv-rwarn b{color:#22262E}
.mktg-root .pnv-rok{background:#E4F0EA;border:1px solid #CFE6DA;border-radius:9px;padding:9px 11px;font-size:11.5px;color:#2E7D5B;line-height:1.55}.mktg-root .pnv-rok b{color:#22262E}
.mktg-root .pnv-rsrc{display:flex;align-items:center;gap:9px;background:#F7F9FB;border:1px solid #DFE1E5;border-radius:9px;padding:9px 12px;margin-top:9px;font-size:11.5px;color:#8A8B92;flex-wrap:wrap}.mktg-root .pnv-rsrc b{color:#15294a}
.mktg-root .pnv-rsrc button{margin-left:auto;background:#C6862F;color:#fff;border:none;border-radius:8px;padding:6px 12px;font-size:10.5px;font-weight:700;cursor:pointer;font-family:inherit}
.mktg-root .pnv-rempty{color:#8A8B92;font-style:italic;font-size:12px;padding:6px 4px}
/* Bản IN PDF: mở hết tuyến/loại/dòng reach + ẩn nút gấp & PDF & sync */
.mktg-root .tds-print .pnv-tu.cl .pnv-tu-b,.mktg-root .tds-print .pnv-nd.cl .pnv-nd-b,.mktg-root .tds-print .pnv-rr.cl .pnv-rdet{display:block !important}
.mktg-root .tds-print .pnv-tfold,.mktg-root .tds-print .pnv-ncar,.mktg-root .tds-print .pnv-rcar,.mktg-root .tds-print .pnv-pdf,.mktg-root .tds-print .pnv-rsrc button{display:none !important}
@media(max-width:860px){
  .mktg-root .pnv-kpis,.mktg-root .pnv-rtot-k{grid-template-columns:1fr 1fr}
  .mktg-root .pnv-tu-h{grid-template-columns:1fr;gap:7px}
  .mktg-root .pnv-tfold{justify-self:start}
  .mktg-root .pnv-tpc{text-align:left}
  .mktg-root .pnv-nd-h{grid-template-columns:24px 1fr 30px}
  .mktg-root .pnv-nd-h .pnv-nbai,.mktg-root .pnv-nd-h .pnv-nbar,.mktg-root .pnv-nd-h .pnv-npc,.mktg-root .pnv-nd-h .pnv-fmt{grid-column:2 / -1;text-align:left}
  .mktg-root .pnv-nd-h .pnv-nomark{grid-column:2 / -1;justify-self:start}
  .mktg-root .pnv-rhd{display:none}
  .mktg-root .pnv-RG{grid-template-columns:1fr;gap:6px}
  .mktg-root .pnv-rn,.mktg-root .pnv-rt{text-align:left}
  .mktg-root .pnv-rcar{justify-self:start}
  .mktg-root .pnv-wk{grid-template-columns:1fr 1fr}
  .mktg-root table.pnv-pt,.mktg-root table.pnv-pt thead,.mktg-root table.pnv-pt tbody,.mktg-root table.pnv-pt tr,.mktg-root table.pnv-pt td,.mktg-root table.pnv-kt,.mktg-root table.pnv-kt thead,.mktg-root table.pnv-kt tbody,.mktg-root table.pnv-kt tr,.mktg-root table.pnv-kt td{display:block}
  .mktg-root table.pnv-pt thead,.mktg-root table.pnv-kt thead{display:none}
  .mktg-root table.pnv-pt tbody tr,.mktg-root table.pnv-kt tbody tr{border:1px solid #EDEEF1;border-radius:9px;margin:8px;padding:3px}
  .mktg-root table.pnv-pt tbody td,.mktg-root table.pnv-kt tbody td{display:flex;justify-content:space-between;gap:10px;text-align:right;padding:7px 10px}
  .mktg-root table.pnv-pt tbody td::before,.mktg-root table.pnv-kt tbody td::before{content:attr(data-l);color:#8A8B92;font-weight:800;font-size:9.5px;text-transform:uppercase}
  .mktg-root .pnv-card{max-width:100%}
  .mktg-root .pnv-body{padding:12px 11px}.mktg-root .pnv-sect{padding:11px}
  .mktg-root .pnv-ph,.mktg-root .pnv-kpis{padding-left:12px;padding-right:12px}
  .mktg-root .pnv-tld,.mktg-root .pnv-tb,.mktg-root .pnv-tbai{justify-self:start}
  /* chống tràn ngang: ô grid/flex co lại + chuỗi dài (link/tên kênh/tiêu đề) tự ngắt */
  .mktg-root .pnv-tu-h>*,.mktg-root .pnv-nd-h>*,.mktg-root .pnv-rr-h>*,.mktg-root .pnv-wk>*,.mktg-root .pnv-rtot-h>*,.mktg-root .pnv-rsrc>*{min-width:0}
  .mktg-root table.pnv-pt tbody td,.mktg-root table.pnv-kt tbody td{min-width:0}
  .mktg-root .pnv-card *{overflow-wrap:anywhere;word-break:break-word}
}
/* ════ PHIẾU GIAO VIỆC V2 (prefix pv2-, bám mockup-phieu-v2-A-navy.html + -in-pdf.html · màu ẤM literal) ════ */
.mktg-root .pv2-card{background:#F6F5F1;border:1px solid #E0DDD6;border-radius:14px;overflow:hidden;box-shadow:0 4px 18px rgba(13,27,51,.10)}
.mktg-root .pv2-ph{display:flex;align-items:center;gap:12px;background:linear-gradient(135deg,#0D1B33,#1E3560);border-bottom:3px solid #E1A146;padding:15px 16px;flex-wrap:wrap}
.mktg-root .pv2-av{width:40px;height:40px;border-radius:12px;background:#E1A146;color:#fff;display:flex;align-items:center;justify-content:center;font-size:17px;font-weight:900;flex-shrink:0}
.mktg-root .pv2-hinfo{display:flex;flex-direction:column;min-width:0}
.mktg-root .pv2-nm{font-size:17px;font-weight:900;color:#fff}
.mktg-root .pv2-sub2{font-size:11px;color:rgba(255,255,255,.75)}
.mktg-root .pv2-mt{margin-left:auto;text-align:right}.mktg-root .pv2-mt b{font-size:22px;font-weight:900;color:#EFC578}.mktg-root .pv2-mt i{display:block;font-size:9px;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.65);font-style:normal}
.mktg-root .pv2-pdf{background:#E1A146;color:#fff;border:none;border-radius:9px;padding:9px 15px;font-size:11.5px;font-weight:700;cursor:pointer;font-family:inherit}
.mktg-root .pv2-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:14px 16px;background:#fff;border-bottom:1px solid #E0DDD6}
.mktg-root .pv2-k{background:#fff;border:1px solid #E0DDD6;border-radius:10px;padding:11px;text-align:center}
.mktg-root .pv2-k .l{font-size:8.5px;letter-spacing:.06em;text-transform:uppercase;color:#8B867C;font-weight:800;margin-bottom:4px}
.mktg-root .pv2-k .v{font-size:26px;font-weight:900;color:#26241F;line-height:1.15}.mktg-root .pv2-k.g .v{color:#2E7D5B}.mktg-root .pv2-k.y .v{color:#C6862F}.mktg-root .pv2-k.r .v{color:#C0392B}
.mktg-root .pv2-toolbar{display:flex;gap:8px;padding:11px 16px;background:#fff;border-bottom:1px solid #E0DDD6;flex-wrap:wrap}
.mktg-root .pv2-tb2{border:1px solid #E0DDD6;background:#fff;color:#26241F;border-radius:8px;padding:7px 13px;font-size:11.5px;font-weight:700;cursor:pointer;font-family:inherit}.mktg-root .pv2-tb2:hover{border-color:#E1A146;color:#0D1B33}
.mktg-root .pv2-body{padding:14px 16px}
.mktg-root .pv2-sec{display:flex;align-items:center;gap:10px;margin:20px 0 0;padding-bottom:9px;border-bottom:3px solid #E1A146;font-size:14.5px;font-weight:900;color:#26241F;cursor:pointer}
.mktg-root .pv2-body>.pv2-sec:first-child{margin-top:0}
.mktg-root .pv2-sec .num{width:26px;height:26px;border-radius:8px;background:#E1A146;color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:900;flex-shrink:0}
.mktg-root .pv2-sec .cnt{font-size:11px;font-weight:700;color:#8B867C}
.mktg-root .pv2-fold{margin-left:auto;border:1px solid #E0DDD6;background:#fff;color:#26241F;border-radius:8px;padding:6px 12px;font-size:11px;font-weight:700;white-space:nowrap;cursor:pointer;font-family:inherit}
.mktg-root .pv2-fold .ci{display:inline-block}.mktg-root .pv2-sec.cl .pv2-fold .ci{transform:rotate(-90deg)}
.mktg-root .pv2-box{padding-top:12px}.mktg-root .pv2-box.cl{display:none}
.mktg-root .pv2-sect{background:#fff;border:1px solid #E0DDD6;border-radius:12px;padding:13px}
.mktg-root .pv2-bar{display:inline-block;width:100%;height:7px;background:#E7E3DA;border-radius:5px;overflow:hidden;vertical-align:middle}
.mktg-root .pv2-bar.sm{width:80px;margin-right:7px}.mktg-root .pv2-bar i{display:block;height:100%;border-radius:5px}
.mktg-root .pv2-bar i.g{background:#2E7D5B}.mktg-root .pv2-bar i.y{background:#C6862F}.mktg-root .pv2-bar i.r{background:#C0392B}
.mktg-root .pv2-pv{font-size:12.5px;font-weight:800}.mktg-root .pv2-pv.g{color:#2E7D5B}.mktg-root .pv2-pv.y{color:#C6862F}.mktg-root .pv2-pv.r{color:#C0392B}
.mktg-root .pv2-sub{display:block;font-size:9.5px;color:#8B867C;font-weight:600;margin-top:2px}
.mktg-root .pv2-st{font-size:9.5px;font-weight:800;padding:4px 9px;border-radius:20px;white-space:nowrap}
.mktg-root .pv2-st.st-ok{background:#E4F0EA;color:#2E7D5B}.mktg-root .pv2-st.st-mid{background:#FBEFD8;color:#C6862F}.mktg-root .pv2-st.st-wait{background:#EFEDE7;color:#807A70}.mktg-root .pv2-st.st-bad{background:#F8E4DF;color:#C0392B}
.mktg-root .pv2-tb{font-size:10px;font-weight:800;padding:4px 10px;border-radius:20px;white-space:nowrap}
.mktg-root .pv2-tb.t-nb{background:#EFE9D8;color:#8a7a4a}.mktg-root .pv2-tb.t-th{background:#E7EEF7;color:#2F5FA8}.mktg-root .pv2-tb.t-tt{background:#FBF1DC;color:#9C6A16}.mktg-root .pv2-tb.t-cd{background:#F8E4DF;color:#C0392B}
.mktg-root .pv2-fmt{font-size:9.5px;font-weight:800;padding:3px 9px;border-radius:20px;background:#FBF1DC;color:#C6862F;white-space:nowrap}
.mktg-root .pv2-empty{color:#8B867C;font-style:italic;padding:10px 11px}
.mktg-root .pv2-tu{background:#fff;border:1px solid #E0DDD6;border-radius:11px;margin-bottom:9px;overflow:hidden;box-shadow:0 1px 3px rgba(13,27,51,.05)}.mktg-root .pv2-tu:last-child{margin-bottom:0}
.mktg-root .pv2-tu-h{display:grid;grid-template-columns:100px 88px 108px 116px 46px 1fr;gap:10px;align-items:center;padding:10px 12px;cursor:pointer}.mktg-root .pv2-tu-h:hover{background:#F5F3EE}
.mktg-root .pv2-tbai{font-size:11px;color:#8B867C;white-space:nowrap}.mktg-root .pv2-tbai b{color:#26241F;font-size:13px}
.mktg-root .pv2-tld{font-size:9px;font-weight:800;padding:3px 8px;border-radius:20px;background:#F0EBE1;color:#8a6a3a;text-align:center;white-space:nowrap}
.mktg-root .pv2-tpc{font-size:12px;font-weight:800;text-align:right}.mktg-root .pv2-tpc.g,.mktg-root .pv2-npc.g{color:#2E7D5B}.mktg-root .pv2-tpc.y,.mktg-root .pv2-npc.y{color:#C6862F}.mktg-root .pv2-tpc.r,.mktg-root .pv2-npc.r{color:#C0392B}
.mktg-root .pv2-tfold{justify-self:end;border:1px solid #C6862F;background:#fff;color:#C6862F;border-radius:8px;padding:6px 12px;font-size:10.5px;font-weight:700;white-space:nowrap;cursor:pointer;font-family:inherit}.mktg-root .pv2-tfold:hover{background:#C6862F;color:#fff}
.mktg-root .pv2-tfold .ci{display:inline-block}.mktg-root .pv2-tu.cl .pv2-tfold .ci{transform:rotate(-90deg)}
.mktg-root .pv2-tu-b{border-top:1px solid #EFEDE8;background:#FAF9F6;padding:9px}.mktg-root .pv2-tu.cl .pv2-tu-b{display:none}
.mktg-root .pv2-twarn{background:#F8E4DF;border:1px solid #EFD0C8;border-radius:9px;padding:8px 11px;font-size:11px;color:#8a3a2e;margin-top:7px}.mktg-root .pv2-twarn b{color:#26241F}
.mktg-root .pv2-nd{background:#fff;border:1px solid #EFEDE8;border-radius:9px;margin-bottom:7px;overflow:hidden}.mktg-root .pv2-nd:last-child{margin-bottom:0}
.mktg-root .pv2-nd.pv2-nobai{background:#FDF4F2;border-color:#F0D9D3}.mktg-root .pv2-nd.pv2-nobai .pv2-nd-h{cursor:default}
.mktg-root .pv2-nomark{justify-self:end;font-size:9px;font-weight:800;color:#C0392B;background:#F8E4DF;border-radius:20px;padding:4px 9px;white-space:nowrap}
.mktg-root .pv2-nd-h{display:grid;grid-template-columns:24px 1fr 84px 66px 92px 40px 30px;gap:9px;align-items:center;padding:8px 11px;cursor:pointer}.mktg-root .pv2-nd-h:hover{background:#F5F3EE}
.mktg-root .pv2-nnum{width:22px;height:22px;border-radius:6px;background:#C6862F;color:#fff;display:flex;align-items:center;justify-content:center;font-size:10.5px;font-weight:900}
.mktg-root .pv2-nname{font-size:13.5px;font-weight:800;color:#26241F}
.mktg-root .pv2-nbai{font-size:11px;color:#8B867C;white-space:nowrap;text-align:right}.mktg-root .pv2-nbai b{color:#26241F;font-size:12.5px}
.mktg-root .pv2-npc{font-size:11px;font-weight:800;text-align:right}
.mktg-root .pv2-ncar{justify-self:end;width:26px;height:26px;border:1px solid #E0DDD6;background:#fff;border-radius:7px;color:#15294a;font-size:10px;cursor:pointer;font-family:inherit}.mktg-root .pv2-nd.cl .pv2-ncar{transform:rotate(-90deg)}
.mktg-root .pv2-nd-b{border-top:1px solid #EFEDE8}.mktg-root .pv2-nd.cl .pv2-nd-b{display:none}
.mktg-root table.pv2-pt{width:100%;border-collapse:collapse}
.mktg-root table.pv2-pt thead th{background:#F4F2ED;color:#6E6A62;border-bottom:1px solid #E0DDD6;font-size:8.5px;letter-spacing:.06em;text-transform:uppercase;text-align:left;padding:6px 11px;font-weight:800}
.mktg-root table.pv2-pt tbody td{padding:9px 11px;border-bottom:1px solid #EFEDE8;font-size:12px}.mktg-root table.pv2-pt tbody tr:last-child td{border-bottom:none}.mktg-root table.pv2-pt tbody tr:nth-child(even){background:#FBFAF8}
.mktg-root .pv2-pn{font-weight:700;color:#26241F}.mktg-root .pv2-pk,.mktg-root .pv2-pd{color:#8B867C}.mktg-root .pv2-pl2{text-align:right}
.mktg-root .pv2-vp{color:#2F5FA8;font-weight:700;font-size:10.5px;border:1px solid #CFE0F4;background:#E7EEF7;border-radius:7px;padding:4px 9px;white-space:nowrap;text-decoration:none}.mktg-root .pv2-nl{color:#CFC9BE}
.mktg-root table.pv2-kt{width:100%;border-collapse:collapse;background:#fff;border:1px solid #E0DDD6;border-radius:11px;overflow:hidden}
.mktg-root table.pv2-kt thead th{background:#0D1B33;color:#fff;font-size:9.5px;letter-spacing:.07em;text-transform:uppercase;text-align:left;padding:10px 11px;font-weight:800}
.mktg-root table.pv2-kt tbody td{padding:10px 11px;border-bottom:1px solid #EFEDE8;font-size:12px}.mktg-root table.pv2-kt tbody tr:last-child td{border-bottom:none}.mktg-root table.pv2-kt tbody tr:nth-child(even){background:#FBFAF8}
.mktg-root .pv2-kn{font-weight:800;color:#26241F;font-size:12.5px}.mktg-root .pv2-cc{text-align:center;font-weight:700}
.mktg-root .pv2-knw{display:flex;align-items:center;gap:9px}
.mktg-root .pv2-knt{display:flex;flex-direction:column;line-height:1.25}
.mktg-root .pv2-kns{font-size:9.5px;font-weight:600;color:#8B867C;text-transform:capitalize}
.mktg-root .pv2-ki{width:17px;height:17px;display:inline-flex;flex-shrink:0}.mktg-root .pv2-ki svg{width:100%;height:100%;display:block}
.mktg-root .pv2-wk{display:grid;grid-template-columns:70px 1fr 90px 90px 80px;gap:10px;align-items:center;background:#fff;border:1px solid #E0DDD6;border-radius:9px;padding:10px 12px;margin-bottom:6px}.mktg-root .pv2-wk:last-child{margin-bottom:0}
.mktg-root .pv2-wn{font-size:13px;font-weight:900;color:#26241F}.mktg-root .pv2-wd{font-size:11px;color:#8B867C}.mktg-root .pv2-wb{font-size:11px;color:#8B867C;text-align:right}.mktg-root .pv2-wb b{color:#26241F;font-size:13px}
.mktg-root .pv2-rtot{background:#fff;border:1px solid #E0DDD6;border-radius:12px 12px 0 0;overflow:hidden}
.mktg-root .pv2-rtot-h{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;background:#0D1B33;border-bottom:3px solid #E1A146;padding:11px 14px}
.mktg-root .pv2-rtot-t{font-size:13px;font-weight:900;color:#fff}
.mktg-root .pv2-rtot-d{background:rgba(225,161,70,.2);border:1px solid rgba(225,161,70,.45);color:#EFC578;font-size:10px;font-weight:800;padding:4px 11px;border-radius:20px}
.mktg-root .pv2-rtot-bd{padding:13px 14px}
.mktg-root .pv2-rtot-k{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-bottom:12px}
.mktg-root .pv2-tk{background:#FBFAF7;border:1px solid #E0DDD6;border-radius:10px;padding:10px;text-align:center}
.mktg-root .pv2-tk .l{font-size:8.5px;letter-spacing:.05em;text-transform:uppercase;color:#8B867C;font-weight:800;margin-bottom:4px}
.mktg-root .pv2-tk .v{font-size:22px;font-weight:900;line-height:1.15;color:#26241F}.mktg-root .pv2-tk .v.g{color:#2E7D5B}.mktg-root .pv2-tk .v.y{color:#C6862F}.mktg-root .pv2-tk .v.r{color:#C0392B}.mktg-root .pv2-tk .s{font-size:9px;color:#8B867C;margin-top:2px}
.mktg-root .pv2-barbig{display:block;height:12px;background:#E7E3DA;border-radius:7px;position:relative}.mktg-root .pv2-barbig i{display:block;height:100%;border-radius:7px}.mktg-root .pv2-barbig i.g{background:#2E7D5B}.mktg-root .pv2-barbig i.y{background:#C6862F}.mktg-root .pv2-barbig i.r{background:#C0392B}.mktg-root .pv2-barbig u{position:absolute;top:-3px;width:2px;height:18px;background:#0D1B33;border-radius:2px}
.mktg-root .pv2-lg{display:flex;justify-content:space-between;margin-top:8px;font-size:10.5px;color:#8B867C;flex-wrap:wrap;gap:6px}.mktg-root .pv2-lg b{color:#26241F}
.mktg-root .pv2-rwarn{display:flex;align-items:center;gap:9px;background:#FBEFD8;border:1px solid #FBF1DC;border-top:none;border-radius:0 0 12px 12px;padding:10px 14px;font-size:11.5px;color:#9C6A16;margin-bottom:11px}.mktg-root .pv2-rwarn b{color:#26241F}
.mktg-root .pv2-rwrap{background:#fff;border:1px solid #E0DDD6;border-radius:12px;overflow:hidden}
.mktg-root .pv2-RG{display:grid;grid-template-columns:1.3fr 78px 118px 176px 148px 84px 32px;gap:10px;align-items:center}
.mktg-root .pv2-rhd{background:#0D1B33;color:#fff;padding:10px 13px}.mktg-root .pv2-rhd span{font-size:9px;letter-spacing:.06em;text-transform:uppercase;font-weight:800}
.mktg-root .pv2-pl{border-bottom:1px solid #E0DDD6}.mktg-root .pv2-pl:last-child{border-bottom:none}
.mktg-root .pv2-pl-h{padding:12px 13px;cursor:pointer}.mktg-root .pv2-pl-h:hover{background:#F5F3EE}.mktg-root .pv2-pl:nth-child(odd) .pv2-pl-h{background:#FBFAF8}
.mktg-root .pv2-pnm{display:flex;align-items:center;gap:9px}.mktg-root .pv2-pnm b{font-size:14px;font-weight:900;color:#26241F}
.mktg-root .pv2-cc2{text-align:center;font-size:12px;color:#8B867C}.mktg-root .pv2-cc2 b{font-size:13.5px;font-weight:900;color:#26241F;display:block}
.mktg-root .pv2-pw{display:flex;flex-direction:column;gap:3px}
.mktg-root .pv2-car{justify-self:end;width:28px;height:28px;border:1px solid #E0DDD6;background:#fff;border-radius:8px;color:#0D1B33;font-size:10px;cursor:pointer;font-family:inherit}.mktg-root .pv2-pl.cl .pv2-car{transform:rotate(-90deg)}
.mktg-root .pv2-pl-b{background:#FAF9F6;border-top:1px solid #E0DDD6;padding:10px 13px 12px}.mktg-root .pv2-pl.cl .pv2-pl-b{display:none}
.mktg-root table.pv2-kt2{width:100%;border-collapse:collapse;background:#fff;border:1px solid #E0DDD6;border-radius:10px;overflow:hidden}
.mktg-root table.pv2-kt2 thead th{background:#F4F2ED;color:#6E6A62;border-bottom:1px solid #E0DDD6;font-size:8.5px;letter-spacing:.06em;text-transform:uppercase;text-align:left;padding:8px 10px;font-weight:800}
.mktg-root table.pv2-kt2 tbody td{padding:9px 10px;border-bottom:1px solid #EFEDE8;font-size:11.5px}.mktg-root table.pv2-kt2 tbody tr:last-child td{border-bottom:none}.mktg-root table.pv2-kt2 tbody tr:nth-child(even){background:#FBFAF8}
.mktg-root .pv2-ck{font-weight:800;color:#26241F}.mktg-root .pv2-delta{font-size:10.5px;font-weight:800;padding:4px 9px;border-radius:20px;white-space:nowrap}.mktg-root .pv2-delta.up{background:#E4F0EA;color:#2E7D5B}.mktg-root .pv2-delta.dn{background:#F8E4DF;color:#C0392B}
.mktg-root .pv2-src{display:flex;align-items:center;gap:11px;margin-top:11px;background:#EAF1FB;border:1px solid #CFE0F4;border-radius:10px;padding:10px 13px;font-size:11.5px;color:#2b3a52;flex-wrap:wrap}.mktg-root .pv2-src b{color:#0D1B33}
.mktg-root .pv2-src button{margin-left:auto;background:#0D1B33;color:#fff;border:none;border-radius:8px;padding:7px 13px;font-size:11px;font-weight:700;cursor:pointer;font-family:inherit}
.mktg-root .pv2-rempty{color:#8B867C;font-style:italic;font-size:12px;padding:8px 4px}
.mktg-root .pv2-w5{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:12px}
.mktg-root .pv2-w5c{border-radius:11px;padding:12px 13px;border:1px solid;text-align:center}
.mktg-root .pv2-w5c .l{font-size:9px;letter-spacing:.05em;text-transform:uppercase;font-weight:800;margin-bottom:4px}
.mktg-root .pv2-w5c .v{font-size:26px;font-weight:900;line-height:1.15}.mktg-root .pv2-w5c .s{font-size:9.5px;margin-top:2px}
.mktg-root .pv2-w5c.r{background:#FDF4F2;border-color:#F0D9D3}.mktg-root .pv2-w5c.r .l,.mktg-root .pv2-w5c.r .v{color:#C0392B}.mktg-root .pv2-w5c.r .s{color:#a8695e}
.mktg-root .pv2-w5c.y{background:#FBEFD8;border-color:#FBF1DC}.mktg-root .pv2-w5c.y .l,.mktg-root .pv2-w5c.y .v{color:#C6862F}.mktg-root .pv2-w5c.y .s{color:#9c8455}
.mktg-root .pv2-w5c.n{background:#FBFAF7;border-color:#E0DDD6}.mktg-root .pv2-w5c.n .l{color:#8B867C}.mktg-root .pv2-w5c.n .v{color:#26241F}.mktg-root .pv2-w5c.n .s{color:#8B867C}
.mktg-root .pv2-grp{background:#fff;border:1px solid #E0DDD6;border-radius:11px;overflow:hidden;margin-bottom:9px}.mktg-root .pv2-grp:last-child{margin-bottom:0}
.mktg-root .pv2-grp-h{display:flex;align-items:center;gap:10px;padding:11px 13px;cursor:pointer}.mktg-root .pv2-grp-h:hover{background:#F5F3EE}
.mktg-root .pv2-gdot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.mktg-root .pv2-gdot.r{background:#C0392B}.mktg-root .pv2-gdot.y{background:#C6862F}.mktg-root .pv2-gdot.n{background:#C6C1B6}
.mktg-root .pv2-gt{font-size:13.5px;font-weight:900;color:#26241F}.mktg-root .pv2-gc{font-size:11px;color:#8B867C}.mktg-root .pv2-gc b{color:#26241F;font-size:13px}
.mktg-root .pv2-gcar{margin-left:auto;width:28px;height:28px;border:1px solid #E0DDD6;background:#fff;border-radius:8px;color:#0D1B33;font-size:10px;cursor:pointer;font-family:inherit}.mktg-root .pv2-grp.cl .pv2-gcar{transform:rotate(-90deg)}
.mktg-root .pv2-grp-b{border-top:1px solid #EFEDE8}.mktg-root .pv2-grp.cl .pv2-grp-b{display:none}
.mktg-root .pv2-grp.r{border-color:#F0D9D3}.mktg-root .pv2-grp.r .pv2-grp-h{background:#FDF4F2}.mktg-root .pv2-grp.y .pv2-grp-h{background:#FEFAF2}
.mktg-root .pv2-day{border-bottom:1px solid #EFEDE8}.mktg-root .pv2-day:last-child{border-bottom:none}
.mktg-root .pv2-day-h{display:flex;align-items:center;gap:10px;padding:9px 13px;cursor:pointer;background:#FBFAF7}.mktg-root .pv2-day-h:hover{background:#F5F3EE}
.mktg-root .pv2-dn{font-size:12.5px;font-weight:800;color:#26241F}.mktg-root .pv2-dd{font-size:11px;color:#8B867C}.mktg-root .pv2-dc{margin-left:auto;font-size:11px;color:#8B867C}.mktg-root .pv2-dc b{color:#26241F;font-size:12.5px}
.mktg-root .pv2-dcar{width:24px;height:24px;border:1px solid #E0DDD6;background:#fff;border-radius:6px;color:#0D1B33;font-size:9px;cursor:pointer;font-family:inherit}.mktg-root .pv2-day.cl .pv2-dcar{transform:rotate(-90deg)}
.mktg-root .pv2-day-b{border-top:1px solid #EFEDE8}.mktg-root .pv2-day.cl .pv2-day-b{display:none}
.mktg-root .pv2-noteb{border:1px dashed #E0DDD6;border-radius:9px;padding:11px;margin-top:16px;min-height:60px}.mktg-root .pv2-noteb .nl2{font-size:9px;letter-spacing:.06em;text-transform:uppercase;color:#8B867C;font-weight:800}
@media(max-width:860px){
  .mktg-root .pv2-kpis,.mktg-root .pv2-rtot-k{grid-template-columns:1fr 1fr}
  .mktg-root .pv2-w5{grid-template-columns:1fr}
  .mktg-root .pv2-tu-h{grid-template-columns:1fr;gap:7px}.mktg-root .pv2-tfold{justify-self:start}.mktg-root .pv2-tpc{text-align:left}
  .mktg-root .pv2-nd-h{grid-template-columns:24px 1fr 30px}
  .mktg-root .pv2-nd-h .pv2-nbai,.mktg-root .pv2-nd-h .pv2-nbar,.mktg-root .pv2-nd-h .pv2-npc,.mktg-root .pv2-nd-h .pv2-fmt,.mktg-root .pv2-nd-h .pv2-nomark{grid-column:2 / -1;text-align:left;justify-self:start}
  .mktg-root .pv2-rhd{display:none}.mktg-root .pv2-RG{grid-template-columns:1fr;gap:6px}.mktg-root .pv2-cc2,.mktg-root .pv2-pw{text-align:left}.mktg-root .pv2-car{justify-self:start}
  .mktg-root .pv2-wk{grid-template-columns:1fr 1fr}
  .mktg-root table.pv2-pt,.mktg-root table.pv2-pt thead,.mktg-root table.pv2-pt tbody,.mktg-root table.pv2-pt tr,.mktg-root table.pv2-pt td,.mktg-root table.pv2-kt,.mktg-root table.pv2-kt thead,.mktg-root table.pv2-kt tbody,.mktg-root table.pv2-kt tr,.mktg-root table.pv2-kt td,.mktg-root table.pv2-kt2,.mktg-root table.pv2-kt2 thead,.mktg-root table.pv2-kt2 tbody,.mktg-root table.pv2-kt2 tr,.mktg-root table.pv2-kt2 td{display:block}
  .mktg-root table.pv2-pt thead,.mktg-root table.pv2-kt thead,.mktg-root table.pv2-kt2 thead{display:none}
  .mktg-root table.pv2-pt tbody tr,.mktg-root table.pv2-kt tbody tr,.mktg-root table.pv2-kt2 tbody tr{border:1px solid #EFEDE8;border-radius:9px;margin:8px;padding:3px}
  .mktg-root table.pv2-pt tbody td,.mktg-root table.pv2-kt tbody td,.mktg-root table.pv2-kt2 tbody td{display:flex;justify-content:space-between;gap:10px;text-align:right;padding:7px 10px}
  .mktg-root table.pv2-pt tbody td::before,.mktg-root table.pv2-kt tbody td::before,.mktg-root table.pv2-kt2 tbody td::before{content:attr(data-l);color:#8B867C;font-weight:800;font-size:9.5px;text-transform:uppercase}
  .mktg-root .pv2-bar.sm{width:100%}
  .mktg-root table.pv2-kt tbody td[data-l="Kênh"]{justify-content:flex-start;text-align:left}.mktg-root table.pv2-kt tbody td[data-l="Kênh"] .pv2-knw{margin-left:auto}
  .mktg-root .pv2-card{max-width:100%}
  .mktg-root .pv2-body{padding:12px 11px}
  .mktg-root .pv2-ph,.mktg-root .pv2-kpis,.mktg-root .pv2-toolbar{padding-left:12px;padding-right:12px}
  .mktg-root .pv2-sect{padding:11px}
  .mktg-root .pv2-tld,.mktg-root .pv2-tb,.mktg-root .pv2-tbai{justify-self:start}
  /* chống tràn ngang: cho ô trong grid/flex co lại + chuỗi dài (link/tên kênh/tiêu đề) tự ngắt */
  .mktg-root .pv2-tu-h>*,.mktg-root .pv2-nd-h>*,.mktg-root .pv2-pl-h>*,.mktg-root .pv2-wk>*,.mktg-root .pv2-rtot-h>*,.mktg-root .pv2-src>*{min-width:0}
  .mktg-root table.pv2-pt tbody td,.mktg-root table.pv2-kt tbody td,.mktg-root table.pv2-kt2 tbody td{min-width:0}
  .mktg-root .pv2-card *{overflow-wrap:anywhere;word-break:break-word}
}
/* Bản IN PDF (cửa sổ xem trước .tds-print): GIỮ nút thu/mở hoạt động (bấm gập từng danh sách bài) — chỉ ẩn nút thừa */
.mktg-root .tds-print .pv2-pdf,.mktg-root .tds-print .pv2-toolbar,.mktg-root .tds-print .pv2-src button{display:none !important}
/* nút gộp "Thu gọn / Mở hết danh sách bài" trên thanh cửa sổ In */
.mktg-root .tds-ppbar .pr2{background:#fff;color:#0D1B33;border:1px solid #C6862F;border-radius:8px;padding:8px 13px;font-size:12px;font-weight:700;cursor:pointer;font-family:inherit;white-space:nowrap}
.mktg-root .tds-ppbar .pr2:hover{background:#C6862F;color:#fff}
/* ════ QUẢN LÝ CÔNG VIỆC — dựng lại bám mockup-marketing-quanly-congviec.html ════ */
.ct2-root .ct2-addbar{background:#fff;border:1px solid var(--gold-light);border-radius:12px;padding:11px 12px;margin-bottom:14px}
.ct2-root .ct2-addat{font-size:11px;font-weight:800;color:var(--gold-ink);text-transform:uppercase;margin-bottom:9px}
.ct2-root .ct2-addat b{color:var(--navy)}
.ct2-root .ct2-addday{margin-bottom:10px}
.ct2-root .ct2-wddays{display:flex;gap:6px;flex-wrap:wrap}
.ct2-root .ct2-wdchip{display:flex;flex-direction:column;align-items:center;gap:1px;border:1px solid var(--line);background:#fff;border-radius:10px;padding:7px 11px;cursor:pointer;min-width:58px}
.ct2-root .ct2-wdchip .wd{font-size:10px;font-weight:700;color:var(--soft)}
.ct2-root .ct2-wdchip .dd{font-size:13px;font-weight:800;color:var(--navy)}
.ct2-root .ct2-wdchip:hover{border-color:var(--gold)}
.ct2-root .ct2-wdchip.active{background:var(--navy);border-color:var(--navy)}
.ct2-root .ct2-wdchip.active .wd,.ct2-root .ct2-wdchip.active .dd{color:#fff}
.ct2-root .ct2-wdchip.istoday .dd{color:var(--gold-ink)}
.ct2-root .ct2-wdchip.active.istoday .dd{color:#fff}
.ct2-root .ct2-datebtn{padding:7px 11px;border:1px solid var(--line);border-radius:8px;font-size:12.5px;background:#fff;cursor:pointer;color:var(--navy);font-weight:700;font-family:inherit}
.ct2-root .ct2-datebtn.big{display:inline-flex;align-items:center;gap:7px;border-color:var(--gold-light);background:var(--gold-pale);padding:10px 14px;font-size:13.5px;font-weight:800}
.ct2-root .ct2-addgrid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr 1fr auto;gap:8px;align-items:center}
.ct2-root .ct2-addgrid input,.ct2-root .ct2-addgrid select{padding:9px 10px;border:1px solid var(--line);border-radius:8px;font-size:12.5px;background:#fff;width:100%;font-family:inherit;color:var(--text)}
.ct2-root .ct2-addbtn{background:var(--gold-ink);color:#fff;border:none;border-radius:9px;padding:10px 16px;font-size:13px;font-weight:800;cursor:pointer;white-space:nowrap}
.ct2-root .ct2-task{border:1px solid var(--line);border-radius:11px;background:#fff;margin-bottom:8px;overflow:hidden}
.ct2-root .ct2-task.done{background:#FAFBF9}
.ct2-root .ct2-th{display:flex;align-items:center;gap:10px;padding:11px 13px;cursor:pointer;flex-wrap:nowrap}
.ct2-root .ct2-cbox{width:21px;height:21px;border-radius:6px;border:2px solid var(--line);flex:none;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:13px;color:#fff;background:#fff}
.ct2-root .ct2-cbox.on{background:#2E7D5B;border-color:#2E7D5B}
.ct2-root .ct2-tname{flex:1;min-width:0;font-size:13.5px;font-weight:700;color:var(--navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ct2-root .ct2-task.done .ct2-tname{color:var(--soft);text-decoration:line-through}
.ct2-root .ct2-kbadge{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:700;color:var(--text);background:var(--bg);border:1px solid var(--line);border-radius:999px;padding:3px 10px 3px 4px;white-space:nowrap;flex:none}
.ct2-root .ct2-kbadge .ki{width:18px;height:18px;border-radius:50%;color:#fff;font-size:9px;font-weight:800;display:flex;align-items:center;justify-content:center;flex:none}
.ct2-root .ct2-who{font-size:11px;color:var(--soft);font-weight:600;white-space:nowrap;flex:none}
.ct2-root .ct2-ttsel{min-width:104px;padding:5px 7px;border:none;border-radius:7px;font-size:11px;font-weight:800;cursor:pointer;font-family:inherit;flex:none}
.ct2-root .ct2-lkopen{width:26px;height:26px;border-radius:7px;border:1px solid var(--line);background:#fff;color:#2F5FA8;font-weight:800;cursor:pointer;display:flex;align-items:center;justify-content:center;text-decoration:none;flex:none}
.ct2-root .ct2-exp{width:28px;height:28px;border-radius:7px;border:1px solid var(--line);background:#fff;color:var(--navy);font-weight:800;cursor:pointer;flex:none}
.ct2-root .ct2-tb{padding:0 13px 13px 44px;display:none}
.ct2-root .ct2-task.open .ct2-tb{display:block}
.ct2-root .ct2-metaedit{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:11px;padding:9px 11px;background:var(--gold-pale);border:1px solid var(--gold-cream);border-radius:9px}
.ct2-root .ct2-mfld{display:flex;align-items:center;gap:5px}
.ct2-root .ct2-mfld label{font-size:10px;font-weight:700;color:var(--soft);text-transform:uppercase}
.ct2-root .ct2-mfld select,.ct2-root .ct2-mfld .ct2-datebtn{padding:5px 8px;border:1px solid var(--line);border-radius:7px;font-size:12px;background:#fff;cursor:pointer;color:var(--navy);font-weight:700;font-family:inherit}
.ct2-root .ct2-bfld{margin-bottom:10px}
.ct2-root .ct2-bfld>label{font-size:11px;font-weight:800;color:var(--soft);text-transform:uppercase;display:block;margin-bottom:4px}
.ct2-root .ct2-bfld textarea{width:100%;border:1px solid var(--line);border-radius:9px;padding:10px 12px;font-size:13px;background:#fff;resize:vertical;min-height:78px;line-height:1.5;font-family:inherit;color:var(--text)}
.ct2-root .ct2-linkrow{display:flex;gap:8px;align-items:center}
.ct2-root .ct2-linkrow input{flex:1;border:1px solid var(--line);border-radius:9px;padding:10px 12px;font-size:13px;font-family:inherit;color:var(--text)}
.ct2-root .ct2-ghi{width:100%;border:1px solid var(--line);border-radius:9px;padding:10px 12px;font-size:13px;font-family:inherit;color:var(--text)}
.ct2-root .ct2-tbfoot{display:flex;justify-content:flex-end;margin-top:2px}
.ct2-root .ct2-modal-ov{position:fixed;inset:0;background:rgba(13,27,51,.5);display:none;align-items:center;justify-content:center;z-index:100050;padding:14px}
.ct2-root .ct2-modal-ov.show{display:flex}
.ct2-root .ct2-calbox{background:#fff;border-radius:18px;padding:15px;width:312px;max-width:96vw;box-shadow:0 24px 60px rgba(13,27,51,.4)}
.ct2-root .ct2-calhd{display:flex;align-items:center;justify-content:space-between;gap:6px;font-size:14px;font-weight:900;color:var(--navy);margin-bottom:11px}
.ct2-root .ct2-calhd [data-ctcaltitle]{flex:1;text-align:center}
.ct2-root .ct2-calnav{flex:none;width:30px;height:30px;border:1px solid var(--line);background:#fff;border-radius:8px;font-size:13px;font-weight:800;color:var(--navy);cursor:pointer;line-height:1}
.ct2-root .ct2-calnav:hover{background:var(--gold-pale)}
.ct2-root .ct2-calgrid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}
.ct2-root .ct2-calwd{font-size:10px;font-weight:700;color:var(--soft);text-align:center;padding:4px 0}
.ct2-root .ct2-calday{padding:8px 0;text-align:center;border-radius:8px;cursor:pointer;font-size:12.5px;font-weight:600;color:var(--text)}
.ct2-root .ct2-calday:hover{background:var(--gold-pale)}
.ct2-root .ct2-calday.sel{background:var(--navy);color:#fff;font-weight:800}
.ct2-root .ct2-calday.today{border:1.5px solid var(--gold)}
.ct2-root .ct2-calfoot{display:flex;gap:9px;margin-top:12px}
.ct2-root .ct2-calf{flex:1;border:none;border-radius:10px;padding:11px;font-size:12.5px;font-weight:800;cursor:pointer;background:var(--gold-ink);color:#fff;font-family:inherit}
.ct2-root .ct2-calf.ghost{background:#f1ece2;color:var(--soft)}
.ct2-root .ct2-wdbox{background:#fff;border-radius:18px;padding:16px;width:330px;max-width:96vw;box-shadow:0 24px 60px rgba(13,27,51,.4)}
.ct2-root .ct2-wdtitle{font-size:14px;font-weight:900;color:var(--navy);margin-bottom:12px;text-align:center}
.ct2-root .ct2-wdbox .ct2-wddays{justify-content:center}
@media(max-width:860px){
  .ct2-root .ct2-addgrid{grid-template-columns:1fr 1fr}
  .ct2-root .ct2-addgrid .ct2-tenin{grid-column:1 / -1}
  .ct2-root .ct2-addgrid .ct2-addbtn{grid-column:1 / -1}
  .ct2-root .ct2-th{flex-wrap:wrap;gap:8px 9px}
  .ct2-root .ct2-tname{flex-basis:100%;white-space:normal}
  .ct2-root .ct2-tb{padding-left:13px}
  .ct2-root .ct2-wdchip{min-width:44px;padding:6px 8px}
  .ct2-root .ct2-metaedit{gap:6px}
  .ct2-root .ct2-mfld{flex:1 1 46%}
}
/* ===== MOBILE (≤860px): ô tự xuống hàng, không tràn ngang ===== */
@media(max-width:860px){
  .ct2-root .ct2-funnel{grid-template-columns:repeat(3,1fr)}
  .ct2-root .ct2-pct{min-width:0;flex-basis:100%;justify-content:flex-start;margin-left:0}
  .ct2-root .ct2-pf{flex:1 1 100%;min-width:0}
  .ct2-root .ct2-pf.sl,.ct2-root .ct2-pf.wk{flex:1 1 46%}
  .ct2-root .ct2-pf.sl .ct2-in{width:100%}
  .ct2-root .ct2-plx{align-self:center;width:100%;height:36px}
  .ct2-root .ct2-wgrid{grid-template-columns:1fr}
  .ct2-root .ct2-quickadd .ct2-sel,.ct2-root .ct2-qtext{max-width:none;flex:1 1 100%}
  .ct2-root .ct2-lf{gap:6px}
  .ct2-cfg .ctcfg-addrow{grid-template-columns:1fr}
  .ct2-cfg .ctcfg-tbl thead{display:none}
  .ct2-cfg .ctcfg-tbl,.ct2-cfg .ctcfg-tbl tbody,.ct2-cfg .ctcfg-tbl tr,.ct2-cfg .ctcfg-tbl td{display:block;width:auto}
  .ct2-cfg .ctcfg-tbl tbody tr{border:1px solid var(--line);border-radius:11px;margin:10px;padding:6px;background:#fff}
  .ct2-cfg .ctcfg-tbl tbody td{border:none;padding:6px 8px}
  .ct2-cfg .ctcfg-tbl tbody td::before{content:attr(data-l);display:block;color:var(--soft);font-weight:700;font-size:10px;text-transform:uppercase;margin-bottom:4px}
  .ct2-cfg .ctcfg-tbl tbody td.ctcfg-acts{text-align:left}
  .ct2-cfg .ctcfg-tbl tbody td.ctcfg-acts::before{display:none}
  .ct2-root .ct2-htop .ct2-ttl{font-size:16px}
}


/* ════════════════════════════════════════════════════════════
   TAB KẾ HOẠCH TRAFFIC (DỰNG LẠI) — prefix tr2-  ·  bám mockup traffic.html + -duoi.html
   + SUB-TAB "Reach đạt theo kênh" — prefix rk-  ·  bám mockup soluieu-kenh.html
   Màu literal brand (navy #0D1B33 · gold #E1A146 · kem · KHÔNG tím). Scoped .mktg-root.
   ════════════════════════════════════════════════════════════ */
.mktg-root .tr2-yearchip{font-size:12px;font-weight:800;color:#fff;background:#0D1B33;border-radius:999px;padding:6px 14px}
/* dải 4 số */
.mktg-root .tr2-mtstrip{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;background:#fff;border:1px solid #ECE5D8;border-radius:12px;padding:13px;margin-bottom:7px}
.mktg-root .tr2-mtcell{padding:4px 8px;border-left:3px solid #ECE5D8}
.mktg-root .tr2-mtcell.c1{border-left-color:#2E7D5B}.mktg-root .tr2-mtcell.c2{border-left-color:#2F5FA8}.mktg-root .tr2-mtcell.c3{border-left-color:#B9791C}.mktg-root .tr2-mtcell.c4{border-left-color:#C0392B}
.mktg-root .tr2-mtcell .l{font-size:10px;color:#8A8170;text-transform:uppercase;font-weight:700;letter-spacing:.03em}
.mktg-root .tr2-mtcell .v{font-size:16px;font-weight:900;color:#0D1B33;margin-top:2px;font-variant-numeric:tabular-nums}
.mktg-root .tr2-mtcell .s{font-size:10px;color:#8A8170}
.mktg-root .tr2-inherit{font-size:11px;color:#8A8170;margin:6px 0 14px}.mktg-root .tr2-inherit b{color:#9C6A16}
/* chú thích màu */
.mktg-root .tr2-legend{display:flex;gap:14px;flex-wrap:wrap;font-size:11.5px;color:#8A8170;margin-bottom:14px}
.mktg-root .tr2-legend span{display:inline-flex;align-items:center;gap:6px;font-weight:600}
.mktg-root .tr2-legend .lgd{width:13px;height:13px;border-radius:4px;display:inline-block}
.mktg-root .tr2-legend .lgd.in{background:#FEF9EE;border:1px solid #EDB96A}.mktg-root .tr2-legend .lgd.auto{background:#EAF0F8;border:1px solid #cdd9ee}.mktg-root .tr2-legend .lgd.inh{background:#F1EEE8;border:1px solid #ECE5D8}
/* tiêu đề mục */
.mktg-root .tr2-sech{display:flex;align-items:center;gap:9px;margin:18px 0 9px;flex-wrap:wrap}
.mktg-root .tr2-sech .num{width:24px;height:24px;border-radius:7px;background:#E1A146;color:#3a2708;font-size:12px;font-weight:900;display:flex;align-items:center;justify-content:center;flex:none}
.mktg-root .tr2-sech .tt{font-size:15px;font-weight:900;color:#0D1B33}.mktg-root .tr2-sech .tt small{font-weight:500;color:#8A8170;font-size:11.5px;margin-left:6px}
.mktg-root .tr2-badge{font-size:10px;font-weight:700;color:#9C6A16;background:#FBF1DC;border:1px solid #EDB96A;border-radius:999px;padding:3px 9px}
.mktg-root .tr2-secdesc{font-size:12px;color:#8A8170;margin:0 0 11px;line-height:1.5}.mktg-root .tr2-secdesc b{color:#26221B}
.mktg-root .tr2-sub4h{font-size:12.5px;font-weight:800;color:#0D1B33;margin:15px 0 9px;display:flex;align-items:center;gap:7px}.mktg-root .tr2-sub4h::before{content:'';width:4px;height:15px;background:#E1A146;border-radius:2px}
/* phễu — chế độ xem */
.mktg-root .tr2-viewseg{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:10px}
.mktg-root .tr2-viewseg>button{border:none;background:#FBF1DC;color:#9C6A16;font-size:12.5px;font-weight:700;padding:7px 14px;border-radius:7px;cursor:pointer}
.mktg-root .tr2-viewseg>button.active{background:#0D1B33;color:#fff}
.mktg-root .tr2-mnav{display:inline-flex;align-items:center;gap:4px;background:#fff;border:1px solid #ECE5D8;border-radius:9px;padding:3px}
.mktg-root .tr2-mnav button{border:none;background:transparent;width:30px;height:30px;border-radius:7px;font-size:14px;font-weight:800;color:#0D1B33;cursor:pointer}.mktg-root .tr2-mnav button:hover{background:#FEF9EE}
.mktg-root .tr2-mnav .lbl{font-size:12.5px;font-weight:800;color:#0D1B33;padding:0 8px;min-width:74px;text-align:center}
.mktg-root .tr2-qbtn2{border:1px solid #ECE5D8;background:#fff;border-radius:9px;padding:7px 11px;font-size:12px;font-weight:700;color:#8A8170;cursor:pointer}.mktg-root .tr2-qbtn2:hover{background:#FEF9EE;color:#9C6A16}
.mktg-root .tr2-monthhint{font-size:11.5px;color:#8A8170;background:#FEF9EE;border:1px solid #FBF1DC;border-radius:9px;padding:8px 11px;margin-bottom:12px;line-height:1.5}.mktg-root .tr2-monthhint b{color:#9C6A16}
/* phễu */
.mktg-root .tr2-funnel{max-width:660px;margin:0 auto 6px;display:flex;flex-direction:column;align-items:center}
.mktg-root .tr2-fbar{border-radius:12px;color:#fff;padding:13px 18px;display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:155px}
.mktg-root .tr2-fbar .fl{font-size:12.5px;font-weight:800}.mktg-root .tr2-fbar .fl small{display:block;font-weight:500;opacity:.85;font-size:10px;margin-top:1px}
.mktg-root .tr2-fbar .fnum{font-size:21px;font-weight:900;white-space:nowrap;font-variant-numeric:tabular-nums}
.mktg-root .tr2-fbar.lv-reach{background:#0D1B33}.mktg-root .tr2-fbar.lv-tt{background:#2F5FA8}.mktg-root .tr2-fbar.lv-inbox{background:#B9791C}.mktg-root .tr2-fbar.lv-lead{background:#E1A146}.mktg-root .tr2-fbar.lv-kh{background:#2E7D5B}
.mktg-root .tr2-rate{display:flex;align-items:center;gap:9px;padding:7px 0;color:#8A8170;font-size:12px;font-weight:600}
.mktg-root .tr2-rate .arrow{color:#ECE5D8;font-size:14px;margin:-2px 0}
.mktg-root .tr2-rctl{display:inline-flex;align-items:center;border:1px solid #ECE5D8;border-radius:9px;overflow:hidden;background:#fff}
.mktg-root .tr2-rctl button{border:none;background:#fff;width:32px;height:34px;font-size:18px;font-weight:800;color:#0D1B33;cursor:pointer}.mktg-root .tr2-rctl button:active{background:#FEF9EE}
.mktg-root .tr2-rctl input{width:50px;height:34px;border:none;border-left:1px solid #ECE5D8;border-right:1px solid #ECE5D8;text-align:center;font-size:14px;font-weight:800;color:#0D1B33;font-family:inherit}
.mktg-root .tr2-rctl.ro{padding:6px 12px;font-size:14px;font-weight:800;color:#0D1B33}
.mktg-root .tr2-rate .rpct{font-weight:800;color:#9C6A16;font-size:13px}
.mktg-root .tr2-applyall{display:flex;justify-content:center;margin:4px 0 12px}
.mktg-root .tr2-applyall button{background:#fff;border:1px dashed #E1A146;color:#9C6A16;border-radius:9px;padding:9px 15px;font-size:12.5px;font-weight:700;cursor:pointer}
/* chi phí */
.mktg-root .tr2-coststrip{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:6px 0}
.mktg-root .tr2-costcell{background:#fff;border:1px solid #ECE5D8;border-top:3px solid #E1A146;border-radius:11px;padding:12px 13px}
.mktg-root .tr2-costcell .l{font-size:10px;color:#8A8170;text-transform:uppercase;font-weight:700}.mktg-root .tr2-costcell .v{font-size:18px;font-weight:900;color:#0D1B33;margin-top:3px}.mktg-root .tr2-costcell .s{font-size:10px;color:#8A8170;margin-top:1px}
/* bảng phễu 12 tháng thu gọn */
.mktg-root .tr2-tog12{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;background:#fff;border:1px solid #ECE5D8;border-radius:11px;padding:12px 14px;cursor:pointer;font-size:13px;font-weight:800;color:#0D1B33;margin-top:8px}
.mktg-root .tr2-tog12 .arr{transition:transform .15s;color:#8A8170}.mktg-root .tr2-tog12.open .arr{transform:rotate(90deg)}
.mktg-root .tr2-m12wrap{display:none;margin-top:10px}.mktg-root .tr2-m12wrap.open{display:block}
.mktg-root .tr2-m12legend{font-size:11px;color:#8A8170;margin-bottom:8px}.mktg-root .tr2-m12legend b{font-weight:700}
/* bảng tháng */
.mktg-root .tr2-tblscroll{overflow-x:auto;border:1px solid #ECE5D8;border-radius:12px;background:#fff}
.mktg-root .tr2-mtable{border-collapse:collapse;font-size:12.5px;min-width:880px;width:100%}
.mktg-root .tr2-mtable.wide{min-width:980px}
.mktg-root .tr2-mtable th,.mktg-root .tr2-mtable td{border:1px solid #ECE5D8;padding:9px 10px;text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.mktg-root .tr2-mtable th{background:#FBF1DC;color:#9C6A16;font-size:11px}
.mktg-root .tr2-mtable th.cur,.mktg-root .tr2-mtable td.cur{background:#EAF0F8}
.mktg-root .tr2-mtable td.lab,.mktg-root .tr2-mtable th.lab{text-align:left;position:sticky;left:0;z-index:2;font-weight:700;color:#0D1B33;min-width:150px}
.mktg-root .tr2-mtable td.lab{background:#fff}.mktg-root .tr2-mtable th.lab{background:#FBF1DC}
.mktg-root .tr2-mtable td.lft{text-align:left}
.mktg-root .tr2-mtable tr.inh td{color:#8A8170;background:#F8F6F2}
.mktg-root .tr2-mtable tr.auto td{background:#F4F8FD;color:#2c4a73}
.mktg-root .tr2-mtable td.col-tot{font-weight:800;background:#FEF9EE;color:#0D1B33}
.mktg-root .tr2-mtable tr.totrow td{font-weight:800;background:#FEF9EE}
.mktg-root .tr2-mtable td.pcell{font-weight:800}
.mktg-root .tr2-rtag{font-size:9px;font-weight:700;border-radius:999px;padding:1px 7px;margin-left:6px}
.mktg-root .tr2-rtag.auto{background:#dceaf8;color:#2F5FA8}.mktg-root .tr2-rtag.inh{background:#e7e1d5;color:#8A8170}
/* chọn tháng */
.mktg-root .tr2-monthsel{display:flex;align-items:center;gap:9px;margin-bottom:12px;flex-wrap:wrap}.mktg-root .tr2-monthsel .lab{font-size:12px;color:#8A8170;font-weight:700}
.mktg-root .tr2-select{padding:8px 12px;border-radius:9px;border:1px solid #ECE5D8;background:#fff;font-size:13px;color:#26221B;cursor:pointer;font-family:inherit}
/* phân bổ kênh */
.mktg-root .tr2-chlist{margin-bottom:4px}
.mktg-root .tr2-chrow{display:flex;align-items:center;gap:11px;flex-wrap:wrap;border:1px solid #ECE5D8;border-radius:11px;background:#fff;padding:11px 13px;margin-bottom:9px}
.mktg-root .tr2-chrow .chname{font-size:13.5px;font-weight:800;color:#0D1B33;flex:1;min-width:140px}
.mktg-root .tr2-chrow .chwho{display:flex;align-items:center;gap:6px}.mktg-root .tr2-chrow .chwho .l{font-size:10.5px;color:#8A8170;font-weight:700}
.mktg-root .tr2-chrow .chwho select{padding:7px 9px;border-radius:8px;border:1px solid #ECE5D8;font-size:12.5px;background:#fff;font-family:inherit}
.mktg-root .tr2-chrow .chreach{display:flex;flex-direction:column;gap:4px;min-width:150px}.mktg-root .tr2-chrow .chreach>span{font-size:10px;font-weight:700;color:#8A8170;text-transform:uppercase}
.mktg-root .tr2-numbtn{text-align:right;background:#FEF9EE;border:1px solid #EDB96A;border-radius:9px;padding:10px 12px;font-size:14px;font-weight:800;color:#0D1B33;cursor:pointer;font-variant-numeric:tabular-nums;font-family:inherit}.mktg-root .tr2-numbtn:hover{background:#FBE8C7}
.mktg-root .tr2-ro{font-size:14px;font-weight:800;color:#0D1B33;font-variant-numeric:tabular-nums}
.mktg-root .tr2-chdel{border:1px solid #ECE5D8;background:#fff;color:#C0392B;border-radius:8px;width:34px;height:34px;font-size:15px;cursor:pointer}
.mktg-root .tr2-empty{color:#8A8170;font-size:12.5px;text-align:center;padding:12px}
.mktg-root .tr2-soft{font-size:12px;color:#8A8170}
.mktg-root .tr2-addch{display:flex;gap:8px;flex-wrap:wrap;margin:4px 0 10px;align-items:center}
.mktg-root .tr2-addch select{flex:1;min-width:160px;padding:9px 11px;border-radius:9px;border:1px solid #ECE5D8;background:#fff;font-size:13px;font-family:inherit}
.mktg-root .tr2-addbtn{background:#fff;border:1px dashed #E1A146;color:#9C6A16;border-radius:9px;padding:9px 15px;font-size:13px;font-weight:700;cursor:pointer;white-space:nowrap}
.mktg-root .tr2-alloc{background:#fff;border:1px solid #ECE5D8;border-radius:12px;padding:13px;margin-bottom:11px}
.mktg-root .tr2-alloc h4{font-size:12px;font-weight:800;color:#0D1B33;margin-bottom:10px}
.mktg-root .tr2-allocrow .top{display:flex;justify-content:space-between;font-size:12.5px;margin-bottom:5px;flex-wrap:wrap;gap:4px}.mktg-root .tr2-allocrow .top .nm{font-weight:700;color:#26221B}
.mktg-root .tr2-allocrow .top .st{font-weight:700}.mktg-root .tr2-allocrow .top .st.ok{color:#2E7D5B}.mktg-root .tr2-allocrow .top .st.miss{color:#C0392B}
.mktg-root .tr2-abar{height:8px;background:#eee;border-radius:999px;overflow:hidden}.mktg-root .tr2-abar>i{display:block;height:100%}
/* ngân sách Ads */
.mktg-root .tr2-adsbox{background:#fff;border:1px solid #ECE5D8;border-left:4px solid #B9791C;border-radius:12px;padding:13px 15px;margin-top:6px}
.mktg-root .tr2-adsbox .ah{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-bottom:9px}
.mktg-root .tr2-adsbox .at{font-size:13.5px;font-weight:800;color:#0D1B33}.mktg-root .tr2-adsbox .who{font-size:11px;font-weight:700;color:#B9791C;background:#FBEFE0;border-radius:999px;padding:3px 10px}
.mktg-root .tr2-adsbox .arow{display:flex;gap:18px;flex-wrap:wrap;align-items:flex-end}
.mktg-root .tr2-adsbox .acol{display:flex;flex-direction:column;gap:3px}.mktg-root .tr2-adsbox .acol .l{font-size:10px;font-weight:700;color:#8A8170;text-transform:uppercase}.mktg-root .tr2-adsbox .acol .v{font-size:18px;font-weight:900;color:#0D1B33}
.mktg-root .tr2-adsnote{font-size:11px;color:#8A8170;margin-top:9px;line-height:1.5}.mktg-root .tr2-adsnote b{color:#9C6A16}
/* thực đạt 4A */
.mktg-root .tr2-kpigrid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
.mktg-root .tr2-kpicard{border:1px solid #ECE5D8;border-radius:12px;background:#fff;padding:13px}
.mktg-root .tr2-kpicard .kl{font-size:10.5px;font-weight:700;color:#8A8170;text-transform:uppercase}
.mktg-root .tr2-kpicard .kp{font-size:24px;font-weight:900;margin:3px 0 8px}
.mktg-root .tr2-kpicard .kr{font-size:11px;color:#8A8170;display:flex;justify-content:space-between;margin-bottom:3px}.mktg-root .tr2-kpicard .kr b{color:#0D1B33}
.mktg-root .tr2-kpibar{height:6px;background:#eee;border-radius:999px;overflow:hidden;margin:6px 0 4px}.mktg-root .tr2-kpibar>i{display:block;height:100%}
.mktg-root .tr2-kpicard .tr2-numbtn{width:100%;padding:8px 10px;font-size:13px;margin-top:4px}
.mktg-root .tr2-kpicard .kpinote{font-size:9.5px;color:#8A8170;margin-top:7px}
/* badge khớp/lệch */
.mktg-root .tr2-bdg{display:inline-block;font-size:10.5px;font-weight:700;border-radius:999px;padding:3px 9px;margin:2px 6px 2px 0}
.mktg-root .tr2-bdg.ok{background:#E8F3ED;color:#2E7D5B}.mktg-root .tr2-bdg.over{background:#EAF0F8;color:#2F5FA8}.mktg-root .tr2-bdg.miss{background:#FBE9E6;color:#C0392B}
/* màu % dùng chung (traffic + reach) */
.mktg-root .tr2-root .pc-ok,.mktg-root .ct2-root .pc-ok{color:#2E7D5B}
.mktg-root .tr2-root .pc-mid,.mktg-root .ct2-root .pc-mid{color:#B9791C}
.mktg-root .tr2-root .pc-low,.mktg-root .ct2-root .pc-low{color:#C0392B}

/* ════════ SUB-TAB "Reach đạt theo kênh" — prefix rk- ════════ */
.mktg-root .rk-hint{font-size:12px;color:#8A8170;background:#fff;border:1px solid #ECE5D8;border-radius:10px;padding:9px 12px;margin-bottom:12px;line-height:1.5}.mktg-root .rk-hint b{color:#9C6A16}
.mktg-root .rk-viewtog{display:inline-flex;background:#fff;border:1px solid #ECE5D8;border-radius:9px;padding:3px;margin-bottom:12px}
.mktg-root .rk-viewtog button{border:none;background:transparent;color:#8A8170;font-size:12.5px;font-weight:700;padding:7px 13px;border-radius:7px;cursor:pointer}.mktg-root .rk-viewtog button.active{background:#E1A146;color:#3a2708}
.mktg-root .rk-sum{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:#fff;border:1px solid #ECE5D8;border-left:4px solid #2F5FA8;border-radius:11px;padding:11px 14px;margin-bottom:6px}
.mktg-root .rk-sum .nums{display:flex;gap:16px;flex-wrap:wrap;font-size:12.5px;color:#8A8170}.mktg-root .rk-sum .nums b{color:#0D1B33;font-size:15px}
.mktg-root .rk-sum .pct{margin-left:auto;display:flex;align-items:center;gap:9px;min-width:200px;flex:1;justify-content:flex-end}
.mktg-root .rk-sum .pbar{flex:1;max-width:240px;height:8px;background:#eee;border-radius:999px;overflow:hidden}.mktg-root .rk-sum .pbar>i{display:block;height:100%}
.mktg-root .rk-sum .pl{font-size:14px;font-weight:900}
.mktg-root .rk-synced{font-size:11px;color:#2E7D5B;margin-bottom:13px;font-weight:600}.mktg-root .rk-synced b{color:#0D1B33}
.mktg-root .rk-card{border:1px solid #ECE5D8;border-radius:12px;background:#fff;padding:13px;margin-bottom:10px}
.mktg-root .rk-cardh{display:flex;align-items:center;gap:9px;margin-bottom:11px;flex-wrap:wrap}
.mktg-root .rk-chname{font-size:13.5px;font-weight:800;color:#0D1B33;flex:1;min-width:130px}
.mktg-root .rk-who{font-size:11px;color:#8A8170;font-weight:600}
.mktg-root .rk-src{font-size:10px;font-weight:700;border-radius:999px;padding:2px 9px}.mktg-root .rk-src.tay{background:#FBF1DC;color:#9C6A16}.mktg-root .rk-src.auto{background:#E8F3ED;color:#2E7D5B}
.mktg-root .rk-grid{display:grid;grid-template-columns:1fr 1fr auto;gap:11px;align-items:end}
.mktg-root .rk-nf{display:flex;flex-direction:column;gap:4px}.mktg-root .rk-nf>span{font-size:10px;font-weight:700;color:#8A8170;text-transform:uppercase}
.mktg-root .rk-readbox{background:#F1EEE8;border:1px solid #ECE5D8;border-radius:9px;padding:10px 11px;font-size:14px;font-weight:800;color:#0D1B33;text-align:right;font-variant-numeric:tabular-nums}
.mktg-root .rk-numbtn{text-align:right;background:#FEF9EE;border:1px solid #EDB96A;border-radius:9px;padding:10px 11px;font-size:14px;font-weight:800;color:#0D1B33;cursor:pointer;font-variant-numeric:tabular-nums;font-family:inherit;width:100%}.mktg-root .rk-numbtn:hover{background:#FBE8C7}
.mktg-root .rk-pctbox{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:74px}.mktg-root .rk-pctbox .pv{font-size:18px;font-weight:900}.mktg-root .rk-pctbox .pl{font-size:9px;color:#8A8170;text-transform:uppercase;font-weight:700}
.mktg-root .rk-bar{height:6px;background:#eee;border-radius:999px;overflow:hidden;margin-top:10px}.mktg-root .rk-bar>i{display:block;height:100%}
.mktg-root .rk-totline{display:flex;justify-content:space-between;flex-wrap:wrap;gap:6px;font-size:13px;font-weight:800;color:#0D1B33;background:#FEF9EE;border:1px solid #EDB96A;border-radius:11px;padding:11px 14px;margin-bottom:13px}
.mktg-root .rk-empty{text-align:center;color:#8A8170;font-size:12.5px;padding:16px}
.mktg-root .rk-connect{border:1px solid #ECE5D8;border-radius:12px;background:#fff;padding:14px;margin-top:6px}
.mktg-root .rk-connect h4{font-size:13px;font-weight:900;color:#0D1B33;margin-bottom:3px}
.mktg-root .rk-csub{font-size:11.5px;color:#8A8170;margin-bottom:12px;line-height:1.5}.mktg-root .rk-csub b{color:#9C6A16}
.mktg-root .rk-crow{display:flex;align-items:center;gap:11px;flex-wrap:wrap;padding:10px 0;border-bottom:1px dashed #ECE5D8}.mktg-root .rk-crow:last-child{border-bottom:none}
.mktg-root .rk-cname{flex:1;min-width:130px}.mktg-root .rk-cname .nm{font-size:13px;font-weight:800;color:#0D1B33}.mktg-root .rk-cname .api{font-size:10.5px;color:#8A8170}
.mktg-root .rk-cstat{font-size:10.5px;font-weight:700;border-radius:999px;padding:3px 10px}.mktg-root .rk-cstat.off{background:#F1EEE8;color:#8A8170}.mktg-root .rk-cstat.on{background:#E8F3ED;color:#2E7D5B}
.mktg-root .rk-cbtn{border:1px solid #E1A146;background:#fff;color:#9C6A16;border-radius:9px;padding:8px 14px;font-size:12.5px;font-weight:700;cursor:pointer}.mktg-root .rk-cbtn.on{background:#2E7D5B;color:#fff;border-color:#2E7D5B}
.mktg-root .rk-soft{font-size:11px;color:#8A8170}

/* ════════ MOBILE ════════ */
@media (max-width:860px){
  .mktg-root .tr2-mtstrip{grid-template-columns:1fr 1fr}
  .mktg-root .tr2-coststrip{grid-template-columns:1fr}
  .mktg-root .tr2-kpigrid{grid-template-columns:1fr 1fr}
  .mktg-root .tr2-funnel{max-width:100%}
  .mktg-root .tr2-fbar{min-width:0;width:100%!important}
  .mktg-root .rk-sum .pct{min-width:0;flex-basis:100%;justify-content:flex-start;margin-left:0}
  .mktg-root .rk-grid{grid-template-columns:1fr 1fr}
  .mktg-root .tr2-chrow .chreach{flex:1;min-width:120px}
}


/* ════════ Sub-tab "Số liệu kênh" (3 chỉ số/tuần) — bổ sung prefix rk- · bám mockup-marketing-soluieu-kenh.html ════════ */
.mktg-root .rk-sum{align-items:stretch}
.mktg-root .rk-sumcell{flex:1;min-width:120px}
.mktg-root .rk-sumcell .l{font-size:10px;font-weight:700;color:#8A8170;text-transform:uppercase}
.mktg-root .rk-sumcell .v{font-size:18px;font-weight:900;color:#0D1B33;margin-top:2px;font-variant-numeric:tabular-nums}
.mktg-root .rk-sumcell .s{font-size:9.5px;color:#8A8170}
.mktg-root .rk-modenote{font-size:11px;color:#9C6A16;font-weight:600;margin-left:8px}
.mktg-root .rk-m3grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:11px}
.mktg-root .rk-tagk{display:inline-block;font-size:8.5px;font-weight:700;color:#fff;border-radius:999px;padding:1px 6px;margin-left:5px;vertical-align:middle}
.mktg-root .rk-tagk.add{background:#2F5FA8}.mktg-root .rk-tagk.cum{background:#2C6E7A}
.mktg-root .rk-readbox.na{color:#8A8170;font-weight:600;font-size:12px}
.mktg-root .rk-notes2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.mktg-root .rk-notes2 textarea{border:1px solid #ECE5D8;border-radius:9px;padding:9px 11px;font-family:inherit;font-size:12.5px;color:#26221B;resize:vertical;min-height:54px;background:#fff;width:100%}
.mktg-root .rk-notes2 textarea:focus{outline:2px solid #E1A146;border-color:#E1A146}
.mktg-root .rk-notes2 textarea:disabled{background:#F8F6F2;color:#8A8170;cursor:not-allowed}
.mktg-root .rk-maprow{font-size:11px;color:#8A8170;background:#FEF9EE;border:1px solid #FBF1DC;border-radius:8px;padding:8px 11px;margin-bottom:11px;line-height:1.6}.mktg-root .rk-maprow b{color:#9C6A16}
/* mục 4 Traffic: 3 thẻ + ô đọc */
.mktg-root .tr2-kpigrid.tr2-kpi3{grid-template-columns:repeat(3,1fr)}
.mktg-root .tr2-mtable td.tr2-ro2{color:#0D1B33;font-weight:700;background:#FBFAF7}
@media (max-width:860px){
  .mktg-root .rk-notes2{grid-template-columns:1fr}
  .mktg-root .tr2-kpigrid.tr2-kpi3{grid-template-columns:1fr}
  .mktg-root .rk-sumcell{min-width:46%}
  .mktg-root .rk-modenote{display:block;margin:8px 0 0}
}

/* ============================================================
   VIDEO NỘI BỘ (Video Master) — redesign bám mockup (prefix vmx-)
   Scoped .mktg-root .vmx · màu literal brand · Roboto kế thừa · KHÔNG tím
   ============================================================ */
.mktg-root .vmx{color:#26221B}
.mktg-root .vmx-hbar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:9px}
.mktg-root .vmx-ttl{font-size:16px;font-weight:900;color:#0D1B33}
.mktg-root .vmx-ttl small{font-weight:500;color:#8A8170;font-size:11px;margin-left:8px}
.mktg-root .vmx-right{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.mktg-root .vmx-ownerchip{font-size:10.5px;font-weight:700;color:#9C6A16;background:#FBF1DC;border:1px solid #EDB96A;border-radius:999px;padding:4px 10px}
.mktg-root .vmx-msel{padding:6px 10px;border-radius:8px;border:1px solid #ECE5D8;background:#fff;font-size:12.5px;font-weight:700;color:#0D1B33;cursor:pointer}
/* statbar 1 dòng */
.mktg-root .vmx-statbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;background:#fff;border:1px solid #ECE5D8;border-radius:11px;padding:9px 13px;margin-bottom:9px}
.mktg-root .vmx-stat{display:inline-flex;align-items:center;gap:7px;font-size:12px;color:#8A8170;font-weight:600;padding:2px 4px}
.mktg-root .vmx-stat b{font-size:16px;font-weight:900;color:#0D1B33}
.mktg-root .vmx-d{width:9px;height:9px;border-radius:50%;flex:none}
.mktg-root .vmx-d.sd-all{background:#0D1B33}.mktg-root .vmx-d.sd-run{background:#B9791C}.mktg-root .vmx-d.sd-done{background:#2E7D5B}.mktg-root .vmx-d.sd-late{background:#C0392B}
.mktg-root .vmx-statsep{width:1px;height:22px;background:#ECE5D8}
.mktg-root .vmx-miniprog{display:flex;align-items:center;gap:8px;flex:1;min-width:130px}
.mktg-root .vmx-miniprog .vmx-bar{flex:1;max-width:200px;height:7px;background:#eee;border-radius:999px;overflow:hidden}
.mktg-root .vmx-miniprog .vmx-bar>i{display:block;height:100%;background:#2E7D5B}
.mktg-root .vmx-pl{font-size:12px;font-weight:900;color:#0D1B33}
.mktg-root .vmx-warnchip{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:700;color:#C0392B;background:#FBEDEB;border:1px solid #f0c9c4;border-radius:999px;padding:5px 11px}
/* lọc 1 dòng */
.mktg-root .vmx-filters{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:10px}
.mktg-root .vmx-fgroup{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.mktg-root .vmx-fgroup .vmx-lb{font-size:11px;font-weight:700;color:#8A8170}
.mktg-root .vmx-pill{border:1px solid #ECE5D8;background:#fff;border-radius:999px;padding:6px 13px;font-size:12px;font-weight:700;color:#26221B;cursor:pointer}
.mktg-root .vmx-pill.active{background:#0D1B33;color:#fff;border-color:#0D1B33}
/* bảng */
.mktg-root .vmx-tblscroll{overflow-x:auto;border:1px solid #ECE5D8;border-radius:12px;background:#fff}
.mktg-root .vmx-tbl{border-collapse:separate;border-spacing:0;font-size:12px;min-width:1640px;width:100%}
.mktg-root .vmx-tbl th,.mktg-root .vmx-tbl td{border-bottom:1px solid #ECE5D8;border-right:1px solid #ECE5D8;padding:7px 8px;text-align:left;vertical-align:middle}
.mktg-root .vmx-tbl th{background:#FBF1DC;color:#9C6A16;font-size:10.5px;font-weight:800;text-transform:uppercase;position:sticky;top:0;z-index:3;white-space:nowrap}
.mktg-root .vmx-tbl th:last-child,.mktg-root .vmx-tbl td:last-child{border-right:none}
.mktg-root .vmx-tbl tr:last-child td{border-bottom:none}
.mktg-root .vmx-vid{font-weight:800;color:#0D1B33;white-space:nowrap}
.mktg-root .vmx-tbl tr.tre td{background:#FCF2F0}
.mktg-root .vmx-cellsel{width:100%;min-width:104px;padding:6px 7px;border:1px solid #ECE5D8;border-radius:7px;background:#fff;font-size:12px;color:#26221B;cursor:pointer}
.mktg-root .vmx-cellsel.empty{border-color:#e6c9a8;background:#FEF9EE;color:#8A8170}
.mktg-root .vmx-cellsel:disabled{cursor:default;opacity:.85}
.mktg-root .vmx-cellin{width:100%;min-width:120px;padding:6px 8px;border:1px solid #ECE5D8;border-radius:7px;font-size:12px;background:#fff;color:#26221B}
.mktg-root .vmx-cellin:disabled{background:#FAF7F1;color:#7a7263}
.mktg-root .vmx-celldate{padding:6px 7px;border:1px solid #ECE5D8;border-radius:7px;font-size:12px;background:#fff;width:138px;color:#26221B}
.mktg-root .vmx-celldate.empty{border-color:#e6c9a8;background:#FEF9EE}
.mktg-root .vmx-multi{display:flex;flex-wrap:wrap;gap:4px;align-items:center;min-width:150px}
.mktg-root .vmx-pchip{display:inline-flex;align-items:center;gap:4px;background:#0D1B33;color:#fff;border-radius:999px;padding:2px 5px 2px 9px;font-size:10.5px;font-weight:700}
.mktg-root .vmx-pchip b{cursor:pointer;font-weight:900;font-size:12px;line-height:1}
.mktg-root .vmx-addp{border:1px dashed #ECE5D8;background:#fff;border-radius:7px;padding:4px 6px;font-size:11px;color:#8A8170;cursor:pointer}
.mktg-root .vmx-stsel{width:100%;min-width:118px;padding:6px 7px;border:none;border-radius:7px;font-size:11.5px;font-weight:800;cursor:pointer}
.mktg-root .vmx-stbadge{display:inline-block;min-width:104px;text-align:center;padding:5px 8px;border-radius:7px;font-size:11.5px;font-weight:800}
.mktg-root .vmx-ready{font-size:9px;font-weight:800;color:#2E7D5B;margin-top:3px}
.mktg-root .vmx-trebadge{display:inline-block;font-size:9px;font-weight:800;color:#fff;background:#C0392B;border-radius:999px;padding:1px 7px;margin-left:6px;vertical-align:middle}
.mktg-root .vmx-linkcell{display:flex;align-items:center;gap:5px}
.mktg-root .vmx-lkopen{flex:none;width:26px;height:26px;border-radius:7px;border:1px solid #ECE5D8;background:#fff;color:#2F5FA8;font-weight:800;cursor:pointer;display:flex;align-items:center;justify-content:center;text-decoration:none}
.mktg-root .vmx-lkopen.disabled{color:#c9c2b4;cursor:default}
.mktg-root .vmx-act{text-align:center}
.mktg-root .vmx-del{width:26px;height:26px;border-radius:7px;border:1px solid #f0c9c4;background:#FBEDEB;color:#C0392B;font-weight:900;cursor:pointer;line-height:1}
.mktg-root .vmx-addrow{display:flex;justify-content:center;padding:11px}
.mktg-root .vmx-addvid{background:#fff;border:1px dashed #E1A146;color:#9C6A16;border-radius:9px;padding:9px 18px;font-size:13px;font-weight:700;cursor:pointer}
.mktg-root .vmx-addvid:hover{background:#FEF9EE}
.mktg-root .vmx-pager{display:flex;align-items:center;gap:8px;justify-content:flex-end;margin-top:10px;min-height:1px}
.mktg-root .vmx-pgi{font-size:12px;color:#8A8170;margin-right:6px}
.mktg-root .vmx-pgb{border:1px solid #ECE5D8;background:#fff;border-radius:8px;padding:6px 12px;font-size:12px;font-weight:700;cursor:pointer}
.mktg-root .vmx-pgb:disabled{opacity:.45;cursor:default}
.mktg-root .vmx-foot{margin-top:12px;font-size:11.5px;color:#8A8170;background:#FEF9EE;border:1px solid #ECDCB6;border-radius:9px;padding:9px 12px}
.mktg-root .vmx-foot b{color:#9C6A16}
/* thẻ (mobile) */
.mktg-root .vmx-cards{display:none}
.mktg-root .vmx-vcard{border:1px solid #ECE5D8;border-radius:12px;background:#fff;padding:12px;margin-bottom:10px}
.mktg-root .vmx-vcard.tre{border-color:#e7b3ac;background:#FCF2F0}
.mktg-root .vmx-vch{display:flex;align-items:center;gap:8px;margin-bottom:10px;flex-wrap:wrap}
.mktg-root .vmx-vch .vmx-vid{font-size:13px}
.mktg-root .vmx-vcday{font-size:11px;color:#8A8170}
.mktg-root .vmx-vcrow{display:grid;grid-template-columns:108px 1fr;gap:8px;align-items:center;margin-bottom:8px}
.mktg-root .vmx-vcrow>.k{font-size:10.5px;font-weight:700;color:#8A8170;text-transform:uppercase}
.mktg-root .vmx-empty{color:#8A8170;font-size:13px;padding:14px;text-align:center}
@media(max-width:860px){
  .mktg-root .vmx-tblscroll{display:none}
  .mktg-root .vmx-cards{display:block}
  .mktg-root .vmx-statbar{gap:6px 10px}
  .mktg-root .vmx-miniprog{flex-basis:100%}
  .mktg-root .vmx-pager{justify-content:center}
}
.mktg-root .vmx-rodate{display:inline-block;font-size:12px;color:#26221B;padding:6px 4px}
.mktg-root .vmx-rodate.empty{color:#b8b0a0}
/* ── Video nội bộ (bản sửa 3 lỗi): ô Nội dung = nút mở modal · ngày = nút mở lịch VN · Link kịch bản ── */
.mktg-root .vmx-ndbtn{width:100%;min-width:158px;max-width:230px;text-align:left;border:1px solid #ECE5D8;background:#fff;border-radius:7px;padding:6px 9px;font-size:12px;color:#26221B;cursor:pointer;display:flex;align-items:center;gap:6px;font-family:inherit}
.mktg-root .vmx-ndbtn:hover{border-color:#E1A146}
.mktg-root .vmx-ndbtn.empty{border-color:#e6c9a8;background:#FEF9EE;color:#8A8170}
.mktg-root .vmx-ndbtn .pv{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.35;flex:1}
.mktg-root .vmx-ndbtn .ed{flex:none;color:#9C6A16;font-weight:800}
.mktg-root .vmx-datebtn{min-width:118px;text-align:left;padding:7px 9px;border:1px solid #ECE5D8;border-radius:7px;background:#fff;font-size:12px;color:#26221B;cursor:pointer;display:inline-flex;align-items:center;gap:6px;white-space:nowrap;font-family:inherit}
.mktg-root .vmx-datebtn:hover{border-color:#E1A146}
.mktg-root .vmx-datebtn.empty{border-color:#e6c9a8;background:#FEF9EE;color:#8A8170}
.mktg-root .vmx-datebtn::before{content:"📅";font-size:12px}
.mktg-root .vmx-lkopen{font-family:inherit}
.mktg-root .vmx-modal-ov{position:fixed;inset:0;background:rgba(13,27,51,.5);display:none;align-items:center;justify-content:center;z-index:100060;padding:14px}
.mktg-root .vmx-modal-ov.show{display:flex}
.mktg-root .vmx-ndbox{background:#fff;border-radius:18px;width:560px;max-width:97vw;max-height:92vh;display:flex;flex-direction:column;box-shadow:0 24px 60px rgba(13,27,51,.4)}
.mktg-root .vmx-ndhead{padding:15px 18px;border-bottom:1px solid #ECE5D8;display:flex;align-items:center;justify-content:space-between;gap:10px}
.mktg-root .vmx-ndhead .ttl{font-size:15px;font-weight:900;color:#0D1B33}
.mktg-root .vmx-ndhead .ttl small{font-size:12px;color:#8A8170;font-weight:600}
.mktg-root .vmx-ndhead .x{border:none;background:#F6F2EA;width:34px;height:34px;border-radius:50%;font-size:16px;cursor:pointer;color:#8A8170}
.mktg-root .vmx-ndbody{padding:16px 18px}
.mktg-root .vmx-ndbody label{font-size:11px;font-weight:800;color:#8A8170;text-transform:uppercase;display:block;margin-bottom:6px}
.mktg-root .vmx-ndbody textarea{width:100%;border:1px solid #ECE5D8;border-radius:11px;padding:13px 14px;font-size:14px;line-height:1.6;background:#fff;resize:vertical;min-height:220px;font-family:inherit;color:#26221B}
.mktg-root .vmx-ndbody textarea:focus{outline:2px solid #E1A146;border-color:#E1A146}
.mktg-root .vmx-ndfoot{padding:13px 18px;border-top:1px solid #ECE5D8;display:flex;justify-content:flex-end;gap:10px}
.mktg-root .vmx-ndbtn2{border:none;border-radius:11px;padding:11px 18px;font-size:13.5px;font-weight:800;cursor:pointer;font-family:inherit}
.mktg-root .vmx-ndbtn2.ghost{background:#f1ece2;color:#8A8170}
.mktg-root .vmx-ndbtn2.save{background:#9C6A16;color:#fff}
.mktg-root .vmx-calbox{background:#fff;border-radius:18px;padding:15px;width:312px;max-width:96vw;box-shadow:0 24px 60px rgba(13,27,51,.4)}
.mktg-root .vmx-calhead{display:flex;align-items:center;justify-content:space-between;margin-bottom:11px}
.mktg-root .vmx-calhead .ttl{font-size:14px;font-weight:900;color:#0D1B33}
.mktg-root .vmx-calhead button{border:none;background:#F6F2EA;width:32px;height:32px;border-radius:9px;font-size:14px;font-weight:800;color:#0D1B33;cursor:pointer}
.mktg-root .vmx-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}
.mktg-root .vmx-calwd{font-size:10px;font-weight:700;color:#8A8170;text-align:center;padding:4px 0}
.mktg-root .vmx-calday{padding:8px 0;text-align:center;border-radius:8px;cursor:pointer;font-size:12.5px;font-weight:600;color:#26221B}
.mktg-root .vmx-calday:hover{background:#FEF9EE}
.mktg-root .vmx-calday.sel{background:#0D1B33;color:#fff;font-weight:800}
.mktg-root .vmx-calday.today{border:1.5px solid #E1A146}
.mktg-root .vmx-cal-foot{display:flex;gap:9px;margin-top:12px}
.mktg-root .vmx-calf{flex:1;border:none;border-radius:10px;padding:11px;font-size:12.5px;font-weight:800;cursor:pointer;background:#9C6A16;color:#fff;font-family:inherit}
.mktg-root .vmx-calf.ghost{background:#f1ece2;color:#8A8170}
@media(max-width:860px){ .mktg-root .vmx-ndbtn{max-width:none} }

/* ── Ý tưởng: Link tham khảo + ảnh minh hoạ (form + thẻ + chi tiết) ── */
.yt-ov .yt-opt{font-weight:500;color:#b8ad97;font-style:normal}
.yt-ov .yt-qaimgs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}
.yt-ov .yt-qaimgs:empty{margin-bottom:0}
.yt-ov .yt-qaimg{position:relative;width:62px;height:62px;border-radius:9px;overflow:hidden;border:1px solid #ECE5D8}
.yt-ov .yt-qaimg img{width:100%;height:100%;object-fit:cover;display:block}
.yt-ov .yt-qaimg-rm{position:absolute;top:2px;right:2px;width:18px;height:18px;border-radius:50%;border:none;background:rgba(13,27,51,.78);color:#fff;font-size:12px;font-weight:900;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}
.yt-ov .yt-addimg{border:1px dashed #E1A146;background:#FEF9EE;color:#9C6A16;border-radius:9px;padding:8px 14px;font-size:12.5px;font-weight:700;cursor:pointer}
.yt-ov .yt-dlink{font-size:12.5px;margin-bottom:8px;word-break:break-all}
.yt-ov .yt-dlink .k{font-weight:700;color:#9C6A16}
.yt-ov .yt-dlink a{color:#2F5FA8}
.yt-ov .yt-dgal{display:flex;flex-wrap:wrap;gap:8px}
.yt-ov .yt-dimg{width:96px;height:96px;border-radius:10px;overflow:hidden;border:1px solid #ECE5D8;display:block}
.yt-ov .yt-dimg img{width:100%;height:100%;object-fit:cover;display:block}
/* thẻ kanban */
.mktg-root .yt-cmedia{display:flex;align-items:center;gap:7px;margin:7px 0 2px;cursor:pointer}
.mktg-root .yt-cthumb{position:relative;width:46px;height:46px;border-radius:8px;overflow:hidden;border:1px solid var(--line);flex:none}
.mktg-root .yt-cthumb img{width:100%;height:100%;object-fit:cover;display:block}
.mktg-root .yt-cmore{position:absolute;right:0;bottom:0;background:rgba(13,27,51,.72);color:#fff;font-size:9px;font-weight:800;font-style:normal;padding:1px 4px;border-top-left-radius:6px}
.mktg-root .yt-clink{font-size:10.5px;font-weight:700;color:#2F5FA8;background:#EAF0F8;border-radius:999px;padding:3px 9px}

/* ════════ QUẢN LÝ CÔNG VIỆC — 4 BỔ SUNG (29/06/2026): ① tiến độ rõ · ② chia sẻ · ③ ảnh · ④ thu gọn ════════ */
/* ① Dải tiến độ 2 màu */
.ct2-root .ct2-nums b.g{color:var(--green)} .ct2-root .ct2-nums b.b{color:var(--blue)}
.ct2-root .ct2-prog2{margin-top:8px}
.ct2-root .ct2-pbar2{height:10px;background:#eee;border-radius:999px;overflow:hidden;display:flex}
.ct2-root .ct2-pbar2 i{display:block;height:100%}
.ct2-root .ct2-pbar2 i.da{background:var(--green)} .ct2-root .ct2-pbar2 i.cd{background:var(--gold)}
.ct2-root .ct2-pinfo{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:6px}
.ct2-root .ct2-pmain{font-size:12.5px;font-weight:700;color:var(--navy)} .ct2-root .ct2-pmain b{color:var(--green)}
.ct2-root .ct2-premind{font-size:12px;font-weight:600;color:var(--gold-ink)} .ct2-root .ct2-premind b{color:var(--navy)}
/* ① A2: thanh tiến độ % to nằm giữa + đổi màu theo tiến độ (giữ Cách A) */
.ct2-root .ct2-progB{display:flex;align-items:center;gap:11px;flex-wrap:wrap;margin-left:auto}
.ct2-root .ct2-lead{font-size:11.5px;color:var(--soft);font-weight:600;white-space:nowrap}.ct2-root .ct2-lead b{font-weight:800;color:var(--navy)}
.ct2-root .ct2-bar2{position:relative;height:22px;width:210px;background:#EDE7DA;border-radius:999px;overflow:hidden;flex:none}
.ct2-root .ct2-bar2 .ct2-fillwrap{position:absolute;inset:0;display:flex}
.ct2-root .ct2-bar2 .ct2-fillwrap i{height:100%;transition:width .3s}
.ct2-root .ct2-bar2 .ct2-pctin{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:900}
@media(max-width:760px){
  .ct2-root .ct2-progB{margin-left:0;width:100%}
  .ct2-root .ct2-bar2{flex:1;width:auto}
}
/* ④ Thu gọn bộ lọc */
.ct2-root .ct2-ctrlbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:var(--navy);color:#fff;border-radius:11px;padding:9px 13px;margin-bottom:10px}
.ct2-root .ct2-cblbl{font-size:12px;font-weight:700;color:#fff}
.ct2-root .ct2-sumchips{display:flex;gap:6px;flex-wrap:wrap;flex:1;min-width:100px}
.ct2-root .ct2-sumchip{font-size:11px;font-weight:600;color:#e7dcc6;background:rgba(255,255,255,.10);border-radius:999px;padding:3px 10px;white-space:nowrap}
.ct2-root .ct2-tgall{border:none;border-radius:8px;padding:8px 13px;font-size:12px;font-weight:800;cursor:pointer;background:var(--gold);color:#3a2708;white-space:nowrap}
.ct2-root .ct2-restore{display:flex;align-items:center;gap:7px;flex-wrap:wrap;background:var(--gold-pale);border:1px solid var(--gold-cream);border-radius:10px;padding:8px 12px;margin-bottom:10px}
.ct2-root .ct2-rlbl{font-size:11.5px;font-weight:700;color:var(--gold-ink)}
.ct2-root .ct2-rchip{border:1px dashed var(--gold-light);background:#fff;border-radius:999px;padding:5px 11px;font-size:11.5px;font-weight:700;color:var(--gold-ink);cursor:pointer}
.ct2-root .ct2-rchip.all{border-style:solid;background:var(--gold-cream)}
.ct2-root .ct2-crow{position:relative;padding-right:30px}
.ct2-root .ct2-rowhide{position:absolute;top:0;right:0;width:24px;height:24px;border-radius:7px;border:1px solid var(--line);background:#fff;color:var(--soft);font-size:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:2}
.ct2-root .ct2-rowhide:hover{border-color:var(--red);color:var(--red)}
/* ② Chia sẻ bảng việc */
.ct2-root .ct2-sharebar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:#fff;border:1px solid var(--line);border-radius:11px;padding:10px 13px}
.ct2-root .ct2-vsel{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;color:var(--soft);font-weight:700}
.ct2-root .ct2-spx{flex:1}
.ct2-root .ct2-obtn{border:1px solid var(--gold-light);background:var(--gold-pale);color:var(--gold-ink);border-radius:9px;padding:8px 13px;font-size:12.5px;font-weight:800;cursor:pointer;white-space:nowrap}
.ct2-root .ct2-obtn.solid{background:var(--gold-ink);color:#fff;border-color:var(--gold-ink)}
.ct2-root .ct2-sharereq{display:flex;flex-direction:column;gap:8px}
.ct2-root .ct2-sharereq:not(:empty){margin-bottom:11px}
.ct2-root .ct2-reqcard{display:flex;align-items:center;gap:10px;background:var(--gold-pale);border:1px solid var(--gold-cream);border-radius:11px;padding:11px 13px;flex-wrap:wrap}
.ct2-root .ct2-reqcard .rt{font-size:12.5px;color:var(--navy);font-weight:700;flex:1;min-width:160px}
.ct2-root .ct2-reqcard .rt b{color:var(--gold-ink)}
.ct2-root .ct2-mini{border:none;border-radius:8px;padding:7px 13px;font-size:12px;font-weight:800;cursor:pointer}
.ct2-root .ct2-mini.ok{background:var(--green);color:#fff} .ct2-root .ct2-mini.no{background:#fff;color:var(--red);border:1px solid #e7b3ac}
.ct2-root .ct2-viewbanner{display:flex;align-items:center;gap:9px;background:#E9F0FA;border:1px solid #bcd3f0;border-radius:10px;padding:10px 13px;margin-bottom:11px;font-size:12.5px;color:var(--blue);font-weight:700;flex-wrap:wrap}
.ct2-root .ct2-viewbanner b{color:var(--navy)}
.ct2-root .ct2-bk{margin-left:auto;border:1px solid #bcd3f0;background:#fff;color:var(--blue);border-radius:8px;padding:6px 11px;font-size:12px;font-weight:700;cursor:pointer}
.ct2-root .ct2-sov{position:fixed;inset:0;background:rgba(13,27,51,.5);display:none;align-items:center;justify-content:center;padding:14px;z-index:10070}
.ct2-root .ct2-sov.show{display:flex}
.ct2-sbox{background:#fff;border-radius:18px;width:440px;max-width:96vw;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 24px 60px rgba(13,27,51,.4);font-family:'Roboto',sans-serif}
.ct2-sbox .ct2-sbhd{padding:15px 17px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}
.ct2-sbox .ct2-sbt{font-size:15px;font-weight:900;color:var(--navy)} .ct2-sbox .ct2-sbt small{display:block;font-size:11px;color:var(--soft);font-weight:500;margin-top:2px}
.ct2-sbox .ct2-sbx{border:none;background:var(--bg);width:32px;height:32px;border-radius:50%;font-size:15px;cursor:pointer;color:var(--soft)}
.ct2-sbox .ct2-sbbody{padding:14px 17px;overflow-y:auto}
.ct2-sbox .ct2-plabel{font-size:11px;font-weight:800;color:var(--soft);text-transform:uppercase;margin:4px 0 9px}
.ct2-sbox .ct2-prow{display:flex;align-items:center;gap:10px;padding:9px 10px;border:1px solid var(--line);border-radius:9px;margin-bottom:7px;cursor:pointer}
.ct2-sbox .ct2-prow:hover{border-color:var(--gold-light)}
.ct2-sbox .ct2-prow .nm{flex:1;font-size:13px;font-weight:700;color:var(--navy)}
.ct2-sbox .ct2-prow-empty{font-size:12.5px;color:var(--soft);padding:8px}
.ct2-sbox .ct2-pcheck{width:20px;height:20px;border-radius:5px;border:2px solid var(--line);flex:none;display:flex;align-items:center;justify-content:center;font-size:12px;color:#fff}
.ct2-sbox .ct2-pcheck.on{background:var(--green);border-color:var(--green)}
.ct2-sbox .ct2-askhint{color:var(--gold-ink);font-weight:800;font-size:12px}
.ct2-sbox .ct2-shared{margin-top:6px;padding-top:11px;border-top:1px dashed var(--line)}
.ct2-sbox .ct2-schip{display:inline-flex;align-items:center;gap:7px;background:var(--gold-cream);border:1px solid var(--gold-light);border-radius:999px;padding:5px 6px 5px 12px;font-size:12px;font-weight:700;color:var(--gold-ink);margin:0 6px 6px 0}
.ct2-sbox .ct2-schip b{cursor:pointer;color:var(--red);font-weight:900}
.ct2-sbox .ct2-muted{font-size:12px;color:var(--soft)}
.ct2-sbox .ct2-sbfoot{padding:13px 17px;border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:9px}
.ct2-sbox .ct2-sbtn{border:none;border-radius:10px;padding:11px 18px;font-size:13px;font-weight:800;cursor:pointer}
.ct2-sbox .ct2-sbtn.ghost{background:#f1ece2;color:var(--soft)} .ct2-sbox .ct2-sbtn.go{background:var(--gold-ink);color:#fff}
/* ③ Ảnh đính kèm */
.ct2-root .ct2-imgcnt{font-size:10.5px;font-weight:700;color:var(--gold-ink);background:var(--gold-pale);border:1px solid var(--gold-cream);border-radius:999px;padding:3px 9px;white-space:nowrap}
.ct2-root .ct2-imgfld>label{display:block;font-size:11px;font-weight:800;color:var(--soft);text-transform:uppercase;margin-bottom:7px}
.ct2-root .ct2-dropzone{border:2px dashed var(--gold-light);background:var(--gold-pale);border-radius:11px;padding:16px;text-align:center;cursor:pointer;margin-bottom:10px}
.ct2-root .ct2-dropzone.over{background:var(--gold-cream);border-color:var(--gold-ink)}
.ct2-root .ct2-dropzone.full{opacity:.55;cursor:not-allowed;border-style:solid}
.ct2-root .ct2-dropzone .big{font-size:12.5px;font-weight:800;color:var(--gold-ink)} .ct2-root .ct2-dropzone .sub{font-size:11px;color:var(--soft);margin-top:3px}
.ct2-root .ct2-imgnote{font-size:11.5px;color:var(--soft);background:var(--bg);border-radius:9px;padding:9px 11px;margin-bottom:8px}
.ct2-root .ct2-imgrow{display:flex;gap:10px;flex-wrap:wrap}
.ct2-root .ct2-thumb{position:relative;width:120px;height:90px;border-radius:10px;overflow:hidden;border:1px solid var(--line);cursor:pointer;background:#eee}
.ct2-root .ct2-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.ct2-root .ct2-thumb .rm{position:absolute;top:5px;right:5px;width:24px;height:24px;border-radius:50%;border:none;background:rgba(13,27,51,.78);color:#fff;font-size:13px;cursor:pointer;display:flex;align-items:center;justify-content:center}
.ct2-root .ct2-thumb .by{position:absolute;left:0;right:0;bottom:0;background:rgba(13,27,51,.62);color:#fff;font-size:10px;font-weight:700;padding:3px 7px}
.ct2-root .ct2-thumb.mine .by{background:rgba(46,125,91,.82)}
/* ⭐ kéo-thả đổi thứ tự ảnh */
.ct2-root .ct2-thumb.drag{cursor:grab}
.ct2-root .ct2-thumb.drag:active{cursor:grabbing}
.ct2-root .ct2-thumb.ct2-dragging{cursor:grabbing;opacity:.92;transform:scale(1.06);z-index:6;box-shadow:0 12px 26px rgba(13,27,51,.32);border-color:var(--gold);touch-action:none}
.ct2-root .ct2-thumb img{pointer-events:none;-webkit-user-drag:none;user-select:none}
.ct2-root .ct2-imgdraghint{font-size:11px;color:var(--soft);margin-top:8px;display:flex;align-items:center;gap:5px;font-weight:600}
.ct2-lb-ov{position:fixed;inset:0;background:rgba(13,27,51,.82);display:none;align-items:center;justify-content:center;z-index:10090;padding:20px}
.ct2-lb-ov.show{display:flex}
.ct2-lb-ov img{max-width:92vw;max-height:88vh;border-radius:12px;box-shadow:0 24px 60px rgba(0,0,0,.5)}
.ct2-lb-x{position:absolute;top:18px;right:20px;width:40px;height:40px;border-radius:50%;border:none;background:rgba(255,255,255,.16);color:#fff;font-size:20px;cursor:pointer;z-index:10091}
/* Mobile */
@media(max-width:680px){
  .ct2-root .ct2-ctrlbar{padding:8px 10px}
  .ct2-root .ct2-sharebar{padding:9px 10px}
  .ct2-root .ct2-spx{flex:1 0 100%;height:0}
  .ct2-root .ct2-obtn{flex:1;text-align:center}
  .ct2-root .ct2-vsel{width:100%}
  .ct2-root .ct2-thumb{width:46%;height:auto;aspect-ratio:4/3}
  .ct2-sbox{width:100%}
}

/* ════════ XEM TRƯỚC BÀI ĐĂNG theo từng mạng (29/06/2026) ════════ */
.ct2-root .ct2-imgsec{display:flex;align-items:center;gap:8px;justify-content:space-between;flex-wrap:wrap;font-size:11px;font-weight:800;color:var(--soft);text-transform:uppercase;margin-bottom:9px}
.ct2-root .ct2-pvbtn{border:1px solid var(--blue);background:#E9F0FA;color:var(--blue);border-radius:8px;padding:6px 12px;font-size:12px;font-weight:800;cursor:pointer;text-transform:none;letter-spacing:0;white-space:nowrap}
.ct2-root .ct2-thumb .ori{position:absolute;top:4px;left:4px;background:rgba(13,27,51,.66);color:#fff;font-size:8.5px;font-weight:700;border-radius:5px;padding:1px 6px;z-index:1}
/* khung xem trước (B: 820px) */
.ct2-pv-ov{position:fixed;inset:0;background:rgba(13,27,51,.55);display:none;align-items:center;justify-content:center;padding:18px;z-index:10085;font-family:'Roboto',sans-serif}
.ct2-pv-ov.show{display:flex}
.ct2-pvbox{background:#fff;border-radius:16px;width:min(820px,94vw);max-height:92vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 24px 60px rgba(13,27,51,.4)}
.ct2-pvhead{display:flex;align-items:center;gap:10px;padding:13px 16px;border-bottom:1px solid var(--line);flex-wrap:wrap}
.ct2-pvseg{display:inline-flex;gap:4px;background:var(--bg);border-radius:9px;padding:3px}
.ct2-pvseg button{border:none;background:transparent;color:var(--soft);font-size:12px;font-weight:700;padding:7px 12px;border-radius:7px;cursor:pointer;display:inline-flex;align-items:center;gap:5px}
.ct2-pvseg button.active{background:var(--navy);color:#fff}
.ct2-pvx{margin-left:auto;border:none;background:var(--bg);width:34px;height:34px;border-radius:50%;font-size:16px;cursor:pointer;color:var(--soft)}
.ct2-pvscroll{overflow-y:auto;padding:14px 16px}
.ct2-fbtop{display:flex;align-items:center;gap:10px;margin:0 auto 10px;max-width:540px}
.ct2-fbtop .fa{width:40px;height:40px;border-radius:50%;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:14px;flex:none}
.ct2-fbtop .nm{font-size:14px;font-weight:800;color:var(--navy)} .ct2-fbtop .sub{font-size:11px;color:var(--soft)}
.ct2-fbcap{font-size:14px;line-height:1.45;color:#050505;margin:0 auto 10px;max-width:540px;white-space:pre-wrap;word-break:break-word}
.ct2-capmore{background:none;border:none;color:#65676b;font-weight:700;font-size:14px;cursor:pointer;font-family:inherit;padding:0;white-space:nowrap}
.ct2-cap-empty{color:var(--soft)}
.ct2-pvhint{font-size:11.5px;color:var(--soft);margin-bottom:9px;background:var(--gold-pale);border:1px solid var(--gold-cream);border-radius:8px;padding:7px 11px}
.ct2-pvfoot{padding:11px 16px;font-size:12px;color:var(--soft);border-top:1px solid var(--line)}
.ct2-fbwrap{border-radius:12px;overflow:hidden;background:#fff}   /* ⭐ bo góc mép ngoài lưới FB + khe trắng mảnh 2px */
.ct2-gtile{background:var(--bg);position:relative;cursor:pointer;height:100%;overflow:hidden;border-radius:0}
.ct2-gtile img{width:100%;height:100%;object-fit:cover;display:block}
.ct2-gmore{position:absolute;inset:0;background:rgba(13,27,51,.6);display:flex;align-items:center;justify-content:center;color:#fff;font-size:26px;font-weight:800}
/* ⭐ Xem trước Facebook CHUẨN (bám mockup-marketing-xemtruoc-facebook-chuan.html) */
.ct2-fbcard{max-width:540px;margin:0 auto}
.ct2-alb{width:100%;display:grid;gap:2px;background:#e4e6eb;border-radius:10px;overflow:hidden}
.ct2-alb.g1{grid-template-columns:1fr}
.ct2-alb.g1 .ct2-atile{aspect-ratio:auto}
.ct2-alb.g1 .ct2-atile img{position:relative;width:100%;height:auto;max-height:70vh;object-fit:contain}
.ct2-alb.g2{aspect-ratio:2/1;grid-template-columns:1fr 1fr}
.ct2-alb.g3{aspect-ratio:1/1;grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr}
.ct2-alb.g3 .t0{grid-row:1 / span 2}
.ct2-alb.g4{aspect-ratio:1/1;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}
.ct2-alb.g5{aspect-ratio:1/1;grid-template-columns:repeat(6,1fr);grid-template-rows:1.12fr 0.88fr}
.ct2-alb.g5 .t0{grid-column:1 / span 3;grid-row:1}
.ct2-alb.g5 .t1{grid-column:4 / span 3;grid-row:1}
.ct2-alb.g5 .t2{grid-column:1 / span 2;grid-row:2}
.ct2-alb.g5 .t3{grid-column:3 / span 2;grid-row:2}
.ct2-alb.g5 .t4{grid-column:5 / span 2;grid-row:2}
.ct2-atile{position:relative;overflow:hidden;cursor:pointer;background:var(--bg,#F6F2EA)}
.ct2-atile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.ct2-aov{position:absolute;inset:0;background:rgba(15,20,35,.5);color:#fff;display:flex;align-items:center;justify-content:center;font-size:30px;font-weight:800}
/* Lưới VUÔNG cho Kiểu A (2 trên + 3 dưới) / Kiểu B (2×2) — ô ảnh 1:1, ảnh phủ đầy (cover) */
.ct2-alb.sq{display:flex;flex-direction:column;gap:2px;aspect-ratio:auto;grid-template-columns:none}
.ct2-alb.sq .ct2-arow{display:grid;gap:2px}
.ct2-alb.sq .ct2-arow.r2{grid-template-columns:1fr 1fr}
.ct2-alb.sq .ct2-arow.r3{grid-template-columns:1fr 1fr 1fr}
.ct2-alb.sq .ct2-atile{aspect-ratio:1/1}
/* Nút chuyển Kiểu hiển thị lưới ngay trên khung xem trước */
.ct2-gridtog{display:flex;align-items:center;justify-content:center;gap:6px;flex-wrap:wrap;padding:12px 8px 2px;margin-top:4px;border-top:1px solid var(--line,#E7DFCF)}
.ct2-gridtog .lbl{font-size:11px;font-weight:800;color:var(--soft,#8A8170);text-transform:uppercase;letter-spacing:.03em;margin-right:2px}
.ct2-gridtog button{border:1px solid var(--line,#E7DFCF);background:#fff;color:var(--navy,#0D1B33);border-radius:8px;padding:6px 12px;font-size:12px;font-weight:700;cursor:pointer;font-family:inherit}
.ct2-gridtog button.on{background:var(--navy,#0D1B33);color:#fff;border-color:var(--navy,#0D1B33)}
/* số cảm xúc + thanh Thích / Bình luận / Chia sẻ */
.ct2-fbreact{display:flex;align-items:center;gap:7px;padding:10px 2px 8px;font-size:13px;color:#65676b}
.ct2-likepill{width:18px;height:18px;border-radius:50%;background:#1877F2;display:inline-flex;align-items:center;justify-content:center;flex:none}
.ct2-likepill svg{width:11px;height:11px;fill:#fff}
.ct2-fbrn{font-size:12.5px;color:#8A8170}
.ct2-fbbar{display:flex;border-top:1px solid #e4e6eb;padding:2px 0;margin-top:2px}
.ct2-fbbar button{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;background:none;border:none;padding:9px 0;font-size:14px;font-weight:600;color:#65676b;cursor:pointer;font-family:inherit;border-radius:6px}
.ct2-fbbar button:hover{background:#f2f2f2}
.ct2-fbbar svg{width:18px;height:18px}
@media(max-width:560px){ .ct2-fbbar button{font-size:13px;gap:5px} }
/* instagram */
.ct2-igwrap{position:relative;max-width:480px;margin:0 auto}
.ct2-igframe{width:100%;aspect-ratio:1/1;background:#111;overflow:hidden;border-radius:6px;cursor:pointer}
.ct2-igframe img{width:100%;height:100%;object-fit:cover;display:block}
.ct2-igarw{position:absolute;top:50%;transform:translateY(-50%);width:34px;height:34px;border-radius:50%;border:none;background:rgba(255,255,255,.92);color:var(--navy);font-size:18px;font-weight:800;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px rgba(0,0,0,.2)}
.ct2-igarw.l{left:8px} .ct2-igarw.r{right:8px}
.ct2-igcount{position:absolute;top:10px;right:10px;background:rgba(13,27,51,.7);color:#fff;font-size:11px;font-weight:700;border-radius:999px;padding:3px 10px}
.ct2-igdots{display:flex;gap:6px;justify-content:center;margin-top:10px}
.ct2-igdot{width:7px;height:7px;border-radius:50%;background:#cfc6b5} .ct2-igdot.on{background:var(--blue)}
/* threads */
.ct2-throw{display:flex;gap:7px;overflow-x:auto;padding-bottom:6px;-webkit-overflow-scrolling:touch}
.ct2-thtile{flex:0 0 auto;height:300px;border-radius:12px;overflow:hidden;cursor:pointer;border:1px solid var(--line);background:#eee}
.ct2-thtile img{height:300px;width:auto;display:block;max-width:none}
.ct2-thone{border-radius:12px;overflow:hidden;cursor:pointer;max-height:380px}
.ct2-thone img{width:100%;max-height:380px;object-fit:cover;display:block}
/* video / web */
.ct2-vidframe{margin:0 auto;background:#111;border-radius:12px;overflow:hidden;position:relative;cursor:pointer}
.ct2-vidframe img{width:100%;height:100%;object-fit:cover;display:block;opacity:.85}
.ct2-vidplay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#fff;font-size:44px}
.ct2-webcol{display:flex;flex-direction:column;gap:8px}
.ct2-webcol .ct2-wtile{border-radius:10px;overflow:hidden;cursor:pointer;border:1px solid var(--line)}
.ct2-webcol .ct2-wtile img{width:100%;display:block}
/* lightbox ‹ › */
.ct2-lb-nav{position:absolute;top:50%;transform:translateY(-50%);width:50px;height:50px;border-radius:50%;border:none;background:rgba(255,255,255,.18);color:#fff;font-size:26px;font-weight:800;cursor:pointer;align-items:center;justify-content:center;display:none}
.ct2-lb-nav.l{left:18px} .ct2-lb-nav.r{right:18px}
.ct2-lb-count{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);background:rgba(0,0,0,.5);color:#fff;font-size:13px;font-weight:700;border-radius:999px;padding:6px 14px}
@media(max-width:680px){
  .ct2-pv-ov{padding:8px}
  .ct2-pvbox{width:100%;max-height:96vh}
  .ct2-igwrap{max-width:none}
  .ct2-lb-nav{width:42px;height:42px;font-size:22px} .ct2-lb-nav.l{left:6px} .ct2-lb-nav.r{right:6px}
}

/* ===== Plan thang — phan bo dinh dang + tong hop san xuat (ct2pp-) ===== */
.mktg-root .ct2pp-prodbox{background:linear-gradient(180deg,#fff,#FFFDF8);border:1px solid var(--gold-light,#EDB96A);border-radius:13px;padding:13px 15px;margin:0 0 13px}
.mktg-root .ct2pp-prodhd{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:11px}
.mktg-root .ct2pp-prodhd .tt{font-size:13.5px;font-weight:900;color:var(--navy,#0D1B33);display:flex;align-items:center;gap:7px}
.mktg-root .ct2pp-lnk{border:1px solid var(--gold-light,#EDB96A);background:var(--gold-pale,#FEF9EE);color:var(--gold-ink,#9C6A16);border-radius:8px;padding:6px 12px;font-size:12px;font-weight:800;cursor:pointer}
.mktg-root .ct2pp-ppills{display:flex;gap:9px;flex-wrap:wrap}
.mktg-root .ct2pp-ppill{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--line,#ECE5D8);border-radius:999px;padding:7px 14px;font-size:12.5px;font-weight:700;color:var(--text,#26221B)}
.mktg-root .ct2pp-ppill .ic{font-size:15px}
.mktg-root .ct2pp-ppill .n{font-weight:900;font-size:15px;color:var(--navy,#0D1B33)}
.mktg-root .ct2pp-ppill .dot{width:8px;height:8px;border-radius:50%;flex:none}
.mktg-root .ct2pp-ppill.tong{background:var(--navy,#0D1B33);color:#fff;border-color:var(--navy,#0D1B33)}
.mktg-root .ct2pp-ppill.tong .n{color:#fff}
.mktg-root .ct2pp-ptable{margin-top:11px;border:1px solid var(--line,#ECE5D8);border-radius:11px;overflow:auto}
.mktg-root .ct2pp-ptable table{width:100%;border-collapse:collapse;font-size:12px;min-width:420px}
.mktg-root .ct2pp-ptable th,.mktg-root .ct2pp-ptable td{padding:8px 10px;text-align:center;border-bottom:1px solid var(--line,#ECE5D8)}
.mktg-root .ct2pp-ptable th{background:var(--gold-pale,#FEF9EE);color:var(--navy,#0D1B33);font-weight:800;font-size:11px;text-transform:uppercase}
.mktg-root .ct2pp-ptable td:first-child,.mktg-root .ct2pp-ptable th:first-child{text-align:left;font-weight:700;color:var(--navy,#0D1B33)}
.mktg-root .ct2pp-ptable tr:last-child td{border-bottom:none}
.mktg-root .ct2pp-ptable td.zero{color:#cdc6b8}
.mktg-root .ct2-tbsug{border:1px solid rgba(255,255,255,.55);background:rgba(0,0,0,.16);color:#fff;border-radius:8px;padding:7px 11px;font-size:11.5px;font-weight:800;cursor:pointer;white-space:nowrap;margin-right:6px}
.mktg-root .ct2pp-tgt{cursor:pointer;text-decoration:underline dotted;text-underline-offset:2px;font-weight:900}
.mktg-root .ct2pp-colhd{display:grid;grid-template-columns:minmax(160px,1.8fr) 230px 124px 80px 102px 56px 116px 30px minmax(0,1fr);gap:8px;padding:2px 2px 7px;font-size:9.5px;font-weight:800;color:var(--soft,#8A8170);text-transform:uppercase;letter-spacing:.03em}
.mktg-root .ct2pp-row{display:grid;grid-template-columns:minmax(160px,1.8fr) 230px 124px 80px 102px 56px 116px 30px minmax(0,1fr);gap:8px;align-items:center;padding:7px 2px;border-top:1px dashed var(--line,#ECE5D8)}
.mktg-root .ct2pp-c label{display:none}
.mktg-root .ct2pp-in,.mktg-root .ct2pp-sel{width:100%;padding:8px 9px;border:1px solid var(--line,#ECE5D8);border-radius:8px;font-size:12px;background:#fff;color:var(--text,#26221B)}
.mktg-root .ct2pp-ro{font-size:12.5px;color:var(--text,#26221B)}
.mktg-root .ct2pp-ro.num{font-weight:800;color:var(--navy,#0D1B33);text-align:center}
.mktg-root .ct2pp-ddtag{font-size:11px;font-weight:700;border-radius:6px;padding:2px 7px;display:inline-block}
.mktg-root .ct2pp-wk{text-align:center;font-weight:800;color:var(--navy,#0D1B33);background:var(--bg,#F6F2EA);border-radius:8px;padding:8px 0;font-size:12.5px}
.mktg-root .ct2pp-step{display:inline-flex;align-items:center;border:1px solid var(--line,#ECE5D8);border-radius:8px;overflow:hidden;background:#fff;width:100%}
.mktg-root .ct2pp-step button{border:none;background:#fff;color:var(--navy,#0D1B33);width:32px;height:34px;font-size:16px;font-weight:800;cursor:pointer;flex:none}
.mktg-root .ct2pp-step button:hover{background:var(--gold-cream,#FBF1DC)}
.mktg-root .ct2pp-step .val{flex:1;min-width:28px;text-align:center;font-size:13px;font-weight:900;color:var(--navy,#0D1B33)}
.mktg-root .ct2pp-delx{border:1px solid var(--line,#ECE5D8);background:#fff;color:var(--soft,#8A8170);width:30px;height:34px;border-radius:8px;font-size:13px;cursor:pointer}
.mktg-root .ct2pp-delx:hover{border-color:var(--red,#C0392B);color:var(--red,#C0392B)}
/* ⭐ Plan — thanh hành động lập kế hoạch nhanh (Sao chép / Khung chuẩn / Chỉnh chỉ tiêu %) */
.mktg-root .ct2pp-actbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;background:#fff;border:1px solid var(--line,#ECE5D8);border-radius:12px;padding:10px 12px;margin:0 0 12px}
.mktg-root .ct2pp-mlbl{font-size:12.5px;font-weight:800;color:var(--navy,#0D1B33);background:var(--gold-pale,#FEF9EE);border:1px solid var(--gold-cream,#FBF1DC);border-radius:8px;padding:6px 11px}
.mktg-root .ct2pp-actbtn{border:1px solid var(--line,#ECE5D8);background:#fff;color:var(--navy,#0D1B33);border-radius:9px;padding:8px 13px;font-size:12.5px;font-weight:700;cursor:pointer;font-family:inherit;white-space:nowrap}
.mktg-root .ct2pp-actbtn:hover{border-color:var(--gold-light,#EDB96A);background:var(--gold-pale,#FEF9EE)}
.mktg-root .ct2pp-actbtn.navy{background:var(--navy,#0D1B33);color:#fff;border-color:var(--navy,#0D1B33)}
.mktg-root .ct2pp-actbtn.navy:hover{background:#0A1628}
.mktg-root .ct2pp-actspacer{flex:1 1 auto}
.mktg-root .ct2pp-pct{display:inline-flex;align-items:center;gap:5px;font-size:12.5px;font-weight:700;color:var(--text,#26221B)}
.mktg-root .ct2pp-pct input{width:56px;border:1px solid var(--line,#ECE5D8);border-radius:7px;padding:6px 8px;font-size:12.5px;font-weight:800;color:var(--navy,#0D1B33);text-align:center;font-family:inherit}
.mktg-root .ct2pp-autobox{background:var(--gold-pale,#FEF9EE);border:1px solid var(--gold-light,#EDB96A);border-radius:11px;padding:10px 14px;margin:0 0 12px;font-size:12.5px;color:#8A5E16;line-height:1.9}
.mktg-root .ct2pp-autobox b{color:var(--navy,#0D1B33)} .mktg-root .ct2pp-autobox small{color:var(--soft,#8A8170);font-weight:600}
/* popover Sao chép + danh sách Khung chuẩn (dùng lại modal .ct2-sov) */
.mktg-root .ct2pp-cprow{font-size:13px;font-weight:600;color:var(--navy,#0D1B33);margin-bottom:10px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.mktg-root .ct2pp-cprow select{flex:1;min-width:180px}
.mktg-root .ct2pp-ck{display:flex;align-items:center;gap:9px;font-size:13px;color:var(--text,#26221B);padding:8px 0;cursor:pointer}
.mktg-root .ct2pp-ck input{width:17px;height:17px;accent-color:var(--gold,#E1A146);cursor:pointer}
.mktg-root .ct2pp-krow{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--line,#ECE5D8);border-radius:10px;padding:11px 13px;margin-bottom:8px}
.mktg-root .ct2pp-kmeta b{display:block;font-size:13.5px;color:var(--navy,#0D1B33)} .mktg-root .ct2pp-kmeta span{font-size:11.5px;color:var(--soft,#8A8170)}
.mktg-root .ct2pp-kact{display:flex;gap:7px;flex-shrink:0}
.mktg-root .ct2pp-kempty{text-align:center;color:var(--soft,#8A8170);font-size:12.5px;padding:22px 10px;line-height:1.7}
@media(max-width:860px){
  .mktg-root .ct2pp-actbar{gap:7px;padding:9px 10px}
  .mktg-root .ct2pp-actbtn{flex:1 1 auto;text-align:center;justify-content:center}
  .mktg-root .ct2pp-mlbl{width:100%;text-align:center}
  .mktg-root .ct2pp-actspacer{display:none}
  .mktg-root .ct2pp-pct{width:100%;justify-content:center;margin-top:2px}
}
@media(max-width:860px){
  .mktg-root .ct2pp-colhd{display:none}
  .mktg-root .ct2pp-row{display:block;border:1px solid var(--line,#ECE5D8);border-radius:11px;padding:11px;margin-top:9px;background:#fff}
  .mktg-root .ct2pp-c{margin-bottom:8px}
  .mktg-root .ct2pp-c.delc{margin-bottom:0}
  .mktg-root .ct2pp-c label{display:block;font-size:9.5px;font-weight:800;color:var(--soft,#8A8170);text-transform:uppercase;margin-bottom:3px}
  .mktg-root .ct2pp-delx{width:100%;height:40px}
  .mktg-root .ct2pp-step button{height:42px}
  .mktg-root .ct2-tbhead{flex-wrap:wrap}
  .mktg-root .ct2-tbright{flex-wrap:wrap;gap:6px}
  .mktg-root .ct2-tbsug,.mktg-root .ct2-tbadd{flex:1;margin-right:0}
}

/* ===== Dung luong anh (linh hoat) — dla- ===== */
.mktg-root .dla-totrow{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin:13px 0}
.mktg-root .dla-totc{border:1px solid var(--line,#ECE5D8);border-radius:12px;padding:13px 15px;background:var(--gold-pale,#FEF9EE)}
.mktg-root .dla-totc .k{font-size:10px;font-weight:800;color:var(--soft,#8A8170);text-transform:uppercase}
.mktg-root .dla-totc .v{font-size:25px;font-weight:900;color:var(--navy,#0D1B33);margin-top:3px;font-family:Roboto,sans-serif}.mktg-root .dla-totc .v small{font-size:13px;color:var(--soft,#8A8170);font-weight:700}
.mktg-root .dla-block{border:1px solid var(--line,#ECE5D8);border-radius:12px;padding:13px 15px;margin-bottom:13px}
.mktg-root .dla-blkh{font-size:12px;font-weight:800;color:var(--navy,#0D1B33);text-transform:uppercase;letter-spacing:.03em;margin-bottom:11px}
.mktg-root .dla-cfgrow{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.mktg-root .dla-cfglb{font-size:12.5px;color:var(--text,#26221B);font-weight:600}
.mktg-root .dla-mchip{border:1px solid var(--line,#ECE5D8);background:#fff;border-radius:999px;padding:7px 13px;font-size:12px;font-weight:800;color:var(--soft,#8A8170);cursor:pointer}
.mktg-root .dla-mchip.on{background:var(--gold-ink,#9C6A16);color:#fff;border-color:var(--gold-ink,#9C6A16)}
.mktg-root .dla-mnum{width:64px;padding:7px 9px;border:1px solid var(--line,#ECE5D8);border-radius:9px;font-size:12.5px;text-align:center;background:#fff;color:var(--text,#26221B)}
.mktg-root .dla-sw{position:relative;display:inline-flex;align-items:center;gap:9px;cursor:pointer;font-size:12.5px;font-weight:700;color:var(--navy,#0D1B33)}
.mktg-root .dla-sw .track{width:42px;height:24px;border-radius:999px;background:#cfc6b5;position:relative;transition:.2s;flex:none}
.mktg-root .dla-sw .knob{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:.2s}
.mktg-root .dla-sw.on .track{background:var(--green,#2E7D5B)}.mktg-root .dla-sw.on .knob{left:21px}
.mktg-root .dla-savebtn{border:1px solid var(--gold-light,#EDB96A);background:var(--gold-pale,#FEF9EE);color:var(--gold-ink,#9C6A16);border-radius:9px;padding:8px 14px;font-size:12px;font-weight:800;cursor:pointer}
.mktg-root .dla-filters{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end}
.mktg-root .dla-fg{display:flex;flex-direction:column;gap:5px}.mktg-root .dla-fg .lb{font-size:9.5px;font-weight:800;color:var(--soft,#8A8170);text-transform:uppercase}
.mktg-root .dla-fsel,.mktg-root .dla-fdate{padding:8px 10px;border:1px solid var(--line,#ECE5D8);border-radius:9px;font-size:12.5px;background:#fff;color:var(--text,#26221B)}
.mktg-root .dla-ftab{display:inline-flex;background:var(--bg,#F6F2EA);border-radius:9px;padding:3px}
.mktg-root .dla-ftab button{border:none;background:transparent;color:var(--soft,#8A8170);font-size:12px;font-weight:700;padding:7px 12px;border-radius:7px;cursor:pointer}.mktg-root .dla-ftab button.on{background:var(--navy,#0D1B33);color:#fff}
.mktg-root .dla-tbwrap{overflow-x:auto}
.mktg-root table.dla-tb{width:100%;border-collapse:collapse;font-size:12px;margin-top:11px;min-width:680px}
.mktg-root .dla-tb th,.mktg-root .dla-tb td{padding:9px 10px;border-bottom:1px solid var(--line,#ECE5D8);text-align:left}
.mktg-root .dla-tb th{font-size:10px;font-weight:800;color:var(--soft,#8A8170);text-transform:uppercase;background:var(--gold-pale,#FEF9EE)}
.mktg-root .dla-tb th.r,.mktg-root .dla-tb td.r{text-align:right}.mktg-root .dla-tb th.c,.mktg-root .dla-tb td.c{text-align:center}
.mktg-root .dla-tb tr:hover td{background:#FCFAF6}
.mktg-root .dla-ck{width:18px;height:18px;border-radius:5px;border:2px solid var(--line,#ECE5D8);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-size:11px;color:#fff}.mktg-root .dla-ck.on{background:var(--green,#2E7D5B);border-color:var(--green,#2E7D5B)}
.mktg-root .dla-vname{font-weight:700;color:var(--navy,#0D1B33);cursor:pointer}.mktg-root .dla-vname:hover{text-decoration:underline}
.mktg-root .dla-thp{font-size:10.5px;font-weight:700;border-radius:999px;padding:2px 9px;background:var(--bg,#F6F2EA);border:1px solid var(--line,#ECE5D8);color:var(--text,#26221B)}
.mktg-root .dla-mbcell{font-weight:900;color:var(--navy,#0D1B33)}
.mktg-root .dla-ttp{font-size:10.5px;font-weight:800;border-radius:999px;padding:3px 9px}
.mktg-root .dla-ttp.dd{background:#EAF3EE;color:var(--green,#2E7D5B)}.mktg-root .dla-ttp.dl{background:#E9F0FA;color:var(--blue,#2F5FA8)}
.mktg-root .dla-thumbs{display:flex;gap:7px;flex-wrap:wrap;padding:8px 0 2px}.mktg-root .dla-thumbs img{width:60px;height:46px;object-fit:cover;border-radius:7px;border:1px solid var(--line,#ECE5D8)}
.mktg-root .dla-thumbph{width:60px;height:46px;border-radius:7px;border:1px dashed var(--line,#ECE5D8);display:inline-flex;align-items:center;justify-content:center;color:var(--soft,#8A8170)}
.mktg-root .dla-empty{font-size:12.5px;color:var(--soft,#8A8170);font-style:italic;padding:14px 2px}
.mktg-root .dla-pager{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:12px}
.mktg-root .dla-pginfo{font-size:11.5px;color:var(--soft,#8A8170);font-weight:600}
.mktg-root .dla-pgb{border:1px solid var(--line,#ECE5D8);background:#fff;color:var(--navy,#0D1B33);border-radius:8px;padding:7px 12px;font-size:12px;font-weight:700;cursor:pointer}.mktg-root .dla-pgb:hover{background:var(--gold-cream,#FBF1DC)}.mktg-root .dla-pgb.on{background:var(--navy,#0D1B33);color:#fff;border-color:var(--navy,#0D1B33)}
.mktg-root .dla-actbar{position:sticky;bottom:0;display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:var(--navy,#0D1B33);color:#fff;border-radius:11px;padding:11px 15px;margin-top:13px;z-index:5}
.mktg-root .dla-actbar .info{font-size:12.5px;font-weight:700}.mktg-root .dla-actbar .info b{color:var(--gold,#E1A146)}
.mktg-root .dla-delbtn{background:var(--red,#C0392B);color:#fff;border:none;border-radius:9px;padding:9px 15px;font-size:12.5px;font-weight:800;cursor:pointer}
.mktg-root .dla-clearbtn{border:1px solid rgba(255,255,255,.3);background:transparent;color:#cfc6b5;border-radius:9px;padding:8px 13px;font-size:12px;font-weight:700;cursor:pointer}
.mktg-root .dla-reload{border:1px solid var(--line,#ECE5D8);background:#fff;color:var(--soft,#8A8170);border-radius:9px;padding:8px 13px;font-size:12px;font-weight:700;cursor:pointer;margin-top:11px}
.mktg-root .dla-mob{display:none}
.mktg-root .dla-mcard{border:1px solid var(--line,#ECE5D8);border-radius:11px;padding:11px;margin-bottom:8px}
.mktg-root .dla-mcard .top{display:flex;align-items:center;gap:9px;margin-bottom:7px}.mktg-root .dla-mcard .top .dla-vname{flex:1}
.mktg-root .dla-mcard .mrow{display:flex;justify-content:space-between;font-size:11.5px;color:var(--soft,#8A8170);margin-bottom:3px}.mktg-root .dla-mcard .mrow b{color:var(--navy,#0D1B33)}
.dla-cf-ov{position:fixed;inset:0;background:rgba(13,27,51,.5);display:none;align-items:center;justify-content:center;padding:16px;z-index:10090}.dla-cf-ov.show{display:flex}
.dla-cf-box{background:#fff;border-radius:16px;width:420px;max-width:96vw;padding:18px;font-family:Roboto,sans-serif}.dla-cf-box h3{font-size:15px;font-weight:900;color:#0D1B33;margin-bottom:7px}.dla-cf-box p{font-size:13px;color:#26221B;margin-bottom:5px}.dla-cf-box .warn{font-size:12px;color:#C0392B;font-weight:700;margin:8px 0 14px}
.dla-cf-box .foot{display:flex;justify-content:flex-end;gap:9px}.dla-mbtn{border:none;border-radius:10px;padding:10px 17px;font-size:13px;font-weight:800;cursor:pointer}.dla-mbtn.ghost{background:#f1ece2;color:#8A8170}.dla-mbtn.del{background:#C0392B;color:#fff}
@media(max-width:760px){
  .mktg-root .dla-desk{display:none}
  .mktg-root .dla-mob{display:block}
  .mktg-root .dla-filters{flex-direction:column;align-items:stretch}
  .mktg-root .dla-fg{width:100%}.mktg-root .dla-fsel,.mktg-root .dla-fdate{width:100%}
  .mktg-root .dla-ck{width:24px;height:24px}
}

/* UGC — dòng "cập nhật bởi" trên mỗi dòng (chống giẫm chân khi cả phòng cùng sửa) */
.mktg-root .uv-updby{font-size:10px;color:var(--soft,#8A8170);font-weight:600;margin-top:2px;white-space:nowrap;font-style:italic}

/* ============================================================
   TAB "VIỆC CỦA TÔI" (mv-) — gom việc Marketing theo người + vai trò
   ============================================================ */
/* ── Tab A: board 4 cột theo HẠN (Trễ hạn/Hôm nay/Tuần này/Sắp tới) ── */
.mktg-root .mv-wrap{max-width:1260px;margin:0 auto;padding:4px 2px 30px;display:flex;flex-direction:column}
.mktg-root .mv-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;flex-wrap:wrap;margin-bottom:14px}
.mktg-root .mv-htxt{min-width:0}
.mktg-root .mv-h1{font-size:21px;font-weight:800;color:var(--navy);letter-spacing:-.2px}
.mktg-root .mv-sub{font-size:12.5px;color:var(--soft);margin-top:3px;max-width:720px}
.mktg-root .mv-vtog{display:inline-flex;background:var(--gold-pale);border:1px solid var(--line);border-radius:999px;padding:3px;flex:0 0 auto}
.mktg-root .mv-vtog button{border:none;background:transparent;color:var(--soft);font-family:inherit;font-size:13px;font-weight:700;padding:7px 16px;border-radius:999px;cursor:pointer}
.mktg-root .mv-vtog button.active{background:var(--navy);color:#fff}
.mktg-root .mv-toolrow{display:flex;align-items:center;gap:14px;margin-bottom:14px;flex-wrap:wrap}
.mktg-root .mv-summ{display:flex;align-items:center;gap:12px;background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--gold);border-radius:11px;padding:9px 14px}
.mktg-root .mv-summ .txt{font-size:12.5px}.mktg-root .mv-summ .txt b{color:var(--navy)}
.mktg-root .mv-bar{width:110px;height:8px;background:#EEE7D8;border-radius:6px;overflow:hidden}
.mktg-root .mv-bar span{display:block;height:100%;background:linear-gradient(90deg,var(--gold),var(--gold-light))}
.mktg-root .mv-latecnt{color:var(--red);font-weight:700;font-size:12.5px}
.mktg-root .mv-oktcnt{color:var(--green);font-weight:700;font-size:12.5px}
.mktg-root .mv-filt{display:flex;align-items:center;gap:8px;margin-left:auto;flex-wrap:wrap}
.mktg-root .mv-fsel{border:1px solid var(--line);background:#fff;border-radius:9px;padding:8px 11px;font-size:12.5px;font-family:inherit;color:var(--text);cursor:pointer;height:auto;min-height:0}
.mktg-root .mv-fsel:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 2px var(--gold-cream)}
.mktg-root .mv-board{display:flex;gap:13px;align-items:flex-start}
.mktg-root .mv-col{flex:1 1 0;min-width:0;background:#EFE7D6;border:1px solid var(--line);border-radius:14px;display:flex;flex-direction:column;max-height:calc(100vh - 210px)}
.mktg-root .col-hd{padding:11px 14px;display:flex;align-items:center;justify-content:space-between;border-bottom:2px solid var(--gold);flex-shrink:0}
.mktg-root .col-hd.late{border-bottom-color:var(--red)}
.mktg-root .col-hd .cn{font-size:12.5px;font-weight:800;color:var(--navy)}
.mktg-root .col-hd.late .cn{color:var(--red)}
.mktg-root .col-hd .cc{background:#fff;color:var(--gold-ink);border:1px solid var(--gold-cream);border-radius:20px;padding:1px 9px;font-size:11px;font-weight:800}
.mktg-root .col-hd.late .cc{color:var(--red);border-color:#ECD0C8}
.mktg-root .col-body{padding:10px;display:flex;flex-direction:column;gap:9px;overflow-y:auto;flex:1;min-height:40px}
.mktg-root .col-empty{color:var(--soft);font-size:12px;text-align:center;padding:14px 0}
.mktg-root .col-more{padding:10px;text-align:center;font-size:11.5px;color:var(--gold-ink);font-weight:700;border-top:1px solid var(--line);cursor:pointer;flex-shrink:0}
.mktg-root .col-more:hover{background:var(--gold-pale)}
.mktg-root .mc{background:#fff;border:1px solid var(--line);border-radius:10px;padding:10px 11px;border-left:3px solid var(--gold);display:flex;flex-direction:column;gap:6px}
.mktg-root .mc.late{border-left-color:var(--red)}
.mktg-root .mc .t{font-size:12.5px;font-weight:700;color:var(--navy);line-height:1.35;word-break:break-word}
.mktg-root .mc .s{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.mktg-root .mc-icons{margin-left:auto;display:inline-flex;gap:4px}
.mktg-root .mc-open,.mktg-root .mc-editbtn{border:1px solid var(--line);background:var(--gold-pale);color:var(--gold-ink);font-family:inherit;font-size:11px;font-weight:700;width:24px;height:24px;border-radius:7px;cursor:pointer;line-height:1;padding:0}
.mktg-root .mc-open:hover,.mktg-root .mc-editbtn:hover{background:var(--gold-cream)}
.mktg-root .mc-st{border:1px solid var(--line);background:#F1EBDD;color:#7c7566;font-family:inherit;font-size:10.5px;font-weight:700;padding:4px 7px;border-radius:20px;cursor:pointer;max-width:140px;height:auto;min-height:0}
.mktg-root .mc .st{background:#F1EBDD;color:#7c7566;border-radius:20px;padding:3px 9px;font-size:10px;font-weight:700}
.mktg-root .mc-sub{font-size:11px;color:var(--soft)}
.mktg-root .mc-noteview{font-size:11px;color:var(--gold-ink);background:var(--gold-pale);border:1px solid var(--gold-cream);border-radius:7px;padding:4px 8px;word-break:break-word}
.mktg-root .mc .f{display:flex;justify-content:space-between;align-items:center;gap:6px;margin-top:1px}
.mktg-root .mc .due{font-size:10.5px;font-weight:700}
.mktg-root .mc .due.late{color:var(--red)}.mktg-root .mc .due.today{color:var(--gold-ink)}.mktg-root .mc .due.soon,.mktg-root .mc .due.later{color:var(--soft)}
.mktg-root .mc-btn{background:var(--navy);color:#fff;border:none;border-radius:7px;padding:5px 13px;font-size:11px;font-weight:700;cursor:pointer;font-family:inherit}
.mktg-root .mc-btn:hover{background:#15294a}
.mktg-root .mc-doned{font-size:10.5px;font-weight:700;color:var(--green)}
.mktg-root .mc-edit{background:var(--gold-pale);border:1px solid var(--gold-cream);border-radius:8px;padding:8px;display:flex;flex-direction:column;gap:6px}
.mktg-root .mc-erow{display:flex;align-items:center;gap:7px}
.mktg-root .mc-elab{font-size:11px;color:var(--soft);font-weight:600}
.mktg-root .mc-dl{flex:1;border:1px solid var(--line);background:#fff;border-radius:7px;padding:5px 8px;font-size:12px;font-family:inherit;color:var(--text)}
.mktg-root .mc-noteinp{border:1px solid var(--line);background:#fff;border-radius:7px;padding:6px 8px;font-size:12px;font-family:inherit;color:var(--text)}
.mktg-root .mc-noteinp:focus,.mktg-root .mc-dl:focus{outline:none;border-color:var(--gold)}
/* ftag màu nhãn nguồn — dùng chung Tab A + Tab B */
.mktg-root .ftag{font-size:9.5px;font-weight:700;padding:2px 8px;border-radius:20px;white-space:nowrap}
.mktg-root .ftag.amber{background:var(--gold-cream);color:var(--gold-ink)}
.mktg-root .ftag.tan{background:#EDE3D3;color:#8a6a3a}
.mktg-root .ftag.grn{background:#E4F0EA;color:var(--green)}
.mktg-root .ftag.blue{background:#E7EEF7;color:var(--blue)}
.mktg-root .ftag.teal{background:#E1EFEA;color:#2E7D6E}
.mktg-root .ftag.gold{background:var(--gold-cream);color:var(--gold-ink)}
.mktg-root .ftag.red{background:#F6E1DC;color:var(--red)}
.mktg-root .mv-empty{text-align:center;color:var(--soft);font-size:14px;font-weight:600;padding:50px 16px;background:var(--panel);border:1px dashed var(--line);border-radius:14px}
/* badge MỚI trên sub-tab Tiến độ theo người */
.mktg-root .ct2-newtag{margin-left:7px;font-size:8.5px;font-weight:800;letter-spacing:.06em;color:#fff;background:var(--gold);padding:2px 6px;border-radius:20px;vertical-align:middle}
.ct2-root .ct2-subtabs button.active .ct2-newtag{background:var(--gold-light);color:var(--navy)}
/* ── Tab B: Tiến độ theo người (td-) ── */
.mktg-root .td-wrap{max-width:1120px}
.mktg-root .td-quota{background:var(--gold-pale);border:1px solid var(--gold-cream);border-radius:11px;padding:11px 15px;margin-bottom:13px;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.mktg-root .td-quota .q{font-size:13px}.mktg-root .td-quota .q b{color:var(--navy)}
.mktg-root .td-qbarwrap{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--soft)}
.mktg-root .qbar{width:160px;height:8px;background:#EEE7D8;border-radius:6px;overflow:hidden;display:inline-block;vertical-align:middle}
.mktg-root .qbar span{display:block;height:100%;background:var(--gold)}
.mktg-root .td-seg{display:inline-flex;background:var(--gold-pale);border:1px solid var(--line);border-radius:10px;padding:3px;margin-bottom:13px}
.mktg-root .td-seg button{border:none;background:transparent;color:var(--soft);font-family:inherit;font-size:12.5px;font-weight:700;padding:7px 14px;border-radius:8px;cursor:pointer;white-space:nowrap}
.mktg-root .td-seg button.on{background:var(--navy);color:#fff}
.mktg-root .td-note{font-size:11.5px;color:var(--gold-ink);background:var(--gold-pale);border:1px solid var(--gold-cream);border-radius:9px;padding:9px 12px;margin-bottom:14px}.mktg-root .td-note b{color:var(--navy)}
.mktg-root .td-kpis{display:grid;grid-template-columns:repeat(5,1fr);gap:11px;margin-bottom:14px}
.mktg-root .td-kpi{background:#FBF8F1;border:1px solid var(--line);border-radius:11px;padding:12px 14px;position:relative;overflow:hidden}
.mktg-root .td-kpi::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--gold)}
.mktg-root .td-kpi .lab{font-size:9.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--soft);margin-bottom:6px}
.mktg-root .td-kpi .val{font-size:21px;font-weight:800;color:var(--navy)}.mktg-root .td-kpi .val.bad{color:var(--red)}
.mktg-root .td-hint2{font-size:11.5px;color:var(--soft);margin-bottom:8px}
.mktg-root .td-tbl{overflow-x:auto;border:1px solid var(--line);border-radius:12px}
.mktg-root .td-tbl table{width:100%;border-collapse:collapse;min-width:720px}
.mktg-root .td-tbl thead th{background:var(--gold-cream);font-size:10px;letter-spacing:.04em;text-transform:uppercase;color:var(--gold-ink);text-align:left;padding:10px 14px;font-weight:800;white-space:nowrap}
.mktg-root .td-tbl th.c,.mktg-root .td-tbl td.c{text-align:center}
.mktg-root .td-tbl tbody td{padding:11px 14px;font-size:12.5px;border-bottom:1px solid var(--line)}
.mktg-root .td-prow{cursor:pointer}.mktg-root .td-prow:hover{background:var(--gold-pale)}.mktg-root .td-prow.open{background:#FBEEE9}
.mktg-root .td-tbl .pnm{font-weight:700;color:var(--navy)}
.mktg-root .td-tbl .prole{font-size:10.5px;color:var(--soft);font-weight:400;margin-top:2px}
.mktg-root .pbar{display:inline-block;width:70px;height:7px;background:#EEE7D8;border-radius:6px;overflow:hidden;vertical-align:middle;margin-right:8px}
.mktg-root .pbar span{display:block;height:100%;background:var(--gold)}.mktg-root .pbar.bad span{background:var(--red)}.mktg-root .pbar.warn span{background:var(--gold-deep,#C6862F)}
.mktg-root .td-tbl td b{color:var(--navy)}
.mktg-root .td-drillrow td{background:#FBF8F1;padding:0 !important}
.mktg-root .td-drill{padding:12px 16px}
.mktg-root .td-dt{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--soft);font-weight:700;margin-bottom:8px}
.mktg-root .td-drow{display:flex;justify-content:space-between;font-size:12px;padding:6px 0;border-bottom:1px dashed var(--line);gap:10px}
.mktg-root .td-drow:last-child{border-bottom:none}.mktg-root .td-drow .r{color:var(--soft);white-space:nowrap}
.mktg-root .td-dmeta{color:var(--soft)}
.mktg-root .td-empty{text-align:center;color:var(--soft);font-size:13px;padding:30px 16px;background:var(--panel);border:1px dashed var(--line);border-radius:12px}
.mktg-root .td-prg{background:#FBF8F1;border:1px solid var(--line);border-radius:11px;padding:12px 16px;margin-bottom:14px;font-size:12.5px;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.mktg-root .td-prg b{color:var(--navy)}
.mktg-root .td-tklist{display:flex;flex-direction:column}
.mktg-root .td-tk{display:flex;align-items:center;gap:14px;padding:11px 2px;border-bottom:1px solid var(--line)}.mktg-root .td-tk:last-child{border-bottom:none}
.mktg-root .td-tk-l{flex:1;min-width:0}.mktg-root .td-tk-nm{font-size:12.5px;font-weight:700;color:var(--navy);word-break:break-word}.mktg-root .td-tk-sub{font-size:11px;color:var(--soft);margin-top:3px}
.mktg-root .td-tk-mid{display:flex;gap:4px;flex-wrap:wrap;max-width:160px}
.mktg-root .td-dot{font-size:13px;color:#D8CDB8;line-height:1}.mktg-root .td-dot.done{color:var(--navy)}
.mktg-root .td-tk-r{display:flex;align-items:center;gap:10px}
.mktg-root .td-cnt{font-size:12.5px;font-weight:700;color:var(--navy);min-width:30px;text-align:right}
.mktg-root .td-mini{background:var(--navy);color:#fff;border:none;border-radius:8px;padding:7px 12px;font-size:11.5px;font-weight:700;cursor:pointer;font-family:inherit;white-space:nowrap}.mktg-root .td-mini:hover{background:#15294a}
.mktg-root .td-done2{font-size:11.5px;font-weight:700;color:var(--green);white-space:nowrap}
@media(max-width:960px){ .mktg-root .td-kpis{grid-template-columns:repeat(2,1fr)} }
@media(max-width:860px){
  .mktg-root .mv-wrap{padding:2px 0 60px}
  .mktg-root .mv-board{flex-direction:column}
  .mktg-root .mv-col{max-height:none;width:100%}
  .mktg-root .col-body{overflow:visible}
  .mktg-root .mv-toolrow{flex-direction:column;align-items:stretch}
  .mktg-root .mv-filt{margin-left:0}.mktg-root .mv-fsel{flex:1}
  .mktg-root .mv-head{flex-direction:column;gap:10px}
  .mktg-root .mv-vtog{width:100%}.mktg-root .mv-vtog button{flex:1}
  .mktg-root .mv-h1{font-size:19px}
  .mktg-root .td-seg{display:flex;width:100%}.mktg-root .td-seg button{flex:1}
  .mktg-root .td-tk-mid{display:none}
}

/* ═══════════════════════════════════════════════════════════
   "TIẾN ĐỘ CẢ PHÒNG" redesign (tdp-) — bám 100% mockup-marketing-tiendo-nguoi.html
   KPI 5 thẻ màu · header navy · thanh % đổi màu r/y/g · pill chấm màu ·
   bung chi tiết người (Theo kênh/Theo ngày) + bung chi tiết từng việc.
   Scoped .mktg-root .td-phong → KHÔNG đụng class app khác. Font Roboto/kem/navy/gold.
   ═══════════════════════════════════════════════════════════ */
/* KPI — mỗi thẻ 1 màu viền + số cùng màu */
.mktg-root .td-phong .tdp-kpis{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:16px}
.mktg-root .td-phong .tdp-kpi{background:#fff;border:1px solid var(--line);border-radius:13px;padding:13px 15px;position:relative;overflow:hidden;box-shadow:0 1px 3px rgba(13,27,51,.06)}
.mktg-root .td-phong .tdp-kpi::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--gold)}
.mktg-root .td-phong .tdp-kpi.k1::before{background:var(--navy)}
.mktg-root .td-phong .tdp-kpi.k2::before{background:var(--green)}
.mktg-root .td-phong .tdp-kpi.k3::before{background:var(--gold)}
.mktg-root .td-phong .tdp-kpi.k4::before{background:var(--green)}
.mktg-root .td-phong .tdp-kpi.k5::before{background:var(--red)}
.mktg-root .td-phong .tdp-kpi .lab{font-size:9.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--soft);font-weight:700;margin-bottom:7px}
.mktg-root .td-phong .tdp-kpi .val{font-size:22px;font-weight:900;color:var(--navy);line-height:1.1}
.mktg-root .td-phong .tdp-kpi.k2 .val{color:var(--green)}
.mktg-root .td-phong .tdp-kpi.k3 .val{color:var(--gold-ink)}
.mktg-root .td-phong .tdp-kpi.k4 .val{color:var(--green)}
.mktg-root .td-phong .tdp-kpi.k5 .val{color:var(--red)}
/* hint + chú thích mốc màu */
.mktg-root .td-phong .tdp-hint{font-size:11.5px;color:var(--soft);margin:0 2px 12px;line-height:1.7}
.mktg-root .td-phong .tdp-hint b{color:var(--navy)}
.mktg-root .td-phong .tdp-hint .lg{font-weight:700}
.mktg-root .td-phong .tdp-hint .lg.r{color:#C0392B}
.mktg-root .td-phong .tdp-hint .lg.y{color:#C6862F}
.mktg-root .td-phong .tdp-hint .lg.g{color:#2E7D5B}
/* thanh tiêu đề bảng — nền navy chữ trắng */
.mktg-root .td-phong .tdp-head{display:grid;grid-template-columns:34px 1.9fr .7fr .7fr .7fr 1.8fr .7fr 1.2fr;gap:10px;padding:11px 15px;background:var(--navy);border-radius:11px 11px 0 0;font-size:9.5px;letter-spacing:.06em;text-transform:uppercase;color:#fff;font-weight:700}
.mktg-root .td-phong .tdp-head div{opacity:.92}
.mktg-root .td-phong .tdp-list{display:flex;flex-direction:column;border:1px solid var(--line);border-top:none;border-radius:0 0 13px 13px;overflow:hidden;background:#fff}
.mktg-root .td-phong .tdp-row{border-bottom:1px solid var(--line);background:#fff}
.mktg-root .td-phong .tdp-row:last-child{border-bottom:none}
.mktg-root .td-phong .tdp-row.open{background:#FDFBF6}
.mktg-root .td-phong .tdp-rh{display:grid;grid-template-columns:34px 1.9fr .7fr .7fr .7fr 1.8fr .7fr 1.2fr;gap:10px;align-items:center;padding:13px 15px;cursor:pointer}
.mktg-root .td-phong .tdp-rh:hover{background:var(--gold-pale)}
.mktg-root .td-phong .tdp-chev{width:26px;height:26px;border-radius:8px;background:#F3EDE0;color:var(--soft);display:flex;align-items:center;justify-content:center;font-size:11px;transition:transform .2s}
.mktg-root .td-phong .tdp-row.open .tdp-chev{transform:rotate(90deg);background:var(--gold);color:#fff}
.mktg-root .td-phong .tdp-pn{display:flex;flex-direction:column;gap:3px;min-width:0}
.mktg-root .td-phong .tdp-nm{font-size:14px;font-weight:800;color:var(--navy);word-break:break-word}
.mktg-root .td-phong .tdp-rtag{font-size:9.5px;font-weight:700;padding:2px 9px;border-radius:20px;width:fit-content}
.mktg-root .td-phong .tdp-rtag.leader{background:var(--gold-cream);color:var(--gold-ink)}
.mktg-root .td-phong .tdp-rtag.content{background:#E7EEF7;color:var(--blue)}
.mktg-root .td-phong .tdp-rtag.seeding{background:#E1EFEA;color:#2E7D6E}
.mktg-root .td-phong .tdp-num{text-align:center}
.mktg-root .td-phong .tdp-n{font-size:16px;font-weight:800;color:var(--navy)}
.mktg-root .td-phong .tdp-nl{display:block;font-size:8.5px;color:var(--soft);text-transform:uppercase;letter-spacing:.04em}
.mktg-root .td-phong .tdp-prog{display:flex;align-items:center;gap:9px}
.mktg-root .td-phong .tdp-bar{flex:1;height:9px;background:#EDE6D6;border-radius:6px;overflow:hidden}
.mktg-root .td-phong .tdp-fill{display:block;height:100%;border-radius:6px}
.mktg-root .td-phong .tdp-fill.r{background:linear-gradient(90deg,#C0392B,#e07a6e)}
.mktg-root .td-phong .tdp-fill.y{background:linear-gradient(90deg,#C6862F,#EFC578)}
.mktg-root .td-phong .tdp-fill.g{background:linear-gradient(90deg,#2E7D5B,#57b98a)}
.mktg-root .td-phong .tdp-pct{font-size:13px;font-weight:800;min-width:38px;text-align:right;color:var(--navy)}
.mktg-root .td-phong .tdp-pct.r{color:#C0392B}
.mktg-root .td-phong .tdp-pct.y{color:#C6862F}
.mktg-root .td-phong .tdp-pct.g{color:#2E7D5B}
.mktg-root .td-phong .tdp-tuan{text-align:center;font-size:12px;font-weight:700;color:var(--gold-ink)}
.mktg-root .td-phong .tdp-stt{justify-self:start}
.mktg-root .td-phong .tdp-pill{font-size:10.5px;font-weight:700;padding:5px 12px;border-radius:20px;white-space:nowrap;display:inline-flex;align-items:center;gap:6px}
.mktg-root .td-phong .tdp-pill::before{content:"";width:7px;height:7px;border-radius:50%}
.mktg-root .td-phong .tdp-pill.ok{background:#E4F0EA;color:#2E7D5B}
.mktg-root .td-phong .tdp-pill.ok::before{background:#2E7D5B}
.mktg-root .td-phong .tdp-pill.warn{background:#FBEFD8;color:#C6862F}
.mktg-root .td-phong .tdp-pill.warn::before{background:#C6862F}
.mktg-root .td-phong .tdp-pill.late{background:#F8E4DF;color:#C0392B}
.mktg-root .td-phong .tdp-pill.late::before{background:#C0392B}
.mktg-root .td-phong .tdp-pill.none{background:#EEE8DB;color:#7c7566}
.mktg-root .td-phong .tdp-pill.none::before{background:#b3a98f}
/* chi tiết 1 người (bung) */
.mktg-root .td-phong .tdp-detail{display:none;background:#FBF8F1;padding:13px 15px 16px;border-top:1px solid var(--line)}
.mktg-root .td-phong .tdp-row.open .tdp-detail{display:block}
.mktg-root .td-phong .tdp-dsum{font-size:11px;color:var(--soft);margin-bottom:11px}
.mktg-root .td-phong .tdp-dsum b{color:var(--navy)}
.mktg-root .td-phong .tdp-vt{display:inline-flex;border:1px solid var(--line);border-radius:20px;overflow:hidden;background:#fff;margin-bottom:12px}
.mktg-root .td-phong .tdp-vtb{padding:6px 14px;font-size:11.5px;color:var(--soft);border:none;background:none;cursor:pointer;font-family:inherit}
.mktg-root .td-phong .tdp-vtb.on{background:var(--navy);color:#fff;font-weight:600}
/* khối kênh */
.mktg-root .td-phong .tdp-chb{border:1px solid var(--line);border-radius:11px;background:#fff;margin-bottom:10px;overflow:hidden}
.mktg-root .td-phong .tdp-chb:last-child{margin-bottom:0}
.mktg-root .td-phong .tdp-chh{display:flex;align-items:center;gap:10px;padding:10px 13px;border-bottom:1px solid var(--line);flex-wrap:wrap}
.mktg-root .td-phong .tdp-ptag{font-size:9px;font-weight:700;padding:3px 8px;border-radius:20px}
.mktg-root .td-phong .tdp-ptag.tan{background:#E6E9EF;color:var(--navy)}
.mktg-root .td-phong .tdp-ptag.blue{background:#E7EEF7;color:var(--blue)}
.mktg-root .td-phong .tdp-ptag.gold{background:var(--gold-cream);color:var(--gold-ink)}
.mktg-root .td-phong .tdp-ptag.red{background:#F8E4DF;color:var(--red)}
.mktg-root .td-phong .tdp-ptag.teal{background:#E1EFEA;color:#2E7D6E}
.mktg-root .td-phong .tdp-ptag.grn{background:#E4F0EA;color:var(--green)}
.mktg-root .td-phong .tdp-chnm{font-size:12.5px;font-weight:800;color:var(--navy)}
.mktg-root .td-phong .tdp-chpc{margin-left:auto;display:flex;align-items:center;gap:8px;font-size:11px;color:var(--soft);font-weight:700}
.mktg-root .td-phong .tdp-mini{width:70px;height:7px;background:#EDE6D6;border-radius:5px;overflow:hidden}
.mktg-root .td-phong .tdp-chpc .tdp-pct{min-width:auto;font-size:11px}
/* dòng việc + chi tiết việc (bung) */
.mktg-root .td-phong .tdp-task{display:grid;grid-template-columns:16px 1fr 90px 130px;gap:10px;align-items:center;padding:10px 13px;border-bottom:1px dashed var(--line);font-size:12px;cursor:pointer}
.mktg-root .td-phong .tdp-task:last-child{border-bottom:none}
.mktg-root .td-phong .tdp-task:hover{background:var(--gold-pale)}
.mktg-root .td-phong .tdp-arr{color:var(--soft);font-size:10px;transition:transform .2s}
.mktg-root .td-phong .tdp-task.open .tdp-arr{transform:rotate(90deg);color:#C6862F}
.mktg-root .td-phong .tdp-tnd{color:var(--navy);font-weight:600;min-width:0}
.mktg-root .td-phong .tdp-tsub{font-size:10px;color:var(--soft);font-weight:400;margin-left:6px}
.mktg-root .td-phong .tdp-than{font-size:11px;color:var(--soft);text-align:center}
.mktg-root .td-phong .tdp-tp{font-size:9.5px;font-weight:700;padding:4px 9px;border-radius:20px;text-align:center;white-space:nowrap}
.mktg-root .td-phong .tdp-tp.done{background:#E4F0EA;color:#2E7D5B}
.mktg-root .td-phong .tdp-tp.wait{background:#FBEFD8;color:#C6862F}
.mktg-root .td-phong .tdp-tp.doing{background:#E7EEF7;color:#2F5FA8}
.mktg-root .td-phong .tdp-tp.todo{background:#EEE8DB;color:#7c7566}
.mktg-root .td-phong .tdp-tp.plan{background:#ECE7DA;color:#8a7f68}
.mktg-root .td-phong .tdp-tp.overdue{background:#F8E4DF;color:#C0392B}
.mktg-root .td-phong .tdp-tdet{display:none;padding:0 13px 13px 39px}
.mktg-root .td-phong .tdp-task.open + .tdp-tdet{display:block}
.mktg-root .td-phong .tdp-tbox{background:#F5EFE2;border:1px solid var(--gold-cream);border-radius:10px;padding:11px 13px}
.mktg-root .td-phong .tdp-tinfo{font-size:12.5px;font-weight:700;color:var(--navy);margin-bottom:6px;word-break:break-word}
.mktg-root .td-phong .tdp-tnote{font-size:11.5px;color:var(--text);line-height:1.5;margin-bottom:9px;word-break:break-word}
.mktg-root .td-phong .tdp-tmeta{display:flex;align-items:center;gap:14px;flex-wrap:wrap;font-size:11px;color:var(--soft)}
.mktg-root .td-phong .tdp-tmeta a{color:var(--blue);font-weight:600}
.mktg-root .td-phong .tdp-tmeta .m b{color:var(--navy)}
.mktg-root .td-phong .tdp-empty2{padding:12px 13px;color:var(--soft);font-size:12px}
.mktg-root .td-phong .tdp-empty{text-align:center;color:var(--soft);font-size:13px;padding:30px 16px;background:#fff;border:1px dashed var(--line);border-radius:12px}
.mktg-root .td-phong .tdp-empty b{color:var(--navy)}
/* responsive — điện thoại: mỗi người thành thẻ dọc */
@media(max-width:960px){ .mktg-root .td-phong .tdp-kpis{grid-template-columns:repeat(2,1fr)} }
@media(max-width:880px){
  .mktg-root .td-phong .tdp-head{display:none}
  .mktg-root .td-phong .tdp-list{border-radius:13px;border-top:1px solid var(--line)}
  .mktg-root .td-phong .tdp-rh{grid-template-columns:1fr auto;grid-auto-rows:auto;gap:8px 10px}
  .mktg-root .td-phong .tdp-rh .tdp-chev{grid-row:1;grid-column:2}
  .mktg-root .td-phong .tdp-pn{grid-row:1;grid-column:1}
  .mktg-root .td-phong .tdp-num{background:#FBF8F1;border-radius:8px;padding:6px 9px;text-align:left;display:flex;align-items:baseline;gap:6px}
  .mktg-root .td-phong .tdp-prog{grid-column:1 / -1}
  .mktg-root .td-phong .tdp-tuan{text-align:left}
  .mktg-root .td-phong .tdp-stt{grid-column:1 / -1}
  .mktg-root .td-phong .tdp-task{grid-template-columns:16px 1fr auto}
  .mktg-root .td-phong .tdp-than{display:none}
  .mktg-root .td-phong .tdp-tdet{padding-left:20px}
}

/* ============================================================
   TAB "Seeding - Moi cap doi review" (smr-) — DUNG LAI theo
   mockup-marketing-seeding-final.html: Kanban 6 khau + phieu + modal.
   Scoped .smr-root (ke thua bien mau tu .mktg-root). Font Roboto.
   ============================================================ */
.smr-root{ font-family:'Roboto',-apple-system,sans-serif; color:var(--text);
  --teal:#2E7D6E; --col:#EFE7D6; --gold-light:#EFC578; --gold-deep:#C6862F;
  --sh:0 1px 3px rgba(13,27,51,.05); --sh2:0 8px 26px rgba(13,27,51,.10); }
.smr-root *{ box-sizing:border-box; }
.smr-root a{ color:var(--blue); text-decoration:none; font-weight:500; cursor:pointer; } .smr-root a:hover{ text-decoration:underline; }
.smr-root .smr-deny{ padding:40px 24px; text-align:center; color:var(--soft); font-size:14px; }

/* header */
.smr-root .smr-topbar{ background:var(--panel); border-bottom:1px solid var(--line); padding:18px 30px; display:flex; align-items:center; justify-content:space-between; gap:18px; flex-wrap:wrap; position:relative; }
.smr-root .smr-topbar::after{ content:""; position:absolute; left:0; bottom:-1px; width:120px; height:2px; background:linear-gradient(90deg,var(--gold),transparent); }
.smr-root .smr-eyebrow{ font-size:10px; letter-spacing:.3em; text-transform:uppercase; color:var(--gold-deep); margin-bottom:6px; font-weight:700; }
.smr-root .smr-h1{ font-weight:900; font-size:23px; color:var(--navy); line-height:1; letter-spacing:-.01em; margin:0; }
.smr-root .smr-addbtn{ background:var(--navy); color:#fff; border:none; padding:11px 20px; border-radius:9px; font-family:inherit; font-size:13px; font-weight:600; cursor:pointer; box-shadow:var(--sh); }
.smr-root .smr-addbtn:hover{ background:#15294a; }
.smr-root .smr-content{ padding:24px 30px; }

/* summ + section title */
.smr-root .smr-summ{ display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:16px; font-size:12.5px; color:var(--soft); flex-wrap:wrap; }
.smr-root .smr-summ b{ color:var(--navy); }
.smr-root .smr-secttl{ display:flex; align-items:center; gap:11px; margin:0 2px 14px; }
.smr-root .smr-secttl .smr-tt{ font-size:11px; letter-spacing:.14em; text-transform:uppercase; color:var(--gold-ink); font-weight:700; white-space:nowrap; }
.smr-root .smr-secttl::before{ content:"◆"; color:var(--gold); font-size:8px; }
.smr-root .smr-secttl .smr-rule{ flex:1; height:1px; background:linear-gradient(90deg,var(--gold-cream),transparent); }

/* KPI */
.smr-root .smr-kpis{ display:grid; grid-template-columns:repeat(auto-fit,minmax(170px,1fr)); gap:14px; margin-bottom:22px; }
.smr-root .smr-kpi{ background:var(--panel); border:1px solid var(--line); border-radius:13px; padding:15px 17px; position:relative; overflow:hidden; box-shadow:var(--sh); }
.smr-root .smr-kpi::before{ content:""; position:absolute; left:0; top:0; bottom:0; width:3px; background:var(--gold); }
.smr-root .smr-kpi .smr-lab{ font-size:10px; letter-spacing:.1em; text-transform:uppercase; color:var(--soft); margin-bottom:8px; }
.smr-root .smr-kpi .smr-val{ font-size:26px; font-weight:900; color:var(--navy); line-height:1; }
.smr-root .smr-kpi .smr-val small{ font-size:14px; color:var(--soft); font-weight:600; }
.smr-root .smr-kpi .smr-delta{ font-size:11px; font-weight:500; margin-top:7px; }
.smr-root .smr-delta.up{ color:var(--green); } .smr-root .smr-delta.flat{ color:var(--soft); }

/* toolbar */
.smr-root .smr-tools2{ display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap; margin:0 2px 14px; }
.smr-root .smr-seg{ display:inline-flex; border:1px solid var(--line); border-radius:30px; overflow:hidden; background:#fff; box-shadow:var(--sh); }
.smr-root .smr-seg a{ padding:7px 15px; font-size:12px; color:var(--soft); cursor:pointer; }
.smr-root .smr-seg a:hover{ color:var(--navy); text-decoration:none; }
.smr-root .smr-seg a.on{ background:var(--navy); color:#fff; font-weight:600; }
.smr-root .smr-alert{ display:inline-flex; align-items:center; gap:7px; background:#F6E1DC; color:var(--red); border:1px solid #EBCFC7; border-radius:30px; padding:7px 14px; font-size:12px; font-weight:600; cursor:pointer; }
.smr-root .smr-alert.on{ box-shadow:0 0 0 2px rgba(192,57,43,.25); }
.smr-root .smr-alert .smr-adot{ width:8px; height:8px; border-radius:50%; background:var(--red); }

/* board */
.smr-root .smr-board{ display:flex; gap:14px; overflow-x:auto; padding-bottom:12px; align-items:flex-start; }
.smr-root .smr-col{ flex:0 0 242px; background:#F2ECDE; border:1px solid var(--line); border-radius:15px; display:flex; flex-direction:column; box-shadow:var(--sh); }
.smr-root .smr-col-rej{ background:#F6ECE7; }
.smr-root .smr-colhd{ padding:14px 15px 12px; display:flex; align-items:center; justify-content:space-between; position:relative; }
.smr-root .smr-colhd::after{ content:""; position:absolute; left:15px; right:15px; bottom:0; height:1px; background:var(--gold); opacity:.55; }
.smr-root .smr-col-rej .smr-colhd::after{ background:var(--red); opacity:.4; }
.smr-root .smr-cn{ font-size:12.5px; font-weight:700; color:var(--navy); }
.smr-root .smr-cnt{ background:#fff; color:var(--gold-ink); border:1px solid var(--gold-cream); border-radius:20px; padding:2px 10px; font-size:11.5px; font-weight:700; box-shadow:var(--sh); }
.smr-root .smr-colbody{ padding:12px 11px; display:flex; flex-direction:column; gap:11px; max-height:560px; overflow-y:auto; }
.smr-root .smr-colempty{ color:var(--soft); font-size:12px; text-align:center; padding:10px; }

/* card */
.smr-root .smr-kc{ background:var(--panel); border:1px solid var(--line); border-radius:12px; padding:12px 13px; cursor:pointer; box-shadow:var(--sh); transition:box-shadow .15s,transform .15s,border-color .15s; position:relative; }
.smr-root .smr-kc:hover{ box-shadow:var(--sh2); transform:translateY(-1px); border-color:rgba(225,161,70,.5); }
.smr-root .smr-kcopen{ border-color:var(--gold); box-shadow:0 0 0 2px rgba(225,161,70,.28),var(--sh2); }
.smr-root .smr-kctop{ display:flex; align-items:flex-start; justify-content:space-between; gap:8px; }
.smr-root .smr-nm{ font-size:12.5px; font-weight:700; color:var(--navy); line-height:1.3; }
.smr-root .smr-inicir{ width:23px; height:23px; border-radius:50%; background:var(--gold-cream); color:var(--gold-ink); display:flex; align-items:center; justify-content:center; font-size:10px; font-weight:700; flex-shrink:0; text-transform:uppercase; }
.smr-root .smr-src{ margin-top:8px; }
.smr-root .smr-tag{ font-size:9.5px; font-weight:700; padding:3px 10px; border-radius:20px; display:inline-block; white-space:nowrap; letter-spacing:.02em; }
.smr-root .smr-tag.green{ background:#E4F0EA; color:var(--green); } .smr-root .smr-tag.gold{ background:var(--gold-cream); color:var(--gold-ink); } .smr-root .smr-tag.red{ background:#F6E6E1; color:var(--red); } .smr-root .smr-tag.gray{ background:#EEE8DB; color:#7c7566; } .smr-root .smr-tag.blue{ background:#E7EEF7; color:var(--blue); } .smr-root .smr-tag.teal{ background:#E1EFEA; color:var(--teal); } .smr-root .smr-tag.stat{ background:#E1EFEA; color:var(--teal); }
.smr-root .smr-ln{ font-size:11px; color:var(--soft); margin-top:9px; line-height:1.5; }
.smr-root .smr-kcadv{ margin-top:11px; background:var(--navy); color:#fff; border:none; border-radius:8px; padding:8px; font-size:11px; font-weight:600; text-align:center; cursor:pointer; letter-spacing:.02em; }
.smr-root .smr-kcadv:hover{ background:#15294a; }
.smr-root .smr-bdgs{ display:flex; flex-wrap:wrap; gap:5px; margin-bottom:9px; }
.smr-root .smr-bdg{ font-size:9px; font-weight:700; padding:2px 8px; border-radius:20px; letter-spacing:.02em; }
.smr-root .smr-bdg.over{ background:#F6E1DC; color:var(--red); } .smr-root .smr-bdg.warn{ background:#FBEBD3; color:#9a6b12; } .smr-root .smr-bdg.sync{ background:#EAF0F7; color:var(--blue); } .smr-root .smr-bdg.remind{ background:#FBEBD3; color:#9a6b12; }

/* overlay + phieu (voucher) + modal them nhanh */
.smr-root .smr-ov{ position:fixed; inset:0; background:rgba(13,27,51,.34); display:flex; align-items:flex-start; justify-content:center; padding:32px 16px; z-index:9500; overflow:auto; }
.smr-root .smr-voucher{ max-width:640px; width:100%; margin:0 auto; background:var(--panel); border:1px solid var(--line); border-radius:16px; overflow:hidden; box-shadow:var(--sh2); position:relative; }
.smr-root .smr-voucher::before{ content:""; position:absolute; top:0; left:0; right:0; height:3px; background:var(--gold); }
.smr-root .smr-vhd{ padding:16px 20px 14px; border-bottom:1px solid var(--line); background:#fff; }
.smr-root .smr-vlead{ display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:11px; }
.smr-root .smr-vlogo{ font-size:12px; font-weight:900; letter-spacing:.22em; color:var(--navy); opacity:.62; }
.smr-root .smr-vrt{ display:flex; align-items:center; gap:12px; }
.smr-root .smr-vnm{ font-size:18px; font-weight:900; color:var(--navy); letter-spacing:-.01em; }
.smr-root .smr-vsub{ font-size:11px; color:var(--soft); margin-top:4px; }
.smr-root .smr-vclose{ font-size:12px; color:var(--soft); cursor:pointer; }
.smr-root .smr-flourish{ display:flex; align-items:center; gap:9px; margin-top:12px; } .smr-root .smr-flourish .smr-rule{ flex:1; height:1px; background:linear-gradient(90deg,transparent,var(--gold-cream),transparent); } .smr-root .smr-flourish .smr-dm{ color:var(--gold); font-size:8px; }
.smr-root .smr-mini{ display:flex; align-items:center; padding:14px 20px; border-bottom:1px solid var(--line); background:#fff; }
.smr-root .smr-mini .smr-s{ flex:1; display:flex; flex-direction:column; align-items:center; gap:5px; position:relative; }
.smr-root .smr-mini .smr-s .smr-d{ width:11px; height:11px; border-radius:50%; background:#E4DDCE; position:relative; z-index:1; }
.smr-root .smr-mini .smr-s .smr-t{ font-size:8.5px; color:var(--soft); white-space:nowrap; }
.smr-root .smr-mini .smr-s.done .smr-d{ background:var(--gold); } .smr-root .smr-mini .smr-s.done .smr-t{ color:var(--navy); font-weight:600; }
.smr-root .smr-mini .smr-s.cur .smr-d{ background:#fff; border:2px solid var(--gold); width:13px; height:13px; box-shadow:0 0 0 3px rgba(225,161,70,.22); } .smr-root .smr-mini .smr-s.cur .smr-t{ color:var(--gold-ink); font-weight:700; }
.smr-root .smr-mini .smr-s:not(:first-child)::before{ content:""; position:absolute; top:5px; left:-50%; width:100%; height:2px; background:#E4DDCE; z-index:0; }
.smr-root .smr-mini .smr-s.done::before{ background:var(--gold); }
.smr-root .smr-vsync{ padding:11px 20px; border-bottom:1px solid var(--line); background:#FBF8F1; font-size:11px; color:var(--soft); } .smr-root .smr-vsync b{ color:var(--blue); font-weight:600; }
.smr-root .smr-vg{ display:grid; grid-template-columns:1fr 1fr; gap:10px 22px; padding:16px 20px 6px; }
.smr-root .smr-gl{ grid-column:span 2; display:flex; align-items:center; gap:10px; font-size:9.5px; letter-spacing:.14em; text-transform:uppercase; color:var(--gold-ink); font-weight:700; margin-top:8px; }
.smr-root .smr-gl.first{ margin-top:0; } .smr-root .smr-gl::before{ content:"◆"; color:var(--gold); font-size:7px; } .smr-root .smr-gl::after{ content:""; flex:1; height:1px; background:linear-gradient(90deg,var(--gold-cream),transparent); }
.smr-root .smr-f{ display:flex; flex-direction:column; gap:4px; } .smr-root .smr-f.full{ grid-column:span 2; }
.smr-root .smr-f label{ font-size:10px; color:var(--soft); font-weight:600; }
.smr-root .smr-f input,.smr-root .smr-f select{ border:1px solid var(--line); background:#FCFAF5; border-radius:7px; padding:7px 10px; font-size:12px; font-family:inherit; color:var(--text); height:34px; }
.smr-root .smr-f input:focus,.smr-root .smr-f select:focus{ outline:none; border-color:var(--gold); background:#fff; box-shadow:0 0 0 3px rgba(225,161,70,.14); }
.smr-root .smr-f input:disabled,.smr-root .smr-f select:disabled{ background:#F3EFE7; color:var(--soft); }
.smr-root .smr-vft{ padding:14px 20px; border-top:1px solid var(--line); background:#FBF8F1; display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; margin-top:10px; }
.smr-root .smr-cur{ font-size:12px; color:var(--gold-ink); } .smr-root .smr-cur b{ color:var(--navy); }
.smr-root .smr-acts{ display:flex; gap:8px; align-items:center; }
.smr-root .smr-done{ font-size:12.5px; color:var(--green); font-weight:700; }
.smr-root .smr-btn-primary{ background:var(--navy); color:#fff; border:none; padding:10px 18px; border-radius:9px; font-size:12.5px; font-weight:600; cursor:pointer; font-family:inherit; box-shadow:var(--sh); }
.smr-root .smr-btn-primary:hover{ background:#15294a; }
.smr-root .smr-btn-ghost{ background:#fff; color:var(--gold-ink); border:1px solid var(--gold-cream); padding:10px 16px; border-radius:9px; font-size:12.5px; font-weight:600; cursor:pointer; font-family:inherit; }
.smr-root .smr-btn-ghost:hover{ border-color:var(--gold); background:var(--gold-pale); }
.smr-root .smr-btn-rej{ color:var(--red); border-color:#EBCFC7; }

/* modal them nhanh / hoi ket qua / ly do */
.smr-root .smr-mini2{ max-width:460px; width:100%; margin:0 auto; background:var(--panel); border:1px solid var(--line); border-radius:16px; overflow:hidden; box-shadow:var(--sh2); position:relative; }
.smr-root .smr-mini2::before{ content:""; position:absolute; top:0; left:0; right:0; height:3px; background:var(--gold); }
.smr-root .smr-narrow{ max-width:400px; }
.smr-root .smr-m2hd{ padding:15px 20px; border-bottom:1px solid var(--line); display:flex; align-items:center; justify-content:space-between; gap:12px; }
.smr-root .smr-m2t{ font-size:15px; font-weight:800; color:var(--navy); }
.smr-root .smr-m2body{ padding:16px 20px; display:grid; grid-template-columns:1fr 1fr; gap:12px 18px; }
.smr-root .smr-m2body .smr-f.full{ grid-column:span 2; }
.smr-root .smr-rbtns{ grid-template-columns:1fr; }
.smr-root .smr-rbtns button{ width:100%; text-align:left; padding:12px 14px; }
.smr-root .smr-m2ft{ padding:14px 20px; border-top:1px solid var(--line); background:#FBF8F1; display:flex; justify-content:flex-end; gap:8px; }

/* MOBILE */
@media(max-width:860px){
  .smr-root .smr-topbar{ padding:14px 16px; }
  .smr-root .smr-content{ padding:16px 12px; }
  .smr-root .smr-secttl{ flex-wrap:wrap; } .smr-root .smr-secttl .smr-tt{ white-space:normal; }
  .smr-root .smr-summ{ flex-direction:column; align-items:flex-start; gap:6px; }
  .smr-root .smr-board{ flex-direction:column; overflow:visible; gap:14px; }
  .smr-root .smr-col{ flex:1 1 auto; width:100%; }
  .smr-root .smr-colbody{ overflow:visible; max-height:none; }
  .smr-root .smr-vg{ grid-template-columns:1fr; }
  .smr-root .smr-f.full{ grid-column:span 1; }
  .smr-root .smr-gl{ grid-column:span 1; }
  .smr-root .smr-vft{ flex-direction:column; align-items:stretch; gap:10px; }
  .smr-root .smr-vft .smr-acts{ width:100%; } .smr-root .smr-vft .smr-btn-primary{ flex:1; }
  .smr-root .smr-m2body{ grid-template-columns:1fr; }
  .smr-root .smr-m2body .smr-f.full{ grid-column:span 1; }
  .smr-root .smr-ov{ padding:16px 10px; }
}

/* ============================================================
   SEEDING · sub-tab t6 "Feedback & Review khách" (sfb-)
   bám thiet-ke/10-marketing/mockup-marketing-seeding-feedback.html
   ============================================================ */
.mktg-root .sfb-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:13px;margin-bottom:18px}
.mktg-root .sfb-kpi{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:14px 16px;position:relative;box-shadow:0 1px 3px rgba(13,27,51,.05);overflow:hidden}
.mktg-root .sfb-kpi::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--gold)}
.mktg-root .sfb-kpi .lab{font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--soft);margin-bottom:8px}
.mktg-root .sfb-kpi .val{font-size:22px;font-weight:900;color:var(--navy);line-height:1}
.mktg-root .sfb-kpi .val small{font-size:12px;color:var(--soft);font-weight:600}
.mktg-root .sfb-qadd{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:14px 16px;margin-bottom:18px;box-shadow:0 1px 3px rgba(13,27,51,.05)}
.mktg-root .sfb-qadd .qt{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--gold-ink);font-weight:700;margin-bottom:11px}
.mktg-root .sfb-qgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;align-items:end}
.mktg-root .sfb-fg{display:flex;flex-direction:column;gap:4px;min-width:0}
.mktg-root .sfb-fg label{font-size:10px;color:var(--soft);font-weight:600}
.mktg-root .sfb-fg input,.mktg-root .sfb-fg select{border:1px solid var(--line);background:#FCFAF5;border-radius:7px;padding:8px 10px;font-size:12px;font-family:inherit;color:var(--text);height:36px;min-height:0;width:100%}
.mktg-root .sfb-fg input:focus,.mktg-root .sfb-fg select:focus{outline:none;border-color:var(--gold)}
.mktg-root .sfb-qbtn{background:var(--navy);color:#fff;border:none;border-radius:8px;padding:10px 16px;font-size:12.5px;font-weight:600;cursor:pointer;font-family:inherit;margin-top:12px}
.mktg-root .sfb-qbtn:hover{background:#15294a}
.mktg-root .sfb-filt{display:flex;align-items:center;gap:10px;margin-bottom:14px;flex-wrap:wrap}
.mktg-root .sfb-filt .l{font-size:11px;color:var(--soft);font-weight:600}
.mktg-root .sfb-filt select{border:1px solid var(--line);background:#fff;border-radius:8px;padding:8px 11px;font-size:12px;font-family:inherit;color:var(--text);height:auto;min-height:0;cursor:pointer}
.mktg-root .sfb-tbl{background:var(--panel);border:1px solid var(--line);border-radius:13px;overflow:hidden;box-shadow:0 1px 3px rgba(13,27,51,.05)}
.mktg-root .sfb-tbl-scroll{overflow-x:auto}
.mktg-root .sfb-tbl table{width:100%;border-collapse:collapse;min-width:820px}
.mktg-root .sfb-tbl thead th{background:var(--gold-cream);font-size:10px;letter-spacing:.05em;text-transform:uppercase;color:var(--gold-ink);text-align:left;padding:11px 14px;font-weight:700;white-space:nowrap}
.mktg-root .sfb-tbl tbody td{padding:11px 14px;font-size:12.5px;border-bottom:1px solid var(--line);color:var(--text)}
.mktg-root .sfb-tbl tbody tr:last-child td{border-bottom:none}
.mktg-root .sfb-tbl tbody tr:hover{background:var(--gold-pale)}
.mktg-root .sfb-num{font-variant-numeric:tabular-nums;white-space:nowrap}
.mktg-root .sfb-kh{font-weight:700;color:var(--navy)}
.mktg-root .sfb-lnk{font-size:11.5px;color:var(--blue);font-weight:500}
.mktg-root .sfb-ptag{font-size:10px;font-weight:700;padding:3px 10px;border-radius:20px;white-space:nowrap;display:inline-block}
.mktg-root .sfb-ptag.tik{background:#E6E9EF;color:var(--navy)}
.mktg-root .sfb-ptag.fb{background:#E7EEF7;color:var(--blue)}
.mktg-root .sfb-ptag.gg{background:#E4F0EA;color:var(--green)}
.mktg-root .sfb-ptag.ig{background:var(--gold-cream);color:var(--gold-ink)}
.mktg-root .sfb-ptag.kc{background:#EFEAE0;color:var(--soft)}
.mktg-root .sfb-gtag{font-size:10px;font-weight:700;padding:3px 9px;border-radius:20px;background:#FBEAD3;color:var(--gold-ink);white-space:nowrap;display:inline-block}
.mktg-root .sfb-del{border:none;background:#F6E1DC;color:var(--red);width:20px;height:20px;border-radius:50%;font-size:13px;line-height:1;cursor:pointer;font-weight:700;margin-left:6px;vertical-align:middle}
.mktg-root .sfb-del:hover{background:#F0C9C0}
.mktg-root .sfb-empty{text-align:center;color:var(--soft);font-size:12.5px;padding:26px 12px}
.mktg-root .sfb-note{margin-top:14px;font-size:11px;color:var(--soft);line-height:1.7}
@media(max-width:860px){
  .mktg-root .sfb-tbl-scroll{overflow:visible}
  .mktg-root .sfb-tbl table,.mktg-root .sfb-tbl thead,.mktg-root .sfb-tbl tbody,.mktg-root .sfb-tbl tr,.mktg-root .sfb-tbl td{display:block}
  .mktg-root .sfb-tbl thead{display:none}
  .mktg-root .sfb-tbl table{min-width:0}
  .mktg-root .sfb-tbl tbody tr{border:1px solid var(--line);border-radius:12px;margin:12px;background:#fff}
  .mktg-root .sfb-tbl tbody td{display:flex;justify-content:space-between;gap:14px;text-align:right}
  .mktg-root .sfb-tbl tbody td::before{content:attr(data-l);color:var(--soft);font-weight:600;font-size:10.5px;text-transform:uppercase;text-align:left}
}

/* ============================================================
   Tiến độ theo người — chế độ "Theo kênh" (td-chcard)
   bám thiet-ke/10-marketing/mockup-marketing-phan-theo-kenh.html (card 2)
   ============================================================ */
.mktg-root .ct-chsel{max-width:100%}
.mktg-root .td-chcard{border:1px solid var(--line);border-radius:12px;padding:14px 16px;margin-bottom:12px;background:#fff;box-shadow:0 1px 3px rgba(13,27,51,.05)}
.mktg-root .td-ch-hd{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;flex-wrap:wrap}
.mktg-root .td-ch-l{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0}
.mktg-root .td-ch-nm{font-size:14px;font-weight:800;color:var(--navy)}
.mktg-root .td-ch-owner{font-size:11px;color:var(--soft)}
.mktg-root .td-ch-prog{font-size:12.5px;font-weight:700;color:var(--navy);font-variant-numeric:tabular-nums;white-space:nowrap}
.mktg-root .td-pbar{height:8px;background:#EEE7D8;border-radius:6px;overflow:hidden;margin-bottom:12px}
.mktg-root .td-pbar span{display:block;height:100%;background:linear-gradient(90deg,var(--gold),var(--gold-light))}
.mktg-root .td-pbar.bad span{background:var(--red)}
.mktg-root .td-chtasks{display:flex;flex-direction:column}
.mktg-root .td-ctask{display:flex;align-items:center;gap:12px;padding:8px 0;border-bottom:1px dashed var(--line);font-size:12.5px}
.mktg-root .td-ctask:last-child{border-bottom:none}
.mktg-root .td-ct-t{flex:1;color:var(--navy);font-weight:500;min-width:0;word-break:break-word}
.mktg-root .td-ct-st{background:#F1EBDD;color:#7c7566;border-radius:20px;padding:3px 9px;font-size:10px;font-weight:700;white-space:nowrap}
.mktg-root .td-ct-due{font-size:10.5px;font-weight:700;white-space:nowrap}
.mktg-root .td-ct-due.today{color:var(--gold-ink)}.mktg-root .td-ct-due.soon{color:var(--soft)}.mktg-root .td-ct-due.done{color:var(--green)}
@media(max-width:860px){ .mktg-root .td-ch-hd{align-items:flex-start} .mktg-root .td-ctask{flex-wrap:wrap;gap:6px} }

/* ════════ THƯ VIỆN NỘI DUNG MẪU (tvndm) — bám mockup-marketing-thuvien-full ════════ */
.mktg-root [data-ctpane="tvndm"]{--tnb:#2F5FA8;--tth:#8a6a3a;--ttt:#2E7D5B;--tcd:#C0392B}
.mktg-root .tv-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(112px,1fr));gap:11px;margin-bottom:15px}
.mktg-root .tv-st{background:#fff;border:1px solid var(--line,#E7DFCF);border-radius:12px;padding:11px 13px;position:relative;overflow:hidden;box-shadow:0 1px 3px rgba(13,27,51,.05)}
.mktg-root .tv-st::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--gold,#E1A146)}
.mktg-root .tv-st.nb::before{background:var(--tnb)}.mktg-root .tv-st.th::before{background:var(--tth)}.mktg-root .tv-st.tt::before{background:var(--ttt)}.mktg-root .tv-st.cd::before{background:var(--tcd)}
.mktg-root .tv-st .lab{font-size:9.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--soft,#8A8170);margin-bottom:5px}
.mktg-root .tv-st .val{font-size:20px;font-weight:900;color:var(--navy,#0D1B33)}
.mktg-root .tv-toolbar{display:flex;align-items:center;gap:9px;margin-bottom:13px;flex-wrap:wrap}
.mktg-root .tv-search{flex:1;min-width:190px;display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--line,#E7DFCF);border-radius:10px;padding:8px 12px}
.mktg-root .tv-search input{border:none;outline:none;flex:1;font-family:inherit;font-size:13px;background:transparent;color:var(--text,#26221B)}
.mktg-root .tv-search .si{color:var(--soft,#8A8170)}
.mktg-root .tv-fsel{border:1px solid var(--line,#E7DFCF);background:#fff;border-radius:10px;padding:8px 11px;font-size:12px;font-family:inherit;color:var(--text,#26221B)}
.mktg-root .tv-btn{border:1px solid var(--line,#E7DFCF);background:#fff;color:var(--navy,#0D1B33);border-radius:9px;padding:9px 14px;font-size:12.5px;font-weight:700;font-family:inherit;cursor:pointer}
.mktg-root .tv-btn.navy{background:var(--navy,#0D1B33);color:#fff;border-color:var(--navy,#0D1B33)}
.mktg-root .tv-btn.ghost:hover{border-color:var(--gold,#E1A146)}
.mktg-root .tv-btn.sm{padding:6px 11px;font-size:11.5px}
.mktg-root .tv-btn.del{color:var(--tcd,#C0392B);border-color:#EDCFC7}
.mktg-root .tv-chips{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:18px}
.mktg-root .tv-chip{border:1px solid var(--line,#E7DFCF);background:#fff;border-radius:30px;padding:7px 14px;font-size:12.5px;color:var(--soft,#8A8170);font-weight:700;font-family:inherit;cursor:pointer}
.mktg-root .tv-chip:hover{border-color:var(--gold,#E1A146)}
.mktg-root .tv-chip.on{background:var(--navy,#0D1B33);color:#fff;border-color:var(--navy,#0D1B33)}
.mktg-root .tv-chip.on.nb{background:var(--tnb);border-color:var(--tnb)}.mktg-root .tv-chip.on.th{background:var(--tth);border-color:var(--tth)}.mktg-root .tv-chip.on.tt{background:var(--ttt);border-color:var(--ttt)}.mktg-root .tv-chip.on.cd{background:var(--tcd);border-color:var(--tcd)}
.mktg-root .tv-grp{margin-bottom:20px}
.mktg-root .tv-grp-t{display:flex;align-items:center;gap:8px;margin:0 2px 11px;font-size:13px;font-weight:800;color:var(--navy,#0D1B33)}
.mktg-root .tv-grp-t .dot{width:10px;height:10px;border-radius:50%;background:var(--gold,#E1A146)}
.mktg-root .tv-grp-t.nb{color:var(--tnb)}.mktg-root .tv-grp-t.nb .dot{background:var(--tnb)}.mktg-root .tv-grp-t.th{color:var(--tth)}.mktg-root .tv-grp-t.th .dot{background:var(--tth)}.mktg-root .tv-grp-t.tt{color:var(--ttt)}.mktg-root .tv-grp-t.tt .dot{background:var(--ttt)}.mktg-root .tv-grp-t.cd{color:var(--tcd)}.mktg-root .tv-grp-t.cd .dot{background:var(--tcd)}
.mktg-root .tv-grp-t .gc{font-size:11px;font-weight:700;color:var(--soft,#8A8170);margin-left:2px}
.mktg-root .tv-lgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(205px,1fr));gap:12px}
.mktg-root .tv-lc{background:#fff;border:1px solid var(--line,#E7DFCF);border-radius:13px;overflow:hidden;box-shadow:0 1px 3px rgba(13,27,51,.05);cursor:pointer;transition:box-shadow .15s,transform .15s}
.mktg-root .tv-lc:hover{box-shadow:0 10px 30px rgba(13,27,51,.13);transform:translateY(-2px)}
.mktg-root .tv-lc-th{height:96px;position:relative;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#EEE7D8,#E0D6C2)}
.mktg-root .tv-lc-th.nb{background:linear-gradient(135deg,#DCE6F3,#C4D4EC)}.mktg-root .tv-lc-th.th{background:linear-gradient(135deg,#EAE0CE,#DCCDB0)}.mktg-root .tv-lc-th.tt{background:linear-gradient(135deg,#D9EAE0,#C2DDCE)}.mktg-root .tv-lc-th.cd{background:linear-gradient(135deg,#F2DAD2,#E6C3B8)}
.mktg-root .tv-lc-th .pl{font-size:28px;filter:drop-shadow(0 2px 4px rgba(13,27,51,.15))}
.mktg-root .tv-lc-cnt{position:absolute;bottom:8px;right:9px;background:rgba(13,27,51,.62);color:#fff;font-size:9.5px;font-weight:700;padding:3px 9px;border-radius:20px}
.mktg-root .tv-lc-b{padding:11px 12px}
.mktg-root .tv-lc-nm{font-size:13.5px;font-weight:700;color:var(--navy,#0D1B33);line-height:1.3}
.mktg-root .tv-lc-meta{margin-top:8px;display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.mktg-root .tv-ttag{font-size:9.5px;font-weight:700;padding:3px 9px;border-radius:20px;background:#EEE;color:#555}
.mktg-root .tv-ttag.nb{background:#E7EEF7;color:var(--tnb)}.mktg-root .tv-ttag.th{background:#EDE3D3;color:var(--tth)}.mktg-root .tv-ttag.tt{background:#E4F0EA;color:var(--ttt)}.mktg-root .tv-ttag.cd{background:#F6E1DC;color:var(--tcd)}
.mktg-root .tv-lc-df{font-size:10px;color:var(--soft,#8A8170);font-weight:600}
.mktg-root .tv-empty,.mktg-root .tv-none{padding:32px;text-align:center;color:var(--soft,#8A8170);font-size:13px;background:#fff;border:1px dashed var(--line,#E7DFCF);border-radius:12px}
.mktg-root .tv-none{padding:16px}
.mktg-root .tv-ov{position:fixed;inset:0;background:rgba(13,27,51,.42);display:none;align-items:flex-start;justify-content:center;padding:22px 14px;z-index:4000;overflow-y:auto}
.mktg-root .tv-ov.show{display:flex}
.mktg-root .tv-detail{background:#fff;border:1px solid var(--line,#E7DFCF);border-radius:16px;max-width:760px;width:100%;box-shadow:0 20px 50px rgba(13,27,51,.28);overflow:hidden;position:relative}
.mktg-root .tv-detail::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--gold,#E1A146)}
.mktg-root .tv-dt-hd{padding:17px 19px;border-bottom:1px solid var(--line,#E7DFCF)}
.mktg-root .tv-dt-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.mktg-root .tv-dt-back{background:none;border:none;color:var(--soft,#8A8170);font-size:13px;font-weight:700;cursor:pointer;font-family:inherit}
.mktg-root .tv-dt-back:hover{color:var(--navy,#0D1B33)}
.mktg-root .tv-dt-acts{display:flex;gap:8px;flex-wrap:wrap}
.mktg-root .tv-dt-nm{font-size:18px;font-weight:900;color:var(--navy,#0D1B33);margin-top:10px}
.mktg-root .tv-dt-tags{margin-top:9px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.mktg-root .tv-dt-plat{font-size:10px;font-weight:700;padding:3px 10px;border-radius:20px;background:#E6E9EF;color:var(--navy,#0D1B33)}
.mktg-root .tv-dt-freq{font-size:10px;font-weight:700;padding:3px 10px;border-radius:20px;background:var(--gold-cream,#FBF1DC);color:var(--gold-ink,#9C6A16)}
.mktg-root .tv-dt-desc{padding:13px 19px;font-size:12.5px;line-height:1.6;background:#FBF8F1;border-bottom:1px solid var(--line,#E7DFCF);color:var(--text,#26221B)}
.mktg-root .tv-dt-body{padding:17px 19px;max-height:54vh;overflow-y:auto}
.mktg-root .tv-blk{margin-bottom:19px}.mktg-root .tv-blk:last-child{margin-bottom:0}
.mktg-root .tv-bt{font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--gold-ink,#9C6A16);font-weight:700;margin-bottom:10px}
.mktg-root .tv-exs{display:grid;grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:11px}
.mktg-root .tv-ex{border:1px solid var(--line,#E7DFCF);border-radius:11px;overflow:hidden;background:#fff}
.mktg-root .tv-ex-th{height:100px;background:linear-gradient(135deg,#E5DECF,#D6CDBA);position:relative;display:flex;align-items:center;justify-content:center}
.mktg-root .tv-ex-pl{color:rgba(255,255,255,.9);font-size:22px}
.mktg-root .tv-ex-plat{position:absolute;top:7px;left:7px;font-size:9px;font-weight:700;padding:3px 8px;border-radius:20px;background:#fff;color:var(--navy,#0D1B33)}
.mktg-root .tv-ex-meta{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:8px 10px;font-size:11px}
.mktg-root .tv-ex-view{font-weight:700;color:var(--navy,#0D1B33)}
.mktg-root .tv-x-samp{background:none;border:none;color:var(--soft,#8A8170);cursor:pointer;font-size:12px}.mktg-root .tv-x-samp:hover{color:var(--tcd,#C0392B)}
/* ── (06/07) Thư viện nội dung: lọc Kênh(chips)/Tuyến(select) · ẢNH BÌA DỌC 9:16 · thu gọn tuyến ── */
.mktg-root .tv-filtcard{background:#fff;border:1px solid var(--line,#E7DFCF);border-radius:13px;padding:13px 15px;box-shadow:0 1px 3px rgba(13,27,51,.05);margin-bottom:13px}
.mktg-root .tv-frow{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.mktg-root .tv-frow + .tv-frow{margin-top:11px;padding-top:11px;border-top:1px dashed var(--line,#E7DFCF)}
.mktg-root .tv-fl{font-size:10.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--soft,#8A8170);font-weight:700;width:50px;flex:none}
.mktg-root .tv-fchips{display:flex;gap:7px;flex-wrap:wrap}
.mktg-root .tv-fchip{border:1px solid var(--line,#E7DFCF);background:#FCFAF5;border-radius:30px;padding:7px 14px;font-size:12px;color:var(--soft,#8A8170);cursor:pointer;font-weight:600;font-family:inherit}
.mktg-root .tv-fchip:hover{border-color:var(--gold,#E1A146)}
.mktg-root .tv-fchip.on{background:var(--navy,#0D1B33);color:#fff;border-color:var(--navy,#0D1B33)}
.mktg-root .tv-fseltuyen{border:1px solid var(--line,#E7DFCF);background:#FCFAF5;border-radius:9px;padding:9px 13px;font-size:12.5px;font-family:inherit;color:var(--navy,#0D1B33);font-weight:600;min-width:180px}
.mktg-root .tv-fseltuyen:focus{outline:none;border-color:var(--gold,#E1A146)}
.mktg-root .tv-foldg{margin-left:auto;border:1px solid var(--line,#E7DFCF);background:#fff;border-radius:8px;padding:5px 12px;font-size:11px;font-weight:700;color:var(--navy,#0D1B33);display:inline-flex;align-items:center;gap:6px;cursor:pointer;font-family:inherit}
.mktg-root .tv-foldg:hover{border-color:var(--gold,#E1A146)}
.mktg-root .tv-foldg .fi{font-size:10px;transition:transform .2s}
.mktg-root .tv-grp.collapsed .tv-foldg .fi{transform:rotate(-90deg)}
.mktg-root .tv-grp.collapsed .tv-lgrid{display:none}
.mktg-root .tv-collsum{display:none;font-size:11.5px;color:var(--soft,#8A8170);margin:0 2px 6px}
.mktg-root .tv-collsum b{color:var(--navy,#0D1B33)}
.mktg-root .tv-grp.collapsed .tv-collsum{display:block}
.mktg-root .tv-lgrid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}
@media(max-width:600px){ .mktg-root .tv-lgrid{grid-template-columns:repeat(2,1fr)} }
.mktg-root .tv-cover{position:relative;aspect-ratio:9/16;width:100%;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#EEE7D8}
.mktg-root .tv-cover img{width:100%;height:100%;object-fit:cover;display:block}
.mktg-root .tv-cover img.landscape{object-fit:contain;background:#12203a}
.mktg-root .tv-cover.g1{background:linear-gradient(135deg,#EAD9BF,#CBA06A)}.mktg-root .tv-cover.g2{background:linear-gradient(135deg,#D7C3B0,#9C7B62)}.mktg-root .tv-cover.g3{background:linear-gradient(135deg,#E3CFC6,#B07E72)}.mktg-root .tv-cover.g4{background:linear-gradient(135deg,#CFD6D2,#7E938B)}.mktg-root .tv-cover.g5{background:linear-gradient(135deg,#E7DAB8,#C0912F)}
.mktg-root .tv-cover::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 58%,rgba(0,0,0,.20));pointer-events:none}
.mktg-root .tv-cov-play{position:relative;z-index:2;width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.9);display:flex;align-items:center;justify-content:center;color:var(--navy,#0D1B33);font-size:14px;padding-left:3px;box-shadow:0 4px 14px rgba(0,0,0,.25)}
.mktg-root .tv-cov-ic{position:relative;z-index:2;font-size:26px;opacity:.9;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}
.mktg-root .tv-cov-badge{position:absolute;z-index:3;top:8px;left:8px;background:rgba(13,27,51,.82);color:#fff;font-size:9px;font-weight:700;padding:3px 9px;border-radius:20px}
.mktg-root .tv-cov-edit{position:absolute;z-index:3;bottom:8px;right:8px;background:rgba(255,255,255,.92);border:none;border-radius:7px;padding:5px 10px;font-size:10px;font-weight:700;color:var(--navy,#0D1B33);cursor:pointer;font-family:inherit}
.mktg-root .tv-cov-edit:hover{background:#fff}
/* Popup Đổi bìa (gắn body → KHÔNG scope .mktg-root, dùng màu literal) */
.tv-cvpick{position:fixed;inset:0;z-index:100050;background:rgba(13,27,51,.55);display:flex;align-items:center;justify-content:center;padding:18px;font-family:'Roboto',-apple-system,sans-serif}
.tv-cvpick-box{width:100%;max-width:344px;background:#fff;border:1px solid #ECE5D8;border-radius:16px;padding:18px;box-shadow:0 18px 50px rgba(13,27,51,.3);display:flex;flex-direction:column;gap:10px;max-height:90vh;overflow:auto}
.tv-cvpick-h{font-size:16px;font-weight:800;color:#0D1B33;text-align:center}
.tv-cvpick-note{font-size:12px;color:#8A8170;line-height:1.55;background:#FBF1DC;border:1px solid #ECDCB6;border-radius:10px;padding:9px 12px}
.tv-cvpick-note b{color:#9C6A16}
.tv-cvpick-prev{border-radius:10px;overflow:hidden;border:1px solid #ECE5D8;max-height:200px;display:flex;justify-content:center;background:#f6f2ea}
.tv-cvpick-prev img{max-width:100%;max-height:200px;object-fit:contain}
.tv-cvpick-btn{font-family:inherit;font-size:14px;font-weight:700;border-radius:10px;padding:12px;cursor:pointer;border:1px solid #ECE5D8;background:#fff;color:#26221B;transition:.15s;text-align:center}
.tv-cvpick-btn:hover{background:#FBF1DC;border-color:#EDB96A}
.tv-cvpick-btn.vid{background:#E1A146;color:#0D1B33;border-color:#E1A146;font-weight:800}
.tv-cvpick-btn.vid:hover{background:#d4933a;border-color:#d4933a}
.tv-cvpick-btn.up{background:#0D1B33;color:#fff;border-color:#0D1B33}
.tv-cvpick-btn.up:hover{background:#16264a}
.tv-cvpick-btn.del{color:#B0492F;border-color:#e6c9c1}
.tv-cvpick-btn.del:hover{background:#fdf3f1}
.tv-cvpick-btn.ghost{color:#8A8170;border:none;background:transparent;padding:6px;font-weight:600}
.mktg-root .tv-exs{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:11px}
.mktg-root .tv-ex .tv-cover{border-radius:0}
.mktg-root .tv-script{background:#FBF8F1;border:1px solid var(--line,#E7DFCF);border-radius:11px;padding:13px 15px}
.mktg-root .tv-sc-row{margin-bottom:11px}.mktg-root .tv-sc-row:last-child{margin-bottom:0}
.mktg-root .tv-sc-lab{font-size:10px;letter-spacing:.04em;text-transform:uppercase;color:var(--soft,#8A8170);font-weight:700;margin-bottom:5px}
.mktg-root .tv-sc-val{font-size:12.5px;color:var(--navy,#0D1B33);line-height:1.55}.mktg-root .tv-sc-val.cap{font-style:italic}
.mktg-root .tv-step{display:inline-block;background:#fff;border:1px solid var(--line,#E7DFCF);border-radius:20px;padding:3px 10px;font-size:11px;margin:2px 5px 2px 0}
.mktg-root .tv-lylut{display:grid;grid-template-columns:1fr 1fr;gap:11px}
.mktg-root .tv-ly{border-radius:11px;padding:11px 13px;font-size:12px;line-height:1.6}
.mktg-root .tv-ly.yes{background:#E9F3EE;border:1px solid #CFE6DA}.mktg-root .tv-ly.no{background:#F9E9E4;border:1px solid #EDCFC7}
.mktg-root .tv-ly .lyt{font-weight:800;margin-bottom:5px}.mktg-root .tv-ly.yes .lyt{color:var(--ttt,#2E7D5B)}.mktg-root .tv-ly.no .lyt{color:var(--tcd,#C0392B)}
.mktg-root .tv-ly ul{margin:0;padding-left:16px}
.mktg-root .tv-dt-ft{padding:12px 19px;border-top:1px solid var(--line,#E7DFCF);background:var(--gold-pale,#FEF9EE);display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:11px;color:var(--soft,#8A8170)}
.mktg-root .tv-dt-ft b{color:var(--navy,#0D1B33)}
.mktg-root .tv-addm{background:#fff;border-radius:16px;max-width:520px;width:100%;box-shadow:0 20px 50px rgba(13,27,51,.3);overflow:hidden}
.mktg-root .tv-addm.big{max-width:620px}
.mktg-root .tv-am-hd{padding:15px 19px;border-bottom:1px solid var(--line,#E7DFCF);font-size:15px;font-weight:800;color:var(--navy,#0D1B33)}
.mktg-root .tv-am-b{padding:15px 19px;max-height:64vh;overflow-y:auto}
.mktg-root .tv-fg{margin-bottom:11px}
.mktg-root .tv-fg2{display:grid;grid-template-columns:1fr 1fr;gap:11px}
.mktg-root .tv-fg label,.mktg-root .tv-fg2 label{font-size:11px;color:var(--soft,#8A8170);font-weight:700;display:block;margin-bottom:5px}
.mktg-root .tv-in{width:100%;border:1px solid var(--line,#E7DFCF);background:#FCFAF5;border-radius:8px;padding:9px 11px;font-size:12.5px;font-family:inherit;color:var(--text,#26221B)}
.mktg-root textarea.tv-in{min-height:56px;resize:vertical}
.mktg-root .tv-fdiv{font-size:11px;font-weight:800;color:var(--gold-ink,#9C6A16);text-transform:uppercase;letter-spacing:.04em;margin:14px 0 9px;border-top:1px dashed var(--line,#E7DFCF);padding-top:12px}
.mktg-root .tv-am-ft{padding:13px 19px;border-top:1px solid var(--line,#E7DFCF);display:flex;align-items:center;justify-content:flex-end;gap:8px}
@media(max-width:640px){
  .mktg-root .tv-lgrid{grid-template-columns:1fr 1fr}
  .mktg-root .tv-fg2,.mktg-root .tv-lylut,.mktg-root .tv-exs{grid-template-columns:1fr}
  .mktg-root .tv-toolbar .tv-btn{flex:1}
}

/* ════════ PLAN THEO KÊNH (Part B) — bám mockup-marketing-plan-theokenh-v2 ════════ */
.mktg-root .ct2pp-vtog{display:flex;align-items:center;margin-bottom:14px;flex-wrap:wrap}
.mktg-root .ct2pp-vtog a{padding:8px 16px;font-size:12.5px;font-weight:700;color:var(--soft,#8A8170);cursor:pointer;border:1px solid var(--line,#E7DFCF);background:#fff}
.mktg-root .ct2pp-vtog a:first-child{border-radius:30px 0 0 30px}
.mktg-root .ct2pp-vtog a:nth-child(2){border-radius:0 30px 30px 0;border-left:none}
.mktg-root .ct2pp-vtog a.on{background:var(--navy,#0D1B33);color:#fff;border-color:var(--navy,#0D1B33)}
.mktg-root .ct2pp-vhint{font-size:11px;color:var(--soft,#8A8170);margin-left:12px}
.mktg-root .ct2-kblock{border:1px solid var(--line,#E7DFCF);border-radius:14px;overflow:hidden;box-shadow:0 1px 3px rgba(13,27,51,.05);margin-bottom:14px;background:#fff}
.mktg-root .ct2-kbhead{background:#FBF8F1;padding:12px 14px;border-bottom:1px solid var(--line,#E7DFCF);display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.mktg-root .ct2-kbl{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.mktg-root .ct2-kbdot{min-width:22px;height:22px;padding:0 5px;border-radius:6px;color:#fff;font-size:11px;font-weight:800;display:flex;align-items:center;justify-content:center;text-transform:uppercase}
.mktg-root .ct2-kbnm{font-size:14px;font-weight:900;color:var(--navy,#0D1B33)}
.mktg-root .ct2-kbown{font-size:11px;color:var(--soft,#8A8170);font-weight:600}
.mktg-root .ct2-kbown.warn{color:var(--red,#C0392B)}
.mktg-root .ct2-kbr{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.mktg-root .ct2-kbtong{font-size:11.5px;font-weight:700;color:var(--gold-ink,#9C6A16)}
.mktg-root .ct2-kcover{display:flex;align-items:center;gap:7px;flex-wrap:wrap;padding:10px 14px;border-bottom:1px solid var(--line,#E7DFCF)}
.mktg-root .ct2-kcover .cl{font-size:10px;color:var(--soft,#8A8170);font-weight:700;text-transform:uppercase;letter-spacing:.04em;margin-right:2px}
.mktg-root .ct2-cb{font-size:10px;font-weight:700;padding:4px 10px;border-radius:20px}
.mktg-root .ct2-cb.on{background:#E4F0EA;color:#2E7D5B}
.mktg-root .ct2-cb.off{background:#F4EEE2;color:#B9AF98;border:1px dashed #D8CDB8;opacity:.75}
.mktg-root .ct2-kwarn{margin:10px 14px;font-size:11px;color:var(--red,#C0392B);background:#F9E9E4;border:1px solid #EDCFC7;border-radius:8px;padding:7px 11px;display:flex;align-items:center;gap:8px}
.mktg-root .ct2-kwarn.skip{color:var(--soft,#8A8170);background:#F6F2E9;border-color:var(--line,#E7DFCF)}
.mktg-root .ct2-kwarn b{color:var(--navy,#0D1B33)}
.mktg-root .ct2-kskip{margin-left:auto;font-size:10.5px;font-weight:700;border:1px solid currentColor;background:none;color:inherit;border-radius:16px;padding:3px 11px;cursor:pointer;white-space:nowrap}
.mktg-root .ct2-kblock .ct2-tblines{padding:0}
/* (06/07) Plan tháng theo kênh — nút Thu gọn / Xem danh sách + dòng tóm tắt */
.mktg-root .ct2-tbfold{border:1px solid var(--navy,#0D1B33);background:#fff;border-radius:8px;padding:7px 12px;font-size:11.5px;font-weight:700;color:var(--navy,#0D1B33);display:inline-flex;align-items:center;gap:7px;cursor:pointer;white-space:nowrap}
.mktg-root .ct2-tbfold:hover{background:#FBF8F1}
.mktg-root .ct2-tbfold .fi{font-size:11px;transition:transform .2s}
.mktg-root .ct2-kblock.collapsed .ct2-tbfold .fi{transform:rotate(-90deg)}
.mktg-root .ct2-kblock.collapsed .ct2-tblines{display:none}
.mktg-root .ct2-kblock.collapsed .ct2-kwarn{display:none}
.mktg-root .ct2-collsum{display:none;padding:11px 14px;border-top:1px solid var(--line,#E7DFCF);font-size:12px;color:var(--soft,#8A8170)}
.mktg-root .ct2-collsum b{color:var(--navy,#0D1B33)}
.mktg-root .ct2-kblock.collapsed .ct2-collsum{display:block}
.mktg-root .ct2pp-tbadge{font-size:10px;font-weight:700;padding:3px 9px;border-radius:20px;background:#EEE;color:#555;white-space:nowrap}
.mktg-root .ct2pp-tbadge.nb{background:#E7EEF7;color:#2F5FA8}.mktg-root .ct2pp-tbadge.th{background:#EDE3D3;color:#8a6a3a}.mktg-root .ct2pp-tbadge.tt{background:#E4F0EA;color:#2E7D5B}.mktg-root .ct2pp-tbadge.cd{background:#F6E1DC;color:#C0392B}
.mktg-root .ct2pp-tsel.nb{color:#2F5FA8;font-weight:700}.mktg-root .ct2pp-tsel.th{color:#8a6a3a;font-weight:700}.mktg-root .ct2pp-tsel.tt{color:#2E7D5B;font-weight:700}.mktg-root .ct2pp-tsel.cd{color:#C0392B;font-weight:700}
/* Part C — nút + picker Thư viện trong Plan */
.mktg-root .ct2-tblib{border:1px solid var(--gold,#E1A146);background:var(--gold-pale,#FEF9EE);color:var(--gold-ink,#9C6A16);border-radius:9px;padding:6px 12px;font-size:11.5px;font-weight:700;font-family:inherit;cursor:pointer}
.mktg-root .ct2-tblib:hover{background:#FBEFD6}
.mktg-root .ct2-sbox.big{max-width:640px;width:100%}
.mktg-root .ct2-sbtn.sm{padding:6px 12px;font-size:11.5px}
.mktg-root .ct2-lpitem{display:flex;align-items:flex-start;gap:10px;justify-content:space-between;border:1px solid var(--line,#E7DFCF);border-radius:11px;padding:11px 13px;margin-bottom:9px;background:#fff}
.mktg-root .ct2-lpmain{min-width:0;flex:1}
.mktg-root .ct2-lpnm{font-size:13.5px;font-weight:700;color:var(--navy,#0D1B33)}
.mktg-root .ct2-lpmeta{margin-top:6px;display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.mktg-root .ct2-lpdd{font-size:10.5px;color:var(--soft,#8A8170);font-weight:600}
.mktg-root .ct2-lpprev{margin-top:9px;background:#FBF8F1;border:1px solid var(--line,#E7DFCF);border-radius:9px;padding:9px 11px;font-size:11.5px;line-height:1.6;color:var(--navy,#0D1B33)}
.mktg-root .ct2-lpprev>div{margin-bottom:3px}.mktg-root .ct2-lpprev b{color:var(--gold-ink,#9C6A16)}
.mktg-root .ct2-lpact{display:flex;flex-direction:column;gap:6px;flex-shrink:0}
@media(max-width:640px){ .mktg-root .ct2-lpitem{flex-direction:column} .mktg-root .ct2-lpact{flex-direction:row;width:100%} .mktg-root .ct2-lpact .ct2-sbtn{flex:1} }

/* ═══════════ UGC · SẢN XUẤT — lịch chụp + hàng gọn + hủy/ẩn/xóa (bám mockup-marketing-ugc-sanxuat) ═══════════ */
/* VIỆC 2 — hàng gọn, thoáng vừa phải; ô chọn 1 dòng đầy cột */
.uv-vtbl.uv-sx td{padding-top:11px;padding-bottom:11px;vertical-align:middle}
.uv-vtbl.uv-sx .uv-cellsel{width:100%;max-width:none;min-width:104px;height:34px !important;min-height:0 !important;padding:5px 9px !important;box-sizing:border-box}   /* !important: đè .mktg-root .empty{padding:30px} dính vào select CHƯA gán → cao 62px */
.uv-vtbl.uv-sx .uv-tdsel{height:34px !important;min-height:0 !important;box-sizing:border-box}
.uv-vtbl.uv-sx .uv-cellin{height:34px !important;min-height:0 !important;padding:5px 9px !important;box-sizing:border-box}
.uv-vtbl.uv-sx .uv-date{height:34px !important}
.uv-vtbl.uv-sx .uv-ptwrap{gap:4px}
.uv-vtbl.uv-sx .uv-addp{height:28px;padding:2px 7px}
/* VIỆC 1 — Khách: tên + lịch chụp 1 dòng ngay dưới tên */
.uv-khnm{font-weight:800;color:var(--navy);line-height:1.35;white-space:normal;overflow-wrap:break-word}
.uv-lich{font-size:11px;color:var(--soft);margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}
.uv-lich.soft{color:#b3aa97;font-style:italic}
.uv-lich.cancel{color:var(--red);font-weight:700;white-space:normal}
/* VIỆC 3 — hàng đã hủy: mờ + gạch tên; đã ẩn: mờ nhẹ */
.uv-vtbl .uv-huyrow td{background:#FBF3F1;opacity:.72}
.uv-vtbl .uv-huyrow:hover td{background:#F7E9E4}
.uv-vtbl .uv-huyrow .uv-khnm{text-decoration:line-through;color:#a2564a}
.uv-vtbl .uv-anrow td{background:#F5F3EF;opacity:.7}
.uv-vtbl .uv-anrow .uv-khnm{color:var(--soft)}
/* Menu 3 chấm */
.uv-act{position:relative;display:flex;justify-content:flex-end}
.uv-dots{background:#fff;border:1px solid var(--line);border-radius:8px;width:34px;height:34px;font-size:17px;line-height:1;color:var(--soft);cursor:pointer;font-family:inherit}
.uv-dots:hover{border-color:var(--gold);color:var(--navy)}
.uv-menu{position:absolute;right:0;top:38px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 10px 30px rgba(13,27,51,.16);min-width:188px;z-index:30;overflow:hidden}
.uv-menu[hidden]{display:none}
.uv-menu a{display:block;padding:9px 13px;font-size:12.5px;color:var(--text);cursor:pointer;white-space:nowrap}
.uv-menu a:hover{background:var(--gold-pale)}
.uv-menu a.uv-del{color:var(--red);border-top:1px solid var(--line)}
.uv-menu a.uv-del:hover{background:#FBEAE7}
.uv-restore{background:#fff;color:var(--navy);border:1px solid var(--gold);border-radius:8px;padding:7px 12px;font-size:11.5px;font-weight:700;cursor:pointer;font-family:inherit;white-space:nowrap}
.uv-restore:hover{background:var(--gold-pale)}
/* Chip lọc Đã hủy / Đã ẩn */
.uv-pill.uv-pill-huy.active{background:var(--red);border-color:var(--red);color:#fff}
.uv-pill.uv-pill-an.active{background:var(--soft);border-color:var(--soft);color:#fff}
/* Thống kê "Đã hủy" */
.uv-stat.uv-stat-huy{color:var(--red)} .uv-stat .d.sd-huy{background:var(--red)}
/* Thẻ mobile: lịch + hủy/ẩn */
.uv-vc-meta.cancel{color:var(--red);font-weight:700}
.uv-card.uv-huycard{background:#FBF3F1;border-color:#e7b3ac;opacity:.9}
.uv-card.uv-huycard .uv-vc-h{text-decoration:line-through;color:#a2564a}
.uv-card.uv-ancard{background:#F5F3EF;border-color:#e0dccf;opacity:.85}
.uv-card .uv-lich{max-width:none;white-space:normal}
@media(max-width:860px){ .uv-card .uv-act{justify-content:flex-start} .uv-card .uv-menu{right:auto;left:0;top:38px} }

/* ═══════════ THƯ VIỆN — Form bài mẫu inline + Autocomplete Nội dung + Picker theo tuyến ═══════════ */
/* PHẦN A — hàng "Bài mẫu & sản phẩm tham khảo" inline (bám mockup-marketing-form-loainoidung) */
.mktg-root .tv-refnote{font-size:11.5px;color:var(--gold-ink,#9C6A16);background:var(--gold-pale,#FEF9EE);border:1px solid var(--gold-cream,#FBF1DC);border-radius:9px;padding:9px 12px;margin-bottom:11px;line-height:1.55}
.mktg-root .tv-refnote b{color:var(--navy,#0D1B33)}
.mktg-root .tv-srow{display:grid;grid-template-columns:148px 1fr 132px 34px;gap:8px;align-items:center;margin-bottom:9px}
.mktg-root .tv-srow .tv-smpsrc,.mktg-root .tv-srow .tv-smplink,.mktg-root .tv-srow .tv-smpnote{border:1px solid var(--line,#E7DFCF);background:#FCFAF5;border-radius:8px;padding:9px 10px;font-size:12px;font-family:inherit;color:var(--text,#26221B);width:100%;height:38px;box-sizing:border-box}
.mktg-root .tv-srow .tv-smpsrc:focus,.mktg-root .tv-srow .tv-smplink:focus,.mktg-root .tv-srow .tv-smpnote:focus{outline:none;border-color:var(--gold,#E1A146);background:#fff}
.mktg-root .tv-smpx{background:#fff;border:1px solid var(--line,#E7DFCF);border-radius:8px;color:var(--soft,#8A8170);height:38px;font-size:14px;cursor:pointer;font-family:inherit}
.mktg-root .tv-smpx:hover{border-color:var(--red,#C0392B);color:var(--red,#C0392B)}
.mktg-root .tv-addsmp{background:#fff;border:1px dashed var(--gold,#E1A146);color:var(--gold-ink,#9C6A16);border-radius:9px;padding:9px 14px;font-size:12px;font-weight:600;font-family:inherit;cursor:pointer;margin-top:2px}
.mktg-root .tv-addsmp:hover{background:var(--gold-pale,#FEF9EE)}
@media(max-width:600px){ .mktg-root .tv-srow{grid-template-columns:1fr 1fr;gap:7px} .mktg-root .tv-srow .tv-smplink{grid-column:1 / -1} .mktg-root .tv-smpx{grid-column:2;justify-self:end;width:40px} }

/* CÁCH 1 — autocomplete ô Nội dung trong Plan (gom theo tuyến) */
.mktg-root .ct2pp-acwrap{position:relative}
.mktg-root .ct2pp-acin:focus{border-color:var(--gold,#E1A146);box-shadow:0 0 0 2px rgba(225,161,70,.16);outline:none}
.mktg-root .ct2-acdd{position:absolute;left:0;top:calc(100% + 3px);min-width:240px;background:#fff;border:1px solid var(--line,#E7DFCF);border-radius:11px;box-shadow:0 12px 34px rgba(13,27,51,.18);overflow-y:auto;max-height:320px;z-index:60}
.mktg-root .ct2-acgl{padding:7px 12px;font-size:9px;letter-spacing:.05em;text-transform:uppercase;font-weight:800;background:#FBF8F1;border-bottom:1px solid var(--line,#E7DFCF);display:flex;align-items:center;gap:6px}
.mktg-root .ct2-acgl .dot{width:7px;height:7px;border-radius:50%}
.mktg-root .ct2-acgl.nb{color:#2F5FA8}.mktg-root .ct2-acgl.nb .dot{background:#2F5FA8}
.mktg-root .ct2-acgl.th{color:#8a6a3a}.mktg-root .ct2-acgl.th .dot{background:#8a6a3a}
.mktg-root .ct2-acgl.tt{color:#2E7D5B}.mktg-root .ct2-acgl.tt .dot{background:#2E7D5B}
.mktg-root .ct2-acgl.cd{color:#C0392B}.mktg-root .ct2-acgl.cd .dot{background:#C0392B}
.mktg-root .ct2-aci{display:flex;align-items:center;gap:10px;padding:9px 13px;border-bottom:1px solid #F2ECDE;cursor:pointer}
.mktg-root .ct2-aci:hover{background:var(--gold-pale,#FEF9EE)}
.mktg-root .ct2-aci .acnm{flex:1;font-size:12.5px;color:var(--navy,#0D1B33);font-weight:600}
.mktg-root .ct2-aci .acdf{font-size:10px;color:var(--soft,#8A8170);white-space:nowrap}
.mktg-root .ct2-acempty{padding:11px 13px;font-size:12px;color:var(--soft,#8A8170)}
.mktg-root .ct2-acft a{display:flex;align-items:center;gap:8px;padding:9px 13px;font-size:12px;color:var(--navy,#0D1B33);cursor:pointer;border-top:1px solid #F2ECDE}
.mktg-root .ct2-acft a:hover{background:var(--gold-pale,#FEF9EE)}
.mktg-root .ct2-acft a.lib{color:var(--gold-ink,#9C6A16);font-weight:700}
.mktg-root .ct2-acft a b{font-weight:700}

/* CÁCH 2 — picker theo tuyến: tuyến THIẾU xếp trên + tô sáng (bám mockup-marketing-noidung-goiy) */
.mktg-root .ct2-lptools{padding:12px 17px 0}
.mktg-root .ct2-lpsearch{display:flex;align-items:center;gap:8px;border:1px solid var(--line,#E7DFCF);background:#FCFAF5;border-radius:9px;padding:8px 12px}
.mktg-root .ct2-lpsearch input{border:none;outline:none;background:transparent;font-family:inherit;font-size:12.5px;flex:1;color:var(--text,#26221B)}
.mktg-root .ct2-lpmiss{font-size:11.5px;color:var(--red,#C0392B);background:#F9E9E4;border:1px solid #EDCFC7;border-radius:9px;padding:9px 12px;margin-bottom:13px;line-height:1.5}
.mktg-root .ct2-lpmiss b{color:var(--navy,#0D1B33)}
.mktg-root .ct2-lpsec{border:1px solid var(--line,#E7DFCF);border-radius:12px;padding:11px 13px;margin-bottom:11px;background:#fff}
.mktg-root .ct2-lpsec.miss{border-color:#E7C9C0;background:#FDF6F4;box-shadow:0 0 0 2px rgba(192,57,43,.06)}
.mktg-root .ct2-lpsh{display:flex;align-items:center;gap:8px;margin-bottom:10px;flex-wrap:wrap}
.mktg-root .ct2-lpsh .dot{width:9px;height:9px;border-radius:50%}
.mktg-root .ct2-lpsh .nm{font-size:12.5px;font-weight:800}
.mktg-root .ct2-lpsh.nb .nm{color:#2F5FA8}.mktg-root .ct2-lpsh.nb .dot{background:#2F5FA8}
.mktg-root .ct2-lpsh.th .nm{color:#8a6a3a}.mktg-root .ct2-lpsh.th .dot{background:#8a6a3a}
.mktg-root .ct2-lpsh.tt .nm{color:#2E7D5B}.mktg-root .ct2-lpsh.tt .dot{background:#2E7D5B}
.mktg-root .ct2-lpsh.cd .nm{color:#C0392B}.mktg-root .ct2-lpsh.cd .dot{background:#C0392B}
.mktg-root .ct2-lpsc{margin-left:auto;font-size:11px;font-weight:700;color:var(--soft,#8A8170)}
.mktg-root .ct2-lpbadge{font-size:9px;font-weight:800;padding:2px 9px;border-radius:20px}
.mktg-root .ct2-lpbadge.have{background:#E4F0EA;color:#2E7D5B}
.mktg-root .ct2-lpbadge.miss{background:#F6E1DC;color:#C0392B}
.mktg-root .ct2-lchips{display:flex;flex-wrap:wrap;gap:7px}
.mktg-root .ct2-lchip{display:inline-flex;align-items:stretch;border:1px solid var(--line,#E7DFCF);background:#FCFAF5;border-radius:20px;overflow:hidden}
.mktg-root .ct2-lchip.open{border-color:var(--gold,#E1A146)}
.mktg-root .ct2-lchip:hover{border-color:var(--gold,#E1A146);background:var(--gold-pale,#FEF9EE)}
.mktg-root .ct2-lchipadd{border:none;background:transparent;padding:7px 6px 7px 13px;font-size:12px;color:var(--navy,#0D1B33);cursor:pointer;font-family:inherit;font-weight:600}
.mktg-root .ct2-lchipadd b{color:var(--gold-deep,#C6862F);font-weight:800;margin-right:2px}
.mktg-root .ct2-lchipeye{border:none;border-left:1px solid var(--line,#E7DFCF);background:transparent;padding:0 10px;font-size:12px;cursor:pointer;color:var(--soft,#8A8170)}
.mktg-root .ct2-lchipeye:hover{color:var(--navy,#0D1B33);background:#fff}
.mktg-root .ct2-lpnone{font-size:11.5px;color:var(--soft,#8A8170);font-style:italic}
.mktg-root .ct2-lppanel{margin-top:10px;background:#FBF8F1;border:1px solid var(--line,#E7DFCF);border-radius:9px;padding:10px 12px;font-size:11.5px;line-height:1.6;color:var(--navy,#0D1B33)}
.mktg-root .ct2-lppanel>div{margin-bottom:3px}.mktg-root .ct2-lppanel b{color:var(--gold-ink,#9C6A16)}
.mktg-root .ct2-lppt{font-size:12.5px;font-weight:800;color:var(--navy,#0D1B33);margin-bottom:5px}

/* ═══════════ UGC · Sắp xếp ngày chụp + Đếm ngược (bám mockup-marketing-moireview-ngaychup) ═══════════ */
/* VIỆC 1 — ô Sắp xếp ngày chụp (góc phải hàng lọc) */
.uv-sortbox{margin-left:auto;display:inline-flex;align-items:center;gap:8px;background:var(--gold-pale,#FEF9EE);border:1px solid var(--gold-cream,#FBF1DC);border-radius:10px;padding:5px 8px 5px 13px}
.uv-sortbox .sl{font-size:11px;color:var(--gold-ink,#9C6A16);font-weight:700;white-space:nowrap}
.uv-sortbox select{border:1px solid var(--line,#E7DFCF);background:#fff;border-radius:8px;padding:6px 10px;font-size:12px;font-family:inherit;color:var(--navy,#0D1B33);font-weight:600;height:32px}
/* VIỆC 2 — nhãn đếm ngược ở ô ngày chụp */
.uv-dcdate{font-weight:800;color:var(--navy,#0D1B33)}
.uv-cd{font-size:10px;font-weight:700;padding:3px 9px;border-radius:20px;display:inline-block;margin-top:5px;white-space:nowrap;line-height:1.3}
.uv-cd.red{background:#F6E1DC;color:var(--red,#C0392B)}
.uv-cd.gold{background:var(--gold-cream,#FBF1DC);color:var(--gold-ink,#9C6A16)}
.uv-cd.neu{background:#EEE8DB;color:var(--soft,#8A8170)}
.uv-cd.past{background:#ECECEC;color:#9a9a9a}
/* trong ô lịch chụp bảng Sản xuất: đếm ngược xuống dòng dưới lịch */
.uv-lich + .uv-cd{margin-top:4px}
/* thẻ mobile: đếm ngược nằm trong dòng meta (inline) */
.uv-vc-meta .uv-cd{margin-top:0;vertical-align:middle}
@media(max-width:860px){ .uv-sortbox{margin-left:0;width:100%;justify-content:space-between} .uv-filters .uv-sortbox{margin-top:4px} }

/* Thư viện nội dung mẫu — TAB RIÊNG (mktg-thuvien): header trang */
.mktg-root .tv-sahd{margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--line,#E7DFCF)}
.mktg-root .tv-satt{font-size:19px;font-weight:900;color:var(--navy,#0D1B33)}
.mktg-root .tv-sasub{font-size:12px;color:var(--soft,#8A8170);margin-top:3px}

/* UGC — nút lọc ngày (component sdf- có sẵn) canh về phải hàng lọc, thay ô sắp xếp cũ */
.uv-filters .sdf-wrap{margin-left:auto}
@media(max-width:860px){ .uv-filters .sdf-wrap{margin-left:0;width:100%} .uv-filters .sdf-wrap .sdf-btn{width:100%} }

/* ═══════════════════════════════════════════════════════════════════════════
   BÁO CÁO MARKETING — bcm- (Tổng quan 2 dải + sức khỏe + mảng + cảnh báo · Theo kênh)
   Lệnh 1 · bám 100% mockup-bao-cao-marketing.html · màu literal ẤM (KHÔNG tím/xám lạnh)
   Scope: .mktg-root (báo cáo render trong .mktg-root .rpt-wrap)
   ═══════════════════════════════════════════════════════════════════════════ */
.mktg-root .bcm-sec{display:flex;align-items:center;gap:9px;margin:20px 0 11px;font-size:14px;font-weight:900;color:#26241F;}
.mktg-root .bcm-sec:first-child{margin-top:0;}
.mktg-root .bcm-sec .ic{font-size:16px;}
.mktg-root .bcm-sec .hint{font-size:10.5px;font-weight:600;color:#8B867C;margin-left:5px;}
.mktg-root .bcm-note{margin-top:16px;background:#fff;border:1px solid #E0DDD6;border-left:3px solid #E1A146;border-radius:10px;padding:13px 15px;font-size:12.5px;line-height:1.75;color:#26241F;}
.mktg-root .bcm-note b{color:#0D1B33;}
/* màu trạng thái dùng chung trong báo cáo */
.mktg-root .bcm-dts .g,.mktg-root .bcm-sks .g,.mktg-root .bcm-mgs .g,.mktg-root .bcm-wrap .g{color:#2E7D5B;}
.mktg-root .bcm-dts .y,.mktg-root .bcm-sks .y,.mktg-root .bcm-mgs .y,.mktg-root .bcm-wrap .y{color:#C6862F;}
.mktg-root .bcm-dts .r,.mktg-root .bcm-sks .r,.mktg-root .bcm-mgs .r,.mktg-root .bcm-wrap .r{color:#C0392B;}

/* ── 2 DẢI TỔNG ── */
.mktg-root .bcm-dts{display:grid;grid-template-columns:1fr 1fr;gap:11px;}
.mktg-root .bcm-dt{background:#fff;border:1px solid #E0DDD6;border-radius:12px;overflow:hidden;}
.mktg-root .bcm-dt[data-bcmreach]{cursor:pointer;}
.mktg-root .bcm-dt[data-bcmreach]:hover{border-color:#EFC578;box-shadow:0 2px 12px rgba(225,161,70,.14);}
.mktg-root .bcm-dth{display:flex;justify-content:space-between;align-items:center;background:#0D1B33;border-bottom:3px solid #E1A146;padding:10px 14px;flex-wrap:wrap;gap:7px;}
.mktg-root .bcm-dth .dt-t{font-size:13px;font-weight:900;color:#fff;}
.mktg-root .bcm-dth .dt-d{background:rgba(225,161,70,.2);border:1px solid rgba(225,161,70,.45);color:#EFC578;font-size:9.5px;font-weight:800;padding:3px 10px;border-radius:20px;}
.mktg-root .bcm-dtb{padding:12px 14px;}
.mktg-root .bcm-dtk{display:grid;gap:8px;margin-bottom:11px;}
.mktg-root .bcm-k6{grid-template-columns:repeat(3,1fr);}
.mktg-root .bcm-k4{grid-template-columns:repeat(2,1fr);}
.mktg-root .bcm-dk{background:#F6F5F1;border:1px solid #E0DDD6;border-radius:9px;padding:9px;text-align:center;}
.mktg-root .bcm-dk .l{font-size:8px;letter-spacing:.05em;text-transform:uppercase;color:#8B867C;font-weight:800;margin-bottom:3px;}
.mktg-root .bcm-dk .v{font-size:21px;font-weight:900;line-height:1.15;color:#26241F;}
.mktg-root .bcm-dk .s{font-size:8.5px;color:#8B867C;margin-top:2px;}
.mktg-root .bcm-dbar{display:block;height:11px;background:#E7E3DA;border-radius:7px;position:relative;}
.mktg-root .bcm-dbar i{display:block;height:100%;border-radius:7px;background:#C6862F;}
.mktg-root .bcm-dbar i.g{background:#2E7D5B;}.mktg-root .bcm-dbar i.y{background:#C6862F;}.mktg-root .bcm-dbar i.r{background:#C0392B;}
.mktg-root .bcm-dbar u{position:absolute;top:-3px;width:2px;height:17px;background:#0D1B33;border-radius:2px;}
.mktg-root .bcm-dlg{display:flex;justify-content:space-between;margin-top:7px;font-size:10px;color:#8B867C;flex-wrap:wrap;gap:5px;}
.mktg-root .bcm-dlg b{color:#26241F;}

/* ── SỨC KHỎE PHÒNG ── */
.mktg-root .bcm-sks{display:grid;grid-template-columns:repeat(5,1fr);gap:11px;}
.mktg-root .bcm-sk{background:#fff;border:1px solid #E0DDD6;border-left:4px solid #E1A146;border-radius:11px;padding:13px 15px;}
.mktg-root .bcm-sk .sk-l{font-size:9px;letter-spacing:.07em;text-transform:uppercase;color:#8B867C;font-weight:800;margin-bottom:6px;}
.mktg-root .bcm-sk .sk-v{font-size:30px;font-weight:900;line-height:1.1;color:#26241F;}
.mktg-root .bcm-sk .sk-s{font-size:10.5px;color:#8B867C;margin:6px 0 8px;display:flex;align-items:center;gap:6px;flex-wrap:wrap;}
.mktg-root .bcm-tag{font-size:9.5px;font-weight:800;padding:3px 7px;border-radius:20px;white-space:nowrap;}
.mktg-root .bcm-tag.up{background:#E4F0EA;color:#2E7D5B;}
.mktg-root .bcm-tag.dn{background:#F8E4DF;color:#C0392B;}
.mktg-root .bcm-tag.eq{background:#F1EEE7;color:#8B867C;}
.mktg-root .bcm-sk .sk-b{display:block;height:5px;background:#E7E3DA;border-radius:4px;overflow:hidden;}
.mktg-root .bcm-sk .sk-b i{display:block;height:100%;border-radius:4px;background:#C6862F;}
.mktg-root .bcm-sk .sk-b i.g{background:#2E7D5B;}.mktg-root .bcm-sk .sk-b i.y{background:#C6862F;}.mktg-root .bcm-sk .sk-b i.r{background:#C0392B;}

/* ── HIỆU QUẢ THEO VỊ TRÍ (mảng) ── */
.mktg-root .bcm-mgs{display:grid;grid-template-columns:repeat(4,1fr);gap:11px;}
.mktg-root .bcm-mg{background:#fff;border:1px solid #E0DDD6;border-left:4px solid #2E7D5B;border-radius:11px;padding:12px 14px;cursor:pointer;transition:box-shadow .12s,transform .12s;}
.mktg-root .bcm-mg:hover{box-shadow:0 3px 14px rgba(13,27,51,.10);transform:translateY(-1px);}
.mktg-root .bcm-mg.mid{border-left-color:#C6862F;}
.mktg-root .bcm-mg.bad{border-left-color:#C0392B;}
.mktg-root .bcm-mg .mg-h{display:flex;align-items:center;gap:8px;margin-bottom:9px;}
.mktg-root .bcm-mg .mg-i{font-size:15px;}
.mktg-root .bcm-mg .mg-n{font-size:13px;font-weight:900;flex:1;color:#26241F;}
.mktg-root .bcm-den{font-size:9px;font-weight:800;padding:3px 8px;border-radius:20px;white-space:nowrap;}
.mktg-root .bcm-den.g{background:#E4F0EA;color:#2E7D5B;}
.mktg-root .bcm-den.y{background:#FBEFD8;color:#C6862F;}
.mktg-root .bcm-den.r{background:#F8E4DF;color:#C0392B;}
.mktg-root .bcm-mg .mg-v{font-size:26px;font-weight:900;line-height:1.1;color:#26241F;}
.mktg-root .bcm-mg .mg-c{font-size:10.5px;color:#8B867C;font-weight:700;margin-bottom:9px;}
.mktg-root .bcm-mg .mg-p{display:flex;justify-content:space-between;font-size:11px;color:#8B867C;padding:5px 0;border-top:1px solid #EFEDE8;}
.mktg-root .bcm-mg .mg-p b{color:#26241F;font-weight:800;}

/* ── CẢNH BÁO ── */
.mktg-root .bcm-cb{display:flex;align-items:center;gap:11px;background:#fff;border:1px solid #E0DDD6;border-radius:11px;padding:12px 14px;margin-bottom:8px;}
.mktg-root .bcm-cb.bad{border-color:#F0D9D3;background:#FDF4F2;}
.mktg-root .bcm-cb.mid{border-color:#EEDDBE;background:#FEFAF2;}
.mktg-root .bcm-cb.ok{border-color:#D8E7DF;background:#F1F7F3;}
.mktg-root .bcm-cb .cb-d{width:9px;height:9px;border-radius:50%;flex-shrink:0;background:#8B867C;}
.mktg-root .bcm-cb.bad .cb-d{background:#C0392B;}
.mktg-root .bcm-cb.mid .cb-d{background:#C6862F;}
.mktg-root .bcm-cb.ok .cb-d{background:#2E7D5B;}
.mktg-root .bcm-cb .cb-b{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0;}
.mktg-root .bcm-cb .cb-t{font-size:13px;font-weight:900;color:#26241F;}
.mktg-root .bcm-cb .cb-m{font-size:11.5px;color:#8B867C;}
.mktg-root .bcm-cb .cb-x{font-size:11.5px;color:#C6862F;font-weight:600;margin-top:3px;}
.mktg-root .bcm-cb .cb-x b{color:#26241F;font-weight:800;}
.mktg-root .bcm-cb-go{border:1px solid #0D1B33;background:#0D1B33;color:#fff;border-radius:8px;padding:8px 13px;font-size:11px;font-weight:700;white-space:nowrap;cursor:pointer;}
.mktg-root .bcm-cb-go:hover{background:#1E3560;}

/* ── THEO KÊNH ── */
.mktg-root .bcm-slowbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:#FDF4F2;border:1px solid #F0D9D3;border-radius:10px;padding:10px 13px;margin-bottom:11px;font-size:12px;color:#8a3a2e;}
.mktg-root .bcm-slowbar b{color:#26241F;}
.mktg-root .bcm-slowx{border:1px solid #C0392B;background:#fff;color:#C0392B;border-radius:7px;padding:5px 11px;font-size:11px;font-weight:700;cursor:pointer;}
.mktg-root .bcm-wrap{background:#fff;border:1px solid #E0DDD6;border-radius:12px;overflow:hidden;}
.mktg-root .bcm-PG{display:grid;grid-template-columns:1.15fr 72px 84px 138px 138px 100px 78px 30px;gap:10px;align-items:center;}
.mktg-root .bcm-hd{background:#0D1B33;color:#fff;padding:10px 13px;}
.mktg-root .bcm-hd span{font-size:8.5px;letter-spacing:.05em;text-transform:uppercase;font-weight:800;}
.mktg-root .bcm-pl{border-bottom:1px solid #E0DDD6;}
.mktg-root .bcm-pl:last-child{border-bottom:none;}
.mktg-root .bcm-pl-h{padding:12px 13px;cursor:pointer;}
.mktg-root .bcm-pl-h:hover{background:#F5F3EE;}
.mktg-root .bcm-pl:nth-child(odd) .bcm-pl-h{background:#FBFAF8;}
.mktg-root .bcm-pl .pnm{display:flex;align-items:center;gap:9px;}
.mktg-root .bcm-pl .pnm b{font-size:13.5px;font-weight:900;color:#26241F;}
.mktg-root .bcm-pl .ki{width:17px;height:17px;display:inline-flex;flex-shrink:0;}
.mktg-root .bcm-pl .ki svg{width:100%;height:100%;display:block;}
.mktg-root .bcm-wrap .cc2,.mktg-root .bcm-wrap .cc{text-align:center;font-size:11.5px;color:#8B867C;}
.mktg-root .bcm-wrap .cc2 b,.mktg-root .bcm-wrap .cc b{font-size:13.5px;font-weight:900;color:#26241F;display:block;}
.mktg-root .bcm-wrap .sub2{display:block;font-size:8.5px;color:#8B867C;font-weight:600;margin-top:1px;}
.mktg-root .bcm-wrap .sub{font-size:8.5px;color:#8B867C;font-weight:600;}
.mktg-root .bcm-wrap .pw{display:flex;align-items:center;gap:7px;}
.mktg-root .bcm-wrap .bar{flex:1;display:block;height:7px;background:#E7E3DA;border-radius:5px;overflow:hidden;}
.mktg-root .bcm-wrap .bar i{display:block;height:100%;border-radius:5px;background:#C6862F;}
.mktg-root .bcm-wrap .bar i.g{background:#2E7D5B;}.mktg-root .bcm-wrap .bar i.y{background:#C6862F;}.mktg-root .bcm-wrap .bar i.r{background:#C0392B;}
.mktg-root .bcm-wrap .pv{font-size:12px;font-weight:900;white-space:nowrap;color:#26241F;}
.mktg-root .bcm-pl .car{justify-self:end;width:27px;height:27px;border:1px solid #E0DDD6;background:#fff;border-radius:8px;color:#0D1B33;font-size:10px;cursor:pointer;transition:transform .15s;}
.mktg-root .bcm-pl.cl .car{transform:rotate(-90deg);}
.mktg-root .bcm-pl-b{background:#F6F5F1;border-top:1px solid #E0DDD6;padding:10px 12px 12px;}
.mktg-root .bcm-pl.cl .bcm-pl-b{display:none;}
.mktg-root .bcm-KG{display:grid;grid-template-columns:1.4fr 104px 74px 118px 116px 84px 60px 74px;gap:9px;align-items:center;}
.mktg-root .bcm-wrap .khd{background:#F4F2ED;border:1px solid #E0DDD6;border-radius:9px;padding:8px 12px;margin-bottom:7px;}
.mktg-root .bcm-wrap .khd span{font-size:8.5px;letter-spacing:.05em;text-transform:uppercase;color:#6E6A62;font-weight:800;text-align:center;}
.mktg-root .bcm-wrap .khd span:first-child,.mktg-root .bcm-wrap .khd span:nth-child(2){text-align:left;}
.mktg-root .bcm-kn{background:#fff;border:1px solid #E0DDD6;border-radius:10px;padding:10px 12px;margin-bottom:6px;}
.mktg-root .bcm-kn:last-child{margin-bottom:0;}
.mktg-root .bcm-kn .knm{font-size:12.5px;font-weight:800;color:#26241F;}
.mktg-root .bcm-kn .who{font-size:10px;font-weight:700;padding:4px 9px;border-radius:20px;background:#F2EDE2;color:#8a6a3a;text-align:center;white-space:nowrap;}
.mktg-root .bcm-chip-r{font-size:9.5px;font-weight:800;padding:4px 9px;border-radius:20px;background:#F8E4DF;color:#C0392B;}
.mktg-root .bcm-chip-g{font-size:9.5px;font-weight:800;padding:4px 9px;border-radius:20px;background:#E4F0EA;color:#2E7D5B;}
.mktg-root .bcm-lead-na{font-size:9.5px;font-weight:700;color:#8B867C;font-style:italic;}

/* ── MOBILE (≤860) ── */
@media(max-width:860px){
  .mktg-root .bcm-dts,.mktg-root .bcm-sks,.mktg-root .bcm-mgs{grid-template-columns:1fr;}
  .mktg-root .bcm-k6,.mktg-root .bcm-k4{grid-template-columns:1fr 1fr;}
  .mktg-root .bcm-hd,.mktg-root .bcm-wrap .khd{display:none;}
  .mktg-root .bcm-PG,.mktg-root .bcm-KG{grid-template-columns:1fr;gap:7px;}
  .mktg-root .bcm-wrap .cc,.mktg-root .bcm-wrap .cc2,.mktg-root .bcm-wrap .pw{text-align:left;}
  .mktg-root .bcm-pl .car{justify-self:start;}
  .mktg-root .bcm-kn .cc,.mktg-root .bcm-kn .pw{display:flex;justify-content:space-between;align-items:center;gap:10px;}
  .mktg-root .bcm-kn .cc::before,.mktg-root .bcm-kn .pw::before{content:attr(data-l);font-size:9.5px;text-transform:uppercase;color:#8B867C;font-weight:800;}
  .mktg-root .bcm-kn .cc b{display:inline;}
  .mktg-root .bcm-kn .sub2{display:inline;margin-left:4px;}
  .mktg-root .bcm-cb{flex-wrap:wrap;}
  .mktg-root .bcm-cb-go{width:100%;}
}

/* ═══════════════════════════════════════════════════════════════════════════
   BÁO CÁO MARKETING — THEO VỊ TRÍ (bcv-) · Lệnh 2 · bám mockup-bao-cao-vitri.html
   Thẻ vị trí nằm trong .mktg-root .rpt-wrap; PHIẾU (overlay) gắn document.body.
   → dùng prefix bcv- (không đụng class khác). Màu literal ẤM (KHÔNG tím/xám lạnh).
   ═══════════════════════════════════════════════════════════════════════════ */
.bcv-sec{display:flex;align-items:center;gap:9px;margin-bottom:12px;font-size:14px;font-weight:900;color:#26241F;}
.bcv-sec .hint{font-size:10.5px;font-weight:600;color:#8B867C;}

/* ── THẺ VỊ TRÍ ── */
.bcv-vt{background:#fff;border:1px solid #E0DDD6;border-left:4px solid #2E7D5B;border-radius:13px;margin-bottom:10px;overflow:hidden;box-shadow:0 1px 3px rgba(13,27,51,.04);transition:box-shadow .15s;}
.bcv-vt:hover{box-shadow:0 3px 12px rgba(13,27,51,.08);}
.bcv-vt.y{border-left-color:#C6862F;} .bcv-vt.r{border-left-color:#C0392B;}
.bcv-vt-h{display:grid;grid-template-columns:42px 1fr 128px 96px 94px;gap:12px;align-items:center;padding:15px 16px;cursor:pointer;}
.bcv-vt-h:hover{background:#F5F3EE;}
.bcv-vt-i{font-size:22px;text-align:center;line-height:1;}
.bcv-vt-n{display:flex;flex-direction:column;font-size:15.5px;font-weight:900;line-height:1.3;color:#26241F;}
.bcv-vt-s{font-size:11px;font-weight:600;color:#8B867C;}
.bcv-vt-num{display:flex;flex-direction:column;align-items:flex-end;}
.bcv-vt-v{font-size:27px;font-weight:900;line-height:1.05;color:#26241F;}
.bcv-vt-v.g{color:#2E7D5B;} .bcv-vt-v.y{color:#C6862F;} .bcv-vt-v.r{color:#C0392B;}
.bcv-vt-lb{font-size:8.5px;letter-spacing:.04em;text-transform:uppercase;color:#8B867C;font-weight:800;margin-top:2px;text-align:right;}
.bcv-den{font-size:9.5px;font-weight:800;padding:5px 10px;border-radius:20px;white-space:nowrap;text-align:center;}
.bcv-den.g{background:#E4F0EA;color:#2E7D5B;} .bcv-den.y{background:#FBEFD8;color:#C6862F;} .bcv-den.r{background:#F8E4DF;color:#C0392B;}
.bcv-car{justify-self:end;display:inline-flex;align-items:center;gap:6px;border:1px solid #E0DDD6;background:#fff;border-radius:9px;color:#26241F;font-size:11px;font-weight:700;padding:8px 12px;white-space:nowrap;cursor:pointer;}
.bcv-car:hover{border-color:#E1A146;color:#0D1B33;background:#FBF1DC;}
.bcv-car .ci{display:inline-block;transition:transform .15s;font-size:9px;}
.bcv-vt.cl .bcv-car .ci{transform:rotate(-90deg);}
.bcv-vt-b{border-top:1px solid #EFEDE8;background:#F6F5F1;padding:14px;} .bcv-vt.cl .bcv-vt-b{display:none;}

/* 4 KPI thẻ */
.bcv-kps{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:13px;}
.bcv-kp{background:#fff;border:1px solid #E0DDD6;border-radius:11px;padding:11px 12px;}
.bcv-kp .kp-l{display:block;font-size:8.5px;letter-spacing:.06em;text-transform:uppercase;color:#8B867C;font-weight:800;margin-bottom:5px;}
.bcv-kp .kp-v{display:block;font-size:22px;font-weight:900;line-height:1.1;color:#26241F;}
.bcv-kp .kp-v.g{color:#2E7D5B;} .bcv-kp .kp-v.y{color:#C6862F;} .bcv-kp .kp-v.r{color:#C0392B;}
.bcv-kp .kp-s{display:block;font-size:9.5px;color:#8B867C;margin-top:3px;font-weight:600;}

/* Bảng người */
.bcv-NG{display:grid;grid-template-columns:1.25fr 132px 112px 130px 96px 106px;gap:9px;align-items:center;}
.bcv-nhd{background:#F4F2ED;border:1px solid #E0DDD6;border-radius:9px;padding:8px 12px;margin-bottom:7px;}
.bcv-nhd span{font-size:8.5px;letter-spacing:.05em;text-transform:uppercase;color:#6E6A62;font-weight:800;text-align:center;}
.bcv-nhd span:first-child{text-align:left;}
.bcv-nr{background:#fff;border:1px solid #E0DDD6;border-radius:10px;padding:11px 12px;margin-bottom:6px;}
.bcv-nn{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:800;color:#26241F;}
.bcv-nav{width:28px;height:28px;border-radius:9px;background:#E1A146;color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:900;flex-shrink:0;}
.bcv-cc{text-align:center;font-size:11.5px;color:#8B867C;} .bcv-cc b{font-size:13px;font-weight:900;color:#26241F;}
.bcv-cc b.g{color:#2E7D5B;} .bcv-cc b.y{color:#C6862F;} .bcv-cc b.r{color:#C0392B;}
.bcv-pw{display:flex;align-items:center;gap:7px;}
.bcv-bar{flex:1;display:block;height:7px;background:#E7E3DA;border-radius:5px;overflow:hidden;} .bcv-bar i{display:block;height:100%;border-radius:5px;background:#C6862F;}
.bcv-bar i.g{background:#2E7D5B;} .bcv-bar i.y{background:#C6862F;} .bcv-bar i.r{background:#C0392B;}
.bcv-pv{font-size:12px;font-weight:900;white-space:nowrap;color:#26241F;} .bcv-pv.g{color:#2E7D5B;} .bcv-pv.y{color:#C6862F;} .bcv-pv.r{color:#C0392B;}
.bcv-pbtn{border:1px solid #0D1B33;background:#0D1B33;color:#fff;border-radius:9px;padding:8px 11px;font-size:10.5px;font-weight:700;white-space:nowrap;cursor:pointer;}
.bcv-pbtn:hover{background:#1E3560;}
.bcv-pbtn.v2{background:#fff;color:#0D1B33;border-color:#E0DDD6;}
.bcv-pbtn.v2:hover{background:#FBF1DC;border-color:#E1A146;}
.bcv-empty{background:#fff;border:1px dashed #E0DDD6;border-radius:10px;padding:14px;text-align:center;font-size:11.5px;color:#8B867C;}
.bcv-pnote{margin-top:10px;background:#fff;border:1px solid #E0DDD6;border-left:3px solid #E1A146;border-radius:9px;padding:10px 12px;font-size:11.5px;color:#8B867C;line-height:1.6;}
.bcv-pnote b{color:#26241F;}
.bcv-pnote.v2{border-left-color:#2E7D5B;background:#F3F8F5;color:#3d6b57;}

/* ═══ PHIẾU — CỬA SỔ TO GIỮA MÀN (gắn body) ═══ */
body.bcv-modal-open{overflow:hidden;}
.bcv-ovl{position:fixed;inset:0;background:rgba(13,27,51,.55);opacity:0;pointer-events:none;transition:.2s;z-index:10040;display:flex;align-items:center;justify-content:center;padding:22px;}
.bcv-ovl.on{opacity:1;pointer-events:auto;}
.bcv-drw{width:min(1060px,96vw);max-height:92vh;background:#ECEAE5;border-radius:16px;overflow-y:auto;box-shadow:0 24px 70px rgba(13,27,51,.32);transform:scale(.96);opacity:0;transition:.22s ease;pointer-events:none;z-index:10050;font-family:'Roboto',Arial,sans-serif;color:#26241F;}
.bcv-drw.on{transform:scale(1);opacity:1;pointer-events:auto;}
.bcv-ph-h{position:sticky;top:0;display:flex;align-items:center;gap:13px;background:linear-gradient(135deg,#0D1B33,#1E3560);border-bottom:3px solid #E1A146;padding:17px 20px;z-index:3;}
.bcv-ph-av{width:46px;height:46px;border-radius:13px;background:#E1A146;color:#fff;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:900;flex-shrink:0;}
.bcv-ph-n{display:flex;flex-direction:column;font-size:19px;font-weight:900;color:#fff;flex:1;}
.bcv-ph-v{font-size:12px;font-weight:600;color:rgba(255,255,255,.74);}
.bcv-ph-pdf{border:1px solid #E1A146;background:#E1A146;color:#fff;border-radius:9px;padding:10px 16px;font-size:12.5px;font-weight:700;white-space:nowrap;cursor:pointer;}
.bcv-ph-pdf:hover{background:#C6862F;border-color:#C6862F;}
.bcv-ph-x{width:34px;height:34px;border:1px solid rgba(255,255,255,.3);background:transparent;color:#fff;border-radius:9px;font-size:14px;flex-shrink:0;cursor:pointer;}
.bcv-ph-b{padding:18px 20px 30px;}
.bcv-ph-t{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:#C6862F;font-weight:800;margin-bottom:13px;}
.bcv-pss{display:grid;grid-template-columns:repeat(4,1fr);gap:11px;margin-bottom:16px;}
.bcv-ps{background:#fff;border:1px solid #E0DDD6;border-left:4px solid #E1A146;border-radius:12px;padding:14px 13px;text-align:center;}
.bcv-ps .ps-l{display:block;font-size:9px;letter-spacing:.06em;text-transform:uppercase;color:#8B867C;font-weight:800;margin-bottom:6px;}
.bcv-ps .ps-v{display:block;font-size:30px;font-weight:900;color:#26241F;line-height:1.05;}
.bcv-mkbar{display:flex;gap:7px;margin-bottom:11px;}
.bcv-mkb{border:1px solid #E0DDD6;background:#fff;color:#26241F;border-radius:8px;padding:7px 12px;font-size:11px;font-weight:700;cursor:pointer;}
.bcv-mkb:hover{border-color:#E1A146;color:#0D1B33;}
.bcv-mk{background:#fff;border:1px solid #E0DDD6;border-radius:12px;margin-bottom:9px;overflow:hidden;}
.bcv-mk-h{display:flex;align-items:center;gap:11px;padding:14px 15px;cursor:pointer;border-bottom:2px solid #E1A146;background:#FBFAF8;}
.bcv-mk-h:hover{background:#F5F3EE;}
.bcv-mk.cl .bcv-mk-h{border-bottom-color:#EFEDE8;background:#fff;}
.bcv-mk-i{width:24px;height:24px;border-radius:8px;background:#E1A146;color:#fff;display:flex;align-items:center;justify-content:center;font-size:11.5px;font-weight:900;flex-shrink:0;}
.bcv-mk-t{font-size:15px;font-weight:900;flex:1;color:#26241F;}
.bcv-mn{font-size:9.5px;font-weight:800;padding:4px 9px;border-radius:20px;background:#FBF1DC;color:#9C6A16;white-space:nowrap;}
.bcv-fold{display:inline-flex;align-items:center;gap:7px;border:1.5px solid #E1A146;background:#FBF1DC;border-radius:9px;color:#8B6520;font-size:11.5px;font-weight:800;padding:8px 14px;flex-shrink:0;white-space:nowrap;cursor:pointer;transition:.14s;}
.bcv-fold:hover{background:#E1A146;color:#fff;border-color:#E1A146;}
.bcv-fold .ci{display:inline-block;transition:transform .15s;font-size:10px;}
.bcv-mk.cl .bcv-fold .ci{transform:rotate(-90deg);}
.bcv-mk.cl .bcv-fold{background:#fff;color:#C6862F;}
.bcv-mk-b{padding:13px;background:#F6F5F1;} .bcv-mk.cl .bcv-mk-b{display:none;}
.bcv-L5{display:grid;grid-template-columns:1.1fr 1.5fr 1fr .9fr 1.1fr;gap:8px;align-items:center;}
.bcv-L4{display:grid;grid-template-columns:1.7fr 1.1fr 1.1fr 1.2fr;gap:8px;align-items:center;}
.bcv-L3{display:grid;grid-template-columns:1.7fr 1.4fr 1fr;gap:8px;align-items:center;}
.bcv-mhd{background:#F4F2ED;border:1px solid #E0DDD6;border-radius:8px;padding:7px 11px;margin-bottom:6px;}
.bcv-mhd span{font-size:8px;letter-spacing:.05em;text-transform:uppercase;color:#6E6A62;font-weight:800;}
.bcv-mr{background:#fff;border:1px solid #E0DDD6;border-radius:10px;padding:12px 13px;margin-bottom:6px;} .bcv-mr:last-child{margin-bottom:0;}
.bcv-mr.r{background:#FDF4F2;border-color:#F0D9D3;} .bcv-mr.y{background:#FEFAF2;border-color:#EEDDBE;}
.bcv-m1{font-size:13.5px;font-weight:800;color:#26241F;}
.bcv-m3{font-size:12px;color:#8B867C;font-weight:600;}
.bcv-st{font-size:10.5px;font-weight:800;padding:6px 11px;border-radius:20px;white-space:nowrap;text-align:center;display:inline-block;}
.bcv-st-g{background:#E4F0EA;color:#2E7D5B;} .bcv-st-y{background:#FBEFD8;color:#C6862F;}
.bcv-st-r{background:#F8E4DF;color:#C0392B;} .bcv-st-w{background:#EFEDE7;color:#807A70;}
.bcv-kps2{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;}
.bcv-kps2 .bcv-kp{padding:14px 14px;} .bcv-kps2 .bcv-kp .kp-v{font-size:26px;} .bcv-kps2 .bcv-kp .kp-l{font-size:9.5px;} .bcv-kps2 .bcv-kp .kp-s{font-size:11px;}
.bcv-tr2{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #E0DDD6;border-radius:9px;padding:11px 12px;margin-bottom:5px;}
.bcv-tr2.r{background:#FDF4F2;border-color:#F0D9D3;} .bcv-tr2.y{background:#FEFAF2;border-color:#EEDDBE;}
.bcv-tdot{width:8px;height:8px;border-radius:50%;flex-shrink:0;background:#807A70;}
.bcv-tr2.r .bcv-tdot{background:#C0392B;} .bcv-tr2.y .bcv-tdot{background:#C6862F;} .bcv-tr2.g .bcv-tdot{background:#2E7D5B;}
.bcv-tn{flex:1;font-size:13.5px;font-weight:700;color:#26241F;}

/* ── MOBILE (≤860) ── */
@media(max-width:860px){
  .bcv-vt-h{grid-template-columns:38px 1fr;row-gap:9px;}
  .bcv-vt-num,.bcv-vt-h .bcv-den,.bcv-car{grid-column:1 / -1;align-items:flex-start;justify-self:start;}
  .bcv-vt-num{flex-direction:row;gap:8px;align-items:baseline;} .bcv-vt-lb{text-align:left;}
  .bcv-car{width:100%;justify-content:center;}
  .bcv-kps,.bcv-kps2,.bcv-pss{grid-template-columns:1fr 1fr;}
  .bcv-nhd,.bcv-mhd{display:none;} .bcv-NG,.bcv-L5,.bcv-L4,.bcv-L3{grid-template-columns:1fr;gap:6px;}
  .bcv-nr .bcv-cc,.bcv-nr .bcv-pw{display:flex;justify-content:space-between;align-items:center;gap:10px;}
  .bcv-nr .bcv-cc::before,.bcv-nr .bcv-pw::before{content:attr(data-l);font-size:9.5px;text-transform:uppercase;color:#8B867C;font-weight:800;}
  .bcv-pbtn{width:100%;}
  .bcv-mr .bcv-m1,.bcv-mr .bcv-m3,.bcv-mr .bcv-st{display:flex;justify-content:space-between;align-items:center;gap:10px;text-align:left;}
  .bcv-mr .bcv-m3::before,.bcv-mr .bcv-st::before{content:attr(data-l);font-size:9px;text-transform:uppercase;color:#8B867C;font-weight:800;}
  .bcv-drw{width:100vw;max-height:100vh;border-radius:0;}
  .bcv-ovl{padding:0;}
}

/* ═══════════════════════════════════════════════════════════════════════
   THANH CHỈ TIÊU 2 TRỤC (cti-) — Của tôi/Cả phòng × Bài viết/Reach
   Sửa lỗi 1 khi nhân sự đăng nhập · bám mockup-thanh-chi-tieu.html (nền trắng, viền trái vàng)
   ═══════════════════════════════════════════════════════════════════════ */
.ct2-root .ct2-pstrip.cti-host{display:block;padding:0;gap:0;align-items:stretch}
.ct2-root .cti-sw{display:flex;gap:7px;align-items:center;padding:9px 12px 0;flex-wrap:wrap}
.ct2-root .cti-sg{display:inline-flex;background:#F4F2ED;border:1px solid var(--line);border-radius:9px;padding:2px;gap:2px}
.ct2-root .cti-sb{border:none;background:transparent;color:var(--soft);border-radius:7px;padding:6px 12px;font-size:11.5px;font-weight:700;white-space:nowrap;cursor:pointer;font-family:inherit}
.ct2-root .cti-sb.on{background:var(--navy);color:#fff}
.ct2-root .cti-sb.on.g{background:var(--gold);color:#fff}
.ct2-root .cti-sb:disabled{opacity:.4;cursor:not-allowed}
.ct2-root .cti-who{margin-left:auto;font-size:11px;color:var(--soft);font-weight:600}
.ct2-root .cti-who b{color:var(--text);font-weight:800}
.ct2-root .cti-bd{display:flex;align-items:center;gap:14px;padding:10px 12px 11px;flex-wrap:wrap}
.ct2-root .cti-nums{display:flex;align-items:center;gap:17px;flex-wrap:wrap;flex:1;min-width:240px}
.ct2-root .cti-nu{font-size:12.5px;color:var(--soft);white-space:nowrap}
.ct2-root .cti-nu b{font-size:14px;font-weight:900;color:var(--text);margin-left:5px}
.ct2-root .cti-nu b.g{color:var(--green)} .ct2-root .cti-nu b.y{color:var(--amber)} .ct2-root .cti-nu b.r{color:var(--red)}
.ct2-root .cti-over{font-size:10.5px;font-weight:800;color:var(--green);background:#E4F0EA;padding:3px 9px;border-radius:20px;white-space:nowrap}
.ct2-root .cti-prog{display:flex;align-items:center;gap:11px;flex-wrap:nowrap;min-width:300px}
.ct2-root .cti-ptx{font-size:11.5px;color:var(--soft);white-space:nowrap} .ct2-root .cti-ptx b{color:var(--text);font-weight:800}
.ct2-root .cti-bar{display:block;width:180px;height:9px;background:#E7E3DA;border-radius:6px;position:relative;flex-shrink:0}
.ct2-root .cti-bar i{display:block;height:100%;border-radius:6px}
.ct2-root .cti-bar i.g{background:var(--green)} .ct2-root .cti-bar i.y{background:var(--amber)} .ct2-root .cti-bar i.r{background:var(--red)}
.ct2-root .cti-bar u{position:absolute;top:-3px;width:2px;height:15px;background:var(--navy);border-radius:2px}
.ct2-root .cti-ppc{font-size:13px;font-weight:900;white-space:nowrap;min-width:38px;text-align:right}
.ct2-root .cti-ppc.g{color:var(--green)} .ct2-root .cti-ppc.y{color:var(--amber)} .ct2-root .cti-ppc.r{color:var(--red)}
.ct2-root .cti-cmp{display:flex;align-items:center;gap:8px;padding:0 12px 11px;font-size:11.5px;flex-wrap:wrap}
.ct2-root .cti-cbadge{font-size:10.5px;font-weight:800;padding:4px 10px;border-radius:20px;white-space:nowrap}
.ct2-root .cti-cbadge.up{background:#E4F0EA;color:var(--green)}
.ct2-root .cti-cbadge.dn{background:#F8E4DF;color:var(--red)}
.ct2-root .cti-cbadge.eq{background:var(--gold-cream);color:var(--amber)}
.ct2-root .cti-c2{color:var(--soft)} .ct2-root .cti-c2 b{color:var(--text);font-weight:800}
.ct2-root .cti-ceonote{border-top:1px solid var(--line);background:var(--gold-cream);padding:8px 12px;font-size:11.5px;color:var(--gold-ink)}
.ct2-root .cti-ceonote b{color:var(--text)}
.ct2-root .cti-byBtn{width:100%;border:none;border-top:1px solid var(--line);background:#fff;color:var(--soft);padding:8px;font-size:11.5px;font-weight:700;cursor:pointer;font-family:inherit}
.ct2-root .cti-byBtn:hover{color:var(--navy);background:var(--gold-pale)}
.ct2-root .cti-byBox{border-top:1px solid var(--line);padding:10px 12px;background:var(--gold-pale)}
.ct2-root .cti-mbt{font-size:9.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--soft);font-weight:800;margin-bottom:7px}
.ct2-root .cti-mbr{display:grid;grid-template-columns:1fr 120px 150px 48px;gap:10px;align-items:center;padding:6px 0;border-top:1px solid var(--line)}
.ct2-root .cti-mbr:first-of-type{border-top:none}
.ct2-root .cti-mbn{font-size:12px;font-weight:800;color:var(--text)} .ct2-root .cti-mbn span{font-size:9.5px;font-weight:600;color:var(--soft);margin-left:5px}
.ct2-root .cti-mbv{font-size:11px;color:var(--soft);text-align:right;white-space:nowrap} .ct2-root .cti-mbv b{color:var(--text);font-size:12.5px}
.ct2-root .cti-mbbar{display:block;height:7px;background:#E7E3DA;border-radius:5px;overflow:hidden} .ct2-root .cti-mbbar i{display:block;height:100%;border-radius:5px}
.ct2-root .cti-mbbar i.g{background:var(--green)} .ct2-root .cti-mbbar i.y{background:var(--amber)} .ct2-root .cti-mbbar i.r{background:var(--red)}
.ct2-root .cti-mbp{font-size:12px;font-weight:900;text-align:right} .ct2-root .cti-mbp.g{color:var(--green)} .ct2-root .cti-mbp.y{color:var(--amber)} .ct2-root .cti-mbp.r{color:var(--red)}
.ct2-root .cti-empty{font-size:12px;color:var(--soft);padding:6px 0}
@media(max-width:860px){
  .ct2-root .cti-bd{flex-direction:column;align-items:stretch;gap:10px}
  .ct2-root .cti-prog{min-width:0;flex-wrap:wrap} .ct2-root .cti-bar{flex:1;width:auto;min-width:120px}
  .ct2-root .cti-who{margin-left:0;width:100%}
  .ct2-root .cti-sg{flex:1} .ct2-root .cti-sb{flex:1;text-align:center}
  .ct2-root .cti-mbr{grid-template-columns:1fr 96px 46px} .ct2-root .cti-mbbar{display:none}
}
/* ── nhãn "Chưa giao chỉ tiêu" (Theo kênh — lỗi 4) ── */
.mktg-root .tck-nogiao{display:inline-block;font-size:10.5px;font-weight:800;color:var(--amber);background:var(--gold-cream);border:1px solid var(--gold-light);padding:3px 9px;border-radius:20px;white-space:nowrap}
/* ── nút "Mở phiếu giao việc của tôi" nổi bật (lỗi 5) ── */
.mktg-root .cmt-openphieu{display:flex;flex-direction:column;gap:2px;align-items:flex-start;background:linear-gradient(90deg,var(--gold),var(--gold-light));color:#fff;border-left:5px solid var(--gold-ink);box-shadow:0 3px 10px rgba(225,161,70,.28);padding:14px 16px}
.mktg-root .cmt-openphieu:hover{background:linear-gradient(90deg,var(--gold-ink),var(--gold))}
.mktg-root .cmt-obt{font-size:14.5px;font-weight:900}
.mktg-root .cmt-obs{font-size:11px;font-weight:600;opacity:.92}
/* Nhân sự xem phiếu đầy đủ của mình (y hệt CEO) — hiện thẳng, không giấu sau nút */
.mktg-root .cmt-selfsheet{margin-top:12px}

/* ═══════════════════════════════════════════════════════════════════════
   THƯ VIỆN NỘI DUNG MẪU — BẢN C (tvc-) · bám mockup-thu-vien-mau-C.html
   ═══════════════════════════════════════════════════════════════════════ */
.mktg-root .tvc-toph{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:11px}
.mktg-root .tvc-h1{font-size:20px;font-weight:900;color:var(--navy);display:flex;align-items:center;gap:8px}
.mktg-root .tvc-lock{display:flex;align-items:center;gap:8px;background:var(--gold-cream);border:1px solid #EEDDBE;border-radius:9px;padding:8px 12px;font-size:11.5px;color:#8B6520}
.mktg-root .tvc-lock b{color:var(--text)}
.mktg-root .tvc-srcb{margin-left:auto;border:1px solid var(--navy);background:var(--navy);color:#fff;border-radius:9px;padding:9px 14px;font-size:12px;font-weight:700;white-space:nowrap;cursor:pointer}
.mktg-root .tvc-srcb:hover{background:#1E3560}
/* ① KPI */
.mktg-root .tvc-kpi{display:flex;align-items:center;background:#fff;border:1px solid var(--line);border-left:4px solid var(--gold);border-radius:11px;padding:11px 15px;margin-bottom:9px;flex-wrap:wrap}
.mktg-root .tvc-kx{font-size:12px;color:var(--soft);white-space:nowrap;padding:0 14px}
.mktg-root .tvc-kx:first-of-type{padding-left:0}
.mktg-root .tvc-kx b{font-size:16px;font-weight:900;color:var(--text);margin-right:4px}
.mktg-root .tvc-kx b.g{color:var(--green)} .mktg-root .tvc-kx b.r{color:var(--red)}
.mktg-root .tvc-kx.warn{color:#8a3a2e} .mktg-root .tvc-kx.top{color:var(--gold-ink);font-weight:700;margin-left:auto;padding-right:0}
.mktg-root .tvc-kx.top b{font-size:12.5px;color:var(--text)}
.mktg-root .tvc-kdiv{width:1px;height:22px;background:#EFEDE8}
/* ② hộp cảnh báo gập */
.mktg-root .tvc-abox{background:#fff;border:1px solid #F0D9D3;border-left:4px solid var(--red);border-radius:11px;margin-bottom:13px;overflow:hidden}
.mktg-root .tvc-ab-h{display:flex;align-items:center;gap:10px;padding:11px 15px;cursor:pointer;background:#FDF4F2}
.mktg-root .tvc-ab-h:hover{background:#FBEBE7}
.mktg-root .tvc-ab-d{width:9px;height:9px;border-radius:50%;background:var(--red);flex-shrink:0}
.mktg-root .tvc-ab-t{display:flex;flex-direction:column;font-size:13px;font-weight:900;color:var(--red);flex:1}
.mktg-root .tvc-ab-s{font-size:11px;font-weight:600;color:#8a3a2e}
.mktg-root .tvc-fold{display:inline-flex;align-items:center;gap:6px;border:1.5px solid var(--gold);background:var(--gold-cream);border-radius:8px;color:#8B6520;font-size:11px;font-weight:800;padding:7px 12px;white-space:nowrap;flex-shrink:0;cursor:pointer}
.mktg-root .tvc-fold:hover{background:var(--gold);color:#fff}
.mktg-root .tvc-fold .ci{display:inline-block;font-size:9px}
.mktg-root .tvc-abox.cl .tvc-fold .ci{transform:rotate(-90deg)}
.mktg-root .tvc-ab-b{padding:12px;background:#F6F5F1;border-top:1px solid #EFEDE8}
.mktg-root .tvc-al{background:#fff;border:1px solid var(--line);border-left:4px solid var(--red);border-radius:10px;padding:12px 14px;margin-bottom:9px}
.mktg-root .tvc-al:last-child{margin-bottom:0}
.mktg-root .tvc-al.y{border-left-color:var(--gold)} .mktg-root .tvc-al.g{border-left-color:var(--green)}
.mktg-root .tvc-al-t{font-size:12.5px;font-weight:900;color:var(--red);margin-bottom:4px}
.mktg-root .tvc-al.y .tvc-al-t{color:var(--gold-ink)} .mktg-root .tvc-al.g .tvc-al-t{color:var(--green)}
.mktg-root .tvc-al-m{font-size:11.5px;color:var(--soft);line-height:1.65;margin-bottom:9px}.mktg-root .tvc-al-m b{color:var(--text)}
.mktg-root .tvc-lr{display:grid;grid-template-columns:1.1fr 128px 150px;gap:10px;align-items:center;background:#FDF4F2;border:1px solid #F0D9D3;border-radius:9px;padding:9px 11px;margin-bottom:6px}
.mktg-root .tvc-lt{font-size:12.5px;font-weight:900;color:var(--text)} .mktg-root .tvc-lm{font-size:11px;color:#8a3a2e}
.mktg-root .tvc-lb{border:1px solid var(--navy);background:var(--navy);color:#fff;border-radius:8px;padding:7px 10px;font-size:10.5px;font-weight:700;cursor:pointer}
.mktg-root .tvc-lb:hover{background:#1E3560}
.mktg-root .tvc-chip{display:inline-block;font-size:11px;font-weight:700;padding:6px 11px;border-radius:8px;margin:0 6px 6px 0;background:#fff;border:1px solid var(--line);color:var(--text)}
.mktg-root .tvc-chip.r{background:#FDF4F2;border-color:#F0D9D3;color:#8a3a2e}
.mktg-root .tvc-tr3{display:grid;grid-template-columns:24px 1fr 84px 100px;gap:10px;align-items:center;background:#E4F0EA;border:1px solid #CFE6DA;border-radius:9px;padding:9px 11px;margin-bottom:6px}
.mktg-root .tvc-tn3{width:21px;height:21px;border-radius:6px;background:var(--green);color:#fff;display:flex;align-items:center;justify-content:center;font-size:10.5px;font-weight:900}
.mktg-root .tvc-tt3{display:flex;flex-direction:column;font-size:12px;font-weight:900;color:var(--text)}
.mktg-root .tvc-ts3{font-size:9.5px;font-weight:600;color:var(--soft)}
.mktg-root .tvc-tv3{font-size:10.5px;color:var(--soft);text-align:right}.mktg-root .tvc-tv3 b{color:var(--text);font-size:12.5px;font-weight:900}.mktg-root .tvc-tv3.g b{color:var(--green)}
/* ③ tab kênh ngang */
.mktg-root .tvc-ktabs{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;margin-bottom:11px}
.mktg-root .tvc-ktab{position:relative;display:flex;align-items:center;gap:9px;background:#fff;border:1px solid var(--line);border-bottom:3px solid transparent;border-radius:12px;padding:10px 14px;min-width:150px;flex-shrink:0;cursor:pointer}
.mktg-root .tvc-ktab:hover{border-color:var(--gold)}
.mktg-root .tvc-kt-i{width:32px;height:32px;border-radius:10px;background:#F6F5F1;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.mktg-root .tvc-kt-i.all{color:var(--gold);font-size:15px} .mktg-root .tvc-kt-i .ki,.mktg-root .tvc-kt-i svg{width:18px;height:18px}
.mktg-root .tvc-kt-n{display:flex;flex-direction:column;align-items:flex-start;font-size:12.5px;font-weight:900;color:var(--text);text-align:left}
.mktg-root .tvc-kt-s{font-size:9.5px;font-weight:600;color:var(--soft)}
.mktg-root .tvc-kt-dot{position:absolute;top:8px;right:8px;width:8px;height:8px;border-radius:50%;background:var(--red)}
.mktg-root .tvc-ktab.on{background:var(--navy);border-color:var(--navy)}
.mktg-root .tvc-ktab.on .tvc-kt-n{color:#fff} .mktg-root .tvc-ktab.on .tvc-kt-s{color:rgba(255,255,255,.7)}
.mktg-root .tvc-ktab.on .tvc-kt-i{background:#fff;border-color:transparent}
.mktg-root .tvc-ktab.on.k-facebook{border-bottom-color:#1877F2} .mktg-root .tvc-ktab.on.k-tiktok{border-bottom-color:#000}
.mktg-root .tvc-ktab.on.k-youtube{border-bottom-color:#FF0000} .mktg-root .tvc-ktab.on.k-instagram{border-bottom-color:#E1306C}
.mktg-root .tvc-ktab.on.k-threads{border-bottom-color:#000} .mktg-root .tvc-ktab.on.k-website{border-bottom-color:#2E7D5B}
.mktg-root #tvc-kt-all.on{border-bottom-color:var(--gold)}
/* bộ lọc */
.mktg-root .tvc-fbar{display:flex;gap:8px;align-items:center;margin-bottom:11px;flex-wrap:wrap;background:#fff;border:1px solid var(--line);border-radius:11px;padding:10px 12px}
.mktg-root .tvc-fs{border:1px solid var(--line);background:#fff;border-radius:8px;padding:8px 12px;font-size:12px;font-weight:700;color:var(--text)}
.mktg-root .tvc-fsearch{flex:1;min-width:180px;border:1px solid var(--line);background:#fff;border-radius:8px;padding:9px 13px;font-size:12.5px}
.mktg-root .tvc-fbtn{border:1px solid var(--gold);background:var(--gold-cream);color:#8B6520;border-radius:9px;padding:9px 14px;font-size:12px;font-weight:700;white-space:nowrap;cursor:pointer}
.mktg-root .tvc-fbtn:hover{background:var(--gold);color:#fff}
/* panel */
.mktg-root .tvc-pnl-h{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--line);border-bottom:3px solid var(--gold);border-radius:12px 12px 0 0;padding:13px 15px}
.mktg-root .tvc-hd-i{width:40px;height:40px;border-radius:12px;background:#F6F5F1;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.mktg-root .tvc-hd-i.all{color:var(--gold);font-size:18px} .mktg-root .tvc-hd-i .ki,.mktg-root .tvc-hd-i svg{width:22px;height:22px}
.mktg-root .tvc-pnl-n{display:flex;flex-direction:column;font-size:16px;font-weight:900;color:var(--navy);flex:1}
.mktg-root .tvc-pnl-s{font-size:11px;font-weight:600;color:var(--soft)}
.mktg-root .tvc-wn{font-size:9.5px;font-weight:800;padding:5px 10px;border-radius:20px;background:#F8E4DF;color:var(--red);white-space:nowrap}
.mktg-root .tvc-wn.ok{background:#E4F0EA;color:var(--green)}
/* tuyến */
.mktg-root .tvc-tu{background:#fff;border:1px solid var(--line);border-top:none;border-left:4px solid var(--gold);overflow:hidden}
.mktg-root .tvc-tu:last-child{border-radius:0 0 12px 12px}
.mktg-root .tvc-tu.nb{border-left-color:#8a7a4a} .mktg-root .tvc-tu.th{border-left-color:var(--blue)}
.mktg-root .tvc-tu.tt{border-left-color:var(--gold-ink)} .mktg-root .tvc-tu.cd{border-left-color:var(--red)}
.mktg-root .tvc-tu.empty{border-left-color:var(--line);background:#FBFAF8;opacity:.72}
.mktg-root .tvc-tu-h{display:flex;align-items:center;gap:10px;padding:11px 13px;cursor:pointer}
.mktg-root .tvc-tu-h:hover{background:#F5F3EE} .mktg-root .tvc-tu.empty .tvc-tu-h{cursor:default} .mktg-root .tvc-tu.empty .tvc-tu-h:hover{background:transparent}
.mktg-root .tvc-tdot{width:10px;height:10px;border-radius:50%;flex-shrink:0;background:var(--gold)}
.mktg-root .tvc-tu.nb .tvc-tdot{background:#8a7a4a} .mktg-root .tvc-tu.th .tvc-tdot{background:var(--blue)}
.mktg-root .tvc-tu.tt .tvc-tdot{background:var(--gold-ink)} .mktg-root .tvc-tu.cd .tvc-tdot{background:var(--red)}
.mktg-root .tvc-tu.empty .tvc-tdot{background:#D6D1C7}
.mktg-root .tvc-tn{display:flex;flex-direction:column;font-size:13px;font-weight:900;color:var(--text);flex:1}
.mktg-root .tvc-tsub{font-size:9.5px;font-weight:600;color:var(--soft)}
.mktg-root .tvc-tc{font-size:10.5px;font-weight:800;color:var(--soft);white-space:nowrap} .mktg-root .tvc-tu.empty .tvc-tc{font-style:italic;color:var(--red)}
.mktg-root .tvc-car{width:26px;height:26px;border:1px solid var(--line);background:#fff;border-radius:8px;color:var(--navy);font-size:9px;flex-shrink:0;cursor:pointer}
.mktg-root .tvc-car .ci{display:inline-block} .mktg-root .tvc-tu.cl .tvc-car .ci{transform:rotate(-90deg)}
.mktg-root .tvc-tu-b{padding:12px;background:#F6F5F1;border-top:1px solid #EFEDE8} .mktg-root .tvc-tu.cl .tvc-tu-b{display:none}
/* thẻ loại */
.mktg-root .tvc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(178px,1fr));gap:11px}
.mktg-root .tvc-card{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;cursor:pointer;transition:.15s}
.mktg-root .tvc-card:hover{box-shadow:0 4px 14px rgba(13,27,51,.09)}
.mktg-root .tvc-card.empty{border-color:#F0D9D3;background:#FDF4F2}
.mktg-root .tvc-bia-wrap{position:relative}
.mktg-root .tvc-card .tv-cover{aspect-ratio:9/13;background:#EEE7D8}   /* khung bìa đồng bộ 9:13 cho MỌI thẻ (có ảnh hay chưa) */
.mktg-root .tvc-card .tv-cover img,.mktg-root .tvc-card .tv-cover img.landscape{object-fit:cover;background:transparent}   /* ⭐ ảnh PHỦ KÍN khung — kể cả ảnh ngang (bỏ viền đen letterbox) */
.mktg-root .tvc-card .tv-cover:not(:has(img)) .tv-cov-play{display:none}   /* ⭐ thẻ CHƯA có ảnh bìa → BỎ nút play (xấu), giữ khung gradient cho đồng bộ */
.mktg-root .tvc-card .tv-cover .tv-cov-play,.mktg-root .tv-ex .tv-cover .tv-cov-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);margin:0;z-index:3}   /* ⭐ nút play ĐÈ GIỮA khung (thẻ ngoài + bài mẫu trong popup), KHÔNG chen hàng làm lệch/co ảnh */
.mktg-root .tvc-card .tv-cover img,.mktg-root .tv-ex .tv-cover img{position:absolute;inset:0}   /* ⭐ ảnh phủ TUYỆT ĐỐI toàn khung (không bị play chen hẹp lại) */
.mktg-root .tvc-card .tv-cov-badge{display:none}     /* nền tảng đã hiện bằng icon kênh ở thân thẻ */
.mktg-root .tvc-nbadge{position:absolute;z-index:4;top:8px;left:8px;font-size:9.5px;font-weight:800;padding:4px 9px;border-radius:20px;background:rgba(13,27,51,.82);color:#fff}
.mktg-root .tvc-nbadge.r{background:var(--red)}
/* ★ (23/07) Thẻ "Chưa có mẫu" BẤM ĐƯỢC → thêm mẫu/bìa (Nhóm A) */
.mktg-root .tvc-card.empty.addable:hover{border-color:#E1A147;box-shadow:0 4px 14px rgba(225,161,71,.18)}
.mktg-root .tvc-addcta{margin-top:9px;font-size:11px;font-weight:800;color:#9C6A16;text-align:center;background:#FBF1DC;border:1px dashed #E7CF9A;border-radius:8px;padding:7px 6px}
.mktg-root .tvc-card.empty.addable:hover .tvc-addcta{background:#E1A147;color:#3a2708;border-color:#C8862F;border-style:solid}
.mktg-root .tvc-labadge{position:absolute;z-index:4;top:8px;right:8px;font-size:9px;font-weight:800;padding:3px 8px;border-radius:20px;background:var(--gold);color:#fff}
.mktg-root .tvc-cb{padding:10px 11px}
.mktg-root .tvc-cnm{font-size:13px;font-weight:900;color:var(--text);line-height:1.3;margin-bottom:6px}
.mktg-root .tvc-ctags{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:7px}
.mktg-root .tvc-ttag{font-size:9.5px;font-weight:800;padding:3px 8px;border-radius:6px;background:#F4F2ED;color:#6E6A62}
.mktg-root .tvc-ttag.nb{background:#EEE7D4;color:#8a7a4a} .mktg-root .tvc-ttag.th{background:#E7EEF7;color:var(--blue)}
.mktg-root .tvc-ttag.tt{background:#FBEFD8;color:var(--gold-ink)} .mktg-root .tvc-ttag.cd{background:#F8E4DF;color:var(--red)}
.mktg-root .tvc-df{font-size:9.5px;font-weight:700;padding:3px 8px;border-radius:6px;background:#F4F2ED;color:#6E6A62}
.mktg-root .tvc-kmrow{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:8px}
.mktg-root .tvc-kmini{width:17px;height:17px;display:inline-flex;align-items:center;justify-content:center;opacity:.85}
.mktg-root .tvc-kmini .ki,.mktg-root .tvc-kmini svg{width:15px;height:15px}
.mktg-root .tvc-cnums{display:flex;gap:8px;border-top:1px solid #EFEDE8;padding-top:8px}
.mktg-root .tvc-cn{flex:1} .mktg-root .tvc-cn .l{font-size:9px;font-weight:800;letter-spacing:.03em;text-transform:uppercase;color:var(--soft);margin-bottom:2px}
.mktg-root .tvc-cn .v{font-size:15px;font-weight:900;color:var(--text)}
.mktg-root .tvc-cn .v.g{color:var(--green)} .mktg-root .tvc-cn .v.y{color:var(--gold-ink)} .mktg-root .tvc-cn .v.r{color:var(--red)}
/* modal gộp */
.mktg-root .tvc-ov{position:fixed;inset:0;background:rgba(13,27,51,.42);display:none;align-items:center;justify-content:center;z-index:10120;padding:16px}
.mktg-root .tvc-ov.show{display:flex}
.mktg-root .tvc-mbox{background:#fff;border-radius:14px;width:100%;max-width:460px;overflow:hidden;box-shadow:0 18px 50px rgba(13,27,51,.3)}
.mktg-root .tvc-mhd{background:var(--navy);color:#fff;font-size:14px;font-weight:900;padding:14px 16px}
.mktg-root .tvc-mb{padding:16px}
.mktg-root .tvc-mrow{font-size:12.5px;color:var(--text);margin-bottom:9px}
.mktg-root .tvc-in{width:100%;border:1px solid var(--line);border-radius:9px;padding:10px 12px;font-size:13px;color:var(--text)}
.mktg-root .tvc-mwarn{margin-top:11px;background:var(--gold-cream);border:1px solid #EEDDBE;border-radius:9px;padding:10px 12px;font-size:11.5px;color:#8B6520;line-height:1.6}
.mktg-root .tvc-mft{display:flex;justify-content:flex-end;gap:9px;padding:12px 16px;border-top:1px solid var(--line);background:#FBFAF8}
.mktg-root .tvc-btn{border:1px solid var(--line);background:#fff;color:var(--text);border-radius:9px;padding:9px 16px;font-size:12.5px;font-weight:700;cursor:pointer}
.mktg-root .tvc-btn.navy{background:var(--navy);border-color:var(--navy);color:#fff} .mktg-root .tvc-btn.navy:hover{background:#1E3560}
.mktg-root .tvc-btn.ghost:hover{background:#F5F3EE}
@media(max-width:860px){
  .mktg-root .tvc-srcb{margin-left:0;width:100%}
  .mktg-root .tvc-kpi{gap:4px} .mktg-root .tvc-kx{padding:4px 10px} .mktg-root .tvc-kx.top{margin-left:0;width:100%;padding-left:0}
  .mktg-root .tvc-lr{grid-template-columns:1fr;gap:6px} .mktg-root .tvc-tr3{grid-template-columns:22px 1fr 70px}
  .mktg-root .tvc-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}
}


/* ============================================================================
   ptb- : Plan thang 2 che do (Bang chia chi tieu + Theo kenh) — bam mockup-plan-thang-B
   Mau literal (khong dung var) de khop 100% mockup, chong loi var-scope.
   ============================================================================ */
/* -- mode buttons -- */
.mktg-root .ptb-modes{display:flex;gap:9px;align-items:stretch;margin:0 0 12px;flex-wrap:wrap;}
.mktg-root .ptb-mb{display:flex;align-items:center;gap:9px;background:#fff;border:1px solid #E0DDD6;border-radius:11px;padding:10px 15px;flex:1;min-width:230px;text-align:left;cursor:pointer;}
.mktg-root .ptb-mb.on{background:#0D1B33;border-color:#0D1B33;}
.mktg-root .ptb-mbi{width:30px;height:30px;border-radius:9px;background:#F6F5F1;border:1px solid #E0DDD6;display:flex;align-items:center;justify-content:center;font-size:14px;flex-shrink:0;}
.mktg-root .ptb-mb.on .ptb-mbi{background:#E1A146;border-color:#E1A146;color:#fff;}
.mktg-root .ptb-mbn{display:flex;flex-direction:column;font-size:13px;font-weight:900;color:#26241F;}
.mktg-root .ptb-mb.on .ptb-mbn{color:#fff;}
.mktg-root .ptb-mbs{font-size:10px;font-weight:600;color:#8B867C;}
.mktg-root .ptb-mb.on .ptb-mbs{color:rgba(255,255,255,.7);}
/* -- fold button (abox + ngbox) -- */
.mktg-root .ptb-fold{display:inline-flex;align-items:center;gap:6px;border:1.5px solid #E1A146;background:#FBF1DC;border-radius:8px;color:#8B6520;font-size:11px;font-weight:800;padding:7px 12px;white-space:nowrap;flex-shrink:0;cursor:pointer;}
.mktg-root .ptb-fold .ci{display:inline-block;transition:transform .15s;font-size:9px;}
.mktg-root .ptb-abox.cl .ptb-fold .ci,.mktg-root .ptb-ngbox.cl .ptb-fold .ci{transform:rotate(-90deg);}
/* -- canh bao gap -- */
.mktg-root .ptb-abox{background:#fff;border:1px solid #F0D9D3;border-left:4px solid #C0392B;border-radius:11px;margin-bottom:13px;overflow:hidden;}
.mktg-root .ptb-abh{display:flex;align-items:center;gap:10px;padding:11px 15px;cursor:pointer;background:#FDF4F2;}
.mktg-root .ptb-abh:hover{background:#FBEBE7;}
.mktg-root .ptb-abd{width:9px;height:9px;border-radius:50%;background:#C0392B;flex-shrink:0;}
.mktg-root .ptb-abt{display:flex;flex-direction:column;font-size:13px;font-weight:900;color:#C0392B;flex:1;}
.mktg-root .ptb-abs{font-size:11px;font-weight:600;color:#8a3a2e;}
.mktg-root .ptb-abb{padding:12px;background:#F6F5F1;border-top:1px solid #EFEDE8;}
.mktg-root .ptb-abox.cl .ptb-abb{display:none;}
.mktg-root .ptb-al{background:#fff;border:1px solid #E0DDD6;border-left:4px solid #C0392B;border-radius:10px;padding:12px 14px;margin-bottom:9px;}
.mktg-root .ptb-al:last-child{margin-bottom:0;}
.mktg-root .ptb-al.y{border-left-color:#E1A146;} .mktg-root .ptb-al.g{border-left-color:#2E7D5B;}
.mktg-root .ptb-alt{font-size:12.5px;font-weight:900;color:#C0392B;margin-bottom:4px;}
.mktg-root .ptb-al.y .ptb-alt{color:#C6862F;} .mktg-root .ptb-al.g .ptb-alt{color:#2E7D5B;}
.mktg-root .ptb-alm{font-size:11.5px;color:#8B867C;line-height:1.65;margin-bottom:9px;} .mktg-root .ptb-alm b{color:#26241F;}
.mktg-root .ptb-al .ptb-alm:last-child{margin-bottom:0;}
.mktg-root .ptb-hchip{display:inline-block;font-size:11px;padding:6px 11px;border-radius:8px;margin:0 6px 6px 0;background:#FDF4F2;border:1px solid #F0D9D3;color:#26241F;font-weight:700;}
.mktg-root .ptb-hchip em{font-style:normal;color:#8B867C;font-weight:600;} .mktg-root .ptb-hchip b{color:#C0392B;}
.mktg-root .ptb-qr{display:grid;grid-template-columns:26px 120px 1fr 78px 120px;gap:10px;align-items:center;background:#FDF4F2;border:1px solid #F0D9D3;border-radius:9px;padding:9px 11px;margin-bottom:6px;}
.mktg-root .ptb-qr.ok{background:#fff;border-color:#E0DDD6;}
.mktg-root .ptb-av2{width:24px;height:24px;border-radius:7px;background:#E1A146;color:#fff;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:900;}
.mktg-root .ptb-qn{font-size:12.5px;font-weight:900;}
.mktg-root .ptb-qbar{display:block;height:8px;background:#E7E3DA;border-radius:5px;overflow:hidden;}
.mktg-root .ptb-qbar i{display:block;height:100%;background:#C0392B;border-radius:5px;} .mktg-root .ptb-qbar i.g{background:#2E7D5B;}
.mktg-root .ptb-qv{font-size:11px;color:#8B867C;text-align:right;} .mktg-root .ptb-qv b{font-size:14px;font-weight:900;color:#26241F;} .mktg-root .ptb-qv.r b{color:#C0392B;}
.mktg-root .ptb-qp{font-size:10.5px;color:#C0392B;font-weight:700;text-align:right;} .mktg-root .ptb-qr.ok .ptb-qp{color:#8B867C;}
/* -- nguong -- */
.mktg-root .ptb-ngbox{background:#fff;border:1px solid #E0DDD6;border-left:4px solid #0D1B33;border-radius:12px;margin-bottom:13px;overflow:hidden;}
.mktg-root .ptb-ngh{display:flex;align-items:center;gap:10px;padding:12px 15px;background:#FBFAF8;border-bottom:2px solid #E1A146;cursor:pointer;}
.mktg-root .ptb-ngh:hover{background:#F5F3EE;} .mktg-root .ptb-ngbox.cl .ptb-ngh{border-bottom-color:#EFEDE8;background:#fff;}
.mktg-root .ptb-ngt{display:flex;flex-direction:column;font-size:13.5px;font-weight:900;flex:1;}
.mktg-root .ptb-ngs{font-size:10.5px;font-weight:600;color:#8B867C;}
.mktg-root .ptb-ngb{padding:13px;background:#F6F5F1;} .mktg-root .ptb-ngbox.cl .ptb-ngb{display:none;}
.mktg-root .ptb-ngnote{background:#FBF1DC;border:1px solid #EEDDBE;border-radius:9px;padding:10px 13px;margin-bottom:11px;font-size:11.5px;color:#8B6520;line-height:1.7;} .mktg-root .ptb-ngnote b{color:#26241F;}
.mktg-root .ptb-ng{display:grid;grid-template-columns:11px 92px 128px 1fr 92px 118px;gap:11px;align-items:center;background:#fff;border:1px solid #E0DDD6;border-left:4px solid #E1A146;border-radius:10px;padding:11px 13px;margin-bottom:7px;}
.mktg-root .ptb-ng:last-child{margin-bottom:0;}
.mktg-root .ptb-ng.nb{border-left-color:#8a7a4a;} .mktg-root .ptb-ng.th{border-left-color:#2F5FA8;} .mktg-root .ptb-ng.tt{border-left-color:#C6862F;} .mktg-root .ptb-ng.cd{border-left-color:#C0392B;}
.mktg-root .ptb-ngdot{width:10px;height:10px;border-radius:50%;background:#E1A146;}
.mktg-root .ptb-ng.nb .ptb-ngdot{background:#8a7a4a;} .mktg-root .ptb-ng.th .ptb-ngdot{background:#2F5FA8;} .mktg-root .ptb-ng.tt .ptb-ngdot{background:#C6862F;} .mktg-root .ptb-ng.cd .ptb-ngdot{background:#C0392B;}
.mktg-root .ptb-ngn{font-size:12.5px;font-weight:900;}
.mktg-root .ptb-ngi{display:flex;align-items:center;gap:5px;}
.mktg-root .ptb-ngl{font-size:8.5px;text-transform:uppercase;color:#8B867C;font-weight:800;}
.mktg-root .ptb-ngi input{width:44px;border:1px solid #E1A146;background:#FBF1DC;border-radius:7px;padding:6px;text-align:center;font-size:13px;font-weight:900;color:#8B6520;font-family:inherit;}
.mktg-root .ptb-ngi input:focus{outline:none;box-shadow:0 0 0 2px rgba(225,161,70,.25);}
.mktg-root .ptb-ngi em{font-style:normal;font-size:9px;color:#8B867C;font-weight:700;}
.mktg-root .ptb-ngbar{position:relative;display:block;height:12px;background:#E7E3DA;border-radius:6px;overflow:visible;}
.mktg-root .ptb-ngbar b{position:absolute;left:0;top:0;height:100%;background:#0D1B33;border-radius:6px;}
.mktg-root .ptb-ngbar .tar{position:absolute;top:-4px;width:2px;height:20px;background:#C0392B;border-radius:2px;z-index:2;}
.mktg-root .ptb-ngv{font-size:10px;color:#8B867C;text-align:right;}
.mktg-root .ptb-ngv b{display:block;font-size:15px;font-weight:900;color:#26241F;} .mktg-root .ptb-ngv em{display:block;font-style:normal;font-size:9px;color:#8B867C;}
.mktg-root .ptb-ngs2{font-size:9.5px;font-weight:800;padding:6px 10px;border-radius:20px;text-align:center;white-space:nowrap;color:#8B867C;background:#F1EFEA;}
.mktg-root .ptb-ngs2.st-ok{background:#E4F0EA;color:#2E7D5B;}
.mktg-root .ptb-ngs2.st-over{background:#FBEFD8;color:#C6862F;}
.mktg-root .ptb-ngs2.st-under{background:#F8E4DF;color:#C0392B;}
/* -- bang ma tran -- */
.mktg-root .ptb-mt{background:#fff;border:1px solid #E0DDD6;border-radius:12px;overflow:hidden;}
.mktg-root .ptb-grid{display:grid;grid-template-columns:1.5fr 86px 86px 86px 86px 74px 132px 92px;gap:7px;align-items:center;}
.mktg-root .ptb-mthd{background:#F4F2ED;border-bottom:2px solid #E1A146;padding:10px 13px;}
.mktg-root .ptb-mthd span{font-size:8.5px;letter-spacing:.05em;text-transform:uppercase;color:#6E6A62;font-weight:800;text-align:center;}
.mktg-root .ptb-mthd span:first-child{text-align:left;color:#26241F;}
.mktg-root .ptb-mthd .c-nb{color:#8a7a4a;} .mktg-root .ptb-mthd .c-th{color:#2F5FA8;} .mktg-root .ptb-mthd .c-tt{color:#C6862F;} .mktg-root .ptb-mthd .c-cd{color:#C0392B;}
.mktg-root .ptb-mtp{background:#FBFAF8;border-bottom:1px solid #E0DDD6;border-left:5px solid #E0DDD6;padding:10px 13px;cursor:pointer;}
.mktg-root .ptb-mtp:hover{background:#F5F3EE;}
.mktg-root .ptb-pn{display:flex;align-items:center;gap:10px;}
.mktg-root .ptb-pbox{width:30px;height:30px;border-radius:9px;display:flex;align-items:center;justify-content:center;flex-shrink:0;border:1px solid #E0DDD6;background:#fff;}
.mktg-root .ptb-pbox svg{width:18px;height:18px;display:block;}
.mktg-root .ptb-pbox.sm{width:34px;height:34px;border-radius:10px;background:#F6F5F1;}
.mktg-root .ptb-pbox.sm svg{width:20px;height:20px;}
.mktg-root .ptb-mtp.p-facebook{border-left-color:#1877F2;} .mktg-root .ptb-mtp.p-facebook .ptb-pbox{background:#EDF3FC;border-color:#D3E3F8;}
.mktg-root .ptb-mtp.p-tiktok{border-left-color:#26241F;} .mktg-root .ptb-mtp.p-tiktok .ptb-pbox{background:#F2F0EC;border-color:#E0DDD6;}
.mktg-root .ptb-mtp.p-youtube{border-left-color:#FF0000;} .mktg-root .ptb-mtp.p-youtube .ptb-pbox{background:#FDEEEC;border-color:#F6D8D3;}
.mktg-root .ptb-mtp.p-instagram{border-left-color:#E1306C;} .mktg-root .ptb-mtp.p-instagram .ptb-pbox{background:#FCEDF3;border-color:#F5D6E3;}
.mktg-root .ptb-mtp.p-threads{border-left-color:#26241F;} .mktg-root .ptb-mtp.p-threads .ptb-pbox{background:#F2F0EC;border-color:#E0DDD6;}
.mktg-root .ptb-mtp.p-website{border-left-color:#2E7D5B;} .mktg-root .ptb-mtp.p-website .ptb-pbox{background:#EBF4EF;border-color:#CFE6DA;}
.mktg-root .ptb-mpn{display:flex;flex-direction:column;font-size:13px;font-weight:900;}
.mktg-root .ptb-mps{font-size:9.5px;font-weight:600;color:#8B867C;}
.mktg-root .ptb-parw{margin-left:auto;color:#8B867C;font-size:11px;}
.mktg-root .ptb-mtr{background:#fff;border-bottom:1px solid #EFEDE8;padding:9px 13px;}
.mktg-root .ptb-mtr:hover{background:#FBFAF8;}
.mktg-root .ptb-mtr.open{background:#FBFAF8;}
.mktg-root .ptb-mkn{display:flex;align-items:center;gap:4px;}
.mktg-root .ptb-arw{border:none;background:transparent;color:#8B867C;font-size:12px;cursor:pointer;width:20px;flex-shrink:0;padding:0;}
.mktg-root .ptb-mkl{display:flex;flex-direction:column;font-size:12.5px;font-weight:800;}
.mktg-root .ptb-mks{font-size:9.5px;font-weight:600;color:#8B867C;}
.mktg-root .ptb-cell{display:block;position:relative;}
.mktg-root .ptb-cell input{width:100%;border:1px solid #E0DDD6;background:#fff;border-radius:8px;padding:7px;text-align:center;font-size:14px;font-weight:900;color:#26241F;font-family:inherit;}
.mktg-root .ptb-cell input:focus{outline:none;border-color:#E1A146;box-shadow:0 0 0 2px rgba(225,161,70,.2);}
.mktg-root .ptb-cell.zero input{background:#FDF4F2;border-color:#F0D9D3;color:#C0392B;}
.mktg-root .ptb-cell.ro{text-align:center;}
.mktg-root .ptb-mvc{display:inline-block;font-size:14px;font-weight:900;color:#26241F;padding:7px 0;}
.mktg-root .ptb-cell.ro.zero .ptb-mvc{color:#C0392B;}
.mktg-root .ptb-multi{font-style:normal;font-size:10px;color:#8B867C;margin-left:2px;}
.mktg-root .ptb-warn0{position:absolute;top:-5px;right:-4px;width:15px;height:15px;border-radius:50%;background:#C0392B;color:#fff;font-size:9px;font-weight:900;font-style:normal;display:flex;align-items:center;justify-content:center;}
.mktg-root .ptb-mv{text-align:center;font-size:14px;font-weight:900;}
.mktg-root .ptb-mv.c-nb{color:#8a7a4a;} .mktg-root .ptb-mv.c-th{color:#2F5FA8;} .mktg-root .ptb-mv.c-tt{color:#C6862F;} .mktg-root .ptb-mv.c-cd{color:#C0392B;}
.mktg-root .ptb-mv.tot{color:#0D1B33;font-size:15px;} .mktg-root .ptb-mv.tot.big{font-size:19px;}
.mktg-root .ptb-mv em{font-style:normal;display:block;font-size:9px;font-weight:700;color:#8B867C;margin-top:1px;}
.mktg-root .ptb-mv.gray{color:#C6C1B6;font-size:11px;font-weight:700;}
.mktg-root .ptb-mv.who{display:flex;align-items:center;gap:6px;font-size:11.5px;font-weight:800;text-align:left;}
.mktg-root .ptb-av{width:22px;height:22px;border-radius:6px;background:#E1A146;color:#fff;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:900;flex-shrink:0;}
.mktg-root .ptb-lock{font-style:normal;font-size:10px;opacity:.5;margin-left:2px;}
.mktg-root .ptb-mchi{text-align:center;}
.mktg-root .ptb-lst{border:1px solid #E0DDD6;background:#fff;color:#0D1B33;border-radius:8px;padding:7px 9px;font-size:10.5px;font-weight:700;white-space:nowrap;cursor:pointer;}
.mktg-root .ptb-lst:hover{border-color:#E1A146;background:#FBF1DC;}
.mktg-root .ptb-lst.on{background:#0D1B33;border-color:#0D1B33;color:#fff;}
.mktg-root .ptb-mtf{background:#FBF1DC;border-top:2px solid #E1A146;padding:13px;}
.mktg-root .ptb-mfn{font-size:11.5px;font-weight:900;color:#26241F;letter-spacing:.03em;}
.mktg-root .ptb-mtf .ptb-mv.c-nb{color:#8a7a4a;} .mktg-root .ptb-mtf .ptb-mv.c-th{color:#2F5FA8;} .mktg-root .ptb-mtf .ptb-mv.c-tt{color:#C6862F;} .mktg-root .ptb-mtf .ptb-mv.c-cd{color:#C0392B;}
.mktg-root .ptb-mtf .ptb-mv.tot{color:#C6862F;} .mktg-root .ptb-mtf .ptb-mv em{color:#8B867C;}
/* -- khoi chi tiet -- */
.mktg-root .ptb-mtd{background:#F6F5F1;border-bottom:1px solid #E0DDD6;padding:12px 13px 12px 39px;}
.mktg-root .ptb-dth{font-size:11px;color:#8B867C;margin-bottom:9px;font-weight:600;} .mktg-root .ptb-dth b{color:#26241F;}
.mktg-root .ptb-dtt{display:flex;align-items:center;gap:9px;background:#fff;border:1px solid #E0DDD6;border-left:3px solid #E1A146;border-radius:8px 8px 0 0;padding:8px 11px;margin-top:7px;}
.mktg-root .ptb-dtt.nb{border-left-color:#8a7a4a;} .mktg-root .ptb-dtt.th{border-left-color:#2F5FA8;} .mktg-root .ptb-dtt.tt{border-left-color:#C6862F;} .mktg-root .ptb-dtt.cd{border-left-color:#C0392B;}
.mktg-root .ptb-dtt.empty{background:#FDF4F2;border-color:#F0D9D3;border-left-color:#C0392B;border-radius:8px;}
.mktg-root .ptb-dtdot{width:8px;height:8px;border-radius:50%;background:#E1A146;flex-shrink:0;}
.mktg-root .ptb-dtt.nb .ptb-dtdot{background:#8a7a4a;} .mktg-root .ptb-dtt.th .ptb-dtdot{background:#2F5FA8;} .mktg-root .ptb-dtt.tt .ptb-dtdot{background:#C6862F;} .mktg-root .ptb-dtt.cd .ptb-dtdot{background:#C0392B;}
.mktg-root .ptb-dtn{font-size:11.5px;font-weight:900;color:#26241F;}
.mktg-root .ptb-dtc{font-size:10px;color:#8B867C;font-weight:700;flex:1;}
.mktg-root .ptb-dte{font-size:10.5px;color:#C0392B;font-style:italic;flex:1;}
.mktg-root .ptb-dadd{border:1px solid #E0DDD6;background:#fff;color:#0D1B33;border-radius:7px;padding:5px 10px;font-size:10px;font-weight:700;cursor:pointer;}
.mktg-root .ptb-dadd:hover{border-color:#E1A146;background:#FBF1DC;}
.mktg-root .ptb-dtr{display:grid;grid-template-columns:1.3fr 122px 82px 118px 158px 26px;gap:9px;align-items:center;background:#fff;border:1px solid #E0DDD6;border-top:none;padding:8px 11px;}
.mktg-root .ptb-dtr:last-of-type{border-radius:0 0 8px 8px;}
.mktg-root .ptb-dsel{display:flex;flex-direction:column;gap:3px;}
.mktg-root .ptb-dsl{font-size:7.5px;letter-spacing:.04em;text-transform:uppercase;color:#8B867C;font-weight:800;}
.mktg-root .ptb-dsel select,.mktg-root .ptb-sel{border:1px solid #E0DDD6;background:#fff;border-radius:7px;padding:6px 7px;font-size:11px;font-weight:700;color:#26241F;font-family:inherit;width:100%;height:auto;}
.mktg-root .ptb-dsel select:focus,.mktg-root .ptb-sel:focus{outline:none;border-color:#E1A146;}
.mktg-root .ptb-wsel{display:flex;align-items:center;gap:5px;}
.mktg-root .ptb-av3{width:21px;height:21px;border-radius:6px;background:#E1A146;color:#fff;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:900;flex-shrink:0;}
.mktg-root .ptb-dsel.who.lech .ptb-av3{background:#2F5FA8;}
.mktg-root .ptb-dsel.who.lech select{border-color:#2F5FA8;background:#E7EEF7;color:#2F5FA8;}
.mktg-root .ptb-dtl{font-size:12px;font-weight:700;color:#26241F;}
.mktg-root .ptb-dtv{display:flex;align-items:center;gap:5px;}
.mktg-root .ptb-dtv input{width:52px;border:1px solid #E0DDD6;background:#fff;border-radius:7px;padding:6px;text-align:center;font-size:13px;font-weight:900;color:#26241F;font-family:inherit;}
.mktg-root .ptb-dtv input:focus{outline:none;border-color:#E1A146;box-shadow:0 0 0 2px rgba(225,161,70,.2);}
.mktg-root .ptb-dtv b{font-size:13px;font-weight:900;} .mktg-root .ptb-dtv em{font-style:normal;font-size:9px;color:#8B867C;font-weight:700;}
.mktg-root .ptb-dtw{font-size:11px;color:#8B867C;font-weight:700;text-align:center;}
.mktg-root .ptb-dx{width:22px;height:22px;border:1px solid #E0DDD6;background:#fff;color:#8B867C;border-radius:6px;font-size:9px;cursor:pointer;}
.mktg-root .ptb-dx:hover{border-color:#C0392B;color:#C0392B;background:#FDF4F2;}
.mktg-root .ptb-ddtag{font-size:10.5px;font-weight:800;padding:4px 9px;border-radius:6px;display:inline-block;}
/* -- theo kenh: tab + card -- */
.mktg-root .ptb-ktabs{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;margin-bottom:11px;}
.mktg-root .ptb-ktab{position:relative;display:flex;align-items:center;gap:9px;background:#fff;border:1px solid #E0DDD6;border-bottom:3px solid transparent;border-radius:12px;padding:10px 14px;min-width:148px;flex-shrink:0;cursor:pointer;}
.mktg-root .ptb-ktab:hover{border-color:#E1A146;}
.mktg-root .ptb-kti{width:32px;height:32px;border-radius:10px;background:#F6F5F1;border:1px solid #E0DDD6;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.mktg-root .ptb-kti svg{width:20px;height:20px;display:block;}
.mktg-root .ptb-kti.all{color:#E1A146;font-size:15px;}
.mktg-root .ptb-ktn{display:flex;flex-direction:column;align-items:flex-start;font-size:12.5px;font-weight:900;color:#26241F;text-align:left;}
.mktg-root .ptb-kts{font-size:9.5px;font-weight:600;color:#8B867C;}
.mktg-root .ptb-ktdot{position:absolute;top:8px;right:8px;width:8px;height:8px;border-radius:50%;background:#C0392B;}
.mktg-root .ptb-ktab.on{background:#0D1B33;border-color:#0D1B33;}
.mktg-root .ptb-ktab.on .ptb-ktn{color:#fff;} .mktg-root .ptb-ktab.on .ptb-kts{color:rgba(255,255,255,.7);} .mktg-root .ptb-ktab.on .ptb-kti{background:#fff;border-color:transparent;}
.mktg-root .ptb-ktab.on.k-facebook{border-bottom-color:#1877F2;} .mktg-root .ptb-ktab.on.k-tiktok{border-bottom-color:#000;} .mktg-root .ptb-ktab.on.k-youtube{border-bottom-color:#FF0000;} .mktg-root .ptb-ktab.on.k-instagram{border-bottom-color:#E1306C;} .mktg-root .ptb-ktab.on.k-threads{border-bottom-color:#000;} .mktg-root .ptb-ktab.on.k-website{border-bottom-color:#2E7D5B;}
.mktg-root .ptb-ktab.on#ptb-kt-all{border-bottom-color:#E1A146;}
.mktg-root .ptb-ch{background:#fff;border:1px solid #E0DDD6;border-radius:12px;margin-bottom:9px;overflow:hidden;}
.mktg-root .ptb-chh{display:flex;align-items:center;gap:11px;padding:12px 14px;border-bottom:1px solid #EFEDE8;}
.mktg-root .ptb-chn{display:flex;flex-direction:column;font-size:13.5px;font-weight:900;flex:1;}
.mktg-root .ptb-chs{font-size:10px;font-weight:600;color:#8B867C;}
.mktg-root .ptb-chv{font-size:19px;font-weight:900;color:#0D1B33;text-align:right;}
.mktg-root .ptb-chv em{display:block;font-style:normal;font-size:8.5px;font-weight:700;color:#8B867C;text-transform:uppercase;}
.mktg-root .ptb-wn{font-size:9.5px;font-weight:800;padding:5px 10px;border-radius:20px;background:#F8E4DF;color:#C0392B;white-space:nowrap;}
.mktg-root .ptb-wn.ok{background:#E4F0EA;color:#2E7D5B;}
.mktg-root .ptb-chb{display:flex;gap:6px;padding:11px 14px;background:#F6F5F1;flex-wrap:wrap;align-items:center;}
.mktg-root .ptb-chip4{font-size:11px;font-weight:700;padding:7px 12px;border-radius:8px;white-space:nowrap;}
.mktg-root .ptb-chip4 b{font-size:13px;font-weight:900;margin-left:3px;}
.mktg-root .ptb-chip4.nb{background:#EFE9D8;color:#8a7a4a;} .mktg-root .ptb-chip4.th{background:#E7EEF7;color:#2F5FA8;} .mktg-root .ptb-chip4.tt{background:#FBF1DC;color:#9C6A16;} .mktg-root .ptb-chip4.cd{background:#F8E4DF;color:#C0392B;}
.mktg-root .ptb-chip4.off{background:#FDF4F2;color:#C0392B;border:1px dashed #F0D9D3;}
.mktg-root .ptb-add,.mktg-root .ptb-lib{border:1px solid #E0DDD6;background:#fff;color:#0D1B33;border-radius:8px;padding:7px 12px;font-size:11px;font-weight:700;cursor:pointer;}
.mktg-root .ptb-add{margin-left:auto;} .mktg-root .ptb-add:hover,.mktg-root .ptb-lib:hover{border-color:#E1A146;background:#FBF1DC;}
.mktg-root .ptb-ch .ptb-mtd{padding-left:14px;border-bottom:none;}
/* -- mobile -- */
@media(max-width:860px){
.mktg-root .ptb-grid,.mktg-root .ptb-mtp{grid-template-columns:1fr;gap:6px;}
.mktg-root .ptb-mthd{display:none;}
.mktg-root .ptb-mtr{padding:12px;}
.mktg-root .ptb-cell,.mktg-root .ptb-mv{display:flex;justify-content:space-between;align-items:center;gap:10px;text-align:left;}
.mktg-root .ptb-cell::before,.mktg-root .ptb-mv::before{content:attr(data-l);font-size:9.5px;text-transform:uppercase;color:#8B867C;font-weight:800;}
.mktg-root .ptb-cell input{width:80px;flex:0 0 auto;} .mktg-root .ptb-lst{width:100%;} .mktg-root .ptb-mchi{text-align:left;}
.mktg-root .ptb-mv em{display:inline;margin:0 0 0 4px;}
.mktg-root .ptb-mtp .ptb-mv{display:none;}
.mktg-root .ptb-mtf .ptb-mv{display:flex;}
.mktg-root .ptb-dtr{grid-template-columns:1fr 1fr;gap:8px;}
.mktg-root .ptb-dtr>.ptb-dx{grid-column:2;justify-self:end;}
.mktg-root .ptb-mtd{padding-left:13px;}
.mktg-root .ptb-ng{grid-template-columns:1fr 1fr;row-gap:8px;}
.mktg-root .ptb-ng .ptb-ngbar,.mktg-root .ptb-ng .ptb-ngn{grid-column:1/-1;}
.mktg-root .ptb-qr{grid-template-columns:26px 1fr;row-gap:6px;}
.mktg-root .ptb-qbar,.mktg-root .ptb-qv,.mktg-root .ptb-qp{grid-column:2/-1;text-align:left;}
.mktg-root .ptb-chv{font-size:16px;}
}

/* ctcfg: keo-tha doi vi tri nhom noi dung (tay cam grip) */
.ct2-cfg .ctcfg-namewrap{display:flex;align-items:center;gap:6px}
.ct2-cfg .ctcfg-namewrap .ctcfg-in{flex:1;width:auto;min-width:0}
.ct2-cfg .ctcfg-grip{cursor:grab;color:#B9B3A6;font-size:16px;line-height:1;letter-spacing:-3px;user-select:none;flex:0 0 auto;padding:2px 1px}
.ct2-cfg .ctcfg-grip:hover{color:#C6862F}
.ct2-cfg .ctcfg-grip:active{cursor:grabbing}
.ct2-cfg tr.ctcfg-row.ctcfg-dragging{opacity:.4}
.ct2-cfg tr.ctcfg-row.ctcfg-over td{box-shadow:inset 0 3px 0 0 #E1A146;background:#FBF7EE}

/* cdm: panel Nguong ty le pheu (chuyen tu Plan sang Cai dat phong) */
.mktg-root .cdm-ngdot{display:inline-block;width:11px;height:11px;border-radius:50%;margin-right:8px;vertical-align:middle}
.mktg-root .cdm-ngrow .fl{vertical-align:middle}
.mktg-root .cdm-ngtot{margin-top:13px;padding-top:12px;border-top:1px dashed #E0DDD6;font-size:13px;color:#26241F}
.mktg-root .cdm-ngtot b{font-size:16px;color:#0D1B33;font-weight:800}
.mktg-root .cdm-nghint{color:#8B867C;font-size:11.5px;margin-left:4px}

/* qp: dong ngay "Chua co ngay chup" (luon hien cho de hinh dung) */
.mktg-root .qp2-nodate{color:#9a948a;font-style:italic;font-size:12px}

/* ============================================================
   ⭐ 15/07 — SEEDING · MỜI CẶP ĐÔI REVIEW: link kênh · ảnh bìa · cửa Leader duyệt
   Port từ thiet-ke/10-marketing/mockup-seeding-moi-review.html (đúng mã màu & số điểm ảnh).
   Scope .smr-root — mockup dùng ĐÚNG navy #0D1B33 + gold #E1A146 của .mktg-root
   nên KHÔNG cần scope riêng như tab Ảnh truyền thông đẹp; chỉ bổ sung MẬN + KEM còn thiếu.
   ⚠ Anh Đỉnh chốt: Chờ duyệt = MẬN, Đã duyệt = GOLD — KHÔNG đỏ chói, KHÔNG xanh lá.
   ============================================================ */
.smr-root{
  --navy2:#16294A; --navy3:#24365C;
  --gold-d:#C8862F; --gold-bg:#F5E4C3; --gold-line:#EBD9B4; --gold-tx:#9A6E1E;
  --plum:#7A1B33; --plum-tx:#6B1730; --gd-tx:#8A5A16;
  --kem1:#FBF6EC; --kem-gold:#FBF3E2; --kem-plum:#FAF1F0;
  --sline:#EAE1D0; --sink2:#5A5344; --sink3:#A69A85; --sfb:#1877F2;
}
/* ── ẢNH BÌA 4:3 TO ở ĐẦU thẻ (KHÔNG phải ảnh nhỏ bên cạnh) ── */
/* ⚠ flex-shrink:0 BẮT BUỘC — đừng bỏ:
   .smr-colbody là flex column có max-height:560px (cột tự cuộn). Thẻ mặc định flex-shrink:1,
   mà `overflow:hidden` ở dòng dưới lại TẮT cơ chế auto-min-size của flex (chuẩn CSS: min-height:auto
   chỉ có tác dụng khi overflow:visible) → 10 thẻ × ~412px chen vào 560px sẽ BỊ BÓP CÒN ~38px,
   ảnh bìa 162px bị cắt → cả cột thành VẠCH KẺ. Cột ít thẻ không đủ chật nên không lộ. */
.smr-root .smr-kc{ padding:0; overflow:hidden; flex-shrink:0; }
.smr-root .smr-kc.smr-kccho{ border:1px solid var(--gold-line); box-shadow:0 2px 10px rgba(13,27,51,.05); }
.smr-root .smr-kc.smr-kccho .smr-main{ background:var(--kem1); }
.smr-root .smr-main{ padding:11px 13px; display:flex; flex-direction:column; gap:7px; }
.smr-root .smr-cover{ width:100%; aspect-ratio:4/3; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:6px; position:relative; overflow:hidden; }
.smr-root .smr-cover.cv-tiktok{ background:linear-gradient(160deg,#2A2A2E,#111); }
.smr-root .smr-cover.cv-fb{ background:linear-gradient(160deg,#2555A4,#1877F2); }
.smr-root .smr-cover img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block; }
.smr-root .smr-cvi{ font-size:30px; opacity:.5; filter:grayscale(1) brightness(3); }
.smr-root .smr-cvtx{ font-size:9.5px; font-weight:700; color:rgba(255,255,255,.5); }
.smr-root .smr-ki{ width:14px; height:14px; display:inline-flex; flex-shrink:0; }
.smr-root .smr-ki svg{ width:100%; height:100%; display:block; }
/* dải trạng thái duyệt — nền MỜ TRẮNG + chữ màu (KHÔNG nền màu đậm) */
.smr-root .smr-cvband{ position:absolute; left:0; right:0; bottom:0; padding:7px 12px; font-size:10px; font-weight:900; letter-spacing:.03em; z-index:2; }
.smr-root .smr-cvband.cho{ background:rgba(255,255,255,.94); color:var(--plum); }
.smr-root .smr-cvband.ok{ background:rgba(255,255,255,.94); color:var(--gd-tx); }
.smr-root .smr-cvpl{ position:absolute; top:9px; left:9px; width:26px; height:26px; border-radius:7px; background:#fff; display:flex; align-items:center; justify-content:center; box-shadow:0 2px 6px rgba(0,0,0,.2); z-index:2; }
.smr-root .smr-cvstar{ position:absolute; top:9px; right:9px; background:var(--gold); color:#fff; font-size:9.5px; font-weight:800; padding:4px 9px; border-radius:20px; box-shadow:0 2px 6px rgba(0,0,0,.2); z-index:2; }
/* ── link kênh + follower + nội dung ── */
.smr-root .smr-klink{ display:inline-flex; align-items:center; gap:4px; font-size:10px; font-weight:700; color:var(--sink2); text-decoration:none; background:var(--kem1); border:1px solid var(--sline); border-radius:6px; padding:4px 7px; width:fit-content; max-width:100%; overflow:hidden; }
.smr-root .smr-klink:hover{ border-color:var(--sfb); color:var(--sfb); text-decoration:none; }
.smr-root .smr-row{ display:flex; align-items:center; gap:6px; flex-wrap:wrap; }
.smr-root .smr-fl{ font-size:10.5px; font-weight:800; padding:4px 8px; border-radius:6px; }
.smr-root .smr-fl.fl-hi{ background:var(--kem-gold); color:var(--gold-tx); border:1px solid var(--gold-line); }
.smr-root .smr-fl.fl-md{ background:var(--kem1); color:var(--sink2); border:1px solid var(--sline); }
.smr-root .smr-nd{ font-size:10px; font-weight:800; padding:4px 8px; border-radius:6px; width:fit-content; }
.smr-root .smr-nd.yes{ background:var(--kem-gold); color:var(--gd-tx); border:1px solid var(--gold-line); }
.smr-root .smr-nd.no{ background:var(--kem-plum); color:var(--plum-tx); border:1px solid #E8CDD4; }
.smr-root .smr-by{ font-size:10px; color:var(--sink3); }
.smr-root .smr-by b{ color:var(--sink2); font-weight:700; }
/* ── hành động: nút bước NỀN NAVY · Leader duyệt/từ chối · badge chờ ── */
.smr-root .smr-bstep{ width:100%; margin-top:3px; border:none; background:var(--navy); color:#fff; border-radius:9px; padding:10px; font-size:12px; font-weight:700; cursor:pointer; font-family:inherit; }
.smr-root .smr-bstep:hover{ background:var(--navy2); }
.smr-root .smr-act{ display:flex; gap:7px; margin-top:3px; }
.smr-root .smr-bno{ flex:1; border:1px solid var(--sline); background:#fff; color:var(--plum-tx); border-radius:8px; padding:9px; font-size:11px; font-weight:700; cursor:pointer; font-family:inherit; }
.smr-root .smr-bno:hover{ border-color:var(--plum); }
.smr-root .smr-bok{ flex:1.5; border:none; background:var(--navy); color:#fff; border-radius:8px; padding:9px; font-size:11px; font-weight:800; cursor:pointer; font-family:inherit; }
.smr-root .smr-bok:hover{ background:var(--navy2); }
.smr-root .smr-waitnv{ margin-top:3px; background:var(--kem-plum); border:1px solid #EEDCE0; color:var(--plum-tx); border-radius:8px; padding:9px 10px; font-size:10.5px; font-weight:700; text-align:center; }
/* ── chip lọc "Chờ Leader duyệt" ── */
.smr-root .smr-chipcho{ border:1px solid var(--gold-line); background:transparent; color:var(--plum-tx); border-radius:9px; padding:8px 14px; font-size:12px; font-weight:800; display:inline-flex; align-items:center; gap:6px; cursor:pointer; }
.smr-root .smr-chipcho .dot{ width:7px; height:7px; border-radius:50%; background:var(--plum); }
.smr-root .smr-chipcho.on{ background:var(--plum); color:#fff; border-color:var(--plum); }
.smr-root .smr-chipcho.on .dot{ background:#fff; }
/* ── nút Xem thêm N đôi ── */
.smr-root .smr-more{ width:100%; border:1px dashed var(--gold); background:var(--gold-bg); color:var(--gold-tx); border-radius:9px; padding:10px; font-size:11.5px; font-weight:800; margin-top:2px; cursor:pointer; font-family:inherit; }
.smr-root .smr-more:hover{ background:var(--gold); color:#fff; border-style:solid; }
/* ── form: ô link nổi bật + xem trước ảnh bìa ── */
.smr-root .smr-linkbox{ background:var(--kem-gold); border:1px solid var(--gold-line); border-radius:11px; padding:13px; }
.smr-root .smr-linkbox input{ width:100%; border:1px solid var(--gold); border-radius:8px; padding:11px 13px; font-size:13px; background:#fff; font-family:inherit; }
.smr-root .smr-prev{ display:flex; gap:12px; align-items:center; margin-top:11px; padding-top:11px; border-top:1px dashed var(--gold); }
.smr-root .smr-previm{ width:56px; aspect-ratio:4/3; border-radius:8px; background:linear-gradient(160deg,#2A2A2E,#111); display:flex; align-items:center; justify-content:center; font-size:17px; color:rgba(255,255,255,.5); flex-shrink:0; }
.smr-root .smr-prevtx{ font-size:11px; color:var(--gold-tx); line-height:1.5; flex:1; }
.smr-root .smr-prevtx b{ color:var(--text); }
.smr-root .smr-prevup{ flex-shrink:0; }

/* ── ⭐ 15/07 THANH KÉO NGANG dưới board (Anh Đỉnh yêu cầu) — chạy CẢ máy tính lẫn điện thoại.
   (Thanh `bxp-hbar` sẵn có của Bảng xếp ekip chỉ bật @media ≤860px nên máy tính không có.) ── */
.smr-root .smr-hwrap{ display:flex; align-items:center; gap:9px; margin:2px 2px 6px; }
.smr-root .smr-harrow{ flex-shrink:0; width:30px; height:22px; border:1px solid var(--gold-line); background:var(--kem-gold);
  color:var(--navy); border-radius:8px; font-size:16px; font-weight:900; line-height:1; cursor:pointer; font-family:inherit; padding:0; }
.smr-root .smr-harrow:hover{ background:var(--gold); color:#fff; border-color:var(--gold); }
.smr-root .smr-hbar{ flex:1; height:14px; background:var(--kem-gold); border:1px solid var(--gold-line);
  border-radius:999px; position:relative; touch-action:none; cursor:pointer; overflow:hidden; }
.smr-root .smr-thumb{ position:absolute; left:0; top:0; height:100%; width:80px; background:var(--navy);
  border-radius:999px; cursor:grab; transition:background .12s; }
.smr-root .smr-thumb:hover{ background:var(--navy2); }
.smr-root .smr-thumb:active{ cursor:grabbing; background:var(--gold); }
/* điện thoại: board xếp DỌC (xem .smr-board flex-direction:column ở @media) → không cần thanh kéo */
@media(max-width:860px){ .smr-root .smr-hwrap{ display:none !important; } }

/* ═══════════════════════════════════════════════════════════════════════════════
   === SEEDING: cơ chế cột đông (thêm mới, không sửa cũ) ===
   Khối RIÊNG cho 5 cơ chế xử lý cột nhiều thẻ (cột "Khách liên hệ" tồn ~35 đôi).
   Prefix `sd-` — KHÔNG đè class/màu/hàm cũ. Xoá nguyên khối này = về y như trước.
   Dùng lại biến màu sẵn có của .smr-root (navy/gold/kem) — KHÔNG thêm màu mới.
   ⚠ Đặt CUỐI FILE là CỐ Ý: @media(max-width:860px) ở trên đặt .smr-col{flex:1 1 auto;width:100%}
      → rule thu gọn cột phải nằm SAU mới thắng (cùng độ ưu tiên, cái sau thắng).
   ① cuộn nội bộ = ĐÃ CÓ SẴN (.smr-colbody max-height:560px + overflow-y:auto) → không đụng.
   ═══════════════════════════════════════════════════════════════════════════════ */

/* ── hàng tiêu đề cột: chừa chỗ cho 2 nút mới ──
   `gap` là thuộc tính CHƯA từng đặt cho .smr-colhd → thêm chứ không đè.
   Bố cục cũ KHÔNG đổi: .smr-colhd vốn justify-content:space-between (thừa chỗ trống),
   nay .sd-tools{margin-left:auto} nuốt hết chỗ thừa → tên + số đếm về sát trái, nút sang phải. */
.smr-root .smr-colhd{ gap:8px; }
.smr-root .sd-tools{ margin-left:auto; display:flex; gap:5px; flex-shrink:0; }
.smr-root .sd-ic{ width:24px; height:24px; flex-shrink:0; border:1px solid var(--gold-line); background:#fff;
  color:var(--navy); border-radius:7px; font-size:12px; font-weight:800; line-height:1; cursor:pointer;
  font-family:inherit; padding:0; display:flex; align-items:center; justify-content:center; }
.smr-root .sd-ic:hover{ background:var(--gold); color:#fff; border-color:var(--gold); }

/* ── ⑤ + ④ hàng chip lọc dưới tiêu đề cột ── */
.smr-root .sd-colfilter{ display:flex; gap:6px; flex-wrap:wrap; padding:9px 11px 0; }
.smr-root .sd-chip{ border:1px solid var(--sline); background:#fff; color:var(--sink2); border-radius:20px;
  padding:4px 10px; font-size:10.5px; font-weight:800; cursor:pointer; font-family:inherit; }
.smr-root .sd-chip:hover{ border-color:var(--gold); }
.smr-root .sd-chip-hot.on{ background:var(--plum); color:#fff; border-color:var(--plum); }
.smr-root .sd-chip-dense{ border-color:var(--gold-line); color:var(--gold-tx); }
.smr-root .sd-chip-dense.on{ background:var(--gold); color:#fff; border-color:var(--gold); }

/* ── ③ THU GỌN cột thành thanh dọc mỏng ──
   Cột tự co theo chữ dọc (board có align-items:flex-start) → không cần ép chiều cao. */
.smr-root .smr-col{ transition:flex-basis .22s ease, width .22s ease; }
.smr-root .smr-col.sd-collapsed{ flex:0 0 46px !important; width:46px !important; }
.smr-root .smr-col.sd-collapsed .smr-colhd{ flex-direction:column; justify-content:flex-start; gap:10px; padding:12px 6px; }
.smr-root .smr-col.sd-collapsed .smr-colhd::after{ display:none; }
.smr-root .smr-col.sd-collapsed .smr-cn{ writing-mode:vertical-rl; transform:rotate(180deg); white-space:nowrap; }
.smr-root .smr-col.sd-collapsed .sd-tools{ flex-direction:column; margin:0; }
.smr-root .smr-col.sd-collapsed .sd-colfilter,
.smr-root .smr-col.sd-collapsed .smr-colbody{ display:none; }

/* ── ④ CARD GỌN: chỉ ẨN BỚT bằng CSS, KHÔNG xoá DOM/dữ liệu → tắt là hiện lại y cũ ──
   Thẻ thành 1 dòng: [ảnh 42px] [tên + follower] [nút thao tác]. */
.smr-root .smr-colbody.sd-dense .smr-kc{ display:flex; align-items:center; gap:9px; padding:7px 8px; }
.smr-root .smr-colbody.sd-dense .smr-cover{ width:42px; height:42px; flex:0 0 42px; aspect-ratio:auto; border-radius:8px; }
.smr-root .smr-colbody.sd-dense .smr-cvband,
.smr-root .smr-colbody.sd-dense .smr-cvtx,
.smr-root .smr-colbody.sd-dense .smr-cvi,
.smr-root .smr-colbody.sd-dense .smr-cvstar{ display:none; }
.smr-root .smr-colbody.sd-dense .smr-cvpl{ top:50%; left:50%; transform:translate(-50%,-50%); width:20px; height:20px; box-shadow:none; }
.smr-root .smr-colbody.sd-dense .smr-cvpl .smr-ki{ width:11px; height:11px; }
.smr-root .smr-colbody.sd-dense .smr-main{ padding:0; flex:1; min-width:0; flex-direction:row; align-items:center; gap:8px; background:none !important; }
.smr-root .smr-colbody.sd-dense .smr-bdgs,
.smr-root .smr-colbody.sd-dense .smr-klink,
.smr-root .smr-colbody.sd-dense .smr-src,
.smr-root .smr-colbody.sd-dense .smr-nd,
.smr-root .smr-colbody.sd-dense .smr-ln,
.smr-root .smr-colbody.sd-dense .smr-by,
.smr-root .smr-colbody.sd-dense .smr-inicir{ display:none; }
.smr-root .smr-colbody.sd-dense .smr-kctop{ flex:1; min-width:0; }
.smr-root .smr-colbody.sd-dense .smr-nm{ display:block; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; font-size:12px; }
.smr-root .smr-colbody.sd-dense .smr-row{ flex-shrink:0; }
.smr-root .smr-colbody.sd-dense .smr-fl{ font-size:9.5px; padding:3px 6px; }
.smr-root .smr-colbody.sd-dense .smr-bstep{ width:auto; flex-shrink:0; margin:0; padding:7px 9px; font-size:10px; border-radius:7px; }
.smr-root .smr-colbody.sd-dense .smr-act{ margin:0; flex-shrink:0; gap:5px; }
.smr-root .smr-colbody.sd-dense .smr-bno,
.smr-root .smr-colbody.sd-dense .smr-bok{ flex:none; padding:7px 8px; font-size:9.5px; }
.smr-root .smr-colbody.sd-dense .smr-waitnv{ margin:0; flex-shrink:0; padding:6px 8px; font-size:9px; max-width:82px; line-height:1.3; }

/* ── ② MỞ TO cột: overlay lưới nhiều cột (dùng lại đúng thẻ smrCardHTML) ── */
.smr-root .sd-ov{ position:fixed; inset:0; background:rgba(13,27,51,.5); z-index:9500;
  display:flex; align-items:center; justify-content:center; padding:26px 16px; }
.smr-root .sd-modal{ background:var(--cream); border:1px solid var(--line); border-radius:16px;
  width:100%; max-width:1180px; height:100%; display:flex; flex-direction:column;
  overflow:hidden; box-shadow:0 20px 60px rgba(13,27,51,.3); position:relative; }
.smr-root .sd-modal::before{ content:""; position:absolute; top:0; left:0; right:0; height:3px; background:var(--gold); z-index:2; }
.smr-root .sd-mhd{ flex-shrink:0; display:flex; align-items:center; gap:11px; padding:17px 20px 14px;
  background:var(--panel); border-bottom:1px solid var(--line); }
.smr-root .sd-mt{ font-size:15px; font-weight:800; color:var(--navy); }
.smr-root .sd-mc{ background:var(--gold-bg); color:var(--gold-tx); border:1px solid var(--gold-line);
  border-radius:20px; padding:3px 11px; font-size:11.5px; font-weight:800; }
.smr-root .sd-mx{ margin-left:auto; width:32px; height:32px; flex-shrink:0; border:1px solid var(--sline);
  background:#fff; color:var(--navy); border-radius:9px; font-size:14px; cursor:pointer; font-family:inherit; padding:0; }
.smr-root .sd-mx:hover{ background:var(--plum); color:#fff; border-color:var(--plum); }
/* ⚠ grid-auto-rows:max-content BẮT BUỘC — đừng đổi về auto:
   .smr-kc có overflow:hidden → chuẩn CSS TẮT cơ chế auto-min-size (min-height:auto chỉ áp khi
   overflow:visible) → hàng "auto" bắt đầu từ 0 rồi CHIA ĐỀU chiều cao khung (602px) cho 9 hàng
   = 52px/hàng → thẻ 487px bị bóp còn 52px, y hệt bẫy "cột thành vạch kẻ" đã dính hôm 15/07.
   Đo thật: (566px − 96px gap) ÷ 9 hàng = 52,2px — đúng con số đo được. max-content = hàng ôm
   đúng nội dung, dư thì .sd-mgrid tự cuộn dọc. Ít thẻ thì KHÔNG lộ → phải test với ~35 thẻ. */
.smr-root .sd-mgrid{ flex:1; overflow-y:auto; padding:16px 20px 20px;
  display:grid; grid-template-columns:repeat(auto-fill,minmax(228px,1fr)); grid-auto-rows:max-content;
  gap:12px; align-content:start; }
.smr-root .sd-empty{ grid-column:1/-1; text-align:center; color:var(--soft); font-size:12.5px; padding:44px 10px; }

/* ── điện thoại: overlay Mở to chiếm FULL màn (yêu cầu Anh Đỉnh) ── */
@media(max-width:860px){
  .smr-root .sd-ov{ padding:0; }
  .smr-root .sd-modal{ max-width:none; border-radius:0; border:0; height:100%; }
  .smr-root .sd-mgrid{ grid-template-columns:1fr; padding:13px; }
  /* cột trên điện thoại xếp DỌC full-width → thu gọn vẫn cho ra thanh dọc 46px (đúng ý nghĩa) */
  .smr-root .smr-col.sd-collapsed .smr-colbody{ display:none; }
}

/* ── ⭐ 16/07 nút BỘ LỌC NGÀY (sdf- dùng chung) cạnh tiêu đề "Báo cáo nhanh" ──
   .smr-secttl là flex row + .smr-rule{flex:1} đẩy nút sang phải sẵn.
   ⚠ .smr-tt có white-space:nowrap; nhãn kỳ có thể dài ("01/07 – 16/07/2026") → cho xuống
      dòng gọn trên điện thoại thay vì đẩy tràn ngang. */
.smr-root .smr-secttl .sd-mtime{ flex-shrink:0; display:inline-flex; align-items:center; }
@media(max-width:860px){
  .smr-root .smr-secttl{ flex-wrap:wrap; }
  .smr-root .smr-secttl .smr-tt{ white-space:normal; }
  .smr-root .smr-secttl .sd-mtime{ margin-left:auto; }
}

/* ⭐ 16/07 — ô "Thực đạt" TỰ TÍNH từ hợp đồng (không gõ tay được).
   Khác ô .edit (nhập tay) ở chỗ: không con trỏ nhập, nền kem nhạt, có chấm ◆ gold báo "số tự động". */
.mktg-root td.tdlive{ background:var(--gold-pale,#FDF8EF); color:var(--navy); font-weight:700; cursor:default; position:relative; }
.mktg-root td.tdlive::after{ content:"◆"; color:var(--gold); font-size:7px; margin-left:5px; vertical-align:middle; opacity:.75; }

/* ⭐ 16/07 — bảng Mục tiêu 2 tầng đầu (Doanh số | Khách hàng) + dòng Tổng cả năm */
.mktg-root .obj-tbl2 thead th.grp{ text-align:center; background:var(--gold-pale,#FDF8EF); color:var(--gold-ink,#9C6A16); letter-spacing:.02em; }
.mktg-root .obj-tbl2 th.grp-l, .mktg-root .obj-tbl2 td:nth-child(5){ border-left:2px solid var(--gold-cream,#FBF1DC); }  /* vạch tách 2 nhóm */
.mktg-root .obj-tbl2 tr.obj-totrow td{ background:var(--navy); color:#fff; font-weight:800; border-top:2px solid var(--gold); }
.mktg-root .obj-tbl2 tr.obj-totrow td:nth-child(5){ border-left-color:rgba(255,255,255,.25); }
.mktg-root .obj-tbl2 tr.obj-totrow .st{ background:rgba(255,255,255,.14); color:#fff; }


/* ═══════════════════════════════════════════════════════════════
   MỤC 3 — THỰC ĐẠT vs KẾ HOẠCH (prefix tk-) — thiết kế lại 16/07/2026
   ⚠ Prefix RIÊNG: .cmp/.pbar/.st/.unit-note là class DÙNG CHUNG với tab khác → KHÔNG đụng.
   ═══════════════════════════════════════════════════════════════ */
/* tiêu đề + bộ chọn kỳ 1 hàng */
.mktg-root .tk-hdrow{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:13px}
.mktg-root .tk-hdrow h3{margin-bottom:0}
/* dải nguồn số (gộp banner + ghi chú) */
.mktg-root .tk-src{display:flex;gap:12px;background:linear-gradient(90deg,var(--gold-pale),#fff 55%);border:1px solid var(--gold-cream);border-left:4px solid var(--gold);border-radius:12px;padding:11px 15px;margin-bottom:14px}
.mktg-root .tk-src .i{font-size:17px;line-height:1.3}
.mktg-root .tk-src .t{font-size:13px;font-weight:700;color:var(--navy);display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.mktg-root .tk-src .s{font-size:11.5px;color:var(--soft);margin-top:4px;line-height:1.55;font-weight:400}
.mktg-root .tk-src .s b,.mktg-root .tk-src .t b{color:var(--gold-ink)}
.mktg-root .tk-facts{display:inline-flex;gap:8px;flex-wrap:wrap}
.mktg-root .tk-facts .f{font-size:11.5px;font-weight:800;color:var(--gold-ink);background:#fff;border:1px solid var(--gold-cream);border-radius:999px;padding:2px 10px;white-space:nowrap}
.mktg-root .tk-facts .f b{color:var(--navy)}
/* 4 KPI trong 1 khối liền */
.mktg-root .tk-kpis{display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;margin-bottom:14px}
.mktg-root .tk-k{padding:14px 16px 15px;border-right:1px solid var(--line)}
.mktg-root .tk-k:last-child{border-right:none}
.mktg-root .tk-k .lab{font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--soft)}
.mktg-root .tk-k .top{display:flex;align-items:baseline;gap:8px;margin-top:6px;flex-wrap:wrap}
.mktg-root .tk-k .big{font-size:34px;font-weight:900;line-height:1;font-variant-numeric:tabular-nums}
.mktg-root .tk-k .tag{font-size:10.5px;font-weight:800;border-radius:999px;padding:2px 8px;white-space:nowrap}
.mktg-root .tk-bar{position:relative;height:9px;background:#EFEAE0;border-radius:999px;margin:11px 0 4px}
.mktg-root .tk-bar .fill{display:block;height:100%;border-radius:999px}
.mktg-root .tk-tick{position:absolute;top:-3px;bottom:-3px;width:2px;background:var(--navy);opacity:.55;border-radius:2px}
.mktg-root .tk-hint{font-size:9px;color:var(--soft);font-weight:700;min-height:13px}
.mktg-root .tk-k .rows{margin-top:9px;font-size:11.5px}
.mktg-root .tk-k .r{display:flex;justify-content:space-between;gap:8px;padding:2px 0;color:var(--soft)}
.mktg-root .tk-k .r b{font-weight:800;color:var(--navy);font-variant-numeric:tabular-nums}
.mktg-root .tk-k .g{margin-top:8px;font-size:11px;font-weight:800;border-radius:8px;padding:5px 9px;text-align:center}
/* màu theo mức đạt (dùng chung KPI + biểu đồ + bảng) */
.mktg-root .tk-kpis .low,.mktg-root .tk-pc .v.low{color:var(--red)}
.mktg-root .tk-kpis .mid,.mktg-root .tk-pc .v.mid{color:var(--amber)}
.mktg-root .tk-kpis .ok,.mktg-root .tk-pc .v.ok{color:var(--green)}
.mktg-root .tk-kpis .ok2,.mktg-root .tk-pc .v.ok2{color:var(--greend,#1F6F4A)}
.mktg-root .tk-kpis .nav{color:var(--navy)}
.mktg-root .tk-bar .fill.low,.mktg-root .tk-pc .b i.low,.mktg-root .tk-chart .ba.low,.mktg-root .tk-lg i.low{background:var(--red)}
.mktg-root .tk-bar .fill.mid,.mktg-root .tk-pc .b i.mid,.mktg-root .tk-chart .ba.mid,.mktg-root .tk-lg i.mid{background:var(--amber)}
.mktg-root .tk-bar .fill.ok,.mktg-root .tk-pc .b i.ok,.mktg-root .tk-chart .ba.ok{background:var(--green)}
.mktg-root .tk-bar .fill.ok2,.mktg-root .tk-pc .b i.ok2,.mktg-root .tk-chart .ba.ok2,.mktg-root .tk-lg i.ok2{background:var(--greend,#1F6F4A)}
.mktg-root .tk-bar .fill.nav{background:var(--navy2,#1E3560)}
.mktg-root .tk-k .tag.low,.mktg-root .tk-k .g.low{background:#FBEAE7;color:var(--red)}
.mktg-root .tk-k .tag.mid,.mktg-root .tk-k .g.mid{background:#FBEFE0;color:var(--amber)}
.mktg-root .tk-k .tag.ok,.mktg-root .tk-k .g.ok{background:#E4F0EA;color:var(--green)}
.mktg-root .tk-k .tag.ok2,.mktg-root .tk-k .g.ok2{background:#E4F0EA;color:var(--greend,#1F6F4A)}
.mktg-root .tk-k .tag.nav,.mktg-root .tk-k .g.nav{background:#EDEFF4;color:var(--navy2,#1E3560)}
/* panel + biểu đồ 12 tháng */
.mktg-root .tk-panel{background:#fff;border:1px solid var(--line);border-radius:14px;padding:15px 18px;margin-bottom:14px}
.mktg-root .tk-ph{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:14px}
.mktg-root .tk-ph .tt{font-size:13.5px;font-weight:900;color:var(--navy)}
.mktg-root .tk-ph .ss{font-size:11px;color:var(--soft);margin-top:1px}
.mktg-root .tk-lg{display:flex;gap:14px;font-size:11px;color:var(--soft);font-weight:600;flex-wrap:wrap}
.mktg-root .tk-lg .g{display:inline-flex;align-items:center;gap:6px}
.mktg-root .tk-lg i{width:11px;height:11px;border-radius:3px;display:block}
.mktg-root .tk-lg .plan i{background:#EFEAE0;border:1px dashed #CFC5B0}
.mktg-root .tk-chart{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:8px;align-items:end;height:132px;padding-top:4px}
.mktg-root .tk-chart .c{height:100%;display:flex;align-items:flex-end}
.mktg-root .tk-chart .trk{position:relative;width:100%;height:100%;display:flex;align-items:flex-end}
.mktg-root .tk-chart .bp{width:100%;background:#EFEAE0;border-radius:5px 5px 0 0;border-top:2px dashed #CFC5B0}
.mktg-root .tk-chart .c.now .bp{background:var(--gold-cream);border-top-color:var(--gold-light)}
.mktg-root .tk-chart .ba{position:absolute;left:0;right:0;bottom:0;border-radius:5px 5px 0 0}
.mktg-root .tk-mlabs{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:8px;margin-top:7px}
.mktg-root .tk-mlabs .l{text-align:center;font-size:10.5px;font-weight:700;color:var(--soft)}
.mktg-root .tk-mlabs .l.now{color:var(--navy);background:var(--gold-cream);border-radius:6px;padding:2px 0}
/* ghi chú bảng */
.mktg-root .tk-note{font-size:11.5px;color:var(--soft);background:var(--gold-pale);border:1px solid var(--gold-cream);border-radius:9px;padding:8px 12px;margin-bottom:12px;line-height:1.6}
.mktg-root .tk-note b{color:var(--gold-ink)}
.mktg-root .tk-dot{color:var(--gold)}
/* bảng: nhóm 3 (Trung bình gói) + % thanh+số + tháng mờ/đang chạy */
.mktg-root .obj-tbl2.tk-tbl{min-width:1120px}
/* ⭐ Đầu bảng bám mockup: tầng 1 (Tháng · 💰 Doanh số · 👥 Khách hàng · 📦 Trung bình gói)
   = NAVY chữ TRẮNG; tầng 2 (Kế hoạch/Thực đạt/% đạt) = nền kem chữ xám.
   ⚠ PHẢI dùng `.obj-tbl2.tk-tbl` (0,4,2) để THẮNG rule sẵn có
   `.mktg-root .obj-tbl2 thead th.grp` (0,3,2) vốn là nền kem + chữ vàng. */
.mktg-root .obj-tbl2.tk-tbl thead tr:first-child th{background:var(--navy);color:#fff;border-bottom-color:var(--navy)}
.mktg-root .obj-tbl2.tk-tbl thead tr:first-child th.grp-l,
.mktg-root .obj-tbl2.tk-tbl thead tr:first-child th.grp-l2{border-left-color:var(--gold)}
.mktg-root .obj-tbl2.tk-tbl thead tr:nth-child(2) th{background:#FBF8F1;color:var(--soft)}
.mktg-root .tk-tbl th.grp-l2,.mktg-root .tk-tbl td:nth-child(8){border-left:2px solid var(--gold-cream)}
.mktg-root .tk-tbl tr.obj-totrow td:nth-child(8){border-left-color:rgba(255,255,255,.25)}
.mktg-root .tk-tbl td.tk-tb{background:#FDFBF5}
.mktg-root .tk-tbl td.tk-tb::after{content:"◆";color:var(--gold);font-size:7px;margin-left:5px;vertical-align:middle;opacity:.75}
.mktg-root .tk-tbl tr.tk-now td.tk-tb{background:#FBF3E2}
.mktg-root .tk-tbl tr.tk-idle td{color:#B9B2A3}
.mktg-root .tk-tbl tr.tk-idle td.strong{color:#9A9384;font-weight:600}
.mktg-root .tk-tbl tr.tk-now td{background:var(--gold-pale)}
.mktg-root .tk-tbl tr.tk-now td.strong{box-shadow:inset 3px 0 0 var(--gold)}
.mktg-root .tk-nowtag{font-size:9px;font-weight:800;color:var(--gold-ink);background:var(--gold-cream);border-radius:999px;padding:1px 7px;margin-left:6px;vertical-align:middle}
.mktg-root .tk-pc{display:inline-flex;align-items:center;gap:7px;justify-content:flex-end}
.mktg-root .tk-pc .b{width:42px;height:5px;background:#EFEAE0;border-radius:999px;overflow:hidden;flex:none}
.mktg-root .tk-pc .b i{display:block;height:100%;border-radius:999px}
.mktg-root .tk-pc .v{font-size:12px;font-weight:900;min-width:34px;text-align:right;font-variant-numeric:tabular-nums}
.mktg-root .tk-tbl tr.obj-totrow .tk-pc .b{background:rgba(255,255,255,.18)}
.mktg-root .tk-tbl tr.obj-totrow .tk-pc .v{color:#fff}
.mktg-root .tk-d{display:inline-block;font-size:10px;font-weight:900;border-radius:999px;padding:1px 7px;margin-left:7px;white-space:nowrap;vertical-align:middle}
.mktg-root .tk-d.up{background:#E4F0EA;color:var(--greend,#1F6F4A)}
.mktg-root .tk-d.dn{background:#FBEAE7;color:var(--red)}
.mktg-root .tk-na{color:#C4BCAB;font-weight:600}
/* mobile */
@media(max-width:980px){
  .mktg-root .tk-kpis{grid-template-columns:repeat(2,1fr)}
  .mktg-root .tk-k{border-bottom:1px solid var(--line)}
  .mktg-root .tk-k:nth-child(2n){border-right:none}
}
@media(max-width:620px){
  .mktg-root .tk-kpis{grid-template-columns:1fr}
  .mktg-root .tk-k{border-right:none}
  .mktg-root .tk-chart,.mktg-root .tk-mlabs{gap:4px}
  .mktg-root .tk-panel{padding:13px 12px}
}

/* ══════════════════════════════════════════════════════════════════════════
   TỔNG QUAN MARKETING — THIẾT KẾ LẠI (bám 100% thiet-ke/10-marketing/mockup-tongquan-marketing-v2.html)
   Anh Đỉnh duyệt mockup 16/07/2026: "rời rạc, xấu, khó hiểu" → sắp lại theo 1 mạch
   kết quả → phễu → tiền → xu hướng&kênh → UGC → cảnh báo.

   ⚠ 1 — MỌI class đổi sang prefix `ov2-`. Mockup dùng tên chung (.panel .warn .mcard
        .cols .delta .pbar .sec .funnel .ugc .sel .chart .legend) mà marketing.css
        ĐÃ CÓ ĐỦ những tên đó → để nguyên là bị đè ÂM THẦM. (Đã sập 2 lần: `.bcard warn`
        dính `.warn{display:flex}` bẻ thẻ thành hàng ngang.)
   ⚠ 2 — Scope là DESCENDANT → render PHẢI LỒNG 2 THẺ:
          <div class="mktg-root"><div class="ov2-root"> … </div></div>
        Để chung 1 node `class="mktg-root ov2-root"` thì `.mktg-root .ov2-root .x`
        KHÔNG khớp (same-node) → mất sạch layout.
   ⚠ 3 — Lưới dùng `minmax(0,1fr)`, KHÔNG dùng `1fr` (= minmax(auto,1fr), cận dưới
        min-content): số tiền dài không có chỗ ngắt sẽ phình 1 cột và bẹp các cột kia.
   ══════════════════════════════════════════════════════════════════════════ */
.mktg-root .ov2-root{
  --navy:#0D1B33; --navy2:#16294A; --gold:#E1A146; --gold-d:#C8862F; --gold-ink:#9C6A16;
  --gold-cream:#FBF1DC; --gold-pale:#FDF8EF; --cream:#F7F3EC; --panel:#FFFFFF;
  --text:#26221B; --soft:#8A8170; --line:#ECE5D8; --sline:#EAE1D0;
  --green:#2E7D5B; --green-bg:#EAF3EE; --plum:#7A1B33; --plum-bg:#FAF1F0; --blue:#2F5FA8;
  --sh:0 1px 3px rgba(13,27,51,.05); --sh2:0 6px 22px rgba(13,27,51,.10);
  font-size:14px; line-height:1.5;
}

/* ── đầu trang: tiêu đề + bộ lọc CÙNG 1 HÀNG (mockup .head) ── */
.mktg-root .ov2-root .ov2-head{display:flex;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:16px}
.mktg-root .ov2-root .ov2-head .page-head .h1{font-size:23px;letter-spacing:-.01em}
.mktg-root .ov2-root .ov2-head .filters{margin:0 0 0 auto;flex:0 1 auto}

/* ── tiêu đề khu ── */
.mktg-root .ov2-root .ov2-sec{display:flex;align-items:center;gap:11px;margin:26px 2px 12px}
.mktg-root .ov2-root .ov2-sec::before{content:"◆";color:var(--gold);font-size:8px}
.mktg-root .ov2-root .ov2-tt{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-ink);font-weight:700;white-space:nowrap}
.mktg-root .ov2-root .ov2-rule{flex:1;height:1px;background:linear-gradient(90deg,var(--gold-cream),transparent)}
.mktg-root .ov2-root .ov2-note{font-size:11.5px;color:var(--soft);font-weight:500;white-space:nowrap}

/* ══ 1. KẾT QUẢ THÁNG — 3 thẻ LỚN ══ */
.mktg-root .ov2-root .ov2-big3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.mktg-root .ov2-root .ov2-bcard{background:var(--panel);border:1px solid var(--line);border-radius:15px;padding:18px 20px;box-shadow:var(--sh);position:relative;overflow:hidden}
.mktg-root .ov2-root .ov2-bcard::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--gold)}
.mktg-root .ov2-root .ov2-bcard.low::before{background:var(--plum)}
.mktg-root .ov2-root .ov2-bcard .lab{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--soft)}
.mktg-root .ov2-root .ov2-bcard .big{font-size:31px;font-weight:900;color:var(--navy);letter-spacing:-.02em;margin:7px 0 3px;line-height:1.1;word-break:break-word}
.mktg-root .ov2-root .ov2-bcard .big small{font-size:15px;font-weight:700;color:var(--soft)}
.mktg-root .ov2-root .ov2-bcard .row{display:flex;align-items:center;gap:9px;margin-bottom:10px;flex-wrap:wrap}
.mktg-root .ov2-root .ov2-bcard .rt{font-size:11.5px;color:var(--soft)}
.mktg-root .ov2-root .ov2-delta{font-size:11.5px;font-weight:800;padding:2px 8px;border-radius:20px;white-space:nowrap}
.mktg-root .ov2-root .ov2-delta.up{background:var(--green-bg);color:var(--green)}
.mktg-root .ov2-root .ov2-delta.dn{background:var(--plum-bg);color:var(--plum)}
.mktg-root .ov2-root .ov2-delta.flat{background:#F1EEE8;color:var(--soft)}
.mktg-root .ov2-root .ov2-pbar{height:7px;background:#F1EEE8;border-radius:20px;overflow:hidden}
.mktg-root .ov2-root .ov2-pbar span{display:block;height:100%;border-radius:20px;background:linear-gradient(90deg,var(--gold),var(--gold-d))}
.mktg-root .ov2-root .ov2-pbar span.ok{background:linear-gradient(90deg,#4CA37C,var(--green))}
.mktg-root .ov2-root .ov2-pbar span.bad{background:linear-gradient(90deg,#A8506A,var(--plum))}
.mktg-root .ov2-root .ov2-bcard .foot{display:flex;justify-content:space-between;gap:6px;flex-wrap:wrap;font-size:11.5px;color:var(--soft);margin-top:7px}
.mktg-root .ov2-root .ov2-bcard .foot b{color:var(--text)}
.mktg-root .ov2-root .ov2-ok{color:var(--green)}
.mktg-root .ov2-root .ov2-bad{color:var(--plum)}
.mktg-root .ov2-root .ov2-mid{color:var(--gold-ink)}

/* ══ 2. PHỄU ══ */
.mktg-root .ov2-root .ov2-funnel{background:var(--panel);border:1px solid var(--line);border-radius:15px;padding:20px 22px;box-shadow:var(--sh);
        display:flex;align-items:stretch;gap:0;overflow-x:auto}
.mktg-root .ov2-root .ov2-fstep{flex:1;min-width:150px;padding:0 16px;position:relative}
.mktg-root .ov2-root .ov2-fstep:first-child{padding-left:2px}
.mktg-root .ov2-root .ov2-fstep .fl{font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--soft)}
.mktg-root .ov2-root .ov2-fstep .fv{font-size:25px;font-weight:900;color:var(--navy);letter-spacing:-.02em;margin:5px 0 2px;line-height:1.1}
.mktg-root .ov2-root .ov2-fstep .fp{font-size:11.5px;color:var(--soft)}
.mktg-root .ov2-root .ov2-fstep .fp b{color:var(--gold-ink)}
.mktg-root .ov2-root .ov2-fbar{height:5px;border-radius:20px;background:var(--gold);margin-top:9px;opacity:.85}
.mktg-root .ov2-root .ov2-fstep.f0 .ov2-fbar{background:#2F5FA8}
.mktg-root .ov2-root .ov2-fstep.f1 .ov2-fbar{background:#3E8E7E}
.mktg-root .ov2-root .ov2-fstep.f2 .ov2-fbar{background:var(--gold)}
.mktg-root .ov2-root .ov2-fstep.f3 .ov2-fbar{background:var(--navy)}
.mktg-root .ov2-root .ov2-fconv{flex:0 0 92px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;
       border-left:1px dashed var(--sline);border-right:1px dashed var(--sline)}
.mktg-root .ov2-root .ov2-fconv .ar{font-size:15px;color:var(--gold);line-height:1}
.mktg-root .ov2-root .ov2-fconv .pc{font-size:15px;font-weight:900;color:var(--navy)}
.mktg-root .ov2-root .ov2-fconv .cl{font-size:9.5px;color:var(--soft);text-align:center;line-height:1.3}
.mktg-root .ov2-root .ov2-fconv.hot .pc{color:var(--plum)}
.mktg-root .ov2-root .ov2-fconv.hot .ar{color:var(--plum)}

/* ══ 3. TIỀN ══ */
.mktg-root .ov2-root .ov2-m4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.mktg-root .ov2-root .ov2-mcard{background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--gold);border-radius:12px;padding:14px 16px;box-shadow:var(--sh)}
.mktg-root .ov2-root .ov2-mcard .lab{font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--soft)}
.mktg-root .ov2-root .ov2-mcard .v{font-size:20px;font-weight:900;color:var(--navy);margin:5px 0 2px;letter-spacing:-.01em;word-break:break-word}
.mktg-root .ov2-root .ov2-mcard .m{font-size:11px;color:var(--soft)}
.mktg-root .ov2-root .ov2-mcard.na{border-left-color:var(--sline);background:var(--gold-pale)}
.mktg-root .ov2-root .ov2-mcard.na .v{color:var(--soft);font-size:16px}

/* ══ 4. 2 CỘT ══ */
.mktg-root .ov2-root .ov2-cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:start}
.mktg-root .ov2-root .ov2-panel{background:var(--panel);border:1px solid var(--line);border-radius:15px;padding:18px 20px;box-shadow:var(--sh)}
.mktg-root .ov2-root .ov2-panel h3{font-size:14px;font-weight:900;color:var(--navy);margin:0 0 3px;display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.mktg-root .ov2-root .ov2-tag{background:var(--gold-cream);color:var(--gold-ink);font-size:10.5px;font-weight:700;padding:2px 9px;border-radius:20px;letter-spacing:0}
.mktg-root .ov2-root .ov2-ph{font-size:11.5px;color:var(--soft);margin-bottom:14px}

/* biểu đồ 12 tháng */
.mktg-root .ov2-root .ov2-chart{display:flex;align-items:flex-end;gap:5px;height:150px;padding-top:6px}
.mktg-root .ov2-root .ov2-cbar{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:4px;height:100%}
.mktg-root .ov2-root .ov2-cstack{width:100%;display:flex;align-items:flex-end;justify-content:center;gap:2px;height:100%}
.mktg-root .ov2-root .ov2-cplan{width:44%;background:#EFEADF;border-radius:3px 3px 0 0}
.mktg-root .ov2-root .ov2-cact{width:44%;background:linear-gradient(180deg,var(--gold),var(--gold-d));border-radius:3px 3px 0 0}
.mktg-root .ov2-root .ov2-cact.now{background:linear-gradient(180deg,var(--navy2),var(--navy))}
.mktg-root .ov2-root .ov2-cbar .cm{font-size:9.5px;color:var(--soft);font-weight:700}
.mktg-root .ov2-root .ov2-cbar.on .cm{color:var(--navy);font-weight:900}
.mktg-root .ov2-root .ov2-legend{display:flex;gap:16px;margin-top:12px;font-size:11px;color:var(--soft);flex-wrap:wrap}
.mktg-root .ov2-root .ov2-legend i{width:10px;height:10px;border-radius:3px;display:inline-block;margin-right:5px;vertical-align:-1px}

/* kênh theo nền tảng */
.mktg-root .ov2-root .ov2-plat{display:flex;align-items:center;gap:11px;padding:9px 0;border-bottom:1px dashed var(--line);cursor:pointer}
.mktg-root .ov2-root .ov2-plat:hover{background:var(--gold-pale)}
.mktg-root .ov2-root .ov2-plat .pn{width:78px;flex-shrink:0;font-size:12px;font-weight:700;color:var(--navy);display:flex;align-items:center;gap:6px}
.mktg-root .ov2-root .ov2-plat .pn i{width:7px;height:7px;border-radius:2px;display:inline-block;flex-shrink:0}
.mktg-root .ov2-root .ov2-plat .pbwrap{flex:1;min-width:0}
.mktg-root .ov2-root .ov2-plat .pb{height:16px;background:#F4F1EA;border-radius:4px;overflow:hidden;position:relative}
.mktg-root .ov2-root .ov2-plat .pb span{display:block;height:100%;border-radius:4px}
.mktg-root .ov2-root .ov2-plat .pnum{width:78px;text-align:right;font-size:12px;font-weight:800;color:var(--navy);flex-shrink:0}
.mktg-root .ov2-root .ov2-plat .per{width:52px;text-align:right;font-size:11.5px;font-weight:800;flex-shrink:0}
.mktg-root .ov2-root .ov2-per.good{color:var(--green)}
.mktg-root .ov2-root .ov2-per.mid{color:var(--gold-ink)}
.mktg-root .ov2-root .ov2-per.low{color:var(--soft)}
.mktg-root .ov2-root .ov2-per.bad{color:var(--plum)}
/* dòng CUỐI bỏ vạch (mockup `.plat:last-of-type{border-bottom:0}` — KHÔNG dùng được ở đây
   vì .ov2-plat và .ov2-subs xen kẽ nhau nên :last-of-type trỏ nhầm vào .ov2-subs) */
.mktg-root .ov2-root .ov2-plat.plast{border-bottom:0}
.mktg-root .ov2-root .ov2-subs.plast{border-bottom:0}
/* danh sách kênh con — bấm nền tảng để mở */
.mktg-root .ov2-root .ov2-subs{display:none;padding:2px 0 10px 89px;border-bottom:1px dashed var(--line)}
.mktg-root .ov2-root .ov2-subs.open{display:block}
.mktg-root .ov2-root .ov2-sub{display:flex;align-items:center;gap:10px;padding:4px 0;font-size:11.5px;color:var(--soft)}
.mktg-root .ov2-root .ov2-sub .sn{flex:1;min-width:0;color:var(--text);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mktg-root .ov2-root .ov2-sub .sv{width:78px;text-align:right;font-weight:700;color:var(--navy);flex-shrink:0}
.mktg-root .ov2-root .ov2-sub .se{width:52px;text-align:right;font-weight:700;flex-shrink:0}
.mktg-root .ov2-root .ov2-subtle{font-size:11px;color:var(--soft);margin-top:12px;padding-top:10px;border-top:1px solid var(--line);line-height:1.7}
.mktg-root .ov2-root .ov2-lnk{color:var(--gold-ink);font-weight:700;cursor:pointer;text-decoration:none;background:none;border:none;padding:0;font-size:11px;font-family:inherit}
.mktg-root .ov2-root .ov2-lnk:hover{text-decoration:underline}

/* ══ 5. UGC ══ */
.mktg-root .ov2-root .ov2-ugc{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.mktg-root .ov2-root .ov2-ucard{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:14px 16px;box-shadow:var(--sh);text-align:center}
.mktg-root .ov2-root .ov2-ucard .lab{font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--soft)}
.mktg-root .ov2-root .ov2-ucard .v{font-size:23px;font-weight:900;color:var(--navy);margin:4px 0 2px;word-break:break-word}
.mktg-root .ov2-root .ov2-ucard .m{font-size:10.5px;color:var(--soft)}
.mktg-root .ov2-root .ov2-ucard.zero .v{color:#C9C2B4}

/* ══ 6. CẢNH BÁO ══ */
.mktg-root .ov2-root .ov2-warns{display:flex;flex-direction:column;gap:9px}
.mktg-root .ov2-root .ov2-warn{display:flex;gap:11px;align-items:flex-start;background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--plum);border-radius:11px;padding:12px 15px;box-shadow:var(--sh)}
.mktg-root .ov2-root .ov2-warn.amber{border-left-color:var(--gold)}
.mktg-root .ov2-root .ov2-warn.good{border-left-color:var(--green)}
.mktg-root .ov2-root .ov2-warn .wi{font-size:14px;line-height:1.3;flex-shrink:0}
.mktg-root .ov2-root .ov2-warn .wb{min-width:0}
.mktg-root .ov2-root .ov2-warn .wt{font-size:12.5px;font-weight:800;color:var(--navy);margin-bottom:2px}
.mktg-root .ov2-root .ov2-warn .wd{font-size:11.5px;color:var(--soft);line-height:1.55}
.mktg-root .ov2-root .ov2-warn .wd b{color:var(--text)}

@media(max-width:1100px){
  .mktg-root .ov2-root .ov2-big3,
  .mktg-root .ov2-root .ov2-m4,
  .mktg-root .ov2-root .ov2-ugc{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mktg-root .ov2-root .ov2-cols{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:640px){
  .mktg-root .ov2-root .ov2-big3,
  .mktg-root .ov2-root .ov2-m4,
  .mktg-root .ov2-root .ov2-ugc{grid-template-columns:minmax(0,1fr)}
  .mktg-root .ov2-root .ov2-head .filters{margin-left:0;width:100%}
  /* ⚠ PHỄU TRÊN ĐIỆN THOẠI — XẾP DỌC (khác mockup, CỐ Ý).
     Mockup để `overflow-x:auto`: đo thật ở khổ 375px thì hộp phễu rộng 904px → CHỈ THẤY
     "Reach", 3 tầng còn lại phải vuốt ngang mới thấy. Phễu là thứ quan trọng nhất của
     bản này mà lại giấu mất 3/4 → hỏng đúng mục đích "nhìn dễ hiểu hơn". Xếp dọc cũng
     ĐỒNG BỘ với big3/m4/ugc (đều về 1 cột ở khổ này). Máy tính GIỮ NGUYÊN hàng ngang. */
  .mktg-root .ov2-root .ov2-funnel{padding:14px;flex-direction:column;overflow-x:visible}
  .mktg-root .ov2-root .ov2-fstep{min-width:0;padding:10px 0}
  .mktg-root .ov2-root .ov2-fstep:first-child{padding:0 0 10px}
  .mktg-root .ov2-root .ov2-fconv{flex:0 0 auto;flex-direction:row;justify-content:flex-start;gap:8px;padding:7px 0;
    border-left:0;border-right:0;border-top:1px dashed var(--sline);border-bottom:1px dashed var(--sline)}
  .mktg-root .ov2-root .ov2-fconv .ar{transform:rotate(90deg)}
  .mktg-root .ov2-root .ov2-fconv .cl{text-align:left;font-size:10.5px}
  .mktg-root .ov2-root .ov2-bcard .big{font-size:27px}
  /* ⚠ 2 chỗ này gây TRÀN NGANG 109px trên điện thoại (đo mới lộ, mockup cũng dính):
     .ov2-note có white-space:nowrap (chữ dài không xuống dòng) và .foot 2 cột space-between
     không wrap. Máy tính rộng nên không thấy. */
  .mktg-root .ov2-root .ov2-sec{flex-wrap:wrap}
  .mktg-root .ov2-root .ov2-note{white-space:normal;flex-basis:100%;order:3}
  .mktg-root .ov2-root .ov2-rule{min-width:20px}
  .mktg-root .ov2-root .ov2-subs{padding-left:0}
}

/* ══════════════════════════════════════════════════════════════════════════
   QUẢNG CÁO ADS — THIẾT KẾ LẠI (bám 100% thiet-ke/10-marketing/mockup-mkt-ads-v2.html)
   Anh Đỉnh duyệt 16/07/2026. 2 trong 3 việc Anh chê là LỖI THẬT chứ không phải thiết kế:

   ① FORM chưa hề được gắn CSS — `adsOpenModal` chèn form vào #page-mktg-ads, tức
      ANH EM của .mktg-root, trong khi CSS là '.mktg-root .se-*' (descendant) → không
      khớp dòng nào. Đo được: position=static (lẽ ra fixed) · nền trong suốt · khung
      1299px (lẽ ra 640px) · lưới 2 cột=none · label=inline.
      → Sửa: chèn TRONG .mktg-root (đã đo: KHÔNG có tổ tiên transform/filter nên
        position:fixed vẫn phủ trọn màn, lại kế thừa sẵn biến màu brand → tránh luôn
        bẫy "gắn body mất biến màu" của .gc-overlay).
   ② Form vỡ ĐÃ làm sai dữ liệu thật: nhãn/ô dính liền nên ô Địa điểm trôi xuống nằm
      ngay TRƯỚC chữ "TIỀN/NGÀY" → 100.000 bị gõ vào Địa điểm → KPI "Tổng chi mỗi ngày"
      báo 0đ. Bản mới: nhãn nằm TRÊN ô + Địa điểm thành danh sách chọn + bắt lỗi tiền=0.
   ③ Ảnh bìa: `.gthumb{height:138px}` cao CỐ ĐỊNH → khổ 1600px ra 312×138 = 2,26:1.
      Ảnh 3:2 mất 34%, ảnh dọc 4:5 (khổ Facebook) mất 65% — mà bài quảng cáo là POSTER
      CÓ CHỮ nên cắt ngang là mất tiêu đề + mất dòng khuyến mãi.
      → aspect-ratio 4/5 (ảnh cao gấp 2,8 lần) + bấm xem ảnh to.

   ⚠ `.gthumb` CHỈ Ads dùng (đã rà toàn bộ) → sửa an toàn.
   ⚠ TUYỆT ĐỐI KHÔNG đụng '.mktg-root .gcard' — Seeding (.slog .gcard) xài chung.
   ⚠ Mọi class MỚI đều prefix `ads2-` để không đụng tên sẵn có.
   ══════════════════════════════════════════════════════════════════════════ */

/* ── nút "Thêm bài" DƯỚI thẻ báo cáo, canh phải cạnh dòng đếm, trên lưới thẻ (Anh Đỉnh 16/07) ── */
.mktg-root .ads-actionbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:0 0 12px 2px}
.mktg-root .ads-actionbar .ads-rescount{margin:0}
.mktg-root .ads2-add{flex:0 0 auto;background:var(--navy);color:#fff;border:0;border-radius:10px;padding:10px 18px;
  font-size:13px;font-weight:800;cursor:pointer;font-family:inherit;white-space:nowrap;box-shadow:0 2px 8px rgba(13,27,51,.18)}
.mktg-root .ads2-add:hover{background:#16294A;box-shadow:0 4px 14px rgba(13,27,51,.26)}
@media(max-width:640px){ .mktg-root .ads2-add{width:100%} }   /* điện thoại: nút xuống dòng, full ngang cho dễ bấm */

/* ── nhãn "Địa điểm chụp" (xanh) trên thẻ + xem trước (Anh Đỉnh 16/07, tự điền tay) ── */
.mktg-root .ads2-loctag{font-size:10px;font-weight:800;padding:2px 8px;border-radius:20px;
  background:#EAF3EE;color:var(--green);border:1px solid #CFE6D9;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}

/* ── GIAO VIỆC CHO LEADER — dải chỉ đạo + nút + thanh nhắc + chip lọc (Anh Đỉnh 16/07) ──
   Màu: Cho dừng = mận · Thay bài = hổ phách · Cho chạy = xanh. Prefix ads2- (không đụng class khác). */
.mktg-root .ads2-dirpend{box-shadow:0 0 0 2px var(--gold),0 8px 22px rgba(225,161,70,.22)}
.mktg-root .ads2-dir{margin:0 15px 11px;border-radius:10px;padding:10px 12px;border:1px solid}
.mktg-root .ads2-dir.stop{background:#FAF1F0;border-color:#F0DCDF}
.mktg-root .ads2-dir.swap{background:var(--gold-cream);border-color:#EFDDB8}
.mktg-root .ads2-dir.run{background:#EAF3EE;border-color:#CFE6D9}
.mktg-root .ads2-dir.none{background:var(--gold-pale);border-color:var(--gold-cream);border-style:dashed}
.mktg-root .ads2-dhd{font-size:11.5px;font-weight:900;line-height:1.35}
.mktg-root .ads2-dir.stop .ads2-dhd{color:#7A1B33}
.mktg-root .ads2-dir.swap .ads2-dhd{color:var(--amber)}
.mktg-root .ads2-dir.run .ads2-dhd{color:var(--green)}
.mktg-root .ads2-dir.none .ads2-dhd{color:var(--gold-ink)}
.mktg-root .ads2-dnote{font-size:11.5px;color:var(--text);margin-top:5px;line-height:1.45}
.mktg-root .ads2-dmeta{font-size:10.5px;color:var(--soft);margin-top:6px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.mktg-root .ads2-dbadge{font-size:9px;font-weight:800;padding:1px 7px;border-radius:20px;color:#fff}
.mktg-root .ads2-dbadge.wait{background:#7A1B33}
.mktg-root .ads2-dbadge.done{background:var(--green)}
.mktg-root .ads2-dctrl{margin:0 15px 8px;display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.mktg-root .ads2-dcl{font-size:10.5px;font-weight:700;color:var(--soft);width:100%;margin-bottom:-2px}
.mktg-root .ads2-db{border:1px solid var(--line);background:#fff;font-size:11.5px;font-weight:800;padding:6px 10px;border-radius:8px;cursor:pointer;font-family:inherit;white-space:nowrap}
.mktg-root .ads2-db.run{color:var(--green)} .mktg-root .ads2-db.run.on{background:var(--green);color:#fff;border-color:var(--green)}
.mktg-root .ads2-db.stop{color:#7A1B33} .mktg-root .ads2-db.stop.on{background:#7A1B33;color:#fff;border-color:#7A1B33}
.mktg-root .ads2-db.swap{color:var(--amber)} .mktg-root .ads2-db.swap.on{background:var(--amber);color:#fff;border-color:var(--amber)}
.mktg-root .ads2-db.done{background:var(--navy);color:#fff;border-color:var(--navy)}
.mktg-root .ads2-db.ghost{color:var(--soft)}
.mktg-root .ads2-dnotein{margin:0 15px 12px;width:calc(100% - 30px);padding:8px 11px;border:1px solid var(--line);border-radius:9px;font-size:12.5px;font-family:'Roboto',sans-serif;color:var(--text)}
.mktg-root .ads2-dnotein:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-cream)}

.mktg-root .ads2-alert{display:flex;align-items:center;gap:11px;flex-wrap:wrap;background:var(--gold-pale);border:1px solid var(--gold-cream);border-left:4px solid var(--gold);border-radius:12px;padding:11px 15px;margin-bottom:14px}
.mktg-root .ads2-alert .at{font-size:12.5px;font-weight:800;color:var(--navy)}
.mktg-root .ads2-alert .cnt{display:inline-flex;gap:6px;flex-wrap:wrap}
.mktg-root .ads2-cpill{font-size:11px;font-weight:800;padding:3px 9px;border-radius:20px}
.mktg-root .ads2-cpill.stop{background:#FAF1F0;color:#7A1B33}
.mktg-root .ads2-cpill.swap{background:var(--gold-cream);color:var(--amber)}
.mktg-root .ads2-cpill.run{background:#EAF3EE;color:var(--green)}
.mktg-root .ads2-aflt{margin-left:auto;font-size:12px;font-weight:800;color:var(--gold-ink);background:#fff;border:1px solid var(--gold-cream);border-radius:20px;padding:6px 13px;cursor:pointer;font-family:inherit}
.mktg-root .ads2-alert.clear{background:#EAF3EE;border-color:#CFE6D9;border-left-color:var(--green)}
.mktg-root .ads2-alert.clear .at{color:var(--green)}

.mktg-root .ads2-dchips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}
.mktg-root .ads2-dchip{border:1px solid var(--line);background:#fff;border-radius:20px;padding:7px 13px;font-size:12.5px;font-weight:700;color:var(--soft);cursor:pointer;font-family:inherit;display:inline-flex;align-items:center;gap:6px}
.mktg-root .ads2-dchip:hover{border-color:var(--gold)}
.mktg-root .ads2-dchip.on{background:var(--navy);color:#fff;border-color:var(--navy)}
.mktg-root .ads2-dchip .n{font-size:10.5px;font-weight:800;background:rgba(0,0,0,.08);border-radius:20px;padding:0 7px;min-width:18px;text-align:center}
.mktg-root .ads2-dchip.on .n{background:rgba(255,255,255,.22)}
.mktg-root .ads2-dchip.hot{border-color:#7A1B33;color:#7A1B33}
.mktg-root .ads2-dchip.hot.on{background:#7A1B33;color:#fff;border-color:#7A1B33}

/* ── KHU CHỈ ĐẠO TRONG FORM (dưới nhóm 3) — Anh Đỉnh chốt vị trí ── */
.mktg-root .ads2-fdir.stop{background:#FAF1F0;border-color:#F0DCDF}
.mktg-root .ads2-fdir.swap{background:#FBF1DC;border-color:#EFDDB8}
.mktg-root .ads2-fdir.run{background:#EAF3EE;border-color:#CFE6D9}
.mktg-root .ads2-fdir.none{background:var(--gold-pale);border-color:var(--gold-cream);border-style:dashed}
.mktg-root .ads2-fdh{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.mktg-root .ads2-gh2{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--gold-ink)}
.mktg-root .ads2-fdcur{font-size:12.5px;font-weight:900}
.mktg-root .ads2-fdir.stop .ads2-fdcur{color:#7A1B33}
.mktg-root .ads2-fdir.swap .ads2-fdcur{color:var(--amber)}
.mktg-root .ads2-fdir.run .ads2-fdcur{color:var(--green)}
.mktg-root .ads2-fdbtns{display:flex;gap:7px;flex-wrap:wrap}
.mktg-root .ads2-fdnote{width:100%;padding:8px 11px;border:1px solid var(--line);border-radius:9px;font-size:12.5px;font-family:'Roboto',sans-serif;color:var(--text)}
.mktg-root .ads2-fdnote:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-cream)}
.mktg-root .ads2-fdln{font-size:12px;color:var(--text)}
.mktg-root .ads2-newlink{background:#fff;border:2px solid var(--gold);border-radius:11px;padding:11px 13px;display:none}
.mktg-root .ads2-newlink.show{display:block}
.mktg-root .ads2-nlh{font-size:12px;font-weight:800;color:var(--gold-ink)}
.mktg-root .ads2-newlink input{margin:7px 0 5px}
.mktg-root .ads2-nlhint{font-size:10px;color:var(--soft);line-height:1.4}
.mktg-root .ads2-fddone{margin-top:2px}

/* ── ① ẢNH BÌA 4:5 + bấm xem to ── */
.mktg-root .gthumb{aspect-ratio:4/5;height:auto}
.mktg-root .gthumb[data-adszoom]{cursor:zoom-in}
.mktg-root .ads2-zoom{position:absolute;right:9px;bottom:9px;background:rgba(13,27,51,.72);color:#fff;
  font-size:10.5px;font-weight:700;padding:3px 8px;border-radius:20px;z-index:2;opacity:0;transition:opacity .15s;pointer-events:none}
.mktg-root .gcard:hover .ads2-zoom{opacity:1}
.mktg-root .gprice small{font-size:10.5px;color:var(--soft);font-weight:700}

/* ── xem ảnh to ── */
.mktg-root .ads2-zoomov{position:fixed;inset:0;background:rgba(13,27,51,.88);display:none;align-items:center;justify-content:center;z-index:1400;padding:30px}
.mktg-root .ads2-zoomov.show{display:flex}
.mktg-root .ads2-zoomov img{max-width:90vw;max-height:90vh;border-radius:10px;box-shadow:0 20px 60px rgba(0,0,0,.5)}
.mktg-root .ads2-zoomx{position:absolute;top:16px;right:22px;background:transparent;border:0;color:#fff;font-size:32px;cursor:pointer;line-height:1;font-family:inherit}

/* ── ② FORM ── */
.mktg-root .ads2-ov{position:fixed;inset:0;background:rgba(13,27,51,.55);display:flex;align-items:flex-start;justify-content:center;padding:22px 14px;z-index:1300;overflow:auto}
/* ⭐ 16/07 (Anh Đỉnh) — form cao vừa màn: header + footer (nút Lưu) CỐ ĐỊNH, phần thân cuộn CHUNG.
   Trước đây .ads2-left tự cuộn trong 70vh → khu "Chỉ đạo" ở dưới bị CẮT + cột phải trống. */
.mktg-root .ads2-card{background:#fff;border-radius:16px;width:980px;max-width:97vw;box-shadow:0 24px 70px rgba(13,27,51,.4);overflow:hidden;display:flex;flex-direction:column;max-height:calc(100vh - 44px)}
.mktg-root .ads2-h{flex-shrink:0;background:var(--navy);color:#fff;padding:14px 20px;display:flex;justify-content:space-between;align-items:center;gap:10px}
.mktg-root .ads2-ht{font-size:15px;font-weight:900}
.mktg-root .ads2-hs{font-size:11.5px;color:#B9C4D4;margin-top:1px}
.mktg-root .ads2-x{background:transparent;border:0;color:#fff;font-size:22px;cursor:pointer;line-height:1;padding:0 4px;font-family:inherit}
.mktg-root .ads2-body{display:grid;grid-template-columns:minmax(0,1fr) 330px;overflow:auto;flex:1 1 auto;min-height:0}
.mktg-root .ads2-left{padding:18px 20px;display:flex;flex-direction:column;gap:16px}
.mktg-root .ads2-right{background:var(--bg);border-left:1px solid var(--line);padding:18px;display:flex;flex-direction:column;gap:12px}
.mktg-root .ads2-grp{border:1px solid var(--line);border-radius:12px;padding:14px;position:relative;display:flex;flex-direction:column;gap:10px}
.mktg-root .ads2-gh{position:absolute;top:-9px;left:12px;background:#fff;padding:0 7px;font-size:10.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--gold-ink)}
.mktg-root .ads2-row{display:grid;gap:10px}
.mktg-root .ads2-row.r3{grid-template-columns:repeat(3,minmax(0,1fr))}
.mktg-root .ads2-row.r2{grid-template-columns:repeat(2,minmax(0,1fr))}
/* ⚠ nhãn PHẢI flex-column — bản cũ label là inline nên chữ dính vào ô, gây gõ nhầm cột */
.mktg-root .ads2-lb{display:flex;flex-direction:column;gap:4px;font-size:11.5px;font-weight:700;color:var(--soft);min-width:0}
.mktg-root .ads2-req{color:var(--red)}
.mktg-root .ads2-in{padding:9px 11px;border-radius:9px;border:1px solid var(--line);font-size:13px;font-family:'Roboto',sans-serif;
  color:var(--text);background:#fff;width:100%;font-weight:400;height:auto}
.mktg-root .ads2-in:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-cream)}
.mktg-root .ads2-in.err{border-color:var(--red);box-shadow:0 0 0 3px #FBEAE7}
.mktg-root .ads2-hint{font-size:10.5px;color:var(--soft);font-weight:500;line-height:1.45}
.mktg-root .ads2-hint.warn{color:var(--red);font-weight:700}
.mktg-root .ads2-hint.good{color:var(--green);font-weight:700}
.mktg-root .ads2-money{position:relative;display:block}
.mktg-root .ads2-money .ads2-in{padding-right:34px;font-weight:800;font-size:15px;text-align:right}
.mktg-root .ads2-cur{position:absolute;right:11px;top:50%;transform:translateY(-50%);font-size:12px;color:var(--soft);font-weight:800;pointer-events:none}
.mktg-root .ads2-chips{display:flex;gap:5px;flex-wrap:wrap;margin-top:2px}
.mktg-root .ads2-mchip{border:1px solid var(--line);background:var(--gold-pale);color:var(--gold-ink);border-radius:20px;
  padding:3px 10px;font-size:11px;font-weight:800;cursor:pointer;font-family:inherit}
.mktg-root .ads2-mchip:hover{background:var(--gold-cream);border-color:var(--gold)}
.mktg-root .ads2-drop{border:2px dashed var(--line);border-radius:12px;background:#fff;aspect-ratio:4/5;display:flex;
  flex-direction:column;align-items:center;justify-content:center;gap:6px;cursor:pointer;position:relative;overflow:hidden;text-align:center;padding:12px}
.mktg-root .ads2-drop:hover,.mktg-root .ads2-drop.over{border-color:var(--gold);background:var(--gold-pale)}
.mktg-root .ads2-dic{font-size:34px}
.mktg-root .ads2-dt{font-size:11.5px;font-weight:700;color:var(--navy)}
.mktg-root .ads2-dd2{font-size:10.5px;color:var(--soft)}
.mktg-root .ads2-drop img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.mktg-root .ads2-rm{position:absolute;top:7px;right:7px;background:rgba(13,27,51,.75);color:#fff;border:0;border-radius:20px;
  padding:3px 9px;font-size:11px;font-weight:700;cursor:pointer;z-index:2;font-family:inherit}
.mktg-root .ads2-pvt{font-size:10.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--gold-ink)}
.mktg-root .ads2-pv{pointer-events:none}
.mktg-root .ads2-f{flex-shrink:0;display:flex;justify-content:space-between;align-items:center;gap:10px;padding:13px 20px;border-top:1px solid var(--line);background:var(--gold-pale)}
.mktg-root .ads2-msg{font-size:11.5px;font-weight:700;color:var(--red)}
.mktg-root .ads2-btn{border:1px solid var(--line);background:#fff;color:var(--navy);font-size:13px;font-weight:800;
  padding:9px 18px;border-radius:10px;cursor:pointer;font-family:inherit}
.mktg-root .ads2-btn.nav{background:var(--navy);color:#fff;border-color:var(--navy)}
.mktg-root .ads2-btn.nav:hover{background:#16294A}

@media(max-width:860px){
  .mktg-root .ads2-body{grid-template-columns:minmax(0,1fr)}
  .mktg-root .ads2-right{border-left:0;border-top:1px solid var(--line)}
  .mktg-root .ads2-left{max-height:none}
  .mktg-root .ads2-row.r3,.mktg-root .ads2-row.r2{grid-template-columns:minmax(0,1fr)}
  .mktg-root .ads2-ov{padding:10px 8px}
}

/* ⭐ 17/07 — Seeding Mời review: TÁCH chờ/đã duyệt (cột Khách liên hệ) + DÒ TRÙNG link kênh */
.smr-root .smr-lhseg{ display:flex; gap:4px; background:#F1EBDF; border-radius:9px; padding:3px; flex-wrap:wrap; margin:2px 0; }
.smr-root .smr-lhseg-b{ border:none; background:transparent; border-radius:7px; padding:5px 9px; font-size:11px; font-weight:800; color:var(--soft); cursor:pointer; font-family:inherit; white-space:nowrap; }
.smr-root .smr-lhseg-b.on{ background:#fff; color:var(--navy); box-shadow:0 1px 2px rgba(0,0,0,.08); }
.smr-root .smr-lhseg-b.on.cho{ color:#7A1B33; }
.smr-root .smr-lhseg-b.on.duyet{ color:#8A5A16; }
.smr-root .sd-mhd .smr-lhseg{ margin:0 8px; }
.smr-root .smr-grph{ font-size:11px; font-weight:900; letter-spacing:.02em; padding:9px 4px 4px; display:flex; align-items:center; gap:8px; }
.smr-root .smr-grph.cho{ color:#7A1B33; }
.smr-root .smr-grph.duyet{ color:#8A5A16; }
.smr-root .smr-grph .pill{ font-size:10px; font-weight:800; padding:1px 8px; border-radius:999px; }
.smr-root .smr-grph.cho .pill{ background:#F6E7EC; color:#7A1B33; }
.smr-root .smr-grph.duyet .pill{ background:var(--gold-cream,#FBF1DC); color:#8A5A16; }
.smr-root .sd-mgrid .smr-grph{ grid-column:1/-1; margin-top:4px; border-top:1px dashed var(--line); }
.smr-root .sd-mgrid .smr-grph:first-child{ border-top:none; margin-top:0; }
/* badge "Trùng link" — theo .smr-bdg */
.smr-root .smr-bdg.dup{ background:#FBEEDD; color:#B9791C; border:1px solid #F1DDBD; }
/* banner cảnh báo trùng */
.smr-root .smr-dupbar{ border:1px solid #F1DDBD; border-left:4px solid #B9791C; background:linear-gradient(90deg,#FBEEDD,var(--panel) 72%); border-radius:12px; padding:12px 15px; margin:0 0 14px; }
.smr-root .smr-dupt{ font-size:13px; font-weight:800; color:var(--navy); }
.smr-root .smr-dupt b{ color:#B9791C; }
.smr-root .smr-dups{ font-size:11.5px; color:#6B6350; margin-top:3px; line-height:1.5; }
.smr-root .smr-dups b{ color:var(--navy); }
.smr-root .smr-dupbtn{ margin-top:9px; border:none; background:var(--navy); color:#fff; border-radius:8px; padding:7px 13px; font-size:12px; font-weight:800; cursor:pointer; }
.smr-root .smr-dupbtn:hover{ background:#15294a; }
/* overlay các nhóm trùng (dùng .sd-ov / .sd-modal sẵn có) */
.smr-root .smr-dupmodal{ max-width:960px; }
.smr-root .smr-dupbody{ padding:14px 16px; overflow:auto; }
.smr-root .smr-dupg{ border:1px solid #F1DDBD; border-radius:12px; overflow:hidden; margin-bottom:12px; }
.smr-root .smr-dupg-h{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; padding:10px 14px; background:#FCF6EC; }
.smr-root .smr-dupg-lk{ font-size:12.5px; font-weight:800; color:var(--navy); display:flex; align-items:center; gap:6px; }
.smr-root .smr-dupg-lk .smr-ki{ width:14px; height:14px; display:inline-flex; }
.smr-root .smr-dupg-cnt{ font-size:11px; font-weight:800; color:#B9791C; }
.smr-root .smr-dupg-act{ margin-left:auto; }
.smr-root .smr-gbtn{ border:1px solid var(--line); background:var(--panel); border-radius:8px; padding:6px 11px; font-size:11.5px; font-weight:800; cursor:pointer; color:var(--navy); }
.smr-root .smr-gbtn:hover{ background:#FBF8F1; }
.smr-root .smr-dupg-cards{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:11px; padding:12px 14px; }
.smr-root .smr-dupcard{ display:flex; flex-direction:column; gap:6px; }
.smr-root .smr-dupcard.smr-dc-hidden{ opacity:.55; }
.smr-root .smr-duphide, .smr-root .smr-dupshow{ width:100%; border:1px solid var(--line); background:var(--panel); border-radius:8px; padding:6px; font-size:11px; font-weight:700; cursor:pointer; color:var(--soft); }
.smr-root .smr-dupshow{ color:#2E7D5B; border-color:#CFE6D9; }
@media(max-width:900px){ .smr-root .smr-dupg-cards{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:560px){ .smr-root .smr-dupg-cards{ grid-template-columns:minmax(0,1fr); } }

/* ── TÍCH HỢP XƯỞNG KỊCH BẢN: nút ▤ Kho + bảng chọn kịch bản (thêm 08/2026) ── */
.vmx-lkkho{ border:1px solid #E1A146; background:#fffdf6; color:#9a6a12; border-radius:7px; padding:0 8px; height:28px; font-size:11px; font-weight:700; cursor:pointer; white-space:nowrap; }
.vmx-lkkho:hover{ background:#fbf1d8; }
.vidkho-ov{ display:none; position:fixed; inset:0; background:rgba(13,27,51,.42); z-index:9999; align-items:flex-start; justify-content:center; padding:8vh 14px; }
.vidkho-box{ background:#fff; border-radius:14px; max-width:560px; width:100%; max-height:76vh; display:flex; flex-direction:column; box-shadow:0 18px 50px rgba(0,0,0,.28); overflow:hidden; }
.vidkho-h{ display:flex; align-items:center; justify-content:space-between; padding:14px 16px; border-bottom:1px solid #ece5d8; }
.vidkho-h b{ color:#0d1b33; font-size:15px; }
.vidkho-x{ border:0; background:none; font-size:16px; color:#8a8170; cursor:pointer; }
.vidkho-srch{ margin:12px 16px 8px; padding:9px 12px; border:1px solid #ece5d8; border-radius:9px; font-size:13px; font-family:inherit; }
.vidkho-list{ overflow:auto; padding:0 16px 14px; display:flex; flex-direction:column; gap:8px; }
.vidkho-item{ display:flex; align-items:center; gap:10px; border:1px solid #ece5d8; border-radius:10px; padding:9px 11px; }
.vidkho-info{ flex:1; min-width:0; }
.vidkho-info b{ display:block; color:#0d1b33; font-size:13px; }
.vidkho-info span{ font-size:11.5px; color:#7a7d88; }
.vidkho-sc{ font-weight:700; color:#2e7d52; background:#eaf5ef; border-radius:7px; padding:2px 8px; font-size:11.5px; white-space:nowrap; }
.vidkho-pick{ border:0; background:#0d1b33; color:#fff; border-radius:8px; padding:7px 13px; font-size:12.5px; font-weight:600; cursor:pointer; }
.vidkho-empty{ color:#9a927f; text-align:center; padding:22px; font-size:13px; }
