/* ===== Trang Kiến thức — Kim Tâm Cát ===== */

.kt-dau{background:var(--navy);color:var(--chu-navy);position:relative;
  padding:clamp(52px,6vw,96px) 0 clamp(60px,6.5vw,104px);overflow:hidden}
.kt-dau::before{content:"";position:absolute;inset:0;z-index:0;opacity:.09;pointer-events:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='60' viewBox='0 0 120 60'%3E%3Cg fill='none' stroke='%23F6E7B4' stroke-width='1.2'%3E%3Cpath d='M0 56 q 15 -34 30 0 q 15 -34 30 0 q 15 -34 30 0 q 15 -34 30 0'/%3E%3Cpath d='M-15 26 q 15 -34 30 0 q 15 -34 30 0 q 15 -34 30 0 q 15 -34 30 0 q 15 -34 30 0'/%3E%3C/g%3E%3C/svg%3E");
  background-size:120px 60px}
.kt-dau > *{position:relative;z-index:1}
.kt-dau .nhan{color:var(--vang-sang);font-family:var(--serif);font-style:italic;font-weight:700;
  font-size:clamp(17px,1.7vw,23px);margin:0 0 12px}
.kt-dau h1{font-family:var(--serif);font-weight:700;color:#fff;margin:0 0 16px;
  font-size:clamp(32px,4vw,56px);line-height:1.14;letter-spacing:.01em}
.kt-dau p.mo{color:var(--chu-navy-mo);font-size:clamp(16px,1.5vw,20px);line-height:1.62;max-width:62ch;margin:0}
.kt-duong{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:22px;font-size:15px;color:var(--chu-navy-mo)}
.kt-duong a{color:var(--chu-navy-mo);text-decoration:none}
.kt-duong a:hover{color:var(--vang-sang)}

/* ----- lưới bài ----- */
.kt-luoi{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));
  gap:clamp(22px,2.6vw,38px);margin-top:clamp(34px,4vw,56px)}
.kt-the{background:#fff;border:1px solid var(--vien);border-radius:16px;padding:clamp(9px,.9vw,13px);
  display:flex;flex-direction:column;
  text-decoration:none;color:inherit;transition:box-shadow .22s,transform .22s}
.kt-the:hover{box-shadow:0 14px 34px rgba(20,40,57,.13);transform:translateY(-3px)}
.kt-the .anh{position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--nen3);border-radius:10px}
.kt-the .anh img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s}
.kt-the:hover .anh img{transform:scale(1.045)}
.kt-the .anh .trong{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  color:var(--vang-dam);opacity:.5;font-family:var(--thuphap);font-size:30px}
.kt-the .noi{padding:clamp(15px,1.6vw,20px) clamp(10px,1vw,14px) clamp(11px,1.2vw,15px);
  display:flex;flex-direction:column;gap:9px;flex:1}
.kt-the .ngay{font-size:13.5px;letter-spacing:.11em;text-transform:uppercase;color:var(--son);font-weight:600}
.kt-the h2{font-family:var(--serif);font-weight:700;font-size:clamp(19px,1.55vw,23px);
  line-height:1.33;margin:0;color:var(--chu)}
.kt-the p{font-size:15.5px;line-height:1.6;color:var(--chu-mo);margin:0}
.kt-the .doc{margin-top:auto;padding-top:6px;font-size:14.5px;font-weight:600;color:var(--son);
  display:inline-flex;align-items:center;gap:7px}
.kt-the .doc::after{content:"";width:16px;height:1.5px;background:currentColor;transition:width .22s}
.kt-the:hover .doc::after{width:26px}

.kt-trong{text-align:center;padding:clamp(48px,6vw,92px) 20px;color:var(--chu-mo)}
.kt-trong .bieu{font-family:var(--thuphap);font-size:44px;color:var(--vang-dam);opacity:.55;margin-bottom:14px}
.kt-trong p{font-size:17.5px;line-height:1.7;margin:0 auto;max-width:46ch}

/* ----- phân trang ----- */
.kt-trang{display:flex;gap:9px;justify-content:center;flex-wrap:wrap;margin-top:clamp(36px,4vw,58px)}
.kt-trang .page-numbers{display:inline-flex;align-items:center;justify-content:center;
  min-width:44px;height:44px;padding:0 13px;border:1px solid var(--vien2);color:var(--chu);
  text-decoration:none;font-size:16px;font-weight:500}
