/**
 * ShopsViettel CLEAN18 Theme Final - 20260618
 * Header/menu/content/footer cùng trục, footer sạch, mobile gọn.
 */
:root{
    --shops-red:#ed002b;
    --shops-red-dark:#c40021;
    --shops-text:#161b22;
    --shops-muted:#5f6b7a;
    --shops-border:#e8edf3;
    --shops-bg:#f4f6f8;
    --shops-white:#ffffff;
    --shops-container:1200px;
    --shops-radius:14px;
    --shops-shadow:0 10px 30px rgba(15,23,42,.08);
}

html{scroll-behavior:smooth;}
body{
    background:var(--shops-bg)!important;
    color:var(--shops-text)!important;
    font-family:Roboto,Arial,sans-serif!important;
    overflow-x:hidden!important;
}
body.custom-background{background:var(--shops-bg)!important;}
*,*:before,*:after{box-sizing:border-box;}

/* ===== Common container alignment ===== */
.inner,
.shops-lang-topbar-inner,
.shops-header-inner,
.shops-menu-inner,
.shops-home-inner,
.shops-single-inner,
.shops-clean-footer-inner,
.site-main > .outer > .inner,
.outer.page > .inner,
.outer.dinhvi > .inner{
    width:100%!important;
    max-width:var(--shops-container)!important;
    margin-left:auto!important;
    margin-right:auto!important;
}

.outer,
.outer.header,
.outer.menu,
.outer.page,
.outer.dinhvi,
.outer.footer{
    width:100%!important;
    background:transparent!important;
}

/* ===== Header ===== */
.shops-site-header,
.shops-clean18-header{
    background:transparent!important;
    position:relative!important;
    z-index:9999!important;
}

.shops-lang-topbar{
    background:transparent!important;
    padding:6px 10px 0!important;
}
.shops-lang-topbar-inner{
    min-height:30px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    background:#fff!important;
    border-top:3px solid var(--shops-red)!important;
    border-radius:0!important;
    box-shadow:none!important;
    padding:4px 10px!important;
}
.shops-language-flags,
.shops-language-switcher{
    display:flex!important;
    flex-wrap:wrap!important;
    justify-content:center!important;
    align-items:center!important;
    gap:7px!important;
    margin:0!important;
    padding:0!important;
}
.shops-lang-item{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-width:34px!important;
    height:24px!important;
    padding:0 6px!important;
    border:1px solid #e2e8f0!important;
    border-radius:5px!important;
    background:#fff!important;
    text-decoration:none!important;
    box-shadow:0 2px 6px rgba(15,23,42,.08)!important;
}
.shops-lang-label{display:none!important;}
.shops-lang-flag{font-size:15px!important;line-height:1!important;}

.shops-header-main{
    padding:0 10px!important;
    background:transparent!important;
}
.shops-header-inner{
    background:#fff!important;
    border-radius:0!important;
    box-shadow:none!important;
    overflow:visible!important;
}
.shops-clean18-header-grid,
.shops-header-grid{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:24px!important;
    min-height:108px!important;
    padding:20px 28px!important;
    background:#fff!important;
}
.shops-logo-wrap,
.shops-clean18-header-grid .logo{
    float:none!important;
    width:auto!important;
    max-width:46%!important;
    margin:0!important;
    padding:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    background:transparent!important;
}
.shops-logo-wrap a{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    background:#fff!important;
    padding:8px 14px!important;
    border-radius:12px!important;
    box-shadow:0 5px 16px rgba(15,23,42,.08)!important;
}
.shops-logo-wrap img{
    display:block!important;
    width:auto!important;
    max-width:300px!important;
    max-height:78px!important;
    height:auto!important;
    margin:0!important;
}
.shops-header-tools{
    float:none!important;
    flex:0 1 380px!important;
    max-width:420px!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
    background:transparent!important;
}
.shops-clean-search{
    display:flex!important;
    align-items:center!important;
    width:100%!important;
    height:46px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:999px!important;
    background:#fff!important;
    box-shadow:0 8px 22px rgba(15,23,42,.10)!important;
    overflow:hidden!important;
}
.shops-clean-search input[type="search"]{
    flex:1 1 auto!important;
    min-width:0!important;
    height:100%!important;
    margin:0!important;
    padding:0 18px!important;
    border:0!important;
    outline:0!important;
    background:#fff!important;
    color:#333!important;
    font-size:14px!important;
    line-height:46px!important;
    box-shadow:none!important;
}
.shops-clean-search button[type="submit"]{
    flex:0 0 58px!important;
    width:58px!important;
    height:100%!important;
    margin:0!important;
    border:0!important;
    border-radius:0!important;
    background:var(--shops-red)!important;
    color:#fff!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    box-shadow:none!important;
    cursor:pointer!important;
}
.shops-clean-search button i{color:#fff!important;font-size:16px!important;}

/* ===== Horizontal menu same axis as content ===== */
.shops-menu-outer,
.outer.menu.shops-menu-outer{
    position:sticky!important;
    top:0!important;
    z-index:9998!important;
    padding:0 10px!important;
    background:transparent!important;
    box-shadow:none!important;
}
body.admin-bar .shops-menu-outer{top:32px!important;}
.shops-menu-inner,
.outer.menu > .inner{
    background:var(--shops-red)!important;
    border-radius:0!important;
    min-height:46px!important;
    box-shadow:0 8px 20px rgba(15,23,42,.14)!important;
    overflow:visible!important;
}
.shops-main-menu-row{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    min-height:46px!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
    background:var(--shops-red)!important;
}
.shops-menu-home,
.icon-home.shops-menu-home{
    flex:0 0 52px!important;
    width:52px!important;
    min-height:46px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    color:#fff!important;
    background:var(--shops-red-dark)!important;
    text-decoration:none!important;
}
.shops-horizontal-menu,
.wmenu.shops-horizontal-menu{
    display:block!important;
    flex:1 1 auto!important;
    width:auto!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
}
.shops-horizontal-menu .menu-menu-chinh-container,
.wmenu .menu-menu-chinh-container{
    position:static!important;
    left:auto!important;
    top:auto!important;
    width:auto!important;
    height:auto!important;
    min-height:0!important;
    background:transparent!important;
    text-align:left!important;
    overflow:visible!important;
    z-index:auto!important;
    transition:none!important;
}
.ul-menu,
#menu-menu-chinh{
    float:none!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    flex-wrap:nowrap!important;
    gap:0!important;
    width:auto!important;
    height:46px!important;
    margin:0!important;
    padding:0!important;
    list-style:none!important;
    background:transparent!important;
}
.ul-menu > li,
#menu-menu-chinh > li{
    float:none!important;
    display:block!important;
    margin:0!important;
    padding:0!important;
    position:relative!important;
    list-style:none!important;
}
.ul-menu > li > a,
#menu-menu-chinh > li > a{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:46px!important;
    padding:0 17px!important;
    color:#fff!important;
    font-size:13px!important;
    font-weight:700!important;
    line-height:1.2!important;
    text-transform:uppercase!important;
    text-decoration:none!important;
    white-space:nowrap!important;
    background:transparent!important;
}
.ul-menu > li:hover > a,
#menu-menu-chinh > li:hover > a{
    background:var(--shops-red-dark)!important;
    color:#fff!important;
}
.ul-menu .sub-menu,
#menu-menu-chinh .sub-menu{
    position:absolute!important;
    left:0!important;
    top:100%!important;
    min-width:230px!important;
    display:none!important;
    background:#fff!important;
    padding:6px 0!important;
    margin:0!important;
    border:1px solid var(--shops-border)!important;
    box-shadow:0 10px 28px rgba(15,23,42,.14)!important;
    z-index:10000!important;
}
.ul-menu li:hover > .sub-menu,
#menu-menu-chinh li:hover > .sub-menu{display:block!important;}
.ul-menu .sub-menu a,
#menu-menu-chinh .sub-menu a{
    display:block!important;
    color:#222!important;
    padding:10px 14px!important;
    background:#fff!important;
    text-transform:none!important;
    font-weight:600!important;
    font-size:13px!important;
    text-decoration:none!important;
}
.ul-menu .sub-menu a:hover,
#menu-menu-chinh .sub-menu a:hover{background:#fff4f5!important;color:var(--shops-red)!important;}

