/* ============================================================
   BUOC 4 — trang tinh, bai viet, danh sach, trang 404
   ============================================================ */

/* ---------- Bai viet / trang tinh ---------- */
.z-article{
  max-width:860px;margin:0 auto;
  background:var(--z-subtle);border-radius:var(--z-r-lg);
  box-shadow:inset 0 0 0 1px var(--z-line);
  overflow:hidden;
}
.z-article__head{padding:28px 32px 0}
.z-article__head h1{margin:0 0 6px;font-size:clamp(22px,3vw,30px);font-weight:800}
.z-article__meta{margin:0;font-size:13px;color:var(--z-muted)}
.z-article__body{padding:20px 32px 32px;color:#d4d6db;line-height:1.78}
.z-article__body h2{margin:1.6em 0 .5em;font-size:21px;color:#fff}
.z-article__body h3{margin:1.4em 0 .5em;font-size:17.5px;color:#fff}
.z-article__body a{color:var(--z-gold);text-decoration:underline;text-underline-offset:3px}
.z-article__body a:hover{color:var(--z-pink)}
.z-article__body img{border-radius:var(--z-r);margin:1.2em 0}
.z-article__body ul,.z-article__body ol{padding-left:1.3em}
.z-article__body li{margin-bottom:.4em}
.z-article__body blockquote{
  margin:1.4em 0;padding:14px 20px;
  background:rgba(255,255,255,.05);border-left:3px solid var(--z-pink);
  border-radius:0 var(--z-r) var(--z-r) 0;
}
.z-article__body table{width:100%;border-collapse:collapse;margin:1.3em 0;font-size:14.5px}
.z-article__body th,.z-article__body td{
  border:1px solid var(--z-line);padding:9px 12px;text-align:left;
}
.z-article__body th{background:rgba(255,255,255,.06);color:#fff;font-weight:600}
.z-article__body code{
  background:rgba(0,0,0,.3);padding:2px 6px;border-radius:4px;font-size:13.5px;
}

/* ---------- Danh sach bai viet ---------- */
.z-posts{display:grid;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr))}
.z-post{
  background:var(--z-subtle);border-radius:var(--z-r-lg);overflow:hidden;
  box-shadow:inset 0 0 0 1px var(--z-line);
  display:flex;flex-direction:column;transition:transform .18s;
}
.z-post:hover{transform:translateY(-4px)}
.z-post__thumb{display:block;aspect-ratio:16/9;overflow:hidden;background:var(--z-gamecard)}
.z-post__thumb img{width:100%;height:100%;object-fit:cover}
.z-post__body{padding:15px 17px 18px}
.z-post__date{font-size:12px;color:var(--z-muted)}
.z-post__body h2{margin:6px 0 7px;font-size:16px;line-height:1.35}
.z-post__body h2 a{color:#fff}
.z-post__body h2 a:hover{color:var(--z-pink)}
.z-post__body p{margin:0;font-size:13.5px;color:var(--z-muted)}

/* ---------- Phan trang ---------- */
.z-page .navigation,.z-page .pagination{margin-top:26px;text-align:center}
.z-page .page-numbers{
  display:inline-grid;place-items:center;min-width:36px;height:36px;padding:0 10px;margin:0 3px;
  background:var(--z-subtle);border-radius:var(--z-r);
  box-shadow:inset 0 0 0 1px var(--z-line);
  color:var(--z-muted);font-size:14px;font-weight:600;
}
.z-page .page-numbers:hover{background:var(--z-menu);color:#fff}
.z-page .page-numbers.current{background:var(--z-pink);color:#fff;box-shadow:none}

/* ---------- Trang 404 ---------- */
.z-404{text-align:center;padding:70px 0 90px}
.z-404__num{
  font-size:clamp(70px,13vw,140px);font-weight:800;line-height:1;margin-bottom:6px;
  background:linear-gradient(135deg,var(--z-secondary),var(--z-pink));
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.z-404 h1{font-size:clamp(20px,3vw,27px);margin-bottom:8px}
.z-404 p{color:var(--z-muted);margin-bottom:22px}

/* ---------- Man hinh nho ---------- */
@media (max-width:1000px){
  .z-posts{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:620px){
  .z-posts{grid-template-columns:1fr}
  .z-article__head{padding:22px 18px 0}
  .z-article__body{padding:16px 18px 24px}
  .z-article{border-radius:var(--z-r)}
}

/* ============================================================
   Thanh phan trong noi dung bai viet
   ============================================================ */

/* ---------- Luoi anh game ---------- */
.z-grid{
  display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr));
  margin:1.4em 0;padding:0;
}
.z-grid__it{margin:0;min-width:0}
.z-grid__it img{
  width:100%;aspect-ratio:1/1;object-fit:cover;
  border-radius:var(--z-r);background:var(--z-gamecard);
  box-shadow:inset 0 0 0 1px var(--z-line);
  transition:transform .25s;
}
.z-grid__it:hover img{transform:translateY(-3px) scale(1.02)}
.z-grid__it figcaption{
  margin-top:6px;font-size:12.5px;font-weight:600;color:#fff;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.z-grid__cap{
  grid-column:1/-1;margin-top:2px;
  font-size:12.5px;color:var(--z-muted);font-style:italic;
}

/* ---------- Anh don ---------- */
.z-fig{margin:1.4em 0}
.z-fig img{width:100%;max-width:420px;border-radius:var(--z-r)}
.z-fig figcaption{margin-top:7px;font-size:13px;color:var(--z-muted)}

/* ---------- Hoi dap ---------- */
.z-faq{
  margin:1.2em 0;border-radius:var(--z-r);overflow:hidden;
  box-shadow:inset 0 0 0 1px var(--z-line);
}
.z-faq__i{border-bottom:1px solid var(--z-line);background:rgba(255,255,255,.03)}
.z-faq__i:last-child{border-bottom:0}
.z-faq__i > summary{
  list-style:none;cursor:pointer;padding:14px 44px 14px 18px;position:relative;
  transition:background .15s;
}
.z-faq__i > summary::-webkit-details-marker{display:none}
.z-faq__i > summary:hover{background:rgba(255,255,255,.05)}
.z-faq__i > summary h3{
  display:inline;margin:0;font-size:15px;font-weight:600;color:#fff;line-height:1.45;
}
/* dau mui ten tu ve, khong can anh */
.z-faq__i > summary::after{
  content:"";position:absolute;right:18px;top:50%;
  width:8px;height:8px;margin-top:-6px;
  border-right:2px solid var(--z-muted);border-bottom:2px solid var(--z-muted);
  transform:rotate(45deg);transition:transform .2s;
}
.z-faq__i[open] > summary::after{transform:rotate(-135deg);margin-top:-2px}
.z-faq__i > div{padding:0 18px 16px}
.z-faq__i > div p{margin:0;color:#d4d6db;font-size:14.5px;line-height:1.75}
.z-faq__i > div p + p{margin-top:.7em}

/* ---------- Lien ket sang trang khac ---------- */
.z-rel{
  display:grid;gap:9px;grid-template-columns:repeat(2,minmax(0,1fr));
  list-style:none;margin:1.1em 0 0;padding:0;
}
.z-rel li{margin:0}
.z-rel a{
  display:flex;align-items:center;gap:9px;min-height:46px;padding:10px 15px;
  background:var(--z-subtle);border-radius:var(--z-r);
  box-shadow:inset 0 0 0 1px var(--z-line);
  color:#fff;font-size:14px;font-weight:600;text-decoration:none;
  transition:background .16s,transform .16s;
}
.z-rel a::before{
  content:"";flex:0 0 6px;width:6px;height:6px;border-radius:50%;background:var(--z-pink);
}
.z-rel a:hover{background:var(--z-menu);transform:translateX(2px);color:#fff}

/* ---------- Nut keu goi hanh dong ---------- */
.z-cta{
  display:flex;align-items:center;flex-wrap:wrap;gap:13px;
  margin:1.5em 0;padding:16px 20px;
  background:linear-gradient(135deg,rgba(255,0,153,.14),rgba(25,68,187,.2));
  border-radius:var(--z-r);box-shadow:inset 0 0 0 1px var(--z-line);
  font-size:15px;font-weight:600;color:#fff;
}
.z-cta .z-btn{flex:0 0 auto}

/* ---------- Hop ghi chu ---------- */
.z-article__body .z-note{
  background:rgba(255,0,153,.09);border-left:3px solid var(--z-pink);
}
.z-article__body .z-note p{margin:0;font-size:14.5px}

/* ---------- Bang trong bai ---------- */
.z-article__body .wp-block-table{margin:1.4em 0;overflow-x:auto}
.z-article__body .wp-block-table table{margin:0;min-width:480px}
.z-article__body table th:first-child,
.z-article__body table td:first-child{white-space:nowrap}

/* ---------- Man hinh nho ---------- */
@media (max-width:760px){
  .z-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
  .z-rel{grid-template-columns:1fr}
  .z-cta{padding:14px 16px;font-size:14px}
}
@media (max-width:460px){
  .z-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .z-grid__it figcaption{font-size:11.5px}
  .z-faq__i > summary{padding:12px 38px 12px 14px}
  .z-faq__i > summary h3{font-size:14px}
  .z-faq__i > div{padding:0 14px 14px}
}
