/*
 * B2B color layer for NhaXuongViet public web.
 * Loaded after layout CSS so the existing structure stays intact.
 */
:root {
    --b2b-ink: #172033;
    --b2b-muted: #657287;
    --b2b-line: #d7dee8;
    --b2b-soft: #eef3f7;
    --b2b-panel: #ffffff;
    --b2b-primary: #1f5f8b;
    --b2b-primary-dark: #18466d;
    --b2b-primary-soft: #e7f0f7;
    --b2b-secondary: #247b73;
    --b2b-secondary-soft: #e5f4f2;
    --b2b-accent: #b7791f;
    --b2b-danger: #b42318;
    --b2b-success: #16745f;
}

html,
body {
    color: var(--b2b-ink);
    background-color: var(--b2b-soft);
}

a,
.text-primary,
.re__link,
.re__link-se,
.haslink {
    color: var(--b2b-primary);
}

a:hover,
.re__link:hover,
.re__link-se:hover,
.haslink:hover {
    color: var(--b2b-primary-dark);
}

.text-danger,
.re__price,
.price,
.price-title,
.price__value {
    color: var(--b2b-accent) !important;
}

.text-success {
    color: var(--b2b-success) !important;
}

.bg-primary,
.btn-primary,
button.btn-primary,
input[type="submit"].btn-primary,
.swiper-pagination-bullet-active {
    background-color: var(--b2b-primary) !important;
    border-color: var(--b2b-primary) !important;
}

.btn-primary:hover,
button.btn-primary:hover,
input[type="submit"].btn-primary:hover {
    background-color: var(--b2b-primary-dark) !important;
    border-color: var(--b2b-primary-dark) !important;
}

.btn-success,
button.btn-success,
input[type="submit"].btn-success {
    background-color: var(--b2b-secondary) !important;
    border-color: var(--b2b-secondary) !important;
}

.btn-success:hover,
button.btn-success:hover,
input[type="submit"].btn-success:hover {
    background-color: #1b625c !important;
    border-color: #1b625c !important;
}

.btn-outline-primary {
    color: var(--b2b-primary) !important;
    border-color: var(--b2b-primary) !important;
}

.btn-outline-primary:hover {
    color: #fff !important;
    background-color: var(--b2b-primary) !important;
}

.btn-danger,
button.btn-danger {
    background-color: var(--b2b-danger) !important;
    border-color: var(--b2b-danger) !important;
}

.btn,
.btn-primary,
.btn-success,
.btn-danger,
button.btn-primary,
button.btn-success,
button.btn-danger {
    color: #ffffff !important;
}

.btn-outline-primary,
.btn-outline-success,
.btn-light,
.btn-white,
.btn-default {
    color: var(--b2b-primary) !important;
}

.badge-primary,
.label-primary,
.re__tag,
.tag-primary {
    color: #fff !important;
    background-color: var(--b2b-primary) !important;
}

.badge-success,
.label-success {
    color: #fff !important;
    background-color: var(--b2b-secondary) !important;
}

.card,
.modal-content,
.dropdown-menu,
.re__card,
.re__item,
.re__item-card,
.list-item,
.box,
.panel {
    background-color: var(--b2b-panel);
    border-color: var(--b2b-line);
}

.form-control,
.custom-select,
select,
textarea,
input[type="text"],
input[type="number"],
input[type="email"],
input[type="password"],
input[type="search"],
input[type="tel"] {
    color: var(--b2b-ink);
    border-color: var(--b2b-line);
}

.form-control:focus,
.custom-select:focus,
select:focus,
textarea:focus,
input[type="text"]:focus,
input[type="number"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus {
    border-color: var(--b2b-primary);
    box-shadow: 0 0 0 0.15rem rgba(31, 95, 139, 0.18);
}

.nav-tabs .nav-link.active,
.nav-pills .nav-link.active,
.pagination .active .page-link,
.page-item.active .page-link {
    color: #fff !important;
    background-color: var(--b2b-primary) !important;
    border-color: var(--b2b-primary) !important;
}

.page-link {
    color: var(--b2b-primary);
}

.alert-primary {
    color: var(--b2b-primary-dark);
    background-color: var(--b2b-primary-soft);
    border-color: #c8dbe9;
}

.alert-success {
    color: #15594d;
    background-color: var(--b2b-secondary-soft);
    border-color: #bfdfda;
}

.search-box,
.home-search,
.filter-box,
.re__search,
.re__filter,
.search-form {
    background-color: var(--b2b-panel);
    border-color: var(--b2b-line);
}

.search-box .btn,
.home-search .btn,
.re__search .btn,
.search-form .btn {
    background-color: var(--b2b-primary);
    border-color: var(--b2b-primary);
    color: #fff;
}

.search-box .btn:hover,
.home-search .btn:hover,
.re__search .btn:hover,
.search-form .btn:hover {
    background-color: var(--b2b-primary-dark);
    border-color: var(--b2b-primary-dark);
}

.breadcrumb,
.breadcrumb a,
.small,
small,
.text-muted,
.muted {
    color: var(--b2b-muted) !important;
}

.table thead th,
.table th {
    color: var(--b2b-ink);
    background-color: var(--b2b-primary-soft);
    border-color: var(--b2b-line);
}

.table td,
.table th {
    border-color: var(--b2b-line);
}

footer,
#footer,
.footer,
.site-footer {
    color: #d8e2ec;
    background-color: #172033;
}

footer a,
#footer a,
.footer a,
.site-footer a {
    color: #e7f0f7;
}

footer a:hover,
#footer a:hover,
.footer a:hover,
.site-footer a:hover {
    color: #ffffff;
}

footer .company-info,
#footer .company-info {
    color: #d8e2ec;
}

