/* =====================================================================
   MTTQ Cổng thông tin — lớp giao diện xanh (child theme)
   Nạp SAU theme-2026.css. Đổi bảng màu bằng cách gán lại biến cũ
   (--red-* → dải xanh, --ivory → nền xanh nhạt) nên mọi trang trong
   của theme cha tự chuyển tông, rồi thay header / footer / trang chủ.
   ===================================================================== */

:root{
  /* Dải xanh (giữ tên biến cũ để CSS của theme cha ăn theo) */
  --red-900:#071E45; --red-800:#0B2A5B; --red-700:#0F4C9C; --red-600:#1766C2; --red-500:#2E86DE;
  /* Vàng sao: chỉ dùng làm điểm nhấn nhỏ */
  --gold-600:#B7790A; --gold-500:#F2B53C; --gold-400:#F7CF7A; --gold-300:#FBE6B5;
  --ivory:#F2F7FD; --ivory-2:#E3EEFA; --paper:#FFFFFF;
  --ink:#12233F; --ink-soft:#52637D; --line:rgba(15,76,156,.15);
  --shadow-sm:0 2px 10px rgba(11,42,91,.07);
  --shadow-md:0 14px 34px -16px rgba(11,42,91,.38);
  --shadow-lg:0 40px 80px -30px rgba(11,42,91,.5);
  --wrap:1200px;
  /* Bổ sung của cổng thông tin */
  --pt-red:#C9241B;      /* đỏ biểu trưng: chỉ cho phản ánh / đường dây nóng */
  --pt-sky:#E5F0FB;
  --pt-sans:'Be Vietnam Pro',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --pt-serif:'Source Serif 4','Noto Serif',Georgia,serif;
}

