/* ══════════════════════════════════════════════════════════════════════════
   MONA AI Lab — CSS dùng chung cho LIST + DETAIL (bản dựng tĩnh, lần 2)

   Dựng theo NGÔN NGỮ ĐANG CHẠY TRÊN mona.media, đo ngày 14/09/2026:
   - Chữ: Inter (nội dung, tiêu đề bài), nhấn đậm 700–800.
   - Tím chủ đạo #7c0fd1 cho H2 bài viết, tím đậm #340658, chữ thân #3a3a3a.
   - Nền trắng + lavender #f9f1ff / #f3e8ff; thẻ trắng viền #ececf3 bo 10–14px.
   - Hộp nổi: gradient tím→hồng→cam (hero /blog/, CTA). Nhấn + phân trang: cam #ff7a00.
   - Thẻ bài luôn có ảnh thumbnail thật.
   Tham chiếu: /blog/ (home.php), bài viết (single.php), /bo-ai-agent/, band .hob trang chủ.

   ⚠️ KHI PORT: theme đặt html font-size nhỏ (rem ≠ 16px) → file này dùng px.
   Mọi class tiền tố alab-. Bỏ .alab-ph / .alab-note (chỉ có ở bản tĩnh).
   ══════════════════════════════════════════════════════════════════════════ */