/* ===== Content axis ===== */
.shops-single-page-wrap,
.content-area,
.site-main{
    width:100%!important;
    margin:0!important;
    padding:0!important;
    background:transparent!important;
}
.shops-single-outer,
.shops-home-outer{
    padding:22px 10px 0!important;
    background:transparent!important;
}
.shops-single-inner,
.shops-home-inner,
.outer.page > .inner,
.outer.dinhvi > .inner{
    background:#fff!important;
    border-radius:0!important;
    box-shadow:0 2px 18px rgba(15,23,42,.04)!important;
    padding:22px 26px!important;
    overflow:visible!important;
}
.shops-single-layout{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 320px!important;
    gap:28px!important;
    align-items:start!important;
    width:100%!important;
    margin:0!important;
}
.shops-single-content,
.shops-post-content{
    min-width:0!important;
    width:100%!important;
}
.shops-single-sidebar{
    width:100%!important;
    min-width:0!important;
}
.title-page{
    margin:8px auto 24px!important;
    color:var(--shops-red)!important;
    font-size:22px!important;
    line-height:1.35!important;
    text-align:center!important;
    text-transform:uppercase!important;
    font-weight:800!important;
}
.title-page:after{border-color:var(--shops-red)!important;}
.shops-post-content img,
.shops-home-content img{
    max-width:100%!important;
    height:auto!important;
}
.shops-post-content table,
.shops-home-content table{
    width:100%!important;
    table-layout:auto!important;
}

/* Home blocks like Viettelnet: clean cards, images aligned */
.shops-home-content{
    width:100%!important;
    margin:0 auto!important;
    text-align:center!important;
}
.shops-home-content .vc_row,
.shops-home-content .wpb_row{
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
}
.shops-home-content .wpb_column,
.shops-home-content .vc_column_container{
    float:left!important;
    box-sizing:border-box!important;
}
.shops-home-content h1,
.shops-home-content h2,
.shops-home-section-title{
    color:var(--shops-red)!important;
    text-align:center!important;
    text-transform:uppercase!important;
    font-weight:800!important;
    line-height:1.35!important;
}
.shops-home-content a,
.shops-home-news-wrap a,
.shops-home-authors a{
    color:#111!important;
    text-decoration:none!important;
}
.shops-home-content a:hover,
.shops-home-news-wrap a:hover,
.shops-home-authors a:hover{color:var(--shops-red)!important;}
.shops-home-news-wrap,
.shops-home-authors{
    margin:36px 0 0!important;
    padding:0!important;
}
.shops-home-news-grid,
.shops-author-grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:28px!important;
    align-items:start!important;
}
.shops-author-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
.shops-author-card{
    background:#fff!important;
    border:1px solid var(--shops-border)!important;
    border-radius:10px!important;
    padding:14px!important;
    box-shadow:0 6px 18px rgba(15,23,42,.05)!important;
    text-align:center!important;
}
.shops-author-card img{width:100%!important;height:auto!important;max-width:260px!important;margin:0 auto 12px!important;}

