/* =========================================================
   Trang chủ - layout responsive
   Chuyển từ LawsVN _LayoutHomeResponsive (assets/css/v2/header.css + main.css + inline style).
   Chỉ nạp trong Views/Shared/_LayoutHome.cshtml, không dùng chung với trang dịch vụ.
   ========================================================= */

/* Icon font (fonticon-lvn) */
@font-face { font-family: fonticon-lvn; src: url('/css/icon_fonts/fonticon-lvn.eot'); src: url('/css/icon_fonts/fonticon-lvn.eot') format('embedded-opentype'), url('/css/icon_fonts/fonticon-lvn.woff') format('woff'), url('/css/icon_fonts/fonticon-lvn.ttf') format('truetype'), url('/css/icon_fonts/fonticon-lvn.svg') format('svg'); font-weight: 400; font-style: normal; font-display: block }
.ic { font-family: fonticon-lvn; text-rendering: auto; font-size: 16px; line-height: 1; display: inline-block; font-style: normal; font-weight: 400; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale }
.icon-arrow-rightlvn:before { content: "\e904" }
.icon-archive-paperlvn:before { content: "\e902" }
.icon-arrow-elvn:before { content: "\e95b" }
.icrightlvn { position: relative; top: 2px; margin-left: 5px }

/* Tiện ích */
.text-center { text-align: center }
.text-right { text-align: right }
.fn-24 { font-size: 24px !important }

