/* HVSC – Tin tức theo cấu trúc VDH (20/10/2026). Tiền tố .tn-. Dùng biến theme: --surface --surface-2 --ink --muted --line --brand-ink --bg */
:root{--tn-ve:#0369a1;--tn-cn:#1d4ed8;--tn-oss:#047857;--tn-mkt:#c2410c;--tn-du:#6d28d9;--tn-cd:#be185d;--tn-red:#c5161b;--tn-sh:0 1px 2px rgba(20,24,40,.06),0 6px 18px rgba(20,24,40,.07)}
html[data-theme="dark"]{--tn-ve:#38bdf8;--tn-cn:#60a5fa;--tn-oss:#34d399;--tn-mkt:#fb923c;--tn-du:#a78bfa;--tn-cd:#f472b6;--tn-red:#ff6b70;--tn-sh:0 1px 2px rgba(0,0,0,.3),0 8px 22px rgba(0,0,0,.25)}
.tn{background:var(--bg);color:var(--ink);overflow-x:clip}
.tn *,.tn *::before,.tn *::after{box-sizing:border-box}
.tn a{color:inherit;text-decoration:none}
.tn-wrap{max-width:1320px;margin:0 auto;padding:0 16px}
@media(min-width:900px){.tn-wrap{padding:0 28px}}
.tn :focus-visible{outline:3px solid var(--tn-cn);outline-offset:2px;border-radius:6px}
.tn-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* Ticker */
.tn-tick{display:flex;align-items:center;gap:12px;max-width:1320px;margin:0 auto;padding:8px 16px;font-size:14px;overflow:hidden;border-bottom:1px solid var(--line)}
@media(min-width:900px){.tn-tick{padding:8px 28px}}
.tn-tick b{flex:none;background:var(--tn-red);color:#fff;border-radius:6px;padding:2px 9px;font-size:12px;letter-spacing:.06em}
html[data-theme="dark"] .tn-tick b{background:transparent;color:var(--tn-red);border:1px solid var(--tn-red)}
.tn-tick__vp{overflow:hidden;flex:1;min-width:0;mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent)}
.tn-tick__tr{display:inline-flex;gap:44px;white-space:nowrap;animation:tn-tick 80s linear infinite}
.tn-tick:hover .tn-tick__tr,.tn-tick:focus-within .tn-tick__tr{animation-play-state:paused}
.tn-tick a{font-weight:600}.tn-tick a:hover{color:var(--brand-ink)}
.tn-tick a span{color:var(--muted);margin-left:8px;font-size:12.5px;font-weight:500}
@keyframes tn-tick{to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.tn-tick__tr{animation:none;overflow-x:auto}}

/* Tiêu đề */
.tn-head{padding:22px 0 12px}
.tn-crumb{font-size:13px;color:var(--muted);display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.tn-crumb a{color:var(--muted)}.tn-crumb a:hover{color:var(--brand-ink)}
.tn-head h1{margin:8px 0 6px;font-size:clamp(28px,4vw,40px);line-height:1.15;letter-spacing:-.02em;color:var(--ink)}
.tn-head p{margin:0;color:var(--muted);max-width:760px;font-size:15.5px}

/* Thẻ */
.tn-img{display:block;position:relative;aspect-ratio:16/9;border-radius:12px;overflow:hidden;background:var(--surface-2)}
.tn-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .5s}
a:hover>.tn-img img,a:hover .tn-img img{transform:scale(1.03)}
.tn-tag{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--c)}
.tn-tag::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--c)}
.tn-meta{font-size:12.5px;color:var(--muted);display:flex;gap:6px 12px;flex-wrap:wrap}
.tn-card{min-width:0}
.tn-card__a{display:flex;flex-direction:column;gap:12px;height:100%}
.tn-card__b{display:flex;flex-direction:column;gap:7px}
.tn-card h3{margin:0;font-size:17px;line-height:1.38;font-weight:700;color:var(--ink);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.tn-card h2{margin:0;font-size:clamp(22px,2.4vw,30px);line-height:1.25;letter-spacing:-.01em;color:var(--ink)}
.tn-card p{margin:0;color:var(--muted);font-size:14.5px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.tn-card--big p{-webkit-line-clamp:3;font-size:15.5px}
.tn-card__a:hover h2,.tn-card__a:hover h3,.tn-row__a:hover h3{color:var(--brand-ink)}
.tn-row{min-width:0}
.tn-row__a{display:grid;grid-template-columns:128px minmax(0,1fr);gap:12px;align-items:start}
.tn-row .tn-img{border-radius:10px}
.tn-row__b{display:flex;flex-direction:column;gap:4px;min-width:0}
.tn-row h3{margin:0;font-size:15px;line-height:1.38;font-weight:700;color:var(--ink);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.tn-row .tn-meta{font-size:12px}

/* Hero 1 + 4 */
.tn-hero{display:grid;gap:22px;padding:12px 0 28px;border-bottom:1px solid var(--line)}
.tn-hero>*{min-width:0}
.tn-hero__list{display:grid;gap:16px;align-content:start}
@media(min-width:900px){.tn-hero{grid-template-columns:minmax(0,1.55fr) minmax(0,1fr)}.tn-hero__list .tn-row__a{grid-template-columns:150px minmax(0,1fr)}}

/* Bố cục chính */
.tn-main{display:grid;gap:34px;padding:28px 0 48px}
.tn-main>*{min-width:0}
@media(min-width:1100px){.tn-main{grid-template-columns:minmax(0,1fr) 330px}}
.tn-col{display:grid;gap:30px;align-content:start}
.tn-side{display:grid;gap:20px;align-content:start}
@media(min-width:1100px){.tn-box--pop{position:sticky;top:150px}}
.tn-box{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:18px;box-shadow:var(--tn-sh)}
.tn-box h2{margin:0 0 12px;font-size:17px;color:var(--ink)}
.tn-box p{margin:0 0 12px;color:var(--muted);font-size:14px}
.tn-pop{list-style:none;margin:0;padding:0;display:grid;gap:14px;counter-reset:p}
.tn-pop li{counter-increment:p;position:relative}
.tn-pop a{display:grid;grid-template-columns:34px 78px minmax(0,1fr);gap:10px;align-items:start}
.tn-pop a::before{content:counter(p);font-weight:800;font-size:28px;line-height:1;color:var(--tn-red)}
.tn-pop .tn-img{border-radius:8px}
.tn-pop a>span:last-child{display:flex;flex-direction:column;gap:3px;min-width:0}
.tn-pop b{font-size:14px;line-height:1.38;font-weight:700;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.tn-pop a:hover b{color:var(--brand-ink)}
.tn-pop small{font-size:12px;color:var(--muted)}
.tn-pop .tn-tag{font-size:12px}
.tn-box--cta{background:linear-gradient(145deg,#16203f,#2a1236);border:0;color:#fff}
.tn-box--cta h2{color:#fff}.tn-box--cta p{color:#d3d9ee}
.tn-btn{display:flex;align-items:center;justify-content:center;height:44px;border-radius:12px;background:var(--tn-red);color:#fff!important;font-weight:700;font-size:15px}
html[data-theme="dark"] .tn-box--cta .tn-btn{background:#e31e24}
.tn-btn:hover{filter:brightness(1.1)}
.tn-btn--ghost{background:transparent;border:1.5px solid var(--tn-cn);color:var(--tn-cn)!important}
.tn-btns{display:flex;gap:8px;margin-top:10px}.tn-btns a{flex:1;text-align:center;border:1px solid rgba(255,255,255,.28);border-radius:10px;padding:9px 6px;font-size:13.5px;font-weight:600;color:#fff}
.tn-btns a:hover{background:rgba(255,255,255,.12)}
.tn-cl{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.tn-cl a{display:flex;align-items:center;gap:10px;padding:9px 6px;border-radius:10px;font-weight:600;font-size:14.5px}
.tn-cl a:hover{background:var(--surface-2)}
.tn-cl i{width:9px;height:9px;border-radius:50%;background:var(--c)}
.tn-cl em{margin-left:auto;font-style:normal;font-size:12.5px;color:var(--muted)}

/* Khối chuyên mục */
.tn-sec{display:grid;gap:16px}
.tn-sec+.tn-sec{padding-top:28px;border-top:1px solid var(--line)}
.tn-sec__h{display:flex;align-items:center;gap:12px}
.tn-sec__h h2{margin:0;font-size:21px;letter-spacing:-.01em;display:flex;align-items:center;gap:10px;color:var(--ink)}
.tn-sec__h h2::before{content:"";width:5px;height:22px;border-radius:3px;background:var(--c,var(--tn-red))}
.tn-more,.tn-pg{margin-left:auto;font-size:14px;font-weight:700;color:var(--c,var(--muted))!important}
.tn-pg{font-weight:500;color:var(--muted)!important}
.tn-more:hover{text-decoration:underline!important}
.tn-sec__b{display:grid;gap:18px}.tn-sec__b>*{min-width:0}
.tn-sec__list{display:grid;gap:14px;align-content:start}
@media(min-width:760px){.tn-sec__b{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}.tn-sec--r .tn-sec__b{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr)}.tn-sec--r .tn-sec__b>.tn-card{order:2}}
.tn-sec__one{max-width:560px}

/* Lưới mới nhất + phân trang */
.tn-latest{display:grid;gap:18px;padding-top:28px;border-top:1px solid var(--line)}
.tn-grid{display:grid;gap:24px 20px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
.tn-pager{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;padding:18px 0}
.tn-pager .page-numbers{min-width:42px;height:42px;display:grid;place-items:center;border-radius:10px;border:1px solid var(--line);background:var(--surface);font-weight:600;padding:0 10px}
.tn-pager .current{background:var(--tn-red);border-color:var(--tn-red);color:#fff}
html[data-theme="dark"] .tn-pager .current{color:#1a0c0d}
.tn-pager a.page-numbers:hover{border-color:var(--tn-red)}

/* Trang bài */
.tn-crumb--post{margin:0 0 12px}
.tn-toc{border:1px solid var(--line);background:var(--surface-2);border-radius:14px;padding:16px 20px;margin:22px 0}
.tn-toc b{display:block;margin-bottom:8px;font-size:16px}
.tn-toc ol{margin:0;padding-left:22px;display:grid;gap:5px}
.tn-toc a{color:var(--ink);font-size:15px}.tn-toc a:hover{color:var(--brand-ink);text-decoration:underline}
.tn-by{display:flex;gap:12px;align-items:center;margin:10px 0 18px;font-size:14px;line-height:1.45}
.tn-by__av{flex:none;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--tn-red);color:#fff;font-weight:800;font-size:13px}
html[data-theme="dark"] .tn-by__av{color:#1a0c0d}
.tn-by small{color:var(--muted);font-size:13px}
html{scroll-padding-top:150px}

/* Mobile */
@media(max-width:560px){.tn-row__a{grid-template-columns:112px minmax(0,1fr)}.tn-pop a{grid-template-columns:28px 70px minmax(0,1fr)}.tn-grid{grid-template-columns:1fr}.tn-head{padding-top:16px}}

/* ---- Trang bài: nguồn, tác giả, miễn trừ, đánh giá ---- */
.tn-src{margin:28px 0 0;padding:16px 18px;border-radius:16px;background:var(--surface-2);border:1px solid var(--line);font-size:14px}
.tn-src h2{margin:0 0 8px;font-size:16px}
.tn-src ul{margin:0;padding-left:20px;display:grid;gap:4px}
.tn-src a{color:var(--muted);word-break:break-word;text-decoration:underline;text-underline-offset:3px}.tn-src a:hover{color:var(--brand-ink)}
.tn-post .tn-by{display:flex;gap:12px;align-items:center;margin:28px 0 8px;padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.tn-by b{font-size:15px}.tn-by em{font-style:normal;font-weight:600;color:var(--brand-ink)}.tn-by small{display:block;font-size:13px;color:var(--muted);line-height:1.5}
.tn-dis{margin:18px 0 0;padding:14px 16px;border-radius:16px;background:var(--surface-2);border:1px solid var(--line);font-size:14px;line-height:1.6;color:var(--muted)}
.tn-dis p{margin:0}.tn-dis b{color:var(--ink)}
.tn-dis__ac{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.tn-dis__ac .q,.tn-dis__ac .r{display:inline-flex;align-items:center;min-height:40px;padding:8px 14px;border-radius:999px;font:600 13px/1.2 inherit;font-family:inherit;cursor:pointer;border:1px solid var(--line);background:var(--surface);color:var(--ink)}
.tn-dis__ac .q{border-color:var(--tn-red);color:var(--brand-ink)}
.tn-dis__ac .q:hover,.tn-dis__ac .r:hover{background:var(--surface-2)}
.tn-rate{margin:22px 0 0;padding:18px;border-radius:18px;background:var(--surface);border:1px solid var(--line);display:grid;gap:12px;box-shadow:var(--tn-sh)}
.tn-rate b#tn-rate-h{display:block;font-size:17px}
.tn-rate small{display:block;color:var(--muted);font-size:13.5px;margin-top:2px}
.tn-rate__avg{display:block;margin-top:6px;font-size:13.5px;color:var(--muted)}.tn-rate__avg b{font-size:20px;color:var(--ink)}
.tn-rate__pk{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.tn-rate__pk button{width:44px;height:44px;padding:0;border:0;background:transparent;cursor:pointer;display:grid;place-items:center;border-radius:10px}
.tn-rate__pk svg{width:34px;height:34px;fill:var(--line);stroke:var(--muted);stroke-width:.6;transition:.15s}
.tn-rate__pk button.on svg{fill:#f59e0b;stroke:#f59e0b}
.tn-rate__pk button:hover svg{transform:scale(1.12)}
.tn-rate__pl{font-size:14px;color:var(--muted);margin-left:6px}
.tn-rate__f{display:grid;gap:10px}
.tn-rate__f[hidden]{display:none}
.tn-rate__f textarea{width:100%;min-height:90px;padding:10px 12px;border-radius:12px;border:1px solid var(--line);background:var(--surface-2);color:var(--ink);font:inherit;font-size:14.5px;resize:vertical}
.tn-rate__f .tn-btn{width:max-content;padding:0 22px;border:0;cursor:pointer}
.tn-hp{position:absolute!important;left:-9999px!important}
.tn-rate__ms{margin:0;font-size:14px;color:var(--muted)}.tn-rate__ms.ok{color:#16a34a}
.tn-rate.is-done .tn-rate__pk button{pointer-events:none}
/* nút/ghi chú báo sai của plugin: theo giao diện sáng-tối */
.vfb-rep{background:var(--surface-2)!important;color:var(--muted)!important;border:1px solid var(--line)}
.vfb-rep button{color:var(--ink)!important}
/* Mục lục: đang đọc tô đỏ + công cụ */
.hv-toc a.is-on{color:var(--brand-ink)!important;border-left-color:var(--tn-red)!important;background:color-mix(in srgb,var(--tn-red) 10%,transparent)!important}
.tn-toolbar{display:flex;gap:6px;align-items:center;margin:0 0 10px}
.tn-toolbar button{height:34px;min-width:34px;padding:0 10px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font:600 13px inherit;font-family:inherit;cursor:pointer}
.tn-toolbar button:hover{border-color:var(--tn-red);color:var(--brand-ink)}
.tn-toolbar .qk{margin-right:auto}
.hv-toc.is-min ol{display:none}
.hv-toc.is-small ol{font-size:13px}.hv-toc.is-big ol{font-size:16px}
.tn-qk{position:fixed;inset:0;z-index:100001;display:none;align-items:center;justify-content:center;padding:16px;background:rgba(10,16,38,.55)}
.tn-qk.in{display:flex}
.tn-qk__b{width:min(560px,100%);max-height:calc(100vh - 32px);overflow:auto;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:20px;padding:20px}
.tn-qk__b h2{margin:0 0 4px;font-size:18px}.tn-qk__b p.s{margin:0 0 12px;color:var(--muted);font-size:13.5px}
.tn-qk__b ol{margin:0;padding-left:20px;display:grid;gap:10px;font-size:15px;line-height:1.55}
.tn-qk__b ol b{display:block;font-size:13px;color:var(--brand-ink)}
.tn-qk__x{float:right;width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer}
.tn.site-main{max-width:none!important;width:100%!important;margin:0!important;padding:0!important}
.tn-head h1,.tn-sec__h h2,.tn-box h2{font-weight:700}
.tn-moreposts{display:flex;justify-content:center;padding:6px 0 0}
/* khi có form chung hvGopY: ẩn nút/ thanh báo sai cũ của plugin để không trùng */
body.tn-gopy .vfb-sel,body.tn-gopy .vfb-rep{display:none!important}
.tn-sel{position:absolute;z-index:9990;padding:8px 12px;border:0;border-radius:999px;background:#16203f;color:#fff;font:600 13px/1 inherit;font-family:inherit;box-shadow:0 10px 24px -10px rgba(10,18,48,.6);cursor:pointer}
html[data-theme="dark"] .tn-sel{background:#fff;color:#16203f}
/* trang chuyên mục: chữ phụ tối thiểu 12px */
body.hv-nv-cat main small,body.hv-nv-cat main .lb,body.hv-nv-cat main em,body.hv-nv-cat main .mt{font-size:max(12px,1em)}
body.hv-nv-cat main#content .nw,body.hv-nv-cat main .nw,body.hv-nv-cat main#content small,body.hv-nv-cat main#content .lb,body.hv-nv-cat main small,body.hv-nv-cat main .lb{font-size:12px!important}
.tn-moreposts .tn-btn{display:inline-flex;padding:0 28px}