/* ===== Clean footer, no red-on-red / no broken WPBakery footer ===== */
.shops-clean-footer{
    background:transparent!important;
    padding:34px 10px 0!important;
    margin:0!important;
    color:var(--shops-text)!important;
}
.shops-clean-footer-inner{
    background:#fff!important;
    border-radius:14px 14px 0 0!important;
    box-shadow:var(--shops-shadow)!important;
    overflow:hidden!important;
    padding:0!important;
}
.shops-footer-offices,
.shops-footer-links{
    display:grid!important;
    gap:24px!important;
    padding:28px!important;
    background:#fff!important;
}
.shops-footer-offices{grid-template-columns:repeat(2,minmax(0,1fr))!important;border-bottom:1px solid var(--shops-border)!important;}
.shops-footer-links{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
.shops-footer-office-card,
.shops-footer-link-card{
    min-width:0!important;
    color:var(--shops-text)!important;
    background:#fff!important;
}
.shops-clean-footer h2{
    margin:0 0 14px!important;
    padding:0 0 8px!important;
    color:var(--shops-red)!important;
    font-size:18px!important;
    line-height:1.3!important;
    text-transform:uppercase!important;
    font-weight:800!important;
    border-bottom:2px solid var(--shops-red)!important;
    display:inline-block!important;
}
.shops-clean-footer p{
    margin:0 0 9px!important;
    color:var(--shops-text)!important;
    font-size:14px!important;
    line-height:1.65!important;
}
.shops-clean-footer i{color:var(--shops-red)!important;margin-right:6px!important;}
.shops-clean-footer a{
    color:var(--shops-red)!important;
    text-decoration:none!important;
    font-weight:600!important;
}
.shops-clean-footer a:hover{text-decoration:underline!important;}
.shops-clean-footer ul{
    list-style:none!important;
    margin:0!important;
    padding:0!important;
}
.shops-clean-footer li{
    display:block!important;
    margin:0 0 10px!important;
    padding:0!important;
    color:var(--shops-text)!important;
    line-height:1.55!important;
}
.shops-clean-footer li:before{
    content:'»'!important;
    display:inline-block!important;
    margin-right:7px!important;
    color:var(--shops-red)!important;
    font-weight:800!important;
}
.shops-footer-map iframe{
    display:block!important;
    width:100%!important;
    height:210px!important;
    border:1px solid var(--shops-border)!important;
    border-radius:8px!important;
    margin-top:12px!important;
}
.shops-footer-copyright{
    padding:18px 24px 22px!important;
    text-align:center!important;
    background:var(--shops-red)!important;
    color:#fff!important;
}
.shops-footer-copyright p{
    margin:4px 0!important;
    color:#fff!important;
    font-size:13px!important;
    line-height:1.5!important;
}

/* Hide old wpDiscuz/rating if a plugin still injects it */
#wpdcom,
#comments,
.comments-area,
#respond,
.wpd-rating,
#wpd-post-rating,
.wpdiscuz-post-rating-wrap,
.post-ratings{display:none!important;visibility:hidden!important;height:0!important;overflow:hidden!important;}

/* Mobile bottom bar */
.shops-theme-mobile-bottom-bar{
    display:none!important;
    position:fixed!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    z-index:100000!important;
    background:#fff!important;
    border-top:1px solid var(--shops-border)!important;
    box-shadow:0 -8px 20px rgba(15,23,42,.10)!important;
}
.shops-bottom-item{
    flex:1 1 20%!important;
    min-width:0!important;
    height:56px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:3px!important;
    color:var(--shops-red)!important;
    text-decoration:none!important;
    font-weight:700!important;
    font-size:10px!important;
}
.shops-bottom-call{background:var(--shops-red)!important;color:#fff!important;border-radius:999px!important;height:62px!important;margin-top:-14px!important;}
.shops-bottom-call *{color:#fff!important;}
.shops-bottom-icon{font-size:16px!important;line-height:1!important;}
.shops-zalo-icon,.shops-sms-icon{font-size:11px!important;font-weight:800!important;}

/* Mobile drawer */
#shops-mobile-drawer{
    position:fixed!important;
    top:0!important;
    left:-86vw!important;
    width:86vw!important;
    max-width:360px!important;
    height:100vh!important;
    z-index:100001!important;
    background:var(--shops-red)!important;
    overflow-y:auto!important;
    padding:54px 0 28px!important;
    transition:left .25s ease!important;
    box-shadow:10px 0 28px rgba(15,23,42,.25)!important;
}
#shops-mobile-drawer.shops-mobile-drawer-open{left:0!important;}
#shops-mobile-drawer .shops-mobile-drawer-close{
    position:absolute!important;
    top:10px!important;
    right:12px!important;
    width:34px!important;
    height:34px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    background:#fff!important;
    color:var(--shops-red)!important;
    border:0!important;
    border-radius:50%!important;
    font-size:18px!important;
}
#shops-mobile-drawer ul{list-style:none!important;margin:0!important;padding:0!important;}
#shops-mobile-drawer li{display:block!important;margin:0!important;padding:0!important;border-bottom:1px solid rgba(255,255,255,.16)!important;}
#shops-mobile-drawer a{display:block!important;color:#fff!important;text-decoration:none!important;padding:13px 18px!important;font-weight:700!important;font-size:14px!important;text-transform:uppercase!important;}
#shops-mobile-drawer .sub-menu{display:none!important;background:rgba(0,0,0,.10)!important;}
#shops-mobile-drawer .active > .sub-menu{display:block!important;}

@media (max-width:1220px){
    :root{--shops-container:calc(100vw - 32px);}
}
@media (max-width:991px){
    body{padding-bottom:64px!important;}
    body.admin-bar .shops-menu-outer{top:46px!important;}
    .shops-clean18-header-grid,
    .shops-header-grid{
        flex-direction:column!important;
        align-items:center!important;
        justify-content:center!important;
        gap:12px!important;
        min-height:0!important;
        padding:16px 14px!important;
    }
    .shops-logo-wrap,
    .shops-clean18-header-grid .logo{
        max-width:100%!important;
        width:100%!important;
        justify-content:center!important;
        flex-basis:auto!important;
    }
    .shops-logo-wrap img{max-width:220px!important;max-height:64px!important;}
    .shops-header-tools{max-width:420px!important;flex-basis:auto!important;width:100%!important;}
    .shops-clean-search{height:42px!important;}
    .shops-clean-search input[type="search"]{font-size:14px!important;line-height:42px!important;}
    .shops-clean-search button[type="submit"]{flex-basis:52px!important;width:52px!important;}
    .shops-menu-outer{padding:0!important;}
    .shops-menu-inner{max-width:100%!important;width:100%!important;border-radius:0!important;}
    .shops-main-menu-row{overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;}
    .shops-horizontal-menu .menu-menu-chinh-container,
    .wmenu .menu-menu-chinh-container{display:block!important;position:static!important;left:auto!important;width:auto!important;height:auto!important;background:transparent!important;}
    .ul-menu,#menu-menu-chinh{height:42px!important;overflow:visible!important;min-width:max-content!important;}
    .ul-menu > li > a,#menu-menu-chinh > li > a{min-height:42px!important;padding:0 13px!important;font-size:12px!important;}
    .shops-menu-home{min-height:42px!important;flex-basis:46px!important;width:46px!important;}
    .shops-single-outer,.shops-home-outer{padding:14px 8px 0!important;}
    .shops-single-inner,.shops-home-inner,.outer.page > .inner,.outer.dinhvi > .inner{padding:16px 12px!important;}
    .shops-single-layout{grid-template-columns:1fr!important;gap:18px!important;}
    .shops-footer-offices,.shops-footer-links{grid-template-columns:1fr!important;padding:18px!important;gap:18px!important;}
    .shops-home-news-grid,.shops-author-grid{grid-template-columns:1fr!important;gap:18px!important;}
    .shops-theme-mobile-bottom-bar{display:flex!important;}
}
@media (max-width:560px){
    :root{--shops-container:100%;}
    .shops-lang-topbar{padding:0!important;}
    .shops-lang-topbar-inner{border-radius:0!important;border-top-width:2px!important;}
    .shops-header-main{padding:0!important;}
    .shops-header-inner{border-radius:0!important;}
    .shops-clean18-header-grid{padding:14px 10px!important;}
    .shops-logo-wrap a{padding:6px 10px!important;}
    .shops-logo-wrap img{max-width:190px!important;}
    .title-page{font-size:18px!important;margin-bottom:18px!important;}
    .shops-clean-footer{padding:22px 0 0!important;}
    .shops-clean-footer-inner{border-radius:0!important;box-shadow:none!important;}
    .shops-clean-footer h2{font-size:16px!important;}
    .shops-clean-footer p,.shops-clean-footer li{font-size:13px!important;}
}


/* =========================================================
 * ShopsViettel CLEAN19 - Sticky menu + sidebar color polish
 * 20260618
 * Mục tiêu: menu ngang không mất khi cuộn, canh đúng trục nội dung;
 * sidebar nền trắng chữ đỏ, không còn nền xanh lơ/đỏ chữ đỏ.
 * ========================================================= */

/* Menu sticky bằng class JS, không phụ thuộc sticky trong header parent */
.shops-menu-placeholder{
    display:block!important;
    width:100%!important;
    height:0!important;
    margin:0!important;
    padding:0!important;
    background:transparent!important;
}
.shops-menu-outer.shops-menu-is-fixed,
.outer.menu.shops-menu-outer.shops-menu-is-fixed{
    position:fixed!important;
    left:0!important;
    right:0!important;
    top:0!important;
    z-index:100000!important;
    width:100%!important;
    padding:0 10px!important;
    margin:0!important;
    background:transparent!important;
    box-shadow:none!important;
    transform:none!important;
}
body.admin-bar .shops-menu-outer.shops-menu-is-fixed{
    top:32px!important;
}
.shops-menu-outer.shops-menu-is-fixed .shops-menu-inner,
.outer.menu.shops-menu-outer.shops-menu-is-fixed > .inner{
    width:100%!important;
    max-width:var(--shops-container)!important;
    margin-left:auto!important;
    margin-right:auto!important;
    background:var(--shops-red)!important;
    box-shadow:0 8px 22px rgba(15,23,42,.18)!important;
}
.shops-menu-outer.shops-menu-is-fixed .shops-main-menu-row{
    background:var(--shops-red)!important;
}

/* Đảm bảo menu ngang luôn hiện đúng trên desktop và có kéo ngang gọn trên mobile */
.shops-menu-outer,
.outer.menu.shops-menu-outer{
    z-index:99990!important;
}
.shops-menu-inner,
.outer.menu > .inner{
    overflow:visible!important;
}
.shops-main-menu-row{
    overflow:visible!important;
}
.shops-horizontal-menu,
.wmenu.shops-horizontal-menu{
    overflow:visible!important;
}

/* Sidebar: nền trắng, tiêu đề chữ đỏ, bỏ xanh lơ/đỏ chữ đỏ */
.shops-single-sidebar,
.shops-single-sidebar *{
    text-shadow:none!important;
}
.shops-single-sidebar .widget,
.shops-single-sidebar .box,
.shops-single-sidebar .sidebar-box,
.shops-single-sidebar .shops-sidebar-box,
.shops-single-sidebar .textwidget,
.shops-single-sidebar .wpb_wrapper,
.shops-single-sidebar .vc_column-inner,
.sidebar .widget,
.right .widget,
.right-sidebar .widget{
    background:#fff!important;
    color:var(--shops-text)!important;
}
.shops-single-sidebar .widget,
.shops-single-sidebar .box,
.shops-single-sidebar .shops-sidebar-box,
.sidebar .widget,
.right .widget,
.right-sidebar .widget{
    border:1px solid var(--shops-border)!important;
    border-radius:12px!important;
    overflow:hidden!important;
    box-shadow:0 8px 20px rgba(15,23,42,.06)!important;
    margin-bottom:18px!important;
}
.shops-single-sidebar .widget-title,
.shops-single-sidebar .title,
.shops-single-sidebar .box-title,
.shops-single-sidebar .shops-sidebar-title,
.shops-single-sidebar h2,
.shops-single-sidebar h3,
.shops-single-sidebar h4,
.sidebar .widget-title,
.right .widget-title,
.right-sidebar .widget-title{
    display:block!important;
    width:100%!important;
    margin:0!important;
    padding:12px 14px!important;
    background:#fff!important;
    color:var(--shops-red)!important;
    border:0!important;
    border-bottom:2px solid var(--shops-red)!important;
    border-radius:0!important;
    font-size:15px!important;
    line-height:1.35!important;
    font-weight:800!important;
    text-align:center!important;
    text-transform:uppercase!important;
}
.shops-single-sidebar .widget-title *,
.shops-single-sidebar .title *,
.shops-single-sidebar .box-title *,
.shops-single-sidebar .shops-sidebar-title *,
.shops-single-sidebar h2 *,
.shops-single-sidebar h3 *,
.shops-single-sidebar h4 *,
.sidebar .widget-title *,
.right .widget-title *,
.right-sidebar .widget-title *{
    color:var(--shops-red)!important;
    background:transparent!important;
}

/* Các khối CTA/số điện thoại trong sidebar: trắng + viền đỏ, không xanh lơ */
.shops-single-sidebar .contact,
.shops-single-sidebar .contact-box,
.shops-single-sidebar .box-contact,
.shops-single-sidebar .hotline,
.shops-single-sidebar .phone,
.shops-single-sidebar .support,
.shops-single-sidebar .item-register,
.shops-single-sidebar .btn,
.shops-single-sidebar button,
.shops-single-sidebar input[type="submit"],
.shops-single-sidebar a.button,
.shops-single-sidebar a.btn,
.shops-single-sidebar div[style*="background:#009"],
.shops-single-sidebar div[style*="background: #009"],
.shops-single-sidebar div[style*="background:#00"],
.shops-single-sidebar div[style*="background: #00"],
.shops-single-sidebar div[style*="background-color:#009"],
.shops-single-sidebar div[style*="background-color: #009"],
.shops-single-sidebar div[style*="background-color:#00"],
.shops-single-sidebar div[style*="background-color: #00"],
.sidebar div[style*="background:#009"],
.sidebar div[style*="background: #009"],
.sidebar div[style*="background:#00"],
.sidebar div[style*="background: #00"]{
    background:#fff!important;
    color:var(--shops-red)!important;
    border-color:var(--shops-red)!important;
}
.shops-single-sidebar .contact *,
.shops-single-sidebar .contact-box *,
.shops-single-sidebar .box-contact *,
.shops-single-sidebar .hotline *,
.shops-single-sidebar .phone *,
.shops-single-sidebar .support *,
.shops-single-sidebar .item-register *,
.shops-single-sidebar .btn *,
.shops-single-sidebar button *,
.shops-single-sidebar a.button *,
.shops-single-sidebar a.btn *,
.shops-single-sidebar div[style*="background:#009"] *,
.shops-single-sidebar div[style*="background: #009"] *,
.shops-single-sidebar div[style*="background:#00"] *,
.shops-single-sidebar div[style*="background: #00"] *{
    color:var(--shops-red)!important;
}
.shops-single-sidebar a,
.sidebar a,
.right a,
.right-sidebar a{
    color:var(--shops-red)!important;
}
.shops-single-sidebar a:hover,
.sidebar a:hover,
.right a:hover,
.right-sidebar a:hover{
    color:var(--shops-red-dark)!important;
    text-decoration:underline!important;
}
.shops-single-sidebar img,
.sidebar img,
.right img,
.right-sidebar img{
    display:block!important;
    max-width:100%!important;
    height:auto!important;
    margin-left:auto!important;
    margin-right:auto!important;
}

/* Sửa riêng trường hợp tiêu đề đỏ chữ đỏ như "Thiết bị giám sát hành trình" */
.shops-single-sidebar [style*="color: #ff0000"],
.shops-single-sidebar [style*="color:#ff0000"],
.shops-single-sidebar [style*="color: red"],
.shops-single-sidebar [style*="color:red"]{
    color:var(--shops-red)!important;
}
.shops-single-sidebar [style*="background: #ff0000"],
.shops-single-sidebar [style*="background:#ff0000"],
.shops-single-sidebar [style*="background-color: #ff0000"],
.shops-single-sidebar [style*="background-color:#ff0000"],
.shops-single-sidebar [style*="background: red"],
.shops-single-sidebar [style*="background:red"]{
    background:#fff!important;
    color:var(--shops-red)!important;
    border:1px solid var(--shops-red)!important;
}
.shops-single-sidebar [style*="background: #ff0000"] *,
.shops-single-sidebar [style*="background:#ff0000"] *,
.shops-single-sidebar [style*="background-color: #ff0000"] *,
.shops-single-sidebar [style*="background-color:#ff0000"] *,
.shops-single-sidebar [style*="background: red"] *,
.shops-single-sidebar [style*="background:red"] *{
    color:var(--shops-red)!important;
}

@media (max-width:991px){
    body.admin-bar .shops-menu-outer.shops-menu-is-fixed{top:46px!important;}
    .shops-menu-outer.shops-menu-is-fixed,
    .outer.menu.shops-menu-outer.shops-menu-is-fixed{
        padding:0!important;
    }
    .shops-menu-outer.shops-menu-is-fixed .shops-menu-inner{
        max-width:100%!important;
        border-radius:0!important;
    }
    .shops-menu-outer.shops-menu-is-fixed .shops-main-menu-row{
        overflow-x:auto!important;
        -webkit-overflow-scrolling:touch!important;
    }
}
@media (max-width:782px){
    body.admin-bar .shops-menu-outer.shops-menu-is-fixed{top:46px!important;}
}


/* =========================================================
 * ShopsViettel CLEAN20 - Fixed horizontal menu final
 * 20260618
 * Sửa triệt để menu ngang không cố định khi cuộn.
 * Hỗ trợ cả class mới trên menu và class cũ trên body.
 * ========================================================= */
#shops-menu-fixed-placeholder{
    display:block!important;
    width:100%!important;
    height:0;
    margin:0!important;
    padding:0!important;
    background:transparent!important;
    clear:both!important;
}
#shops-site-header .shops-menu-outer,
.shops-menu-outer,
.outer.menu{
    position:relative!important;
    z-index:99990!important;
}
#shops-site-header .shops-menu-outer.shops-menu-fixed-active,
#shops-site-header .shops-menu-outer.shops-menu-is-fixed,
.shops-menu-outer.shops-menu-fixed-active,
.shops-menu-outer.shops-menu-is-fixed,
.outer.menu.shops-menu-fixed-active,
.outer.menu.shops-menu-is-fixed,
body.shops-menu-is-fixed #shops-site-header .shops-menu-outer,
body.shops-menu-fixed-active #shops-site-header .shops-menu-outer{
    position:fixed!important;
    top:var(--shops-menu-fixed-top, 0px)!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0 12px!important;
    z-index:2147483000!important;
    background:transparent!important;
    box-shadow:none!important;
    transform:none!important;
    overflow:visible!important;
}
#shops-site-header .shops-menu-outer.shops-menu-fixed-active > .inner,
#shops-site-header .shops-menu-outer.shops-menu-is-fixed > .inner,
.shops-menu-outer.shops-menu-fixed-active > .inner,
.shops-menu-outer.shops-menu-is-fixed > .inner,
.outer.menu.shops-menu-fixed-active > .inner,
.outer.menu.shops-menu-is-fixed > .inner,
body.shops-menu-is-fixed #shops-site-header .shops-menu-outer > .inner,
body.shops-menu-fixed-active #shops-site-header .shops-menu-outer > .inner{
    width:100%!important;
    max-width:var(--shops-container, 1200px)!important;
    margin-left:auto!important;
    margin-right:auto!important;
    background:var(--shops-red, #e60012)!important;
    box-shadow:0 10px 24px rgba(15,23,42,.18)!important;
    border-radius:0!important;
}
#shops-site-header .shops-menu-outer.shops-menu-fixed-active .shops-main-menu-row,
#shops-site-header .shops-menu-outer.shops-menu-is-fixed .shops-main-menu-row,
.shops-menu-outer.shops-menu-fixed-active .shops-main-menu-row,
.shops-menu-outer.shops-menu-is-fixed .shops-main-menu-row,
body.shops-menu-is-fixed #shops-site-header .shops-main-menu-row,
body.shops-menu-fixed-active #shops-site-header .shops-main-menu-row{
    display:flex!important;
    align-items:center!important;
    width:100%!important;
    min-height:44px!important;
    background:var(--shops-red, #e60012)!important;
    overflow:visible!important;
}
#shops-site-header .shops-menu-outer.shops-menu-fixed-active .shops-horizontal-menu,
#shops-site-header .shops-menu-outer.shops-menu-is-fixed .shops-horizontal-menu,
.shops-menu-outer.shops-menu-fixed-active .shops-horizontal-menu,
.shops-menu-outer.shops-menu-is-fixed .shops-horizontal-menu,
body.shops-menu-is-fixed #shops-site-header .shops-horizontal-menu,
body.shops-menu-fixed-active #shops-site-header .shops-horizontal-menu{
    flex:1 1 auto!important;
    min-width:0!important;
}
@media (max-width:991px){
    #shops-site-header .shops-menu-outer.shops-menu-fixed-active,
    #shops-site-header .shops-menu-outer.shops-menu-is-fixed,
    .shops-menu-outer.shops-menu-fixed-active,
    .shops-menu-outer.shops-menu-is-fixed,
    .outer.menu.shops-menu-fixed-active,
    .outer.menu.shops-menu-is-fixed,
    body.shops-menu-is-fixed #shops-site-header .shops-menu-outer,
    body.shops-menu-fixed-active #shops-site-header .shops-menu-outer{
        padding:0!important;
    }
    #shops-site-header .shops-menu-outer.shops-menu-fixed-active > .inner,
    #shops-site-header .shops-menu-outer.shops-menu-is-fixed > .inner,
    .shops-menu-outer.shops-menu-fixed-active > .inner,
    .shops-menu-outer.shops-menu-is-fixed > .inner,
    body.shops-menu-is-fixed #shops-site-header .shops-menu-outer > .inner,
    body.shops-menu-fixed-active #shops-site-header .shops-menu-outer > .inner{
        max-width:100%!important;
        border-radius:0!important;
    }
    #shops-site-header .shops-menu-outer.shops-menu-fixed-active .shops-main-menu-row,
    #shops-site-header .shops-menu-outer.shops-menu-is-fixed .shops-main-menu-row,
    .shops-menu-outer.shops-menu-fixed-active .shops-main-menu-row,
    .shops-menu-outer.shops-menu-is-fixed .shops-main-menu-row,
    body.shops-menu-is-fixed #shops-site-header .shops-main-menu-row,
    body.shops-menu-fixed-active #shops-site-header .shops-main-menu-row{
        overflow-x:auto!important;
        -webkit-overflow-scrolling:touch!important;
        white-space:nowrap!important;
    }
    #shops-site-header .shops-menu-outer.shops-menu-fixed-active .ul-menu,
    #shops-site-header .shops-menu-outer.shops-menu-is-fixed .ul-menu,
    .shops-menu-outer.shops-menu-fixed-active .ul-menu,
    .shops-menu-outer.shops-menu-is-fixed .ul-menu,
    body.shops-menu-is-fixed #shops-site-header .ul-menu,
    body.shops-menu-fixed-active #shops-site-header .ul-menu{
        display:flex!important;
        flex-wrap:nowrap!important;
        white-space:nowrap!important;
    }
}