.btn-post-product,
.lnk-posting,
.re__btn-pr-solid--md,
.re__btn-pr-solid--lg,
.re__btn-se-solid--md,
.re__btn-se-solid--lg {
    color: #1f5f8b !important;
    -webkit-text-fill-color: #1f5f8b !important;
    background-color: #e7f0f7 !important;
    border-color: #9bbbd3 !important;
    box-shadow: 0 4px 10px rgba(31, 95, 139, 0.1) !important;
}

.btn-post-product:hover,
.lnk-posting:hover,
.re__btn-pr-solid--md:hover,
.re__btn-pr-solid--lg:hover,
.re__btn-se-solid--md:hover,
.re__btn-se-solid--lg:hover {
    color: #18466d !important;
    -webkit-text-fill-color: #18466d !important;
    background-color: #d6e7f2 !important;
    border-color: #7fa7c3 !important;
}

.notification,
.notification *,
.notify-item,
.notify-item *,
.notify-count,
.re__notification {
    color: var(--b2b-ink) !important;
}

.notify-count,
.re__notification,
.notification > span {
    color: #ffffff !important;
    background-color: var(--b2b-danger) !important;
}

.notification .btn-more,
.notification .nav-tabs .nav-link.active {
    color: var(--b2b-ink) !important;
    background-color: #e7f5fa !important;
    border-color: #9bd3e4 !important;
}

.notification .nav-tabs .nav-link.active,
.notification .nav-tabs .nav-link.active *,
.notification .nav-tabs .nav-item.show .nav-link,
.notification .nav-tabs .nav-item.show .nav-link *,
.notification .nav-tabs .nav-link.active span,
.notification .nav-tabs .nav-link.active .notify-count {
    color: var(--b2b-ink) !important;
    -webkit-text-fill-color: var(--b2b-ink) !important;
    opacity: 1 !important;
    visibility: visible !important;
}

.notification .nav-tabs .nav-link:not(.active) {
    color: var(--b2b-ink) !important;
    background-color: #ffffff !important;
}

.notification .nav-tabs .nav-link.active .notify-count {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    background-color: var(--b2b-danger) !important;
}

.notification .btn-more {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    background-color: var(--b2b-primary) !important;
    border-color: var(--b2b-primary) !important;
}

.re__btn-se-ghost--md,
.re__btn-se-ghost--lg,
.re__btn-pr-ghost--md,
.re__btn-pr-ghost--lg {
    color: var(--b2b-primary) !important;
    background-color: #ffffff !important;
    border-color: var(--b2b-primary) !important;
}

.re__btn-se-ghost--md:hover,
.re__btn-se-ghost--lg:hover,
.re__btn-pr-ghost--md:hover,
.re__btn-pr-ghost--lg:hover {
    color: #ffffff !important;
    background-color: var(--b2b-primary) !important;
}

.re__listing,
.re__main-content,
.re__body,
.re__section,
.re__content,
.re__bg,
.page-content,
.content-wrapper {
    background-color: var(--b2b-soft) !important;
}

.re__card,
.re__item,
.re__item-card,
.re__product-item,
.re__vip,
.re__list-item,
.js__product-link,
.product-item,
.bds-item,
.project-item,
.blog-item {
    background-color: #ffffff !important;
    border-color: var(--b2b-line) !important;
}

.re__card:hover,
.re__item:hover,
.re__item-card:hover,
.re__product-item:hover,
.product-item:hover,
.bds-item:hover,
.project-item:hover,
.blog-item:hover {
    border-color: #b7c9da !important;
    box-shadow: 0 12px 28px rgba(23, 32, 51, 0.1) !important;
}

.re__title,
.re__title a,
.re__detail-heading,
h1,
h2,
h3,
h4 {
    color: var(--b2b-ink);
}

.re__price,
.re__price span,
.re__card .price,
.product-price,
.bds-price,
.price {
    color: var(--b2b-accent) !important;
}

.re__tag,
.re__vip-label,
.re__label,
.label-vip,
.vip-label,
.badge-vip {
    color: #ffffff !important;
    background-color: var(--b2b-accent) !important;
}

.re__filter a.active,
.filter a.active,
.re__tab .active,
.tab .active,
.sort .active {
    color: #ffffff !important;
    background-color: var(--b2b-primary) !important;
    border-color: var(--b2b-primary) !important;
}

.re__notification,
.notify-count {
    color: #ffffff !important;
    background-color: var(--b2b-danger) !important;
}

.zalo,
.facebook,
.support,
.hotline,
.call-now,
.contact-fixed {
    box-shadow: 0 8px 20px rgba(23, 32, 51, 0.16);
}

::selection {
    color: #fff;
    background-color: var(--b2b-primary);
}
