/* ===== Bo doc van ban CHEN THANG vao trang (khong iframe - de Google doc duoc noi dung). Moi luat deu nam trong .vbd ===== */
.vbd { --vb-ke: #d8c7ae; --vb-tim: #FDEAC7; --vb-mo: var(--text-gray); position: relative; }
.vbd-bar { position: sticky; top: 72px; z-index: 5; display: flex; flex-wrap: wrap; gap: 10px; align-items: center; padding: 10px 14px; margin-bottom: 14px;
  background: rgba(255, 255, 255, .96); backdrop-filter: blur(6px); border: 1px solid var(--border); border-radius: 14px; box-shadow: var(--shadow-card); }
.vbd-bar input[type=search] { flex: 1 1 280px; min-width: 0; padding: 9px 16px; border: 1.5px solid var(--border); border-radius: 999px; font: inherit; font-size: .92rem; background: var(--cream); color: var(--ink); }
.vbd-bar input[type=search]:focus { outline: none; border-color: var(--orange); background: #fff; }
.vbd-bar label { font-size: .8rem; color: var(--vb-mo); display: inline-flex; gap: 5px; align-items: center; white-space: nowrap; }
.vbd-dem { font-size: .8rem; color: var(--vb-mo); min-width: 70px; }
.vbd-nut { border: 1px solid var(--border); background: #fff; color: var(--ink-soft); border-radius: 8px; padding: 5px 10px; font: inherit; font-size: .8rem; cursor: pointer; }
.vbd-nut:hover { border-color: var(--orange); color: var(--orange-dark); }
.vbd-mo-cay { display: none; }
.vbd-khung { display: grid; grid-template-columns: 290px minmax(0, 1fr); gap: 22px; align-items: start; }
.vbd-cay { position: sticky; top: 140px; max-height: calc(100vh - 160px); overflow: auto; padding: 12px 12px 30px; background: #FFFBF5; border: 1px solid var(--border); border-radius: 16px; font-size: .86rem; }
.vbd-tabs { display: flex; gap: 4px; flex-wrap: wrap; margin-bottom: 8px; }
.vbd-tabs button { flex: 1; border: 1px solid var(--border); background: #fff; color: var(--ink-soft); border-radius: 8px; padding: 5px 4px; font: inherit; font-size: .74rem; line-height: 1.25; cursor: pointer; }
.vbd-tabs button.on { background: var(--orange); border-color: var(--orange); color: #fff; }
.vbd-cay ul { list-style: none; margin: 0; padding-left: 12px; } .vbd-cay > .vbd-p > ul { padding-left: 0; }
.vbd-cay a { color: var(--ink-soft); text-decoration: none; display: inline-block; padding: 2px 0; line-height: 1.35; }
.vbd-cay summary a { display: inline; }
.vbd-cay a:hover, .vbd-cay a.dang { color: var(--orange-dark); } .vbd-cay a.dang { font-weight: 700; }
.vbd-cay summary { cursor: pointer; } .vbd-cay summary::marker { color: var(--vb-mo); }
.vbd-cay .l-phan { font-weight: 700; } .vbd-cay .l-doan { color: var(--vb-mo) !important; font-size: .8rem; }
.vbd-cay .ds li { border-bottom: 1px dashed var(--border); padding: 3px 0; } .vbd-cay .trong { color: var(--vb-mo); }
.vbd-an { display: none !important; }
.vbd-kq .kq { padding: 5px 0; border-bottom: 1px dashed var(--border); cursor: pointer; font-size: .8rem; } .vbd-kq .kq b { color: var(--orange-dark); } .vbd-kq .kq small { display: block; color: var(--vb-mo); }
/* noi dung */
.vbd-nd { min-width: 0; color: var(--ink); font-size: 1rem; line-height: 1.7; }
.vbd-nd .phan { background: #fff; border: 1px solid var(--border); border-radius: 18px; padding: 10px clamp(16px, 3vw, 40px) 30px; margin-bottom: 24px; box-shadow: var(--shadow-card); }
.vbd-nd .k { position: relative; scroll-margin-top: 150px; } .vbd-nd p.k { margin: .55em 0; text-align: justify; }
.vbd-nd h2.k, .vbd-nd h3.k, .vbd-nd h4.k, .vbd-nd h5.k, .vbd-nd h6.k { color: var(--ink); line-height: 1.35; margin: 1.15em 0 .5em; font-weight: 800; }
.vbd-nd h2.k { font-size: 1.3rem; text-align: center; } .vbd-nd h3.k { font-size: 1.15rem; } .vbd-nd h4.k { font-size: 1.05rem; } .vbd-nd h5.k, .vbd-nd h6.k { font-size: 1rem; }
.vbd-nd .cong-cu { display: none; position: absolute; right: -6px; top: -16px; gap: 2px; background: #fff; border: 1px solid var(--border); border-radius: 8px; padding: 1px 3px; font-size: 12px; font-weight: 400; box-shadow: var(--shadow-card); z-index: 2; }
.vbd-nd .k:hover > .cong-cu, .vbd-nd .k:focus-within > .cong-cu { display: inline-flex; }
.vbd-nd .cong-cu button, .vbd-nd .cong-cu-ct button { border: 0; background: none; color: var(--orange-dark); cursor: pointer; font: inherit; font-size: 12px; padding: 2px 5px; }
.vbd-nd .cuon { overflow-x: auto; } .vbd-nd table { border-collapse: collapse; margin: .6em 0; font-size: .92rem; } .vbd-nd .cuon table { min-width: 60%; }
.vbd-nd td, .vbd-nd th { border: 1px solid var(--vb-ke); padding: 4px 8px; vertical-align: top; }
.vbd-nd .ten-bang, .vbd-nd .ten-hinh { text-align: center !important; font-weight: 700; }
.vbd-nd .ct { margin: .8em 0; padding: 8px 12px; border-left: 3px solid var(--orange-light); background: #FFFBF5; border-radius: 6px; }
.vbd-nd .ct-dong { display: flex; align-items: center; gap: 12px; } .vbd-nd .ct-hien { flex: 1; overflow-x: auto; font-size: 1.15rem; text-align: center; }
.vbd-nd .ct-phu { font-size: .8rem; color: var(--vb-mo); display: flex; gap: 8px; align-items: baseline; flex-wrap: wrap; } .vbd-nd .ct-thuan { flex: 1; }
.vbd-nd .ct-anh img, .vbd-nd .hinh img { max-width: 100%; background: #fff; border: 1px solid var(--border); }
.vbd-nd .hinh { margin: .8em auto; text-align: center; } .vbd-nd .hinh img { max-height: 520px; }
.vbd-nd span.hinh img { max-height: 120px; vertical-align: middle; }
.vbd-nd .mo-ta, .vbd-nd .chu-hinh { display: block; font-size: .8rem; color: var(--vb-mo); font-style: italic; }
.vbd-nd .the { color: var(--vb-mo); font-size: .92em; } .vbd-nd .can-xem { background: var(--vb-tim); border-radius: 3px; }
.vbd-nd .loi-in { color: #c62828; cursor: help; font-size: .8em; vertical-align: super; }
.vbd-nd .dau-trang { display: flex; align-items: center; gap: 8px; color: var(--vb-mo); font-size: .75rem; margin: 16px 0 6px; }
.vbd-nd .dau-trang::before, .vbd-nd .dau-trang::after { content: ""; flex: 1; border-top: 1px dashed var(--border); }
.vbd-nd .dau-trang a { color: var(--vb-mo); text-decoration: none; } .vbd-nd .dau-trang a:hover { color: var(--orange-dark); }
.vbd-nd mark { background: var(--vb-tim); color: inherit; border-radius: 2px; } .vbd-nd mark.hien { outline: 2px solid var(--orange); }
.vbd-nd .loe { animation: vbdLoe 1.6s; } @keyframes vbdLoe { 0% { background: var(--vb-tim); } 100% { background: transparent; } }
.vbd-toast { position: fixed; bottom: 18px; left: 50%; transform: translateX(-50%); background: var(--ink); color: #fff; padding: 8px 16px; border-radius: 10px; font-size: .84rem; opacity: 0; transition: .2s; pointer-events: none; z-index: 99; }
.vbd-toast.on { opacity: .94; }
/* chi co ban goc PDF */
.pl-pdf { display: block; width: 100%; height: calc(100vh - 170px); min-height: 560px; border: 1px solid var(--border); border-radius: 18px; background: #fff; box-shadow: var(--shadow-card); }
.pl-mota { background: #fff; border: 1px solid var(--border); border-radius: 18px; padding: 18px 22px; margin-bottom: 18px; box-shadow: var(--shadow-card); color: var(--ink-soft); line-height: 1.7; }
.pl-mota h2 { font-size: 1.05rem; margin: 0 0 6px; color: var(--ink); }
.pl-dang { display: inline-block; font-size: .72rem; font-weight: 700; padding: 3px 10px; border-radius: 999px; background: #eef4ff; color: #1d4f91; }
@media (max-width: 960px) {
  .vbd-khung { grid-template-columns: 1fr; }
  .vbd-cay { position: fixed; left: 0; top: 0; bottom: 0; width: min(86vw, 340px); max-height: none; z-index: 1000; border-radius: 0 16px 16px 0; transform: translateX(-104%); transition: .2s; box-shadow: 0 0 30px rgba(0,0,0,.2); }
  .vbd-cay.mo { transform: none; } .vbd-mo-cay { display: inline-block; } .vbd-bar { top: 64px; }
}
@media print { .vbd-bar, .vbd-cay, .vbd-nd .cong-cu { display: none !important; } .vbd-khung { display: block; } }

/* Muc luc chay theo + thu gon theo muc (01/11/2026) */
html body { overflow-x: clip; }   /* body overflow-x:hidden cua theme lam mat 'sticky' cua muc luc - clip khong tao khung cuon */
.vbd-cay a.cha { font-weight: 700; color: var(--ink); }
.vbd-cay a.dang { color: var(--orange-dark); font-weight: 700; background: var(--orange-light); border-radius: 6px; padding: 1px 6px; }
.vbd-nd .thu-nut { display: inline-block; width: 1.1em; margin-right: .3em; cursor: pointer; color: var(--text-gray); user-select: none; transition: transform .15s; font-size: .85em; }
.vbd-nd .thu-nut:hover { color: var(--orange); } .vbd-nd .muc.dong .thu-nut { transform: rotate(-90deg); } .vbd-nd .muc.dong { opacity: .85; }
.vbd-an-muc { display: none !important; }
.vbd-thu-muc.bat { background: var(--orange-light); border-color: var(--orange); color: var(--orange-dark); font-weight: 700; }
@media print { .vbd-an-muc { display: block !important; } .thu-nut, .vbd-thu-muc { display: none !important; } }

/* ===== Hinh ve lai vector (04/11/2026, giong Van phong so - skill DNV references/08): mac dinh hien VECTOR, an anh goc;
   nut "Anh goc" doi qua lai, "Chong" de vector len anh goc (cung be rong, cung ti le -> trung khit), "⤢" phong to (Esc thoat) ===== */
.vbd-nd { --vh-net: var(--ink); --vh-nen: #fff; --vh-dam: #2f4f6f; --vh-chu-dam: #fff; --vh-1: #e3eefa; --vh-2: #e3f4e8; --vh-3: #fdf0dc; --vh-4: #efe8fa; }
.vbd-nd .co-vector { margin: .8em auto; max-width: 100%; text-align: center; }
.vbd-nd .vh-cong-cu { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; justify-content: center; font-size: .78rem; color: var(--vb-mo); margin-bottom: 4px; }
.vbd-nd .vh-cong-cu button { font: inherit; padding: 2px 9px; border: 1px solid var(--border); border-radius: 8px; background: #fff; color: var(--ink-soft); cursor: pointer; }
.vbd-nd .vh-cong-cu button:hover { border-color: var(--orange); color: var(--orange-dark); } .vbd-nd .vh-cong-cu a { color: var(--orange-dark); }
.vbd-nd .vh-nhan { font-style: italic; }
.vbd-nd .co-vector.xem-goc .nut-hinh-goc, .vbd-nd .co-vector.xem-chong .nut-hinh-chong { background: var(--orange-light); border-color: var(--orange); color: var(--orange-dark); font-weight: 700; }
.vbd-nd .vh-khung { position: relative; display: block; width: 100%; max-width: 900px; margin: 0 auto; background: #fff; border: 1px solid var(--border); border-radius: 8px; padding: 6px; }
.vbd-nd .vh-svg svg { display: block; width: 100%; height: auto; }
.vbd-nd .co-vector .vh-anh { display: none; width: 100%; height: auto; max-height: none; border: 0; background: #fff; margin: 0; }
.vbd-nd .co-vector.xem-goc .vh-svg { display: none; } .vbd-nd .co-vector.xem-goc .vh-anh { display: block; }
.vbd-nd .co-vector.xem-chong .vh-anh { display: block; } .vbd-nd .co-vector.xem-chong .vh-svg { position: absolute; inset: 6px; opacity: .6; }
.vbd-nd .co-vector.to { position: fixed; inset: 0; z-index: 1000; margin: 0; background: #fff; overflow: auto; padding: 12px; }
.vbd-nd .co-vector.to .vh-khung { max-width: none; }
.vbd-nd .vh-svg .vh-khoi { fill: var(--vh-nen); stroke: var(--vh-net); } .vbd-nd .vh-svg .vh-dam { fill: var(--vh-dam); stroke: var(--vh-net); }
.vbd-nd .vh-svg .vh-mau1 { fill: var(--vh-1); } .vbd-nd .vh-svg .vh-mau2 { fill: var(--vh-2); } .vbd-nd .vh-svg .vh-mau3 { fill: var(--vh-3); } .vbd-nd .vh-svg .vh-mau4 { fill: var(--vh-4); }
.vbd-nd .vh-svg .vh-vien, .vbd-nd .vh-svg .vh-noi, .vbd-nd .vh-svg .vh-cham { fill: none; stroke: var(--vh-net); }
.vbd-nd .vh-svg .vh-dau { fill: var(--vh-net); stroke: none; }
.vbd-nd .vh-svg .vh-chu { fill: var(--vh-net); stroke: none; font-family: inherit; } .vbd-nd .vh-svg .vh-chu-dam { fill: var(--vh-chu-dam); stroke: none; font-family: inherit; }
.vbd-nd .vh-svg .vh-nen-chu { fill: var(--vh-nen); stroke: none; }
@media print { .vbd-nd .vh-cong-cu { display: none !important; } .vbd-nd .co-vector .vh-svg { display: block !important; position: static !important; opacity: 1 !important; } .vbd-nd .co-vector .vh-anh { display: none !important; } }