/* =========================================================
 * ShopsViettel CLEAN21 - Body-level sticky menu final
 * 20260618
 * Menu được đưa ra body khi fixed để không bị giới hạn bởi header/parent.
 * ========================================================= */
#shops-menu-fixed-placeholder{
    display:block!important;
    width:100%!important;
    height:0;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    clear:both!important;
}
body .shops-menu-outer.shops-menu-fixed-active,
body .shops-menu-outer.shops-menu-is-fixed,
html.shops-menu-is-fixed body .shops-menu-outer.shops-menu-outer,
html.shops-menu-fixed-active body .shops-menu-outer.shops-menu-outer{
    position:fixed!important;
    top:var(--shops-menu-fixed-top, 0px)!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    z-index:999999!important;
    background:#e60012!important;
    box-shadow:0 8px 22px rgba(15,23,42,.18)!important;
    transform:none!important;
    opacity:1!important;
    visibility:visible!important;
}
body .shops-menu-outer.shops-menu-fixed-active > .inner,
body .shops-menu-outer.shops-menu-is-fixed > .inner{
    width:100%!important;
    max-width:var(--shops-container, 1200px)!important;
    margin:0 auto!important;
    padding:0!important;
    background:#e60012!important;
    border-radius:0!important;
}
body .shops-menu-outer.shops-menu-fixed-active .shops-main-menu-row,
body .shops-menu-outer.shops-menu-is-fixed .shops-main-menu-row{
    display:flex!important;
    align-items:center!important;
    min-height:46px!important;
    background:#e60012!important;
    white-space:nowrap!important;
    overflow:visible!important;
}
body .shops-menu-outer.shops-menu-fixed-active .shops-horizontal-menu,
body .shops-menu-outer.shops-menu-is-fixed .shops-horizontal-menu{
    flex:1 1 auto!important;
    min-width:0!important;
}
body .shops-menu-outer.shops-menu-fixed-active .ul-menu,
body .shops-menu-outer.shops-menu-is-fixed .ul-menu{
    display:flex!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    margin:0!important;
    padding:0!important;
}
body .shops-menu-outer.shops-menu-fixed-active .ul-menu > li,
body .shops-menu-outer.shops-menu-is-fixed .ul-menu > li{
    float:none!important;
    display:block!important;
}
body .shops-menu-outer.shops-menu-fixed-active .ul-menu > li > a,
body .shops-menu-outer.shops-menu-is-fixed .ul-menu > li > a,
body .shops-menu-outer.shops-menu-fixed-active .shops-menu-home,
body .shops-menu-outer.shops-menu-is-fixed .shops-menu-home{
    display:flex!important;
    align-items:center!important;
    min-height:46px!important;
    color:#fff!important;
}
@media (max-width:991px){
    body .shops-menu-outer.shops-menu-fixed-active,
    body .shops-menu-outer.shops-menu-is-fixed{
        top:var(--shops-menu-fixed-top, 0px)!important;
    }
    body .shops-menu-outer.shops-menu-fixed-active > .inner,
    body .shops-menu-outer.shops-menu-is-fixed > .inner{
        max-width:100%!important;
    }
    body .shops-menu-outer.shops-menu-fixed-active .shops-main-menu-row,
    body .shops-menu-outer.shops-menu-is-fixed .shops-main-menu-row{
        overflow-x:auto!important;
        overflow-y:visible!important;
        -webkit-overflow-scrolling:touch!important;
        scrollbar-width:none;
    }
    body .shops-menu-outer.shops-menu-fixed-active .shops-main-menu-row::-webkit-scrollbar,
    body .shops-menu-outer.shops-menu-is-fixed .shops-main-menu-row::-webkit-scrollbar{
        display:none;
    }
    body .shops-menu-outer.shops-menu-fixed-active .ul-menu,
    body .shops-menu-outer.shops-menu-is-fixed .ul-menu{
        min-width:max-content!important;
    }
}