/* ---------- Nền tảng ---------- */
body.mttq2026{font-family:var(--pt-sans);background:var(--ivory);color:var(--ink)}
.mttq2026 h1,.mttq2026 h2,.mttq2026 h3,.mttq2026 .serif{font-family:var(--pt-serif)}
.mttq2026 :where(a,button,input,select,summary):focus-visible{outline:3px solid var(--gold-500);outline-offset:2px;border-radius:4px}
.pt-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.pt-skip{position:absolute;left:12px;top:-60px;z-index:9999;background:#fff;color:var(--red-700);padding:10px 16px;border-radius:8px;font-weight:700;box-shadow:var(--shadow-md);transition:top .2s}
.pt-skip:focus{top:12px}
.pt-main-anchor:focus{outline:none}
header.pt-banner{display:block!important}
nav.m26-head{display:block!important}

/* ---------- Banner ---------- */
.pt-banner{position:relative;color:#fff;overflow:hidden;
  background:
    radial-gradient(760px 220px at 96% -20%,rgba(46,134,222,.6),transparent 62%),
    linear-gradient(180deg,#0B2A5B 0%,#0F4C9C 100%);
  border-bottom:3px solid var(--gold-500)}
.pt-banner::after{content:"";position:absolute;right:-30px;bottom:-34px;width:360px;height:220px;opacity:.1;pointer-events:none;
  background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 200' fill='none' stroke='white' stroke-width='2'><g transform='translate(150,196)'><path d='M0,0 C-26,-46 -15,-116 0,-148 C15,-116 26,-46 0,0Z'/><path d='M0,0 C-26,-46 -15,-116 0,-148 C15,-116 26,-46 0,0Z' transform='rotate(-25)'/><path d='M0,0 C-26,-46 -15,-116 0,-148 C15,-116 26,-46 0,0Z' transform='rotate(25)'/><path d='M0,0 C-26,-46 -15,-116 0,-148 C15,-116 26,-46 0,0Z' transform='rotate(-50) scale(.9)'/><path d='M0,0 C-26,-46 -15,-116 0,-148 C15,-116 26,-46 0,0Z' transform='rotate(50) scale(.9)'/></g></svg>") no-repeat right bottom/contain}
.pt-banner-in{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:18px;padding-bottom:18px}
.pt-brand{display:flex;align-items:center;gap:18px;min-width:0}
.pt-emblem{flex:none;width:86px;height:86px;border-radius:50%;background:#fff;padding:5px;border:3px solid var(--gold-500);box-shadow:0 0 0 6px rgba(242,181,60,.2),0 10px 24px -8px rgba(0,0,0,.45)}
.pt-emblem img{width:100%;height:100%;object-fit:contain;border-radius:50%}
.pt-title{display:flex;flex-direction:column;gap:3px;min-width:0}
.pt-kicker{font-size:.9rem;font-weight:600;color:var(--gold-400);letter-spacing:.02em}
.pt-name{font-family:var(--pt-serif);font-weight:800;font-size:clamp(1.15rem,2.5vw,1.95rem);line-height:1.18;text-transform:uppercase;letter-spacing:.01em;text-wrap:balance}
.pt-name-sub{display:block;color:var(--gold-300)}
.pt-aside{flex:none;display:flex;flex-direction:column;align-items:flex-end;gap:9px;font-size:.85rem}
.pt-date{color:rgba(255,255,255,.82);font-weight:500}
.pt-hotline{display:inline-flex;align-items:center;gap:9px;background:var(--pt-red);color:#fff;padding:9px 16px;border-radius:999px;font-size:.84rem;font-weight:600;box-shadow:0 8px 18px -8px rgba(0,0,0,.5);transition:filter .2s}
.pt-hotline:hover{filter:brightness(1.1)}
.pt-hotline svg{width:17px;height:17px}
.pt-hotline b{font-size:1rem;font-weight:800;margin-left:4px;letter-spacing:.02em}
.pt-soc{display:flex;gap:8px}
.pt-soc a{min-width:30px;height:30px;padding:0 8px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.35);border-radius:8px;color:#fff;transition:background .2s,color .2s}
.pt-soc a:hover{background:#fff;color:var(--red-700)}
.pt-soc b{font-size:.7rem;font-weight:800}

/* ---------- Thanh menu (sticky) ---------- */
.m26-head.pt-nav{position:sticky;top:0;z-index:55;background:linear-gradient(180deg,#1766C2,#0F4C9C);backdrop-filter:none;box-shadow:0 6px 18px -10px rgba(7,30,69,.6)}
.pt-nav .head-inner{height:auto;min-height:52px;gap:6px}
.pt-nav .m26-nav{margin-left:0;gap:0;flex:1 1 auto;min-width:0}
.pt-nav .m26-nav>li>a{color:#fff;padding:15px 14px;border-radius:0;font-size:.9rem;font-weight:600;transition:background .2s}
.pt-nav .m26-nav>li>a:hover{background:rgba(255,255,255,.14)}
.pt-nav .m26-nav>li>a::after{left:0;right:0;bottom:0;height:3px;background:var(--gold-500);border-radius:0}
.pt-nav .m26-nav>li.current-menu-item>a,.pt-nav .m26-nav>li.current-menu-ancestor>a{background:rgba(255,255,255,.16)}
.pt-nav .m26-nav>li.menu-item-has-children>a{padding-right:26px;position:relative}
.pt-nav .m26-nav>li.menu-item-has-children>a::before{content:"";position:absolute;right:11px;top:50%;width:6px;height:6px;margin-top:-5px;border:solid currentColor;border-width:0 2px 2px 0;transform:rotate(45deg);opacity:.85}
.pt-nav .m26-nav li ul{top:100%;left:0;border-radius:0 0 10px 10px;border:1px solid var(--line);border-top:3px solid var(--gold-500);padding:6px;min-width:260px;box-shadow:var(--shadow-md)}
.pt-nav .m26-nav li ul a{border-radius:6px;font-size:.88rem;color:var(--ink);padding:10px 12px}
.pt-nav .m26-nav li ul a:hover{background:var(--pt-sky);color:var(--red-700)}
.pt-nav .cta{background:var(--pt-red);border-radius:6px;padding:9px 16px;margin-left:4px;font-size:.86rem;box-shadow:none}
.pt-nav .cta:hover{box-shadow:0 8px 18px -8px rgba(0,0,0,.6)}
.pt-nav .m26-more-btn{color:#fff}

/* Ô tìm kiếm luôn hiện trên thanh menu (giống cổng thông tin tham chiếu) */
.pt-nav .m26-search{position:static;display:flex;align-items:center;margin-left:auto}
.pt-nav .m26-search-btn{display:none}
.pt-nav .m26-search-form{position:static;display:flex!important;align-items:center;width:210px;opacity:1!important;visibility:visible!important;transform:none!important;pointer-events:auto!important;background:#fff;border:0;border-radius:6px;box-shadow:none;padding:0;margin:0;height:36px;overflow:hidden}
.pt-nav .m26-search-form input{flex:1;min-width:0;border:0;background:transparent;padding:0 10px;font:500 .85rem var(--pt-sans);color:var(--ink);height:36px;outline:none}
.pt-nav .m26-search-form input:focus-visible{outline:none}
.pt-nav .m26-search-form:focus-within{box-shadow:0 0 0 3px var(--gold-500)}
.pt-nav .m26-search-go{width:38px;height:36px;border:0;background:var(--gold-500);color:var(--red-800);display:grid;place-items:center;cursor:pointer}
.pt-nav .m26-search-go svg{width:17px;height:17px}
.pt-nav .m26-burger{display:none;margin-left:0;background:transparent;border-color:rgba(255,255,255,.4);color:#fff;border-radius:8px;width:42px;height:38px}

/* Khoảng 1001–1220px: vẫn hiện menu ngang (JS tự dồn mục thừa vào "…") */
@media(min-width:1001px) and (max-width:1220px){
  .pt-nav .m26-nav{display:flex}
  .pt-nav .cta{display:inline-block}
  .pt-nav .m26-burger{display:none}
}
/* Nút "…" (mục thừa) luôn dùng được trên thanh menu ngang: CSS cha ẩn nó dưới 1220px */
.pt-nav .m26-more{display:block}
.pt-nav .m26-more[hidden]{display:none}
.pt-nav .m26-more-btn:hover{background:rgba(255,255,255,.16)}

/* Menu ngang: phần thừa bị cắt ngay (trước khi JS dồn vào nút "…") nên không bao giờ chồng lên ô tìm kiếm; thả xuống vẫn hiện bình thường */
.pt-nav .m26-nav{overflow-x:clip;overflow-y:visible}
/* Màn nhỏ: bỏ menu ngang, giữ ô tìm kiếm + nút mở menu */
@media(max-width:1000px){
  .pt-nav .m26-nav,.pt-nav .cta,.pt-nav .m26-more{display:none!important}
  .pt-nav .head-inner{padding-top:8px;padding-bottom:8px;gap:8px}
  .pt-nav .m26-search{flex:1;margin-left:0}
  .pt-nav .m26-search-form{width:100%}
  .pt-nav .m26-burger{display:grid}
}
@media(max-width:820px){
  .pt-nav .m26-burger{display:none!important}   /* đã có thanh điều hướng dưới */
}

@media(max-width:900px){
  .pt-banner-in{padding-top:14px;padding-bottom:14px}
  .pt-aside{display:none}
  .pt-emblem{width:62px;height:62px;border-width:2px;box-shadow:0 0 0 4px rgba(242,181,60,.2)}
  .pt-brand{gap:12px}
  .pt-kicker{font-size:.74rem}
  .pt-banner::after{width:220px;height:140px}
}

/* ---------- Trang chủ: bố cục chung ---------- */
.pt-body{padding-bottom:12px}
.pt-body .wrap,.pt-foot .wrap,.pt-banner .wrap,.pt-nav .wrap{max-width:var(--wrap);margin:0 auto;padding-left:20px;padding-right:20px}
.pt-top{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:22px;padding-top:22px;align-items:stretch}

/* ---------- Slider tin nổi bật ---------- */
.pt-slider{position:relative;border-radius:10px;overflow:hidden;background:var(--red-900);aspect-ratio:16/9;box-shadow:var(--shadow-md)}
.pt-slides{position:absolute;inset:0}
.pt-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .55s ease,visibility 0s .55s}
.pt-slide.is-active{opacity:1;visibility:visible;transition:opacity .55s ease}
.pt-slide a{position:absolute;inset:0;display:block;color:#fff}
.pt-slide img{width:100%;height:100%;object-fit:cover}
.pt-cap{position:absolute;left:0;right:0;bottom:0;display:flex;flex-direction:column;gap:8px;padding:56px 70px 40px 26px;background:linear-gradient(180deg,transparent,rgba(7,30,69,.78) 40%,rgba(7,30,69,.96))}
.pt-chip{align-self:flex-start;background:var(--gold-500);color:var(--red-900);font-size:.78rem;font-weight:700;padding:3px 10px;border-radius:4px}
.pt-ttl{font-family:var(--pt-serif);font-weight:700;font-size:clamp(1.1rem,2.3vw,1.75rem);line-height:1.28;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-wrap:balance}
.pt-slide a:hover .pt-ttl{text-decoration:underline;text-underline-offset:4px}
.pt-meta{font-size:.84rem;color:rgba(255,255,255,.8)}
.pt-arrow{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border:0;border-radius:50%;background:rgba(255,255,255,.88);color:var(--red-800);display:grid;place-items:center;cursor:pointer;box-shadow:0 6px 16px -6px rgba(0,0,0,.5);transition:background .2s}
.pt-arrow:hover{background:#fff}
.pt-arrow svg{width:22px;height:22px}
.pt-arrow.prev{left:12px}.pt-arrow.next{right:12px}
.pt-dots{position:absolute;right:20px;bottom:14px;display:flex;gap:8px}
.pt-dot{width:11px;height:11px;border-radius:50%;border:2px solid rgba(255,255,255,.9);background:transparent;padding:0;cursor:pointer}
.pt-dot.is-active{background:var(--gold-500);border-color:var(--gold-500)}
.pt-dot::before{content:"";position:absolute;width:24px;height:24px;margin:-8px 0 0 -8px}  /* vùng chạm lớn hơn */
.pt-dot{position:relative}

/* ---------- Tin mới nhất ---------- */
.pt-latest{position:relative;background:#fff;border:1px solid var(--line);border-radius:10px;min-height:320px;box-shadow:var(--shadow-sm)}
.pt-latest-in{position:absolute;inset:0;display:flex;flex-direction:column;padding:14px 14px 6px}
.pt-latest-h{align-self:center;background:var(--red-700);color:#fff;font:700 .95rem var(--pt-sans)!important;padding:7px 22px;border-radius:6px;margin:0 0 6px}
.pt-latest-list{list-style:none;margin:0;padding:0 6px 0 2px;overflow-y:auto;flex:1;min-height:0;scrollbar-width:thin;scrollbar-color:#9db9de transparent}
.pt-latest-list li{padding:11px 4px;border-bottom:1px solid var(--line)}
.pt-latest-list li:last-child{border-bottom:0}
.pt-latest-list a{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-weight:600;font-size:.9rem;line-height:1.42;color:var(--ink)}
.pt-latest-list a:hover{color:var(--red-600)}
.pt-latest-list time{display:block;margin-top:4px;font-size:.78rem;color:var(--ink-soft)}

@media(max-width:1000px){
  .pt-top{grid-template-columns:1fr;gap:16px}
  .pt-latest{min-height:0}
  .pt-latest-in{position:static}
  .pt-latest-list{max-height:380px}
}
@media(max-width:620px){
  .pt-top{padding-top:14px}
  .pt-slider{aspect-ratio:4/3;border-radius:8px}
  .pt-cap{padding:40px 16px 34px}
  .pt-arrow{width:38px;height:38px}
  .pt-dots{right:14px;bottom:12px}
}

/* ---------- Lối tắt dịch vụ ---------- */
.pt-svc{list-style:none;margin:22px 0 0;padding:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.pt-svc a{height:100%;display:flex;flex-direction:column;align-items:center;gap:3px;text-align:center;padding:16px 8px 14px;background:#fff;border:1px solid var(--line);border-radius:10px;transition:border-color .2s,background .2s}
.pt-svc a:hover{border-color:var(--red-600);background:var(--pt-sky)}
.pt-svc .ic{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:var(--pt-sky);color:var(--red-700);margin-bottom:6px}
.pt-svc .ic svg{width:24px;height:24px}
.pt-svc b{font-size:.92rem;font-weight:700;line-height:1.3}
.pt-svc small{font-size:.76rem;color:var(--ink-soft);line-height:1.3}
.pt-svc a.is-urgent{background:#FFF3F1;border-color:#F3C4BF}
.pt-svc a.is-urgent .ic{background:var(--pt-red);color:#fff}
.pt-svc a.is-urgent:hover{background:#FFE7E3;border-color:var(--pt-red)}
@media(max-width:900px){.pt-svc{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:420px){.pt-svc{gap:8px}.pt-svc a{padding:12px 4px}.pt-svc small{display:none}.pt-svc b{font-size:.84rem}}

/* ---------- Khối chuyên mục + thanh bên ---------- */
.pt-cols{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:28px;padding-top:30px;align-items:start}
@media(max-width:1000px){.pt-cols{grid-template-columns:1fr}}
.pt-feed{display:flex;flex-direction:column;gap:30px;min-width:0}

.pt-block-h{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;border-bottom:2px solid var(--red-700);margin-bottom:16px}
.pt-block-h h2{margin:0;font:700 1rem var(--pt-sans)!important;background:var(--red-700);color:#fff;padding:9px 30px 9px 16px;clip-path:polygon(0 0,100% 0,calc(100% - 14px) 100%,0 100%)}
.pt-block-h h2 a{color:#fff}
.pt-block-h h2 a:hover{text-decoration:underline;text-underline-offset:3px}
.pt-block-h .more{font-size:.86rem;font-weight:600;color:var(--red-600);padding-bottom:7px}
.pt-block-h .more:hover{text-decoration:underline}
.pt-block-b{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:22px}
@media(max-width:700px){.pt-block-b{grid-template-columns:1fr;gap:14px}}

.pt-lead .ph{display:block;aspect-ratio:16/10;overflow:hidden;border-radius:8px;background:var(--ivory-2)}
.pt-lead .ph img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.pt-lead:hover .ph img{transform:scale(1.03)}
.pt-lead h3{font:700 1.18rem/1.38 var(--pt-serif)!important;margin:12px 0 6px}
.pt-lead h3 a:hover{color:var(--red-600)}
.pt-lead time,.pt-row time{font-size:.8rem;color:var(--ink-soft)}
.pt-lead p{margin:8px 0 0;color:var(--ink-soft);font-size:.92rem;line-height:1.6;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.pt-rows{display:flex;flex-direction:column}
.pt-row{display:grid;grid-template-columns:104px minmax(0,1fr);gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}
.pt-row:first-child{padding-top:0}
.pt-row:last-child{border-bottom:0}
.pt-row .th{display:block;aspect-ratio:4/3;overflow:hidden;border-radius:6px;background:var(--ivory-2)}
.pt-row .th img{width:100%;height:100%;object-fit:cover}
.pt-row h4{margin:0 0 4px;font:600 .94rem/1.42 var(--pt-sans);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.pt-row h4 a:hover{color:var(--red-600)}

/* ---------- Thanh bên ---------- */
.pt-side{display:flex;flex-direction:column;gap:20px;min-width:0}
.pt-side .banner{display:block;border-radius:8px;overflow:hidden;border:1px solid var(--line)}
.pt-side .banner img{width:100%;height:auto;display:block}
.pt-side .m26-widget{background:#fff;border:1px solid var(--line);border-radius:10px;padding:0 0 12px;box-shadow:none;overflow:hidden}
.pt-side .m26-widget>h3{margin:0 0 6px;font:700 .98rem var(--pt-sans)!important;background:var(--red-700);color:#fff;padding:10px 16px;border-radius:0;border:0}
.pt-side .m26-widget>h3::before,.pt-side .m26-widget>h3::after{display:none}
.pt-side .m26-widget .m26-doclist,.pt-side .pt-bac{padding:0 14px}
.pt-side .m26-widget select{margin:6px 14px 2px;width:calc(100% - 28px);padding:10px 12px;border:1px solid var(--line);border-radius:8px;font:500 .9rem var(--pt-sans);background:#fff;color:var(--ink)}
.pt-side .m26-widget iframe{display:block;width:100%;border:0;padding:0 8px}
.pt-side .m26-doclist a{display:flex;gap:10px;align-items:flex-start;padding:10px 0;border-bottom:1px solid var(--line);font-size:.9rem;font-weight:600;line-height:1.42}
.pt-side .m26-doclist a:last-child{border-bottom:0}
.pt-side .m26-doclist a svg{flex:none;width:18px;height:18px;margin-top:2px;color:var(--red-600)}
.pt-side .m26-doclist a:hover{color:var(--red-600)}
.pt-widget-more{display:block;margin:6px 14px 0;font-size:.86rem;font-weight:600;color:var(--red-600);text-align:right}
.pt-widget-more:hover{text-decoration:underline}
.pt-empty{margin:0;padding:6px 0;color:var(--ink-soft);font-size:.9rem}

.pt-call{background:linear-gradient(160deg,#0B2A5B,#1766C2);color:#fff;border-radius:10px;padding:20px 18px;border-bottom:4px solid var(--gold-500)}
.pt-call h2{margin:0 0 6px;font:700 1.12rem/1.3 var(--pt-serif)!important}
.pt-call p{margin:0 0 14px;font-size:.9rem;line-height:1.55;color:rgba(255,255,255,.88)}
.pt-call-btn{display:block;text-align:center;background:var(--pt-red);color:#fff;font-weight:700;padding:12px 14px;border-radius:8px;transition:filter .2s}
.pt-call-btn:hover{filter:brightness(1.1)}
.pt-call-tel{display:block;text-align:center;margin-top:10px;font-size:.88rem;color:#fff}
.pt-call-tel b{font-size:1.02rem}

.pt-bac a{display:flex;gap:10px;align-items:flex-start;padding:10px 0;border-bottom:1px solid var(--line);font-size:.86rem;font-weight:600;line-height:1.42}
.pt-bac a:last-child{border-bottom:0}
.pt-bac svg{flex:none;width:18px;height:18px;margin-top:1px;color:var(--gold-600)}
.pt-bac small{display:block;margin-top:3px;font-weight:500;font-size:.76rem;color:var(--ink-soft)}
.pt-bac a:hover{color:var(--red-600)}


.pt-stats{background:#fff;border:1px solid var(--line);border-radius:10px;padding:14px 16px;font-size:.9rem;line-height:1.7;color:var(--ink)}
.pt-stats :is(h2,h3,h4){margin:0 0 6px;font:700 .98rem var(--pt-sans)!important;color:var(--red-700)}

/* ---------- Công trình số ---------- */
.pt-dig{margin-top:34px;padding:28px 0 34px;background:linear-gradient(180deg,#E3EEFA,#F2F7FD);border-top:1px solid var(--line)}
.pt-block-h--light{margin-bottom:14px}
.pt-dig-list{list-style:none;margin:0;padding:4px 0 14px;display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:#9db9de transparent}
.pt-dig-list li{flex:0 0 262px;scroll-snap-align:start;background:#fff;border:1px solid var(--line);border-top:3px solid var(--red-600);border-radius:8px;padding:14px 16px 16px}
.pt-dig-list time{display:inline-block;font-size:.78rem;font-weight:700;color:var(--red-700);background:var(--pt-sky);padding:2px 9px;border-radius:4px}
.pt-dig-list h3{font:700 1rem/1.35 var(--pt-sans)!important;margin:10px 0 6px}
.pt-dig-list p{margin:0;font-size:.88rem;line-height:1.55;color:var(--ink-soft)}
.pt-dig-list li.is-next{border-style:dashed;border-top-style:dashed;background:transparent}

/* ---------- Footer ---------- */
footer.m26-foot.pt-foot{display:block!important;background:linear-gradient(180deg,#0B2A5B,#071E45);color:rgba(255,255,255,.88);padding:38px 0 0;margin-top:0;border-top:4px solid var(--gold-500)}
.pt-foot-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:36px;padding-bottom:30px}
.pt-foot-brand{display:flex;gap:14px;align-items:center;margin-bottom:16px}
.pt-foot-brand img{width:64px;height:64px;border-radius:50%;background:#fff;padding:4px;flex:none}
.pt-foot-brand strong{display:block;font:800 1.02rem/1.3 var(--pt-serif);color:#fff;text-transform:uppercase}
.pt-foot-brand span{display:block;font-size:.88rem;color:var(--gold-300);margin-top:3px}
.pt-foot-info{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;font-size:.92rem}
.pt-foot-info li{display:flex;gap:10px;align-items:flex-start;line-height:1.5}
.pt-foot-info svg{flex:none;width:17px;height:17px;margin-top:3px;color:var(--gold-400)}
.pt-foot-info a:hover,.pt-foot-col a:hover,.pt-foot-soc a:hover{color:var(--gold-400);text-decoration:underline;text-underline-offset:3px}
.pt-foot-col h2{margin:0 0 12px;font:700 1rem var(--pt-sans)!important;color:#fff}
.pt-foot-col a{display:block;padding:6px 0;font-size:.92rem;color:rgba(255,255,255,.85)}
.pt-foot-bottom{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:16px 0 18px;border-top:1px solid rgba(255,255,255,.14);font-size:.82rem;color:rgba(255,255,255,.66)}
.pt-foot-soc{display:flex;gap:16px}
.pt-foot-soc a{color:rgba(255,255,255,.85);font-weight:600}
@media(max-width:860px){.pt-foot-grid{grid-template-columns:1fr 1fr;gap:26px}.pt-foot-org{grid-column:1/-1}}
@media(max-width:560px){.pt-foot-grid{grid-template-columns:1fr}.pt-body+.pt-foot{padding-bottom:84px}}
/* chừa chỗ cho thanh điều hướng dưới trên điện thoại */
@media(max-width:820px){footer.m26-foot.pt-foot{padding-bottom:78px}}

/* ---------- Trang trong: tinh chỉnh nhẹ ---------- */
.m26-article{font-size:1.04rem;line-height:1.75}

@media(prefers-reduced-motion:reduce){
  .pt-slide,.pt-slide.is-active{transition:none}
  .pt-lead .ph img{transition:none}
}


/* ---------- CSS tùy chỉnh cũ (Customizer của theme mttq-2026), chuyển nguyên vẹn sang đây ---------- */
/* m26-responsive-media — fix tràn ngang trên mobile (17/8/2026) */

/* KEY: cho phép cột grid nội dung co lại trên mobile.
   .m26-layout là grid; grid item .m26-main mặc định min-width:auto nên nở
   theo min-content = bề rộng ảnh (>1200px) → tràn, bị .m26-body cắt còn màn hình.
   min-width:0 để track 1fr co về đúng bề rộng khả dụng. */
.m26-layout{min-width:0}
.m26-layout>*{min-width:0}
.m26-main,
.m26-article{min-width:0}

/* Giới hạn ảnh/media trong bài theo bề rộng cột */
.m26-article img,
.m26-article video{max-width:100%!important;width:auto!important;height:auto!important}
.m26-article figure,
.m26-article .wp-block-image,
.m26-article .wp-block-embed,
.m26-article .wp-block-embed__wrapper{max-width:100%!important}
.m26-article .wp-block-image>a,
.m26-article figure>a{display:inline-block;max-width:100%}
.m26-article iframe{max-width:100%!important}

/* Link dài (URL) tự xuống dòng thay vì đẩy rộng trang */
.m26-article a{overflow-wrap:break-word}
.m26-article,
.m26-article p,
.m26-article li,
.m26-article h1,
.m26-article h2,
.m26-article h3{overflow-wrap:break-word}

/* Bảng / code rộng: cuộn ngang trong khung, không phá layout */
.m26-article table{display:block;max-width:100%;overflow-x:auto}
.m26-article pre{max-width:100%;overflow-x:auto;white-space:pre-wrap;word-break:break-word}

/* Chặn iOS/Android tự phóng to chữ khi có phần tử rộng */
html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}

/* =====================================================================
   KHOẢNG CÁCH — sửa lỗi độ ưu tiên CSS
   Theme cha có `.m26 .wrap{padding:0 26px}` và `.mttq2026 ul{margin:0;padding:0}` (độ ưu tiên cao hơn
   class đơn của mình) nên ghi đè hết padding dọc của các khối .wrap và margin/padding của danh sách.
   Các quy tắc dưới đây đặt lại nhịp khoảng cách chung cho cả trang (thang 4/8/12/16/24/32).
   ===================================================================== */
.mttq-portal{--gut:20px;--sp-1:8px;--sp-2:16px;--sp-3:24px;--sp-4:32px;--sp-5:48px}
.mttq-portal .pt-banner-in{padding:22px var(--gut)}
.mttq-portal .pt-top{padding:var(--sp-3) var(--gut) 0}
.mttq-portal .pt-body>section.wrap{padding-left:var(--gut);padding-right:var(--gut)}
.mttq-portal .pt-cols{padding:var(--sp-4) var(--gut) 0}
.mttq-portal .pt-svc{margin:var(--sp-3) 0 0;padding:0}
.mttq-portal .pt-latest-list{padding:0 8px 0 4px;margin:0}
.mttq-portal .pt-latest-in{padding:16px 16px 8px}
.mttq-portal .pt-dig{margin-top:var(--sp-5);padding:var(--sp-4) 0 var(--sp-5)}
.mttq-portal .pt-dig-list{padding:4px 2px 16px;margin:0}
.mttq-portal .pt-foot-info,.mttq-portal .pt-bac,.mttq-portal .m26-doclist{margin:0}
.mttq-portal .pt-foot .wrap{padding-left:var(--gut);padding-right:var(--gut)}
.mttq-portal footer.pt-foot{padding-top:var(--sp-5)}
.mttq-portal .pt-foot-grid{padding-bottom:var(--sp-4)}
.mttq-portal .pt-foot-bottom{padding:var(--sp-2) 0 var(--sp-3)}
.mttq-portal .pt-block-h{margin-bottom:var(--sp-2)}
.mttq-portal .pt-block-b{gap:var(--sp-3)}
.mttq-portal .pt-feed{gap:var(--sp-5)}
.mttq-portal .pt-side{gap:var(--sp-3)}
.mttq-portal .pt-call{padding:var(--sp-3) 20px}
.mttq-portal .pt-side .m26-widget .m26-doclist,.mttq-portal .pt-side .pt-bac{padding:0 16px}
.mttq-portal .pt-side .m26-widget{padding-bottom:var(--sp-2)}
.mttq-portal .pt-widget-more{margin:var(--sp-1) 16px 0}
.mttq-portal .pt-row{padding:var(--sp-2) 0}
.mttq-portal .pt-lead h3{margin:var(--sp-2) 0 var(--sp-1)}
.mttq-portal .pt-lead p{margin:var(--sp-1) 0 0}
.mttq-portal .pt-cap{padding:64px 72px 44px 32px;gap:10px}
.mttq-portal .pt-arrow.prev{left:16px}.mttq-portal .pt-arrow.next{right:16px}
.mttq-portal .pt-dots{right:24px;bottom:18px}
.mttq-portal .pt-nav .head-inner{padding-top:0;padding-bottom:0}

/* Banner: xếp chữ thoáng hơn */
.mttq-portal .pt-title{gap:6px}
.mttq-portal .pt-aside{gap:10px;padding-top:2px}

/* Tablet */
@media(max-width:1000px){
  .mttq-portal .pt-top{padding-top:var(--sp-2)}
  .mttq-portal .pt-cols{padding-top:var(--sp-3)}
  .mttq-portal .pt-feed{gap:var(--sp-4)}
}
/* Điện thoại: lề 16px, nhịp 16/24 */
@media(max-width:620px){
  .mttq-portal{--gut:16px}
  .mttq-portal .pt-banner-in{padding:14px var(--gut)}
  .mttq-portal .pt-top{padding-top:var(--sp-2);gap:var(--sp-2)}
  .mttq-portal .pt-svc{margin-top:var(--sp-2);gap:10px}
  .mttq-portal .pt-cols{padding-top:var(--sp-3)}
  .mttq-portal .pt-cap{padding:44px 16px 40px;gap:8px}
  .mttq-portal .pt-ttl{font-size:1.05rem}
  .mttq-portal .pt-dots{right:14px;bottom:14px}
  .mttq-portal .pt-arrow.prev{left:10px}.mttq-portal .pt-arrow.next{right:10px}
  .mttq-portal .pt-latest-in{padding:14px 12px 6px}
  .mttq-portal .pt-row{grid-template-columns:96px minmax(0,1fr);gap:12px}
  .mttq-portal .pt-dig{margin-top:var(--sp-4);padding:var(--sp-3) 0 var(--sp-4)}
  .mttq-portal .pt-dig-list li{flex-basis:78%}
  .mttq-portal .pt-feed{gap:var(--sp-4)}
  .mttq-portal .pt-block-h h2{font-size:.94rem;padding:8px 26px 8px 14px}
  .mttq-portal .pt-foot-grid{gap:var(--sp-3)}
}


/* Slider trên điện thoại: bỏ mũi tên (đã có vuốt + chấm), tránh đè lên nhãn chuyên mục */
@media(max-width:620px){
  .mttq-portal .pt-arrow{display:none}
}
/* Trang trong trên điện thoại: banner gọn lại để nội dung lên sớm (trang chủ giữ banner đầy đủ) */
@media(max-width:620px){
  body.mttq-portal:not(.home) .pt-kicker{display:none}
  body.mttq-portal:not(.home) .pt-banner-in{padding-top:10px;padding-bottom:10px}
  body.mttq-portal:not(.home) .pt-emblem{width:48px;height:48px;border-width:2px;box-shadow:none}
  body.mttq-portal:not(.home) .pt-name{font-size:.98rem;line-height:1.2}
}


/* Slider tin nổi bật: dùng "padding-top" giữ tỉ lệ thay cho aspect-ratio (Safari/iPhone làm xẹp phần tử lưới dùng aspect-ratio) */
.mttq-portal .pt-slider{aspect-ratio:auto;align-self:start}
.mttq-portal .pt-slider::before{content:"";display:block;padding-top:56.25%}
@media(max-width:620px){.mttq-portal .pt-slider::before{padding-top:75%}}

/* Slider banner quảng bá — chỉ hiện trên điện thoại / máy tính bảng (máy tính đã có banner ở thanh bên) */
.pt-promo{display:none}
@media(max-width:1000px){
  .mttq-portal .pt-promo{display:block;padding:var(--sp-2) 0 0}
  .pt-promo-track{position:relative;display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding:2px var(--gut) 6px;scroll-padding:0 var(--gut);-webkit-overflow-scrolling:touch;scrollbar-width:none;overscroll-behavior-x:contain}
  .pt-promo-track::-webkit-scrollbar{display:none}
  .pt-promo-slide{flex:0 0 88%;scroll-snap-align:center;display:block;border-radius:14px;overflow:hidden;background:var(--red-900);box-shadow:0 8px 20px -12px rgba(7,30,69,.55)}
  .pt-promo-slide img{display:block;width:100%;height:auto;aspect-ratio:1200/630;object-fit:cover}
  .pt-promo-dots{display:flex;justify-content:center;gap:2px;padding-top:2px}
  .pt-promo-dot{position:relative;width:28px;height:22px;border:0;background:none;padding:0;cursor:pointer}
  .pt-promo-dot::after{content:"";position:absolute;left:50%;top:50%;width:8px;height:8px;margin:-4px 0 0 -4px;border-radius:50%;background:#b3c5e0;transition:width .25s,background .25s,margin .25s}
  .pt-promo-dot.is-active::after{width:22px;margin-left:-11px;border-radius:4px;background:var(--red-700)}
}
@media(min-width:621px) and (max-width:1000px){.pt-promo-slide{flex-basis:62%}}
@media(max-width:1000px){.mttq-portal .pt-promo+.pt-top{padding-top:var(--sp-2)}}
@media(prefers-reduced-motion:reduce){.pt-promo-dot::after{transition:none}}


/* Các nút nổi (Trợ lý AI bên phải, Phản ánh kiến nghị bên trái): nút "lên đầu trang" xếp ngay phía trên nút AI, không đè nhau */
.mttq-portal .m26-top{right:27px;bottom:104px;z-index:9997}
@media(max-width:820px){
  .mttq-portal .m26-top{right:19px;bottom:calc(138px + env(safe-area-inset-bottom));width:44px;height:44px}
}
body.an-sinh-modal-open .m26-top,body:has(.an-sinh-modal.is-open) .m26-top,body:has(.ap-modal.is-open) .m26-top{opacity:0;visibility:hidden}

/* PWA / thiết bị có tai thỏ: chừa vùng an toàn khi mở như ứng dụng */
@media(display-mode:standalone){
  .mttq-portal .pt-banner{padding-top:env(safe-area-inset-top,0px)}
  .mttq-portal .pt-nav{padding-top:env(safe-area-inset-top,0px);top:0}
  .mttq-portal .pt-banner,.mttq-portal .pt-nav{padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px)}
}
/* Thanh điều hướng dưới (mobile): chừa chỗ ở cuối trang để không che nội dung */
@media(max-width:820px){
  .mttq-portal .pt-foot{padding-bottom:calc(78px + env(safe-area-inset-bottom,0px))}
}

/* Thay Playfair Display (theme cha) bằng chữ có chân của cổng thông tin */
.mttq2026 h1,
.mttq2026 h2,
.mttq2026 h3,
.mttq2026 .serif,
.m26-brand strong,
.m26-drawer-brand strong,
.m26-hero .mini .m b,
.m26-marquee span,
.m26-tile.feature h3,
.m26-catlist .n,
.m26-tl .item .yr,
.m26-stat b,
.m26-quote blockquote,
.m26-foot .fb strong,
.m26-article h2,
.m26-article h3,
.m26-article h4,
.m26-404 .big,
.ab-head h2,
.ab-found-txt h2,
.ab-seal-body strong,
.ab-ava .mono,
.ab-lead-info h3,
.ab-card h4,
.ab-cta h2{font-family:var(--pt-serif)}

