/**
 * NukeViet Content Management System
 * @version 4.x
 * @author VINADES.,JSC <contact@vinades.vn>
 * @copyright (C) 2009-2021 VINADES.,JSC. All rights reserved
 * @license GNU/GPL version 2 or any later version
 * @see https://github.com/nukeviet The NukeViet CMS GitHub project
 */

/* Font cách điệu cho tiêu đề chuyên mục / block — tải từ Google Fonts nếu có mạng,
   không có mạng thì tự lùi về Comic Sans MS (có sẵn trên Windows, đủ dấu tiếng Việt) */
@import url('https://fonts.googleapis.com/css2?family=Baloo+2:wght@400;500;600;700;800&display=swap');

/* Các tùy chỉnh CSS của giao diện nên để vào đây */
.header{
    background: url(../images/banner-tuachua1.png) no-repeat;
    background-size: 100% 100%;
    aspect-ratio: 1950 / 807;   /* đúng tỉ lệ ảnh banner -> không méo */
}
.mobile-menu-bg {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 9999;
    display: none;
}

.mobile-menu-wrap {
    width: 280px;
    position: fixed;
    top: 0;
    right: 0;
    width: 280px;
    height: 100%;
    background: #fff;
    z-index: 9999;
    visibility: hidden;
    transform: translateX(100%);
}

.mobile-menu-wrap.animate {
    transition: all 0.35s ease;
    -webkit-transition: all .35s ease;
    -o-transition: all .35s ease;
    transition: all .35s ease;
    -webkit-transform: translateX(280px);
    -ms-transform: translateX(280px);
    -o-transform: translateX(280px);
    transform: translateX(280px);
}

.mobile-menu-wrap .logo {
    border-bottom: 1px transparent solid;
    padding: 10px;
    text-align: center;
}

.mobile-menu-wrap .logo img {
    height: 50px;
    width: auto;
}

.mobile-menu-wrap .menu {
    background-color: rgb(255, 255, 255);
    height: calc(100vh - 111px);
    overflow: auto;
}

.mobile-menu-wrap .mfooter {
    background-color: #fff;
    height: 30px;
    padding: 10px;
    text-align: center;
    color: #777;
}

.mobile-menu-toggle-btn {
    cursor: pointer;
    width: 100%;
    position: absolute;
    top: 176px;
    line-height: 36px;
    font-size: 22px;
    border-radius: 3px;
    display: none;
    left: 0;
    margin-top: -6px;
    text-align: end;
    padding-right: 10px;
}

.mobile-menu-toggle-btn i {
    color: #fff;
    font-size: 25px;
    border: 1px solid;
    border-radius: 7px;
    padding: 3px 10px 3px 10px;
    margin: 1px 1px 1px 1px;
    background-color: #245682;
}

.mobile-menu-toggle-btn i:hover {
    background-color: #428bca;
}

/* .mobile-menu-toggle-btn:hover {
    background-color: #245682;
} */

.btn-warning {
    background-color: #428bca;
    border-color: #fff;
}

.btn-warning:hover {
    color: #fff;
    background-color: #245682;
    border-color: #fff;
}

.btn-warning:focus,
.btn-warning.focus {
    color: #fff;
    background-color: #428bca;
    border-color: #245682;
}

.col-xs-20 {
    padding-left: 5px;
}

.col-xs-4 {
    padding-left: 0px;
}

.kidpic h3 {
    top: 30px !important;
}

.fb_iframe_widget iframe {
    top: 3px;
}

.nv-list-item li {
    display: flex;
}

.nv-list-item li h3 {
    margin-top: -4px;
    margin-bottom: 5px;
    padding-left: 5px;
}

.nv-social-share li.facebook {
    top: 2px;
}

.block_content_star ul li a img{
    height: 52px;
    object-fit: cover;
}

.fr {
    float: left;
}

.sf-main h3 {
    width: 100% !important;
    margin-left: 0px !important;
}

.easyslider_content .easyslider_albumtitle{
    /*max-width: 440px;*/
    height: 15px;
    overflow: hidden;
}

@media (min-width: 768px) {
    .navbar-default .navbar-nav > li > a{
        padding-left: 20px;
        padding-right: 20px;
    }
}

.navbar-nav > li > a{
    padding-top: 10px;
    padding-bottom: 10px;
}

.header .logo{
    max-width: 200px;
    width: auto;
}

.topadv{
    width: 100%;
}

.page h3 {
    font-family: "butlong";
    font-size: 16px;
    color: #fe292b;
    margin-bottom: 6px;
}


.page .nv-list-item h3 {
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
    font-size: 14px !important;
}

.page .panel-default>.panel-heading{
    background-color: transparent;
    border-color: transparent;
    background-image: none !important;
    padding: 10px 15px 0;
}

.page .panel-primary>.panel-heading{
    background-color: transparent;
    border-color: transparent;
    background-image: none !important;
    padding: 10px 15px 0;
    font-family: "butlong";
    color: #fe292b;
    font-size: 16px;
}

.page .panel-primary{
    border-color: #ccc;
}

.detail-related.related li *{
    display: inline !important;
}

.other-news .h3{
    text-align: left !important;
}

.other-news ul li{
    padding-left: 3px;
    margin-bottom: 0px;
}

.text-muted ul.list-unstyled  li{
    font-size: 12px !important;
}
.headerSearch .input-group .form-control,
.headerSearch .btn {
    height: 33px;
}
.headerSearch .input-group .form-control {
    border-color: transparent;
    box-shadow: none;
}
.headerSearch .btn {
    background-color: #fff;
}
.navbar-default .navbar-collapse, 
.navbar-default .navbar-form {
    margin: 0;
}
.metismenu{
    border-bottom: none;
}
.metismenu .sidebar-nav .metismenu>li:first-child>a {
    border-top: none;
}
.metismenu .sidebar-nav .metismenu ul ul a {
    padding-left: 40px;
}
.header {
    margin: 0;
}
@media (min-width: 768px) and (max-width:800px) {
    .header .logo img{
        max-width: 120px;
        height: auto
    }
    .header .logo{
        top: 50%;
        transform: translateY(-50%);
    }
}

@media (max-width: 900px) {
    .mobile-menu-toggle-btn {
        display: block;
        margin-top: 0px;
        padding-right: 0px;
    }

    .header {
        background-repeat: initial !important;
        background-size: initial !important;
        margin-bottom: 50px;
    }

    .open-menu .mobile-menu-bg {
        display: block;
    }

    .open-menu .mobile-menu-wrap {
        visibility: visible;
        transform: translateX(0px);
    }


    .open-menu .mobile-menu-bg {
        display: block;
    }

    .navbar-default{
        display: none !important;
    }

    .headerSearch .btn-info{
        background-color: transparent;
        border-color: transparent;
        color: #000;
    }

    .headerSearch input{
        -webkit-box-shadow: none;
        box-shadow: none;
        -webkit-transition: none;
        -o-transition: none;
        transition: none;
    }

    .headerSearch .input-group{
        border: 1px solid #ccc;
        border-radius: 5px;
    }

    .search input{
        height: 31px !important;
    }

    /* .mobile-menu-wrap .menu .sidebar {
        height: calc(100vh - 350px);
        overflow: auto;
    } */

    .metismenu .sidebar-nav{
        background-image: none !important;
    }
}

@media (min-width: 375px) and (max-width: 424px) {
    .topadv p strong a {
        font-size: 15px;
    }

    .topadv p{
        margin-bottom: 0px;
    }
}

/* Tên & mô tả trường: serif thanh lịch, hơi cách điệu, mang dáng văn bản hành chính */
.topadv strong a{
    font-size: 17px;
    font-family: Cambria, "Times New Roman", Times, serif;
    font-weight: 600;
    line-height: 1.35;
    text-align: center;
    color: rgb(61, 97, 198);
    text-transform: uppercase;
    letter-spacing: 1.5px;
    display: block;
}
.topadv strong.mota{
    font-size: 27px;
    font-family: Cambria, "Times New Roman", Times, serif;
    font-weight: bold;
    line-height: 1.25;
    text-align: center;
    color: rgb(255, 0, 50);
    text-transform: uppercase;
    letter-spacing: .8px;
    display: block;
}
 .bgblock .meal_list .meal p {
    color: #243a9e;

}

/* ============================================================
   MENU NGANG — thiết kế lại kiểu trường mầm non
   (pill bo tròn nhiều màu kẹo ngọt, chữ butlong, hover nảy)
   ============================================================ */
/* Kéo menu lên nằm đè lên dải thổ cẩm mép dưới banner
   -> banner + menu thành 1 khối, không còn dải kem ngăn cách */
.navbar.navbar-default {
    margin-top: -28px;
    position: relative;
    z-index: 50;
    background: transparent;
    border: none;
}
#menu-site-default .navbar-nav {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 9px;
    padding: 6px 0;
}
#menu-site-default .navbar-nav > li {
    background: none;
    float: none;
}
#menu-site-default .navbar-nav > li > a {
    display: block;
    padding: 8px 18px;
    font-family: butlong, "Segoe UI", Arial, sans-serif;
    font-size: 18px;
    font-weight: normal;
    line-height: 1;
    letter-spacing: .3px;
    color: #fff;
    border-radius: 999px;
    transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
}
/* bảng màu hài hòa cho 7 mục */
#menu-site-default .navbar-nav > li:nth-child(1) > a { background: #ff6b6b; }
#menu-site-default .navbar-nav > li:nth-child(2) > a { background: #4dabf7; }
#menu-site-default .navbar-nav > li:nth-child(3) > a { background: #51cf66; }
#menu-site-default .navbar-nav > li:nth-child(4) > a { background: #cc5de8; }
#menu-site-default .navbar-nav > li:nth-child(5) > a { background: #ffa94d; }
#menu-site-default .navbar-nav > li:nth-child(6) > a { background: #22b8cf; }
#menu-site-default .navbar-nav > li:nth-child(7) > a { background: #f783ac; }

/* hover / mở dropdown: nảy lên, sáng hơn, đổ bóng */
#menu-site-default .navbar-nav > li > a:hover,
#menu-site-default .navbar-nav > li > a:focus,
#menu-site-default .navbar-nav > li:hover > a,
#menu-site-default .navbar-nav > li.open > a {
    transform: translateY(-3px) scale(1.05);
    box-shadow: 0 8px 16px rgba(0, 0, 0, .22);
    filter: brightness(1.08) saturate(1.12);
    color: #fff;
}
/* mục đang xem */
#menu-site-default .navbar-nav > li.active > a {
    transform: translateY(-2px);
    box-shadow: 0 5px 12px rgba(0, 0, 0, .25);
}
#menu-site-default .navbar-nav > li > a .caret {
    border-top-color: rgba(255, 255, 255, .95);
    margin-left: 5px;
}

/* ---------- menu sổ xuống ---------- */
@media (min-width: 992px) {
    #menu-site-default .navbar-nav > li:hover > .dropdown-menu,
    #menu-site-default .navbar-nav > li:focus-within > .dropdown-menu {
        display: block;
    }
}
#menu-site-default .dropdown-menu {
    border: none;
    border-radius: 16px;
    padding: 8px;
    margin-top: 4px;
    min-width: 214px;
    background-color: #fff;
    box-shadow: 0 14px 34px rgba(20, 40, 80, .17);
    animation: navDropIn .18s ease-out;
}
/* cầu nối vô hình lấp khoảng trống giữa nút menu và bảng sổ xuống,
   để rê chuột không bị "ngắt quãng" làm menu đóng lại */
#menu-site-default .navbar-nav > li > .dropdown-menu::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: -14px;
    height: 16px;
}
@keyframes navDropIn {
    from { opacity: 0; transform: translateY(6px); }
    to   { opacity: 1; transform: translateY(0); }
}
#menu-site-default .dropdown-menu > li { border: none; }
#menu-site-default .dropdown-menu > li > a,
#menu-site-default .dropdown-menu > li > a:link {
    font-family: butlong, "Segoe UI", Arial, sans-serif;
    font-size: 16px;
    color: #2f5673;
    padding: 9px 14px;
    border-radius: 10px;
    transition: background .15s ease, color .15s ease, padding-left .15s ease;
}
#menu-site-default .dropdown-menu > li > a:hover,
#menu-site-default .dropdown-menu > li > a:focus,
#menu-site-default .dropdown-menu > li.active > a {
    /* !important để ghi đè rule !important của bootstrap.non-responsive.css (dòng ~5307) */
    background-color: #4dabf7 !important;
    color: #fff !important;
    padding-left: 20px;
}
/* submenu cấp 2 */
#menu-site-default .dropdown-submenu > .dropdown-menu {
    border-radius: 14px;
    margin-top: -4px;
}
#menu-site-default .dropdown-submenu > a:after { border-left-color: #9db4c6; }
#menu-site-default .dropdown-submenu:hover > a:after { border-left-color: #1b6ec2; }

/* ---------- ô tìm kiếm: nhỏ gọn, thanh mảnh ---------- */
.headerSearch {
    max-width: 175px;
    margin-left: auto;
    margin-top: 7px;
}
.headerSearch .input-group {
    border: 1px solid #e4e4e4;
    border-radius: 999px;
    overflow: hidden;
    background: #fff;
}
.headerSearch .input-group .form-control {
    height: 30px;
    font-size: 13px;
    border: none;
    box-shadow: none;
    background: transparent;
    padding: 4px 14px;
}
.headerSearch .input-group-btn .btn {
    height: 30px;
    padding: 0 12px;
    background: transparent;
    border: none;
    color: #9aa4ad;
    box-shadow: none;
    transition: color .15s ease;
}
.headerSearch .input-group-btn .btn:hover { color: #ff6b6b; }
.headerSearch .btn .fa-search { font-size: 13px; }
@media(max-width: 767px){
	.topadv strong.mota {
	    font-size: 17px;
	    line-height: 25px;
   }
}


/*blog news*/
.section_blog {
  margin-bottom:50px;
  margin: 0 5px 50px 5px
}

.section_blog .block-title {
  text-align:center;
  margin-bottom:30px;
}

.section_blog .block-title h2 {
  font-size:40px;
  font-weight:700;
}

.section_blog .block-title p {
  position:relative;
  display:inline-block;
  color:#ff5e14;
  font-size:16px;
  text-transform:uppercase;
  letter-spacing:0.2em;
  margin-bottom:5px;
}

.section_blog .block-content .item-blog {
  box-shadow:0 0 20px 0 rgba(0,0,0,0.09);
  border-radius:10px;
  overflow:hidden;
}

.section_blog .block-content .item-blog .block-thumb .thumb {
  padding-bottom:56%;
  display:block;
  height:0;
  position:relative;
}

.section_blog .block-content .item-blog .block-thumb .thumb img {
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  max-width:100%;
  max-height:100%;
  width:auto !important;
  height:auto !important;
  position:absolute;
}

.section_blog .block-content .item-blog .block-info {
  padding:15px;
}

.section_blog .block-content .item-blog .block-info h3 {
  font-size:16px;
  height:45px;
  overflow:hidden;
  margin-bottom:10px;
}

.section_blog .block-content .item-blog .block-info .post {
  margin-bottom:5px;
  color:#acacac;
}

.section_blog .block-content .item-blog .block-info .post .time-post {
  display:inline-block;
}

.section_blog .block-content .item-blog .block-info p.justify {
  margin:0;
}



.section_blog .block-content .margin-am .swiper-container {
  padding:1rem !important;
}

.section_blog .block-content .swiper-pagination {
  position:initial;
  margin-top:10px;
}

.section_blog .block-content .swiper-pagination .swiper-pagination-bullet {
  background:#ff5e14;
}

/* ============================================================
   BLOCK "Văn bản mới" + "Tin xem nhiều" — làm mới, hiện đại
   (thẻ bo góc, viền nhấn, hiệu ứng hover nảy nhẹ)
   ============================================================ */

/* -------- Văn bản mới -------- */
.bgblock .block-law .item {
    position: relative;
    background: #fff;
    border: 1px solid #eef0f3;
    border-left: 3px solid #4dabf7;
    border-radius: 10px;
    padding: 10px 12px;
    margin: 0 2px 9px;
    transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.bgblock .block-law .item:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 18px rgba(20, 40, 80, .12);
    border-left-color: #f76707;
}
.bgblock .block-law .law-code {
    margin: 0 0 6px;
    border: none;
}
.bgblock .block-law .law-code a {
    display: inline-block;
    padding: 2px 10px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .3px;
    line-height: 1.6;
    color: #1b6ec2;
    background: #e7f1fb;
    border-radius: 20px;
    text-decoration: none;
    transition: background .16s ease, color .16s ease;
}
.bgblock .block-law .item:hover .law-code a {
    background: #1b6ec2;
    color: #fff;
}
.bgblock .block-law .law-title {
    margin: 0 0 7px;
    font-size: 13px;
    line-height: 1.45;
    font-weight: 500;
    color: #2b3a4a !important;
    transition: color .16s ease;
}
.bgblock .block-law .item:hover .law-title {
    color: #1b6ec2 !important;
}
.bgblock .block-law .law-view {
    display: inline-block;
    margin: 0 12px 0 0;
    font-size: 11px;
    font-style: normal;
    color: #8a97a5 !important;
}

/* -------- Tin xem nhiều -------- */
.block_tophits {
    counter-reset: hit;
    padding: 8px 2px 0;
}
.block_tophits > li {
    position: relative;
    padding: 9px;
    margin-bottom: 8px;
    background: #fff;
    border: 1px solid #eef0f3;
    border-radius: 10px;
    list-style: none;
    transition: transform .16s ease, box-shadow .16s ease, background .16s ease;
}
/* clearfix để bó gọn ảnh thu nhỏ (float) mà không cần overflow:hidden */
.block_tophits > li::after {
    content: "";
    display: block;
    clear: both;
}
.block_tophits > li:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 18px rgba(20, 40, 80, .12);
    background: #f8fbff;
}
.block_tophits > li > a:first-child {
    float: left;
    width: 62px;
    height: 52px;
    margin: 0 10px 0 0;
    display: block;
    overflow: hidden;
    border-radius: 8px;
}
.block_tophits > li > a:first-child img {
    float: none !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 8px;
    object-fit: cover;
    transition: transform .28s ease;
}
.block_tophits > li:hover > a:first-child img {
    transform: scale(1.08);
}
.block_tophits > li .show {
    font-size: 12.5px;
    line-height: 1.4;
    font-weight: 500;
    color: #2b3a4a;
    /* !important để ghi đè class .show của bootstrap (display:block!important) */
    display: -webkit-box !important;
    -webkit-line-clamp: 3;
    line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    transition: color .16s ease;
}
.block_tophits > li:hover .show {
    color: #1b6ec2;
}
/* số thứ tự "TOP" cho 3 tin đầu */
.block_tophits > li:nth-child(-n+3)::before {
    counter-increment: hit;
    content: counter(hit);
    position: absolute;
    top: 5px;
    left: 5px;
    z-index: 2;
    width: 18px;
    height: 18px;
    line-height: 18px;
    text-align: center;
    font-size: 11px;
    font-weight: 700;
    color: #fff;
    background: #f76707;
    border-radius: 50%;
    box-shadow: 0 1px 3px rgba(0, 0, 0, .35);
}