/* =========================================================
   SHOPSVIETTEL CLEAN22 - SIDEBAR CTA VIETTEL STYLE
   Kết hợp CLEAN21 body sticky menu + sidebar trắng/đỏ Viettel
   Mục tiêu: bỏ nền xanh lơ, bỏ đỏ chữ đỏ, giữ tông Viettel rõ ràng
   ========================================================= */

:root {
    --svt-red: #e60012;
    --svt-red-dark: #b8000e;
    --svt-border: #ffd6dc;
    --svt-text: #1f2937;
    --svt-muted: #6b7280;
    --svt-white: #ffffff;
}

/* Khung widget/sidebar tổng */
body .shops-clean-sidebar .widget,
body .shops-single-sidebar .widget,
body #secondary .widget,
body .sidebar .widget,
body .right-sidebar .widget,
body aside .widget {
    background: var(--svt-white) !important;
    border: 1px solid var(--svt-border) !important;
    border-radius: 14px !important;
    box-shadow: 0 8px 22px rgba(230, 0, 18, 0.08) !important;
    overflow: hidden !important;
    margin-bottom: 22px !important;
    padding: 0 !important;
}

/* Tiêu đề widget: nền trắng, chữ đỏ, gạch đỏ */
body .shops-clean-sidebar .widget-title,
body .shops-single-sidebar .widget-title,
body #secondary .widget-title,
body .sidebar .widget-title,
body .right-sidebar .widget-title,
body aside .widget-title,
body .title-widget,
body .box-title {
    background: var(--svt-white) !important;
    color: var(--svt-red) !important;
    border-bottom: 2px solid var(--svt-red) !important;
    text-align: center !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    font-size: 16px !important;
    line-height: 1.35 !important;
    padding: 14px 12px 12px !important;
    margin: 0 !important;
}

