/* =========================================================================
   X-DMAIC diagnostic.css — Chẩn đoán vận hành marketing /chan-doan-van-hanh/ (page-diagnostic.php).
   Bố cục: câu hỏi bên trái, bảng kết quả nền Ink dính bên phải; phân tích, tiền rò, điều kiện, lộ trình chạy
   toàn chiều ngang bên dưới. Màu trạng thái giống strategy.css (đỏ = yếu, vàng = cần lưu ý, xanh lá = đạt).
   ========================================================================= */
.xd-dg{--dg-rule:rgba(11,18,32,.12);--dg-soft:#E9EDF3;
  --dg-bad:#B91C1C;--dg-bad-bg:#FEF2F2;--dg-warn:#92400E;--dg-warn-bg:#FFFBEB;--dg-good:#15803D;--dg-good-bg:#F0FDF4}
/* Nội dung theo quy mô: data-only="team" | "big" */
.xd-dg[data-scale="team"] [data-only="big"],.xd-dg[data-scale="big"] [data-only="team"]{display:none!important}

/* ---------- Hero ---------- */
.xd-dg-hero{gap:22px;position:relative}
/* Ảnh xem trước báo cáo (thay mascot): khách thấy ngay mình nhận được gì. Không giới hạn khung hero để thẳng mép logo */
.xd-dg-preview{position:absolute;right:var(--xd-gutter,32px);top:50%;transform:translateY(-42%);width:min(30vw,380px);margin:0;display:flex;flex-direction:column;gap:16px;padding:22px;border-radius:24px;background:var(--xd-ink);color:#fff;box-shadow:var(--xd-shadow-2)}
.xd-dg-preview figcaption{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;color:var(--xd-muted)}
.xd-dg-preview__top{display:flex;align-items:center;gap:16px}
.xd-dg-preview__top svg{flex:none}
.xd-dg-preview__top b{display:block;font-size:16px}
.xd-dg-preview__lv{display:inline-block;margin-top:6px;padding:3px 9px;border-radius:6px;background:var(--xd-lime);color:var(--xd-ink);font-size:12.5px;font-weight:800}
.xd-dg-preview__fn{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.xd-dg-preview__fn li{display:flex;flex-direction:column;gap:2px;padding:8px;border-radius:10px;background:#18233A;font-size:11.5px;color:#C7CDD8;border:1.5px solid transparent}
.xd-dg-preview__fn b{font-size:17px;color:#fff}
.xd-dg-preview__fn .is-bad b{color:#F07068}.xd-dg-preview__fn .is-warn b{color:#F2B347}
.xd-dg-preview__fn .is-lead{border-color:#F07068}
.xd-dg-preview__dl{margin:0;display:flex;flex-direction:column;gap:8px;padding-top:12px;border-top:1px solid #26324A}
.xd-dg-preview__dl div{display:flex;justify-content:space-between;gap:12px;font-size:13.5px}
.xd-dg-preview__dl dt{color:var(--xd-muted)}
.xd-dg-preview__dl dd{margin:0;font-weight:700;text-align:right}
@media (max-width:1100px){.xd-dg-preview{display:none}}
.xd-dg-hero__h{font-size:var(--xd-t-h1-detail);font-weight:800;line-height:1.08;letter-spacing:-.04em;max-width:900px}
.xd-dg-hl{text-decoration:underline;text-decoration-color:var(--xd-lime);text-decoration-thickness:.14em;text-underline-offset:.12em}
.xd-dg-hero .xd-lead{color:rgba(255,255,255,.92);max-width:760px}
.xd-dg-facts{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.xd-dg-facts li{padding:6px 14px;border-radius:var(--xd-r-pill);border:1px solid rgba(255,255,255,.4);font-size:14px;font-weight:600}
.xd-dg-hero__note{font-size:14px;color:rgba(255,255,255,.88);max-width:720px}
@media (max-width:520px){.xd-dg-hero .xd-actions .xb{width:100%;white-space:normal;text-align:center}}

/* ---------- Khung chung ---------- */
.xd-dgm{padding-bottom:0}
.xd-dg-sec{padding-top:clamp(56px,6vw,88px);display:flex;flex-direction:column;gap:24px}
.xd-dg-ek{display:block;font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--xd-sub)}
.xd-dg-head{display:flex;flex-direction:column;gap:10px;max-width:820px}
.xd-dg-head>p:last-child{color:var(--xd-sub-2);font-size:16px;line-height:1.7}
.xd-dg-h2{font-size:clamp(26px,3vw,40px);font-weight:800;line-height:1.15;letter-spacing:-.025em}
.xd-dg-note{font-size:14px;color:var(--xd-sub-2);max-width:860px}
.xd-dg-tag{display:inline-block;align-self:flex-start;width:fit-content;padding:3px 9px;border-radius:6px;background:var(--xd-lime);color:var(--xd-ink);font-size:11.5px;font-weight:800;letter-spacing:.08em}
.xd-dg-tag[hidden]{display:none}
.xd-dg-noscript{padding:16px 20px;border-radius:var(--xd-r-sm);background:#fff;border:1px solid var(--dg-rule)}
.xd-dg-noscript a{color:var(--xd-blue)}

/* ---------- Quy mô ---------- */
.xd-dg-scale{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;padding:0;border:0;min-width:0}
.xd-dg-scale legend{grid-column:1/-1;margin-bottom:10px;padding:0}
.xd-dg-scale__o{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:start;padding:18px 20px;border-radius:var(--xd-r-md);
  background:#fff;border:1.5px solid var(--dg-rule);cursor:pointer;transition:border-color var(--xd-fast),box-shadow var(--xd-fast)}
.xd-dg-scale__o:hover{border-color:var(--xd-ink)}
.xd-dg-scale__o input{width:20px;height:20px;margin:2px 0 0;accent-color:var(--xd-blue)}
.xd-dg-scale__o span{display:flex;flex-direction:column;gap:4px}
.xd-dg-scale__o b{font-size:17px;font-weight:800}
.xd-dg-scale__o small{font-size:14px;color:var(--xd-sub-2);line-height:1.5}
.xd-dg-scale__o:has(input:checked){border-color:var(--xd-blue);box-shadow:inset 0 0 0 1px var(--xd-blue);background:var(--xd-blue-50)}
@media (max-width:640px){.xd-dg-scale{grid-template-columns:minmax(0,1fr)}}

/* ---------- Banner ví dụ / tự chấm ---------- */
.xd-dg-banner{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center;justify-content:space-between;padding:14px 18px;border-radius:var(--xd-r-md);background:#fff;border:1px solid var(--dg-rule)}
.xd-dg-banner.is-sample{background:var(--dg-warn-bg);border-color:#F3D9A4}
.xd-dg-banner p{flex:1 1 320px;min-width:0;font-size:15px}
.xd-dg-banner__btns{display:flex;flex-wrap:wrap;gap:8px}
.xd-dg-banner .xb-line{color:var(--xd-ink)}
.xd-dg-reset.is-armed{background:var(--dg-bad);color:#fff;box-shadow:none}
@media (max-width:520px){.xd-dg-banner__btns,.xd-dg-banner__btns .xb{width:100%}.xd-dg-banner__btns .xb{white-space:normal}}

/* ---------- Câu hỏi + bảng kết quả ---------- */
.xd-dg-grid{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:28px;align-items:start}
@media (max-width:1040px){.xd-dg-grid{grid-template-columns:minmax(0,1fr)}.xd-dg-panel{position:static!important}}
.xd-dg-qs{display:flex;flex-direction:column;gap:18px;min-width:0}
.xd-dg-howto{font-size:15px;padding:12px 16px;border-radius:var(--xd-r-sm);background:var(--xd-blue-50);border:1px solid var(--xd-blue-100)}
.xd-dg-gh{display:flex;flex-direction:column;gap:4px;margin-top:14px}
.xd-dg-gh h3{font-size:22px;font-weight:800;letter-spacing:-.01em}
.xd-dg-gh p{font-size:15px;color:var(--xd-sub-2)}
.xd-dg-pillar{background:#fff;border:1px solid var(--dg-rule);border-radius:20px;padding:24px;scroll-margin-top:16px}
.xd-dg-pillar.is-strat{border-style:dashed;border-width:1.5px}
.xd-dg-pillar>header{display:flex;gap:16px;justify-content:space-between;align-items:flex-start;margin-bottom:18px}
.xd-dg-pillar>header>div{min-width:0;display:flex;flex-direction:column;gap:4px}
.xd-dg-pillar h3{font-size:20px;font-weight:800;line-height:1.25;letter-spacing:-.01em}
.xd-dg-pn{color:var(--xd-blue)}
.xd-dg-pillar header p{color:var(--xd-sub-2);font-size:15px;max-width:62ch}
.xd-dg-chip{flex:none;padding:4px 10px;border-radius:8px;background:var(--dg-soft);color:var(--xd-sub-2);font-size:13px;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}
.xd-dg-chip.is-bad{background:var(--dg-bad-bg);color:var(--dg-bad)}
.xd-dg-chip.is-warn{background:var(--dg-warn-bg);color:var(--dg-warn)}
.xd-dg-chip.is-good{background:var(--dg-good-bg);color:var(--dg-good)}
.xd-dg-q{border:0;margin:0;padding:0;min-width:0}
.xd-dg-q+.xd-dg-q{margin-top:22px;padding-top:22px;border-top:1px dashed var(--dg-rule)}
.xd-dg-q legend{float:left;width:100%;display:flex;gap:10px;padding:0;margin-bottom:12px;font-size:16px;font-weight:700;line-height:1.45}
.xd-dg-qn{flex:none;color:var(--xd-blue);font-size:14px;padding-top:2px;font-variant-numeric:tabular-nums}
.xd-dg-opts{display:grid;gap:8px;clear:both}
.xd-dg-opt{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:start;min-height:44px;padding:11px 14px;border:1px solid var(--dg-rule);border-radius:var(--xd-r-sm);
  background:#fff;cursor:pointer;font-size:15px;line-height:1.5;transition:border-color var(--xd-fast),background var(--xd-fast)}
.xd-dg-opt:hover{border-color:var(--xd-blue)}
.xd-dg-opt input{width:18px;height:18px;margin:2px 0 0;accent-color:var(--xd-blue)}
.xd-dg-opt.is-na span{color:var(--xd-sub-2);font-style:italic}
.xd-dg-opt:has(input:checked){border-color:var(--xd-blue);background:var(--xd-blue-50)}
.xd-dg-opt:has(input:focus-visible){outline:3px solid var(--xd-blue);outline-offset:2px}
.xd-dg-opt input:focus-visible{outline:0}
.xd-dg-qs.is-locked .xd-dg-opt,.xd-dg-qs.is-locked .xd-dg-seg label{cursor:default}
.xd-dg-qs.is-locked .xd-dg-opt:hover{border-color:var(--dg-rule)}
.xd-dg-qs.is-locked .xd-dg-opt:has(input:checked):hover{border-color:var(--xd-blue)}

/* Câu chiến lược: nút phân đoạn */
.xd-dg-sq{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 16px;align-items:center;padding-block:14px;border-top:1px dashed var(--dg-rule)}
.xd-dg-sq:first-of-type{border-top:0;padding-top:0}
.xd-dg-sq>div:first-child{min-width:0;display:flex;flex-direction:column;gap:2px}
.xd-dg-sq b{font-size:15.5px;font-weight:700}
.xd-dg-sq>div:first-child span{font-size:14px;color:var(--xd-sub-2)}
.xd-dg-seg{display:inline-flex;border:1px solid var(--dg-rule);border-radius:var(--xd-r-sm);overflow:hidden;background:#fff}
.xd-dg-seg label{position:relative;display:flex;align-items:center;justify-content:center;min-height:44px;padding:6px 12px;font-size:14px;cursor:pointer;border-left:1px solid var(--dg-rule);white-space:nowrap}
.xd-dg-seg label:first-child{border-left:0}
.xd-dg-seg input{position:absolute;opacity:0;width:1px;height:1px}
.xd-dg-seg label:has(input:focus-visible){outline:3px solid var(--xd-blue);outline-offset:-3px}
.xd-dg-seg label:has(input:checked){background:var(--xd-blue-50);color:var(--xd-blue-700);font-weight:700}
.xd-dg-seg label.is-no:has(input:checked){background:var(--dg-bad-bg);color:var(--dg-bad)}
@media (max-width:640px){
  .xd-dg-sq{grid-template-columns:minmax(0,1fr)}
  .xd-dg-seg{display:flex;width:100%}
  .xd-dg-seg label{flex:1;padding-inline:6px;white-space:normal;text-align:center;line-height:1.3}
  .xd-dg-pillar{padding:18px}
  .xd-dg-pillar>header{flex-direction:column;gap:10px}
}

/* Bảng kết quả (nền Ink) */
.xd-dg-panel{position:sticky;top:16px;display:flex;flex-direction:column;gap:12px;padding:24px;border-radius:var(--xd-r-lg);background:var(--xd-ink);color:var(--xd-on-dark)}
.xd-dg-panel .xd-dg-ek{color:var(--xd-muted)}
.xd-dg-panel :focus-visible{outline-color:var(--xd-lime)}
.xd-dg-score{display:flex;align-items:baseline;gap:8px}
.xd-dg-score b{font-size:64px;font-weight:800;line-height:1;letter-spacing:-.04em;color:var(--xd-lime);font-variant-numeric:tabular-nums}
.xd-dg-score span{color:var(--xd-muted);font-size:18px}
.xd-dg-level{align-self:flex-start;padding:5px 10px;border-radius:8px;background:var(--xd-lime);color:var(--xd-ink);font-size:14px;font-weight:800}
.xd-dg-level.is-off{background:#26324A;color:#D3D8E1}
.xd-dg-level__d{font-size:14px;color:rgba(255,255,255,.82);line-height:1.55}
.xd-dg-radar{width:100%;height:auto;display:block}
.xd-dg-radar text{font-family:var(--xd-font);font-size:12px;fill:#D3D8E1}
.xd-dg-bars{display:flex;flex-direction:column;gap:7px}
.xd-dg-bh{font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--xd-muted);margin-top:4px}
.xd-dg-bar{display:grid;grid-template-columns:96px minmax(0,1fr) 30px;gap:10px;align-items:center;font-size:13.5px}
.xd-dg-bar__t{height:8px;border-radius:99px;background:#26324A;overflow:hidden}
.xd-dg-bar__t i{display:block;height:100%;border-radius:99px;background:var(--xd-lime);transition:width .3s var(--xd-ease)}
.xd-dg-bar__t i.is-bad{background:#F87171}
.xd-dg-bar__t i.is-warn{background:#FBBF24}
.xd-dg-bar b{text-align:right;font-weight:700;font-variant-numeric:tabular-nums}
.xd-dg-progress{display:flex;flex-direction:column;gap:4px;padding-top:12px;border-top:1px solid var(--xd-line-dark);font-size:13px;color:var(--xd-muted)}
.xd-dg-panel__go{align-self:stretch}
.xd-dg-panel>.xd-dg-tag{margin-bottom:-4px}

/* ---------- Thẻ phân tích ---------- */
.xd-dg-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:16px}
.xd-dg-card{display:flex;flex-direction:column;gap:14px;padding:24px;border-radius:20px;background:#fff;border:1px solid var(--dg-rule);min-width:0}
.xd-dg-card h3{font-size:20px;font-weight:800;letter-spacing:-.01em}
.xd-dg-card__h{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.xd-dg-row{display:flex;flex-direction:column;gap:4px;font-size:15px}
.xd-dg-row ul{margin:0;padding-left:18px;display:grid;gap:4px}
.xd-dg-hyp{padding:12px 14px;border-radius:var(--xd-r-sm);background:var(--xd-paper);font-size:14.5px;line-height:1.6}
.xd-dg-hyp i{color:var(--xd-sub-2)}
.xd-dg-cards>.xd-dg-note{grid-column:1/-1}

/* ---------- Tiền rò ---------- */
.xd-dg-inputs{display:grid;gap:14px}
.xd-dg-field{display:flex;flex-direction:column;gap:5px}
.xd-dg-field label{font-size:15px;font-weight:700}
.xd-dg-field small{font-size:13px;color:var(--xd-sub-2);line-height:1.5}
.xd-dg-err{font-size:13px;font-weight:600;color:var(--dg-bad)}
.xd-dg-err:empty{display:none}
.xd-dg-inbox{display:flex;align-items:stretch;max-width:280px;border:1.5px solid var(--dg-rule);border-radius:var(--xd-r-sm);background:#fff;overflow:hidden}
.xd-dg-inbox:focus-within{border-color:var(--xd-blue);box-shadow:0 0 0 3px var(--xd-blue-100)}
.xd-dg-inbox:has(input[aria-invalid="true"]){border-color:var(--dg-bad)}
.xd-dg-inbox input{flex:1;min-width:0;min-height:44px;border:0;background:transparent;padding:8px 12px;font-size:16px;font-weight:600;font-variant-numeric:tabular-nums}
.xd-dg-inbox input:focus{outline:none}
.xd-dg-inbox input:disabled{color:var(--xd-sub-2);-webkit-text-fill-color:var(--xd-sub-2);opacity:1}
.xd-dg-inbox span{display:flex;align-items:center;padding:0 12px;border-left:1px solid var(--dg-rule);background:var(--xd-paper);color:var(--xd-sub-2);font-size:13.5px;white-space:nowrap}
.xd-dg-ledger{display:flex;flex-direction:column;border-top:1px solid var(--dg-rule)}
.xd-dg-li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 16px;padding:12px 0;border-bottom:1px solid var(--dg-rule)}
.xd-dg-li b{font-size:15px;font-weight:600}
.xd-dg-li.is-sum b,.xd-dg-li.is-sum .xd-dg-amt{font-weight:800}
.xd-dg-amt{text-align:right;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}
.xd-dg-f{grid-column:1/-1;font-size:13px;color:var(--xd-sub-2)}
.xd-dg-total{display:flex;flex-direction:column;gap:8px;padding:24px 28px;border-radius:var(--xd-r-lg);background:var(--xd-ink);color:var(--xd-on-dark)}
.xd-dg-total .xd-dg-ek{color:var(--xd-muted)}
.xd-dg-total__v{font-size:clamp(28px,4vw,40px);font-weight:800;letter-spacing:-.02em;color:var(--xd-lime);font-variant-numeric:tabular-nums}
.xd-dg-total p:last-child{font-size:15px;color:rgba(255,255,255,.82);max-width:84ch}

/* ---------- Điều kiện ---------- */
.xd-dg-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
@media (max-width:900px){.xd-dg-two{grid-template-columns:minmax(0,1fr)}}
.xd-dg-group{display:flex;flex-direction:column;gap:10px;min-width:0}
.xd-dg-group>h3{font-size:19px;font-weight:800}
.xd-dg-gate{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:12px;align-items:start;padding:14px 16px;border-radius:var(--xd-r-sm);background:#fff;border:1px solid var(--dg-rule)}
.xd-dg-gate__i{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-size:13px;font-weight:800}
.xd-dg-gate.is-pass .xd-dg-gate__i{background:var(--dg-good-bg);color:var(--dg-good)}
.xd-dg-gate.is-fail .xd-dg-gate__i{background:var(--dg-bad-bg);color:var(--dg-bad)}
.xd-dg-gate.is-warn .xd-dg-gate__i{background:var(--dg-warn-bg);color:var(--dg-warn)}
.xd-dg-gate.is-unk .xd-dg-gate__i{background:var(--dg-soft);color:var(--xd-sub-2)}
.xd-dg-gate b{font-weight:700;font-size:15px}
.xd-dg-gate p{font-size:14px;color:var(--xd-sub-2)}
.xd-dg-gate__c{font-size:13px;color:var(--xd-sub-2);text-align:right;white-space:nowrap;padding-top:2px;font-variant-numeric:tabular-nums}
@media (max-width:520px){.xd-dg-gate{grid-template-columns:28px minmax(0,1fr)}.xd-dg-gate__c{grid-column:2;text-align:left;white-space:normal}}
.xd-dg-verdict{display:flex;flex-direction:column;gap:6px;padding:16px 18px;border-radius:var(--xd-r-sm);border:1px solid var(--dg-rule);font-size:15px}
.xd-dg-verdict b{font-size:17px;font-weight:800}
.xd-dg-verdict ul{margin:0;padding-left:18px}
.xd-dg-verdict.is-pass{background:var(--dg-good-bg)}
.xd-dg-verdict.is-part{background:var(--dg-warn-bg)}
.xd-dg-verdict.is-fail{background:var(--dg-bad-bg)}
.xd-dg-verdict.is-unk{background:var(--dg-soft)}

/* ---------- Lộ trình ---------- */
.xd-dg-road{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border:1px solid var(--dg-rule);border-radius:20px;overflow:hidden;background:#fff}
@media (max-width:1100px){.xd-dg-road{grid-template-columns:minmax(0,1fr)}}
.xd-dg-phase{display:flex;flex-direction:column;gap:12px;padding:20px;border-right:1px solid var(--dg-rule);min-width:0}
.xd-dg-phase:last-child{border-right:0}
@media (max-width:1100px){.xd-dg-phase{border-right:0;border-bottom:1px solid var(--dg-rule)}.xd-dg-phase:last-child{border-bottom:0}}
.xd-dg-phase.is-base{background:var(--xd-paper)}
.xd-dg-step{align-self:flex-start;padding:4px 10px;border-radius:6px;background:var(--xd-blue);color:#fff;font-size:12.5px;font-weight:800;letter-spacing:.08em}
.xd-dg-phase.is-base .xd-dg-step{background:var(--xd-ink)}
.xd-dg-phase.is-try .xd-dg-step{background:var(--xd-lime);color:var(--xd-ink)}
.xd-dg-phase h3{font-size:16px;font-weight:800;line-height:1.35}
.xd-dg-wk{display:block;margin-top:2px;font-size:12.5px;color:var(--xd-sub-2)}
.xd-dg-phase ul{margin:0;padding-left:18px;display:grid;gap:6px;font-size:14px}
.xd-dg-phase li.is-hyp{list-style:none;margin-left:-18px}
.xd-dg-phase .xd-dg-hyp{font-size:13.5px}
.xd-dg-out{margin-top:auto;padding-top:10px;border-top:1px dashed var(--dg-rule);font-size:13px;color:var(--xd-sub-2)}
.xd-dg-foot{display:grid;gap:8px;margin:0;padding:0;list-style:none}
.xd-dg-foot li{display:grid;grid-template-columns:150px minmax(0,1fr);gap:12px;align-items:baseline;padding:12px 16px;border-radius:var(--xd-r-sm);background:#fff;border:1px solid var(--dg-rule);font-size:15px}
@media (max-width:560px){.xd-dg-foot li{grid-template-columns:minmax(0,1fr);gap:2px}}

/* ---------- Bảng chỉ số ---------- */
/* Bảng chỉ số: cột cố định, ngắt dòng tự nhiên (không rớt chữ lẻ), nhãn hướng màu; mobile thành thẻ */
.xd-dg-tbl{border:1px solid var(--dg-rule);border-radius:20px;background:#fff;overflow:hidden}
.xd-dg-tbl table{border-collapse:collapse;width:100%;table-layout:fixed;font-size:14.5px;line-height:1.55}
.xd-dg-tbl col.c1{width:25%}.xd-dg-tbl col.c2{width:41%}.xd-dg-tbl col.c3{width:21%}.xd-dg-tbl col.c4{width:13%}
.xd-dg-tbl th,.xd-dg-tbl td{text-align:left;padding:14px 18px;border-bottom:1px solid var(--dg-rule);vertical-align:top;text-wrap:pretty;overflow-wrap:normal;word-break:normal;hyphens:none}
.xd-dg-tbl th{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--xd-sub-2);background:var(--xd-paper);white-space:nowrap}
.xd-dg-tbl tbody tr:not(.is-grp):hover td{background:#FAFBFD}
.xd-dg-tbl tr:last-child td{border-bottom:0}
.xd-dg-tbl td:first-child{font-weight:700;color:var(--xd-ink)}
.xd-dg-tbl td:nth-child(2){color:var(--xd-sub-2)}
.xd-dg-tbl tr.is-grp td{background:var(--xd-paper);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--xd-ink);padding-block:10px;box-shadow:inset 4px 0 0 var(--xd-blue)}
.xd-dg-tbl tr[hidden]{display:none}
.xd-dg-dir{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:13px;font-weight:700;white-space:nowrap}
.xd-dg-dir i{font-style:normal}
.xd-dg-dir.is-up{background:var(--dg-good-bg);color:var(--dg-good)}
.xd-dg-dir.is-down{background:var(--xd-blue-50,#EEF4FF);color:var(--xd-blue)}
.xd-dg-dir.is-keep{background:var(--dg-soft);color:var(--xd-sub-2)}
@media (max-width:760px){
  .xd-dg-tbl{border:0;background:none;border-radius:0}
  .xd-dg-tbl table,.xd-dg-tbl tbody,.xd-dg-tbl tr,.xd-dg-tbl td{display:block;width:100%}
  .xd-dg-tbl thead,.xd-dg-tbl colgroup{display:none}
  .xd-dg-tbl tr{margin-bottom:10px;padding:14px 16px;border:1px solid var(--dg-rule);border-radius:16px;background:#fff}
  .xd-dg-tbl tr.is-grp{margin:18px 0 8px;padding:0;border:0;background:none}
  .xd-dg-tbl tr.is-grp td{padding:6px 0 6px 12px;background:none}
  .xd-dg-tbl td{padding:4px 0;border:0}
  .xd-dg-tbl td[data-label]:not(:first-child)::before{content:attr(data-label);display:block;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--xd-sub)}
  .xd-dg-tbl td:first-child{font-size:16px;padding-bottom:8px}
  .xd-dg-tbl td.is-dir{padding-top:8px}
  .xd-dg-tbl td.is-dir::before{display:none!important}
  .xd-dg-tbl tbody tr:not(.is-grp):hover td{background:none}
}

/* ---------- Bước tiếp theo (nền lưới xanh) ---------- */
.xd-dg-cta{margin-top:clamp(64px,7vw,104px);padding-block:clamp(64px,7vw,104px)}
.xd-dg-cta__in{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:48px;align-items:start}
@media (max-width:960px){.xd-dg-cta__in{grid-template-columns:minmax(0,1fr);gap:28px}}
.xd-dg-cta__copy,.xd-dg-cta__copy>div{display:flex;flex-direction:column;gap:18px}
.xd-dg-cta__h{font-size:clamp(28px,3.4vw,46px);font-weight:800;line-height:1.12;letter-spacing:-.03em}
.xd-dg-cta .xd-lead{color:rgba(255,255,255,.92)}
.xd-dg-cta__list{margin:0;padding:0;list-style:none;display:grid;gap:10px}
.xd-dg-cta__list li{display:grid;grid-template-columns:22px minmax(0,1fr);gap:8px;font-size:16px}
.xd-dg-cta__list li::before{content:"";width:10px;height:10px;margin-top:8px;border-radius:99px;background:var(--xd-lime)}
.xd-dg-cta__link{align-self:flex-start;display:inline-flex;align-items:center;min-height:44px;font-weight:700;color:#fff}
.xd-dg-cta__link:hover{color:var(--xd-lime)}
.xd-dg-cta__act{display:flex;flex-direction:column;align-items:flex-start;gap:18px;padding:28px;border-radius:var(--xd-r-lg);background:var(--xd-ink);border:1px solid var(--xd-line-dark)}
.xd-dg-cta__act>p:first-child{font-size:16px;color:rgba(255,255,255,.9)}
.xd-dg-cta__fine{font-size:13.5px;color:rgba(255,255,255,.78)}
.xd-dg-cta__fine:empty{display:none}
.xd-dg-cta__fine a{color:#fff}
@media (max-width:520px){.xd-dg-cta__act{padding:20px}.xd-dg-cta__act .xb{width:100%;white-space:normal;text-align:center}}

/* ---------- Ghi chú phương pháp ---------- */
.xd-dg-method{display:flex;flex-direction:column;gap:12px;padding-block:40px 64px;font-size:14px;color:var(--xd-sub-2);max-width:var(--xd-container)}
.xd-dg-method p{max-width:900px}
.xd-dg-method a{color:var(--xd-blue);font-weight:700}
.xd-dg-method b{color:var(--xd-ink)}
.xd-dg-cta :focus-visible{outline-color:var(--xd-lime)}

/* Thanh điểm bám đáy (mobile) */
.xd-dg-sticky{position:fixed;left:12px;right:84px;bottom:16px;z-index:40;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 8px 8px 16px;border-radius:16px;background:var(--xd-ink);color:#fff;box-shadow:var(--xd-shadow-2);font-size:14px;transform:translateY(140%);opacity:0;transition:transform var(--xd-fast),opacity var(--xd-fast);pointer-events:none}
.xd-dg-sticky b{font-size:18px;color:var(--xd-lime)}
.xd-dg-sticky>span{white-space:nowrap;min-width:0;overflow:hidden;text-overflow:ellipsis}
.xd-dg-sticky small{color:var(--xd-muted);font-size:12.5px}
.xd-dg-sticky.is-on{transform:none;opacity:1;pointer-events:auto}
@media (min-width:1040px){.xd-dg-sticky{display:none}}
@media (prefers-reduced-motion:reduce){.xd-dg-sticky{transition:none}}

/* ===== Biểu đồ ===== */
/* Thang cấp độ trong bảng điểm */
.xd-dg-ladder{list-style:none;margin:2px 0 0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}
.xd-dg-ladder li{display:flex;flex-direction:column;gap:4px;padding:6px 4px 0;border-top:4px solid #26324A;font-size:11px;line-height:1.25;color:#7D879A}
.xd-dg-ladder b{font-size:12px;color:#9AA3B2}
.xd-dg-ladder .is-past{border-top-color:#5B6B47}
.xd-dg-ladder .is-cur{border-top-color:var(--xd-lime);color:#fff}
.xd-dg-ladder .is-cur b{color:var(--xd-lime)}

/* Phân tích: phễu liền khối + xếp hạng theo ngưỡng; trụ yếu nhất mở sẵn, còn lại thu gọn */
.xd-dg-funnel{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:20px;margin-bottom:20px}
.xd-dg-fpanel{display:flex;flex-direction:column;gap:16px;padding:24px 26px;border-radius:var(--xd-r-lg);background:#fff;border:1px solid var(--dg-rule)}
.xd-dg-fpanel__h{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;flex-wrap:wrap}
.xd-dg-fpanel__h>div{display:flex;flex-direction:column;gap:4px}
.xd-dg-fpanel__h b{font-size:18px}
.xd-dg-fpanel__h small{font-size:12.5px;color:var(--xd-sub)}
.xd-dg-ek.is-blue{color:var(--xd-blue)}.xd-dg-ek.is-bad{color:var(--dg-bad)}
.xd-dg-fshape{display:flex;align-items:center;gap:3px;height:210px}
.xd-dg-fseg{flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;text-align:center}
.xd-dg-fseg b{font-size:28px;line-height:1}
.xd-dg-fseg span{font-size:13px;font-weight:600}
.xd-dg-fseg span small{display:none;font-weight:500;font-size:11.5px}
.xd-dg-fseg em{margin-top:6px;font-style:normal;font-size:10.5px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;padding:3px 7px;border-radius:6px;background:var(--xd-ink);color:#fff}
.xd-dg-fseg.is-bad{background:#FCA5A5;color:#7F1D1D}
.xd-dg-fseg.is-warn{background:#FDE68A;color:#92400E}
.xd-dg-fseg.is-good{background:#BBF7D0;color:#14532D}
.xd-dg-fseg.is-unk{background:var(--dg-soft);color:var(--xd-sub)}
.xd-dg-fseg.is-lead{background:#DC2626;color:#fff}
.xd-dg-fseg em.is-lead{background:#fff;color:var(--dg-bad)}
.xd-dg-flab{display:flex;justify-content:space-between;margin-top:-6px;font-size:12.5px;font-weight:700}
.xd-dg-fcall{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:14px 16px;border-radius:16px;background:var(--dg-bad-bg);border:1.5px solid #FCA5A5}
.xd-dg-fcall.is-none{background:var(--dg-soft);border-color:var(--dg-rule)}
.xd-dg-fcall>div{flex:1 1 260px;display:flex;flex-direction:column;gap:2px}
.xd-dg-fcall b{font-size:15px}
.xd-dg-fcall span{font-size:13.5px;color:var(--xd-sub-2)}
.xd-dg-fcall .xb{flex:none}
.xd-dg-fdrop{flex:none;width:14px;height:14px;border-radius:50% 0 50% 50%;transform:rotate(45deg);background:#DC2626}
.xd-dg-rk{display:grid;grid-template-columns:88px minmax(0,1fr) 34px;gap:6px 12px;align-items:center}
.xd-dg-rk__n{font-size:14px;font-weight:700}
.xd-dg-rk__v{font-size:15px;font-weight:800;text-align:right}
.xd-dg-rk small{grid-column:2/4;margin-top:-2px;font-size:11.5px;font-weight:600;color:var(--xd-sub)}
.xd-dg-rk.is-lead small{color:var(--dg-bad);font-weight:700}
.xd-dg-rk__t{position:relative;height:26px;border-radius:8px;overflow:hidden;display:grid;grid-template-columns:34fr 33fr 33fr}
.xd-dg-rk__t i:nth-child(1){background:var(--dg-bad-bg)}.xd-dg-rk__t i:nth-child(2){background:var(--dg-warn-bg)}.xd-dg-rk__t i:nth-child(3){background:var(--dg-good-bg)}
.xd-dg-rk__t b{position:absolute;left:0;top:5px;bottom:5px;border-radius:0 6px 6px 0}
.xd-dg-rk__t b.is-bad{background:#F87171}.xd-dg-rk__t b.is-warn{background:#D97706}.xd-dg-rk__t b.is-good{background:var(--dg-good)}.xd-dg-rk__t b.is-lead{background:#DC2626}
.xd-dg-rk__z{display:grid;grid-template-columns:34fr 33fr 33fr}
.xd-dg-rk__z em{font-style:normal;font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.xd-dg-rk__z .is-bad{color:var(--dg-bad)}.xd-dg-rk__z .is-warn{color:var(--dg-warn)}.xd-dg-rk__z .is-good{color:var(--dg-good)}
.xd-dg-fpanel__f{margin-top:auto;padding-top:14px;border-top:1px solid var(--dg-rule);font-size:13px;line-height:1.6;color:var(--xd-sub-2)}
.xd-dg-wlead{display:flex;flex-direction:column;gap:16px;padding:24px 26px;border-radius:var(--xd-r-lg);background:#fff;border:1.5px solid var(--xd-ink)}
.xd-dg-wlead h3{font-size:22px;margin-top:4px}
.xd-dg-wk3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.xd-dg-wk3>div{display:flex;flex-direction:column;gap:8px;font-size:15px;line-height:1.6}
.xd-dg-wk3 ul{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:6px}
.xd-dg-wmore{padding:14px 20px;border-radius:16px;background:#fff;border:1px solid var(--dg-rule)}
.xd-dg-wmore summary{display:flex;align-items:center;gap:14px;cursor:pointer;list-style:none}
.xd-dg-wmore summary::-webkit-details-marker{display:none}
.xd-dg-wmore summary b{flex:1 1 auto;font-size:16px}
.xd-dg-wmore summary b span{font-weight:500;color:var(--xd-sub)}
.xd-dg-wmore summary::after{content:"+";flex:none;width:32px;height:32px;border-radius:99px;border:1.5px solid var(--dg-rule);display:grid;place-items:center;font-size:18px}
.xd-dg-wmore[open] summary::after{content:"−"}
.xd-dg-wmore .xd-dg-wk3{margin-top:16px;padding-top:16px;border-top:1px solid var(--dg-rule)}
[data-dg-weak]{display:flex;flex-direction:column;gap:10px}
@media (max-width:1000px){
  .xd-dg-funnel{grid-template-columns:minmax(0,1fr)}
  .xd-dg-wk3{grid-template-columns:minmax(0,1fr);gap:14px}
}
@media (max-width:640px){
  .xd-dg-fpanel{padding:18px 16px}
  .xd-dg-fshape{flex-direction:column;align-items:center;height:auto;gap:4px}
  .xd-dg-fseg{flex:none;width:var(--mw,100%);height:auto!important;min-height:66px;padding:8px 11%;box-sizing:border-box;flex-direction:row;justify-content:flex-start;gap:12px;clip-path:polygon(0 0,100% 0,92% 100%,8% 100%)!important}
  .xd-dg-fseg em{margin:0}
  .xd-dg-fseg b{font-size:22px}
  .xd-dg-fseg:nth-child(1){--mw:100%}.xd-dg-fseg:nth-child(2){--mw:86%}.xd-dg-fseg:nth-child(3){--mw:72%}.xd-dg-fseg:nth-child(4){--mw:58%}
  .xd-dg-flab{display:none}
  .xd-dg-fseg span small{display:block;font-size:11px;opacity:.85}
  .xd-dg-fseg span{flex:1 1 auto;min-width:0;text-align:left;line-height:1.3}
  .xd-dg-fseg em{flex:none;white-space:nowrap;font-size:9.5px;padding:3px 6px}
  .xd-dg-fcall .xb{width:100%;justify-content:center}
  .xd-dg-wmore summary b span{display:none}
}
/* Tiền rò: hai thanh so sánh; chi phí ẩn: thanh chồng */
.xd-dg-chart:empty{display:none}
.xd-dg-chart{display:flex;flex-direction:column;gap:12px;padding:16px;border-radius:var(--xd-r-md);background:var(--dg-soft)}
.xd-dg-cbar{display:flex;flex-direction:column;gap:10px}
.xd-dg-cbar>div{display:grid;grid-template-columns:86px minmax(0,1fr) 48px;gap:10px;align-items:center;font-size:13.5px}
.xd-dg-cbar b{text-align:right;font-variant-numeric:tabular-nums}
.xd-dg-cbar__t{display:flex;height:14px;border-radius:999px;background:#fff;overflow:hidden}
.xd-dg-cbar__t i{display:block;height:100%;background:var(--xd-ink)}
.xd-dg-cbar__t i.is-gap{background:repeating-linear-gradient(135deg,#F07068 0 6px,#F59E9A 6px 12px)}
.xd-dg-cbar__cap{font-size:13.5px;line-height:1.6;color:var(--xd-sub-2)}
.xd-dg-cbar__cap b{color:var(--xd-ink)}
.xd-dg-stack{display:flex;height:18px;border-radius:999px;overflow:hidden;background:#fff}
.xd-dg-stack i{display:block;height:100%}
.xd-dg-stack .is-a,.xd-dg-stack__lg i.is-a{background:var(--xd-ink)}
.xd-dg-stack .is-b,.xd-dg-stack__lg i.is-b{background:var(--xd-blue)}
.xd-dg-stack .is-c,.xd-dg-stack__lg i.is-c{background:#F2B347}
.xd-dg-stack__lg{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 18px;font-size:13px;color:var(--xd-sub-2)}
.xd-dg-stack__lg i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px;vertical-align:-1px}
.xd-dg-stack__lg b{color:var(--xd-ink)}

/* Điều kiện: dòng tổng kết dạng đèn */
.xd-dg-gsum{display:flex;align-items:center;gap:12px;font-size:14px}
.xd-dg-gsum span{display:flex;gap:6px}
.xd-dg-gsum i{width:14px;height:14px;border-radius:99px;background:var(--dg-soft);border:1.5px solid var(--dg-rule)}
.xd-dg-gsum i.is-pass{background:var(--dg-good);border-color:var(--dg-good)}
.xd-dg-gsum i.is-fail{background:var(--dg-bad);border-color:var(--dg-bad)}
.xd-dg-gsum i.is-warn{background:#D97706;border-color:#D97706}

/* Lộ trình theo tuần */
.xd-dg-gantt-wrap{overflow-x:auto;margin-bottom:20px;padding:20px;border-radius:var(--xd-r-lg);background:#fff;border:1px solid var(--dg-rule)}
.xd-dg-gantt{display:grid;grid-template-columns:150px repeat(13,minmax(34px,1fr));row-gap:8px;min-width:640px;font-size:12.5px}
.xd-dg-gantt__h,.xd-dg-gantt__w{font-size:11.5px;font-weight:700;color:var(--xd-sub);padding-bottom:4px;border-bottom:1px solid var(--dg-rule)}
.xd-dg-gantt__w{text-align:center}
.xd-dg-gantt__l{align-self:center;font-weight:700;padding-right:8px}
.xd-dg-gantt__note{padding-top:6px;font-size:12.5px;color:var(--xd-sub-2)}
.xd-dg-gantt__b{min-height:28px;display:flex;align-items:center;padding:0 8px;border-radius:8px;font-size:11.5px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.xd-dg-gantt__b.is-base{background:var(--xd-ink);color:#fff}
.xd-dg-gantt__b.is-soi,.xd-dg-gantt__b.is-tim{background:var(--xd-blue);color:#fff}
.xd-dg-gantt__b.is-try{background:var(--xd-lime);color:var(--xd-ink)}
.xd-dg-gantt__b.is-ext{background:repeating-linear-gradient(135deg,#EEF8C2 0 6px,#E2F2A0 6px 12px);color:var(--xd-sub-2)}
.xd-dg-gantt__b.is-dec{background:#FDE7D3;color:#92400E;border:1.5px dashed #F2B347}
.xd-dg-gantt__b.is-next{background:var(--dg-soft);color:var(--xd-sub-2);border:1.5px dashed var(--dg-rule)}
.xd-dg-gantt__b.is-fast{min-height:10px;align-self:center;background:repeating-linear-gradient(90deg,var(--xd-sub) 0 6px,transparent 6px 12px);border-radius:0;height:3px;padding:0}
.xd-dg-gantt-hint{display:none;margin:0 0 10px;font-size:12.5px;font-weight:600;color:var(--xd-blue)}
@media (max-width:640px){
  .xd-dg-gantt-wrap{padding:16px}
  .xd-dg-gantt-hint{display:block;position:sticky;left:0}
  .xd-dg-gantt{grid-template-columns:104px repeat(13,32px);min-width:0}
  .xd-dg-gantt__l{font-size:12px}
}

/* Tiền rò: một thẻ rộng (chọn tầng · ô nhập | kết quả); chi phí ẩn thu gọn bên dưới */
.xd-dg-cost{display:flex;flex-direction:column;gap:16px}
.xd-dg-leak__head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 20px;padding-bottom:16px;margin-bottom:18px;border-bottom:1px solid var(--dg-rule)}
.xd-dg-stages{display:flex;flex-wrap:wrap;gap:8px}
.xd-dg-stages button{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 14px;border-radius:999px;border:1.5px solid var(--dg-rule);background:#fff;font:inherit;font-size:14px;font-weight:600;cursor:pointer}
.xd-dg-stages button:hover{border-color:var(--xd-ink)}
.xd-dg-stages button[aria-pressed="true"]{background:var(--xd-ink);border-color:var(--xd-ink);color:#fff}
.xd-dg-stages em{font-style:normal;font-size:11px;font-weight:800;padding:2px 7px;border-radius:6px;background:var(--dg-bad);color:#fff}
.xd-dg-leak__body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:28px;align-items:start}
.xd-dg-leak__out,.xd-dg-ops__out{display:flex;flex-direction:column;gap:14px}
.xd-dg-leak .xd-dg-total__v{font-size:clamp(24px,2.2vw,32px);line-height:1.2}
.xd-dg-conf{display:inline-block;width:fit-content;padding:4px 10px;border-radius:8px;font-size:13px;background:rgba(255,255,255,.08);color:#C7CDD8}
.xd-dg-conf b{color:#fff}
.xd-dg-conf.is-high b{color:#86EFAC}.xd-dg-conf.is-mid b{color:#F2B347}.xd-dg-conf.is-low b{color:#F07068}
.xd-dg-conf[hidden]{display:none}
.xd-dg-fx{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;margin-top:2px;font-size:12.5px;color:var(--xd-sub-2)}
.xd-dg-fx label{display:inline-flex;align-items:center;gap:6px;cursor:pointer;font-weight:500}
.xd-dg-fx input{accent-color:var(--xd-blue)}
.xd-dg-sug{padding:0;border:0;background:none;font:inherit;font-size:12.5px;font-weight:700;color:var(--xd-blue);cursor:pointer;text-decoration:underline;text-underline-offset:2px}
.xd-dg-sug:disabled{color:var(--xd-sub);cursor:default;text-decoration:none}
.xd-dg-ops>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;list-style:none}
.xd-dg-ops>summary::-webkit-details-marker{display:none}
.xd-dg-ops>summary::after{content:"+";flex:none;width:32px;height:32px;border-radius:99px;border:1.5px solid var(--dg-rule);display:grid;place-items:center;font-size:18px;font-weight:600}
.xd-dg-ops[open]>summary::after{content:"−"}
.xd-dg-ops>summary span{display:flex;flex-direction:column;gap:4px}
.xd-dg-ops>summary b{font-size:17px}
.xd-dg-ops>summary small{font-size:14px;color:var(--xd-sub-2)}
.xd-dg-ops__body{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:28px;align-items:start;margin-top:18px;padding-top:18px;border-top:1px solid var(--dg-rule)}
.xd-dg-ops .xd-dg-inputs{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px}
@media (max-width:960px){
  .xd-dg-leak__body,.xd-dg-ops__body{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:560px){
  .xd-dg-ops .xd-dg-inputs{grid-template-columns:minmax(0,1fr)}
  .xd-dg-stages{width:100%}
  .xd-dg-stages button{flex:1 1 100%;justify-content:space-between}
}

/* ===== Lưu kết quả: nút PDF / link (trong bảng điểm và khối bước tiếp theo, đều nền tối) ===== */
.xd-dg-save{display:flex;flex-direction:column;gap:10px;padding-top:14px;border-top:1px solid rgba(255,255,255,.14)}
.xd-dg-save__btns{display:flex;flex-wrap:wrap;gap:8px}
.xd-dg-save .xb-line{color:#fff;border-color:rgba(255,255,255,.35)}
.xd-dg-save .xb-line:hover{border-color:var(--xd-lime);color:var(--xd-lime)}
.xd-dg-save .xb:disabled{opacity:.45;cursor:not-allowed}
.xd-dg-save__money{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:#C7CDD8;cursor:pointer}
.xd-dg-save__money input{accent-color:var(--xd-lime)}
.xd-dg-save__note{font-size:12.5px;color:#C7CDD8}
.xd-dg-save__note:empty{display:none}
.xd-dg-panel .xd-dg-save .xb{flex:1 1 auto;justify-content:center}

/* ===== Báo cáo in (Tải báo cáo PDF) ===== */
@media screen{#xd-dg-report{display:none}}
@media print{
  @page{size:A4;margin:12mm}
  body>*:not(#xd-dg-report){display:none!important}
  html,body{background:#fff!important}
  #xd-dg-report{--dg-rule:rgba(11,18,32,.12);--dg-soft:#E9EDF3;--dg-bad:#B91C1C;--dg-bad-bg:#FEF2F2;--dg-warn:#92400E;--dg-warn-bg:#FFFBEB;--dg-good:#15803D;--dg-good-bg:#F0FDF4;display:block!important;font-family:"Lexend",system-ui,sans-serif;color:#0B1220;font-size:10.5pt;line-height:1.5}
  #xd-dg-report *{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .rp-head{display:flex;align-items:center;gap:14px;padding-bottom:10px;margin-bottom:14px;border-bottom:2px solid #0B1220}
  .rp-logo{padding:6px 10px;border-radius:6px;background:#0B1220;color:#D5F25B;font-weight:800;letter-spacing:.04em}
  .rp-head b{display:block;font-size:15pt}
  .rp-head span{font-size:9.5pt;color:#525B6E}
  .rp-sum{display:grid;grid-template-columns:150px 1fr;gap:16px;align-items:center;padding:12px 14px;border:1px solid #DDE2EA;border-radius:10px;margin-bottom:14px;break-inside:avoid}
  .rp-score b{font-size:34pt;font-weight:800;line-height:1}
  .rp-score span{font-size:11pt;color:#525B6E}
  .rp-score em{display:block;margin-top:6px;font-style:normal;font-weight:700;font-size:10pt}
  .rp-sum dl{margin:0;display:grid;gap:6px}
  .rp-sum dl div{display:grid;grid-template-columns:120px 1fr;gap:8px}
  .rp-sum dt{color:#525B6E}
  .rp-sum dd{margin:0;font-weight:600}
  .rp-sec{margin-bottom:14px;break-inside:avoid}
  .rp-sec h2{font-size:12pt;margin:0 0 8px;padding-bottom:4px;border-bottom:1px solid #DDE2EA}
  .rp-sec h3{font-size:10pt;margin:0 0 6px}
  .rp-sec p{margin:0 0 6px}
  .rp-funnel .xd-dg-fshape{height:170px}
  .rp-funnel .xd-dg-fseg b{font-size:18pt}
  .rp-funnel .xd-dg-flab{position:relative;z-index:1;margin-top:14px}
  .rp-tbl{width:100%;border-collapse:collapse;font-size:9.5pt}
  .rp-tbl th,.rp-tbl td{text-align:left;padding:5px 8px;border-bottom:1px solid #E5E8EE}
  .rp-tbl th{font-size:8.5pt;text-transform:uppercase;letter-spacing:.06em;color:#525B6E}
  .rp-num{font-weight:800}
  .rp-bar{display:block;width:120px;height:8px;border-radius:99px;background:#EEF1F5;overflow:hidden}
  .rp-bar i{display:block;height:100%}
  .rp-bar i.is-bad{background:#DC2626}.rp-bar i.is-warn{background:#D97706}.rp-bar i.is-good{background:#15803D}
  .rp-note{font-size:8.5pt;color:#525B6E}
  .rp-break{break-before:page}
  .rp-two{display:grid;grid-template-columns:1fr 1fr;gap:16px}
  .rp-gates{list-style:none;margin:0;padding:0;display:grid;gap:4px;font-size:9.5pt}
  .rp-gates li{display:grid;grid-template-columns:110px 1fr;gap:6px}
  .rp-gates .is-pass b{color:#15803D}.rp-gates .is-fail b{color:#B91C1C}.rp-gates .is-warn b{color:#92400E}.rp-gates .is-unk b{color:#525B6E}
  .rp-sec .xd-dg-gantt{min-width:0;font-size:8.5pt}
  .rp-sec .xd-dg-gantt__b{min-height:20px;font-size:8pt}
  .rp-foot{margin-top:10px;padding-top:8px;border-top:1px solid #DDE2EA;font-size:8.5pt;color:#525B6E}
  .rp-foot p{margin:0 0 4px}
}