/* -------- Tooltip xem nhanh tin (block_news_tooltip) -------- */
.tooltip.in {
    opacity: 1;
}
.tooltip-inner {
    max-width: 260px;
    padding: 10px 12px;
    text-align: left;
    font-size: 12.5px;
    line-height: 1.5;
    color: #2b3a4a;
    background: #fff;
    border: 1px solid #e6eaf0;
    border-radius: 10px;
    box-shadow: 0 12px 30px rgba(20, 40, 80, .2);
}
.tooltip-inner img {
    float: none !important;
    display: block;
    width: 100% !important;
    height: auto !important;
    max-height: 140px;
    margin: 0 0 8px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 8px;
    object-fit: cover;
}
.tooltip-inner p {
    margin: 0;
}
.tooltip.top .tooltip-arrow {
    border-top-color: #fff;
}
.tooltip.bottom .tooltip-arrow {
    border-bottom-color: #fff;
}
.tooltip.left .tooltip-arrow {
    border-left-color: #fff;
}
.tooltip.right .tooltip-arrow {
    border-right-color: #fff;
}


/* ============================================================
   CHUYÊN MỤC TIN TỨC trang chủ (viewcat_main_right) — bố cục
   thẻ hiện đại: 1 tin nổi bật + danh sách tin bên cạnh
   ============================================================ */