/* Vùng nội dung widget */
body .shops-clean-sidebar .textwidget,
body .shops-single-sidebar .textwidget,
body #secondary .textwidget,
body .sidebar .textwidget,
body .right-sidebar .textwidget,
body aside .textwidget {
    padding: 14px 16px 18px !important;
    color: var(--svt-text) !important;
    background: var(--svt-white) !important;
}

/* Reset padding lồng nhau làm lệch khung */
body .shops-clean-sidebar .pl10,
body .shops-single-sidebar .pl10,
body #secondary .pl10,
body .sidebar .pl10,
body .right-sidebar .pl10,
body aside .pl10 {
    padding: 0 !important;
    margin: 0 !important;
}

/* Tiêu đề con như “Liên hệ tư vấn / Báo hỏng” */
body .shops-clean-sidebar .title-sidebar,
body .shops-single-sidebar .title-sidebar,
body #secondary .title-sidebar,
body .sidebar .title-sidebar,
body .right-sidebar .title-sidebar,
body aside .title-sidebar {
    background: var(--svt-red) !important;
    color: var(--svt-white) !important;
    border: 1px solid var(--svt-red) !important;
    border-radius: 8px !important;
    text-align: center !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    font-size: 14px !important;
    line-height: 1.35 !important;
    padding: 11px 10px !important;
    margin: 0 0 12px !important;
}

/* Link bên trong title-sidebar */
body .shops-clean-sidebar .title-sidebar a,
body .shops-single-sidebar .title-sidebar a,
body #secondary .title-sidebar a,
body .sidebar .title-sidebar a,
body .right-sidebar .title-sidebar a,
body aside .title-sidebar a {
    color: var(--svt-white) !important;
    text-decoration: none !important;
}

/* Khối hotline: bỏ xanh lơ, chuyển nền trắng viền đỏ */
body .shops-clean-sidebar .sb-hotline,
body .shops-single-sidebar .sb-hotline,
body #secondary .sb-hotline,
body .sidebar .sb-hotline,
body .right-sidebar .sb-hotline,
body aside .sb-hotline {
    background: var(--svt-white) !important;
    border: 2px solid var(--svt-red) !important;
    border-radius: 10px !important;
    padding: 13px 10px !important;
    margin: 12px auto 14px !important;
    text-align: center !important;
    box-shadow: 0 6px 16px rgba(230, 0, 18, 0.08) !important;
}

/* Ép toàn bộ chữ hotline về đỏ Viettel, kể cả inline style trắng/đỏ cũ */
body .shops-clean-sidebar .sb-hotline,
body .shops-clean-sidebar .sb-hotline *,
body .shops-single-sidebar .sb-hotline,
body .shops-single-sidebar .sb-hotline *,
body #secondary .sb-hotline,
body #secondary .sb-hotline *,
body .sidebar .sb-hotline,
body .sidebar .sb-hotline *,
body .right-sidebar .sb-hotline,
body .right-sidebar .sb-hotline *,
body aside .sb-hotline,
body aside .sb-hotline * {
    color: var(--svt-red) !important;
}