.kt-trang .page-numbers:hover{border-color:var(--son);color:var(--son)}
.kt-trang .page-numbers.current{background:var(--son);border-color:var(--son);color:#fff}

/* ----- trang bài ----- */
.kt-bai{max-width:792px;margin:0 auto}
.kt-bai .bia{width:100%;aspect-ratio:16/9;object-fit:cover;display:block;
  border:1px solid var(--vien);margin-bottom:clamp(28px,3vw,44px)}
.kt-bai .noidung{font-size:clamp(17px,1.35vw,19.5px);line-height:1.78;color:var(--chu)}
.kt-bai .noidung > *{max-width:100%}
.kt-bai .noidung p{margin:0 0 1.15em}
.kt-bai .noidung h2{font-family:var(--serif);font-weight:700;font-size:clamp(23px,2.2vw,31px);
  line-height:1.3;margin:1.9em 0 .6em;color:var(--chu);position:relative;padding-top:.5em}
.kt-bai .noidung h2::before{content:"";position:absolute;top:0;left:0;width:48px;height:2px;background:var(--son)}
.kt-bai .noidung h3{font-family:var(--serif);font-weight:700;font-size:clamp(20px,1.75vw,25px);
  line-height:1.35;margin:1.6em 0 .5em;color:var(--chu)}
.kt-bai .noidung h4{font-family:var(--sans);font-weight:700;font-size:18px;margin:1.5em 0 .45em}
.kt-bai .noidung ul,.kt-bai .noidung ol{margin:0 0 1.2em;padding-left:1.35em}
.kt-bai .noidung li{margin-bottom:.5em}
.kt-bai .noidung ul li::marker{color:var(--son)}
.kt-bai .noidung ol li::marker{color:var(--son);font-weight:700}
.kt-bai .noidung a{color:var(--son);text-underline-offset:3px}
.kt-bai .noidung strong,.kt-bai .noidung b{color:var(--son);font-weight:600}
.kt-bai .noidung img{height:auto;border:1px solid var(--vien);margin:.6em 0}
.kt-bai .noidung figure{margin:1.6em 0}
.kt-bai .noidung figcaption{font-size:14.5px;color:var(--chu-mo);text-align:center;margin-top:9px;font-style:italic}
.kt-bai .noidung blockquote{margin:1.7em 0;padding:4px 0 4px 24px;border-left:3px solid var(--vang);
  font-family:var(--serif);font-style:italic;font-size:1.08em;line-height:1.62;color:var(--chu)}
.kt-bai .noidung blockquote p:last-child{margin:0}
.kt-bai .noidung hr{border:0;height:1px;background:var(--vien);margin:2.2em 0}
.kt-bai .noidung table{width:100%;border-collapse:collapse;margin:1.5em 0;font-size:.94em}
.kt-bai .noidung th,.kt-bai .noidung td{border:1px solid var(--vien);padding:11px 14px;text-align:left}
.kt-bai .noidung th{background:var(--nen3);font-weight:600}

.kt-chandiem{margin-top:clamp(40px,4.4vw,66px);padding-top:clamp(26px,3vw,40px);border-top:1px solid var(--vien);
  display:flex;gap:16px;justify-content:space-between;align-items:center;flex-wrap:wrap}
.kt-chandiem .ve{color:var(--son);text-decoration:none;font-weight:600;font-size:16px}
.kt-chiase{display:flex;gap:10px;align-items:center;font-size:15px;color:var(--chu-mo)}
.kt-chiase a{width:38px;height:38px;border:1px solid var(--vien2);display:inline-flex;
  align-items:center;justify-content:center;color:var(--chu-mo);text-decoration:none}
.kt-chiase a:hover{border-color:var(--son);color:var(--son)}
.kt-chiase svg{width:17px;height:17px;fill:currentColor}

.kt-lienquan{margin-top:clamp(48px,5vw,80px)}
.kt-lienquan h2{font-family:var(--serif);font-weight:700;font-size:clamp(22px,2vw,29px);margin:0 0 clamp(20px,2.4vw,32px)}

@media(max-width:640px){
  .kt-luoi{grid-template-columns:1fr}
  .kt-bai .noidung{font-size:17px}
}

/* ----- khung mục lục tự động ----- */
.kt-bai .noidung #ez-toc-container{background:var(--nen2);border:1px solid var(--vien);
  padding:clamp(18px,2vw,26px) clamp(20px,2.2vw,30px);margin:0 0 1.9em;box-shadow:none}
.kt-bai .noidung #ez-toc-container .ez-toc-title-container{margin-bottom:10px}
.kt-bai .noidung #ez-toc-container .ez-toc-title{font-family:var(--serif);font-weight:700;
  font-size:19px;color:var(--chu);letter-spacing:0}
.kt-bai .noidung #ez-toc-container ul{margin:0;padding-left:1.15em}
.kt-bai .noidung #ez-toc-container li{margin-bottom:.35em}
.kt-bai .noidung #ez-toc-container a{color:var(--chu);text-decoration:none;
  font-size:16.5px;line-height:1.55;font-weight:400}
.kt-bai .noidung #ez-toc-container a:hover{color:var(--son)}
.kt-bai .noidung #ez-toc-container ul li::marker{color:var(--vang-dam)}


/* ----- trang tổng hợp: đầu mỗi khoang + nút xem tất cả ----- */
.kt-khoang-dau{margin-bottom:clamp(22px,2.4vw,34px)}
.kt-khoang-dau h2{font-family:var(--serif);font-weight:700;font-size:clamp(24px,2.4vw,34px);
  line-height:1.25;margin:0 0 9px;color:var(--chu)}
.kt-khoang-dau p{font-size:clamp(15.5px,1.3vw,17.5px);line-height:1.65;color:var(--chu-mo);margin:0;max-width:66ch}
.kt-xem{margin-top:clamp(24px,2.6vw,38px)}
.kt-xem .nut{display:inline-flex}


/* ----- câu dẫn ngay dưới tiêu đề bài ----- */
.kt-bai .noidung > .kt-phu:first-child{font-family:var(--serif);font-style:italic;
  font-size:clamp(18px,1.6vw,22px);line-height:1.55;color:var(--chu-mo);
  margin:0 0 1.5em;padding:0 0 .9em;border-bottom:1px solid var(--vien)}