/* Khung chính */
.main-content { max-width: 1200px; margin: auto }
.section-wap { width: 100%; float: left; border-bottom: solid 1px #e0e0e0; margin-bottom: 30px }
.section-wap:last-child { border-bottom: 0; margin-bottom: 30px }
.content-left { width: 75%; position: relative; padding-right: 30px; float: left }
.sidebar-300 { width: 25%; position: relative; float: right }
.sidebar-left { float: left; width: 28% }
/*Bengin sidebar-left */
.sidebar-left { float:left; width:28% }
.bg-sidebar { background:#f2f2f2 }
.heading-sb-left { font-size:15px; font-weight:bold; padding:14px 16px 8px 16px; text-transform:uppercase; border-bottom:solid 1px #dcdcdc }
.ul-nav-sidebar.high-scroll { max-height:215px; overflow-y:auto; scrollbar-width:thin }
.ul-nav-sidebar.high-scroll::-webkit-scrollbar { width:8px; background-color:#f9f9f9 }
.ul-nav-sidebar.high-scroll::-webkit-scrollbar-thumb { background:#e0e0e0 }
.ul-nav-sidebar { margin:0; padding:6px 16px 6px 16px }
.ul-nav-sidebar li { padding:6.5px 0; list-style:inside; font-size:15px }
.mgb-0 {margin-bottom: 0;}
@media only screen and (max-width:960px) {
    .sidebar-left { display:none } 
} 
.content-center { float: left; width: 72%; padding-left: 26px } 
.section-header { float: left; width: 100%; position: relative; margin-bottom: 16px }
.section-content { float: left; width: 100%; position: relative }
.heading { font-size: 20px; text-transform: uppercase; display: inline-block }

/* Tin nổi bật (LawsVN PartialHotNews; .hot-news nền ở common/header.css) */
.hot-news .icon-hotnewslvn { position: relative; top: 2px; margin-right: 4px }
.icon-hotnewslvn .path1:before { content: "\ea29"; color: rgb(255,204,188) }
.icon-hotnewslvn .path2:before { content: "\ea2a"; margin-left: -0.9775390625em; color: rgb(255,87,34) }
.icon-hotnewslvn .path3:before { content: "\ea2b"; margin-left: -0.9775390625em; color: rgb(255,87,34) }
.icon-hotnewslvn .path4:before { content: "\ea2c"; margin-left: -0.9775390625em; color: rgb(255,87,34) }
.icon-hotnewslvn .path5:before { content: "\ea2d"; margin-left: -0.9775390625em; color: rgb(255,87,34) }
.icon-hotnewslvn .path6:before { content: "\ea2e"; margin-left: -0.9775390625em; color: rgb(255,87,34) }
.icon-hotnewslvn .path7:before { content: "\ea2f"; margin-left: -0.9775390625em; color: rgb(255,87,34) }
.icon-hotnewslvn .path8:before { content: "\ea30"; margin-left: -0.9775390625em; color: rgb(255,87,34) }
.icon-hotnewslvn .path9:before { content: "\ea31"; margin-left: -0.9775390625em; color: rgb(255,87,34) }
.icon-hotnewslvn .path10:before { content: "\ea32"; margin-left: -0.9775390625em; color: rgb(255,87,34) }
.icon-hotnewslvn .path11:before { content: "\ea33"; margin-left: -0.9775390625em; color: rgb(255,87,34) }
.icon-hotnewslvn .path12:before { content: "\ea34"; margin-left: -0.9775390625em; color: rgb(255,87,34) }
.icon-hotnewslvn .path13:before { content: "\ea35"; margin-left: -0.9775390625em; color: rgb(255,87,34) }
.icon-hotnewslvn .path14:before { content: "\ea36"; margin-left: -0.9775390625em; color: rgb(255,87,34) }
.icon-hotnewslvn .path15:before { content: "\ea37"; margin-left: -0.9775390625em; color: rgb(255,87,34) }

/* Khối tin (LawsVN V2/PartialDiemTinVanBanMoi, assets/css/v2/main.css "section-news") */
.section-news { width: 100%; float: left; margin-bottom: 24px }
.col-news-1 { width: 50%; padding-right: 16px; float: left }
.col-news-2 { width: 50%; padding-left: 16px; float: left }
.thumb-l180 { float: left; margin-right: 16px; margin-bottom: 0; width: 180px }
.latest-article { float: left; width: 100%; position: relative; padding: 6px 0 }
.latest-article:first-child { padding-top: 0 }
.latest-article:last-child { padding-bottom: 0 }
.latest-title { font-size: 18px; margin-bottom: 8px; line-height: 1.6 }
.latest-title2 { font-size: 16px; line-height: 1.6 }
.latest-summary { font-size: 15px; line-height: 1.6 }
.fx-link { display: grid }
.fx-ic { float: left; margin-right: 6px; position: relative; top: 4px }
.icon-small-triangle-rightlvn:before { content: "\e94b" }
.heading.latest-head { font-size: 16px }
.div-more { float: left; width: 100%; margin-top: 16px }
.a-more { font-size: 14px; font-style: italic; display: inline-block }
.p-hide { display: none }

/* Khối văn bản (tab) */
.section-document { float: left; width: 100%; position: relative; margin-bottom: 24px }
.section-document:last-child { margin-bottom: 0 }
.tab-nav-doc { border-bottom: solid 2px #a67942; float: left; width: 100% }
.tab-nav-doc-item { font-weight: bold; font-size: 14px; line-height: 36px; border: solid 1px #e0e0e0; border-left: 0; padding: 0 10px; float: left; height: 36px }
.tab-nav-doc-item:hover, .tab-nav-doc-item.active { background: #a67942; border: 1px solid #a67942; color: #fff }
.block-content { width: 100%; float: left; margin-bottom: 16px }
.pagination { float: left; width: 100% }
#FirstBox, #SecondBox, #ThirdBoxTab { position: relative; float: left; width: 100% }

/* Văn bản trong tab (LawsVN V2/PartialDocumentAttributes, assets/css/v2/main.css) */
.doc-article { width: 100%; border-bottom: solid 1px #e0e0e0; padding: 16px 0; float: left }
.doc-number { font-weight: bold; font-size: 14px; display: inline-block }
.doc-clumn1 { margin-right: 16px; float: left }
.doc-clumn2 { display: grid }
.post-type-doc { width: 75%; float: left; padding-right: 16px }
.post-meta-doc { width: 25%; float: left }
.doc-title { font-size: 17px; font-weight: normal; margin-bottom: 12px }
.doc-tag { margin-right: 8px; font-size: 14px; color: #666; display: inline-block }
.doc-tag.home { font-size: 13px }
.doc-tag.mr6 { margin-right: 6px }
.doc-dmy { font-size: 14px; margin-bottom: 5px }
.w-doc-dmy1 { float: left; color: #666; width: 45% }
.w-doc-dmy2 { color: #90622a; float: left; width: 55% }
.doc-empty { padding: 16px 0 }
.doc-article.bg-noi-bat { background: #f2f2f2; padding: 12px }
.btn-noi-bat { background: #d80000; color: #fff; padding: 3px 5px; border-radius: 3px; font-size: 12px; margin-right: 8px }
.du-thao-article { display: flex; width: 100%; padding: 16px 0; border-bottom: solid 1px #e0e0e0 }
.dt-col1 { width: 5% }
.dt-col2 { width: 85% }
.dt-col3 { width: 10%; text-align: right }
/* Không đặt position cho .tooltip-vb (như LawsVN main.css): popup neo theo khung tab, mobile rộng 100% khung */
.tooltip-vb { cursor: pointer }
.tooltip-vb-text { display: none; position: absolute; z-index: 9999; min-width: 96px; color: #222 }
.tooltip-vb:hover .tooltip-vb-text { display: block }
.tooltip-vb-content { display: block; background: #fff; border: solid 1px #ccc; padding: 12px; text-align: left; width: 400px }

/* Đối tác */
.partner-col2 { width: 50%; float: left }
.partner-item { display: inline-block; border: solid 1px #e0e0e0; margin-right: 16px; margin-bottom: 16px; padding: 3px }
.partner-item img { height: 88px; width: 120px; float: left }


/* Góc chia sẻ (LawsVN V2/PartialSharedCorner + assets/css/v2/slider.css) */
.item-cmt { border: solid 1px #e0e0e0; padding: 16px }
.info-cmt { padding-top: 16px; overflow: hidden; text-overflow: ellipsis; -webkit-line-clamp: 5; display: -webkit-box; -webkit-box-orient: vertical }
.info-cmt > p { line-height: 24px; text-align: center; padding: 0 30px }
.cmt-phay { display: inline-block; position: relative; margin-right: 12px; margin-top: -15px }
.cmt-phay2 { display: inline-block; position: relative; margin-left: 12px }
.cmt-phay img, .cmt-phay2 img { height: 20px; width: 30px }
.thumb-cmt { float: left; width: 48px; height: 48px; margin-right: 10px; border-radius: 100%; object-fit: cover }
.name-cmt { font-size: 16px; font-weight: bold; text-transform: uppercase }
.text-campany { color: #b28247; font-size: 14px; text-transform: uppercase; font-weight: bold }

/* Swiper tối thiểu: swiperCore.js không nạp swiper-bundle.css */
#partner-swiper { margin: 0 auto; position: relative; overflow: hidden; z-index: 1 }
#partner-swiper .swiper-wrapper { position: relative; width: 100%; height: 100%; z-index: 1; display: flex; transition-property: transform; box-sizing: content-box }
#partner-swiper .swiper-slide { flex-shrink: 0; width: 100%; position: relative }
.icswiperfont { font-size: 36px; line-height: 36px }
.icon-slide-rightlvn .path1:before { content: "\e98e"; color: #fff }
.icon-slide-rightlvn .path2:before { content: "\e98f"; margin-left: -1em; color: #ddd }
.icon-slide-rightlvn .path3:before { content: "\e990"; margin-left: -1em; color: #222 }
.icon-slide-leftlvn .path1:before { content: "\e991"; color: #fff }
.icon-slide-leftlvn .path2:before { content: "\e992"; margin-left: -1em; color: #ddd }
.icon-slide-leftlvn .path3:before { content: "\e993"; margin-left: -1em; color: #222 }
#partner-swiper .swiper-button-prev, #partner-swiper .swiper-button-next { opacity: .5; cursor: pointer; z-index: 10; text-align: center; position: absolute; top: 50%; width: 36px; height: 36px; line-height: 36px; transform: translate(0, -50%) }
#partner-swiper .swiper-button-prev:hover, #partner-swiper .swiper-button-next:hover { opacity: .99 }
#partner-swiper .swiper-button-prev { left: 0 }
#partner-swiper .swiper-button-next { right: 0 }
#partner-swiper .swiper-button-disabled { opacity: .35; cursor: auto; pointer-events: none }
#partner-swiper .swiper-button-lock { display: none }
/* Swiper 11 tự chèn svg mũi tên và nhận focus khi click: dùng icon font cũ, bỏ viền */
#partner-swiper .swiper-navigation-icon { display: none }
#partner-swiper .swiper-button-prev:focus, #partner-swiper .swiper-button-next:focus { outline: none }
#partner-swiper .swiper-button-prev:focus-visible, #partner-swiper .swiper-button-next:focus-visible { outline: 2px solid #a67942; outline-offset: 2px }

/* Nội dung block (ViewComponent HomePageArticles / HomePageDocuments) */
.home-block { margin-bottom: 24px }
.home-block article { border-bottom: solid 1px #e0e0e0; padding: 12px 0 }
.home-thumbnail { width: 160px; max-width: 100%; height: auto }
.home-documents { list-style: none; margin: 0; padding: 0 }
.home-documents li { padding: 12px 0; border-bottom: solid 1px #e0e0e0 }
.home-document-meta { font-size: 13px; color: #555 }
.home-document-meta span { display: inline-block; margin-right: 16px }
.home-block time { font-size: 13px; color: #555 }

/* Sidebar phải (LawsVN V2/PartialChinhSachMoi, PartialMediaLuat; assets/css/v2/main.css) */
.sb-more2 { float: left; width: 100%; text-align: right; padding: 0 16px }
.sb-link { font-size: 13px; font-style: italic }
.news-wg { position: relative; float: left; width: 100% }
.media-wg { position: absolute; top: 0; left: 0; background: #d81b22; padding: 5px 10px; text-transform: uppercase; color: #fff; font-size: 13px; font-weight: bold; border-radius: 0 12px 12px 0; margin-top: 5px }
.thumb-wg { width: 100%; float: left }
.info-wg { position: absolute; bottom: -15px; left: 15px; width: 270px; max-width: calc(100% - 30px); height: 34px; line-height: 34px; background: #1175b3; border: solid 2px #1175b3; border-radius: 2px; color: #fff; text-align: center; text-transform: uppercase; font-size: 14px; font-weight: bold; overflow: hidden }
.info-wg a { color: #fff }
.news-ban-tin { float: left; width: 100%; background: #202d40; padding: 25px 20px 10px; box-sizing: border-box }
.ul-ban-tin { margin: 0; padding: 0; list-style: none }
.ul-ban-tin li { padding: 5px 0; border-bottom: solid 1px #2d415c; font-size: 16px }
.ul-ban-tin li a { color: #fff; opacity: .8 }
.ul-ban-tin li a:hover { color: #fff; opacity: 1 }

/* Ô tìm kiếm (SharedViews/Components/SearchBox), theo PartialHomeSearchBox cũ */
.section-search { float: left; width: 100%; position: relative; margin-bottom: 16px }
.form-control { width: 100%; float: left; position: relative }
.form-group { float: left; width: 100%; position: relative; margin-bottom: 16px; display: table }
.form-group.mg0, .mg0 { margin-bottom: 0 }
.search-home { width: 80%; position: relative; float: left }
.input-search-lvn { width: 100%; padding-right: 105px }
.btn-search-lvn { position: absolute; right: 0; top: 0; padding: 0 12px; height: 40px; z-index: 9; cursor: pointer; text-align: center; line-height: 40px; background: #d72027; color: #fff; font-weight: bold; border: 0 }
.btn-search-lvn i { margin-right: 7px }
.btn-search-lvn:focus, .btn-search-lvn:focus-visible, .btn-search-lvn:active { outline: 0; box-shadow: none }
.search-home.empty-icon .text-clear { display: none }
.text-clear { position: absolute; right: 115px; top: 13px; font-size: 10px; color: #666; cursor: pointer; background: 0; border: 0; outline: 0 }
.btn-link-search { float: right; font-weight: bold; position: relative; margin-top: 10px; color: #222 }
.search-box { -webkit-box-shadow: 0 6px 6px rgba(0, 0, 0, 0.21); box-shadow: 0 6px 6px rgba(0, 0, 0, 0.21); width: 80%; position: absolute; left: 0; top: 48px; background: #fff; z-index: 99; display: none }
.search-box.open-search { display: block }
.search-tab { width: 100%; float: left; border-bottom: solid 1px #e0e0e0; padding: 16px 16px 0 16px }
.search-tab a { display: inline-block; position: relative; padding-bottom: 10px; margin-right: 24px; color: #85868A }
.search-tab a:hover { color: #ED1C24 }
.search-tab a.active { color: #ED1C24; font-weight: bold; border-bottom: solid 1px #ED1C24 }
.search-content { width: 100%; float: left; max-height: 340px; overflow-y: auto; padding: 16px; scrollbar-width: thin; scrollbar-color: #e0e0e0 transparent }
.search-content > div { display: block; margin-bottom: 16px }
.close-search-box { position: absolute; right: 10px; top: 14px; cursor: pointer; width: 24px; height: 24px; display: grid; place-items: center }

@media only screen and (max-width: 1080px) {
    .main-content { padding: 0 16px }
}

@media only screen and (max-width: 960px) {
    .content-left { float: left; width: 100%; padding: 0 }
    .sidebar-300 { float: left; width: 100% }
    .sidebar-left { display: none }
    .content-center { float: left; width: 100%; padding-left: 0 }
    .col-news-1 { width: 100%; padding-right: 0; margin-bottom: 24px; border-bottom: solid 1px #e0e0e0; padding-bottom: 24px }
    .col-news-2 { width: 100%; padding-left: 0 }
    .thumb-l180 { margin-right: 0; margin-bottom: 12px; width: 100% }
    .width-calc { max-width: inherit; width: calc(100% + 32px); margin-left: -16px; margin-right: -16px }
    .latest-title { font-size: 22px }
    .latest-m { border-bottom: solid 1px #e0e0e0; padding-bottom: 12px; margin-bottom: 12px }
    .latest-summary { font-size: 16px }
    .heading.latest-head { font-size: 18px }
    .p-hide { display: inline-block }
    .tab-nav-doc { overflow-y: hidden; overflow-x: auto; white-space: nowrap; display: flex; -webkit-overflow-scrolling: touch; margin-bottom: 16px }
    .tab-nav-doc-item { padding: 0 12px }
    .post-type-doc { width: 100%; padding-right: 0 }
    .post-meta-doc { width: 100% }
    .doc-clumn1 { margin-right: 12px }
    .doc-dmy { margin-bottom: 0; margin-right: 12px; display: inline-block }
    .w-doc-dmy1, .w-doc-dmy2 { float: none; width: auto }
    .tooltip-vb-text { right: 0 }
    .tooltip-vb-content { width: 100% !important; float: right }
    .doc-tag { font-size: 14px }
    .dt-col1 { width: 10% }
    .dt-col2 { width: 90% }
    .dt-col3 { display: none }
    .partner-col2 { width: 100%; float: left }
    .item-cmt { border: 0; padding: 0 }
    .info-cmt > p { padding: 0 30px }
    .cmt-phay img, .cmt-phay2 img { height: 14px; width: 20px }
    .cmt-phay, .cmt-phay2 { margin-top: -8px }
    .name-cmt { font-size: 14px }
    .text-campany { font-size: 13px }
    .search-home { width: 100% }
    .input-search-lvn { padding-right: 40px }
    .btn-search-lvn i { margin-right: 0 }
    .text-clear { right: 45px }
    .search-box { width: 100% !important }
    .close-search-box { display: none !important }
    .m-hide { display: none !important }
    .fn-24 {
    font-size: 24px !important  
}
}

.bg_suggest {
    font-weight: bold;
    background: rgb(255, 255, 0);
}

/* Thanh ghim đầu trang mobile (Partials/_HomePostSticky, js/features/home/stickyHeader.js), theo articles/style.min.css */
.post-sticky { display: none }
.head-post { position: fixed; top: 0; left: 0; z-index: 9999; width: 100%; height: 44px; display: none; align-items: center; justify-content: center; background: #f5f5f5; border-bottom: solid 1px #e0e0e0 }
.head-post .btn-pushbar-show { position: absolute; left: 16px; top: 12px; cursor: pointer; line-height: 1 }
.head-post-logo img { display: block; height: 32px; width: auto }
@media only screen and (max-width: 960px) {
    .post-sticky { display: block }
    .m-sticky .head-post { display: flex }
}

/* Khối tài khoản (HeaderAll data-role="account-area") từ article-detail/main.css "Acc area": SSR ẩn nội dung + skeleton
   (.is-loading desktop, .placeholder .shimmer mobile) đến khi core/account-area.js render xong; trang chủ không nạp main.css */
[data-role="account-area"].is-loading { pointer-events: none; user-select: none; position: relative }
[data-role="account-area"].is-loading > * { visibility: hidden }
[data-role="account-area"].is-loading::after { content: ""; position: absolute; inset: 0; z-index: 1; border-radius: 6px; background: linear-gradient(90deg, #F0F2F5 25%, #E4E6EB 37%, #F0F2F5 63%); background-size: 400% 100%; animation: account-skeleton 1.4s ease-in-out infinite }
@keyframes account-skeleton { 0% { background-position: 100% 0 } 100% { background-position: -100% 0 } }
[data-role="account-area"] .icbell { display: inline-flex; align-items: center; justify-content: center; width: 22px; height: 16px; font-size: 11px; line-height: 1; border-radius: 999px; box-sizing: border-box; flex-shrink: 0 }
.placeholder { display: inline-flex; align-items: center; justify-content: center; gap: 4px; position: relative; pointer-events: none }
.placeholder .shimmer { display: inline-block; border-radius: 4px; background: linear-gradient(90deg, #f2f2f2 25%, #eaeaea 50%, #f2f2f2 75%); background-size: 200% 100%; animation: shimmer 1.5s infinite linear; width: 25px; height: 10px; vertical-align: middle; transform: none !important; position: static !important }
.placeholder.fade-out { opacity: 0; transform: scale(0.98); transition: opacity 0.25s ease-out, transform 0.25s ease-out }
@keyframes shimmer { 0% { background-position: 200% 0 } 100% { background-position: -200% 0 } }
/* Nút lên đầu trang theo LawsVN Assets/Css/v2/header.css #backtotop (core/events.js thêm .visible khi cuộn > 200px) */
[data-role="backtotop"] { background-color: #BDBDBD; position: fixed; bottom: 115px; right: 40px; z-index: 999; border-radius: 100%; height: 36px; width: 36px; text-align: center; display: none; color: #fff; cursor: pointer }
[data-role="backtotop"].visible { display: grid; place-items: center }
[data-role="backtotop"]:hover { background-color: #a67942 }

/* Popup đăng nhập SSO (FooterAll #authPopup, core/sso.js) từ article-detail/main.css; trang chủ không nạp main.css */
.popup-wrapper.popup-520 { max-width: 520px }
.popup-wrapper.w1200 { max-width: 900px; width: 90% }
.popup-wrapper.w1200 .popup-content { padding: 24px }
.popup-wrapper.popup-800 { max-width: 800px }
.popup-wrapper.pop-dieukhoanvb { max-width: 800px; }
.popup-bg { background: rgba(0,0,0,0.6); position: fixed; display: none; z-index: 99999; height: 100%; width: 100%; top: 0; right: 0; bottom: 0; left: 0; overflow-y: auto; overflow-x: hidden; align-items: flex-start; justify-content: center }
.popup-wrapper, .popup-wrapper2 { width: 100%; max-width: 430px; position: absolute; top: 50%; left: 50%; transform: translateX(-50%) translateY(-50%); -webkit-transform: translateX(-50%) translateY(-50%); -ms-transform: translateX(-50%) translateY(-50%) }
.popup-body { position: relative; float: left; width: 100%; background: #fff; box-shadow: 0 2px 5px 0 rgba(0,0,0,0.16),0 2px 10px 0 rgba(0,0,0,0.12) }
.close-popup { position: absolute; right: -12px; top: -12px; z-index: 999; width: 30px; height: 30px; text-align: center; cursor: pointer; border-radius: 100%; background: #805827; color: #fff; font-size: 24px; line-height: 30px }
.close-popup i { font-size: 10px; line-height: 30px }
.popup-content { float: left; width: 100% }
@media only screen and (max-width:960px) { .popup-wrapper, .popup-wrapper2 { width: 90% } }
.close-popup .iconlvn-remove { display: inline-block; width: 14px; height: 14px; position: relative; }
.close-popup .iconlvn-remove::before, .close-popup .iconlvn-remove::after { content: ''; position: absolute; top: 0; left: 6px; width: 2px; height: 14px; background: white; }
.close-popup .iconlvn-remove::before { transform: rotate(45deg); }
.close-popup .iconlvn-remove::after { transform: rotate(-45deg); }
#authPopup ._iframe { width: 100%; }
._iframe { float: left; width: 100%; min-height: 300px; }
#authPopup ._iframe { transition: height .3s ease-in-out; }
.loading-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(255, 255, 255, .8); align-items: center; display: flex; justify-content: center; z-index: 1; transition: opacity .3s ease; }
#authPopup .loading-spinner { border: 4px solid rgba(0, 0, 0, 0.1); border-left: 4px solid #333; border-radius: 50%; width: 40px; height: 40px; animation: spin 1s linear infinite; }
iframe.loaded ~ .loading-overlay { opacity: 0; pointer-events: none; }
._iframe { float: left; width: 100%; min-height: 300px; }
.loading-spinner { width: 24px; height: 24px; display: inline-flex; align-items: center; justify-content: center; animation: spinner-rotate 1.4s linear infinite; }
.loading-spinner svg { width: 24px; height: 24px; }
.loading-spinner .path { stroke: #a67c52; stroke-width: 3; stroke-linecap: round; fill: none; stroke-dasharray: 90, 200; stroke-dashoffset: 0; animation: spinner-dash 1.4s linear infinite; }
@keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }
@keyframes spinner-dash { 0% { stroke-dasharray: 1, 200; stroke-dashoffset: 0; } 50% { stroke-dasharray: 90, 200; stroke-dashoffset: -45; } 100% { stroke-dasharray: 90, 200; stroke-dashoffset: -135; } }
@keyframes spinner-rotate { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }

/* Khối quảng cáo: căn giữa như LawsVN v2/main.css */
.section-lvn, .sidebar-lvn { float: left; width: 100%; position: relative; text-align: center; }

/* Ô "Hiển thị: N kết quả" của phân trang: mũi tên nhúng data-URI, không phụ thuộc /Images/arow2.svg (Nginx có thể không trỏ về app này) */
.pag-select .select { -webkit-appearance: none; -moz-appearance: none; appearance: none; padding: 0 22px 0 8px; background: #f7f7f7 url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='-3.75 -5.5 18 18'><path fill='%23666' d='M0.25,1l5,5l5-5H0.25z'/></svg>") no-repeat right 4px top 50%; background-size: 14px }