/* Link số điện thoại */
body .shops-clean-sidebar .sb-hotline a,
body .shops-single-sidebar .sb-hotline a,
body #secondary .sb-hotline a,
body .sidebar .sb-hotline a,
body .right-sidebar .sb-hotline a,
body aside .sb-hotline a {
    color: var(--svt-red) !important;
    text-decoration: none !important;
    font-weight: 800 !important;
    font-size: 16px !important;
    line-height: 1.65 !important;
}

body .shops-clean-sidebar .sb-hotline a:hover,
body .shops-single-sidebar .sb-hotline a:hover,
body #secondary .sb-hotline a:hover,
body .sidebar .sb-hotline a:hover,
body .right-sidebar .sb-hotline a:hover,
body aside .sb-hotline a:hover {
    color: var(--svt-red-dark) !important;
    text-decoration: underline !important;
}

/* Ảnh trong sidebar gọn hơn */
body .shops-clean-sidebar .widget img,
body .shops-single-sidebar .widget img,
body #secondary .widget img,
body .sidebar .widget img,
body .right-sidebar .widget img,
body aside .widget img {
    display: block !important;
    max-width: 100% !important;
    height: auto !important;
    border-radius: 10px !important;
    margin: 0 auto !important;
}

/* Chặn trường hợp tiêu đề có style màu đỏ nằm trên nền đỏ gây mất chữ */
body .shops-clean-sidebar .widget_black_studio_tinymce .textwidget > div[style*="border-top"] .title-sidebar,
body .shops-single-sidebar .widget_black_studio_tinymce .textwidget > div[style*="border-top"] .title-sidebar,
body #secondary .widget_black_studio_tinymce .textwidget > div[style*="border-top"] .title-sidebar,
body .sidebar .widget_black_studio_tinymce .textwidget > div[style*="border-top"] .title-sidebar,
body .right-sidebar .widget_black_studio_tinymce .textwidget > div[style*="border-top"] .title-sidebar,
body aside .widget_black_studio_tinymce .textwidget > div[style*="border-top"] .title-sidebar {
    background: var(--svt-white) !important;
    color: var(--svt-red) !important;
    border: 1px solid var(--svt-border) !important;
    border-bottom: 2px solid var(--svt-red) !important;
}

body .shops-clean-sidebar .widget_black_studio_tinymce .textwidget > div[style*="border-top"] .title-sidebar a,
body .shops-single-sidebar .widget_black_studio_tinymce .textwidget > div[style*="border-top"] .title-sidebar a,
body #secondary .widget_black_studio_tinymce .textwidget > div[style*="border-top"] .title-sidebar a,
body .sidebar .widget_black_studio_tinymce .textwidget > div[style*="border-top"] .title-sidebar a,
body .right-sidebar .widget_black_studio_tinymce .textwidget > div[style*="border-top"] .title-sidebar a,
body aside .widget_black_studio_tinymce .textwidget > div[style*="border-top"] .title-sidebar a {
    color: var(--svt-red) !important;
}

/* Các block ảnh/sidebar đang có background đỏ nhưng chữ cũng đỏ: đưa về trắng/đỏ rõ */
body .shops-single-sidebar [style*="background: #f00808"],
body .shops-single-sidebar [style*="background:#f00808"],
body .shops-single-sidebar [style*="background: #ec0a0a"],
body .shops-single-sidebar [style*="background:#ec0a0a"],
body .shops-single-sidebar [style*="background: red"],
body .shops-single-sidebar [style*="background:red"],
body #secondary [style*="background: #f00808"],
body #secondary [style*="background:#f00808"],
body #secondary [style*="background: #ec0a0a"],
body #secondary [style*="background:#ec0a0a"],
body #secondary [style*="background: red"],
body #secondary [style*="background:red"],
body .sidebar [style*="background: #f00808"],
body .sidebar [style*="background:#f00808"],
body .sidebar [style*="background: #ec0a0a"],
body .sidebar [style*="background:#ec0a0a"],
body .sidebar [style*="background: red"],
body .sidebar [style*="background:red"] {
    background: var(--svt-white) !important;
    color: var(--svt-red) !important;
    border-color: var(--svt-red) !important;
}

/* Nhưng nút CTA chính vẫn đỏ chữ trắng để dễ phân biệt */
body .shops-single-sidebar .title-sidebar,
body #secondary .title-sidebar,
body .sidebar .title-sidebar,
body .right-sidebar .title-sidebar {
    background: var(--svt-red) !important;
    color: var(--svt-white) !important;
}

/* Mobile: sidebar rộng full, không bị bó */
@media (max-width: 768px) {
    body .shops-clean-sidebar .widget,
    body .shops-single-sidebar .widget,
    body #secondary .widget,
    body .sidebar .widget,
    body .right-sidebar .widget,
    body aside .widget {
        border-radius: 12px !important;
        margin-bottom: 16px !important;
    }

    body .shops-clean-sidebar .widget-title,
    body .shops-single-sidebar .widget-title,
    body #secondary .widget-title,
    body .sidebar .widget-title,
    body .right-sidebar .widget-title,
    body aside .widget-title {
        font-size: 15px !important;
        padding: 12px 10px !important;
    }

    body .shops-clean-sidebar .title-sidebar,
    body .shops-single-sidebar .title-sidebar,
    body #secondary .title-sidebar,
    body .sidebar .title-sidebar,
    body .right-sidebar .title-sidebar,
    body aside .title-sidebar {
        font-size: 13px !important;
    }

    body .shops-clean-sidebar .sb-hotline a,
    body .shops-single-sidebar .sb-hotline a,
    body #secondary .sb-hotline a,
    body .sidebar .sb-hotline a,
    body .right-sidebar .sb-hotline a,
    body aside .sb-hotline a {
        font-size: 15px !important;
    }
}

/* =========================================================
   SHOPSVIETTEL CLEAN24 - ARTICLE IMAGE CONTAINMENT HARDENED
   Mục tiêu: ảnh trong bài viết không tràn sang sidebar/toàn trang.
   Không ảnh hưởng logo, icon, avatar, thumbnail sidebar.
   ========================================================= */

/* Bảo vệ lưới bài viết: cột nội dung được phép co, sidebar không bị ảnh lấn */
body .shops-single-layout,
body .content-main.shops-single-layout {
    grid-template-columns: minmax(0, 1fr) 320px !important;
    column-gap: 36px !important;
    align-items: start !important;
    overflow: visible !important;
}