.alab{
  --tim:#7c0fd1; --tim-dam:#340658; --tim-dem:#23003f; --tim-sang:#a32dff;
  --hong:#f41e92; --cam:#ff7a00;
  --chu:#3a3a3a; --chu-2:#5f5f6b; --chu-3:#8a8a99; --chu-dam:#1c1c28;
  --vien:#ececf3; --vien-2:#e3e3ec;
  --nen:#ffffff; --nen-tim:#f9f1ff; --nen-tim-2:#f3e8ff; --nen-xam:#f3f3f7;
  --ok:#15803d; --ok-bg:#e7f8ee;
  --warn:#b45309; --warn-bg:#fff4e3;
  --bad:#dc3232; --bad-bg:#fdecec;
  --grad:linear-gradient(135deg,#5b21b6 0%,#7c3aed 45%,#db2777 78%,#f97316 100%);
  --bong:0 6px 18px rgba(0,0,0,.08);
  --r:14px; --r-sm:10px;

  font-family:Inter,'Be Vietnam Pro',system-ui,-apple-system,sans-serif;
  font-size:17px; line-height:1.7; color:var(--chu); background:var(--nen);
  -webkit-font-smoothing:antialiased; overflow-x:clip;
}
.alab *,.alab *::before,.alab *::after{ box-sizing:border-box; }
.alab img{ max-width:100%; height:auto; display:block; }
.alab a{ color:var(--tim); text-decoration:none; }
.alab a:hover{ color:var(--cam); }
.alab :focus-visible{ outline:2px solid var(--tim); outline-offset:3px; border-radius:6px; }
:where(.alab) :where(h1,h2,h3,p){ margin:0; }   /* specificity 0 để không đè margin của các khối */
.alab-wrap{ max-width:1200px; margin-inline:auto; padding-inline:20px; }
/* merge.min.css của theme reset b/strong/em/q về font:inherit và ol/ul về list-style:none */
.alab :where(b,strong){ font-weight:700; }
.alab :where(em,i){ font-style:italic; }
.alab-prose > * + *{ margin-top:1em; }
.alab-prose ul{ list-style:disc; padding-left:1.3em; }
.alab-prose ol{ list-style:decimal; padding-left:1.3em; }
.alab-prose li + li{ margin-top:.4em; }
.alab-prose a{ text-decoration:underline; text-underline-offset:.18em; }
.alab-prose h3{ font-size:20px; line-height:1.4; font-weight:700; color:var(--chu-dam); }
/* thanh lọc bản WP: làn là link tới URL taxonomy */
.alab-seg-link{ display:inline-flex; align-items:center; font:600 14px/1 Inter,sans-serif; padding:10px 16px; border-radius:999px; border:1px solid var(--vien-2); background:#fff; }
.alab a.alab-seg-link{ color:var(--chu-2); }
.alab a.alab-seg-link:hover{ color:var(--tim); border-color:var(--tim); }
.alab a.alab-seg-link[aria-current="page"]{ background:var(--tim); border-color:var(--tim); color:#fff; }
.alab-pager .dots{ border:0; background:none; }
.alab-sr{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }

/* chỉ ở bản tĩnh */
.alab-ph{ background:#23003f; color:#e2d1f3; text-align:center; font-size:13px; padding:22px 20px; }
.alab-ph--foot{ padding:40px 20px; }
.alab-note{ background:#fff4e3; color:#8a4b00; font-size:13.5px; line-height:1.5; padding:9px 20px; text-align:center; }

.alab-progress{ position:fixed; top:0; left:0; right:0; height:3px; z-index:99; background:var(--grad);
  transform-origin:0 50%; transform:scaleX(var(--p,0)); }

/* ── Pill + nhãn nhận định ─────────────────────────────────────────────── */
.alab-pill{ display:inline-flex; align-items:center; gap:6px; white-space:nowrap;
  font-size:12.5px; font-weight:700; line-height:1; padding:7px 12px; border-radius:999px;
  background:var(--nen-tim-2); color:var(--tim); }
.alab a.alab-pill:hover{ color:#fff; background:var(--tim); }
.alab-pill--solid{ background:var(--tim); color:#fff; text-transform:uppercase; letter-spacing:.02em; }
.alab a.alab-pill--solid{ color:#fff; }
.alab-vd{ display:inline-flex; align-items:center; gap:7px; white-space:nowrap;
  font-size:13px; font-weight:700; line-height:1; padding:7px 12px 7px 10px; border-radius:999px; }
.alab-vd::before{ content:""; width:8px; height:8px; border-radius:50%; background:currentColor; flex:none; }
.alab-vd--ok  { color:var(--ok);   background:var(--ok-bg); }
.alab-vd--warn{ color:var(--warn); background:var(--warn-bg); }
.alab-vd--bad { color:var(--bad);  background:var(--bad-bg); }
.alab-vd--note{ color:var(--chu-2); background:var(--nen-xam); }
.alab-vd--ship{ color:var(--ok); background:#fff; box-shadow:inset 0 0 0 1.5px currentColor; }
.alab-vd--lg{ font-size:15px; padding:10px 16px 10px 13px; }

/* ── Nút ──────────────────────────────────────────────────────────────── */
.alab-btn{ display:inline-flex; align-items:center; justify-content:center; gap:8px; cursor:pointer; border:0;
  font:700 15px/1 Inter,sans-serif; padding:14px 24px; border-radius:999px; text-decoration:none;
  color:#fff; background:var(--cam); transition:transform .2s, box-shadow .2s; }
.alab a.alab-btn,.alab a.alab-btn:hover{ color:#fff; }
.alab-btn:hover{ transform:translateY(-2px); box-shadow:0 10px 22px rgba(255,122,0,.3); }
.alab-btn--white{ background:#fff; color:var(--tim); }
.alab a.alab-btn--white,.alab a.alab-btn--white:hover{ color:var(--tim); }
.alab-btn--white:hover{ box-shadow:0 10px 22px rgba(0,0,0,.18); }
.alab-btn--ghost{ background:rgba(255,255,255,.12); color:#fff; box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.5); }
.alab-btn--line{ background:#fff; color:var(--chu); box-shadow:inset 0 0 0 1px var(--vien-2); }
.alab-btn--line:hover{ color:var(--cam); box-shadow:inset 0 0 0 1px var(--cam); }

/* ── THƯỚC ĐỐI CHIẾU (hãng công bố ◇ · khoảng MONA đo ▬ · trung vị |) ── */
.alab-gap{ list-style:none; margin:0; padding:0; display:grid; gap:20px; }
.alab-gap-row{ display:grid; grid-template-columns:minmax(0,210px) minmax(0,1fr); gap:6px 28px; align-items:center; }
.alab-gap-k{ font-weight:700; font-size:15px; line-height:1.4; color:var(--chu-dam); }
.alab-gap-k small{ display:block; font-weight:400; font-size:13px; color:var(--chu-3); }
.alab-gap-track{ position:relative; height:34px; margin-block:24px 20px;
  background:linear-gradient(var(--vien-2),var(--vien-2)) 0 50%/100% 2px no-repeat; }
.alab-gap-run{ position:absolute; top:10px; height:14px; border-radius:999px; left:var(--from); width:var(--span);
  background:var(--c,var(--tim)); transform-origin:0 50%; transition:transform .7s cubic-bezier(.2,.7,.2,1); }
.alab-gap-med{ position:absolute; top:3px; left:var(--at); width:4px; height:28px; margin-left:-2px; border-radius:2px;
  background:var(--tim-dam); transition:opacity .3s .5s; }
.alab-gap-claim{ position:absolute; top:9px; left:var(--at); width:16px; height:16px; margin-left:-8px;
  transform:rotate(45deg); background:#fff; border:3px solid var(--chu); border-radius:3px; }
.alab-gap-lbl{ position:absolute; bottom:calc(100% + 1px); left:var(--at); transform:translateX(-50%);
  white-space:nowrap; font-size:13px; font-weight:600; line-height:1.2; color:var(--chu-2); }
.alab-gap-lbl--mona{ color:var(--tim-dam); font-weight:800; }
.alab-gap-lbl--claim{ bottom:auto; top:calc(100% + 1px); }
.alab-gap-lbl[data-edge="start"]{ transform:none; }
.alab-gap-lbl[data-edge="end"]{ transform:translateX(-100%); }
.alab-gap-axis{ display:flex; justify-content:space-between; margin-top:2px; font-size:12px; color:var(--chu-3); }
.alab-gap-legend{ display:flex; flex-wrap:wrap; gap:8px 22px; margin-top:18px; font-size:13.5px; color:var(--chu-2); }
.alab-gap-legend span{ display:inline-flex; align-items:center; gap:8px; }
.alab-lg-claim{ width:12px; height:12px; transform:rotate(45deg); border:2.5px solid var(--chu); border-radius:2px; background:#fff; }
.alab-lg-run{ width:24px; height:10px; border-radius:999px; background:linear-gradient(90deg,var(--ok) 0 50%,var(--warn) 50% 100%); }
.alab-lg-med{ width:4px; height:16px; border-radius:2px; background:var(--tim-dam); }
.alab-js .alab-gap:not(.is-in) .alab-gap-run{ transform:scaleX(0); }
.alab-js .alab-gap:not(.is-in) .alab-gap-med{ opacity:0; }
@media (max-width:640px){ .alab-gap-row{ grid-template-columns:minmax(0,1fr); } }

/* ── Bảng ─────────────────────────────────────────────────────────────── */
.alab-table-wrap{ overflow-x:auto; border:1px solid var(--vien); border-radius:var(--r); background:#fff; }
.alab-table{ width:100%; border-collapse:collapse; font-size:15px; line-height:1.5; }
.alab-table--wide{ min-width:820px; }
.alab-table caption{ caption-side:top; text-align:left; padding:16px 18px 12px; font-weight:800; font-size:16px; color:var(--chu-dam); }
.alab-table caption small{ display:block; font-weight:400; font-size:13.5px; color:var(--chu-3); }
.alab-table th,.alab-table td{ padding:12px 18px; text-align:left; vertical-align:top; }
.alab-table thead th{ background:var(--nen-tim); color:var(--tim-dam); font-size:13.5px; font-weight:700; white-space:nowrap; }
.alab-table tbody tr + tr > *{ border-top:1px solid var(--vien); }
.alab-table tbody th{ font-weight:700; color:var(--chu-dam); min-width:150px; }
.alab-table .num{ text-align:right; white-space:nowrap; font-variant-numeric:tabular-nums; }
.alab-table .dlt-bad{ color:var(--bad); font-weight:700; }
.alab-table .dlt-warn{ color:var(--warn); font-weight:700; }
.alab-table .dlt-ok{ color:var(--ok); font-weight:700; }
.alab-note-sm{ font-size:14px; color:var(--chu-2); }
.alab-tag{ display:inline-block; font-size:12.5px; font-weight:700; padding:5px 10px; border-radius:999px; white-space:nowrap; }
.alab-tag--ev{ color:var(--ok); background:var(--ok-bg); }
.alab-tag--ct{ color:var(--bad); background:var(--bad-bg); }
.alab-tag--cx{ color:var(--chu-2); background:var(--nen-xam); }
.alab-heat{ display:flex; align-items:center; gap:12px; min-width:190px; }
.alab-heat-bar{ flex:1; height:10px; border-radius:999px; background:var(--nen-xam); overflow:hidden; }
.alab-heat-bar i{ display:block; height:100%; width:var(--w); background:var(--c); border-radius:999px;
  transform-origin:0 50%; transition:transform .7s cubic-bezier(.2,.7,.2,1); }
.alab-heat b{ font-weight:700; font-variant-numeric:tabular-nums; min-width:54px; text-align:right; }
.alab-js .alab-heat-wrap:not(.is-in) .alab-heat-bar i{ transform:scaleX(0); }

/* ── Biểu đồ SVG ─────────────────────────────────────────────────────── */
.alab-chart{ margin:0; border:1px solid var(--vien); border-radius:var(--r); background:#fff; padding:18px 18px 14px; }
.alab-chart-scroll{ overflow-x:auto; }
.alab-chart svg{ display:block; width:100%; min-width:520px; height:auto; font-family:Inter,sans-serif; }
.alab-chart figcaption{ font-size:14px; color:var(--chu-2); margin-top:10px; line-height:1.55; }
.alab-chart figcaption b{ color:var(--chu-dam); }

/* ══════════════════════════════════════════════════════════════════════════
   DETAIL — lần 5 (15/09/2026): khung bài viết của site, bỏ cột mục lục → 2 cột
   Cột trái: đầu bài trắng như blog (pill · H1 · đoạn dẫn · tác giả) rồi các box/section
   riêng của AI Lab. Cột phải: hồ sơ lần test + đúng sidebar banner của blog.
   Luật thẳng hàng: mọi khối rộng 100% cột nội dung; chữ ngoài hộp ở mép 0, chữ trong
   mọi hộp ở mép 24px — không hộp nào dùng padding riêng.
   Đã thử và bị bác: 3 cột kiểu blog · toàn khổ có số chương/nền xen kẽ/thanh chương ·
   hero tím đêm có khung kính.
   ══════════════════════════════════════════════════════════════════════════ */

.alab-crumb{ font-size:14px; color:var(--chu-3); margin-bottom:18px; }
.alab .alab-crumb a{ color:var(--chu-2); }
.alab-crumb span[aria-hidden]{ margin-inline:8px; }

.alab-d{ padding-block:26px 90px; }
.alab-d-grid{ display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:48px; align-items:start; }
.alab-d-main{ min-width:0; }
.alab-d-main > * + *{ margin-top:48px; }
.alab-d-main > .alab-d-head + *{ margin-top:28px; }
@media (max-width:1024px){ .alab-d-grid{ grid-template-columns:minmax(0,1fr); gap:40px; } }

/* ── Đầu bài (theo bài blog của site) ───────────────────────────────── */
.alab-d-meta{ display:flex; flex-wrap:wrap; align-items:center; gap:10px 16px; padding-bottom:18px; border-bottom:1px solid var(--vien);
  font-size:13px; font-weight:700; color:var(--tim); }
.alab .alab-d-head h1{ margin-top:20px; font-size:clamp(30px,3.1vw,44px); line-height:1.25; font-weight:700; letter-spacing:-.01em; color:var(--chu); text-wrap:pretty; }
.alab .alab-d-dek{ margin-top:16px; font-size:18px; line-height:1.65; color:var(--chu-2); }
.alab-d-by{ margin-top:20px; padding-block:14px; border-block:1px solid var(--vien);
  display:flex; flex-wrap:wrap; align-items:center; gap:10px 26px; font-size:14px; color:var(--chu-2); }
.alab-d-by b{ color:var(--chu-dam); font-weight:700; }
.alab-author{ display:flex; align-items:center; gap:12px; margin-right:auto; }
.alab a.alab-author{ color:inherit; }
.alab-author img{ width:46px; height:46px; border-radius:50%; object-fit:cover; object-position:50% 20%; background:var(--nen-tim); }
.alab-author b{ display:block; font-size:15px; }
.alab-author small{ display:block; font-size:12px; font-weight:600; letter-spacing:.03em; text-transform:uppercase; color:var(--chu-3); }

/* ── Box kết quả lần test ────────────────────────────────────────────── */
.alab-result{ padding:24px; border-radius:18px; background:#fff; border:1px solid var(--vien); box-shadow:0 22px 44px -34px rgba(52,6,88,.4); }
.alab-result-top{ display:flex; flex-wrap:wrap; align-items:center; gap:10px 14px; }
.alab-result-top .lbl{ font-size:13px; font-weight:800; letter-spacing:.04em; text-transform:uppercase; color:var(--tim-dam); }
.alab .alab-result-text{ margin-top:12px; font-size:16px; line-height:1.6; }
.alab-result-score{ list-style:none; margin:20px 0 0; padding:20px 0 0; border-top:1px solid var(--vien); display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); }
.alab-result-score li{ padding:0 18px; border-left:1px solid var(--vien); }
.alab-result-score li:first-child{ padding-left:0; border-left:0; }
.alab .alab-result-score .k{ font-size:13px; line-height:1.4; color:var(--chu-2); min-height:2.8em; }
.alab .alab-result-score .v{ margin-top:6px; font-size:30px; line-height:1.1; font-weight:800; letter-spacing:-.02em; color:var(--chu-dam); font-variant-numeric:tabular-nums; }
.alab-result-score .v small{ margin-left:3px; font-size:15px; font-weight:600; color:var(--chu-3); letter-spacing:0; }
.alab .alab-result-score .s{ margin-top:4px; font-size:12.5px; font-weight:700; color:var(--c); }
.alab a.alab-result-src{ display:inline-block; margin-top:16px; font-size:14px; font-weight:700; }
@media (max-width:700px){
  .alab-result-score{ grid-template-columns:repeat(2,minmax(0,1fr)); row-gap:18px; }
  .alab-result-score li:nth-child(odd){ padding-left:0; border-left:0; }
  .alab .alab-result-score .v{ font-size:26px; }
}

/* ── Tóm tắt nhanh ───────────────────────────────────────────────────── */
.alab-tldr{ padding:24px; border-radius:18px; background:var(--nen-tim); }
.alab .alab-tldr h2{ font-size:22px; line-height:1.3; font-weight:700; color:var(--tim); }
.alab-tldr ul{ list-style:none; margin:14px 0 0; padding:0; }
.alab-tldr li{ position:relative; padding:10px 0 10px 28px; font-size:16.5px; line-height:1.6; border-top:1px solid #e6d3fb; }
.alab-tldr li:first-child{ border-top:0; padding-top:0; }
.alab-tldr li::before{ content:""; position:absolute; left:2px; top:calc(10px + .55em); width:10px; height:10px; border-radius:50%; background:#fff; box-shadow:0 0 0 3px var(--cam); }
.alab-tldr li:first-child::before{ top:.55em; }

/* ── Mục nội dung ────────────────────────────────────────────────────── */
.alab-s{ scroll-margin-top:calc(var(--alab-top,80px) + 20px); }
.alab-s > * + *{ margin-top:18px; }
.alab .alab-s > h2{ font-size:clamp(24px,2.4vw,30px); line-height:1.3; font-weight:700; color:var(--tim); text-wrap:pretty; }
.alab .alab-s > h3{ margin-top:32px; font-size:19px; line-height:1.4; font-weight:700; color:var(--chu-dam); }
.alab-s > h3 + *{ margin-top:12px; }
.alab-blk--text{ font-size:17px; }
.alab-blk--gaps{ padding:24px; border-radius:18px; background:#fff; border:1px solid var(--vien); }
.alab-d-main .alab-table--wide{ min-width:720px; }
.alab-d-main .alab-chart svg{ min-width:460px; }
.alab-d-main .alab-chart{ padding:20px 24px 16px; }
.alab-d-main .alab-table caption{ padding:18px 24px 12px; }
.alab-d-main .alab-table th,.alab-d-main .alab-table td{ padding:12px 24px; }
.alab-d-main .alab-table td:not(:first-child),.alab-d-main .alab-table th:not(:first-child){ padding-left:12px; }

.alab-hl{ background:linear-gradient(transparent 55%,#ffe0bd 55%); padding-inline:2px; }
.alab mark{ background:#ffe9a8; color:inherit; padding-inline:2px; border-radius:3px; }

/* ── Sidebar ────────────────────────────────────────────────────────── */
.alab-d-side{ align-self:stretch; display:flex; flex-direction:column; gap:16px; }
/* cột sidebar kéo cao bằng cột nội dung; khối cuối dính khi cuộn */
.alab-side-sticky{ position:sticky; top:calc(var(--alab-top,80px) + 20px); display:grid; gap:16px; }
.alab-side-card{ padding:20px 24px; border-radius:18px; background:#fff; border:1px solid var(--vien); }
.alab .alab-side-card h2{ font-size:16px; font-weight:800; color:var(--chu-dam); margin-bottom:4px; }
.alab-spec{ margin:0; }
.alab-spec > div{ padding-block:9px; }
.alab-spec > div + div{ border-top:1px solid var(--vien); }
.alab-spec dt{ font-size:12.5px; font-weight:700; color:var(--chu-3); }
.alab-spec dd{ margin:2px 0 0; font-size:14.5px; line-height:1.45; color:var(--chu-dam); }
.alab-spec code{ font-family:'JetBrains Mono',ui-monospace,monospace; font-size:13px; background:var(--nen-tim); color:var(--tim-dam); padding:1px 6px; border-radius:5px; }
@media (max-width:1024px){ .alab-side-sticky{ position:static; } }

/* ── Box CTA trong bài ──────────────────────────────────────────────── */
.alab-cta-in{ padding:24px; border-radius:18px; background:var(--grad); display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:16px 24px; }
.alab .alab-cta-in .t{ font-size:20px; line-height:1.35; font-weight:800; color:#fff; }
.alab .alab-cta-in .s{ margin-top:4px; font-size:14.5px; line-height:1.55; color:rgba(255,255,255,.92); max-width:52ch; }

/* ── Đầu bài báo cáo: trạng thái · nhận định · dữ kiện test ────────────── */
.alab-d-status{ display:flex; flex-wrap:wrap; align-items:center; gap:10px 16px; padding-bottom:16px; border-bottom:1px solid var(--vien); font-size:13.5px; color:var(--chu-2); }
.alab-d-status b{ color:var(--chu-dam); font-weight:700; }
.alab-st{ display:inline-flex; align-items:center; gap:7px; font-size:12.5px; font-weight:800; line-height:1; padding:7px 12px; border-radius:999px; }
.alab-st::before{ content:""; width:8px; height:8px; border-radius:50%; background:currentColor; }
.alab-st--active{ color:var(--ok); background:var(--ok-bg); }
.alab-st--testing{ color:var(--tim); background:var(--nen-tim-2); }
.alab-st--stale{ color:var(--warn); background:var(--warn-bg); }
.alab .alab-d-status a.alab-newer{ font-weight:700; color:var(--cam); }
.alab .alab-h2{ font-size:clamp(24px,2.4vw,30px); line-height:1.3; font-weight:700; color:var(--tim); text-wrap:pretty; }
.alab .alab-h2-note{ margin-top:8px; font-size:15px; color:var(--chu-2); }

/* ── Báo cáo trả lời câu hỏi nào ─────────────────────────────────────── */
.alab-q-grid{ list-style:none; margin:22px 0 0; padding:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); counter-reset:q; }
.alab-q-grid li{ counter-increment:q; display:flex; flex-direction:column; gap:12px; padding:4px 26px; border-left:1px solid var(--vien); }
.alab-q-grid li:first-child{ padding-left:0; border-left:0; }
.alab-q-grid li:last-child{ padding-right:0; }
.alab-q-grid li::before{ content:"Câu hỏi " counter(q); font-size:12px; font-weight:800; letter-spacing:.05em; text-transform:uppercase; color:var(--tim); }
.alab .alab-q-grid .q{ font-size:15.5px; line-height:1.5; font-weight:700; color:var(--chu-dam); }
.alab .alab-q-grid .a{ margin-top:auto; display:flex; flex-wrap:wrap; align-items:center; gap:8px 10px; }
.alab-q-grid .a b{ font-size:22px; line-height:1.2; font-weight:800; color:var(--chu-dam); font-variant-numeric:tabular-nums; }
.alab .alab-q-grid .n{ font-size:13.5px; line-height:1.5; color:var(--chu-2); }
.alab-ans{ display:inline-flex; font-size:13px; font-weight:800; line-height:1; padding:6px 11px; border-radius:999px; }
.alab-ans--yes{ color:var(--ok); background:var(--ok-bg); }
.alab-ans--no{ color:var(--bad); background:var(--bad-bg); }
.alab-ans--partial{ color:var(--warn); background:var(--warn-bg); }
@media (max-width:900px){ .alab-q-grid{ grid-template-columns:minmax(0,1fr); } .alab-q-grid li{ padding:18px 0; border-left:0; border-top:1px solid var(--vien); } .alab-q-grid li:first-child{ border-top:0; padding-top:0; } }

/* ── Đầu bài trải ngang + hộp kết luận ngay dưới, rồi mới tới hai cột ───── */
.alab-d > .alab-d-head{ max-width:1080px; }
.alab .alab-d > .alab-d-head h1{ margin-top:18px; font-size:clamp(28px,2.6vw,40px); line-height:1.25; font-weight:700; letter-spacing:-.01em; color:var(--chu); text-wrap:balance; }
.alab .alab-d > .alab-d-head .alab-d-dek{ margin-top:14px; font-size:17px; line-height:1.65; color:var(--chu-2); max-width:78ch; }
.alab-d > .alab-d-head .alab-d-status{ padding-bottom:0; border-bottom:0; }

.alab-proof{ position:relative; margin:28px 0 48px; padding:22px 24px 20px; border-radius:20px; container-type:inline-size;
  border:1.5px solid transparent; background:linear-gradient(#fff,#fff) padding-box, var(--grad) border-box;
  box-shadow:0 30px 56px -46px rgba(91,33,182,.6); }
.alab-proof::before{ content:""; position:absolute; inset:0; border-radius:19px; pointer-events:none;
  background:radial-gradient(60% 90% at 100% 0%, #f6ecff 0%, rgba(246,236,255,0) 70%); }
.alab-proof > *{ position:relative; }
.alab-proof-top{ display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:6px 16px; padding-bottom:14px; border-bottom:1px dashed #e2cffa; }
.alab .alab-proof-seal{ display:inline-flex; align-items:center; gap:9px; font-size:14px; line-height:1.3; color:var(--tim-dam); }
.alab-proof-seal .mk{ flex:none; width:30px; height:30px; border-radius:50%; display:grid; place-items:center; background:var(--grad); color:#fff; }
.alab-proof-seal b{ font-weight:800; }
.alab .alab-proof-when{ font-size:13.5px; line-height:1.4; color:var(--chu-2); }
.alab-proof-when b{ font-weight:700; color:var(--chu-dam); }

.alab-proof-body{ padding-top:18px; display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,2fr); gap:18px 28px; align-items:stretch; }
.alab .alab-proof-vd .lbl{ font-size:12px; line-height:1.3; font-weight:800; letter-spacing:.05em; text-transform:uppercase; color:var(--tim); }
.alab-proof-vd .alab-vd{ margin-top:10px; }
.alab .alab-proof-vd .fit{ margin-top:10px; font-size:17px; line-height:1.45; font-weight:700; color:var(--chu-dam); text-wrap:pretty; }
.alab .alab-proof-vd .txt{ margin-top:8px; font-size:14.5px; line-height:1.6; color:var(--chu-2); }
.alab-proof-nums{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); row-gap:22px; }
.alab-proof-nums li{ display:flex; flex-direction:column; min-width:0; padding:2px 20px; border-left:1px solid var(--vien); }
.alab-proof-nums li:first-child{ border-left:0; }
.alab .alab-proof-nums .k{ font-size:12.5px; line-height:1.4; color:var(--chu-2); min-height:2.8em; }
.alab .alab-proof-nums .v{ margin-top:2px; font-size:30px; line-height:1.1; font-weight:800; letter-spacing:-.02em; color:var(--chu-dam); font-variant-numeric:tabular-nums; }
.alab-proof-nums .v small{ margin-left:3px; font-size:13px; font-weight:600; color:var(--chu-3); letter-spacing:0; }
.alab-mr{ position:relative; height:18px; margin:12px 0 2px; }
.alab-mr::before{ content:""; position:absolute; left:0; right:0; top:8px; height:2px; border-radius:2px; background:var(--vien-2); }
.alab-mr .gap{ position:absolute; top:7px; height:4px; border-radius:4px; background:var(--c); opacity:.35; }
.alab-mr i{ position:absolute; transform:translateX(-50%); }
.alab-mr .mo{ top:3px; width:12px; height:12px; border-radius:50%; background:var(--c); box-shadow:0 0 0 2px #fff, 0 0 0 3px var(--c); }
.alab-mr .cl{ top:4.5px; width:9px; height:9px; transform:translateX(-50%) rotate(45deg); border:2px solid var(--chu-dam); background:#fff; border-radius:1px; }
.alab-mr .bs{ top:2px; width:2px; height:14px; border-radius:2px; background:var(--chu-3); }
.alab .alab-proof-nums .cmp{ margin-top:8px; display:grid; gap:3px; font-size:12px; line-height:1.4; color:var(--chu-3); }
.alab-proof-nums .cmp span{ display:flex; align-items:center; gap:6px; flex-wrap:wrap; }
.alab-proof-nums .cmp b{ font-weight:700; color:var(--chu-dam); }
.alab-proof-nums .cmp i{ flex:none; display:inline-block; }
.alab-proof-nums .cmp .cl{ width:7px; height:7px; margin-inline:2px; transform:rotate(45deg); border:1.5px solid var(--chu-dam); background:#fff; }
.alab-proof-nums .cmp .bs{ width:2px; height:10px; margin-inline:4px; border-radius:2px; background:var(--chu-3); }
.alab-proof-nums--facts{ grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); align-content:center; }
.alab-proof-body:has(.alab-proof-nums--facts){ align-items:center; }
.alab .alab-proof-nums--facts .k{ min-height:0; font-size:13.5px; }
.alab .alab-proof-nums--facts .v{ margin-top:6px; font-size:34px; line-height:1.15; }
.alab .alab-proof-nums--facts .s{ margin-top:10px; padding-top:0; }
.alab .alab-proof-nums .s{ margin-top:auto; padding-top:10px; font-size:12.5px; line-height:1.4; font-weight:700; color:var(--c); }

.alab-proof-foot{ margin-top:16px; padding:10px 16px; border-radius:12px; background:var(--nen-tim); display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:8px 24px; }
.alab-proof-meta{ margin:0; display:flex; flex-wrap:wrap; gap:6px 22px; }
.alab-proof-meta > div{ display:flex; align-items:center; gap:7px; }
.alab-proof-meta dt{ font-size:11px; font-weight:700; letter-spacing:.05em; text-transform:uppercase; color:var(--chu-3); }
.alab-proof-meta dd{ margin:0; font-size:13.5px; line-height:1.4; font-weight:600; color:var(--chu-dam); }
.alab-proof-meta code{ font-family:'JetBrains Mono',ui-monospace,monospace; font-size:12.5px; background:#fff; color:var(--tim-dam); padding:2px 7px; border-radius:6px; overflow-wrap:anywhere; }
.alab-proof-meta .who{ display:flex; align-items:center; gap:6px; }
.alab-proof-meta .who img{ flex:none; width:24px; height:24px; border-radius:50%; object-fit:cover; object-position:50% 20%; background:#fff; }
.alab .alab-proof-meta a{ color:var(--chu-dam); }
.alab .alab-proof-links{ display:flex; flex-wrap:wrap; gap:6px 18px; font-size:13.5px; line-height:1.4; }
.alab .alab-proof-links a{ font-weight:700; }
.alab .alab-proof-links a:hover{ color:var(--cam); }

@container (max-width:980px){
  .alab-proof-body{ grid-template-columns:minmax(0,1fr); }
}
@container (max-width:640px){
  .alab-proof-nums{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .alab-proof-nums li:nth-child(odd){ border-left:0; padding-left:0; }
  .alab-proof-nums li:nth-child(even){ padding-right:0; }
  .alab-proof-nums .cmp span{ display:block; }
  .alab-proof-nums .cmp b{ display:block; margin-left:15px; }
}
@media (max-width:560px){
  .alab-proof{ margin-bottom:36px; padding:18px 16px; border-radius:16px; }
  .alab .alab-proof-nums .v{ font-size:23px; }
  }
.alab-blk,#du-lieu{ scroll-margin-top:calc(var(--alab-top,80px) + 20px); }

/* ── Đưa vào khắp hệ MONA: danh sách hai cột theo dòng, không khung ───── */
.alab .alab-stack-intro{ margin-bottom:14px; font-size:17px; line-height:1.65; }
.alab-stack{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:40px; border-top:1px solid var(--vien); }
.alab-pcard{ display:grid; grid-template-columns:44px minmax(0,1fr) auto; gap:4px 14px; align-items:start; padding:18px 0; border-bottom:1px solid var(--vien); }
.alab-pcard .mk{ width:44px; height:44px; border-radius:12px; display:grid; place-items:center; font-size:14px; font-weight:800; line-height:1; letter-spacing:.02em; color:#fff; background:var(--grad); }
.alab-pcard--plan .mk{ color:var(--tim); background:var(--nen-tim-2); }
.alab .alab-pcard .n{ font-size:16.5px; line-height:1.35; font-weight:800; color:var(--chu-dam); }
.alab-pcard .new{ font-family:'JetBrains Mono',ui-monospace,monospace; font-size:11.5px; font-weight:700; letter-spacing:.04em; color:var(--cam); }
.alab .alab-pcard .r{ margin-top:3px; font-size:14.5px; line-height:1.5; }
.alab .alab-pcard .o{ margin-top:4px; font-size:13px; line-height:1.45; color:var(--chu-3); }
.alab-pcard .st{ display:inline-flex; align-items:center; gap:6px; padding-top:3px; font-size:12.5px; font-weight:700; white-space:nowrap; color:var(--c); }
.alab-pcard .st::before{ content:""; width:8px; height:8px; border-radius:50%; background:currentColor; }
.alab-pcard--ship{ --c:var(--ok); }
.alab-pcard--try{ --c:var(--warn); }
.alab-pcard--plan{ --c:var(--chu-3); }
.alab-pcard--plan .st::before{ background:transparent; box-shadow:inset 0 0 0 1.5px currentColor; }
@media (max-width:700px){ .alab-stack{ grid-template-columns:minmax(0,1fr); } }
.alab .alab-proof-vd .apply{ margin-top:8px; font-size:14px; line-height:1.5; color:var(--chu); }
.alab-proof-vd .apply b{ margin-right:6px; font-size:11.5px; font-weight:800; letter-spacing:.05em; text-transform:uppercase; color:var(--cam); }
.alab .alab-card-apply{ margin-top:12px; padding-left:12px; border-left:2px solid var(--cam); font-size:14px; line-height:1.5; color:var(--chu);
  display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.alab-card-apply b{ display:block; font-size:11px; font-weight:800; letter-spacing:.05em; text-transform:uppercase; color:var(--cam); }

/* ── Nhận định cho người ra quyết định ───────────────────────────────── */
.alab .alab-ceo-lead{ margin-top:12px; font-size:17px; line-height:1.6; }
.alab-ceo-grid{ margin-top:22px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }
.alab-ceo-col{ padding:2px 26px; border-left:1px solid var(--vien); }
.alab-ceo-col:first-child{ padding-left:0; border-left:0; }
.alab-ceo-col:last-child{ padding-right:0; }
.alab .alab-ceo-col .h{ display:flex; align-items:center; gap:9px; font-size:15px; font-weight:800; color:var(--chu-dam); }
.alab-ceo-col .h::before{ content:var(--ic); flex:none; width:24px; height:24px; border-radius:50%; display:grid; place-items:center; font-size:13px; font-weight:900; line-height:1; color:#fff; background:var(--c); }
.alab-ceo-col ul{ list-style:none; margin:10px 0 0; padding:0; }
.alab-ceo-col li{ position:relative; padding-left:18px; font-size:15px; line-height:1.55; }
.alab-ceo-col li + li{ margin-top:8px; }
.alab-ceo-col li::before{ content:""; position:absolute; left:2px; top:.6em; width:7px; height:7px; border-radius:50%; background:var(--c); }
.alab-roles{ margin-top:28px; padding-top:24px; border-top:1px solid var(--vien); display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }
.alab-roles figure{ position:relative; margin:0; padding:0 26px 0 26px; border-left:1px solid var(--vien); }
.alab-roles figure:first-child{ padding-left:0; border-left:0; }
.alab-roles figure:last-child{ padding-right:0; }
.alab-roles figure::before{ content:"“"; display:block; height:30px; font:800 54px/1 Georgia,serif; background:var(--grad); -webkit-background-clip:text; background-clip:text; color:transparent; }
.alab-roles figcaption{ margin-top:6px; font-size:12px; line-height:1.4; font-weight:800; letter-spacing:.04em; text-transform:uppercase; color:var(--tim); }
.alab-roles blockquote{ margin:10px 0 0; }
.alab .alab-roles blockquote p{ font-size:16px; line-height:1.6; font-weight:500; color:var(--chu-dam); }
.alab-week{ margin-top:28px; display:grid; grid-template-columns:auto minmax(0,1fr); align-items:baseline; gap:6px 18px; padding-top:22px; border-top:1px solid var(--vien); }
.alab .alab-week .h{ display:inline-flex; align-items:center; gap:8px; font-size:14px; font-weight:800; color:var(--cam); white-space:nowrap; }
.alab .alab-week .h::after{ content:"→"; font-size:16px; }
.alab .alab-week p:not(.h){ font-size:17px; line-height:1.6; font-weight:600; color:var(--chu-dam); }
@media (max-width:900px){ .alab-ceo-grid,.alab-roles,.alab-week{ grid-template-columns:minmax(0,1fr); } .alab-roles figure{ padding:18px 0 0; border-left:0; } .alab-roles figure + figure{ margin-top:18px; border-top:1px solid var(--vien); } .alab-ceo-col{ padding:18px 0; border-left:0; border-top:1px solid var(--vien); } .alab-ceo-col:first-child{ border-top:0; padding-top:0; } }

/* ── Dữ liệu, trích dẫn, báo cáo liên quan ───────────────────────────── */
.alab-data-row{ margin-top:14px; display:flex; flex-wrap:wrap; gap:10px; }
.alab-cite{ margin:14px 0 0; padding:16px 24px; border-radius:14px; background:var(--nen-xam); font:13.5px/1.6 'JetBrains Mono',ui-monospace,monospace; color:var(--chu-dam); white-space:pre-wrap; word-break:break-word; }
.alab-rel{ list-style:none; margin:18px 0 0; padding:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.alab-rel li{ position:relative; overflow:hidden; border-radius:16px; background:#fff; border:1px solid #eee; transition:box-shadow .2s, transform .2s; }
.alab-rel li:hover{ box-shadow:var(--bong); transform:translateY(-2px); }
.alab-rel .img{ aspect-ratio:16/10; background:var(--nen-xam); overflow:hidden; }
.alab-rel .img img{ width:100%; height:100%; object-fit:cover; }
.alab-rel .b{ padding:14px 18px 18px; }
.alab .alab-rel h3{ margin-top:10px; font-size:15.5px; line-height:1.45; font-weight:700; color:var(--chu-dam); display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.alab-rel h3 a{ color:inherit; }
.alab-rel h3 a::after{ content:""; position:absolute; inset:0; }
.alab-rel li:hover h3{ color:var(--cam); }
@media (max-width:760px){ .alab-rel{ grid-template-columns:minmax(0,1fr); } }
.alab-src-note{ display:block; margin-top:2px; font-size:12px; font-weight:400; color:var(--chu-3); white-space:normal; }
.alab-tag--na{ color:var(--chu-3); background:#fff; box-shadow:inset 0 0 0 1px var(--vien-2); }
.alab-setup th{ width:34%; }

/* ── Sidebar báo cáo ─────────────────────────────────────────────────── */
.alab-sum .alab-vd{ margin:4px 0 6px; }
.alab-legend ul{ list-style:none; margin:8px 0 0; padding:0; display:grid; gap:10px; }
.alab-legend li{ display:flex; align-items:center; gap:10px; font-size:14px; line-height:1.4; color:var(--chu-dam); }
.alab-legend i{ flex:none; display:inline-block; }
.alab-legend .sw-run{ width:24px; height:10px; border-radius:999px; background:linear-gradient(90deg,var(--ok) 0 50%,var(--warn) 50% 100%); }
.alab-legend .sw-med{ width:4px; height:16px; margin-inline:10px; border-radius:2px; background:var(--tim-dam); }
.alab-legend .sw-claim{ width:12px; height:12px; margin-inline:6px; transform:rotate(45deg); border:2.5px solid var(--chu); border-radius:2px; background:#fff; }
.alab-legend .sw-na{ width:24px; height:14px; border-radius:999px; box-shadow:inset 0 0 0 1px var(--vien-2); }

/* ── Khối nội dung (mọi hộp padding 24px) ───────────────────────────── */
.alab-ledger{ list-style:none; margin:0; padding:0; counter-reset:cl; border-top:1px solid var(--vien); }
.alab-ledger li{ counter-increment:cl; position:relative; display:grid; grid-template-columns:minmax(0,1fr) 210px; gap:10px 32px; align-items:center; padding:18px 0 18px 52px; border-bottom:1px solid var(--vien); }
.alab-ledger li::before{ content:counter(cl, decimal-leading-zero); position:absolute; left:0; top:17px; font:700 13px/1.6 'JetBrains Mono',ui-monospace,monospace; color:var(--tim); }
.alab-ledger li::after{ content:""; position:absolute; left:32px; top:22px; bottom:22px; width:1px; background:#e9d8fb; }
.alab-ledger q{ font-size:17px; line-height:1.5; font-weight:600; color:var(--chu-dam); }
.alab-ledger q::before{ content:"“"; }
.alab-ledger q::after{ content:"”"; }
.alab-ledger cite{ display:block; margin-top:6px; font-style:normal; font-size:13px; line-height:1.4; color:var(--chu-3); }
.alab-ledger .r{ display:grid; justify-items:end; gap:4px; text-align:right; }
.alab-ledger .r .lbl{ font-size:11px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--chu-3); }
.alab-ledger .r b{ font-size:22px; line-height:1.15; font-weight:800; color:var(--chu-dam); font-variant-numeric:tabular-nums; }
@media (max-width:640px){
  .alab-ledger li{ grid-template-columns:minmax(0,1fr); padding-left:40px; }
  .alab-ledger li::after{ left:26px; }
  .alab-ledger .r{ justify-items:start; text-align:left; grid-auto-flow:column; justify-content:start; align-items:center; gap:10px; }
}

.alab-code{ border-radius:var(--r); overflow:hidden; background:var(--tim-dem); }
.alab-code-h{ display:flex; justify-content:space-between; padding:10px 24px; font-size:13px; font-weight:600; color:#d9c4f2; background:#340658; }
.alab-code pre{ margin:0; padding:18px 24px; overflow-x:auto; color:#f3e8ff; font:14px/1.75 'JetBrains Mono',ui-monospace,Menlo,monospace; }
.alab-shot{ margin:0; }
.alab-shot figcaption{ font-size:14px; color:var(--chu-2); margin-top:8px; }

.alab-transcript{ border:1px solid var(--vien); border-radius:var(--r); overflow:hidden; background:#fff; }
.alab-transcript-h{ display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:8px;
  padding:12px 24px; background:var(--nen-tim); font-size:14px; font-weight:700; color:var(--tim-dam); }
.alab-turns{ margin:0; padding:6px 24px 12px; }
.alab-turns > div{ display:grid; grid-template-columns:130px minmax(0,1fr); gap:4px 16px; padding-block:11px; }
.alab-turns > div + div{ border-top:1px dashed var(--vien-2); }
.alab-turns dt{ font-size:13.5px; font-weight:700; color:var(--chu-3); padding-top:2px; }
.alab-turns dd{ margin:0; font-size:16px; }
.alab-turns .heard{ color:var(--bad); font-weight:600; }
@media (max-width:560px){ .alab-turns > div{ grid-template-columns:minmax(0,1fr); } }

.alab .alab-ab2-q{ padding:18px 24px; border-radius:16px; background:#fff; border:1.5px dashed #d9b8f7; font-size:18px; line-height:1.55; font-weight:600; color:var(--chu-dam); }
.alab-ab2-q small{ display:block; font-size:12.5px; font-weight:700; letter-spacing:.04em; text-transform:uppercase; color:var(--chu-3); margin-bottom:4px; }
.alab-ab2-grid{ margin-top:14px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.alab-ab2-side{ padding:20px 24px; border-radius:16px; background:#fff; border:1px solid var(--vien); }
.alab-ab2-side--b{ border-color:#c99af5; box-shadow:0 0 0 4px #f3e8ff; }
.alab-ab2-h{ display:inline-flex; font-size:13px; font-weight:800; padding:6px 12px; border-radius:999px; background:var(--nen-xam); color:var(--chu-2); }
.alab-ab2-side--b .alab-ab2-h{ background:var(--tim); color:#fff; }
.alab .alab-ab2-t{ margin-top:14px; font-size:16.5px; line-height:1.65; color:var(--chu-dam); }
.alab .alab-ab2-n{ margin-top:10px; font-size:15px; line-height:1.6; color:var(--chu-2); }
.alab-ab-meta{ display:flex; flex-wrap:wrap; gap:8px; margin-top:14px; }
.alab-ab-meta span{ font-size:13px; font-weight:600; padding:6px 11px; border-radius:999px; background:var(--nen-xam); color:var(--chu-2); }
@media (max-width:640px){ .alab-ab2-grid{ grid-template-columns:minmax(0,1fr); } }

.alab-band{ margin:0; padding:24px; border-radius:18px; color:#fff;
  background:linear-gradient(118deg,#5c12a8 0%,#7c0fd1 40%,#a32dff 80%,#d61ef4 115%); }
.alab-band blockquote{ margin:0; }
.alab-band blockquote p::before{ content:"“"; display:block; height:.45em; font:800 72px/1 Georgia,serif; color:#fdba3b; margin-bottom:8px; }
.alab .alab-band blockquote p{ font-size:clamp(19px,1.9vw,23px); line-height:1.55; font-weight:700; color:#fff; }
.alab-band figcaption{ margin-top:18px; display:flex; align-items:center; gap:12px; font-size:14.5px; color:rgba(255,255,255,.85); }
.alab-band figcaption img{ width:42px; height:42px; border-radius:50%; object-fit:cover; object-position:50% 20%; background:#fff; }
.alab-band figcaption b{ color:#fff; }

.alab-ship{ display:grid; grid-template-columns:auto minmax(0,1fr); gap:6px 18px; padding:20px 24px; border-radius:16px;
  border:1px solid #bfe8cf; background:linear-gradient(180deg,#f2fbf5,#fff); }
.alab-ship time{ grid-row:span 3; font-size:14px; font-weight:800; color:var(--ok); padding-top:3px; }
.alab-ship h3{ font-size:17px; line-height:1.4; font-weight:800; color:var(--chu-dam); }
.alab .alab-ship p{ font-size:15.5px; color:var(--chu-2); }
.alab-ship .alab-vd{ justify-self:start; margin-top:6px; }
@media (max-width:560px){ .alab-ship{ grid-template-columns:minmax(0,1fr); } .alab-ship time{ grid-row:auto; } }

.alab-steps{ list-style:none; margin:0; padding:0; counter-reset:s; }
.alab-steps li{ counter-increment:s; position:relative; padding:0 0 18px 52px; font-size:16px; line-height:1.6; }
.alab-steps li::before{ content:counter(s); position:absolute; left:0; top:-3px; width:34px; height:34px; border-radius:50%;
  display:grid; place-items:center; font-size:14px; font-weight:800; color:var(--tim); background:#fff; box-shadow:inset 0 0 0 2px var(--tim); }
.alab-steps li::after{ content:""; position:absolute; left:16px; top:36px; bottom:2px; width:2px; background:#e6d3fb; }
.alab-steps li:last-child{ padding-bottom:0; }
.alab-steps li:last-child::after{ display:none; }
.alab-list-x{ list-style:none; margin:0; padding:20px 24px; border-radius:16px; background:#fff; border:1px solid var(--vien); }
.alab-list-x li{ position:relative; padding-left:28px; font-size:15.5px; }
.alab-list-x li + li{ margin-top:10px; }
.alab-list-x li::before{ content:"!"; position:absolute; left:0; top:.3em; width:18px; height:18px; border-radius:50%;
  font-size:12px; font-weight:800; line-height:18px; text-align:center; color:#fff; background:var(--warn); }
.alab-list-x code{ font-family:'JetBrains Mono',monospace; font-size:14px; background:var(--nen-tim); padding:1px 6px; border-radius:5px; }
.alab-disclose{ padding:20px 24px; border-radius:16px; background:#fff; border:1px solid var(--vien); font-size:15.5px; }
.alab-log{ list-style:none; margin:0; padding:0; }
.alab-log li{ display:grid; grid-template-columns:110px minmax(0,1fr); gap:14px; padding-block:10px; font-size:15.5px; }
.alab-log li + li{ border-top:1px solid var(--vien); }
.alab-log time{ font-weight:700; color:var(--tim); }
.alab-log .next,.alab-log .next time{ color:var(--chu-3); }

.alab-machine{ border:1px solid var(--vien); border-radius:var(--r); background:#fff; }
.alab-machine summary{ cursor:pointer; padding:14px 24px; font-size:15px; font-weight:700; color:var(--tim); }
.alab-machine pre{ margin:0; padding:0 24px 18px; max-height:340px; overflow:auto; font:13px/1.6 'JetBrains Mono',monospace; color:var(--chu-2); }

.alab-bio{ display:flex; gap:20px; padding:24px; border-radius:18px; background:var(--nen-tim); }
.alab-bio img{ width:80px; height:80px; flex:none; border-radius:50%; object-fit:cover; object-position:50% 20%; background:#fff; }
.alab .alab-bio h2{ font-size:20px; font-weight:800; color:var(--chu-dam); }
.alab-bio small{ display:block; margin-top:2px; font-size:12px; font-weight:600; letter-spacing:.03em; text-transform:uppercase; color:var(--chu-3); }
.alab .alab-bio p{ margin-top:10px; font-size:15.5px; line-height:1.65; }
@media (max-width:560px){ .alab-bio{ flex-direction:column; } }

/* ══════════════════════════════════════════════════════════════════════════
   LIST — cùng hệ /blog/: hero gradient, thẻ trắng có ảnh thật, phân trang cam
   ══════════════════════════════════════════════════════════════════════════ */
.alab-hero{ padding:34px 38px; border-radius:18px; background:var(--grad); color:#fff;
  display:grid; grid-template-columns:minmax(0,1.35fr) minmax(0,1fr); gap:24px 40px; align-items:center; }
.alab-eyebrow{ display:inline-block; font-size:12.5px; font-weight:700; letter-spacing:.04em; text-transform:uppercase;
  color:#fff; background:rgba(255,255,255,.16); padding:6px 14px; border-radius:999px; }
.alab-hero h1{ margin-top:14px; font-size:clamp(28px,3.2vw,40px); line-height:1.25; font-weight:800; color:#fff; text-wrap:balance; }
.alab-hero h1 .g{ background:linear-gradient(90deg,#fde047,#fb923c); -webkit-background-clip:text; background-clip:text; color:transparent; padding-block:.08em; }
.alab-hero p{ margin-top:12px; font-size:16px; line-height:1.6; color:rgba(255,255,255,.93); max-width:56ch; }
.alab-hero-cta{ display:flex; flex-wrap:wrap; gap:10px; margin-top:20px; }
.alab-hero-stats{ list-style:none; margin:0; padding:0; display:grid; gap:10px; }
.alab-hero-stats li{ display:flex; align-items:center; gap:16px; padding:14px 18px; border-radius:14px;
  background:rgba(255,255,255,.14); box-shadow:inset 0 0 0 1px rgba(255,255,255,.22); }
.alab-hero-stats b{ font-size:32px; line-height:1; font-weight:800; min-width:56px; font-variant-numeric:tabular-nums; }
.alab-hero-stats span{ font-size:14.5px; line-height:1.4; color:rgba(255,255,255,.92); }
@media (max-width:860px){ .alab-hero{ grid-template-columns:minmax(0,1fr); padding:26px 22px; } }

/* bản WP: số đếm nằm dưới đoạn dẫn, cột phải là thẻ báo cáo mới nhất */
.alab-hero--solo{ grid-template-columns:minmax(0,1fr); }
.alab-hero--solo p{ max-width:70ch; }
.alab-hero-nums{ list-style:none; margin:24px 0 0; padding:0; display:flex; flex-wrap:wrap; gap:14px 0; }
.alab-hero-nums li{ padding:0 26px; border-left:1px solid rgba(255,255,255,.3); }
.alab-hero-nums li:first-child{ padding-left:0; border-left:0; }
.alab-hero-nums b{ display:block; font-size:30px; line-height:1.1; font-weight:800; color:#fff; font-variant-numeric:tabular-nums; }
.alab-hero-nums span{ display:block; margin-top:4px; font-size:13.5px; line-height:1.4; color:rgba(255,255,255,.85); max-width:17ch; }

.alab-feat{ position:relative; overflow:hidden; border-radius:16px; background:#fff; color:var(--chu);
  box-shadow:0 34px 70px -34px rgba(35,0,63,.75); transition:transform .25s cubic-bezier(.2,.7,.3,1); }
.alab-feat:hover{ transform:translateY(-3px); }
.alab-feat-img{ aspect-ratio:3/2; overflow:hidden; background:var(--nen-xam); }  /* cùng tỷ lệ ảnh đại diện, không xén logo và chữ trên thẻ */
.alab-feat-img img{ width:100%; height:100%; object-fit:cover; }
.alab-feat-body{ padding:16px 20px 18px; }
.alab-feat-kick{ display:flex; align-items:center; justify-content:space-between; gap:10px; }
.alab-feat-kick > span:first-child{ font-size:12.5px; font-weight:700; letter-spacing:.03em; text-transform:uppercase; color:var(--tim); }
.alab .alab-feat-title{ margin-top:10px; font-size:18px; line-height:1.42; font-weight:700; color:var(--chu-dam);
  display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; transition:color .2s; }
.alab-feat-title a{ color:inherit; }
.alab-feat-title a::after{ content:""; position:absolute; inset:0; }
.alab-feat:hover .alab-feat-title{ color:var(--cam); }
.alab-feat .alab-gap{ margin-top:4px; }
.alab .alab-feat-sum{ margin-top:8px; font-size:14.5px; line-height:1.55; color:var(--chu-2); }
.alab-feat .alab-gap-row{ grid-template-columns:minmax(0,130px) minmax(0,1fr); gap:4px 16px; }
.alab-feat .alab-gap-k{ font-size:13.5px; }
.alab-feat .alab-gap-track{ margin-block:22px 18px; }
.alab-feat-read{ display:inline-block; font-size:14px; font-weight:700; color:var(--cam); }
@media (max-width:860px){
  .alab-hero-nums li{ padding:0 16px; }
  .alab-feat .alab-gap-row{ grid-template-columns:minmax(0,1fr); }
}
@media (max-width:560px){
  /* màn hẹp: ba cột đều nhau, không để flex-wrap xếp thành bậc thang */
  .alab-hero-nums{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0; }
  .alab-hero-nums li{ padding:0 10px; }
  .alab-hero-nums b{ font-size:24px; }
  .alab-hero-nums span{ font-size:12.5px; max-width:none; }
}
@media (prefers-reduced-motion:reduce){ .alab-feat:hover{ transform:none; } }

.alab-filter{ position:sticky; top:0; z-index:20; margin-top:22px; padding:12px 0; background:rgba(255,255,255,.96);
  -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px); border-bottom:1px solid var(--vien); }
.alab-filter-in{ display:flex; flex-wrap:wrap; align-items:center; gap:10px; }
.alab-filter .alab-seg{ margin-top:0; }
.alab-filter select,.alab-filter input[type="search"]{ height:42px; padding:0 16px; border-radius:999px; border:1px solid var(--vien-2);
  font:500 14px Inter,sans-serif; color:var(--chu); background:#fff; }
.alab-filter select{ appearance:none; -webkit-appearance:none; padding-right:36px;
  background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%237c0fd1' stroke-width='1.8'/%3E%3C/svg%3E") no-repeat right 15px center; }
.alab-filter input[type="search"]{ flex:1 1 200px; min-width:0; }
.alab-filter-count{ font-size:13.5px; color:var(--chu-3); margin-left:auto; white-space:nowrap; }
@media (max-width:860px){ .alab-filter{ position:static; } .alab-filter select{ flex:1 1 150px; } .alab-filter-count{ margin-left:0; width:100%; } }

.alab-group-head{ display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; margin:30px 0 16px; }
.alab-group-head h2{ font-size:22px; font-weight:800; color:var(--chu); }
.alab-group-head span{ font-size:13.5px; color:var(--chu-3); }

.alab-feed{ list-style:none; margin:0; padding:0; display:grid; gap:14px; }
.alab-card{ position:relative; display:grid; grid-template-columns:minmax(0,36%) minmax(0,1fr); align-items:stretch; gap:28px; padding:16px;
  background:#fff; border:1px solid #eee; border-radius:var(--r); transition:box-shadow .2s, transform .2s; }
.alab-card:hover{ box-shadow:var(--bong); transform:translateY(-2px); }
/* ảnh cao đúng bằng khối nội dung bên phải, không đứng lửng lơ ở trên */
.alab-card-thumb{ position:relative; border-radius:var(--r-sm); overflow:hidden; background:var(--nen-xam); align-self:stretch; min-height:230px; }
.alab-card-thumb img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:50% 40%; }
.alab-card-thumb .alab-vd{ position:absolute; left:10px; top:10px; box-shadow:0 4px 12px rgba(0,0,0,.12); }
.alab-card-body{ padding:6px 10px 4px 0; display:flex; flex-direction:column; min-width:0; }
.alab-card--noimg{ grid-template-columns:minmax(0,1fr); padding:20px 24px; }
.alab-card--noimg .alab-card-body{ padding:0; }
.alab-card--noimg .alab-card-tags .alab-vd{ box-shadow:none; }
.alab-card-tags{ display:flex; flex-wrap:wrap; gap:6px; }
.alab-card h3{ margin-top:10px; font-size:19px; line-height:1.4; font-weight:700; color:var(--chu-dam); text-wrap:pretty; transition:color .2s;
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.alab-card h3 a{ color:inherit; }
.alab-card h3 a::after{ content:""; position:absolute; inset:0; border-radius:inherit; }
.alab-card:hover h3{ color:var(--cam); }
.alab-card-sum{ margin-top:6px; font-size:15px; line-height:1.6; color:var(--chu-2); display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.alab-card .alab-gap{ margin-top:6px; }
.alab-card .alab-gap-row{ grid-template-columns:minmax(0,160px) minmax(0,1fr); }
.alab-card .alab-gap-k{ font-size:14px; }
.alab-card .alab-gap-track{ margin-block:22px 18px; }
.alab-chips{ list-style:none; margin:12px 0 0; padding:0; display:flex; flex-wrap:wrap; gap:6px; }
.alab-chips li{ font-size:13px; padding:6px 11px; border-radius:999px; background:var(--nen-tim); color:var(--chu-2); }
.alab-chips b{ color:var(--tim-dam); font-weight:800; }
.alab-card-foot{ margin-top:auto; padding-top:14px; display:flex; flex-wrap:wrap; align-items:center; gap:6px 18px; font-size:13.5px; color:var(--chu-3); }
.alab-card-foot .read{ margin-left:auto; font-weight:700; color:var(--cam); }
.alab-card-foot .stale{ color:var(--warn); font-weight:700; }
.alab-card--ship{ border-color:#bfe8cf; }
@media (max-width:760px){
  .alab-card{ grid-template-columns:minmax(0,1fr); gap:12px; padding:12px; }
  .alab-card-thumb{ min-height:0; aspect-ratio:3/2; }
  .alab-card h3{ -webkit-line-clamp:3; }
  .alab-card-body{ padding:0 4px 4px; }
  .alab-card .alab-gap-row{ grid-template-columns:minmax(0,1fr); }
  .alab-card-foot .read{ margin-left:0; }
}
.alab-empty{ margin-top:20px; padding:40px 20px; text-align:center; border-radius:var(--r); background:var(--nen-tim); color:var(--chu-2); }
.alab-empty p + p{ margin-top:14px; }
.alab-pager{ display:flex; justify-content:center; flex-wrap:wrap; gap:8px; margin:30px 0 60px; }
.alab-pager a,.alab-pager span{ display:inline-flex; min-width:40px; height:40px; align-items:center; justify-content:center; padding:0 12px;
  border:1px solid var(--vien-2); border-radius:8px; font-size:14px; font-weight:600; color:#444; background:#fff; }
.alab-pager a:hover{ border-color:var(--cam); color:var(--cam); }
.alab-pager [aria-current="page"]{ background:var(--cam); border-color:var(--cam); color:#fff; }

@media (prefers-reduced-motion:reduce){
  .alab *,.alab *::before,.alab *::after{ transition:none !important; animation:none !important; }
  .alab-js .alab-gap:not(.is-in) .alab-gap-run,.alab-js .alab-heat-wrap:not(.is-in) .alab-heat-bar i{ transform:none; }
  .alab-js .alab-gap:not(.is-in) .alab-gap-med{ opacity:1; }
  .alab-card:hover{ transform:none; }
  .alab-progress{ display:none; }
}

/* ══════════════════════════════════════════════════════════════════════════
   MÀN LỚN 2K / 4K — ưu tiên cho bộ AI HUB (15/09/2026)
   Theme co giãn bằng cỡ chữ gốc html: 10px tới ~2000px, 16px (100%) từ 2500px,
   .container 144.6rem ≈ 2313px. CSS AI Lab viết bằng px nên phóng cả khối bằng zoom
   theo đúng tỉ lệ đó để khung, chữ, bảng, biểu đồ, sidebar dính cùng nhịp với
   header/footer. JS chia --alab-top cho zoom (ai-lab.js).
   ══════════════════════════════════════════════════════════════════════════ */
/* Khung chạm đúng .container của header (144.6rem) ở mọi mốc, chữ phóng theo zoom */
@media (min-width:1600px){ .alab{ zoom:1.1; }  .alab-wrap{ max-width:1315px; } }   /* 1446px thật */
@media (min-width:1800px){ .alab{ zoom:1.15; } .alab-wrap{ max-width:1257px; } }   /* 1446px thật */
@media (min-width:2000px){ .alab{ zoom:1.3; }  .alab-wrap{ max-width:1424px; } }   /* ≈1851px = 144.6rem ở gốc 12.8px */
@media (min-width:2500px){ .alab{ zoom:1.6; }  .alab-wrap{ max-width:1446px; } }   /* ≈2314px = 144.6rem ở gốc 16px */
@media (min-width:3200px){ .alab{ zoom:2.1; } }                                    /* 4K: ≈3037px, header theme không phóng thêm */
