html,body{margin:0;padding:0;background:#f4f7fa}
/* ============================================================
   VỎ BÀI SOHA · tokens, 8 skin, khung, linh kiện
   Mọi lớp mang tiền tố mgd-. Tokens đặt trên .mgd-bai (không đặt trên :root)
   để nhúng vào CMS không đụng CSS của trang Soha.
   Linh kiện chỉ dùng biến --mgd-*, không gõ cứng màu, phông.
   ============================================================ */
.mgd-bai{
  --mgd-nen:#ffffff;--mgd-chu:#1f1f1f;--mgd-phu:#6b6b6b;--mgd-ke:#e6e6e6;
  --mgd-nhan:#ea3939;--mgd-nhan-2:#333333;--mgd-hop:#f7f5f2;--mgd-tren-nhan:#ffffff;
  --mgd-tit:"Phudu",system-ui,sans-serif;--mgd-than:"Roboto",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  --mgd-chu-thich:var(--mgd-than);
  --mgd-co:18px;--mgd-dong:1.75;--mgd-can:left;--mgd-cot:720px;--mgd-rong:1280px;
  --mgd-tit-w:900;--mgd-tit-hoa:uppercase;
  --mgd-nhan-chu:#d32f2f;--mgd-nhan-nen:#d32f2f;--mgd-tren-nhan-2:#ffffff;
  /* chuyển động: chuẩn chung, không phải bản sắc (Carbon productive; WCAG 2.2.2, 2.3.1, 2.3.3) */
  --mgd-cd-tuc:100ms;--mgd-cd-nhanh:150ms;--mgd-cd-vua:250ms;--mgd-cd-cham:400ms;--mgd-cd-dai:800ms;
  --mgd-gt-vao:cubic-bezier(0,0,.38,.9);--mgd-gt-ra:cubic-bezier(.2,0,1,.9);--mgd-gt-doi:cubic-bezier(.2,0,.38,.9);--mgd-gt-bieu-cam:cubic-bezier(.4,.14,.3,1);
  container:mgdbai/inline-size;position:relative;font-family:var(--mgd-than);color:var(--mgd-chu);background:var(--mgd-nen);
  max-width:1920px;margin:0 auto;text-align:left;-webkit-font-smoothing:antialiased;overflow-wrap:break-word;
  font-size:var(--mgd-co);line-height:var(--mgd-dong)}
.mgd-bai *{box-sizing:border-box}
.mgd-bai img{max-width:100%;display:block;height:auto}
.mgd-bai figure{margin:0}
.mgd-bai .mgd-cot,.mgd-bai .mgd-rong{margin-inline:auto}
.mgd-bai figure.mgd-anh{margin-block:6px}
.mgd-bai button{font:inherit;cursor:pointer;color:inherit}
.mgd-bai a{color:var(--mgd-nhan-chu)}
.mgd-bai :focus-visible{outline:3px solid var(--mgd-nhan);outline-offset:2px}
.mgd-an-chu{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* Tám skin nay là tám công thức mẫu trong nhan-dien/mau-san.json; máy dựng sinh luật token cho từng bài. */

/* ---------- khung ---------- */
.mgd-than{padding-bottom:48px;font-size:var(--mgd-co)}
.mgd-khoi{padding:10px 0}
.mgd-cot{max-width:calc(var(--mgd-cot) + 40px);margin-inline:auto;padding-inline:20px}
.mgd-rong{max-width:calc(var(--mgd-rong) + 40px);margin-inline:auto;padding-inline:20px}
.mgd-tran{width:100%}
@container mgdbai (max-width:640px){.mgd-than{--mgd-co:17px;--mgd-can:left}.mgd-cot,.mgd-rong{padding-inline:16px}}

/* thanh điều hướng Soha: cao 45px, nền đen */
.mgd-dh{position:sticky;top:0;z-index:50;height:45px;background:#000;display:flex;align-items:center;justify-content:space-between;font-family:Arial,Helvetica,sans-serif;line-height:1}
.mgd-dh-ben{display:flex;align-items:center;height:100%}
.mgd-bai .mgd-dh a,.mgd-bai .mgd-dh button{color:#fff;text-decoration:none}
.mgd-dh-lui{width:45px;height:45px;background:#007f74;display:flex;align-items:center;justify-content:center}
.mgd-dh-lui svg,.mgd-dh-chia svg{fill:currentColor}
.mgd-dh-lui svg{width:20px;height:20px}
.mgd-dh-soha{margin-left:15px;display:flex;align-items:center}
.mgd-dh-soha img{height:24px;width:auto}
.mgd-dh-giua{position:absolute;left:50%;transform:translateX(-50%);display:flex;align-items:center;pointer-events:none}
.mgd-dh-giua img{height:26px;width:auto}
/* logo riêng của bài (trường "Điều hướng", Giang duyệt 14/10/2026): cao bằng logo Soha, ngang tự co, có trần */
.mgd-dh-soha img.mgd-dh-rieng{max-width:140px;object-fit:contain}
.mgd-dh-giua img.mgd-dh-rieng{max-width:220px;object-fit:contain}
.mgd-dh-phai{padding-right:12px}
.mgd-dh-chia{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:700;background:none;border:0;min-height:40px;padding:0 6px}
.mgd-dh-chia svg{width:14px;height:14px}
@container mgdbai (max-width:768px){.mgd-dh-giua{display:none}}

/* dải nhãn tài trợ: vòng bất biến, không theo skin (chữ, vị trí, màu cố định) */
.mgd-tt{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;padding:8px 16px;background:#f2f2f2;color:#222;font:600 14px/1.4 Arial,Helvetica,sans-serif;border-bottom:1px solid #d9d9d9;text-align:center}
.mgd-tt b{font-weight:700}
.mgd-tt-doi-tac{background:#fff4d6;border-bottom-color:#e2b84f}
.mgd-tt-doi-tac b{letter-spacing:.06em}
.mgd-tt-logo{height:24px;width:auto;display:inline-block}

/* ---------- khối nền ---------- */
.mgd-bia{position:relative}
.mgd-bia-anh{position:relative;width:100%;max-width:1920px;margin:0 auto;overflow:hidden}
.mgd-bia-anh img{width:100%}
.mgd-bia-anh picture{display:block}
.mgd-bia-chu{max-width:calc(var(--mgd-rong) + 40px);margin:0 auto;padding:34px 20px 6px;text-align:center}
.mgd-bia-k{display:block;color:var(--mgd-nhan-chu);font-family:var(--mgd-tit);font-weight:700;letter-spacing:.12em;text-transform:uppercase;font-size:15px;margin-bottom:10px}
.mgd-bia-t{font-family:var(--mgd-tit);font-weight:var(--mgd-tit-w);text-transform:var(--mgd-tit-hoa);color:var(--mgd-chu);font-size:clamp(28px,4.4cqi,68px);line-height:var(--mgd-tit-dong,1.18);margin:0}
.mgd-bia-p{font-size:clamp(18px,1.8cqi,24px);line-height:1.5;color:var(--mgd-phu);margin:14px auto 0;max-width:900px}
.mgd-bia-a{font-size:15px;color:var(--mgd-phu);margin-top:14px;font-family:var(--mgd-chu-thich)}
.mgd-bia-ct{font-family:var(--mgd-chu-thich);font-size:14px;font-style:italic;color:var(--mgd-phu);text-align:center;padding:6px 20px 0;margin:0}
.mgd-bia-de .mgd-bia-chu{position:absolute;left:0;right:0;bottom:0;max-width:none;padding:90px 20px 36px;background:linear-gradient(to bottom,rgba(0,0,0,0),rgba(0,0,0,.78))}
.mgd-bia-de .mgd-bia-chu>*{max-width:var(--mgd-rong);margin-left:auto;margin-right:auto}
.mgd-bia-de .mgd-bia-t,.mgd-bia-de .mgd-bia-p,.mgd-bia-de .mgd-bia-a{color:#fff}
@container mgdbai (max-width:640px){.mgd-bia-de .mgd-bia-chu{position:static;background:none;padding-top:22px}.mgd-bia-de .mgd-bia-t{color:var(--mgd-chu)}.mgd-bia-de .mgd-bia-p,.mgd-bia-de .mgd-bia-a{color:var(--mgd-phu)}}
.mgd-sapo{display:flow-root;font-weight:700;font-size:1.06em;line-height:1.7;margin:6px 0 4px;text-align:var(--mgd-can)}
.mgd-hoa-dau::first-letter{float:left;font-family:var(--mgd-tit);font-weight:900;font-size:4.1em;line-height:.86;padding:6px 10px 0 0;color:var(--mgd-nhan)}
.mgd-doan p{margin:0 0 1em;text-align:var(--mgd-can)}
.mgd-doan p:last-child{margin-bottom:0}
.mgd-tm{font-family:var(--mgd-tit);font-weight:var(--mgd-tit-w);text-transform:var(--mgd-tm-hoa,uppercase);color:var(--mgd-tm-mau,var(--mgd-nhan));text-align:var(--mgd-tm-can,center);line-height:max(1.25,var(--mgd-tit-dong,1.18));margin:26px 0 4px;font-size:clamp(24px,3.4cqi,34px)}
.mgd-tm::after{content:"";display:var(--mgd-tm-gach,none);width:80px;height:6px;border-radius:3px;background:var(--mgd-nhan);margin:12px var(--mgd-tm-gach-le,auto) 0}
h3.mgd-tm{font-size:clamp(20px,2.6cqi,24px);text-transform:none;text-align:left;color:var(--mgd-chu);margin-top:16px}
h3.mgd-tm::after{display:none}
.mgd-ds{margin:0;padding-left:1.4em;text-align:var(--mgd-can)}
.mgd-ds li{margin:4px 0;padding-left:4px}
.mgd-ds li::marker{color:var(--mgd-nhan);font-weight:700}
.mgd-anh{margin:6px auto}
.mgd-anh-ct,.mgd-ct{font-family:var(--mgd-chu-thich);font-size:15px;font-style:italic;color:var(--mgd-phu);margin:8px auto 0;line-height:1.5;text-align:center}
.mgd-tran .mgd-anh-ct,.mgd-rong .mgd-anh-ct{max-width:calc(var(--mgd-cot) + 40px);padding-inline:20px}
.mgd-anh-doi{display:grid;grid-template-columns:repeat(var(--n,2),minmax(0,1fr));gap:12px}
.mgd-anh-doi img{width:100%;aspect-ratio:4/3;object-fit:cover}
@container mgdbai (max-width:640px){.mgd-anh-doi{grid-template-columns:1fr}}
.mgd-video-khung{position:relative;aspect-ratio:16/9;background:#0d0f12;overflow:hidden;margin:0 auto}
.mgd-video-doc{aspect-ratio:9/16;max-width:420px}
.mgd-video-vuong{aspect-ratio:1/1;max-width:640px}
.mgd-video-khung iframe,.mgd-video-khung video{position:absolute;inset:0;width:100%;height:100%;border:0;object-fit:contain}
/* mã nhúng mạng xã hội (phiếu 21/10): khung co giãn, iframe lấp đầy */
.mgd-nhung-ma .mgd-nhung-khung{position:relative;width:100%;max-width:560px;min-height:320px;margin:0 auto;background:var(--mgd-nen-2,rgba(127,127,127,.06));overflow:hidden}
.mgd-nhung-ma .mgd-nhung-khung iframe{width:100%;min-height:320px;border:0;display:block}
/* bố cục khối: hàng hai khối + bề rộng (phiếu 21/10). Chỉ bật khi bài có "Bố cục"; bài cũ không đổi */
.mgd-than.mgd-co-boc{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:center}
.mgd-than.mgd-co-boc>section.mgd-khoi{flex:0 0 100%;max-width:100%;box-sizing:border-box;align-self:stretch}
.mgd-than.mgd-co-boc>section.mgd-khoi-rong{flex-basis:var(--mgd-khoi-rong,100%);max-width:var(--mgd-khoi-rong,100%)}
.mgd-than.mgd-co-boc>section.mgd-khoi-rong>.mgd-cot,.mgd-than.mgd-co-boc>section.mgd-khoi-rong>.mgd-anh,.mgd-than.mgd-co-boc>section.mgd-khoi-rong>.mgd-bieu-do,.mgd-than.mgd-co-boc>section.mgd-khoi-rong>.mgd-rong{max-width:100%;width:auto;margin-inline:0}
@container mgdbai (max-width:768px){.mgd-than.mgd-co-boc{display:block}.mgd-than.mgd-co-boc>section.mgd-khoi-rong{max-width:100%}}
.mgd-ke{border:0;margin:18px auto;height:1px;background:var(--mgd-ke);max-width:var(--mgd-cot)}
.mgd-ke-ba-cham{background:none;height:auto;text-align:center;color:var(--mgd-nhan);letter-spacing:.8em;font-size:20px;line-height:1}
.mgd-ke-ba-cham::before{content:"\2022\2022\2022"}
.mgd-gc{margin:24px 0 8px;font-family:var(--mgd-chu-thich);font-size:15px;line-height:1.7;color:var(--mgd-phu);text-align:center;border-top:1px solid var(--mgd-ke);padding-top:18px}
.mgd-gc b{color:var(--mgd-chu)}
.mgd-nguon{font-family:var(--mgd-chu-thich);font-size:14px;font-style:italic;color:var(--mgd-phu);margin:8px 0 0}


/* ---------- dùng chung giữa các linh kiện ---------- */
.mgd-nut{min-height:44px;min-width:44px;padding:8px 16px;border-radius:6px;border:1px solid var(--mgd-ke);background:var(--mgd-hop);color:var(--mgd-chu);font-weight:600;transition:background-color var(--mgd-cd-nhanh) var(--mgd-gt-doi),border-color var(--mgd-cd-nhanh) var(--mgd-gt-doi)}
.mgd-nut:disabled{opacity:.4;cursor:default}
/* .mgd-bai .mgd-nut-chinh: phải mạnh hơn .mgd-bai button{color:inherit}, không thì chữ nút chính mất màu tren-nhan (lỗi của bản cũ) */
.mgd-bai .mgd-nut-chinh{background:var(--mgd-nhan-nen);color:var(--mgd-tren-nhan);border-color:var(--mgd-nhan-nen)}
.mgd-bd-t{font-family:var(--mgd-tit);font-weight:700;font-size:clamp(19px,2.4cqi,24px);line-height:1.3;margin:0 0 4px}
.mgd-bd-dv{font-size:14px;color:var(--mgd-phu);margin:0 0 12px}
.mgd-bang-gon{margin-top:10px;font-size:15px}
.mgd-bang-gon summary{cursor:pointer;color:var(--mgd-phu);min-height:40px;display:flex;align-items:center}
.mgd-bang-gon table{border-collapse:collapse;width:100%;font-size:15px}
.mgd-bang-gon th,.mgd-bang-gon td{border-bottom:1px solid var(--mgd-ke);padding:6px 8px;text-align:left}
.mgd-buoc-dieu{display:none;justify-content:space-between;gap:8px;margin-top:10px}
.mgd-co-js .mgd-buoc-dieu{display:flex}
/* khung bố cục (lượt 2, 23/10/2026): lưới khối số liệu trên máy tính; toàn màn hình; mục lục */
.mgd-than.mgd-co-boc>section.mgd-luoi-doi{flex:0 0 calc(min(var(--mgd-rong),100%) / 2);max-width:calc(min(var(--mgd-rong),100%) / 2)}
.mgd-than.mgd-co-boc>section.mgd-luoi-doi>.mgd-cot,.mgd-than.mgd-co-boc>section.mgd-luoi-doi>.mgd-rong{max-width:100%;margin-inline:0}
@container mgdbai (max-width:768px){.mgd-than.mgd-co-boc>section.mgd-luoi-doi{max-width:100%}}
.mgd-toan-man{min-height:min(100svh,900px);display:flex;flex-direction:column;justify-content:center;background:var(--mgd-hop);margin-block:24px;padding-block:32px}
.mgd-toan-man .mgd-so-o{font-size:clamp(56px,9cqi,112px);padding-block:28px}
.mgd-toan-man .mgd-so-luoi{max-width:520px;margin-inline:auto}
.mgd-ml{border-top:3px solid var(--mgd-nhan);border-bottom:1px solid var(--mgd-ke);padding-block:12px;margin-block:18px}
.mgd-ml-t{font-family:var(--mgd-tit);font-weight:700;margin:0 0 6px}
.mgd-ml ol{margin:0;padding-left:1.4em}
.mgd-ml li{margin:4px 0}
.mgd-ml a{color:var(--mgd-nhan-chu);display:inline-block;min-height:40px;line-height:40px}

/* ---------- phong cách của bài (máy dựng sinh từ nhan-dien/) ---------- */
.mgd-bai{--mgd-nen:#f4f7fa;--mgd-chu:#0f1a24;--mgd-phu:#4a5866;--mgd-ke:#cfd8e0;--mgd-nhan:#1f5a85;--mgd-nhan-2:#333333;--mgd-hop:#e7edf2;--mgd-tren-nhan:#ffffff;--mgd-tit-hoa:none;--mgd-tm-hoa:none;--mgd-tit:"Be Vietnam Pro",system-ui,sans-serif;--mgd-than:"Be Vietnam Pro",system-ui,sans-serif;--mgd-chu-thich:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;--mgd-nhan-chu:#1f5a85;--mgd-nhan-nen:#1f5a85;--mgd-tren-nhan-2:#ffffff}
/* ---------- khối nền: link nhúng trang công cụ trên domain nhà (04/11/2026) ----------
   khung cao theo bài mẹ khai: điện thoại --mgd-nhung-dt, máy tính --mgd-nhung-mt; trang nhúng chỉnh trong khoảng bài mẹ đặt */
.mgd-nhung-chu{margin:0 0 10px;font-size:16px;line-height:1.55}
.mgd-nhung-link .mgd-nhung-khung{max-width:none;min-height:0;background:var(--mgd-hop);border-radius:6px}
.mgd-nhung-link .mgd-nhung-khung iframe{min-height:0;height:var(--mgd-nhung-dt,600px)}
@container mgdbai (min-width:641px){.mgd-nhung-link .mgd-nhung-khung iframe{height:var(--mgd-nhung-mt,600px)}}
/* ---------- chung ---------- */
.mgd-co-js .mgd-chi-khong-js{display:none}
.mgd-dong .mgd-khoi{opacity:0;transform:translateY(18px);transition:opacity var(--mgd-cd-cham) var(--mgd-gt-vao),transform var(--mgd-cd-cham) var(--mgd-gt-vao)}
/* thang nghiêm 4–5: chỉ mờ dần, không trượt, không trang trí chuyển động */
.mgd-bai[data-nghiem="4"] .mgd-dong .mgd-khoi,.mgd-bai[data-nghiem="5"] .mgd-dong .mgd-khoi,.mgd-bai[data-nghiem="4"].mgd-dong .mgd-khoi,.mgd-bai[data-nghiem="5"].mgd-dong .mgd-khoi{transform:none}
.mgd-dong .mgd-khoi.mgd-hien{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  .mgd-bai *{transition:none!important;animation:none!important}
  .mgd-dong .mgd-khoi{opacity:1;transform:none}
}
@media print{
  .mgd-dh{position:static}
  .mgd-dong .mgd-khoi{opacity:1!important;transform:none!important}
  .mgd-co-js .mgd-bdvn-ke .mgd-bdvn-ds>li,.mgd-co-js .mgd-dtg-vung .mgd-dtg-ds>li,.mgd-co-js .mgd-buoc .mgd-buoc-ds>li,
  .mgd-co-js .mgd-tn .mgd-tn-cau,.mgd-co-js .mgd-tn .mgd-tn-kq,.mgd-co-js .mgd-tn .mgd-tn-kq-ds li{display:block!important}
  .mgd-co-js .mgd-cuon{display:block!important}
  .mgd-co-js .mgd-cuon-visual,.mgd-buoc-nut,.mgd-buoc-dieu,.mgd-tn-dieu,.mgd-bang-loc,.mgd-bang-trang,.mgd-ad-o,.mgd-dh-chia{display:none!important}
  .mgd-co-js .mgd-cuon .mgd-buoc-ds figure{display:block!important}
  .mgd-co-js .mgd-cuon .mgd-buoc-ds>li{min-height:0!important}
  .mgd-bang tr{display:table-row!important}
  .mgd-khoi{break-inside:avoid-page}
}

/* ============================================================
   THANG KHỔ, KHUÔN TRANG, DÁNG KHỐI (vòng 2; Giang duyệt 03/11/2026)
   Vòng 1 chỉ còn: thanh điều hướng, trần 1.920px của .mgd-bai, một cột lề 16px khi ≤640px.
   Bài không ghi "Khuôn trang" (= tạp chí) và khối không ghi khổ mới dựng y như cũ.
   ============================================================ */
.mgd-hep{max-width:calc(520px + 40px);margin-inline:auto;padding-inline:20px}
.mgd-vua{max-width:calc(960px + 40px);margin-inline:auto;padding-inline:20px}
@container mgdbai (max-width:640px){.mgd-hep,.mgd-vua{padding-inline:16px}}
.mgd-tran .mgd-anh-ct,.mgd-vua .mgd-anh-ct{max-width:calc(var(--mgd-cot) + 40px);padding-inline:20px}

/* bìa: căn tít trái; chia đôi (ảnh một nửa, chữ một nửa) trên máy tính, điện thoại như "tít dưới" */
.mgd-bia-trai .mgd-bia-chu{text-align:left}
.mgd-bia-trai .mgd-bia-p{margin-left:0}
@container mgdbai (min-width:900px){
  .mgd-bia-doi{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center;min-height:min(calc(100svh - 45px),860px)}
  .mgd-bia-doi .mgd-bia-anh{height:100%;max-width:none;margin:0}
  .mgd-bia-doi .mgd-bia-anh picture,.mgd-bia-doi .mgd-bia-anh img{height:100%}
  .mgd-bia-doi .mgd-bia-anh img{object-fit:cover}
  .mgd-bia-doi .mgd-bia-chu{text-align:left;max-width:720px;margin:0;padding:40px clamp(24px,4cqi,72px)}
  .mgd-bia-doi .mgd-bia-p{margin-left:0}
  .mgd-bia-doi .mgd-bia-ct{grid-column:1/-1;text-align:left}
}

/* chữ trên ảnh (khối chu-tren-anh): ảnh tràn dính màn hình, thẻ chữ cuộn lên trên */
.mgd-cta{position:relative;margin-block:24px}
.mgd-cta-anh{position:sticky;top:45px;height:min(calc(100svh - 45px),1000px);overflow:hidden;background:#111}
.mgd-cta-anh picture,.mgd-cta-anh img{width:100%;height:100%}
.mgd-cta-anh img{object-fit:cover}
.mgd-cta-chu{position:relative;display:flex;justify-content:flex-start;max-width:calc(var(--mgd-rong) + 40px);margin:calc(-1 * min(calc(100svh - 45px),1000px)) auto 0;padding:min(55svh,560px) 20px min(35svh,360px)}
.mgd-cta[data-vi-tri="giữa"] .mgd-cta-chu{justify-content:center}
.mgd-cta[data-vi-tri="phải"] .mgd-cta-chu{justify-content:flex-end}
.mgd-cta-the{max-width:460px;background:rgba(0,0,0,.76);color:#fff;padding:20px 22px;border-radius:6px}
.mgd-cta-the .mgd-doan p{text-align:left}
.mgd-bai .mgd-cta-the a{color:#fff}
.mgd-cta-t{font-family:var(--mgd-tit);font-weight:var(--mgd-tit-w);font-size:clamp(22px,2.6cqi,30px);line-height:1.25;margin:0 0 10px;color:#fff}
@container mgdbai (max-width:640px){.mgd-cta-chu{padding-inline:16px}.mgd-cta-the{max-width:none}}

/* khuôn "lề chú" (máy tính ≥1.240px): trục chữ lệch về mép trái lưới 1.280; hộp chữ, thẻ số ra lề phải ngay cạnh đoạn đang nói */
@container mgdbai (min-width:1240px){
  .mgd-bai[data-khuon="lề chú"] .mgd-than:not(.mgd-co-boc){--mgd-tm-can:left;--mgd-tm-gach-le:0;display:flow-root}
  .mgd-bai[data-khuon="lề chú"] .mgd-than:not(.mgd-co-boc)>section>.mgd-cot,
  .mgd-bai[data-khuon="lề chú"] .mgd-than:not(.mgd-co-boc)>section>.mgd-hep,
  .mgd-bai[data-khuon="lề chú"] .mgd-than:not(.mgd-co-boc)>section>.mgd-vua{margin-left:max(0px,calc((100% - var(--mgd-rong) - 40px) / 2));margin-right:auto}
  .mgd-bai[data-khuon="lề chú"] .mgd-than:not(.mgd-co-boc)>section{clear:both}
  .mgd-bai[data-khuon="lề chú"] .mgd-than:not(.mgd-co-boc)>section.mgd-k-doan,
  .mgd-bai[data-khuon="lề chú"] .mgd-than:not(.mgd-co-boc)>section.mgd-k-sapo,
  .mgd-bai[data-khuon="lề chú"] .mgd-than:not(.mgd-co-boc)>section.mgd-k-danh-sach{clear:none}
  .mgd-bai[data-khuon="lề chú"] .mgd-than:not(.mgd-co-boc)>section.mgd-k-hop:not(.mgd-toan-man),
  .mgd-bai[data-khuon="lề chú"] .mgd-than:not(.mgd-co-boc)>section.mgd-k-so-lieu:not(.mgd-toan-man){float:right;clear:right;width:360px;margin-right:max(20px,calc((100% - var(--mgd-rong)) / 2));padding-top:14px}
  .mgd-bai[data-khuon="lề chú"] .mgd-than:not(.mgd-co-boc)>section.mgd-k-hop:not(.mgd-toan-man)>*,
  .mgd-bai[data-khuon="lề chú"] .mgd-than:not(.mgd-co-boc)>section.mgd-k-so-lieu:not(.mgd-toan-man)>*{max-width:none;margin-inline:0;padding-inline:0}
}

/* khuôn "áp phích" (máy tính ≥1.280px): lưới 12 cột tới 1.920px; ô chữ, thẻ số, khối tương tác đứng cạnh nhau, đọc theo hàng */
@container mgdbai (min-width:1280px){
  .mgd-bai[data-khuon="áp phích"] .mgd-than{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:28px;row-gap:10px;align-items:start;padding-inline:40px}
  .mgd-bai[data-khuon="áp phích"] .mgd-than>section{grid-column:span 12;min-width:0;max-width:none;flex:none}
  .mgd-bai[data-khuon="áp phích"] .mgd-than>section>.mgd-cot,.mgd-bai[data-khuon="áp phích"] .mgd-than>section>.mgd-hep,
  .mgd-bai[data-khuon="áp phích"] .mgd-than>section>.mgd-vua,.mgd-bai[data-khuon="áp phích"] .mgd-than>section>.mgd-rong{max-width:none;margin-inline:0;padding-inline:0}
  .mgd-bai[data-khuon="áp phích"] .mgd-than>section.mgd-k-sapo:not([data-o]){grid-column:span 8}
  .mgd-bai[data-khuon="áp phích"] .mgd-bia-chu{max-width:none;padding-inline:40px}
  .mgd-bai[data-khuon="áp phích"] .mgd-than>section:is(.mgd-k-doan,.mgd-k-danh-sach,.mgd-k-hop),
  .mgd-bai[data-khuon="áp phích"] .mgd-than>section.mgd-k-anh:has(>.mgd-cot,>.mgd-hep),
  .mgd-bai[data-khuon="áp phích"] .mgd-than>section.mgd-k-video:has(>.mgd-cot,>.mgd-hep){grid-column:span 6;border-top:1px solid var(--mgd-ke);padding-top:14px}
  .mgd-bai[data-khuon="áp phích"] .mgd-than>section.mgd-k-so-lieu:not(.mgd-toan-man){grid-column:span 4;border-top:3px solid var(--mgd-nhan);padding-top:10px}
  .mgd-bai[data-khuon="áp phích"] .mgd-than>section:is(.mgd-k-bieu-do,.mgd-k-bang,.mgd-k-ban-do,.mgd-k-ban-do-to-mau,.mgd-k-ban-do-pho,.mgd-k-anh-diem,.mgd-k-truoc-sau,.mgd-k-dong-thoi-gian,.mgd-k-tung-buoc,.mgd-k-trac-nghiem,.mgd-k-may-tinh,.mgd-k-re-nhanh,.mgd-k-mo-hinh-3d,.mgd-k-tu-do){grid-column:span 8;border-top:1px solid var(--mgd-ke);padding-top:14px}
  .mgd-bai[data-khuon="áp phích"] .mgd-than>section:is([data-o="3"]){grid-column:span 3}
  .mgd-bai[data-khuon="áp phích"] .mgd-than>section:is([data-o="4"]){grid-column:span 4}
  .mgd-bai[data-khuon="áp phích"] .mgd-than>section:is([data-o="6"]){grid-column:span 6}
  .mgd-bai[data-khuon="áp phích"] .mgd-than>section:is([data-o="8"]){grid-column:span 8}
  .mgd-bai[data-khuon="áp phích"] .mgd-than>section:is([data-o="12"]){grid-column:span 12;border-top:0;padding-top:0}
  .mgd-bai[data-khuon="áp phích"] .mgd-tm{text-align:left;--mgd-tm-gach-le:0}
  .mgd-bai[data-khuon="áp phích"] .mgd-than>section :is(.mgd-doan,.mgd-sapo,.mgd-ds){max-width:var(--mgd-cot)}  /* chữ thân không dài quá cột 720 ở ô cả hàng */
}
@container mgdbai (min-width:1600px){
  .mgd-bai[data-khuon="áp phích"] .mgd-than>section:is(.mgd-k-doan,.mgd-k-danh-sach,.mgd-k-hop):not([data-o]),
  .mgd-bai[data-khuon="áp phích"] .mgd-than>section.mgd-k-anh:has(>.mgd-cot,>.mgd-hep):not([data-o]){grid-column:span 4}
  .mgd-bai[data-khuon="áp phích"] .mgd-than>section.mgd-k-so-lieu:not(.mgd-toan-man):not([data-o]){grid-column:span 3}
}
@media print{
  .mgd-cta-anh{position:static;height:auto}
  .mgd-cta-chu{margin-top:0;padding:12px 0}
  .mgd-cta-the{background:none;color:inherit;padding:0}
  .mgd-cta-t{color:inherit}
  .mgd-co-js .mgd-cuon .mgd-buoc-ds{margin-top:0!important;max-width:none!important}
}

/* khối tự do */
/*mgd-td:tu-do/doc-va-soi*//* cảnh “hai-tam-phim” từ gói bộ não; biến thế giới đã nối vào token của bài */
.canh-doc-va-soi .canh-hai-tam-phim{
  --canh-nen:#05080c;
  --canh-muc:#d4ecff;
  --canh-phu:#8aa0b3;
  --canh-nhan:#d4ecff;
  --canh-phong-chu:var(--mgd-than);
  --canh-phong-so:"IBM Plex Mono";
  container-type:inline-size;
  background:var(--canh-nen);color:var(--canh-muc);
  font-family:var(--canh-phong-chu),system-ui,sans-serif;line-height:1.5;
  padding:20px clamp(10px,3cqi,16px) 24px;border-radius:12px;max-width:560px;margin:0 auto;box-sizing:border-box
}
.canh-hai-tam-phim *{box-sizing:border-box}
.canh-hai-tam-phim .htp-tit{margin:0 0 6px;font-size:22px;line-height:1.3;font-weight:700}
.canh-hai-tam-phim .htp-dan{margin:0 0 14px;font-size:16px;color:var(--canh-phu)}
.canh-hai-tam-phim .htp-phim{position:relative;border:1px solid color-mix(in srgb,var(--canh-muc) 18%,transparent);border-radius:10px;
  background:radial-gradient(120% 90% at 50% 40%,color-mix(in srgb,var(--canh-muc) 6%,var(--canh-nen)),var(--canh-nen));overflow:hidden}
.canh-hai-tam-phim svg{display:block;width:100%;height:auto;touch-action:pan-y;user-select:none;-webkit-user-select:none}
.canh-hai-tam-phim svg text{font-family:var(--canh-phong-so),ui-monospace,monospace}
.canh-hai-tam-phim .htp-keo{touch-action:none;cursor:grab}
.canh-hai-tam-phim.htp-dang-keo .htp-keo,.canh-hai-tam-phim.htp-dang-keo svg{cursor:grabbing}
/* bàn tay nhỏ chỉ chỗ cầm vạch quét: nhún nhẹ tới khi độc giả chạm lần đầu, lúc kéo thì ấn xuống */
.canh-hai-tam-phim .htp-ban-tay{pointer-events:none}
.canh-hai-tam-phim .htp-ban-tay-nhun{transform-box:fill-box;transform-origin:50% 0;transition:transform .15s ease,opacity .15s ease}
.canh-hai-tam-phim.htp-goi-y .htp-ban-tay-nhun{animation:htp-nhun 1.4s ease-in-out infinite}
.canh-hai-tam-phim.htp-dang-keo .htp-ban-tay-nhun{animation:none;transform:scale(.88)}
@keyframes htp-nhun{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
@media (prefers-reduced-motion:reduce){.canh-hai-tam-phim.htp-goi-y .htp-ban-tay-nhun{animation:none}}
.canh-hai-tam-phim .htp-nhan-dung{position:absolute;right:10px;bottom:6px;margin:0;font:400 13px/1 var(--canh-phong-so),monospace;color:var(--canh-phu);pointer-events:none}
.canh-hai-tam-phim .htp-kq{margin-top:14px}
.canh-hai-tam-phim .htp-dau{margin:0;font-size:24px;line-height:1.25;font-weight:700}
.canh-hai-tam-phim .htp-dau-phu{margin:2px 0 0;font:400 13px/1.4 var(--canh-phong-so),monospace;color:var(--canh-phu)}
.canh-hai-tam-phim .htp-dong{display:flex;align-items:baseline;gap:6px;margin:0;padding:5px 0;font:400 14px/1.3 var(--canh-phong-so),monospace}
.canh-hai-tam-phim .htp-dong span{color:var(--canh-phu)}
.canh-hai-tam-phim .htp-dong i{flex:1;border-bottom:1px dotted color-mix(in srgb,var(--canh-muc) 25%,transparent);transform:translateY(-3px)}
.canh-hai-tam-phim .htp-dong b{font-weight:500;font-variant-numeric:tabular-nums}
.canh-hai-tam-phim .htp-giai{margin:10px 0 0;font-size:16px;color:var(--canh-muc);min-height:3em}
.canh-hai-tam-phim .htp-o{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px}
.canh-hai-tam-phim .htp-o label{font:500 13px/1.3 var(--canh-phong-so),monospace;color:var(--canh-phu)}
.canh-hai-tam-phim .htp-o input{width:120px;min-height:44px;font:500 17px var(--canh-phong-so),monospace;color:var(--canh-muc);background:var(--canh-nen);
  border:1px solid color-mix(in srgb,var(--canh-muc) 30%,transparent);border-radius:8px;padding:8px 10px;text-align:right}
.canh-hai-tam-phim .htp-moc{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.canh-hai-tam-phim .htp-moc button{min-height:44px;padding:0 14px;font:500 14px/1 var(--canh-phong-so),monospace;color:var(--canh-muc);background:transparent;
  border:1px solid color-mix(in srgb,var(--canh-muc) 30%,transparent);border-radius:999px;cursor:pointer}
.canh-hai-tam-phim .htp-moc button[aria-pressed=true]{color:var(--canh-nen);background:var(--canh-muc);border-color:var(--canh-muc)}
.canh-hai-tam-phim input:focus-visible,.canh-hai-tam-phim button:focus-visible,.canh-hai-tam-phim svg:focus-visible{outline:2px solid var(--canh-muc);outline-offset:2px}
.canh-hai-tam-phim .htp-nguon{margin:14px 0 0;font-size:13px;line-height:1.5;color:var(--canh-phu)}
.canh-hai-tam-phim [hidden]{display:none!important}
@container (max-width:420px){.canh-hai-tam-phim .htp-phim{margin-inline:-6px}}
@container (min-width:520px){.canh-hai-tam-phim .htp-tit{font-size:26px}}

/* ===== dáng "Đọc và soi": chữ cuộn trái, công cụ ghim phải (máy tính); một cột trên điện thoại ===== */
.canh-doc-va-soi{container-type:inline-size;container-name:docsoi}
.canh-doc-va-soi .ds-luoi{max-width:760px;margin:0 auto;padding:0 20px;font-family:var(--mgd-than),system-ui,sans-serif;color:var(--mgd-chu)}
.canh-doc-va-soi .ds-tm{font-family:var(--mgd-tit,var(--mgd-than)),system-ui,sans-serif;font-size:clamp(24px,3.2cqi,32px);line-height:1.3;font-weight:700;color:var(--mgd-nhan);margin:48px 0 18px}
.canh-doc-va-soi .ds-p{font-size:18px;line-height:1.75;margin:0 0 18px;color:var(--mgd-chu)}
.canh-doc-va-soi .ds-bang{margin:24px 0 28px}
.canh-doc-va-soi .ds-bang figcaption{font-weight:700;font-size:17px;margin:0 0 10px;color:var(--mgd-chu)}
.canh-doc-va-soi .ds-bang-cuon{overflow-x:auto}
.canh-doc-va-soi table{width:100%;border-collapse:collapse;font-size:15px;font-variant-numeric:tabular-nums;min-width:520px}
.canh-doc-va-soi thead th{text-align:right;font-weight:600;color:var(--mgd-phu);border-bottom:2px solid var(--mgd-chu);padding:8px 10px}
.canh-doc-va-soi thead th:first-child,.canh-doc-va-soi tbody th{text-align:left}
.canh-doc-va-soi tbody th{font-weight:500}
.canh-doc-va-soi td,.canh-doc-va-soi tbody th{padding:8px 10px;border-bottom:1px solid var(--mgd-ke);text-align:right}
.canh-doc-va-soi tbody th{text-align:left;white-space:nowrap}
.canh-doc-va-soi tbody tr:nth-child(5) td,.canh-doc-va-soi tbody tr:nth-child(5) th,.canh-doc-va-soi tbody tr:nth-child(7) td,.canh-doc-va-soi tbody tr:nth-child(7) th{font-weight:700}
.canh-doc-va-soi .ds-bang-nguon{font-size:14px;line-height:1.5;color:var(--mgd-phu);font-style:italic;margin:8px 0 0}
.canh-doc-va-soi .ds-may{margin:28px -8px 12px}
.canh-doc-va-soi .ds-chi-may-tinh{display:none}
@container docsoi (min-width:1100px){
  .canh-doc-va-soi .ds-luoi{max-width:1260px;display:grid;grid-template-columns:minmax(0,680px) minmax(440px,520px);column-gap:clamp(40px,4cqi,72px);justify-content:center}
  .canh-doc-va-soi .ds-chang{grid-column:1}
  .canh-doc-va-soi .ds-chang:first-child .ds-tm{margin-top:8px}
  .canh-doc-va-soi .ds-may{grid-column:2;grid-row:1 / span 20;margin:8px 0 0}
  .canh-doc-va-soi .ds-ghim{position:sticky;top:60px}
  .canh-doc-va-soi .ds-chi-may-tinh{display:inline}
  /* công cụ vừa một màn hình */
  .canh-doc-va-soi .canh-hai-tam-phim{max-width:none;padding:14px 16px 14px;height:calc(min(100svh, 1200px) - 72px);max-height:980px;display:flex;flex-direction:column}
  .canh-doc-va-soi .htp-tit{font-size:20px!important;margin-bottom:2px}
  .canh-doc-va-soi .htp-dan{font-size:14px;line-height:1.45;margin-bottom:8px}
  .canh-doc-va-soi .htp-phim{flex:1 1 0;min-height:260px;position:relative}
  .canh-doc-va-soi .htp-phim svg{position:absolute;inset:0;width:100%;height:100%}
  .canh-doc-va-soi .htp-kq{margin-top:8px}
  .canh-doc-va-soi .htp-dau{font-size:21px}
  .canh-doc-va-soi .htp-dong{padding:2px 0;font-size:13px}
  .canh-doc-va-soi .htp-giai{font-size:14px;margin-top:4px;min-height:2.6em}
  .canh-doc-va-soi .htp-o{margin-top:4px}
  .canh-doc-va-soi .htp-o input{min-height:38px;width:100px;padding:4px 8px}
  .canh-doc-va-soi .htp-moc{margin-top:6px;gap:6px}
  .canh-doc-va-soi .htp-moc button{min-height:36px;padding:0 11px;font-size:13px}
  .canh-doc-va-soi .htp-nguon{font-size:11.5px;line-height:1.4;margin-top:6px}
}
@media (max-height:780px){@container docsoi (min-width:1100px){.canh-doc-va-soi .htp-dan{display:none}.canh-doc-va-soi .htp-giai{min-height:0}}}
@media (prefers-reduced-motion:reduce){.canh-doc-va-soi *{scroll-behavior:auto}}
/*het-td:tu-do/doc-va-soi*/