body .shops-single-content,
body .shops-post-content,
body .entry-content,
body .post-content,
body article.shops-single-content {
    min-width: 0 !important;
    max-width: 100% !important;
    width: 100% !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

/* Chỉ áp dụng cho ảnh trong nội dung bài, không đụng logo/avatar/icon */
body .shops-post-content img:not(.avatar):not(.emoji):not(.wp-smiley),
body .shops-single-content img:not(.avatar):not(.emoji):not(.wp-smiley),
body .entry-content img:not(.avatar):not(.emoji):not(.wp-smiley),
body .post-content img:not(.avatar):not(.emoji):not(.wp-smiley),
body .single article img:not(.avatar):not(.emoji):not(.wp-smiley) {
    max-width: 100% !important;
    width: auto !important;
    height: auto !important;
    display: block !important;
    box-sizing: border-box !important;
}

/* Ảnh căn giữa trong bài: giữ đẹp, không sát sidebar */
body .shops-post-content img.aligncenter:not(.avatar),
body .shops-single-content img.aligncenter:not(.avatar),
body .entry-content img.aligncenter:not(.avatar),
body .post-content img.aligncenter:not(.avatar),
body .single article img.aligncenter:not(.avatar) {
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Caption/figure có width cố định từ WP: ép co theo cột nội dung */
body .shops-post-content figure,
body .shops-single-content figure,
body .entry-content figure,
body .post-content figure,
body .shops-post-content .wp-caption,
body .shops-single-content .wp-caption,
body .entry-content .wp-caption,
body .post-content .wp-caption {
    max-width: 100% !important;
    width: auto !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

body .shops-post-content .wp-caption img,
body .shops-single-content .wp-caption img,
body .entry-content .wp-caption img,
body .post-content .wp-caption img {
    max-width: 100% !important;
    width: auto !important;
    height: auto !important;
    display: block !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

body .shops-post-content .wp-caption-text,
body .shops-single-content .wp-caption-text,
body .entry-content .wp-caption-text,
body .post-content .wp-caption-text {
    max-width: 100% !important;
    color: #6b7280 !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
    text-align: center !important;
    margin: 8px auto 14px !important;
}

/* Một số bài cũ đặt ảnh trong strong/em/p/div: ép container không bung rộng */
body .shops-post-content p,
body .shops-post-content strong,
body .shops-post-content em,
body .shops-single-content p,
body .shops-single-content strong,
body .shops-single-content em,
body .entry-content p,
body .entry-content strong,
body .entry-content em {
    max-width: 100% !important;
    box-sizing: border-box !important;
}

/* Ảnh rất lớn: chừa mép thở nhẹ để không dính sidebar trên desktop */
@media (min-width: 992px) {
    body .shops-post-content > p > img.aligncenter:not(.avatar),
    body .shops-post-content > figure.aligncenter:not(.avatar),
    body .shops-single-content > p > img.aligncenter:not(.avatar),
    body .entry-content > p > img.aligncenter:not(.avatar) {
        max-width: calc(100% - 12px) !important;
    }
}

/* Tablet/mobile: bỏ sidebar, ảnh full theo cột, không tạo cuộn ngang */
@media (max-width: 991px) {
    body .shops-single-layout,
    body .content-main.shops-single-layout {
        grid-template-columns: 1fr !important;
        gap: 18px !important;
        overflow: hidden !important;
    }

    body .shops-post-content,
    body .shops-single-content,
    body .entry-content,
    body .post-content {
        overflow-x: hidden !important;
    }

    body .shops-post-content img:not(.avatar):not(.emoji):not(.wp-smiley),
    body .shops-single-content img:not(.avatar):not(.emoji):not(.wp-smiley),
    body .entry-content img:not(.avatar):not(.emoji):not(.wp-smiley),
    body .post-content img:not(.avatar):not(.emoji):not(.wp-smiley) {
        max-width: 100% !important;
        width: auto !important;
        height: auto !important;
    }
}

/* Chặn cuộn ngang toàn trang do ảnh/nội dung cũ có width lớn */
body.single,
body.page,
body .shops-single-page-wrap,
body .site-main {
    overflow-x: hidden !important;
}


/* =========================================================
   SHOPSVIETTEL CLEAN24 - HARDENED ARTICLE IMAGE + LAYOUT
   Mục tiêu: ảnh cỡ lớn trong bài không lấn sang sidebar trên toàn site.
   ========================================================= */
body .content-main.shops-single-layout,
body .shops-single-layout {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 320px !important;
    column-gap: 38px !important;
    align-items: start !important;
    max-width: 1200px !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
}

body .shops-single-layout > .shops-single-content,
body .content-main.shops-single-layout > .shops-single-content {
    grid-column: 1 / 2 !important;
    min-width: 0 !important;
    max-width: 100% !important;
    width: 100% !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

body .shops-single-layout > .shops-single-sidebar,
body .content-main.shops-single-layout > .shops-single-sidebar {
    grid-column: 2 / 3 !important;
    width: 320px !important;
    max-width: 320px !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
}

body .shops-post-content,
body .shops-single-content,
body .entry-content,
body .post-content {
    max-width: 100% !important;
    min-width: 0 !important;
    overflow-x: hidden !important;
    box-sizing: border-box !important;
}

body .shops-post-content > *,
body .shops-single-content > *,
body .entry-content > *,
body .post-content > * {
    max-width: 100% !important;
    box-sizing: border-box !important;
}

body .shops-post-content p:has(img),
body .shops-single-content p:has(img),
body .entry-content p:has(img),
body .post-content p:has(img) {
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
    text-align: center !important;
}

body .shops-post-content img:not(.avatar):not(.emoji):not(.wp-smiley),
body .shops-single-content img:not(.avatar):not(.emoji):not(.wp-smiley),
body .entry-content img:not(.avatar):not(.emoji):not(.wp-smiley),
body .post-content img:not(.avatar):not(.emoji):not(.wp-smiley) {
    max-width: 100% !important;
    max-inline-size: 100% !important;
    height: auto !important;
    display: block !important;
    box-sizing: border-box !important;
    object-fit: contain !important;
}

body .shops-post-content img.aligncenter:not(.avatar):not(.emoji):not(.wp-smiley),
body .shops-single-content img.aligncenter:not(.avatar):not(.emoji):not(.wp-smiley),
body .entry-content img.aligncenter:not(.avatar):not(.emoji):not(.wp-smiley),
body .post-content img.aligncenter:not(.avatar):not(.emoji):not(.wp-smiley) {
    margin-left: auto !important;
    margin-right: auto !important;
}

body .shops-post-content figure,
body .shops-single-content figure,
body .entry-content figure,
body .post-content figure,
body .shops-post-content .wp-caption,
body .shops-single-content .wp-caption,
body .entry-content .wp-caption,
body .post-content .wp-caption {
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

@media (min-width: 992px) {
    body .shops-post-content img[width="999"],
    body .shops-post-content img[width="1164"],
    body .shops-post-content img[width="1280"],
    body .shops-post-content img[width="1492"],
    body .shops-single-content img[width="999"],
    body .shops-single-content img[width="1164"],
    body .shops-single-content img[width="1280"],
    body .shops-single-content img[width="1492"] {
        width: 100% !important;
        max-width: 100% !important;
    }
}

@media (max-width: 991px) {
    body .content-main.shops-single-layout,
    body .shops-single-layout {
        display: block !important;
        max-width: 100% !important;
        padding-left: 12px !important;
        padding-right: 12px !important;
        overflow-x: hidden !important;
    }

    body .shops-single-layout > .shops-single-sidebar,
    body .content-main.shops-single-layout > .shops-single-sidebar {
        width: 100% !important;
        max-width: 100% !important;
        margin-top: 18px !important;
    }
}