.nc-sec {
    margin-bottom: 26px;
}
.nc-head {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px 14px;
    padding-bottom: 10px;
    margin-bottom: 14px;
    border-bottom: 2px solid #f76707;
    border-image: linear-gradient(90deg, #f76707, #ffce9e 45%, rgba(232, 235, 239, .6) 85%) 1;
}
.nc-title {
    margin: 0;
    padding-left: 48px;
    position: relative;
    font-family: "Baloo 2", "Comic Sans MS", Cambria, Georgia, "Times New Roman", serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.25;
    letter-spacing: .5px;
    text-transform: uppercase;
}
/* con vật ngộ nghĩnh thay cho gạch màu — mỗi chuyên mục một con */
.nc-title::before {
    content: "🐻";
    position: absolute;
    left: -4px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 28px;
    line-height: 1;
    filter: drop-shadow(0 1px 2px rgba(0, 0, 0, .18));
}
.nc-sec:nth-of-type(3n+2) .nc-title::before { content: "🐰"; }
.nc-sec:nth-of-type(3n)   .nc-title::before { content: "🦊"; }
.nc-title a {
    color: #16436b;
    transition: color .15s ease;
}
.nc-title a:hover { color: #1b6ec2; }
.nc-sub {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}
.nc-sub a {
    font-size: 12px;
    line-height: 1.7;
    padding: 2px 10px;
    border-radius: 20px;
    background: #eef4fb;
    color: #2f5673;
    transition: background .15s ease, color .15s ease;
}
.nc-sub a:hover { background: #1b6ec2; color: #fff; }
.nc-all {
    margin-left: auto;
    font-size: 12.5px;
    font-weight: 600;
    color: #1b6ec2;
    white-space: nowrap;
}
.nc-all::after { content: " \203A"; }
.nc-all:hover { color: #f76707; }

.nc-body {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}

/* ---- tin nổi bật ---- */
.nc-feat {
    flex: 1 1 340px;
    min-width: 0;
    display: flex;
    gap: 12px;
    padding: 10px;
    background: #fff;
    border: 1px solid #eef0f3;
    border-radius: 12px;
    transition: transform .16s ease, box-shadow .16s ease;
}
.nc-feat:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 24px rgba(20, 40, 80, .12);
}
.nc-feat-thumb {
    flex: 0 0 42%;
    max-width: 42%;
    align-self: flex-start;
    display: block;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    border-radius: 10px;
}
.nc-feat-thumb img {
    width: 100% !important;
    height: 100% !important;
    max-width: none;
    margin: 0;
    padding: 0;
    border: 0;
    object-fit: cover;
    transition: transform .3s ease;
}
.nc-feat:hover .nc-feat-thumb img { transform: scale(1.06); }
.nc-feat-main {
    flex: 1;
    min-width: 0;
}
.nc-feat-title {
    margin: 0 0 6px;
    font-size: 15px;
    line-height: 1.4;
    font-weight: 700;
}
.nc-feat-title a {
    color: #1b3a5c;
    transition: color .15s ease;
}
.nc-feat:hover .nc-feat-title a { color: #1b6ec2; }
.nc-feat-desc {
    font-size: 13px;
    line-height: 1.55;
    color: #6b7785;
    text-align: left;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.nc-feat-desc p { margin: 0; }
.nc-feat-more {
    display: inline-block;
    margin-top: 8px;
    font-size: 12.5px;
    font-weight: 600;
    color: #f76707;
}
.nc-feat-more .fa { margin-left: 3px; }

/* ---- danh sách tin bên cạnh ---- */
.nc-list {
    flex: 1 1 220px;
    min-width: 0;
    list-style: none;
    margin: 0;
    padding: 0;
}
.nc-list li {
    position: relative;
    padding: 9px 0 9px 16px;
    border-bottom: 1px dashed #e3e7ec;
}
.nc-list li:first-child { padding-top: 0; }
.nc-list li:last-child { border-bottom: 0; }
.nc-list li::before {
    content: "";
    position: absolute;
    left: 2px;
    top: 15px;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #f76707;
    transition: background .15s ease;
}
.nc-list li:first-child::before { top: 6px; }
.nc-list a.show {
    /* !important: đè display:block!important của class .show (bootstrap) */
    display: -webkit-box !important;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin: 0;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.45;
    color: #2b3a4a;
    transition: color .15s ease, transform .15s ease;
}
.nc-list li:hover::before { background: #1b6ec2; }
.nc-list li:hover a.show {
    color: #1b6ec2;
    transform: translateX(3px);
}

@media (max-width: 991px) {
    .nc-feat, .nc-list { flex-basis: 100%; }
}


/* ============================================================
   BLOCK THỐNG KÊ — thiết kế lại: thẻ trắng bo góc, icon tròn
   nhiều màu (hợp mầm non), số tổng nổi bật
   ============================================================ */
.blocksite:has(.stat-box) {
    width: 100%;
    background: #fff;
    border: 1px solid #eef0f3;
    border-radius: 14px;
    box-shadow: 0 4px 16px rgba(20, 40, 80, .07);
    /* clip thay cho hidden + chừa lề để con vật được chờm ra ngoài mà nội dung vẫn bo góc */
    overflow: clip;
    overflow-clip-margin: 30px;
}
.blocksite:has(.stat-box) .block_header_kiencon,
.blocksite:has(.stat-box) .block_bottom {
    display: none;
}
.blocksite:has(.stat-box) .block_content {
    background: none;
    padding: 14px;
}
.blocksite:has(.stat-box) .block_content h3 {
    position: relative;
    margin: 0 0 10px;
    padding: 0 0 8px 40px;
    font-family: "Baloo 2", "Comic Sans MS", Cambria, Georgia, "Times New Roman", serif;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: .5px;
    text-transform: uppercase;
    text-align: left;
    color: #16436b;
    border-bottom: 2px solid #4dabf7;
    border-image: linear-gradient(90deg, #4dabf7, #cfe8fb 55%, rgba(230, 235, 240, .35) 90%) 1;
}
.blocksite:has(.stat-box) .block_content h3::before {
    content: "🐘";
    position: absolute;
    left: -8px;
    top: 42%;
    transform: translateY(-50%);
    font-size: 27px;
    line-height: 1;
    filter: drop-shadow(0 1px 2px rgba(0, 0, 0, .18));
}

.stat-list {
    margin: 0;
    padding: 0;
}
.stat-list > li {
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 8px 2px;
    border-bottom: 1px dashed #e7ebf0;
    font-size: 13px;
    line-height: 1.25;
}
.stat-list > li:last-child { border-bottom: 0; }
.stat-ico {
    flex: 0 0 30px;
    width: 30px;
    height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    color: #fff;
    font-size: 13px;
    box-shadow: 0 2px 6px rgba(0, 0, 0, .14);
}
.stat-ico em { font-style: normal; }
.stat-list > li:nth-child(6n+1) .stat-ico { background: linear-gradient(135deg, #74c0fc, #4dabf7); }
.stat-list > li:nth-child(6n+2) .stat-ico { background: linear-gradient(135deg, #faa2c1, #f06595); }
.stat-list > li:nth-child(6n+3) .stat-ico { background: linear-gradient(135deg, #d0bfff, #9775fa); }
.stat-list > li:nth-child(6n+4) .stat-ico { background: linear-gradient(135deg, #66d9e8, #22b8cf); }
.stat-list > li:nth-child(6n+5) .stat-ico { background: linear-gradient(135deg, #8ce99a, #40c057); }
.stat-list > li:nth-child(6n)   .stat-ico { background: linear-gradient(135deg, #ffc078, #ff922b); }
.stat-label {
    flex: 1;
    min-width: 0;
    color: #4a5763;
}
.stat-num {
    font-weight: 700;
    font-size: 13.5px;
    color: #16436b;
    white-space: nowrap;
}

.stat-total {
    margin-top: 12px;
    padding: 12px 14px;
    border-radius: 14px;
    text-align: center;
    color: #fff;
    background: linear-gradient(135deg, #1b6ec2, #4dabf7);
    box-shadow: 0 8px 18px rgba(27, 110, 194, .28);
}
.stat-total-label {
    display: block;
    margin-bottom: 3px;
    font-size: 11.5px;
    letter-spacing: .4px;
    text-transform: uppercase;
    opacity: .95;
}
.stat-total-num {
    display: block;
    font-size: 23px;
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: .5px;
}


/* ============================================================
   BLOCK QUẢN LÝ THÀNH VIÊN — thiết kế lại (thẻ, avatar tròn,
   danh sách link có icon, nút đăng xuất bo tròn)
   ============================================================ */
.bgblock:has(.mb-user),
.bgblock:has(.form-detail) {
    background: #fff;
    border: 1px solid #eef0f3;
    border-radius: 14px;
    box-shadow: 0 4px 16px rgba(20, 40, 80, .07);
    overflow: clip;
    overflow-clip-margin: 30px;
    padding-bottom: 4px;
}
.bgblock:has(.mb-user) .header-block1,
.bgblock:has(.form-detail) .header-block1 {
    border: 0;
    padding: 0;
}
.bgblock:has(.mb-user) .header-block1 h3,
.bgblock:has(.form-detail) .header-block1 h3,
.bgblock:has(.block-law) .header-block1 h3 {
    position: relative;
    margin: 0;
    padding: 12px 14px 10px 54px;
    font-family: "Baloo 2", "Comic Sans MS", Cambria, Georgia, "Times New Roman", serif;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: .5px;
    text-transform: uppercase;
    text-align: left;
    color: #16436b;
    border: 0;
    border-bottom: 2px solid #4dabf7;
    border-image: linear-gradient(90deg, #4dabf7, #cfe8fb 55%, rgba(230, 235, 240, .35) 90%) 1;
}
.bgblock:has(.mb-user) .header-block1 h3::before,
.bgblock:has(.form-detail) .header-block1 h3::before,
.bgblock:has(.block-law) .header-block1 h3::before {
    content: "🐨";
    position: absolute;
    left: 7px;
    top: 58%;
    transform: translateY(-50%);
    font-size: 27px;
    line-height: 1;
    filter: drop-shadow(0 1px 2px rgba(0, 0, 0, .18));
}
.bgblock:has(.block-law) .header-block1 h3::before { content: "🦉"; }
.bgblock:has(.mb-user) .meal_list,
.bgblock:has(.mb-user) .meal,
.bgblock:has(.form-detail) .meal_list,
.bgblock:has(.form-detail) .meal { background: none; }

/* ---- Quản lý thành viên: trạng thái CHƯA đăng nhập (form login) ---- */
.bgblock:has(.form-detail) .meal { padding: 14px; }
.bgblock:has(.form-detail) .nv-info {
    margin: 0 0 12px;
    font-size: 12.5px;
    line-height: 1.5;
    color: #6b7785;
    text-align: center;
}
.bgblock:has(.form-detail) .form-group { margin-bottom: 10px; }
.bgblock:has(.form-detail) .input-group {
    border: 1px solid #e2e7ee;
    border-radius: 10px;
    overflow: hidden;
    background: #f8fafc;
    transition: border-color .15s ease, box-shadow .15s ease;
}
.bgblock:has(.form-detail) .input-group:focus-within {
    border-color: #4dabf7;
    background: #fff;
    box-shadow: 0 0 0 3px rgba(77, 171, 247, .16);
}
.bgblock:has(.form-detail) .input-group-addon {
    border: 0;
    background: transparent;
    color: #7c93a8;
    padding: 0 10px;
}
.bgblock:has(.form-detail) .input-group .form-control {
    height: 38px;
    border: 0;
    box-shadow: none;
    background: transparent;
    font-size: 13px;
}
.bgblock:has(.form-detail) .text-center.margin-bottom-lg {
    display: flex;
    gap: 8px;
    margin-top: 4px;
}
.bgblock:has(.form-detail) .btn-default,
.bgblock:has(.form-detail) .btn-primary {
    flex: 1;
    height: 40px;
    border: 0;
    border-radius: 20px;
    font-size: 13px;
    font-weight: 700;
    transition: transform .14s ease, box-shadow .14s ease, background .14s ease;
}
.bgblock:has(.form-detail) .btn-default {
    background: #eef2f6;
    color: #5a6b7a;
}
.bgblock:has(.form-detail) .btn-default:hover { background: #e2e8ee; }
.bgblock:has(.form-detail) .btn-primary {
    color: #fff;
    background: linear-gradient(135deg, #1b6ec2, #4dabf7);
    box-shadow: 0 6px 14px rgba(27, 110, 194, .28);
}
.bgblock:has(.form-detail) .btn-primary:hover {
    transform: translateY(-1px);
    box-shadow: 0 8px 18px rgba(27, 110, 194, .38);
}
.bgblock:has(.form-detail) .form-group .text-right a {
    font-size: 12.5px;
    font-weight: 600;
    color: #1b6ec2;
}
.bgblock:has(.form-detail) .form-group .text-right a:hover { color: #f76707; }

.mb-user { padding: 12px 14px 6px; }
.mb-user .userBlock { width: 100%; }

/* --- hồ sơ --- */
.mb-profile {
    display: flex;
    align-items: center;
    gap: 12px;
    padding-bottom: 12px;
    margin-bottom: 10px;
    border-bottom: 1px dashed #e7ebf0;
}
.mb-avatar {
    flex: 0 0 54px;
    width: 54px;
    height: 54px;
    display: block;
    border-radius: 50%;
    overflow: hidden;
    border: 3px solid #e7f1fb;
    box-shadow: 0 3px 8px rgba(20, 40, 80, .12);
}
.mb-avatar img {
    width: 100% !important;
    height: 100% !important;
    max-width: none;
    object-fit: cover;
    border: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    background: none !important;
}
.mb-ident { min-width: 0; }
.mb-role {
    display: inline-block;
    font-size: 11px;
    line-height: 1.6;
    padding: 1px 9px;
    border-radius: 20px;
    font-weight: 700;
    color: #7a3d00;
    background: linear-gradient(135deg, #ffd8a8, #ffa94d);
}
.mb-name {
    display: block;
    margin-top: 4px;
    font-size: 15px;
    font-weight: 700;
    color: #16436b;
    word-break: break-word;
}

/* --- danh sách link --- */
.mb-links,
.mb-admin {
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.mb-link {
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 8px 10px;
    border-radius: 9px;
    font-size: 13px;
    color: #3a4653;
    transition: background .14s ease, color .14s ease, padding-left .14s ease;
}
.mb-link > em.fa {
    flex: 0 0 20px;
    text-align: center;
    font-size: 13px;
    color: #1b6ec2;
}
.mb-link > span { min-width: 0; }
.mb-link:hover {
    background: #eef6ff;
    color: #1b6ec2;
    padding-left: 14px;
    text-decoration: none;
}
.mb-link.active {
    background: #e7f1fb;
    color: #1b6ec2;
    font-weight: 600;
}

/* --- khu vực admin --- */
.mb-admin {
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px dashed #e7ebf0;
}
.mb-admin-title {
    padding: 0 10px 6px;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .5px;
    text-transform: uppercase;
    color: #f76707;
}
.mb-admin-title em { margin-right: 5px; }
.mb-admin .mb-link > em.fa { color: #f76707; }
.mb-admin .mb-link:hover {
    background: #fff2e8;
    color: #e8590c;
}

/* --- chân block --- */
.mb-foot {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-top: 12px;
    padding-top: 10px;
    border-top: 1px dashed #e7ebf0;
}
.mb-login {
    font-size: 11px;
    color: #8a97a5;
    line-height: 1.3;
}
.mb-login em { margin-right: 3px; }
.mb-logout {
    flex: 0 0 auto;
    border: 0;
    border-radius: 20px;
    padding: 6px 14px;
    font-size: 12px;
    font-weight: 700;
    color: #fff;
    cursor: pointer;
    white-space: nowrap;
    background: linear-gradient(135deg, #ff8787, #f03e3e);
    box-shadow: 0 4px 10px rgba(240, 62, 62, .28);
    transition: transform .14s ease, box-shadow .14s ease;
}
.mb-logout:hover {
    transform: translateY(-1px);
    box-shadow: 0 6px 14px rgba(240, 62, 62, .38);
}
.mb-logout em { margin-right: 4px; }


/* ============================================================
   Đồng bộ phong cách: BLOCK TIN XEM NHIỀU + TÌM KIẾM TÀI LIỆU
   (thẻ trắng bo góc, header IN HOA + gạch nhấn xanh)
   ============================================================ */

/* ---- Tin xem nhiều: bọc thẻ, bỏ ảnh cỏ/sao ---- */
div:has(> .block_header_star) {
    background: #fff;
    border: 1px solid #eef0f3;
    border-radius: 14px;
    box-shadow: 0 4px 16px rgba(20, 40, 80, .07);
    overflow: clip;
    overflow-clip-margin: 30px;
    padding-bottom: 6px;
}
.block_tophits {
    padding: 10px 12px 2px;
}

/* ---- Tìm kiếm tài liệu ---- */
.blocksite:has(.block_header_vetcon) {
    width: 100%;
    background: #fff;
    border: 1px solid #eef0f3;
    border-radius: 14px;
    box-shadow: 0 4px 16px rgba(20, 40, 80, .07);
    overflow: clip;
    overflow-clip-margin: 30px;
}
.blocksite:has(.block_header_vetcon) .block_header_vetcon,
.blocksite:has(.block_header_vetcon) .block_bottom {
    display: none;
}
.blocksite:has(.block_header_vetcon) .block_content {
    background: none;
    padding: 14px;
}
.blocksite:has(.block_header_vetcon) .block_content h3 {
    position: relative;
    margin: 0 0 12px;
    padding: 0 0 8px 46px;
    font-family: "Baloo 2", "Comic Sans MS", Cambria, Georgia, "Times New Roman", serif;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: .5px;
    text-transform: uppercase;
    text-align: left;
    color: #16436b;
    border: 0;
    border-bottom: 2px solid #4dabf7;
    border-image: linear-gradient(90deg, #4dabf7, #cfe8fb 55%, rgba(230, 235, 240, .35) 90%) 1;
}
.blocksite:has(.block_header_vetcon) .block_content h3::before {
    content: "🐢";
    position: absolute;
    left: -3px;
    top: 42%;
    transform: translateY(-50%);
    font-size: 27px;
    line-height: 1;
    filter: drop-shadow(0 1px 2px rgba(0, 0, 0, .18));
}
.blocksite:has(.block_header_vetcon) form p { margin: 0; }
.blocksite:has(.block_header_vetcon) .form-group { margin-bottom: 10px; }
.blocksite:has(.block_header_vetcon) .form-control {
    height: 38px;
    padding: 6px 12px;
    border: 1px solid #e2e7ee;
    border-radius: 10px;
    box-shadow: none;
    font-size: 13px;
    background: #f8fafc;
    transition: border-color .15s ease, background .15s ease, box-shadow .15s ease;
}
.blocksite:has(.block_header_vetcon) .form-control:focus {
    border-color: #4dabf7;
    background: #fff;
    box-shadow: 0 0 0 3px rgba(77, 171, 247, .16);
}
.blocksite:has(.block_header_vetcon) .btn-primary {
    display: block;
    width: 100%;
    height: 40px;
    border: 0;
    border-radius: 20px;
    font-size: 13px;
    font-weight: 700;
    color: #fff;
    background: linear-gradient(135deg, #1b6ec2, #4dabf7);
    box-shadow: 0 6px 14px rgba(27, 110, 194, .28);
    transition: transform .14s ease, box-shadow .14s ease;
}
.blocksite:has(.block_header_vetcon) .btn-primary:hover {
    transform: translateY(-1px);
    box-shadow: 0 8px 18px rgba(27, 110, 194, .38);
}


/* ============================================================
   FOOTER — dải chân trang full-width, tách hẳn khỏi body,
   phong cách mầm non (giữ ảnh minh hoạ bg_footer.jpg)
   ============================================================ */
.wraper > .row:has(> p) {
    position: relative;
    /* kéo tràn hết chiều ngang màn hình */
    margin: 40px calc(50% - 50vw) 0;
    padding: 116px 20px 26px;
    text-align: center;
    color: #fff;
    /* viền cầu vồng ngăn cách hẳn với body */
    border-top: 5px solid #ffa94d;
    border-image: linear-gradient(90deg, #ff6b6b, #ffa94d, #ffd43b, #51cf66, #4dabf7, #cc5de8) 1;
    background:
        linear-gradient(to bottom,
            rgba(22, 55, 92, 0) 0%,
            rgba(22, 55, 92, .30) 26%,
            rgba(19, 47, 80, .90) 62%,
            #132f50 100%),
        url(../images/bg_footer.jpg) top center / 1120px auto no-repeat,
        #132f50;
}
.wraper > .row:has(> p) > p {
    margin: 0 0 7px !important;
    font-size: 13.5px !important;
    line-height: 1.6;
    color: #e9f1fb !important;
}
.wraper > .row:has(> p) > p span,
.wraper > .row:has(> p) > p strong {
    color: inherit !important;
    font-weight: 600;
}
.wraper > .row:has(> p) > p:first-child {
    margin-bottom: 14px !important;
}
.wraper > .row:has(> p) > p:first-child strong {
    font-family: Cambria, Georgia, "Times New Roman", serif;
    font-size: 22px;
    font-weight: bold;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    color: #fff !important;
    text-shadow: 0 2px 10px rgba(0, 0, 0, .45);
}
/* icon trước địa chỉ / điện thoại / email */
.wraper > .row:has(> p) > p:nth-child(2) strong::before { content: "\f041"; }
.wraper > .row:has(> p) > p:nth-child(3) strong::before { content: "\f095"; }
.wraper > .row:has(> p) > p:nth-child(4) strong::before { content: "\f0e0"; }
.wraper > .row:has(> p) > p:nth-child(n+2) strong::before {
    font-family: FontAwesome;
    margin-right: 8px;
    color: #ffd8a8;
}

/* --- thanh bản quyền --- */
.main:has(> .footer) {
    margin: 0 calc(50% - 50vw);
    background: #0f2843;
}
.main:has(> .footer) > .footer {
    background: rgba(0, 0, 0, .16) !important;
    border-top: 1px solid rgba(255, 255, 255, .10);
    padding: 13px 20px !important;
    margin: 0 !important;
}
.main:has(> .footer) .text-center,
.main:has(> .footer) .text-center span {
    color: rgba(255, 255, 255, .78) !important;
    font-size: 12px;
}
.main:has(> .footer) .text-center a {
    color: #ffd8a8 !important;
}
.main:has(> .footer) .text-center a:hover { color: #fff !important; }


/* Chặn thanh cuộn ngang thừa ~7px (do .mobile-menu-wrap fixed đẩy ra ngoài) */
html, body {
    overflow-x: clip;
}


/* ================================================================================
   ██  V2 — TÔNG HỒNG PASTEL + LINH VẬT ẢNH (theme preschool2)  ██
   Toàn bộ tùy biến "giao diện đẹp" nằm gọn trong khối này. Xóa khối -> về bản cũ.
   Ảnh linh vật: themes/preschool2/images/ngonghinh/
   ================================================================================ */
@import url('https://fonts.googleapis.com/css2?family=Baloo+2:wght@600;700;800&family=Pacifico&display=swap');

/* ---------- 1. Nền trang hồng kem ---------- */
body{
    background: linear-gradient(#ffe3ef, #fff4f9 360px, #fff4f9) no-repeat #fff4f9 !important;
}
.wraper{ background:#fffafc; }

/* ---------- 2. Banner v3 (ảnh trường gửi sẵn, không ghép) ---------- */
.header{
    background-image: url(../images/banner-tuachua-v3.png) !important;
    position: relative;
}
/* Tên trường in trên tấm biển xanh của ngôi trường trong banner,
   canh giữa khoảng trống giữa 2 bông hoa trắng ở hai đầu biển */
.banner-signname{
    position:absolute;
    left:72%;
    /* width:22.5%; */
    top:49%;
    height:14%;
    transform:rotate(357deg);
    pointer-events:none;
}
.banner-signname svg{
    display:block;
    width:100%;
    height:100%;
    overflow:visible;
}
.banner-signname text{
    fill:#ffffff;
    font-family:"Baloo 2","Comic Sans MS",Cambria,Georgia,serif;
    font-weight:800;
    font-size:15px;
    letter-spacing:-.7px;
    text-transform:uppercase;
    paint-order:stroke;
    stroke:rgba(3,48,18,.6);
    stroke-width:2.6px;
    stroke-linejoin:round;
}
@media(max-width:1100px){ .banner-signname text{ font-size:14px; } }
@media(max-width:991px){ .banner-signname{ display:none; } }

/* ---------- 3. Tên trường: chữ hồng chuyển sắc + khẩu hiệu ---------- */
.topadv strong a{
    color:#4f83d6;
    letter-spacing:2px;
}
.topadv strong.mota{
    background: linear-gradient(92deg,#d81f8f 0%,#ff4fa3 42%,#ff8a5c 100%);
    -webkit-background-clip:text;
    background-clip:text;
    color:transparent;
    text-shadow:none;
    filter: drop-shadow(0 2px 3px rgba(190,30,120,.22));
    font-size:30px;
    letter-spacing:1px;
}
.topadv strong.mota::after{
    content:"Yêu thương — An toàn — Phát triển";
    display:block;
    margin-top:2px;
    font-family:"Pacifico","Baloo 2",Cambria,cursive;
    font-size:16px;
    font-weight:400;
    letter-spacing:.3px;
    text-transform:none;
    color:#e8449b;
    -webkit-text-fill-color:#e8449b;
    filter:none;
}
@media(max-width:767px){
    .topadv strong.mota{ font-size:18px; }
    .topadv strong.mota::after{ font-size:13px; }
}

/* ---------- 4. Menu ngang: 7 màu theo mẫu + icon ---------- */
/* nén lại cho vừa 1 hàng khi đã thêm icon */
#menu-site-default .navbar-nav{ gap:6px; }
#menu-site-default .navbar-nav > li > a{
    padding:8px 14px;
    font-size:16px;
    letter-spacing:0;
    white-space:nowrap;
}
@media (min-width:768px){
    #menu-site-default .navbar-nav > li > a{ padding-left:14px; padding-right:14px; }
}
/* GHI CHÚ (bản chuyển sang mnpunhung): nhãn menu dài hơn mnhoaban ("Thư viện ảnh",
   "Thư viện tài liệu" thay vì "Thư viện") nên 7 mục bị tràn quá bề rộng cột menu,
   xuống hàng 2 (mục "Công khai" rơi xuống dưới). Thay vì thu nhỏ nút (nhìn sát nhau),
   GIỮ NGUYÊN kích thước nút như cũ và nới cột menu / thu hẹp + đẩy ô tìm kiếm sang phải
   (xem grid col-sm-19/col-sm-5 trong global.bootstrap.tpl + phần "4c" bên dưới). */
#menu-site-default .navbar-nav > li:nth-child(1) > a { background:#e63950; }
#menu-site-default .navbar-nav > li:nth-child(2) > a { background:#3f8fdb; }
#menu-site-default .navbar-nav > li:nth-child(3) > a { background:#39b56a; }
#menu-site-default .navbar-nav > li:nth-child(4) > a { background:#a94fd0; }
#menu-site-default .navbar-nav > li:nth-child(5) > a { background:#f0942a; }
#menu-site-default .navbar-nav > li:nth-child(6) > a { background:#1fb0c4; }
#menu-site-default .navbar-nav > li:nth-child(7) > a { background:#ee5aa4; }

#menu-site-default .navbar-nav > li > a::before{
    font-family:FontAwesome;
    font-size:14px;
    margin-right:7px;
    opacity:.95;
}
#menu-site-default .navbar-nav > li:nth-child(1) > a::before{ content:"\f015"; } /* home */
#menu-site-default .navbar-nav > li:nth-child(2) > a::before{ content:"\f02d"; } /* book */
#menu-site-default .navbar-nav > li:nth-child(3) > a::before{ content:"\f1ea"; } /* newspaper */
#menu-site-default .navbar-nav > li:nth-child(4) > a::before{ content:"\f0f6"; } /* file-text */
#menu-site-default .navbar-nav > li:nth-child(5) > a::before{ content:"\f03e"; } /* picture */
#menu-site-default .navbar-nav > li:nth-child(6) > a::before{ content:"\f0a1"; } /* bullhorn */
#menu-site-default .navbar-nav > li:nth-child(7) > a::before{ content:"\f0e0"; } /* envelope */

/* ---------- 4b. Làm BÓNG (glossy) menu ngang cho nổi khối, đỡ phẳng ---------- */
#menu-site-default .navbar-nav > li:nth-child(1) > a,
#menu-site-default .navbar-nav > li:nth-child(2) > a,
#menu-site-default .navbar-nav > li:nth-child(3) > a,
#menu-site-default .navbar-nav > li:nth-child(4) > a,
#menu-site-default .navbar-nav > li:nth-child(5) > a,
#menu-site-default .navbar-nav > li:nth-child(6) > a,
#menu-site-default .navbar-nav > li:nth-child(7) > a{
    position:relative;
    overflow:hidden;
    background-image:
        linear-gradient(180deg,
            rgba(255,255,255,.55) 0%,
            rgba(255,255,255,.12) 42%,
            rgba(0,0,0,.05) 60%,
            rgba(0,0,0,.18) 100%);
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.7),
        inset 0 -3px 5px rgba(0,0,0,.18),
        0 3px 7px rgba(0,0,0,.20);
    text-shadow:0 1px 1px rgba(0,0,0,.28);
}
/* vệt sáng bóng vắt qua nửa trên nút, kiểu nút thuỷ tinh */
#menu-site-default .navbar-nav > li > a::after{
    content:"";
    position:absolute;
    left:4%; right:4%; top:8%;
    height:40%;
    background:linear-gradient(180deg, rgba(255,255,255,.6), rgba(255,255,255,0));
    border-radius:50%/100%;
    pointer-events:none;
}
/* hover: bóng đậm hơn để rõ hiệu ứng nhấn nổi */
#menu-site-default .navbar-nav > li > a:hover,
#menu-site-default .navbar-nav > li > a:focus,
#menu-site-default .navbar-nav > li:hover > a,
#menu-site-default .navbar-nav > li.open > a{
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.8),
        inset 0 -3px 5px rgba(0,0,0,.2),
        0 8px 16px rgba(0,0,0,.24);
}

/* ---------- 5. Ô tìm kiếm: viền hồng ---------- */
.headerSearch .input-group{ border-color:#f7c6dd; }
.headerSearch .input-group-btn .btn:hover{ color:#e8449b; }

/* ---------- 6. LINH VẬT ẢNH thay cho emoji ở tiêu đề khối ----------
   Chuyển ::before từ ký tự emoji sang ô nền ảnh PNG (giữ nguyên vị trí đã canh). */
.nc-title::before,
.blocksite:has(.stat-box) .block_content h3::before,
.blocksite:has(.block_header_vetcon) .block_content h3::before,
.bgblock:has(.mb-user) .header-block1 h3::before,
.bgblock:has(.form-detail) .header-block1 h3::before,
.bgblock:has(.block-law) .header-block1 h3::before,
.block_header_star::before{
    content:"" !important;
    width:52px;
    height:52px;
    background-repeat:no-repeat;
    background-position:center bottom;
    background-size:contain;
    font-size:0 !important;
    filter: drop-shadow(0 3px 3px rgba(176,37,121,.20));
}
/* tiêu đề khối cột hẹp: thu nhỏ chữ để không xuống dòng */
.blocksite:has(.stat-box) .block_content h3,
.blocksite:has(.block_header_vetcon) .block_content h3,
.bgblock:has(.mb-user) .header-block1 h3,
.bgblock:has(.form-detail) .header-block1 h3,
.bgblock:has(.block-law) .header-block1 h3,
.block_header_star h3{
    font-size:14px;
    white-space:nowrap;
}
/* Tin tức nhà trường / Hoạt động chuyên môn / Hoạt động công đoàn (lặp 3) */
.nc-title::before                              { background-image:url(../images/ngonghinh/hoc_bai.png); }
.nc-sec:nth-of-type(3n+2) .nc-title::before    { background-image:url(../images/ngonghinh/mat_troi.png); }
.nc-sec:nth-of-type(3n)   .nc-title::before    { background-image:url(../images/ngonghinh/hoa.png); }
.nc-title{ padding-left:52px; }

/* Thống kê truy cập -> voi */
.blocksite:has(.stat-box) .block_content h3::before{
    background-image:url(../images/ngonghinh/v2_voi.png);
}
.blocksite:has(.stat-box) .block_content h3{ padding-left:44px; }

/* Tìm kiếm tài liệu -> sóc */
.blocksite:has(.block_header_vetcon) .block_content h3::before{
    background-image:url(../images/ngonghinh/v2_soc.png);
}
.blocksite:has(.block_header_vetcon) .block_content h3{ padding-left:44px; }

/* Quản lý thành viên -> chó */
.bgblock:has(.mb-user) .header-block1 h3::before,
.bgblock:has(.form-detail) .header-block1 h3::before{
    background-image:url(../images/ngonghinh/v2_cho.png);
}
/* Văn bản mới -> gà */
.bgblock:has(.block-law) .header-block1 h3::before{
    background-image:url(../images/ngonghinh/v2_ga.png);
}
/* Tin xem nhiều -> cáo */
.block_header_star::before{
    background-image:url(../images/ngonghinh/v2_cao.png);
}

/* Ảnh nhà trường: bươm bướm cạnh chữ.
   Hạ z-index cụm caption/mây/dây cờ xuống dưới menu để không đè lên menu sổ xuống. */
/* mây / dây cờ / nhãn: nằm TRÊN cả viền khung (sf-frame) nhưng vẫn dưới menu (z50) */
.sf-main .sf-cap,
.sf-main .sf-cloud,
.sf-main .sf-garland{ z-index:6 !important; }
.sf-main .sf-cap{ padding-left:40px; }
.sf-main .sf-cap::before{
    content:"";
    position:absolute; left:0; top:50%; transform:translateY(-50%);
    width:34px; height:32px;
    background:url(../images/ngonghinh/v2_meo.png) center/contain no-repeat;
}

/* Trang trí góc dưới-phải khung ảnh nhà trường (theo mẫu):
   luống hoa (hoa 1) + biển gỗ "Cùng nhau yêu thương" đứng trong luống hoa */
.sf-main{ margin-bottom:34px; }
.sf-main::before,
.sf-main::after{
    content:"";
    position:absolute;
    background-repeat:no-repeat;
    background-position:center bottom;
    background-size:contain;
    pointer-events:none;
    z-index:2;
}
/* viền khung TRẮNG phủ LÊN TRÊN ảnh toàn bộ chu vi -> ảnh nằm sau khung,
   gốc luống hoa (z-index 3) chui vào sau viền -> "lồng vào trong khung" */
.sf-main .sf-frame{
    position:absolute;
    left:16px; right:16px; top:16px; bottom:18px;
    border-radius:16px;
    box-shadow:
        inset 0 0 0 11px #ffffff,
        inset 0 0 0 14px rgba(77,171,247,.34),
        inset 0 0 22px -6px rgba(20,40,80,.18);
    pointer-events:none;
    z-index:4;
}
@media(max-width:991px){ .sf-main .sf-frame{ display:none; } }

.sf-main::before{                       /* luống hoa nằm TRONG mép đáy khung, bên phải */
    right:8px; bottom:14px;
    width:210px; height:82px;
    background-image:url(../images/ngonghinh/hoa_dai.png);
    filter:drop-shadow(0 3px 5px rgba(20,40,80,.16));
}
.sf-main .sf-flower-left{              /* luống hoa nằm TRONG mép đáy khung, bên trái (đối xứng) */
    position:absolute;
    left:8px; bottom:14px;
    width:210px; height:82px;
    z-index:2;
    pointer-events:none;
    background:url(../images/ngonghinh/hoa_dai.png) center bottom / contain no-repeat;
    transform:scaleX(-1);
    filter:drop-shadow(0 3px 5px rgba(20,40,80,.16));
}
@media(max-width:991px){ .sf-main .sf-flower-left{ display:none; } }
.sf-main::after{                        /* biển gỗ đứng trong luống hoa bên phải */
    right:22px; bottom:26px;
    width:112px; height:92px;
    background-image:url(../images/ngonghinh/bien_go.png);
    filter:drop-shadow(0 5px 9px rgba(20,40,80,.24));
}
@media(max-width:991px){
    .sf-main::before,.sf-main::after{ display:none; }
    .sf-main{ margin-bottom:30px; }
}

/* ---------- 6b. HỢP NHẤT LINH VẬT VÀO KHỐI ----------
   Tiêu đề khối = dải nền bo góc trên theo thẻ; linh vật to hơn, đè lên góc
   trên-trái của dải, có bóng -> nhìn như "dính liền" với khối (theo mẫu). */
.bgblock:has(.block-law) .header-block1 h3,
.bgblock:has(.mb-user) .header-block1 h3,
.bgblock:has(.form-detail) .header-block1 h3,
.blocksite:has(.stat-box) .block_content h3,
.blocksite:has(.block_header_vetcon) .block_content h3,
.block_header_star{
    position:relative;
    display:flex;
    align-items:center;
    min-height:56px;
    margin:0 0 14px;
    padding:12px 14px 12px 74px;
    background:linear-gradient(180deg,#ffe7f2 0%,#ffcfe4 100%);
    border:0;
    border-bottom:2px solid #ff92be !important;
    border-image:none !important;
    border-radius:14px 14px 0 0;
}
/* khối có .block_content bọc padding 14px -> cho dải tiêu đề tràn ra sát mép thẻ */
.blocksite:has(.stat-box) .block_content h3,
.blocksite:has(.block_header_vetcon) .block_content h3{
    margin:-14px -14px 14px;
}
.block_header_star h3{ font-size:14px; white-space:nowrap; }
/* chừa lề rộng hơn cho linh vật thò ra khỏi thẻ */
.bgblock:has(.mb-user), .bgblock:has(.form-detail), .bgblock:has(.block-law),
.blocksite:has(.stat-box), .blocksite:has(.block_header_vetcon),
div:has(> .block_header_star){
    overflow-clip-margin:44px;
}

/* linh vật (thân nguyên vẹn) ĐỨNG trên dải tiêu đề: chân chạm đáy dải, nhô nhẹ lên trên,
   bóng tiếp xúc mềm -> hoà vào khối, không còn "mất góc" */
.blocksite:has(.stat-box) .block_content h3::before,
.blocksite:has(.block_header_vetcon) .block_content h3::before,
.bgblock:has(.mb-user) .header-block1 h3::before,
.bgblock:has(.form-detail) .header-block1 h3::before,
.bgblock:has(.block-law) .header-block1 h3::before,
.block_header_star::before{
    width:60px !important;
    height:64px !important;
    left:6px !important;
    top:auto !important;
    bottom:-2px !important;
    transform:none !important;
    background-position:center bottom !important;
    filter:drop-shadow(0 4px 4px rgba(176,37,121,.22)) !important;
}

/* --- Chuyên mục tin tức trang chủ: cho .nc-head thành dải pill, linh vật đè góc --- */
.nc-head{
    position:relative;
    min-height:58px;
    padding:9px 16px 9px 78px;
    background:linear-gradient(180deg,#ffe7f2,#ffd0e6);
    border:0 !important;
    border-image:none !important;
    border-radius:15px;
    box-shadow:0 3px 12px rgba(176,37,121,.10);
}
.nc-head::before{
    content:"";
    position:absolute;
    left:8px; bottom:-2px;
    width:64px; height:66px;
    background:center bottom/contain no-repeat;
    filter:drop-shadow(0 4px 4px rgba(176,37,121,.22));
}
.nc-sec .nc-head::before                     { background-image:url(../images/ngonghinh/v2_canhcut.png); } /* Tin tức nhà trường */
.nc-sec:nth-of-type(3n+2) .nc-head::before   { background-image:url(../images/ngonghinh/v2_khi.png); }     /* Hoạt động chuyên môn */
.nc-sec:nth-of-type(3n)   .nc-head::before   { background-image:url(../images/ngonghinh/v2_gautruc.png); } /* Hoạt động công đoàn */
.nc-title::before{ display:none !important; }
.nc-title{ padding-left:0; }

/* ---------- 7. Đổi tông nhấn xanh -> hồng/cam ---------- */
.nc-head{
    border-bottom-color:#ff7ab0;
}
.nc-title a{ color:#c02579; }
.nc-title a:hover{ color:#e8449b; }
.nc-sub a{ background:#ffe6f1; color:#c23b86; }
.nc-sub a:hover{ background:#e8449b; color:#fff; }
.nc-all{ color:#e8449b; }
.nc-all:hover{ color:#f0942a; }
.nc-list li::before{ background:#ff7ab0; }
.nc-list li:hover::before{ background:#e8449b; }
.nc-list li:hover a.show{ color:#c02579; }
.nc-feat-title a{ color:#a52168; }
.nc-feat:hover .nc-feat-title a{ color:#e8449b; }
.nc-feat-more{ color:#f0942a; }

.block_header_star,
.blocksite:has(.stat-box) .block_content h3,
.blocksite:has(.block_header_vetcon) .block_content h3,
.bgblock:has(.mb-user) .header-block1 h3,
.bgblock:has(.form-detail) .header-block1 h3,
.bgblock:has(.block-law) .header-block1 h3{
    color:#c02579;
    border-bottom-color:#ff7ab0;
    border-image: linear-gradient(90deg,#ff5fa8,#ffd8e7 55%,rgba(255,225,235,.35) 90%) 1;
}

.bgblock .block-law .item{ border-left-color:#ff7ab0; }
.bgblock .block-law .item:hover{ border-left-color:#f0942a; }
.bgblock .block-law .law-code a{ color:#c23b86; background:#ffe6f1; }
.bgblock .block-law .item:hover .law-code a{ background:#e8449b; color:#fff; }
.bgblock .block-law .item:hover .law-title{ color:#c02579 !important; }

.block_tophits > li:hover{ background:#fff4f9; }
.block_tophits > li:hover .show{ color:#c02579; }
.block_tophits > li:nth-child(-n+3)::before{ background:#f0942a; }

.stat-total{ background:linear-gradient(135deg,#e8449b,#ff8fbf); box-shadow:0 8px 18px rgba(232,68,155,.3); }
.stat-list > li:nth-child(6n+1) .stat-ico{ background:linear-gradient(135deg,#ff9ccb,#f06595); }
.stat-list > li:nth-child(6n+3) .stat-ico{ background:linear-gradient(135deg,#d0bfff,#9775fa); }

.blocksite:has(.block_header_vetcon) .btn-primary,
.bgblock:has(.form-detail) .btn-primary{
    background:linear-gradient(135deg,#e8449b,#ff7ab0);
    box-shadow:0 6px 14px rgba(232,68,155,.28);
}
.mb-link:hover{ background:#ffeef6; color:#c02579; }
.mb-link.active{ background:#ffe0ee; color:#c02579; }
.mb-link > em.fa{ color:#e8449b; }

/* ---------- 8. FOOTER — dùng ảnh footer.png (nấm + cầu vồng + hoa, dải chữ nền xanh) ---------- */
.wraper > .row:has(> p){
    color:#eaf2ff;
    border-top:5px solid #ffa94d;
    border-image: linear-gradient(90deg,#ff6b6b,#ffa94d,#ffd43b,#8ce99a,#74c0fc,#d0bfff) 1;
    background:#033b5c url(../images/footer.png) top center / 100% auto no-repeat;
    /* khối thông tin đơn vị nằm khoảng giữa ảnh footer; đáy cắt bớt dải xanh uốn lượn */
    padding:128px 20px 118px;
}
.wraper > .row:has(> p) > p,
.wraper > .row:has(> p) > p span,
.wraper > .row:has(> p) > p strong{ color:#eaf2ff !important; }
.wraper > .row:has(> p) > p:first-child strong{
    color:#ffffff !important;
    text-shadow:0 2px 10px rgba(0,0,0,.55);
}
.wraper > .row:has(> p) > p:nth-child(n+2) strong::before{ color:#ffd8a8; }
@media(max-width:767px){
    .wraper > .row:has(> p){ padding:96px 20px 140px; background-size:auto 260px; }
}
/* GHI CHÚ (bản chuyển sang mnpunhung): site này không có cấu trúc ".wraper > .row"
   mang nội dung FOOTER_SITE trực tiếp như mnhoaban (khác cấu hình block COMPANY_INFO),
   nội dung khối chân trang thực tế nằm trong ".main > .footer > .text-center".
   -> gắn thẳng ảnh footer.png + toàn bộ style lên ".main:has(> .footer)" luôn. */
.main:has(> .footer){
    position:relative;
    z-index:2;
    color:#eaf2ff;
    border-top:5px solid #ffa94d;
    border-image: linear-gradient(90deg,#ff6b6b,#ffa94d,#ffd43b,#8ce99a,#74c0fc,#d0bfff) 1;
    background:#033b5c url(../images/footer.png) top center / 100% auto no-repeat;
}
.main:has(> .footer) > .footer{
    background:transparent !important;
    border-top:0 !important;
    padding:170px 20px 90px !important;
    margin:0 auto !important;
    width:100% !important;
    max-width:none !important;
    text-align:center !important;
}
.main:has(> .footer) > .footer > *{ margin-left:auto !important; margin-right:auto !important; float:none !important; }
.main:has(> .footer) .text-center,
.main:has(> .footer) .text-center span,
.main:has(> .footer) .text-center p{ color:#eaf2ff !important; }
.main:has(> .footer) .text-center > p{ margin:0 0 7px !important; font-size:13.5px !important; line-height:1.6; }
.main:has(> .footer) .text-center > p:first-child,
.main:has(> .footer) .text-center > p:first-child strong,
.main:has(> .footer) .text-center > p:first-child span{
    color:#ffffff !important;
    font-size:20px !important;
    text-transform:uppercase;
    letter-spacing:.8px;
    text-shadow:0 2px 10px rgba(0,0,0,.55) !important;
}
.main:has(> .footer) .text-center a{ color:#ffd8a8 !important; }
.main:has(> .footer) .text-center a:hover{ color:#fff !important; }
@media(max-width:767px){
    .main:has(> .footer){ background-size:auto 260px; }
    .main:has(> .footer) > .footer{ padding:110px 20px 70px !important; }
}

/* (da bo cay nam roi trang tri goc duoi trang) */

/* ---------- 10. Nút chuyển giao diện (Tự động/Máy tính/Điện thoại) + về đầu trang ----------
   Đặt ở góc DƯỚI-TRÁI dải bản quyền, sát mép màn hình. KHÔNG còn thanh trắng riêng. */
.footerNav2{
    position:absolute;
    left:10px;
    bottom:5px;
    display:flex;
    align-items:center;
    gap:6px;
    background:none;
    border:0;
    padding:0;
    margin:0;
    width:auto;
    min-height:0;
    z-index:4;
}
.footerNav2 .theme-change{
    float:none; margin:0; height:auto;
    display:inline-flex; gap:6px;
}
.footerNav2 .theme-change a,
.footerNav2 .theme-change span,
.footerNav2 .bttop a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:26px; height:26px;
    margin:0;
    border-radius:50%;
    background:rgba(255,255,255,.92);
    color:#c23b86;
    font-size:12px;
    line-height:1;
    box-shadow:0 1px 4px rgba(0,0,0,.28);
    transition:background .15s ease, color .15s ease, transform .15s ease;
}
.footerNav2 .theme-change span{ background:#e8449b; color:#fff; } /* chế độ đang hiển thị */
.footerNav2 .theme-change a:hover,
.footerNav2 .bttop a:hover{ background:#e8449b; color:#fff; transform:translateY(-1px); }
.footerNav2 .bttop{ float:none; margin:0; width:auto; height:auto; }
.footerNav2 .theme-change .fa-mobile{ font-size:15px; }
@media(max-width:767px){ .footerNav2{ left:6px; bottom:4px; } }

/* ============================================================
   11. Block ẢNH SỰ KIỆN (album tab, nằm ngay trên footer) — thiết kế lại
   thành thẻ (card) bo góc, nhãn dán tiêu đề, tab chọn album kiểu viên
   thuốc nhiều màu, ảnh dạng "polaroid" hơi nghiêng + biểu tượng dán góc,
   đồng bộ phong cách với các khối khác (Baloo 2, bo tròn, đổ bóng mềm).
   ============================================================ */
.block_album_tab_new{
    position:relative;
    margin:30px 4px 32px;
    padding:34px 16px 16px;
    background:#fff;
    border:1px solid #eef0f3;
    border-radius:20px;
    box-shadow:0 10px 26px rgba(20,40,80,.10);
}
/* nhãn dán tiêu đề, đè lên mép trên-trái thẻ, hơi nghiêng cho sinh động;
   linh vật (thỏ con) đứng đè lên góc trái nhãn, theo đúng kiểu "hợp nhất linh vật
   vào khối" đã dùng cho các khối khác (mục 6/6b). */
.block_album_tab_new::before{
    content:"Khoảnh khắc đáng nhớ";
    position:absolute;
    left:22px; top:-16px;
    padding:8px 18px 8px 40px;
    font-family:"Baloo 2","Comic Sans MS",Cambria,Georgia,"Times New Roman",serif;
    font-size:14px;
    font-weight:700;
    letter-spacing:.3px;
    color:#fff;
    white-space:nowrap;
    background:linear-gradient(135deg,#51cf66,#22b8cf);
    border-radius:999px;
    box-shadow:0 6px 14px rgba(34,184,207,.35);
    transform:rotate(-2deg);
}
.block_album_tab_new::after{
    content:"";
    position:absolute;
    left:2px; top:-60px;
    width:74px; height:74px;
    background:url(../images/ngonghinh/v2_tho.png) center/contain no-repeat;
    filter:drop-shadow(0 4px 6px rgba(0,0,0,.28));
    transform:rotate(-8deg);
    z-index:2;
}
@media(max-width:480px){
    .block_album_tab_new::before{ font-size:12px; padding:6px 14px 6px 32px; left:14px; }
    .block_album_tab_new::after{ left:-4px; top:-52px; width:60px; height:60px; }
}

/* ---- thanh chọn album: nút viên thuốc bo tròn ---- */
.block_album_tab_new .nav-tabs{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    border:0;
    margin:0 0 16px;
}
.block_album_tab_new .nav-tabs > li{ float:none; margin:0; }
.block_album_tab_new .nav-tabs > li > a{
    display:inline-flex;
    align-items:center;
    gap:6px;
    margin:0;
    padding:8px 16px;
    font-family:"Baloo 2","Comic Sans MS",Cambria,Georgia,"Times New Roman",serif;
    font-size:13px;
    font-weight:600;
    color:#4a5b6c;
    background:#f3f6fa;
    border:0;
    border-radius:999px;
    transition:transform .16s ease, box-shadow .16s ease, background .16s ease, color .16s ease;
}
.block_album_tab_new .nav-tabs > li > a::before{
    content:"\f03e"; /* fa-picture-o */
    font-family:FontAwesome;
    font-size:12px;
    opacity:.8;
}
.block_album_tab_new .nav-tabs > li > a:hover{
    background:#e7f1fb;
    color:#1b6ec2;
}
.block_album_tab_new .nav-tabs > li.active > a,
.block_album_tab_new .nav-tabs > li.active > a:hover,
.block_album_tab_new .nav-tabs > li.active > a:focus{
    color:#fff;
    background:linear-gradient(135deg,#4dabf7,#51cf66);
    border:0;
    box-shadow:0 6px 14px rgba(77,171,247,.35);
    transform:translateY(-1px);
}

/* ---- lưới ảnh kiểu "polaroid" hơi nghiêng + nhãn dán góc ---- */
.block_album_tab_new .tab-content,
.block_album_tab_new .tab-pane{ padding:0; }
.block_album_tab_new .tab-pane .row{ margin:0 -6px; }
.block_album_tab_new .tab-pane .row > div{
    padding:0 6px;
    margin-bottom:14px;
}
.block_album_tab_new .tab-pane .row a{
    display:block;
    position:relative;
    overflow:visible;
    transition:transform .2s ease;
}
.block_album_tab_new .tab-pane .row > div:nth-child(4n+1) a{ transform:rotate(-1.6deg); }
.block_album_tab_new .tab-pane .row > div:nth-child(4n+2) a{ transform:rotate(1.2deg); }
.block_album_tab_new .tab-pane .row > div:nth-child(4n+3) a{ transform:rotate(-.9deg); }
.block_album_tab_new .tab-pane .row > div:nth-child(4n+4) a{ transform:rotate(1.7deg); }
.block_album_tab_new .tab-pane .row a:hover{
    transform:rotate(0) scale(1.045);
    z-index:2;
}
.block_album_tab_new .tab-pane .row a img.img-thumbnail{
    display:block;
    width:100%;
    height:170px;
    object-fit:contain; /* GHI CHÚ: dùng contain (không cover) để không bị cắt mất
        góc/đầu ảnh — nhiều ảnh gốc là ảnh dọc (chân dung), cover trước đây cắt mất
        phần chữ trên băng-rôn ở đầu ảnh. */
    padding:4px;
    border:4px solid #fff;
    border-radius:12px;
    background:#f3f6fa;
    box-shadow:0 6px 16px rgba(20,40,80,.16);
    transition:box-shadow .2s ease;
}
.block_album_tab_new .tab-pane .row a:hover img.img-thumbnail{
    box-shadow:0 14px 28px rgba(20,40,80,.26);
}
@media(min-width:768px){
    .block_album_tab_new .tab-pane .row a img.img-thumbnail{ height:185px; }
}
/* nhãn dán nhỏ ở góc mỗi ảnh, đổi luân phiên cho vui mắt */
.block_album_tab_new .tab-pane .row a::after{
    position:absolute; top:-8px; right:-6px;
    font-size:20px;
    filter:drop-shadow(0 2px 3px rgba(0,0,0,.25));
    pointer-events:none;
}
.block_album_tab_new .tab-pane .row > div:nth-child(4n+1) a::after{ content:"⭐"; }
.block_album_tab_new .tab-pane .row > div:nth-child(4n+2) a::after{ content:"🌸"; }
.block_album_tab_new .tab-pane .row > div:nth-child(4n+3) a::after{ content:"🎀"; }
.block_album_tab_new .tab-pane .row > div:nth-child(4n+4) a::after{ content:"🦋"; }
@media(max-width:767px){
    .block_album_tab_new .tab-pane .row a,
    .block_album_tab_new .tab-pane .row a:hover{ transform:none; }
}

/* ============================================================
   CHUYEN MUC TIN TUC dang danh sach: moi tin 1 dong co anh dai dien
   (viewcat_main_right) - tin chua co anh dung hinh linh vat
   ============================================================ */
.nc-sec .nc-body { display: block; }
.nc-items { list-style: none; margin: 0; padding: 0; width: 100%; }
.nc-item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 9px 8px;
    border-bottom: 1px dashed #f3b6d1;
    border-radius: 12px;
    transition: background .15s ease;
}
.nc-item:last-child { border-bottom: 0; }
.nc-item:hover { background: #fff4f9; }
.nc-item-thumb {
    flex: 0 0 96px;
    width: 96px;
    height: 68px;
    display: block;
    overflow: hidden;
    border-radius: 12px;
    border: 3px solid #fff;
    box-shadow: 0 2px 8px rgba(192, 37, 121, .18);
    background: #ffe6f1;
}
.nc-item-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .25s ease;
}
.nc-item:hover .nc-item-thumb img { transform: scale(1.07); }
.nc-item-thumb.is-mascot { background: linear-gradient(135deg, #ffe6f1, #fff4d6); }
.nc-item-thumb.is-mascot img { object-fit: contain; padding: 6px; }
.nc-item-main { flex: 1 1 auto; min-width: 0; }
.nc-item-title { margin: 0 0 4px; font-size: 15px; line-height: 1.35; font-weight: 700; }
.nc-item-title a { color: #a52168; }
.nc-item-title a:hover { color: #e8449b; }
.nc-item.is-new .nc-item-title a::after {
    content: "MỚI";
    display: inline-block;
    margin-left: 6px;
    padding: 0 6px;
    border-radius: 8px;
    background: #f0942a;
    color: #fff;
    font-size: 10px;
    font-weight: 700;
    vertical-align: middle;
}
.nc-item-meta { font-size: 12px; color: #8a8a8a; margin-bottom: 4px; }
.nc-item-meta .fa { color: #e8449b; margin-right: 3px; }
.nc-item-desc {
    margin: 0;
    font-size: 13px;
    line-height: 1.5;
    color: #555;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
@media (max-width: 480px) {
    .nc-item-thumb { flex-basis: 80px; width: 80px; height: 58px; }
    .nc-item-desc { -webkit-line-clamp: 3; }
}
/* anh linh vat thay cho anh thieu/hong o cac khoi tin khac */
img.is-mascot-img {
    object-fit: contain !important;
    background: linear-gradient(135deg, #ffe6f1, #fff4d6);
    border-radius: 8px;
}

/* ============================================================
   THU VIEN ANH + THU VIEN VIDEO - giao dien the mau, linh vat
   ============================================================ */
/* --- tieu de co linh vat --- */
.ph-sec { margin: 0 0 18px; }
.ph-sec .nc-head::before { background-image: url(../images/ngonghinh/v2_meo.png) !important; }
.ph-sec:nth-of-type(2n) .nc-head::before { background-image: url(../images/ngonghinh/v2_cho.png) !important; }
.ph-sec .nc-title { margin: 0; }
.ph-sec .nc-sub a { cursor: default; }
.vd-sec { margin-bottom: 26px; }
.vd-sec .nc-head::before { background-image: url(../images/ngonghinh/v2_cao.png) !important; }
.vd-sec:nth-of-type(2n) .nc-head::before { background-image: url(../images/ngonghinh/v2_ga.png) !important; }
.vd-sec:nth-of-type(3n) .nc-head::before { background-image: url(../images/ngonghinh/v2_voi.png) !important; }

/* --- album anh --- */
[id^="photo-"] .album-album { margin-bottom: 22px; }
[id^="photo-"] .album-album .panel {
    position: relative;
    margin: 0;
    border: 3px solid #fff;
    border-radius: 22px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 6px 18px rgba(192, 37, 121, .16);
    transition: transform .25s ease, box-shadow .25s ease;
}
[id^="photo-"] .album-album:nth-child(odd) .panel { transform: rotate(-.5deg); }
[id^="photo-"] .album-album:nth-child(even) .panel { transform: rotate(.5deg); }
[id^="photo-"] .album-album .panel:hover {
    transform: translateY(-6px) rotate(0) scale(1.02);
    box-shadow: 0 14px 28px rgba(192, 37, 121, .26);
}
[id^="photo-"] .album-image {
    position: relative;
    padding: 0 !important;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    background: linear-gradient(135deg, #ffe6f1, #fff4d6);
}
[id^="photo-"] .album-image a { display: block; width: 100%; height: 100%; }
[id^="photo-"] .album-image img {
    width: 100%;
    height: 100%;
    max-width: none;
    object-fit: cover;
    display: block;
    transition: transform .35s ease;
}
[id^="photo-"] .album-album .panel:hover .album-image img { transform: scale(1.09); }
[id^="photo-"] .album-image::after {
    content: "\f030";
    font-family: FontAwesome;
    position: absolute;
    top: 10px;
    left: 10px;
    width: 32px;
    height: 32px;
    line-height: 32px;
    text-align: center;
    border-radius: 50%;
    background: linear-gradient(135deg, #ff7ab0, #e8449b);
    color: #fff;
    font-size: 14px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .25);
    pointer-events: none;
}
[id^="photo-"] .catalog_content {
    padding: 10px 14px 14px !important;
    border: 0;
    background: linear-gradient(#fff, #fff4f9);
}
[id^="photo-"] .album-name h3 {
    height: auto;
    min-height: 40px;
    margin: 0 0 4px;
    font-size: 15px;
    line-height: 1.4;
    font-weight: 700;
}
[id^="photo-"] .album-name h3 a { color: #a52168; }
[id^="photo-"] .album-name h3 a:hover { color: #e8449b; }
[id^="photo-"] .album-name h4 { margin: 0 0 6px; font-size: 12px; color: #999; font-weight: 400; }
[id^="photo-"] .catalog_content .btn-primary {
    border: 0;
    border-radius: 20px;
    padding: 5px 14px;
    font-size: 12.5px;
    background: linear-gradient(90deg, #ff7ab0, #e8449b);
    box-shadow: 0 3px 8px rgba(232, 68, 155, .35);
}
[id^="photo-"] .catalog_content .btn-primary:hover { background: linear-gradient(90deg, #f0942a, #e8449b); }
[id^="photo-"] .catalog_content .text-muted { float: right; margin-top: 6px; font-size: 12px; }
[id^="photo-"] .catalog_content .text-muted .fa { color: #e8449b; }

/* --- video --- */
.vd-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(190px, 1fr));
    gap: 18px;
    margin: 16px 0 6px;
}
.vd-card {
    display: flex;
    flex-direction: column;
    background: #fff;
    border: 3px solid #fff;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 5px 16px rgba(192, 37, 121, .14);
    transition: transform .25s ease, box-shadow .25s ease;
}
.vd-card:hover { transform: translateY(-5px); box-shadow: 0 14px 26px rgba(192, 37, 121, .25); }
.vd-thumb {
    position: relative;
    display: block;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: linear-gradient(135deg, #ffe6f1, #fff4d6);
}
.vd-thumb img {
    width: 100%;
    height: 100%;
    max-width: none;
    object-fit: cover;
    display: block;
    transition: transform .35s ease;
}
.vd-card:hover .vd-thumb img { transform: scale(1.09); }
.vd-play {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 50px;
    height: 50px;
    margin: -25px 0 0 -25px;
    border-radius: 50%;
    border: 3px solid #fff;
    background: linear-gradient(135deg, #ff7ab0, #e8449b);
    color: #fff;
    font-size: 17px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-left: 3px;
    box-shadow: 0 4px 14px rgba(0, 0, 0, .3);
    transition: transform .2s ease;
}
.vd-card:hover .vd-play { transform: scale(1.18); }
.vd-info { padding: 10px 12px 12px; }
.vd-title {
    margin: 0 0 6px;
    min-height: 40px;
    height: auto !important;
    font-size: 14.5px;
    line-height: 1.4;
    font-weight: 700;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.vd-title a { color: #a52168; }
.vd-title a:hover { color: #e8449b; }
.vd-meta { display: flex; flex-wrap: wrap; gap: 3px 12px; font-size: 12px; color: #8a8a8a; }
.vd-meta a { color: #8a8a8a; }
.vd-meta .fa { color: #e8449b; margin-right: 2px; }
.vd-admin:empty { display: none; }
.vd-catdesc {
    display: flex;
    gap: 14px;
    align-items: center;
    margin-bottom: 8px;
    padding: 12px 16px;
    border-radius: 16px;
    background: #fff4f9;
}
.vd-catdesc h3 { margin: 0 0 4px; font-size: 17px; color: #c02579; }
.vd-catdesc p { margin: 0; font-size: 13px; color: #555; }
.vd-catdesc-img { width: 90px; height: 64px; object-fit: cover; border-radius: 12px; }
@media (max-width: 480px) {
    .vd-grid { grid-template-columns: 1fr 1fr; gap: 12px; }
    .vd-title { font-size: 13px; }
}

/* --- chi tiet video --- */
.detail_container .detail_header .title {
    margin: 0 0 12px;
    padding: 12px 16px;
    font-family: "Baloo 2", "Comic Sans MS", Cambria, Georgia, serif;
    font-size: 20px;
    line-height: 1.35;
    font-weight: 700;
    color: #a52168;
    background: linear-gradient(180deg, #ffe7f2, #ffd0e6);
    border-radius: 16px;
    box-shadow: 0 3px 12px rgba(176, 37, 121, .10);
}
.detail_container .videoplayer {
    margin-bottom: 12px;
    border: 4px solid #fff;
    border-radius: 20px;
    overflow: hidden;
    background: #16436b;
    box-shadow: 0 8px 22px rgba(192, 37, 121, .22);
}
.detail_container .uploader {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 12px 0;
    padding: 10px 14px;
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 3px 12px rgba(192, 37, 121, .10);
}
.detail_container .uploader::before,
.detail_container .uploader::after { display: none; }
.detail_container .uploader > div { float: none; width: auto; padding: 0; }
.detail_container .uploader .pd0 { flex: 0 0 54px; }
.detail_container .uploader img { width: 54px; height: 54px; border-radius: 50%; border: 3px solid #ffd0e6; padding: 0; }
.detail_container .uploader p { margin: 0; }
.detail_container .uploader a { color: #a52168; }
.detail_container .uploader .hitstotal {
    margin-left: auto;
    padding: 4px 12px;
    border-radius: 14px;
    background: #ffe6f1;
    color: #c02579;
    font-weight: 700;
    white-space: nowrap;
}
.detail_container .media-func { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 12px; }
.detail_container .media-func .button-style-1 {
    display: inline-block;
    padding: 6px 16px;
    border-radius: 20px;
    background: linear-gradient(90deg, #ff7ab0, #e8449b);
    color: #fff !important;
    font-size: 13px;
    box-shadow: 0 3px 8px rgba(232, 68, 155, .35);
}
.detail_container .media-func .button-style-1:hover { background: linear-gradient(90deg, #f0942a, #e8449b); }
.detail_container .media-func .show_playlist,
.detail_container .media-func .show_report { flex-basis: 100%; }
.detail_container .panel.panel-default,
.news_column.panel.panel-default {
    border: 0;
    border-radius: 18px;
    box-shadow: 0 4px 14px rgba(192, 37, 121, .12);
    overflow: hidden;
}
.other-news > p.h3 {
    margin: 0 0 12px;
    padding-left: 12px;
    border-left: 5px solid #ff7ab0;
    font-size: 17px;
    color: #c02579;
}
.other-news .related_new,
.other-news .related {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
    gap: 14px;
    margin: 0 0 14px;
}
.other-news .related_new::before, .other-news .related_new::after,
.other-news .related::before, .other-news .related::after { display: none; }
.other-news .videos_list {
    float: none;
    width: auto;
    padding: 0;
    margin: 0;
    background: #fff;
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 3px 10px rgba(192, 37, 121, .12);
    transition: transform .2s ease;
}
.other-news .videos_list:hover { transform: translateY(-4px); }
.other-news .videos-home-thumbnail {
    float: none;
    width: 100%;
    padding: 0;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: #ffe6f1;
}
.other-news .videos-home-thumbnail a { display: block; height: 100%; }
.other-news .videos-home-thumbnail img {
    width: 100% !important;
    height: 100% !important;
    max-width: none;
    object-fit: cover;
    margin: 0 !important;
}
.other-news .videos-home-info { float: none; width: 100%; padding: 8px 10px 10px; }
.other-news .videos-home-info h3 { margin: 0 0 4px; height: auto; min-height: 36px; font-size: 13.5px; line-height: 1.35; font-weight: 700; }
.other-news .videos-home-info h3 a { color: #a52168; }
.other-news .videos-home-info h3 a:hover { color: #e8449b; }
.other-news .videos-home-info .text-muted { font-size: 11.5px; }

/* --- chi tiet album anh --- */
#album-gallery > .row > div { margin-bottom: 18px; }
#album-gallery .panel {
    position: relative;
    margin: 0;
    border: 3px solid #fff;
    border-radius: 20px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 5px 16px rgba(192, 37, 121, .15);
    transition: transform .25s ease, box-shadow .25s ease;
}
#album-gallery .panel:hover { transform: translateY(-5px); box-shadow: 0 14px 26px rgba(192, 37, 121, .26); }
#album-gallery .panel-body {
    padding: 0 !important;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    background: linear-gradient(135deg, #ffe6f1, #fff4d6);
}
#album-gallery .panel-body a { display: block; width: 100%; height: 100%; }
#album-gallery .panel-body img {
    width: 100% !important;
    height: 100% !important;
    max-width: none;
    object-fit: cover;
    margin: 0;
    transition: transform .35s ease;
}
#album-gallery .panel:hover .panel-body img { transform: scale(1.08); }
#album-gallery .panel-footer {
    padding: 8px 12px !important;
    border: 0;
    background: linear-gradient(#fff, #fff4f9);
}
#album-gallery .panel-footer .btn-primary {
    border: 0;
    border-radius: 18px;
    padding: 4px 12px;
    font-size: 12px;
    background: linear-gradient(90deg, #ff7ab0, #e8449b);
    box-shadow: 0 3px 8px rgba(232, 68, 155, .35);
}
#album-gallery .panel-footer .text-muted { line-height: 26px; }
#album-gallery .panel-footer .text-muted .fa { color: #e8449b; }
.album_description { padding: 10px 14px; border-radius: 14px; background: #fff4f9; color: #555; }

/* --- video Facebook nhung --- */
.fb-video-wrap { width: 100%; }
.fb-video-wrap iframe {
    display: block;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 16 / 9;
    border: 0;
}

/* anh mac dinh (linh vat) cua video/tin: hien du hinh, khong bi cat */
img[src*="mascot-default"], img.is-mascot-img { object-fit: contain !important; }
.vd-thumb img[src*="ngonghinh/"] { padding: 8px; background: linear-gradient(135deg, #ffe6f1, #fff4d6); }

/* thanh linh vat: nut phat nam goc duoi phai de khong che con vat */
.vd-thumb:has(img.is-mascot-img) .vd-play,
.vd-thumb:has(img[src*="ngonghinh/"]) .vd-play {
    left: auto;
    top: auto;
    right: 10px;
    bottom: 10px;
    width: 38px;
    height: 38px;
    margin: 0;
    font-size: 13px;
    border-width: 2px;
}
.vd-card:hover .vd-thumb:has(img.is-mascot-img) .vd-play,
.vd-card:hover .vd-thumb:has(img[src*="ngonghinh/"]) .vd-play { transform: scale(1.15); }

/* nut phat: mot vi tri thong nhat (goc duoi phai) cho MOI the video, khong che noi dung */
.vd-thumb .vd-play {
    left: auto;
    top: auto;
    right: 10px;
    bottom: 10px;
    width: 38px;
    height: 38px;
    margin: 0;
    font-size: 13px;
    border-width: 2px;
}
.vd-card:hover .vd-thumb .vd-play { transform: scale(1.15); }

/* --- man hinh cho khung phat video (chung cho YouTube va Facebook) --- */
.vf { position: relative; width: 100%; aspect-ratio: 16 / 9; background: #16436b; }
.vf-btn {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    padding: 0;
    border: 0;
    cursor: pointer;
    overflow: hidden;
    background: transparent;
}
.vf-poster { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .35s ease; }
.vf-btn:hover .vf-poster { transform: scale(1.04); }
.vf-mascot .vf-btn { background: linear-gradient(135deg, #ffe6f1, #fff4d6); }
.vf-mascot .vf-poster { object-fit: contain; padding: 14px 0; }
.vf-play {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 76px;
    height: 76px;
    margin: -38px 0 0 -38px;
    border: 4px solid #fff;
    border-radius: 50%;
    background: linear-gradient(135deg, #ff7ab0, #e8449b);
    color: #fff;
    font-size: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-left: 5px;
    box-shadow: 0 6px 20px rgba(0, 0, 0, .35);
    transition: transform .2s ease;
}
.vf-btn:hover .vf-play { transform: scale(1.12); }
.vf-mascot .vf-play { left: auto; top: auto; right: 16px; bottom: 16px; margin: 0; width: 56px; height: 56px; font-size: 20px; }
.vf-playing iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }

/* nut phat khung phat: GIONG NHAU cho YouTube va Facebook (o giua); linh vat dung ben trai */
.vf-mascot .vf-play {
    left: 50%;
    top: 50%;
    right: auto;
    bottom: auto;
    margin: -38px 0 0 -38px;
    width: 76px;
    height: 76px;
    font-size: 28px;
}
.vf-mascot .vf-poster {
    position: absolute;
    left: 6%;
    top: 0;
    width: 38%;
    height: 100%;
    object-fit: contain;
    padding: 12px 0;
}
.vf-mascot .vf-btn::after {
    content: "B\1EA5m \111\1EC3  xem video";
    position: absolute;
    left: 58%;
    top: 50%;
    transform: translateY(-50%);
    width: 38%;
    font-family: "Baloo 2", "Comic Sans MS", Cambria, Georgia, serif;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.3;
    text-align: left;
    color: #c02579;
}
@media (max-width: 480px) {
    .vf-play, .vf-mascot .vf-play { width: 56px; height: 56px; margin: -28px 0 0 -28px; font-size: 20px; }
    .vf-mascot .vf-btn::after { font-size: 14px; }
}

/* ============================================================
   DONG BO GIAO DIEN CAC MODULE: van ban, tai lieu, lien he,
   gioi thieu, thanh vien, tham do y kien, tim kiem
   ============================================================ */
.mod-sec { margin: 0 0 16px; }
.mod-sec .nc-head::before { background-image: var(--mascot) !important; }
.mod-sec .nc-title { margin: 0; }

/* bang */
.mod-wrap:is([data-mod="laws"],[data-mod="download"],[data-mod="contact"],[data-mod="page"],[data-mod="users"],[data-mod="voting"],[data-mod="seek"]) .table {
    width: 100%;
    margin-bottom: 16px;
    border: 0;
    border-collapse: separate;
    border-spacing: 0;
    border-radius: 16px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 4px 14px rgba(192, 37, 121, .12);
}
.mod-wrap:is([data-mod="laws"],[data-mod="download"],[data-mod="contact"],[data-mod="page"],[data-mod="users"],[data-mod="voting"],[data-mod="seek"]) .table > thead > tr > th {
    padding: 10px 12px;
    border: 0;
    background: linear-gradient(180deg, #ffe7f2, #ffd0e6);
    color: #a52168;
    font-weight: 700;
}
.mod-wrap:is([data-mod="laws"],[data-mod="download"],[data-mod="contact"],[data-mod="page"],[data-mod="users"],[data-mod="voting"],[data-mod="seek"]) .table > tbody > tr > td,
.mod-wrap:is([data-mod="laws"],[data-mod="download"],[data-mod="contact"],[data-mod="page"],[data-mod="users"],[data-mod="voting"],[data-mod="seek"]) .table > tbody > tr > th {
    padding: 10px 12px;
    border: 0;
    border-top: 1px dashed #f3b6d1;
    vertical-align: top;
}
.mod-wrap:is([data-mod="laws"],[data-mod="download"],[data-mod="contact"],[data-mod="page"],[data-mod="users"],[data-mod="voting"],[data-mod="seek"]) .table > tbody > tr:first-child > td { border-top: 0; }
.mod-wrap:is([data-mod="laws"],[data-mod="download"],[data-mod="contact"],[data-mod="page"],[data-mod="users"],[data-mod="voting"],[data-mod="seek"]) .table-striped > tbody > tr:nth-of-type(odd) > td { background: #fffafc; }
.mod-wrap:is([data-mod="laws"],[data-mod="download"],[data-mod="contact"],[data-mod="page"],[data-mod="users"],[data-mod="voting"],[data-mod="seek"]) .table-hover > tbody > tr:hover > td,
.mod-wrap:is([data-mod="laws"],[data-mod="download"],[data-mod="contact"],[data-mod="page"],[data-mod="users"],[data-mod="voting"],[data-mod="seek"]) .table > tbody > tr:hover > td { background: #fff0f7; }
.mod-wrap:is([data-mod="laws"],[data-mod="download"],[data-mod="contact"],[data-mod="page"],[data-mod="users"],[data-mod="voting"],[data-mod="seek"]) .table > tbody > tr > td.text-center { text-align: center; }

/* lien ket, khung, nut */
.mod-wrap:is([data-mod="laws"],[data-mod="download"],[data-mod="contact"],[data-mod="page"],[data-mod="users"],[data-mod="voting"],[data-mod="seek"]) a:not(.btn):not(.nc-all) { color: #a52168; }
.mod-wrap:is([data-mod="laws"],[data-mod="download"],[data-mod="contact"],[data-mod="page"],[data-mod="users"],[data-mod="voting"],[data-mod="seek"]) a:not(.btn):not(.nc-all):hover { color: #e8449b; }
.mod-wrap:is([data-mod="laws"],[data-mod="download"],[data-mod="contact"],[data-mod="page"],[data-mod="users"],[data-mod="voting"],[data-mod="seek"]) .nc-title a { color: #c02579; }
.mod-wrap:is([data-mod="laws"],[data-mod="download"],[data-mod="contact"],[data-mod="page"],[data-mod="users"],[data-mod="voting"],[data-mod="seek"]) .panel-default {
    border: 0;
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 4px 14px rgba(192, 37, 121, .12);
}
.mod-wrap:is([data-mod="laws"],[data-mod="download"],[data-mod="contact"],[data-mod="page"],[data-mod="users"],[data-mod="voting"],[data-mod="seek"]) .panel-default > .panel-heading {
    border: 0;
    background: linear-gradient(180deg, #ffe7f2, #ffd0e6);
    color: #a52168;
    font-weight: 700;
}
.mod-wrap:is([data-mod="laws"],[data-mod="download"],[data-mod="contact"],[data-mod="page"],[data-mod="users"],[data-mod="voting"],[data-mod="seek"]) .well, .mod-wrap:is([data-mod="laws"],[data-mod="download"],[data-mod="contact"],[data-mod="page"],[data-mod="users"],[data-mod="voting"],[data-mod="seek"]) .alert-info {
    border: 1px solid #ffd0e6;
    border-radius: 14px;
    background: #fff4f9;
    color: #a52168;
}
.mod-wrap:is([data-mod="laws"],[data-mod="download"],[data-mod="contact"],[data-mod="page"],[data-mod="users"],[data-mod="voting"],[data-mod="seek"]) .alert { border-radius: 14px; }
.mod-wrap:is([data-mod="laws"],[data-mod="download"],[data-mod="contact"],[data-mod="page"],[data-mod="users"],[data-mod="voting"],[data-mod="seek"]) .btn { border-radius: 20px; }
.mod-wrap:is([data-mod="laws"],[data-mod="download"],[data-mod="contact"],[data-mod="page"],[data-mod="users"],[data-mod="voting"],[data-mod="seek"]) .btn-primary, .mod-wrap:is([data-mod="laws"],[data-mod="download"],[data-mod="contact"],[data-mod="page"],[data-mod="users"],[data-mod="voting"],[data-mod="seek"]) .btn-success {
    border: 0;
    background: linear-gradient(90deg, #ff7ab0, #e8449b);
    box-shadow: 0 3px 8px rgba(232, 68, 155, .35);
    color: #fff;
}
.mod-wrap:is([data-mod="laws"],[data-mod="download"],[data-mod="contact"],[data-mod="page"],[data-mod="users"],[data-mod="voting"],[data-mod="seek"]) .btn-primary:hover, .mod-wrap:is([data-mod="laws"],[data-mod="download"],[data-mod="contact"],[data-mod="page"],[data-mod="users"],[data-mod="voting"],[data-mod="seek"]) .btn-success:hover { background: linear-gradient(90deg, #f0942a, #e8449b); color: #fff; }
.mod-wrap:is([data-mod="laws"],[data-mod="download"],[data-mod="contact"],[data-mod="page"],[data-mod="users"],[data-mod="voting"],[data-mod="seek"]) .btn-default { border: 2px solid #ffd0e6; background: #fff; color: #a52168; }
.mod-wrap:is([data-mod="laws"],[data-mod="download"],[data-mod="contact"],[data-mod="page"],[data-mod="users"],[data-mod="voting"],[data-mod="seek"]) .btn-default:hover { border-color: #e8449b; background: #fff4f9; color: #c02579; }

/* o nhap lieu */
.mod-wrap:is([data-mod="laws"],[data-mod="download"],[data-mod="contact"],[data-mod="page"],[data-mod="users"],[data-mod="voting"],[data-mod="seek"]) .form-control {
    border: 2px solid #ffd0e6;
    border-radius: 12px;
    box-shadow: none;
    transition: border-color .15s ease, box-shadow .15s ease;
}
.mod-wrap:is([data-mod="laws"],[data-mod="download"],[data-mod="contact"],[data-mod="page"],[data-mod="users"],[data-mod="voting"],[data-mod="seek"]) .form-control:focus { border-color: #e8449b; box-shadow: 0 0 0 3px rgba(232, 68, 155, .15); }
.mod-wrap:is([data-mod="laws"],[data-mod="download"],[data-mod="contact"],[data-mod="page"],[data-mod="users"],[data-mod="voting"],[data-mod="seek"]) label { color: #a52168; font-weight: 700; }

/* tab, phan trang */
.mod-wrap:is([data-mod="laws"],[data-mod="download"],[data-mod="contact"],[data-mod="page"],[data-mod="users"],[data-mod="voting"],[data-mod="seek"]) .nav-tabs { border-bottom: 2px solid #ffd0e6; }
.mod-wrap:is([data-mod="laws"],[data-mod="download"],[data-mod="contact"],[data-mod="page"],[data-mod="users"],[data-mod="voting"],[data-mod="seek"]) .nav-tabs > li > a { border-radius: 14px 14px 0 0; color: #a52168; }
.mod-wrap:is([data-mod="laws"],[data-mod="download"],[data-mod="contact"],[data-mod="page"],[data-mod="users"],[data-mod="voting"],[data-mod="seek"]) .nav-tabs > li.active > a,
.mod-wrap:is([data-mod="laws"],[data-mod="download"],[data-mod="contact"],[data-mod="page"],[data-mod="users"],[data-mod="voting"],[data-mod="seek"]) .nav-tabs > li.active > a:hover { border: 0; background: linear-gradient(180deg, #ffe7f2, #ffd0e6); color: #a52168; }
.mod-wrap:is([data-mod="laws"],[data-mod="download"],[data-mod="contact"],[data-mod="page"],[data-mod="users"],[data-mod="voting"],[data-mod="seek"]) .pagination > li > a,
.mod-wrap:is([data-mod="laws"],[data-mod="download"],[data-mod="contact"],[data-mod="page"],[data-mod="users"],[data-mod="voting"],[data-mod="seek"]) .pagination > li > span {
    margin: 0 2px;
    border: 0;
    border-radius: 16px !important;
    background: #ffe6f1;
    color: #a52168;
}
.mod-wrap:is([data-mod="laws"],[data-mod="download"],[data-mod="contact"],[data-mod="page"],[data-mod="users"],[data-mod="voting"],[data-mod="seek"]) .pagination > .active > a,
.mod-wrap:is([data-mod="laws"],[data-mod="download"],[data-mod="contact"],[data-mod="page"],[data-mod="users"],[data-mod="voting"],[data-mod="seek"]) .pagination > .active > span,
.mod-wrap:is([data-mod="laws"],[data-mod="download"],[data-mod="contact"],[data-mod="page"],[data-mod="users"],[data-mod="voting"],[data-mod="seek"]) .pagination > li > a:hover { background: linear-gradient(90deg, #ff7ab0, #e8449b); color: #fff; }
.mod-wrap:is([data-mod="laws"],[data-mod="download"],[data-mod="contact"],[data-mod="page"],[data-mod="users"],[data-mod="voting"],[data-mod="seek"]) .page-header { border-bottom-color: #ffd0e6; }

/* bang van ban dang flex (module laws) */
.mod-wrap .flex-table-laws {
    margin-bottom: 16px;
    border: 0;
    border-radius: 16px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 4px 14px rgba(192, 37, 121, .12);
}
.mod-wrap .flex-table-laws > .table-rows { border-bottom: 1px dashed #f3b6d1; }
.mod-wrap .flex-table-laws > .table-rows:nth-of-type(even) { background-color: #fffafc; }
.mod-wrap .flex-table-laws > .table-rows:hover:not(.table-head) { background-color: #fff0f7; }
.mod-wrap .flex-table-laws > .table-head {
    border-bottom: 0;
    background: linear-gradient(180deg, #ffe7f2, #ffd0e6);
    color: #a52168;
}
.mod-wrap .flex-table-laws > .table-rows > div { border-left: 0; padding: 10px 12px; }
.mod-wrap .flex-table-heading {
    border: 0;
    border-radius: 14px;
    padding: 10px 14px;
    background: linear-gradient(180deg, #ffe7f2, #ffd0e6);
    color: #a52168;
    font-weight: 700;
}
.mod-wrap .flex-table-heading a { color: #a52168; }

/* --- chan trang: the thong tin truong --- */
.ft-card {
    display: inline-block;
    max-width: 92%;
    padding: 14px 30px 16px;
    border: 3px solid #fff;
    border-radius: 24px;
    background: rgba(255, 255, 255, .92);
    box-shadow: 0 8px 24px rgba(0, 60, 40, .35);
    text-align: center;
}
.main:has(> .footer) .ft-card .ft-name {
    margin: 0 0 8px;
    padding: 0;
    font-family: "Baloo 2", "Comic Sans MS", Cambria, Georgia, serif;
    font-size: 22px;
    font-weight: 800;
    line-height: 1.25;
    letter-spacing: .8px;
    color: #c02579 !important;
    text-shadow: none !important;
}
.ft-card .ft-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 6px 26px;
    margin: 0;
    padding: 0;
    list-style: none;
}
.ft-card .ft-list li {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    line-height: 1.4;
    color: #16436b;
}
.main:has(> .footer) .ft-card .ft-list li,
.main:has(> .footer) .ft-card .ft-list span { color: #16436b !important; font-size: 14px !important; }
.ft-card .ft-list .fa {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 26px;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background: linear-gradient(135deg, #ff7ab0, #e8449b);
    color: #fff;
    font-size: 13px;
}
.main:has(> .footer) .ft-card a { color: #a52168 !important; font-weight: 700; }
.main:has(> .footer) .ft-card a:hover { color: #e8449b !important; }
@media (max-width: 480px) {
    .ft-card { padding: 12px 16px; }
    .main:has(> .footer) .ft-card .ft-name { font-size: 17px; }
    .ft-card .ft-list li { font-size: 13px; }
}

/* --- nut "Xem file" cho tep dinh kem (tin tuc + van ban) --- */
.btn.btn-viewfile {
    margin-left: 10px;
    padding: 3px 14px;
    border: 0;
    border-radius: 18px;
    background: linear-gradient(90deg, #ff7ab0, #e8449b);
    color: #fff !important;
    font-size: 12.5px;
    font-weight: 700;
    line-height: 1.6;
    box-shadow: 0 3px 8px rgba(232, 68, 155, .35);
    transition: transform .15s ease, box-shadow .15s ease;
}
.btn.btn-viewfile .fa { margin-right: 4px; }
.btn.btn-viewfile:hover,
.btn.btn-viewfile:focus {
    background: linear-gradient(90deg, #f0942a, #e8449b);
    color: #fff !important;
    transform: translateY(-1px);
    box-shadow: 0 5px 12px rgba(232, 68, 155, .45);
}
.list-group-item .btn-viewfile + a { display: inline-block; max-width: calc(100% - 110px); }

/* block "Video moi nhat": can thang hang voi block "Tin moi nhat" */
.blocksite .block_content > ul.block_videos { margin-left: -18px; margin-right: -12px; }

/* khung phat Facebook (bo phat chinh thuc): lap day khung 16:9 */
.vf-playing .fb-video, .vf-playing .fb-video > span, .vf-playing .fb-video iframe {
    position: absolute !important;
    inset: 0;
    width: 100% !important;
    height: 100% !important;
    border: 0;
}

/* ============================================================
   PHONG CHU DONG BO TOAN SITE: "Baloo 2", "Comic Sans MS", Cambria, Georgia, serif
   (giu nguyen cac phong bieu tuong: FontAwesome, icon-*, glyphicon; va phong dan mã)
   ============================================================ */
html, body, button, input, select, textarea, optgroup {
    font-family: "Baloo 2", "Comic Sans MS", Cambria, Georgia, serif;
}
body *:not(.fa):not(.glyphicon):not([class^="fa-"]):not([class*=" fa-"]):not([class^="icon-"]):not([class*=" icon-"]):not(code):not(pre):not(kbd):not(samp) {
    font-family: "Baloo 2", "Comic Sans MS", Cambria, Georgia, serif !important;
}

/* menu ngang: chinh lai co chu cho phong Baloo 2 (rong hon phong chu viet tay cu) de van vua 1 hang */
@media (min-width: 992px) {
    #menu-site-default .navbar-nav { gap: 7px; }
    #menu-site-default .navbar-nav > li > a {
        padding: 8px 13px;
        font-size: 14.5px;
        font-weight: 600;
        letter-spacing: 0;
    }
}

@media (min-width: 992px) {
    #menu-site-default .navbar-nav { gap: 5px; }
    #menu-site-default .navbar-nav > li > a { padding: 8px 10px; font-size: 13.5px; }
    #menu-site-default .navbar-nav > li > a .caret { margin-left: 3px; }
}

/* logo tren banner: day lui sang trai de khong de len chu ten truong */
@media (min-width: 992px) {
    .header .logo { left: 10%; }
}

/* ============================================================
   MENU NGANG - THIET KE LAI (thanh vien thuoc trang vien hong,
   icon tron nhieu mau, tim kiem thu gon, dropdown the bo tron)
   ============================================================ */
@media (min-width: 768px) {
    body .navbar.navbar-default {
        margin: -30px 0 12px;
        padding: 0 18px;
        position: relative;
        z-index: 50;
        background: transparent;
        border: 0;
    }
    body .navbar.navbar-default #menu-site-default { padding: 0; border: 0; box-shadow: none; background: transparent; }
    body .navbar.navbar-default #menu-site-default > .container { width: 100%; max-width: none; padding: 0; }
    body .navbar.navbar-default #menu-site-default .row {
        display: flex;
        align-items: center;
        flex-wrap: wrap;
        margin: 0;
        padding: 6px 8px 6px 12px;
        border: 3px solid #ffd0e6;
        border-radius: 34px;
        background: #fff;
        box-shadow: 0 10px 26px rgba(192, 37, 121, .20);
    }
    body .navbar.navbar-default #menu-site-default .row > [class*="col-"] { float: none; width: auto; padding: 0; }
    body .navbar.navbar-default #menu-site-default .row > .col-xs-24 { flex: 1 1 auto; min-width: 0; }
    body .navbar.navbar-default #menu-site-default .navbar-nav {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        gap: 2px;
        float: none;
        margin: 0;
        padding: 0;
    }
    body .navbar.navbar-default #menu-site-default .navbar-nav > li { float: none; background: none; }

    /* muc menu */
    body .navbar.navbar-default #menu-site-default .navbar-nav > li > a {
        display: inline-flex;
        align-items: center;
        gap: 0;
        margin: 0;
        padding: 5px 13px 5px 6px;
        border-radius: 999px;
        border: 0;
        background: transparent !important;
        background-image: none !important;
        box-shadow: none !important;
        text-shadow: none !important;
        filter: none;
        transform: none;
        color: #a52168;
        font-size: 14.5px;
        font-weight: 700;
        line-height: 1.2;
        letter-spacing: 0;
        white-space: nowrap;
        overflow: visible;
        transition: background .2s ease, color .2s ease, transform .2s ease;
    }
    /* icon tron nhieu mau */
    body .navbar.navbar-default #menu-site-default .navbar-nav > li > a::before {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        flex: 0 0 26px;
        width: 26px;
        height: 26px;
        margin: 0 7px 0 0;
        border-radius: 50%;
        background: #ff7ab0;
        color: #fff;
        font-family: FontAwesome !important;
        font-size: 13px;
        opacity: 1;
        box-shadow: 0 2px 5px rgba(0, 0, 0, .18);
        transition: transform .25s ease;
    }
    body .navbar.navbar-default #menu-site-default .navbar-nav > li:nth-child(1) > a::before { background: #ff6b6b; }
    body .navbar.navbar-default #menu-site-default .navbar-nav > li:nth-child(2) > a::before { background: #4dabf7; }
    body .navbar.navbar-default #menu-site-default .navbar-nav > li:nth-child(3) > a::before { background: #51cf66; }
    body .navbar.navbar-default #menu-site-default .navbar-nav > li:nth-child(4) > a::before { background: #cc5de8; }
    body .navbar.navbar-default #menu-site-default .navbar-nav > li:nth-child(5) > a::before { background: #ffa94d; }
    body .navbar.navbar-default #menu-site-default .navbar-nav > li:nth-child(6) > a::before { background: #22b8cf; }
    body .navbar.navbar-default #menu-site-default .navbar-nav > li:nth-child(7) > a::before { background: #f783ac; }
    body .navbar.navbar-default #menu-site-default .navbar-nav > li > a::after { content: none; display: none; }

    /* di chuot / mo menu */
    body .navbar.navbar-default #menu-site-default .navbar-nav > li > a:hover,
    body .navbar.navbar-default #menu-site-default .navbar-nav > li > a:focus,
    body .navbar.navbar-default #menu-site-default .navbar-nav > li:hover > a,
    body .navbar.navbar-default #menu-site-default .navbar-nav > li.open > a {
        background: linear-gradient(180deg, #fff0f7, #ffe0ee) !important;
        color: #c02579;
        transform: translateY(-2px);
        box-shadow: 0 6px 12px rgba(192, 37, 121, .18) !important;
        filter: none;
    }
    body .navbar.navbar-default #menu-site-default .navbar-nav > li > a:hover::before,
    body .navbar.navbar-default #menu-site-default .navbar-nav > li:hover > a::before { transform: rotate(-12deg) scale(1.12); }

    /* muc dang xem */
    body .navbar.navbar-default #menu-site-default .navbar-nav > li.active > a {
        background: linear-gradient(90deg, #ff7ab0, #f0942a) !important;
        color: #fff;
        box-shadow: 0 6px 12px rgba(232, 68, 155, .35) !important;
        transform: none;
    }
    body .navbar.navbar-default #menu-site-default .navbar-nav > li.active > a::before { background: #fff !important; color: #e8449b; }
    body .navbar.navbar-default #menu-site-default .navbar-nav > li > a .caret {
        margin-left: 6px;
        border-top-color: currentColor;
        opacity: .8;
    }

    /* o tim kiem: nut tron, bam vao se mo rong */
    .headerSearch {
        flex: 0 0 auto;
        max-width: none;
        margin: 0 0 0 6px;
    }
    .headerSearch .input-group {
        display: flex;
        flex-direction: row;
        width: 40px;
        height: 40px;
        overflow: hidden;
        border: 2px solid #ffd0e6;
        border-radius: 999px;
        background: #fff;
        transition: width .3s ease, box-shadow .3s ease;
    }
    .headerSearch .input-group:hover,
    .headerSearch .input-group:focus-within {
        width: 230px;
        box-shadow: 0 4px 14px rgba(232, 68, 155, .25);
    }
    .headerSearch .input-group .form-control {
        flex: 1 1 auto;
        width: auto;
        min-width: 0;
        height: 36px;
        padding: 0 4px 0 14px;
        border: 0;
        background: transparent;
        color: #a52168;
        font-size: 13.5px;
        box-shadow: none;
    }
    .headerSearch .input-group-btn { display: flex; width: auto; flex: 0 0 auto; }
    .headerSearch .input-group-btn .btn {
        width: 36px;
        height: 36px;
        padding: 0;
        border: 0;
        border-radius: 50%;
        background: linear-gradient(135deg, #ff7ab0, #e8449b);
        color: #fff;
        box-shadow: none;
    }
    .headerSearch .input-group-btn .btn:hover { color: #fff; filter: brightness(1.1); }
    .headerSearch .btn .fa-search { font-size: 14px; }

    /* menu xo xuong: the bo tron vien hong */
    body .navbar.navbar-default #menu-site-default .dropdown-menu {
        min-width: 220px;
        margin-top: 10px;
        padding: 8px;
        border: 3px solid #ffd0e6;
        border-radius: 22px;
        background: #fff;
        box-shadow: 0 16px 34px rgba(192, 37, 121, .22);
    }
    body .navbar.navbar-default #menu-site-default .navbar-nav > li > .dropdown-menu::after {
        content: "";
        position: absolute;
        top: -9px;
        left: 30px;
        width: 14px;
        height: 14px;
        border-left: 3px solid #ffd0e6;
        border-top: 3px solid #ffd0e6;
        background: #fff;
        transform: rotate(45deg);
    }
    body .navbar.navbar-default #menu-site-default .dropdown-menu > li > a,
    body .navbar.navbar-default #menu-site-default .dropdown-menu > li > a:link {
        display: block;
        padding: 8px 14px;
        border-radius: 14px;
        background: transparent;
        color: #a52168;
        font-size: 14.5px;
        font-weight: 600;
    }
    body .navbar.navbar-default #menu-site-default .dropdown-menu > li > a:hover,
    body .navbar.navbar-default #menu-site-default .dropdown-menu > li > a:focus,
    body .navbar.navbar-default #menu-site-default .dropdown-menu > li.active > a {
        padding-left: 20px;
        background: linear-gradient(90deg, #ffe0ee, #fff0f7) !important;
        color: #c02579 !important;
    }
}

/* sua: mau chu menu (ghi de rule !important cu) + giu tim kiem cung 1 hang */
@media (min-width: 768px) {
    body .navbar.navbar-default #menu-site-default .navbar-nav > li > a,
    body .navbar.navbar-default #menu-site-default .navbar-nav > li > a span { color: #a52168 !important; }
    body .navbar.navbar-default #menu-site-default .navbar-nav > li > a:hover,
    body .navbar.navbar-default #menu-site-default .navbar-nav > li > a:focus,
    body .navbar.navbar-default #menu-site-default .navbar-nav > li:hover > a,
    body .navbar.navbar-default #menu-site-default .navbar-nav > li.open > a,
    body .navbar.navbar-default #menu-site-default .navbar-nav > li:hover > a span { color: #c02579 !important; }
    body .navbar.navbar-default #menu-site-default .navbar-nav > li.active > a,
    body .navbar.navbar-default #menu-site-default .navbar-nav > li.active > a span { color: #fff !important; }
    body .navbar.navbar-default #menu-site-default .row { flex-wrap: nowrap; }
    body .navbar.navbar-default #menu-site-default .row > .col-xs-24 { flex: 1 1 0; width: auto; max-width: none; }
    body .navbar.navbar-default #menu-site-default .navbar-nav { flex-wrap: nowrap; justify-content: flex-start; }
    .headerSearch { width: auto; }
}

/* menu nhieu muc: tu xuong hang gon, can giua; them icon cho muc 8, 9 va cac muc sau */
@media (min-width: 768px) {
    body .navbar.navbar-default #menu-site-default .navbar-nav { flex-wrap: wrap; justify-content: center; row-gap: 4px; }
    body .navbar.navbar-default #menu-site-default .navbar-nav > li:nth-child(8) > a::before { content: "\f06e"; background: #845ef7; }
    body .navbar.navbar-default #menu-site-default .navbar-nav > li:nth-child(9) > a::before { content: "\f108"; background: #20c997; }
    body .navbar.navbar-default #menu-site-default .navbar-nav > li:nth-child(n+10) > a::before { content: "\f005"; background: #fab005; }
    body .navbar.navbar-default #menu-site-default .navbar-nav > li > a { padding-right: 11px; font-size: 14px; }
}

@media (min-width: 768px) {
    body .navbar.navbar-default #menu-site-default .row > .headerSearch { flex: 0 0 auto !important; width: auto !important; }
    body .navbar.navbar-default #menu-site-default .row > .col-xs-24:not(.headerSearch) { flex: 1 1 0 !important; }
}

/* tim kiem thu gon: chi con nut tron, mo rong khi ro chuot / bam vao */
@media (min-width: 768px) {
    .headerSearch .input-group:not(:hover):not(:focus-within) .form-control {
        flex: 0 0 0;
        width: 0;
        padding: 0;
        opacity: 0;
    }
    .headerSearch .input-group { justify-content: flex-end; align-items: center; }
}

/* menu 7 muc (Tai nguyen gom 3 thu vien): icon cho 3 muc cuoi + icon cho muc con */
@media (min-width: 768px) {
    body .navbar.navbar-default #menu-site-default .navbar-nav > li:nth-child(5) > a::before { content: "\f07c"; background: #ffa94d; }
    body .navbar.navbar-default #menu-site-default .navbar-nav > li:nth-child(6) > a::before { content: "\f06e"; background: #845ef7; }
    body .navbar.navbar-default #menu-site-default .navbar-nav > li:nth-child(7) > a::before { content: "\f108"; background: #20c997; }
    body .navbar.navbar-default #menu-site-default .dropdown-menu > li > a[href*="nv=download"]::before,
    body .navbar.navbar-default #menu-site-default .dropdown-menu > li > a[href*="nv=photos"]::before,
    body .navbar.navbar-default #menu-site-default .dropdown-menu > li > a[href*="nv=videos"]::before {
        display: inline-block;
        width: 22px;
        margin-right: 8px;
        font-family: FontAwesome !important;
        font-weight: 400;
        color: #e8449b;
        text-align: center;
    }
    body .navbar.navbar-default #menu-site-default .dropdown-menu > li > a[href*="nv=download"]::before { content: "\f019"; }
    body .navbar.navbar-default #menu-site-default .dropdown-menu > li > a[href*="nv=photos"]::before { content: "\f03e"; }
    body .navbar.navbar-default #menu-site-default .dropdown-menu > li > a[href*="nv=videos"]::before { content: "\f03d"; }
}

/* o tim kiem hien san (khong thu gon) */
@media (min-width: 768px) {
    .headerSearch .input-group,
    .headerSearch .input-group:hover,
    .headerSearch .input-group:focus-within { width: 210px; }
    .headerSearch .input-group:not(:hover):not(:focus-within) .form-control {
        flex: 1 1 auto;
        width: auto;
        padding: 0 4px 0 14px;
        opacity: 1;
    }
    .headerSearch .input-group .form-control::placeholder { color: #c98bb0; }
    .headerSearch .input-group.has-error { border-color: #ff6b6b; }
}

/* menu ngang: khong de len banner nua, nam ngay duoi anh banner */
body .navbar.navbar-default { margin-top: 12px; margin-bottom: 14px; }

/* menu ngang: sat mep anh banner */
body .navbar.navbar-default { margin-top: 2px; }

/* trang chu: keo 2 khoi dau (Hinh anh nha truong + Van ban moi) len sat menu va can dau bang nhau */
body .navbar.navbar-default { margin-bottom: 4px; }
.sf-main.hidden-xs { margin-top: 14px; }

/* ============================================================
   BLOCK LIEN HE (the thong tin lien he, tong xanh la)
   ============================================================ */
.ct-card { padding: 4px 2px 2px; }
.ct-school {
    margin: 0 0 10px;
    padding: 10px 12px;
    border-radius: 16px;
    background: linear-gradient(135deg, #e6f7ea, #f4fbe9);
    border: 2px solid #c9ecd2;
    text-align: center;
}
.ct-name {
    font-size: 15px;
    font-weight: 800;
    line-height: 1.25;
    color: #1f8a4c;
    text-transform: uppercase;
    letter-spacing: .3px;
}
.ct-dept {
    margin-top: 3px;
    display: inline-block;
    padding: 1px 12px;
    border-radius: 12px;
    background: #fff;
    color: #2b9d5a;
    font-size: 12px;
    font-weight: 700;
}
.ct-list { list-style: none; margin: 0; padding: 0; }
.ct-list li {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    padding: 7px 2px;
    border-bottom: 1px dashed #cfe9d6;
    font-size: 13px;
    line-height: 1.4;
    color: #2f4a3a;
}
.ct-list li:last-child { border-bottom: 0; }
.ct-list li > .fa,
.ct-list li > em[class^="icon-"] {
    flex: 0 0 26px;
    width: 26px;
    height: 26px;
    margin-top: 1px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 13px;
    background: #34b36a;
    box-shadow: 0 2px 5px rgba(0, 0, 0, .18);
}
.ct-list li.ct-phone > .fa { background: #f0942a; }
.ct-list li.ct-mail > .fa { background: #3f8fdb; }
.ct-list li > span { flex: 1 1 auto; min-width: 0; word-break: break-word; }
.ct-list li a { color: #1f8a4c; font-weight: 700; }
.ct-list li a:hover { color: #f0942a; }
.ct-list li.ct-addr:has(> span:empty) { display: none; }
.ct-actions { display: flex; flex-direction: column; gap: 7px; margin-top: 10px; }
.ct-btn {
    display: block;
    padding: 7px 12px;
    border-radius: 20px;
    text-align: center;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
    transition: transform .15s ease, box-shadow .15s ease;
}
.ct-btn .fa { margin-right: 5px; }
.ct-btn-send {
    background: linear-gradient(90deg, #34b36a, #1f8a4c);
    color: #fff !important;
    box-shadow: 0 3px 8px rgba(31, 138, 76, .35);
}
.ct-btn-map {
    background: #fff;
    border: 2px solid #f0942a;
    color: #d9770f !important;
}
.ct-btn:hover { transform: translateY(-2px); }
.ct-btn-send:hover { box-shadow: 0 6px 12px rgba(31, 138, 76, .45); }
.ct-btn-map:hover { background: #fff6e8; }

/* block lien he: nhan nho o tren, gia tri chiem tron chieu ngang ben duoi */
.ct-list li { flex-wrap: wrap; align-items: center; gap: 2px 8px; padding: 8px 2px; }
.ct-list li .ct-lbl {
    flex: 1 1 0;
    min-width: 0;
    font-size: 11.5px;
    font-weight: 800;
    letter-spacing: .4px;
    text-transform: uppercase;
    color: #6b8f78;
}
.ct-list li .ct-val {
    flex: 0 0 100%;
    padding-left: 0;
    font-size: 12.5px;
    font-weight: 700;
    line-height: 1.4;
    color: #2f4a3a;
    overflow-wrap: anywhere;
}
.ct-list li.ct-mail .ct-val { font-size: 12px; letter-spacing: -.15px; }
.ct-list li.ct-addr:has(> .ct-val:empty) { display: none; }

/* ============================================================
   BANG MAU DA DANG: xanh la (chu dao) + xanh duong + cam + tim, hong la mau nhan
   - chuyen muc tin, block cot ben xoay vong nhieu mau
   - menu, nen trang, chan trang: tong xanh la
   - moi module co mau rieng (van ban: xanh duong, tai lieu: cam, lien he: xanh la...)
   ============================================================ */

/* ---- bo bien mau (mac dinh: hong) ---- */
:root {
    --ink: #264e6b;
    --h1: #ffe7f2; --h2: #ffcfe4; --hb: #ff92be; --hc: #c02579;
    --btn1: #ff7ab0; --btn2: #e8449b; --soft: #ffe6f1; --line: #f3b6d1; --soft2: #fff4f9;
}
/* cac tap mau: dat len khoi chua, phan tu con tu ke thua */
.acc-green, .nc-sec:not(.mod-sec):nth-of-type(4n+2),
.wraper > .row > .col-md-13 ~ .col-md-6 > :nth-child(3n+1),
.wraper > .row > .col-md-5 > :nth-child(3n+3),
.mod-wrap[data-mod="contact"], .mod-wrap[data-mod="seek"], [id^="photo-"] {
    --ink: #24503b;
    --h1: #e3f6e8; --h2: #c5ebd0; --hb: #5fc281; --hc: #1c7a43;
    --btn1: #34b36a; --btn2: #1f8a4c; --soft: #e6f7ea; --line: #c9e6d1; --soft2: #f3fbf5;
}
.acc-blue, .nc-sec:not(.mod-sec):nth-of-type(4n+3),
.wraper > .row > .col-md-13 ~ .col-md-6 > :nth-child(3n+2),
.mod-wrap[data-mod="laws"], .mod-wrap[data-mod="users"], .vd-sec, .vd-grid {
    --ink: #234a72;
    --h1: #e4f0fd; --h2: #c6defa; --hb: #6aa8ee; --hc: #1f5fa8;
    --btn1: #4a9cf0; --btn2: #2b6cb0; --soft: #e6f1fd; --line: #c8dcf3; --soft2: #f2f8ff;
}
.acc-orange, .nc-sec:not(.mod-sec):nth-of-type(4n),
.wraper > .row > .col-md-13 ~ .col-md-6 > :nth-child(3n+3),
.wraper > .row > .col-md-5 > :nth-child(3n+1),
.mod-wrap[data-mod="download"], .mod-wrap[data-mod="voting"] {
    --ink: #5a3d1c;
    --h1: #fff0dc; --h2: #ffdcaa; --hb: #f5a552; --hc: #b85f08;
    --btn1: #f5a03a; --btn2: #e07f10; --soft: #fff1de; --line: #f5dab4; --soft2: #fff8ee;
}
.acc-purple, .wraper > .row > .col-md-5 > :nth-child(3n+2),
.mod-wrap[data-mod="page"] {
    --ink: #4a2d66;
    --h1: #f3e8fb; --h2: #e3ccf5; --hb: #b47ddb; --hc: #7a2fa3;
    --btn1: #b767dc; --btn2: #8e44ad; --soft: #f4e9fb; --line: #e2d0f0; --soft2: #faf4fe;
}

/* ---- nen trang: doi tu hong sang xanh mint - kem ---- */
body { background: linear-gradient(#e6f6ec, #fff8ea 360px, #fffdf7) no-repeat #fffdf7 !important; }
.wraper { background: #fffefa; }

/* ---- tieu de khoi (block) o cot ben ---- */
.block_header_star,
.blocksite:has(.stat-box) .block_content h3,
.blocksite:has(.block_header_vetcon) .block_content h3,
.bgblock:has(.mb-user) .header-block1 h3,
.bgblock:has(.form-detail) .header-block1 h3 {
    background: linear-gradient(180deg, var(--h1), var(--h2)) !important;
    border-bottom: 2px solid var(--hb) !important;
    border-image: none !important;
    color: var(--hc) !important;
}
.blocksite:has(.stat-box) .block_content h3::before,
.blocksite:has(.block_header_vetcon) .block_content h3::before,
.block_header_star::before { filter: drop-shadow(0 4px 4px rgba(0, 0, 0, .18)) !important; }
.block_tophits > li:hover { background: var(--soft2); }
.block_tophits > li:hover .show { color: var(--hc); }
.stat-total { background: linear-gradient(135deg, var(--btn2), var(--btn1)); box-shadow: 0 8px 18px rgba(0, 0, 0, .16); }
.blocksite:has(.block_header_vetcon) .btn-primary,
.blocksite:has(.stat-box) .btn-primary { background: linear-gradient(90deg, var(--btn1), var(--btn2)); border: 0; }

/* ---- chuyen muc tin: xoay xanh la / xanh duong / cam ---- */
.nc-head {
    background: linear-gradient(180deg, var(--h1), var(--h2));
    border-bottom-color: var(--hb);
    box-shadow: 0 3px 12px rgba(0, 0, 0, .08);
}
.nc-title a { color: var(--hc); }
.nc-title a:hover { color: var(--btn2); }
.nc-sub a { background: var(--soft); color: var(--hc); }
.nc-sub a:hover { background: var(--btn2); color: #fff; }
.nc-all { color: var(--hc); }
.nc-all:hover { color: var(--btn2); }
.nc-item { border-bottom-color: var(--line); }
.nc-item:hover { background: var(--soft2); }
.nc-item-thumb {
    background: var(--soft);
    box-shadow: 0 2px 8px rgba(0, 0, 0, .14);
}
.nc-item-thumb.is-mascot { background: linear-gradient(135deg, var(--soft), #fff8ea); }
.nc-item-title a { color: var(--ink); }
.nc-item-title a:hover { color: var(--btn2); }
.nc-item-meta .fa { color: var(--btn1); }

/* ---- video / anh ---- */
.vd-title a, [id^="photo-"] .album-name h3 a { color: var(--ink); }
.vd-title a:hover, [id^="photo-"] .album-name h3 a:hover { color: var(--btn2); }
.vd-meta .fa { color: var(--btn1); }
.vd-card, [id^="photo-"] .album-album .panel, #album-gallery .panel { box-shadow: 0 5px 16px rgba(0, 0, 0, .12); }
.vd-thumb, [id^="photo-"] .album-image, #album-gallery .panel-body { background: var(--soft); }
[id^="photo-"] .catalog_content, #album-gallery .panel-footer { background: linear-gradient(#fff, var(--soft2)); }
[id^="photo-"] .catalog_content .btn-primary,
#album-gallery .panel-footer .btn-primary { background: linear-gradient(90deg, var(--btn1), var(--btn2)); box-shadow: 0 3px 8px rgba(0, 0, 0, .18); }
[id^="photo-"] .album-image::after { background: linear-gradient(135deg, var(--btn1), var(--btn2)); }
[id^="photo-"] .catalog_content .text-muted .fa { color: var(--btn1); }
.vf-play { background: linear-gradient(135deg, var(--btn1, #4a9cf0), var(--btn2, #2b6cb0)); }

/* ---- module: tieu de + bang + nut + o nhap theo mau rieng ---- */
.mod-sec .nc-head { background: linear-gradient(180deg, var(--h1), var(--h2)); }
.mod-wrap .table > thead > tr > th,
.mod-wrap .flex-table-laws > .table-head,
.mod-wrap .flex-table-heading,
.mod-wrap .panel-default > .panel-heading,
.mod-wrap .nav-tabs > li.active > a {
    background: linear-gradient(180deg, var(--h1), var(--h2)) !important;
    color: var(--hc) !important;
}
.mod-wrap .table > tbody > tr > td,
.mod-wrap .flex-table-laws > .table-rows { border-color: var(--line); }
.mod-wrap .table-hover > tbody > tr:hover > td,
.mod-wrap .flex-table-laws > .table-rows:hover:not(.table-head),
.mod-wrap .table > tbody > tr:hover > td { background: var(--soft2); }
.mod-wrap .table-striped > tbody > tr:nth-of-type(odd) > td,
.mod-wrap .flex-table-laws > .table-rows:nth-of-type(even) { background: var(--soft2); }
.mod-wrap a:not(.btn):not(.nc-all):not(.nc-item-title) { color: var(--hc); }
.mod-wrap a:not(.btn):not(.nc-all):hover { color: var(--btn2); }
.mod-wrap .nc-title a { color: var(--hc); }
.mod-wrap .btn-primary, .mod-wrap .btn-success { background: linear-gradient(90deg, var(--btn1), var(--btn2)); box-shadow: 0 3px 8px rgba(0, 0, 0, .18); }
.mod-wrap .btn-default { border-color: var(--line); color: var(--hc); }
.mod-wrap .btn-default:hover { border-color: var(--btn1); background: var(--soft2); color: var(--hc); }
.mod-wrap .form-control { border-color: var(--line); }
.mod-wrap .form-control:focus { border-color: var(--btn1); box-shadow: 0 0 0 3px var(--soft); }
.mod-wrap label { color: var(--hc); }
.mod-wrap .well, .mod-wrap .alert-info { background: var(--soft2); border-color: var(--line); color: var(--hc); }
.mod-wrap .nav-tabs { border-bottom-color: var(--line); }
.mod-wrap .pagination > li > a, .mod-wrap .pagination > li > span { background: var(--soft); color: var(--hc); }
.mod-wrap .pagination > .active > a, .mod-wrap .pagination > .active > span,
.mod-wrap .pagination > li > a:hover { background: linear-gradient(90deg, var(--btn1), var(--btn2)); color: #fff; }
.mod-wrap .page-header { border-bottom-color: var(--line); }
.btn.btn-viewfile { background: linear-gradient(90deg, #4a9cf0, #2b6cb0); box-shadow: 0 3px 8px rgba(43, 108, 176, .35); }
.btn.btn-viewfile:hover, .btn.btn-viewfile:focus { background: linear-gradient(90deg, #f5a03a, #e07f10); box-shadow: 0 5px 12px rgba(224, 127, 16, .4); }
.detail_container .detail_header .title { background: linear-gradient(180deg, #e4f0fd, #c6defa); color: #1f5fa8; box-shadow: 0 3px 12px rgba(0, 0, 0, .08); }
.detail_container .media-func .button-style-1 { background: linear-gradient(90deg, #4a9cf0, #2b6cb0); box-shadow: 0 3px 8px rgba(43, 108, 176, .35); }
.detail_container .uploader a, .detail_container .uploader .hitstotal { color: #1f5fa8; }
.detail_container .uploader .hitstotal { background: #e6f1fd; }
.detail_container .uploader img { border-color: #c6defa; }

/* ---- chan trang ---- */
.main:has(> .footer) .ft-card .ft-name { color: #1f8a4c !important; }
.ft-card .ft-list .fa { background: linear-gradient(135deg, #34b36a, #1f8a4c); }
.main:has(> .footer) .ft-card a { color: #1f8a4c !important; }
.main:has(> .footer) .ft-card a:hover { color: #f0942a !important; }
.ft-card { box-shadow: 0 8px 24px rgba(0, 60, 40, .35); }

/* ---- thanh menu ngang: tong xanh la ---- */
@media (min-width: 768px) {
    body .navbar.navbar-default #menu-site-default .row {
        border-color: #c9ecd2;
        box-shadow: 0 10px 26px rgba(31, 138, 76, .20);
    }
    body .navbar.navbar-default #menu-site-default .navbar-nav > li > a,
    body .navbar.navbar-default #menu-site-default .navbar-nav > li > a span { color: #1c5e3a !important; }
    body .navbar.navbar-default #menu-site-default .navbar-nav > li > a:hover,
    body .navbar.navbar-default #menu-site-default .navbar-nav > li > a:focus,
    body .navbar.navbar-default #menu-site-default .navbar-nav > li:hover > a,
    body .navbar.navbar-default #menu-site-default .navbar-nav > li.open > a,
    body .navbar.navbar-default #menu-site-default .navbar-nav > li:hover > a span {
        background: linear-gradient(180deg, #eefaf1, #d7f1de) !important;
        color: #1f8a4c !important;
        box-shadow: 0 6px 12px rgba(31, 138, 76, .18) !important;
    }
    body .navbar.navbar-default #menu-site-default .navbar-nav > li.active > a {
        background: linear-gradient(90deg, #34b36a, #1aa39a) !important;
        box-shadow: 0 6px 12px rgba(31, 138, 76, .35) !important;
    }
    body .navbar.navbar-default #menu-site-default .navbar-nav > li.active > a::before { color: #1f8a4c; }
    body .navbar.navbar-default #menu-site-default .dropdown-menu {
        border-color: #c9ecd2;
        box-shadow: 0 16px 34px rgba(31, 138, 76, .22);
    }
    body .navbar.navbar-default #menu-site-default .navbar-nav > li > .dropdown-menu::after { border-left-color: #c9ecd2; border-top-color: #c9ecd2; }
    body .navbar.navbar-default #menu-site-default .dropdown-menu > li > a,
    body .navbar.navbar-default #menu-site-default .dropdown-menu > li > a:link { color: #1c5e3a; }
    body .navbar.navbar-default #menu-site-default .dropdown-menu > li > a:hover,
    body .navbar.navbar-default #menu-site-default .dropdown-menu > li > a:focus,
    body .navbar.navbar-default #menu-site-default .dropdown-menu > li.active > a {
        background: linear-gradient(90deg, #d7f1de, #eefaf1) !important;
        color: #1f8a4c !important;
    }
    body .navbar.navbar-default #menu-site-default .dropdown-menu > li > a[href*="nv=download"]::before,
    body .navbar.navbar-default #menu-site-default .dropdown-menu > li > a[href*="nv=photos"]::before,
    body .navbar.navbar-default #menu-site-default .dropdown-menu > li > a[href*="nv=videos"]::before { color: #34b36a; }
    .headerSearch .input-group { border-color: #c9ecd2; }
    .headerSearch .input-group:hover, .headerSearch .input-group:focus-within { box-shadow: 0 4px 14px rgba(31, 138, 76, .25); }
    .headerSearch .input-group .form-control { color: #1c5e3a; }
    .headerSearch .input-group .form-control::placeholder { color: #7fae90; }
    .headerSearch .input-group-btn .btn { background: linear-gradient(135deg, #34b36a, #1f8a4c); }
}

/* sua: mau chu tieu de bai/video/album theo bang mau (ghi de mau lien ket chung) */
.nc-item-title a, .vd-title a, [id^="photo-"] .album-name h3 a { color: var(--ink) !important; }
.nc-item-title a:hover, .vd-title a:hover, [id^="photo-"] .album-name h3 a:hover { color: var(--btn2) !important; }

/* ============================================================
   BLOCK FANPAGE FACEBOOK (the lien ket, tong xanh Facebook)
   ============================================================ */
.fp-card { padding: 2px; }
.fp-head {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 10px;
    padding: 9px 12px;
    border-radius: 16px;
    background: linear-gradient(135deg, #1877f2, #0f5fd0);
    box-shadow: 0 4px 12px rgba(24, 119, 242, .35);
    text-decoration: none;
    transition: transform .15s ease, box-shadow .15s ease;
}
.fp-head:hover { transform: translateY(-2px); box-shadow: 0 8px 16px rgba(24, 119, 242, .45); text-decoration: none; }
.fp-logo {
    flex: 0 0 38px;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: #fff;
    color: #1877f2;
    font-size: 22px;
    line-height: 38px;
    text-align: center;
    box-shadow: 0 2px 6px rgba(0, 0, 0, .25);
}
.fp-txt { display: flex; flex-direction: column; min-width: 0; line-height: 1.25; }
.fp-txt b { color: #fff !important; font-size: 14px; font-weight: 800; }
.fp-txt small { color: #d6e6ff !important; font-size: 12px; font-weight: 600; }
.fp-embed {
    overflow: hidden;
    border: 2px solid #cfe0fb;
    border-radius: 14px;
    background: #f2f7ff;
    text-align: center;
}
.fp-embed iframe { display: block; width: 100%; max-width: 100%; border: 0; }
.fp-btn {
    display: block;
    margin-top: 10px;
    padding: 8px 12px;
    border-radius: 20px;
    background: #fff;
    border: 2px solid #1877f2;
    color: #1877f2 !important;
    text-align: center;
    font-size: 13px;
    font-weight: 800;
    text-decoration: none;
    transition: background .15s ease, color .15s ease, transform .15s ease;
}
.fp-btn .fa { margin-right: 5px; }
.fp-btn:hover { background: #1877f2; color: #fff !important; transform: translateY(-2px); text-decoration: none; }

/* block Fanpage: tieu de mau xanh Facebook du dang o vi tri nao trong cot */
.wraper > .row > [class*="col-"] > .blocksite:has(.fp-card),
.wraper > .row > [class*="col-"] > div:has(> .fp-card) {
    --h1: #e4f0fd; --h2: #c6defa; --hb: #6aa8ee; --hc: #1f5fa8;
    --btn1: #4a9cf0; --btn2: #2b6cb0; --soft: #e6f1fd; --line: #c8dcf3; --soft2: #f2f8ff;
}