/* Dải cuộn ngang: không hiện thanh cuộn (xem assets/js/h-scroll.js). Các dải đã biết ẩn ngay từ đầu để khỏi nháy thanh cuộn trước khi JS chạy. */
.ptabs .in,.pills,.tabs,.fbar,.seg2,.chips,.chips2,.cats,.vlist,.vmini-row,.lp-grid,.lp-plans,.lp-links,.fsv,.tbar .r,.ptabs2,nav.menu,.hs{scrollbar-width:none;-ms-overflow-style:none}
.ptabs .in::-webkit-scrollbar,.pills::-webkit-scrollbar,.tabs::-webkit-scrollbar,.fbar::-webkit-scrollbar,.seg2::-webkit-scrollbar,.chips::-webkit-scrollbar,.chips2::-webkit-scrollbar,.cats::-webkit-scrollbar,.vlist::-webkit-scrollbar,.vmini-row::-webkit-scrollbar,.lp-grid::-webkit-scrollbar,.lp-plans::-webkit-scrollbar,.lp-links::-webkit-scrollbar,.fsv::-webkit-scrollbar,.tbar .r::-webkit-scrollbar,.ptabs2::-webkit-scrollbar,nav.menu::-webkit-scrollbar,.hs::-webkit-scrollbar{display:none;width:0;height:0}
/* tab hồ sơ: chỉ cuộn ngang (tránh hiện thêm mũi tên cuộn dọc vì gạch chân tràn 1px) */
.ptabs .in{overflow-x:auto;overflow-y:hidden}
.ptabs a.on::after{bottom:0}
/* dải ngang: chỉ cuộn ngang, KHÔNG nuốt cử chỉ cuộn dọc của trang (menu chính từng cuộn được 2 hướng vì tràn dọc 9px) */
.hs.hs-x,nav.menu,.ptabs2,.pills,.tabs,.fbar,.seg2,.chips,.chips2,.cats{overflow-y:hidden}
.hs{touch-action:pan-x pan-y pinch-zoom}
/* kéo chuột trên máy tính */
.hs{cursor:grab}
.hs.hs-drag{cursor:grabbing;user-select:none;scroll-snap-type:none!important}
.hs.hs-drag a{pointer-events:none}
/* mép mờ báo "còn nữa": chỉ mờ phía còn nội dung để trượt */
.hs.hs-r:not(.hs-l){-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 28px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 28px),transparent)}
.hs.hs-l:not(.hs-r){-webkit-mask-image:linear-gradient(270deg,#000 calc(100% - 28px),transparent);mask-image:linear-gradient(270deg,#000 calc(100% - 28px),transparent)}
.hs.hs-l.hs-r{-webkit-mask-image:linear-gradient(90deg,transparent,#000 28px,#000 calc(100% - 28px),transparent);mask-image:linear-gradient(90deg,transparent,#000 28px,#000 calc(100% - 28px),transparent)}
.hs:not(.hs-l):not(.hs-r){-webkit-mask-image:none;mask-image:none}

/* Cuộn DỌC: KHÔNG hiện thanh cuộn ở các danh sách/menu cuộn trong khung; danh sách thường có thêm mép mờ "còn nữa" (h-scroll.js) */
.gal-c .thumbs,.chat-list,.chat-msgs,.ast-body,.mapv .ml,.tocd-p ol,.cb-body,.vfade,.vs,.provpop,.brpop,.qb-sug,.acct .dside,.cmp-wrap,.nk-modal-box,.vp-box,.ev-side,.modal,dialog.bkdlg{scrollbar-width:none;-ms-overflow-style:none}
.gal-c .thumbs::-webkit-scrollbar,.chat-list::-webkit-scrollbar,.chat-msgs::-webkit-scrollbar,.ast-body::-webkit-scrollbar,.mapv .ml::-webkit-scrollbar,.tocd-p ol::-webkit-scrollbar,.cb-body::-webkit-scrollbar,.vfade::-webkit-scrollbar,.vs::-webkit-scrollbar,.provpop::-webkit-scrollbar,.brpop::-webkit-scrollbar,.qb-sug::-webkit-scrollbar,.acct .dside::-webkit-scrollbar,.cmp-wrap::-webkit-scrollbar,.nk-modal-box::-webkit-scrollbar,.modal::-webkit-scrollbar,dialog.bkdlg::-webkit-scrollbar{display:none}
.vs.vs-b:not(.vs-t){-webkit-mask-image:linear-gradient(180deg,#000 calc(100% - 34px),transparent);mask-image:linear-gradient(180deg,#000 calc(100% - 34px),transparent)}
.vs.vs-t:not(.vs-b){-webkit-mask-image:linear-gradient(0deg,#000 calc(100% - 34px),transparent);mask-image:linear-gradient(0deg,#000 calc(100% - 34px),transparent)}
.vs.vs-t.vs-b{-webkit-mask-image:linear-gradient(180deg,transparent,#000 34px,#000 calc(100% - 34px),transparent);mask-image:linear-gradient(180deg,transparent,#000 34px,#000 calc(100% - 34px),transparent)}
.vs:not(.vs-t):not(.vs-b){-webkit-mask-image:none;mask-image:none}

/* danh sách đang tải bằng AJAX: mờ nhẹ, không giật bố cục */
[data-ajax-zone].is-loading{opacity:.55;transition:opacity .12s;pointer-events:none}
.ajax-busy{cursor:progress}
.ptrack,.sel-pop,.pk-col{scrollbar-width:none;-ms-overflow-style:none}
.ptrack::-webkit-scrollbar,.sel-pop::-webkit-scrollbar,.pk-col::-webkit-scrollbar{display:none}
